李林
2024-03-25 0ac8b852189665af7e0d0c8fb154a8b723dbe7eb
检验任务
已修改10个文件
175 ■■■■■ 文件已修改
inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTemplateController.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/pojo/InsOrder.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/pojo/InsProduct.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/pojo/InsSample.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/service/StandardTemplateService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardTemplateServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanVO.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/resources/mapper/InsSampleMapper.xml 57 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTemplateController.java
@@ -54,11 +54,11 @@
        return Result.success(standardTemplateService.getStandardTemplate());
    }
    @ApiOperation(value = "通过模板id和项目名称获取检验项模板内容")
    @PostMapping("/getStandTempThingByTIdAndPName")
    @ApiOperation(value = "通过模板id获取检验项模板内容")
    @PostMapping("/getStandTempThingById")
    @ValueAuth
    public Result<?> getStandTempThingByTIdAndPName(Integer templateId, String inspectionItem, String inspectionItemSubclass) {
        return Result.success(standardTemplateService.getStandTempThingByTIdAndPName(templateId, inspectionItem, inspectionItemSubclass));
    public Result<?> getStandTempThingById(Integer id) {
        return Result.success(standardTemplateService.getStandTempThingById(id));
    }
}
inspect-server/src/main/java/com/yuanchu/mom/pojo/InsOrder.java
@@ -164,4 +164,8 @@
     */
    private String sample;
    @ApiModelProperty("检验时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime insTime;
}
inspect-server/src/main/java/com/yuanchu/mom/pojo/InsProduct.java
@@ -1,11 +1,14 @@
package com.yuanchu.mom.pojo;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.annotation.*;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
import java.util.Map;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
@@ -179,4 +182,10 @@
     * 外键:standard_template表id
     */
    private Integer templateId;
    @TableField(exist = false)
    private List<JSONObject> template;
    @TableField(exist = false)
    private Map<String, Object> style;
}
inspect-server/src/main/java/com/yuanchu/mom/pojo/InsSample.java
@@ -90,24 +90,11 @@
    private Integer insState;
    /**
     * 下发时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime sendTime;
    /**
     * 备注
     */
    private String remark;
    private Integer standardMethodListId;
    /**
     * 约定时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDate appointed;
    @ApiModelProperty("样品单位")
    private String unit;
inspect-server/src/main/java/com/yuanchu/mom/service/StandardTemplateService.java
@@ -24,6 +24,6 @@
    List<StandardTemplate> getStandardTemplate();
    String getStandTempThingByTIdAndPName(Integer templateId, String inspectionItem, String inspectionItemSubclass);
    String getStandTempThingById(Integer templateId);
}
inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
@@ -1,27 +1,34 @@
package com.yuanchu.mom.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yuanchu.mom.common.GetLook;
import com.yuanchu.mom.common.PrintChina;
import com.yuanchu.mom.dto.InsOrderPlanDTO;
import com.yuanchu.mom.dto.SampleProductDto;
import com.yuanchu.mom.mapper.InsOrderMapper;
import com.yuanchu.mom.mapper.InsSampleMapper;
import com.yuanchu.mom.mapper.InsSampleUserMapper;
import com.yuanchu.mom.pojo.InsOrder;
import com.yuanchu.mom.pojo.InsProduct;
import com.yuanchu.mom.pojo.InsSampleUser;
import com.yuanchu.mom.service.InsOrderPlanService;
import com.yuanchu.mom.service.InsOrderService;
import com.yuanchu.mom.service.StandardTemplateService;
import com.yuanchu.mom.utils.QueryWrappers;
import com.yuanchu.mom.vo.InsOrderPlanVO;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
import java.time.LocalDateTime;
import java.util.*;
/**
 * 检验任务-业务实现层
@@ -39,6 +46,8 @@
    private InsOrderMapper insOrderMapper;
    private InsOrderService insOrderService;
    private StandardTemplateService standardTemplateService;
    @Override
    public Map<String, Object> selectInsOrderPlanList(Page page, InsOrderPlanDTO insOrderPlanDTO) {
@@ -70,7 +79,58 @@
        InsOrder insOrder = new InsOrder();
        insOrder.setId(id);
        insOrder.setInsState(1);
        insOrderMapper.updateById(insOrder);
        return insOrderService.getInsOrder(id);
        InsOrder order = insOrderMapper.selectById(id);
        if(BeanUtil.isEmpty(order.getInsTime())){
            insOrder.setInsTime(LocalDateTime.now());
            insOrderMapper.updateById(insOrder);
        }
        Map<String, Object> map = insOrderService.getInsOrder(id);
        Set<Integer> set = new HashSet<>();
        Map<Integer, String> map2 = new HashMap<>();
        List<SampleProductDto> list = JSON.parseArray(JSON.toJSONString(map.get("sampleProduct")), SampleProductDto.class);
        for (SampleProductDto samples : list) {
            for (InsProduct product : samples.getInsProduct()) {
                if(set.add(product.getTemplateId())){
                    map2.put(product.getTemplateId(), standardTemplateService.getStandTempThingById(product.getTemplateId()) + "");
                }
                String thing = map2.get(product.getTemplateId());
                if (StrUtil.isNotEmpty(thing)){
                    JSONObject sheet = JSON.parseObject(JSON.toJSONString(JSON.parseArray(JSON.toJSONString(JSON.parseObject(thing).get("data"))).get(0)));
                    JSONObject config = JSON.parseObject(JSON.toJSONString(sheet.get("config")));
                    List<JSONObject> cellData = JSON.parseArray(JSON.toJSONString(sheet.get("celldata")), JSONObject.class);
                    List<JSONObject> tableData = new ArrayList<>();
                    Map<String, Object> style = new HashMap<>();
//                    style.put("borderInfo", config.get("borderInfo"));
                    style.put("rowlen", config.get("rowlen"));
                    style.put("columnlen", config.get("columnlen"));
                    int r = -1;
                    if (BeanUtil.isNotEmpty(cellData)){
                        for (JSONObject o : cellData) {
                            JSONObject v = JSON.parseObject(JSON.toJSONString(o.get("v")));
                            if(BeanUtil.isNotEmpty(v.get("ps"))){
                                JSONObject ps = JSON.parseObject(JSON.toJSONString(v.get("ps")));
                                if (ps.get("value").equals("检验项") && v.get("v").equals(product.getInspectionItem())){
                                    tableData.add(o);
                                    r = Integer.parseInt(o.get("r")+"");
                                    continue;
                                }
                            }
                            if(tableData.size()>0){
                                if(Integer.parseInt(o.get("r")+"") == r + 1 || Integer.parseInt(o.get("r")+"") == r){
                                    r = Integer.parseInt(o.get("r")+"");
                                    tableData.add(o);
                                }else{
                                    break;
                                }
                            }
                        }
                    }
                    product.setTemplate(tableData);
                    product.setStyle(style);
                }
            }
        }
        map.put("sampleProduct", list);
        return map;
    }
}
inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java
@@ -13,15 +13,13 @@
import com.yuanchu.mom.dto.OrderThingDto;
import com.yuanchu.mom.dto.SampleOrderDto;
import com.yuanchu.mom.dto.SampleProductDto;
import com.yuanchu.mom.mapper.InsOrderMapper;
import com.yuanchu.mom.mapper.InsProductMapper;
import com.yuanchu.mom.mapper.InsSampleMapper;
import com.yuanchu.mom.mapper.InsSampleUserMapper;
import com.yuanchu.mom.mapper.*;
import com.yuanchu.mom.pojo.InsOrder;
import com.yuanchu.mom.pojo.InsProduct;
import com.yuanchu.mom.pojo.InsSample;
import com.yuanchu.mom.pojo.InsSampleUser;
import com.yuanchu.mom.service.InsOrderService;
import com.yuanchu.mom.service.StandardTemplateService;
import com.yuanchu.mom.utils.GiveCode;
import com.yuanchu.mom.utils.QueryWrappers;
import lombok.AllArgsConstructor;
@@ -115,8 +113,8 @@
    @Override
    public Map<String, Object> getInsOrder(Integer id) {
        Map<String, Object> map = new HashMap<>();
        List<SampleProductDto> list = insSampleMapper.selectSampleProductListByOrderId(id);
        InsOrder insOrder = insOrderMapper.selectById(id);
        List<SampleProductDto> list = insSampleMapper.selectSampleProductListByOrderId(id);
        map.put("insOrder", insOrder);
        map.put("sampleProduct", list);
        return map;
inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardTemplateServiceImpl.java
@@ -63,7 +63,7 @@
    }
    @Override
    public String getStandTempThingByTIdAndPName(Integer templateId, String inspectionItem, String inspectionItemSubclass) {
    public String getStandTempThingById(Integer templateId) {
        return standardTemplateMapper.selectById(templateId).getThing();
    }
}
inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanVO.java
@@ -22,7 +22,7 @@
    @ValueTableShow(value = 5,name = "状态")
    private String insState;
    @ValueTableShow(value = 5,name = "检验结果")
    @ValueTableShow(value = 8,name = "检验结果")
    private Integer insResult;
    @ValueTableShow(value = 6,name = "约定时间")
inspect-server/src/main/resources/mapper/InsSampleMapper.xml
@@ -18,10 +18,8 @@
        <result property="model" column="model" jdbcType="VARCHAR"/>
        <result property="isLeave" column="is_leave" jdbcType="INTEGER"/>
        <result property="insState" column="ins_state" jdbcType="INTEGER"/>
        <result property="sendTime" column="send_time" jdbcType="TIMESTAMP"/>
        <result property="joinNum" column="join_num" jdbcType="INTEGER"/>
        <result property="remark" column="remark" jdbcType="VARCHAR"/>
        <result property="appointed" column="appointed" jdbcType="TIMESTAMP"/>
        <result property="createUser" column="create_user" jdbcType="INTEGER"/>
        <result property="updateUser" column="update_user" jdbcType="INTEGER"/>
        <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
@@ -71,17 +69,17 @@
    <select id="selectSampleProductListByOrderId" resultMap="sampleDto">
        select isa.*,
               ip.id,
               ip.id ip_id,
               inspection_item,
               inspection_item_classify,
               inspection_item_subclass,
               ip.factory,
               ip.laboratory,
               ip.sample_type,
               ip.sample,
               ip.model,
               ip.factory ip_factory,
               ip.laboratory ip_laboratory,
               ip.sample_type ip_sample_type,
               ip.sample ip_sample,
               ip.model ip_model,
               son_laboratory,
               ip.unit,
               ip.unit ip_unit,
               price,
               man_hour,
               man_hour_group,
@@ -96,17 +94,18 @@
               bsm,
               ask,
               `last_value`,
               ip.ins_result,
               ip.ins_result ip_ins_result,
               state,
               ins_sample_id,
               ip.create_user,
               ip.update_user,
               ip.create_time,
               ip.update_time,
               ip.create_user ip_create_user,
               ip.update_user ip_update_user,
               ip.create_time ip_create_time,
               ip.update_time ip_update_time,
               template_id
        from ins_sample isa
                 left join ins_product ip on isa.id = ip.ins_sample_id
        left join ins_product ip on isa.id = ip.ins_sample_id
        where ins_order_id = #{id}
        and state = 1
    </select>
    <resultMap id="sampleDto" type="com.yuanchu.mom.dto.SampleProductDto">
@@ -123,10 +122,8 @@
        <result property="model" column="model" jdbcType="VARCHAR"/>
        <result property="isLeave" column="is_leave" jdbcType="INTEGER"/>
        <result property="insState" column="ins_state" jdbcType="INTEGER"/>
        <result property="sendTime" column="send_time" jdbcType="TIMESTAMP"/>
        <result property="joinNum" column="join_num" jdbcType="INTEGER"/>
        <result property="remark" column="remark" jdbcType="VARCHAR"/>
        <result property="appointed" column="appointed" jdbcType="TIMESTAMP"/>
        <result property="createUser" column="create_user" jdbcType="INTEGER"/>
        <result property="updateUser" column="update_user" jdbcType="INTEGER"/>
        <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
@@ -137,17 +134,17 @@
    </resultMap>
    <resultMap id="product" type="com.yuanchu.mom.pojo.InsProduct">
        <id property="id" column="ip.id" jdbcType="INTEGER"/>
        <id property="id" column="ip_id" jdbcType="INTEGER"/>
        <result property="inspectionItem" column="inspection_item" jdbcType="VARCHAR"/>
        <result property="inspectionItemClassify" column="inspection_item_classify" jdbcType="VARCHAR"/>
        <result property="inspectionItemSubclass" column="inspection_item_subclass" jdbcType="VARCHAR"/>
        <result property="factory" column="ip.factory" jdbcType="VARCHAR"/>
        <result property="laboratory" column="ip.laboratory" jdbcType="VARCHAR"/>
        <result property="sampleType" column="ip.sample_type" jdbcType="VARCHAR"/>
        <result property="sample" column="ip.sample" jdbcType="VARCHAR"/>
        <result property="model" column="ip.model" jdbcType="VARCHAR"/>
        <result property="factory" column="ip_factory" jdbcType="VARCHAR"/>
        <result property="laboratory" column="ip_laboratory" jdbcType="VARCHAR"/>
        <result property="sampleType" column="ip_sample_type" jdbcType="VARCHAR"/>
        <result property="sample" column="ip_sample" jdbcType="VARCHAR"/>
        <result property="model" column="ip_model" jdbcType="VARCHAR"/>
        <result property="sonLaboratory" column="son_laboratory" jdbcType="VARCHAR"/>
        <result property="unit" column="ip.unit" jdbcType="VARCHAR"/>
        <result property="unit" column="ip_unit" jdbcType="VARCHAR"/>
        <result property="price" column="price" jdbcType="DECIMAL"/>
        <result property="manHour" column="man_hour" jdbcType="DOUBLE"/>
        <result property="manHourGroup" column="man_hour_group" jdbcType="VARCHAR"/>
@@ -162,13 +159,13 @@
        <result property="bsm" column="bsm" jdbcType="VARCHAR"/>
        <result property="ask" column="ask" jdbcType="VARCHAR"/>
        <result property="lastValue" column="last_value" jdbcType="VARCHAR"/>
        <result property="insResult" column="ip.ins_result" jdbcType="INTEGER"/>
        <result property="insResult" column="ip_ins_result" jdbcType="INTEGER"/>
        <result property="state" column="state" jdbcType="INTEGER"/>
        <result property="insSampleId" column="ins_sample_id" jdbcType="INTEGER"/>
        <result property="createUser" column="ip.create_user" jdbcType="INTEGER"/>
        <result property="updateUser" column="ip.update_user" jdbcType="INTEGER"/>
        <result property="createTime" column="ip.create_time" jdbcType="TIMESTAMP"/>
        <result property="updateTime" column="ip.update_time" jdbcType="TIMESTAMP"/>
        <result property="templateId" column="ip.template_id" jdbcType="INTEGER"/>
        <result property="createUser" column="ip_create_user" jdbcType="INTEGER"/>
        <result property="updateUser" column="ip_update_user" jdbcType="INTEGER"/>
        <result property="createTime" column="ip_create_time" jdbcType="TIMESTAMP"/>
        <result property="updateTime" column="ip_update_time" jdbcType="TIMESTAMP"/>
        <result property="templateId" column="template_id" jdbcType="INTEGER"/>
    </resultMap>
</mapper>