chenlu
2024-06-07 2f640b1038fa331954f78ed1f4317212cf5bb34d
north-glass-erp/src/main/java/com/example/erp/service/pp/WorkOrderService.java
@@ -24,7 +24,6 @@
    //查询工单
    public Map<String, Object> defaultDateWork(Date selectTime1, Date selectTime2, Integer state, OrderGlassDetail orderGlassDetail) {
        Map<String, Object> map = new HashMap<>();
        // System.out.println(workOrderMapper.selectWordOrder( selectTime1,selectTime2,state, orderGlassDetail));
        if (state == 1) {
            map.put("data", workOrderMapper.selectWordOrder(selectTime1, selectTime2, orderGlassDetail));
        } else {
@@ -55,58 +54,62 @@
        String productIdVl = "";
        //将接收到的信息解析成list
        List<OrderDetail> orderDetaillist = JSONArray.parseArray(JSONObject.toJSONString(object.get("orderdetail")), OrderDetail.class);
        String orderID = orderDetaillist.get(0).getOrderId();
        String orderId = orderDetaillist.get(0).getOrderId();
        if (!orderDetaillist.isEmpty()) {
            for (OrderDetail orderDetail : orderDetaillist) {
                //生成生产订单号
                for (int i = 0; i < count; i++) {
                    letters = lettr++;
                    productIdVl = orderID + letters;
                    //查询生成的生产订单号是否存在
                    Integer workCount = workOrderMapper.selectOrderNumber(productIdVl);
                    if (workCount < 1) {
                        break;
                    }
        for (OrderDetail orderDetail : orderDetaillist) {
            //生成生产订单号
            for (int i = 0; i < count; i++) {
                letters = lettr++;
                productIdVl = orderId + letters;
                //查询生成的生产订单号是否存在
                Integer workCount = workOrderMapper.selectOrderNumber(productIdVl);
                if (workCount < 1) {
                    break;
                }
                }
                //添加生产订单
                workOrderMapper.addOrderWorkMp(productIdVl, orderDetail.getOrderId(), orderDetail.getProductId(), orderDetail.getProductName(), userName);
                Integer State = 2;
                Integer States = 1;
                //查询该订单未转生产订单的条数
                Integer NoWorkCount = workOrderMapper.selectWorkCount(orderDetail.getOrderId());
                if (NoWorkCount == 0) {
                    //条数为0修改转生产订单状态为2,否则为1
                    workOrderMapper.updateWorkType(orderDetail.getOrderId(), State);
                } else {
                    workOrderMapper.updateWorkType(orderDetail.getOrderId(), States);
                }
            }
            return true;
        } else {
            return false;
            //添加生产订单
            workOrderMapper.addOrderWorkMp(productIdVl, orderDetail.getOrderId(), orderDetail.getProductId(), orderDetail.getProductName(), userName);
            Integer state = 2;
            Integer states = 1;
            //查询该订单未转生产订单的条数
            Integer noWorkCount = workOrderMapper.selectWorkCount(orderDetail.getOrderId());
            if (noWorkCount == 0) {
                //条数为0修改转生产订单状态为2,否则为1
                workOrderMapper.updateWorkType(orderDetail.getOrderId(), state);
            } else {
                workOrderMapper.updateWorkType(orderDetail.getOrderId(), states);
            }
        }
        return true;
    }
    //删除生产订单
    public Boolean deleteOrderWorkSv(String orderId, String productName) {
        if (!orderId.isEmpty() && !productName.isEmpty()) {
            //删除订单小片表生产订单号
            workOrderMapper.deleteOrderWorkMp(orderId, productName);
            Integer State = 0;
            Integer States = 1;
            //查询该订单未转生产订单的条数
            Integer NoWorkCount = workOrderMapper.selectWorkCount(orderId);
            //查询该订单转生产订单的条数
            Integer YesWorkCount = workOrderMapper.selectYesWorkCount(orderId);
            if (NoWorkCount == YesWorkCount) {
                workOrderMapper.updateWorkType(orderId, State);
            } else {
                workOrderMapper.updateWorkType(orderId, States);
    public Boolean deleteOrderWorkSv(String orderId, String productionId) {
        if (!orderId.isEmpty() && !productionId.isEmpty()) {
            //查询该订单是否已经建立流程卡
            Integer getProcessCard = workOrderMapper.selectProcessCard(orderId);
            if (getProcessCard == 0){
                //删除订单小片表生产订单号
                workOrderMapper.deleteOrderWorkMp(orderId, productionId);
                int state = 0;
                int states = 1;
                //查询该订单未转生产订单的条数
                Integer noWorkCount = workOrderMapper.selectWorkCount(orderId);
                //查询该订单转生产订单的条数
                Integer yesWorkCount = workOrderMapper.selectYesWorkCount(orderId);
                if (noWorkCount.equals(yesWorkCount)) {
                    workOrderMapper.updateWorkType(orderId, state);
                } else {
                    workOrderMapper.updateWorkType(orderId, states);
                }
                return true;
            }
            return true;
            else {
                return false;
            }
        } else {
            return false;
        }