guoyuji
2025-02-13 08138690dcd03ce7d29cb4da786be035be657789
提交后端一键退回功能
6个文件已修改
87 ■■■■ 已修改文件
north-glass-erp/src/main/java/com/example/erp/controller/sd/OrderController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/mapper/pp/FlowCardMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/OrderMapper.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/controller/sd/OrderController.java
@@ -247,9 +247,9 @@
    }
    @ApiOperation("退回流程")
    @PostMapping("/processBack/{orderId}")
    public Result processBack(@PathVariable String orderId)  {
        return  Result.seccess(orderService.processBack(orderId));
    @PostMapping("/processBack/{orderId}/{status}")
    public Result processBack(@PathVariable String orderId,@PathVariable Integer status)  {
        return  Result.seccess(orderService.processBack(orderId,status));
    }
north-glass-erp/src/main/java/com/example/erp/mapper/pp/FlowCardMapper.java
@@ -66,6 +66,7 @@
    List<Map<String, String>> flowCardDetailMp(String processId, FlowCard flowCard);
    Boolean deleteReportingWork(String processId);
    Boolean deleteReportingWorkByOrderId(String orderId);
    List<Map<String, String>> selectPrintFlowCardMp(Date selectTime1, Date selectTime2, String orderId, String project, FlowCard flowCard);
@@ -190,6 +191,7 @@
    Boolean updateFlowCardMerge(String processId,List<Integer> technologyNumbers,Integer index);
    Boolean deleteflowCardSort(String orderId, String processId);
    Boolean deleteflowCardSortByOrderId(String orderId);
    List<Map<String, Object>> getPrintProjectDetailsMp(String projectNo);
north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderMapper.java
@@ -21,6 +21,8 @@
    boolean reviewOrderByIds(String id, Integer status, String userId, String userName);
    boolean backReviewOrderById(String id);
    boolean reviewProcessById(String id, Integer status);
    boolean updateMoney(@Param("order") Order order);
north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -15,6 +15,7 @@
import com.example.erp.entity.userInfo.Log;
import com.example.erp.entity.userInfo.SysError;
import com.example.erp.exception.ServiceException;
import com.example.erp.mapper.pp.FlowCardMapper;
import com.example.erp.mapper.pp.WorkOrderMapper;
import com.example.erp.mapper.sd.*;
import com.example.erp.service.userInfo.LogService;
@@ -46,9 +47,10 @@
    private final ProductMapper productMapper;
    private final LogService logService;
    private final WorkOrderMapper workOrderMapper;
    private final FlowCardMapper flowCardMapper;
    private final OrderProcessDetailMapper orderProcessDetailMapper;
    public OrderService(OrderMapper orderMapper, OrderDetailMapper orderDetailMapper, OrderGlassDetailMapper orderGlassDetailMapper, OrderProcessDetailMapper orderProcessDetailMapper, SysErrorService sysErrorService, OrderOtherMoneyMapper orderOtherMoneyMapper, ProductMapper productMapper, LogService logService, WorkOrderMapper workOrderMapper) {
    public OrderService(OrderMapper orderMapper, OrderDetailMapper orderDetailMapper, OrderGlassDetailMapper orderGlassDetailMapper, OrderProcessDetailMapper orderProcessDetailMapper, SysErrorService sysErrorService, OrderOtherMoneyMapper orderOtherMoneyMapper, ProductMapper productMapper, LogService logService, WorkOrderMapper workOrderMapper, FlowCardMapper flowCardMapper) {
        this.orderMapper = orderMapper;
        this.orderDetailMapper = orderDetailMapper;
        this.orderGlassDetailMapper = orderGlassDetailMapper;
@@ -58,6 +60,7 @@
        this.productMapper = productMapper;
        this.logService = logService;
        this.workOrderMapper = workOrderMapper;
        this.flowCardMapper = flowCardMapper;
    }
    public boolean saveOrder(Map<String,Object> orderMap) throws Exception {
@@ -812,9 +815,30 @@
        return !orderMapper.selectDifferentSize(orderId).isEmpty();
    }
    public Object processBack(String orderId) {
        workOrderMapper.deleteOrderWorkMp(orderId, null);
        workOrderMapper.updateWorkType(orderId, 0);
    public Object processBack(String orderId,Integer status)  {
        if(status<5){
            //更新小片明细表分架状态
            flowCardMapper.updateDeleteState(orderId,"all");
            //删除此订单小片流程报工明细
            flowCardMapper.deleteReportingWorkByOrderId(orderId);
            //删除流程卡
            flowCardMapper.deleteFlowCardMp(orderId,"all");
            //删除流程卡排序
            flowCardMapper.deleteflowCardSortByOrderId(orderId);
            flowCardMapper.updateProcessingCard(orderId, 0);
        }
        if(status<4){
            workOrderMapper.deleteOrderWorkMp(orderId, null);
            workOrderMapper.updateWorkType(orderId, 0);
        }
        if(status<3){
            orderMapper.backReviewOrderById(orderId);
        }
        if(status<2){
            orderMapper.reviewProcessById(orderId,0);
        }
        return null;
    }
}
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -227,18 +227,31 @@
    <!--    更新分架状态-->
    <update id="updateDeleteState">
        update
            sd.order_glass_detail as ogd left join flow_card as fc
            sd.order_glass_detail as ogd left join pp.flow_card as fc
                on ogd.order_id = fc.order_id and ogd.order_number = fc.order_number
        set ogd.splitting_status=0
        where fc.process_id = #{processId}
        where
        <if test="processId=='all'">
            ogd.order_id = #{orderId}
        </if>
        <if test="processId!='all'">
            fc.process_id = #{processId}
        </if>
    </update>
    <!--    删除流程卡-->
    <update id="deleteFlowCardMp">
        delete
        from flow_card as fc
        where fc.process_id = #{processId}
        from pp.flow_card as fc
        where
        <if test="processId=='all'">
            fc.order_id = #{orderId}
        </if>
        <if test="processId!='all'">
            fc.process_id = #{processId}
        </if>
    </update>
    <!--    分架新增明细查询-->
@@ -468,6 +481,14 @@
        from sd.order_process_detail
        where process_id = #{processId}
    </delete>
    <delete id="deleteReportingWorkByOrderId">
        delete
        from sd.order_process_detail
        where order_id = #{orderId}
    </delete>
    <select id="selectPrintFlowCardMp">
        select order_id,
@@ -2501,6 +2522,15 @@
        delete from flow_card_sort where process_id = #{processId}
    </delete>
    <delete id="deleteflowCardSortByOrderId">
        delete from pp.flow_card_sort
               where process_id =(
                                  select process_id from pp.flow_card
                                  where order_id=#{orderId}
                                  group by process_id
                )
    </delete>
    <select id="getPrintProjectDetailsMp">
        SELECT opd.project_no,opd.stock_id,opl.glass_count FROM optimize_detail as opd left join optimize_layout as opl on opl.project_no=opd.project_no and opl.stock_id=opd.stock_id
        where opd.project_no=#{projectNo}
north-glass-erp/src/main/resources/mapper/sd/OrderMapper.xml
@@ -330,6 +330,13 @@
        where order_id = #{id}
    </update>
    <update id="backReviewOrderById">
        update `order` set order_review = 0,
                           verifier_id = null,
                           verifier = null
        where order_id = #{id}
    </update>
    <update id="reviewProcessById">
        update `order` set process_review = #{status} where order_id = #{id}
    </update>