Fixiaobai
2023-11-15 48cddae0c3d3c0f3653c1354c0ab2beb436189c5
Changes13
已修改5个文件
43 ■■■■■ 文件已修改
mes-plan/src/main/java/com/chinaztt/mes/plan/controller/CustomerOrderController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mes-plan/src/main/java/com/chinaztt/mes/plan/dto/CustomerOrderDTO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mes-plan/src/main/java/com/chinaztt/mes/plan/service/impl/CustomerOrderServiceImpl.java 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mes-plan/src/main/java/com/chinaztt/mes/plan/vo/CustomerOrderVO2.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
mes-plan/src/main/resources/mapper/CustomerOrderMapper.xml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mes-plan/src/main/java/com/chinaztt/mes/plan/controller/CustomerOrderController.java
@@ -17,6 +17,7 @@
package com.chinaztt.mes.plan.controller;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.chinaztt.mes.common.wrapper.QueryWrapperUtil;
@@ -95,6 +96,7 @@
    @ApiOperation(value = "分页查询", notes = "分页查询")
    @GetMapping("/page/{type}")
    public R getCustomerOrderPage(Page page, CustomerOrderDTO planCustomerOrder, @PathVariable("type") String type) {
        log.info("条件=================》"+ JSONObject.toJSONString(planCustomerOrder));
        return R.ok(customerOrderService.getCustomerOrderPage(page, QueryWrapperUtil.gen(planCustomerOrder), type));
    }
mes-plan/src/main/java/com/chinaztt/mes/plan/dto/CustomerOrderDTO.java
@@ -37,6 +37,9 @@
@Data
public class CustomerOrderDTO extends CustomerOrder implements Serializable {
    @ApiModelProperty(value = "交货日期")
    private LocalDateTime deliveryDate;
    @ApiModelProperty(value = "下发需求数量")
    private BigDecimal requireNumber;
mes-plan/src/main/java/com/chinaztt/mes/plan/service/impl/CustomerOrderServiceImpl.java
@@ -5,7 +5,6 @@
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.io.IoUtil;
import cn.hutool.core.util.BooleanUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.http.HttpRequest;
import com.alibaba.excel.EasyExcel;
@@ -37,7 +36,6 @@
import com.chinaztt.mes.common.oa.OAResult;
import com.chinaztt.mes.common.util.StateResult;
import com.chinaztt.mes.common.util.WechatMsgTips;
import com.chinaztt.mes.common.util.easyexcel.EasyExcelUtils;
import com.chinaztt.mes.common.wechat.WechatProperty;
import com.chinaztt.mes.plan.dto.*;
import com.chinaztt.mes.plan.entity.*;
@@ -398,18 +396,28 @@
            // }
            //保存主生产计划
            MasterProductionSchedule masterProductionSchedule = new MasterProductionSchedule();
            //主生产计划号
            masterProductionSchedule.setMpsNo(scheduleNumberGenerator.generateNumberWithPrefix(MasterProductionSchedule.DIGIT, MasterProductionSchedule.PREFIX, MasterProductionSchedule::getMpsNo));
            masterProductionSchedule.setPartId(customerOrderDTO.getPartId());
            Part part = partMapper.selectOne(Wrappers.<Part>lambdaQuery().eq(Part::getPartNo, customerOrderDTO.getPartNo()));
            //零件id
            masterProductionSchedule.setPartId(part.getId());
            //将审核状态和工艺文件的id同步给生产计划
            masterProductionSchedule.setIsAudit(customerOrderDTO.getIsAudit());
            masterProductionSchedule.setTechnologyDocumentId(customerOrderDTO.getTechnologyDocumentId());
            masterProductionSchedule.setManufactureAttr(customerOrderDTO.getManufactureAttr());
            masterProductionSchedule.setDocNumber(customerOrderDTO.getDocNumber());
            //需求数量
            masterProductionSchedule.setQtyRequired(qta);
            //需求日期
            masterProductionSchedule.setRequiredDate(customerOrderDTO.getDeliveryDate());
            //备注
            masterProductionSchedule.setRemark(customerOrderDTO.getRemark());
            masterProductionSchedule.setQtyRequired(qta);
            masterProductionSchedule.setRequiredDate(customerOrderDTO.getWantedDeliveryDate());
            masterProductionSchedule.setRemark(customerOrderDTO.getRemark());
            masterProductionSchedule.setSource("销售订单");
            masterProductionScheduleMapper.insert(masterProductionSchedule);
            customerOrderDTO.setRequireNumber(customerOrderDTO.getQtyPlaned());
            // if (CollectionUtil.isNotEmpty(operationTaskProduceList)) {
            //     for (OperationTaskProduce operationTaskProduce : operationTaskProduceList) {
@@ -436,6 +444,7 @@
        return true;
    }
    //多个销售订单创建一个主生产计划
    @Override
    public MasterProductionSchedule createOneMasterProductionScheduleByCustomerOrders(List<CustomerOrderDTO> customerOrders) {
        List<Long> ids = customerOrders.stream().map(CustomerOrderDTO::getId).collect(Collectors.toList());
@@ -597,17 +606,20 @@
            return R.failed("工艺文件缺失");
        }
        List<CustomerOrder> customerOrderList = baseMapper.selectBatchIds(ids);
        customerOrderList.forEach(l->{
            log.info("关联数据==============================>"+l);
        });
        String msg = "";
        for (CustomerOrder customerOrder : customerOrderList) {
            if (BooleanUtil.isTrue(customerOrder.getIsDocument())) {
                msg += customerOrder.getCustomerOrderNo() + "已关联工艺文件!";
            }
            if (StringUtils.isBlank(customerOrder.getSalesPartNo())) {
            if (StringUtils.isBlank(customerOrder.getPartNo())) {
                msg += customerOrder.getCustomerOrderNo() + "未选择销售件!";
            }
            if (StringUtils.isBlank(customerOrder.getPartNo())) {
                customerOrder.setPartNo(document.getPartNo());
            }
            //if (StringUtils.isBlank(customerOrder.getPartNo())) {
            //    customerOrder.setPartNo(document.getPartNo());
            //}
            customerOrder.setIsDocument(true);
            customerOrder.setCoState(CustomerOrderStateStringValues.PLAN);
            customerOrder.setTechnologyDocumentId(docId);
@@ -697,7 +709,7 @@
                    .contentType("application/json")
                    .header("Authorization", "Bearer " + token).form(map).execute().body();
            JSONObject result = JSONObject.parseObject(str);
            //JSONArray jsonArray = result.getJSONArray("data");
            log.info("主表长度============================================>"+result.getJSONArray("data").size());
            //jsonArray.forEach();
            //return null;
            //主表参数表
mes-plan/src/main/java/com/chinaztt/mes/plan/vo/CustomerOrderVO2.java
@@ -14,7 +14,7 @@
    private Long id;
    //合同编号
    private String contractNo;
    private String customerOrderNo;
    //工程名称
    private String entityName;
mes-plan/src/main/resources/mapper/CustomerOrderMapper.xml
@@ -244,7 +244,7 @@
    <resultMap id="resultMap" type="com.chinaztt.mes.plan.vo.CustomerOrderVO2">
        <id property="id" column="id"/>
        <result property="contractNo" column="contract_no"/>
        <result property="customerOrderNo" column="customer_order_no"/>
        <result property="entityName" column="entity_name"/>
        <result property="createUser" column="create_user"/>
        <result property="createTime" column="create_time"/>
@@ -271,9 +271,9 @@
    <!-- 需要处理 -->
    <select id="getCustomerOrderPage" resultMap="resultMap">
        SELECT
        select * from (SELECT
        pco.id ,
        contract_no ,
        customer_order_no ,
        pc.entity_name ,
        pc.create_user ,
        pc.create_time ,
@@ -299,7 +299,7 @@
        FROM
        plan_customer_order pco
        LEFT JOIN plan_customer pc ON pc."id" = pco.customer_id
        LEFT JOIN technology_document td ON td.id = pco.technology_document_id
        LEFT JOIN technology_document td ON td.id = pco.technology_document_id) tempA
        where 1=1
            <if test="ew.emptyOfWhere == false">
                and ${ew.SqlSegment}