修试后入库,工程机具使用查询修改

This commit is contained in:
bonus 2025-04-25 16:32:21 +08:00
parent 26df45d72a
commit 12b08a3803
2 changed files with 50 additions and 121 deletions

View File

@ -448,7 +448,8 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService
RepairInputInfo repairInputInfo = new RepairInputInfo(); RepairInputInfo repairInputInfo = new RepairInputInfo();
repairInputInfo.setTypeId(repairInputDetails.getTypeId()); repairInputInfo.setTypeId(repairInputDetails.getTypeId());
repairInputInfo.setInputNum(repairInputDetails.getInputNum()); repairInputInfo.setInputNum(repairInputDetails.getInputNum());
repairInputDetailsMapper.updateNum(repairInputInfo); //驳回不需求修改库存
// repairInputDetailsMapper.updateNum(repairInputInfo);
Long newTaskId = insertTt(repairInputDetails.getTaskId()); Long newTaskId = insertTt(repairInputDetails.getTaskId());
result += insertTta(newTaskId, repairInputDetails); result += insertTta(newTaskId, repairInputDetails);
result += insertWxTask(newTaskId, repairInputDetails); result += insertWxTask(newTaskId, repairInputDetails);

View File

@ -5,6 +5,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<mapper namespace="com.bonus.material.basic.mapper.ComplexQueryMapper"> <mapper namespace="com.bonus.material.basic.mapper.ComplexQueryMapper">
<select id="getProjUsingRecordList" resultType="com.bonus.material.basic.domain.ProjUsingRecord"> <select id="getProjUsingRecordList" resultType="com.bonus.material.basic.domain.ProjUsingRecord">
SELECT SELECT
subquery1.agreementCode as agreementCode, subquery1.agreementCode as agreementCode,
subquery1.unitName as unitName, subquery1.unitName as unitName,
@ -14,58 +15,45 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
subquery1.typeName as typeName, subquery1.typeName as typeName,
subquery1.typeModelName as typeModelName, subquery1.typeModelName as typeModelName,
subquery1.unit as unit, subquery1.unit as unit,
IFNULL(subquery1.leaseNum, 0) as leaseNum, IFNULL(SUM(subquery1.leaseNum), 0) as leaseNum,
IFNULL(subquery2.backNum, 0) as backNum, IFNULL(SUM(subquery1.backNum), 0) as backNum,
CASE IFNULL(SUM(subquery1.usNum), 0) as usNum,
WHEN IFNULL(subquery1.leaseNum, 0) - IFNULL(subquery2.backNum, 0) > 0 IFNULL(SUM(subquery1.usPrice), 0) as usPrice,
THEN IFNULL(subquery1.leaseNum, 0) - IFNULL(subquery2.backNum, 0) IFNULL(SUM(subquery1.totalPrice), 0) as totalPrice,
ELSE 0.000 subquery1.isSltName
END as usNum, FROM
CASE (
WHEN IFNULL(subquery1.leaseNum, 0) - IFNULL(subquery2.backNum, 0) > 0 THEN
ROUND(IFNULL(subquery1.buy_price, 0) * SELECT
(IFNULL(subquery1.leaseNum, 0) - IFNULL(subquery2.backNum, 0)), 2) bai.agreement_id,
ELSE
0.00
END as usPrice,
ROUND(IFNULL(subquery1.leaseNum, 0) * IFNULL(subquery1.buy_price, 0), 2) as totalPrice,
subquery1.isSlt as isSlt,
subquery1.isSltName as isSltName
FROM (SELECT bai.agreement_id,
mt.type_id,
mt.buy_price,
bai.agreement_code AS agreementCode, bai.agreement_code AS agreementCode,
bui.unit_name AS unitName, bui.unit_name AS unitName,
bpl.pro_name AS proName, bpl.pro_name AS proName,
bpl.contract_part as contractPart, bpl.contract_part AS contractPart,
sd.dept_name as impUnitName, bpl.imp_unit AS impUnitName,
mt2.type_name AS typeName, mt2.type_name AS typeName,
mt.type_id,
mt.type_name AS typeModelName, mt.type_name AS typeModelName,
mt.unit_name AS unit, mt.unit_name AS unit,
SUM(IFNULL(lod.out_num, 0)) AS leaseNum, ROUND( sai.NUM, 3 ) AS leaseNum,
sai.is_slt as isSlt, IF
CASE ( sai.`STATUS` = 1, ROUND( sai.NUM, 3 ), 0.00 ) AS backNum,
sai.is_slt IF
WHEN '0' then '未结算' ( sai.`STATUS` = 0, ROUND( sai.NUM, 3 ), 0.00 ) AS usNum,
WHEN '1' then '已结算' IF
ELSE '' ( sai.`STATUS` = 0, ROUND( sai.NUM, 3 ), 0.00 )* mt.buy_price AS usPrice,
END as isSltName ROUND( sai.NUM, 3 )* mt.buy_price AS totalPrice,
FROM lease_out_details lod sai.is_slt AS isSlt,
LEFT JOIN lease_apply_info lai ON lai.id = lod.parent_id IF
LEFT JOIN tm_task_agreement tta ON tta.task_id = lai.task_id ( sai.is_slt = 0, '未结算', '已结算' ) AS isSltName
LEFT JOIN bm_agreement_info bai ON bai.agreement_id = tta.agreement_id FROM
LEFT JOIN ( slt_agreement_info sai
SELECT agreement_id, is_slt LEFT JOIN bm_agreement_info bai ON sai.agreement_id = bai.agreement_id
FROM slt_agreement_info
GROUP BY agreement_id
) sai ON bai.agreement_id = sai.agreement_id
LEFT JOIN bm_project bpl ON bpl.pro_id = bai.project_id LEFT JOIN bm_project bpl ON bpl.pro_id = bai.project_id
LEFT JOIN sys_dept sd on sd.dept_id = bpl.imp_unit
LEFT JOIN bm_unit bui ON bui.unit_id = bai.unit_id LEFT JOIN bm_unit bui ON bui.unit_id = bai.unit_id
LEFT JOIN ma_type mt ON mt.type_id = lod.type_id LEFT JOIN ma_type mt ON mt.type_id = sai.type_id
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id
LEFT JOIN ma_machine mm ON mm.ma_id = lod.ma_id where 1=1
where 1=1
<if test="keyWord != null and keyWord != ''"> <if test="keyWord != null and keyWord != ''">
and (bai.agreement_code like concat('%',#{keyWord},'%') or and (bai.agreement_code like concat('%',#{keyWord},'%') or
bui.unit_name like concat('%',#{keyWord},'%') or bui.unit_name like concat('%',#{keyWord},'%') or
@ -74,7 +62,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
mt.type_name like concat('%',#{keyWord},'%') or mt.type_name like concat('%',#{keyWord},'%') or
mt.unit_name like concat('%',#{keyWord},'%') or mt.unit_name like concat('%',#{keyWord},'%') or
bpl.contract_part like concat('%', #{keyWord}, '%') or bpl.contract_part like concat('%', #{keyWord}, '%') or
sd.dept_name like concat('%', #{keyWord}, '%')
) )
</if> </if>
<if test="unitId != null"> <if test="unitId != null">
@ -95,75 +82,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="isSlt != null and isSlt != ''"> <if test="isSlt != null and isSlt != ''">
and sai.is_slt = #{isSlt} and sai.is_slt = #{isSlt}
</if> </if>
GROUP BY bai.agreement_id,
mt.type_id ORDER BY bai.agreement_code) AS subquery1
LEFT JOIN (SELECT bai.agreement_id, GROUP BY
mt.type_id, sai.id
mt.rent_price, ) subquery1
bai.agreement_code AS agreementCode, GROUP BY subquery1.agreement_id,subquery1.type_id
bui.unit_name AS unitName,
bpl.pro_name AS proName,
mt2.type_name AS typeName,
mt.type_name AS typeModelName,
mt.unit_name AS unit,
bpl.contract_part as contractPart,
sd.dept_name as impUnitName,
SUM(IFNULL(bcd.back_num, 0)) backNum,
sai.is_slt as isSlt,
CASE
sai.is_slt
WHEN '0' then '未结算'
WHEN '1' then '已结算'
ELSE ''
END as isSltName
FROM back_check_details bcd
LEFT JOIN back_apply_info baif ON baif.id = bcd.parent_id
LEFT JOIN tm_task_agreement tta ON tta.task_id = baif.task_id
LEFT JOIN bm_agreement_info bai ON bai.agreement_id = tta.agreement_id
LEFT JOIN (
SELECT agreement_id, is_slt
FROM slt_agreement_info
GROUP BY agreement_id
) sai ON bai.agreement_id = sai.agreement_id
LEFT JOIN bm_project bpl ON bpl.pro_id = bai.project_id
LEFT JOIN sys_dept sd on sd.dept_id = bpl.imp_unit
LEFT JOIN bm_unit bui ON bui.unit_id = bai.unit_id
LEFT JOIN ma_type mt ON mt.type_id = bcd.type_id
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id
LEFT JOIN ma_machine mm ON mm.ma_id = bcd.ma_id
where 1=1 and bcd.is_finished = '1'
<if test="keyWord != null and keyWord != ''">
and (bai.agreement_code like concat('%',#{keyWord},'%') or
bui.unit_name like concat('%',#{keyWord},'%') or
bpl.pro_name like concat('%',#{keyWord},'%') or
mt2.type_name like concat('%',#{keyWord},'%') or
mt.type_name like concat('%',#{keyWord},'%') or
mt.unit_name like concat('%',#{keyWord},'%') or
bpl.contract_part like concat('%', #{keyWord}, '%') or
sd.dept_name like concat('%', #{keyWord}, '%')
)
</if>
<if test="unitId != null">
and bui.unit_id = #{unitId}
</if>
<if test="proId != null">
and bpl.pro_id = #{proId}
</if>
<if test="typeName != null and typeName != ''">
and mt2.type_name like concat('%',#{typeName},'%')
</if>
<if test="typeModelName != null and typeModelName != ''">
and mt.type_name like concat('%',#{typeModelName},'%')
</if>
<if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
AND bai.create_time BETWEEN CONCAT(#{startTime}, ' 00:00:00') AND CONCAT(#{endTime}, ' 23:59:59')
</if>
<if test="isSlt != null and isSlt != ''">
and sai.is_slt = #{isSlt}
</if>
GROUP BY bai.agreement_id,
mt.type_id ORDER BY bai.agreement_code) AS subquery2 ON subquery1.type_id = subquery2.type_id
AND subquery1.agreement_id = subquery2.agreement_id
</select> </select>
<select id="getMachineHistoryRecordList" resultType="com.bonus.material.basic.domain.MachineHistoryRecordBean"> <select id="getMachineHistoryRecordList" resultType="com.bonus.material.basic.domain.MachineHistoryRecordBean">