预报工+产线调拨

master
zhaoxiaolin 10 months ago
parent a823ac786a
commit 3293b83595

@ -81,4 +81,6 @@ public interface MesReportWorkConsumeMapper {
List<MesReportWorkConsume> getBomList(MesReportWorkConsume mesReportWorkConsume); List<MesReportWorkConsume> getBomList(MesReportWorkConsume mesReportWorkConsume);
MesReportWorkConsume getNewConsumeInfo(String workorderCode); MesReportWorkConsume getNewConsumeInfo(String workorderCode);
List<MesReportWorkConsume> getSumConsumeList(MesReportWorkConsume consumeqo);
} }

@ -369,6 +369,7 @@ public class IWCInterfaceServiceImpl implements IWCSInterfaceService {
//人工 = sum每批的工时数*每批用人数) Sac2 //人工 = sum每批的工时数*每批用人数) Sac2
//子工单报工 //子工单报工
logger.info("==========================一层工单报工开始"); logger.info("==========================一层工单报工开始");
sHzWorks.setMachineCode(mesReportWork.getMachineCode());
sapRson = this.reportHzToSap(sHzWorks); sapRson = this.reportHzToSap(sHzWorks);
logger.info("==========================一层工单报工结束:"+JSONObject.toJSONString(sapRson)); logger.info("==========================一层工单报工结束:"+JSONObject.toJSONString(sapRson));
}else if(workOrders.size()==2){ }else if(workOrders.size()==2){
@ -385,6 +386,7 @@ public class IWCInterfaceServiceImpl implements IWCSInterfaceService {
BigDecimal reportRate = mesReportWorkMapper.getReportRate(workOrders.get(0).getProductCode()); BigDecimal reportRate = mesReportWorkMapper.getReportRate(workOrders.get(0).getProductCode());
//子工单报工 //子工单报工
logger.info("==========================子工单报工开始"); logger.info("==========================子工单报工开始");
sHzWorks.setMachineCode(mesReportWork.getMachineCode());
sapRson = this.reportHzToSap(sHzWorks); sapRson = this.reportHzToSap(sHzWorks);
logger.info("==========================子工单报工结束:"+JSONObject.toJSONString(sapRson)); logger.info("==========================子工单报工结束:"+JSONObject.toJSONString(sapRson));
if(sapRson.getCode()== 200){ if(sapRson.getCode()== 200){
@ -408,7 +410,7 @@ public class IWCInterfaceServiceImpl implements IWCSInterfaceService {
}else{ }else{
pHzWork.setQuantityFeedback(sHzWorks.getQuantityFeedback()); pHzWork.setQuantityFeedback(sHzWorks.getQuantityFeedback());
} }
pHzWork.setMachineCode(mesReportWork.getMachineCode());
//pHzWork.setSac2("4");//母单报工固定值(上位机插入数据时候默认4) //pHzWork.setSac2("4");//母单报工固定值(上位机插入数据时候默认4)
R sapR = this.reportHzToSap(pHzWork); R sapR = this.reportHzToSap(pHzWork);
logger.info("==========================母工单报工结束"+JSONObject.toJSONString(sapR)); logger.info("==========================母工单报工结束"+JSONObject.toJSONString(sapR));
@ -435,7 +437,7 @@ public class IWCInterfaceServiceImpl implements IWCSInterfaceService {
} }
//三层以上工单报工 //三层以上工单报工
logger.info("==========================三层(第"+n+"层)以上工单("+sHzWorks.getWorkorderCodeSap()+")报工开始"); logger.info("==========================三层(第"+n+"层)以上工单("+sHzWorks.getWorkorderCodeSap()+")报工开始");
sHzWorks.setMachineCode(mesReportWork.getMachineCode());
sapRson = this.reportHzToSap(sHzWorks); sapRson = this.reportHzToSap(sHzWorks);
logger.info("==========================三层(第"+n+"层)以上工单("+sHzWorks.getWorkorderCodeSap()+")报工结束:" logger.info("==========================三层(第"+n+"层)以上工单("+sHzWorks.getWorkorderCodeSap()+")报工结束:"
+ JSONObject.toJSONString(sapRson)); + JSONObject.toJSONString(sapRson));
@ -476,7 +478,8 @@ public class IWCInterfaceServiceImpl implements IWCSInterfaceService {
MesReportWorkConsume consumeqo = new MesReportWorkConsume(); MesReportWorkConsume consumeqo = new MesReportWorkConsume();
consumeqo.setWorkorderCode(workOrder.getWorkorderCode()); consumeqo.setWorkorderCode(workOrder.getWorkorderCode());
consumeqo.setRecoil("X"); consumeqo.setRecoil("X");
List<MesReportWorkConsume> consumes = mesReportWorkConsumeMapper.selectMesReportWorkConsumeList(consumeqo); consumeqo.setMachineCode(workOrder.getMachineCode());
List<MesReportWorkConsume> consumes = mesReportWorkConsumeMapper.getSumConsumeList(consumeqo);
if (!CollectionUtils.isEmpty(consumes)) { if (!CollectionUtils.isEmpty(consumes)) {
for (MesReportWorkConsume consume : consumes) { for (MesReportWorkConsume consume : consumes) {
SapRFW.lt_hw lthw = new SapRFW.lt_hw();//MES生产订单报工货物移动修改 SapRFW.lt_hw lthw = new SapRFW.lt_hw();//MES生产订单报工货物移动修改

@ -103,7 +103,7 @@
where del_flag = '0' where del_flag = '0'
</select> </select>
<select id="getConsumeList" resultType="com.op.mes.domain.MesReportWorkConsume"> <select id="getConsumeList" resultType="com.op.mes.domain.MesReportWorkConsume">
select mrwc.record_id recordId, select DISTINCT mrwc.record_id recordId,
mrwc.workorder_code workorderCode, mrwc.workorder_code workorderCode,
mrwc.material_code materialCode, mrwc.material_code materialCode,
mrwc.material_name materialName, mrwc.material_name materialName,
@ -115,8 +115,9 @@
mrwc.attr1, mrwc.attr1,
mrwc.warehouse_code warehouseCode, mrwc.warehouse_code warehouseCode,
mpd.quantity planQuantity, mpd.quantity planQuantity,
mrwc.parent_order parentOrder mrwc.parent_order parentOrder,mrwc.report_code reportCode
from mes_report_work_consume mrwc from mes_report_work_consume mrwc
left join mes_report_work mrw on mrw.report_code = mrwc.report_code
left join pro_order_workorder pow on mrwc.workorder_code = pow.workorder_code left join pro_order_workorder pow on mrwc.workorder_code = pow.workorder_code
left join mes_prepare mp on mp.workorder_code = pow.workorder_code and mp.del_flag='0' left join mes_prepare mp on mp.workorder_code = pow.workorder_code and mp.del_flag='0'
left join mes_prepare_detail mpd on mpd.prepare_id = mp.prepare_id left join mes_prepare_detail mpd on mpd.prepare_id = mp.prepare_id
@ -125,9 +126,9 @@
where mrwc.del_flag = '0' and pow.del_flag = '0' where mrwc.del_flag = '0' and pow.del_flag = '0'
and mrwc.workorder_code = #{workorderCode} and mrwc.workorder_code = #{workorderCode}
<if test="machineCode!=''"> <if test="machineCode!=''">
and pow.workorder_name = #{machineCode} and mrw.machine_code = #{machineCode}
</if> </if>
order by mrwc.recoil,mrwc.attr1 order by mrwc.report_code,mrwc.recoil,mrwc.attr1
</select> </select>
<select id="getSonConsumeList" resultType="com.op.mes.domain.MesReportWorkConsume"> <select id="getSonConsumeList" resultType="com.op.mes.domain.MesReportWorkConsume">
select mrwc.record_id recordId, select mrwc.record_id recordId,
@ -169,6 +170,21 @@
from mes_report_work_consume from mes_report_work_consume
where workorder_code = #{workorderCode} and del_flag = '0' where workorder_code = #{workorderCode} and del_flag = '0'
</select> </select>
<select id="getSumConsumeList" resultType="com.op.mes.domain.MesReportWorkConsume">
select t.materialCode,
sum(t.quantity) quantity
from(
select DISTINCT
mrwc.material_code materialCode,
mrwc.quantity
from mes_report_work_consume mrwc
left join mes_report_work mrw on mrw.report_code = mrwc.report_code
left join pro_order_workorder pow on mrwc.workorder_code = pow.workorder_code
where mrwc.del_flag = '0' and pow.del_flag = '0'
and mrwc.workorder_code = #{workorderCode}
and mrw.machine_code = #{machineCode} and mrwc.recoil = #{recoil}
) t group by t.materialCode
</select>
<insert id="insertMesReportWorkConsume" parameterType="MesReportWorkConsume"> <insert id="insertMesReportWorkConsume" parameterType="MesReportWorkConsume">
insert into mes_report_work_consume insert into mes_report_work_consume

@ -563,7 +563,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
mrw.use_man useMan, mrw.use_man useMan,
mrw.create_time createTime, mrw.create_time createTime,
pow.workorder_code_sap workorderCodeSap, pow.workorder_code_sap workorderCodeSap,
mrw.remark mrw.remark,mrw.report_code reportCode
from mes_report_work mrw from mes_report_work mrw
left join pro_order_workorder pow on mrw.workorder_code = pow.workorder_code left join pro_order_workorder pow on mrw.workorder_code = pow.workorder_code
where mrw.del_flag='0' and pow.del_flag = '0' where mrw.del_flag='0' and pow.del_flag = '0'
@ -936,6 +936,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where 1=1 where 1=1
<if test="id != null">and id = #{id}</if> <if test="id != null">and id = #{id}</if>
<if test="workorderCode != null">and workorder_code = #{workorderCode}</if> <if test="workorderCode != null">and workorder_code = #{workorderCode}</if>
<if test="machineCode != null">and machine_code = #{machineCode}</if>
</update> </update>
<update id="updateOrderWorkStatus"> <update id="updateOrderWorkStatus">
update pro_order_workorder update pro_order_workorder
@ -962,7 +963,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
upload_time = null, upload_time = null,
upload_status = '0', upload_status = '0',
upload_msg = null upload_msg = null
where workorder_code = #{workorderCode} or parent_order = #{workorderCode} where (workorder_code = #{workorderCode} or parent_order = #{workorderCode})
<if test="machineCode != null">and machine_code = #{machineCode}</if>
</update> </update>
<update id="updateAttr2"> <update id="updateAttr2">
update mes_report_work_consume update mes_report_work_consume
@ -973,6 +975,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<foreach collection="list" item="item" separator=";"> <foreach collection="list" item="item" separator=";">
update mes_report_work set remark = #{item.remark} update mes_report_work set remark = #{item.remark}
where workorder_code = #{item.workorderCode} where workorder_code = #{item.workorderCode}
<if test="item.reportCode != null">and report_code = #{item.reportCode}</if>
</foreach> </foreach>
</update> </update>

Loading…
Cancel
Save