whycxzp
6 天以前 4262e1fb86b1bd9f3e38430cdf02696c10d5a801
维修调度-出库
3个文件已修改
1个文件已添加
46 ■■■■ 已修改文件
src/main/java/com/whyc/mapper/DeviceSpareMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/DeviceSpareService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/WorkflowLinkService.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/DeviceSpareMapper.xml 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/mapper/DeviceSpareMapper.java
@@ -2,7 +2,10 @@
import com.whyc.pojo.web_site.DeviceSpare;
import java.util.List;
public interface DeviceSpareMapper extends CustomMapper<DeviceSpare>{
    void outBound(List<DeviceSpare> spareList);
}
src/main/java/com/whyc/service/DeviceSpareService.java
@@ -187,4 +187,8 @@
        }
    }
    public void outBound(List<DeviceSpare> spareList) {
        mapper.outBound(spareList);
    }
}
src/main/java/com/whyc/service/WorkflowLinkService.java
@@ -72,7 +72,7 @@
                    link.setDealAndClose(1);
                }
            }break;
            //设备入库申请 TODO 入库影响库存
            //设备入库申请
            case 2:
            //设备报废申请
            case 3:{
@@ -149,19 +149,26 @@
                    link.setDealAndClose(1);
                }
            }break;
            case 4:{ //TODO 出库申请
            case 4:{ // 出库申请
                if(link.getStatus() == WorkflowEnum.LINK_STATUS_PASS.getValue().intValue()){
                    mainInDB.setStatus(WorkflowEnum.MAIN_STATUS_WAIT_FOR_DEALING.getValue());
                    mainInDB.setStatus(WorkflowEnum.MAIN_STATUS_END_PASS.getValue());
                    mainInDB.setEndTime(now);
                    mainInDB.setEndReason(link.getDealReason());
                    mainService.updateById(mainInDB);
                    //获取出库申请单设备
                    List<WorkflowDevice> deviceListInDB = deviceService.getByMainId(mainInDB.getId());
                    List<DeviceSpare> spareList = new ArrayList<>();
                    deviceListInDB.forEach(device -> {
                        DeviceSpare spare = new DeviceSpare();
                        BeanUtils.copyProperties(device,spare);
                        spareList.add(spare);
                    });
                    //更新库存
                    deviceSpareService.outBound(spareList);
                }else if(link.getStatus() == WorkflowEnum.LINK_STATUS_REJECT.getValue().intValue()){
                    mainInDB.setStatus(WorkflowEnum.MAIN_STATUS_END_REJECT.getValue());
                    mainInDB.setEndReason(link.getDealRejectReason());
                    mainInDB.setEndTime(now);
                    //检查是否有关联工单.如果有关联工单,关联工单状态重置为完结待处理,完成时间重置为空
                    if(mainInDB.getRelatedId() != null){
                        Integer relatedId = mainInDB.getRelatedId();
                        //mainService.resetRepairStatus(relatedId,mainInDB.getQuantity());
                    }
                    mainService.updateById(mainInDB);
                    link.setDealAndClose(1);
                }
src/main/resources/mapper/DeviceSpareMapper.xml
New file
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.whyc.mapper.DeviceSpareMapper" >
    <update id="outBound">
        <foreach collection="list" item="item" separator=";">
            update web_site.tb_device_spare set quantity = quantity - #{item.quantity}
            where name = #{item.name}
            and model = #{item.model}
            and version = #{item.version}
            and brand = #{item.brand}
            and type = #{item.type}
            and supplier = #{item.supplier}
        </foreach>
    </update>
</mapper>