From 0ac8b852189665af7e0d0c8fb154a8b723dbe7eb Mon Sep 17 00:00:00 2001 From: 李林 <z1292839451@163.com> Date: 星期一, 25 三月 2024 18:00:36 +0800 Subject: [PATCH] 检验任务 --- inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTemplateController.java | 8 +- inspect-server/src/main/java/com/yuanchu/mom/pojo/InsSample.java | 13 ---- inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanVO.java | 2 inspect-server/src/main/resources/mapper/InsSampleMapper.xml | 57 +++++++++---------- inspect-server/src/main/java/com/yuanchu/mom/service/StandardTemplateService.java | 2 inspect-server/src/main/java/com/yuanchu/mom/pojo/InsOrder.java | 4 + inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java | 70 +++++++++++++++++++++- inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java | 8 +- inspect-server/src/main/java/com/yuanchu/mom/pojo/InsProduct.java | 9 +++ inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardTemplateServiceImpl.java | 2 10 files changed, 115 insertions(+), 60 deletions(-) diff --git a/inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTemplateController.java b/inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTemplateController.java index 633cfdb..34c02e9 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTemplateController.java +++ b/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)); } } diff --git a/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsOrder.java b/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsOrder.java index fdfc642..d784a0a 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsOrder.java +++ b/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; + } diff --git a/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsProduct.java b/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsProduct.java index 2014bd2..9f5aa68 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsProduct.java +++ b/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 @@ * 澶栭敭锛歴tandard_template琛╥d */ private Integer templateId; + + @TableField(exist = false) + private List<JSONObject> template; + + @TableField(exist = false) + private Map<String, Object> style; } \ No newline at end of file diff --git a/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsSample.java b/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsSample.java index bf088aa..f27bd12 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsSample.java +++ b/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; diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/StandardTemplateService.java b/inspect-server/src/main/java/com/yuanchu/mom/service/StandardTemplateService.java index bb0b40b..6269806 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/service/StandardTemplateService.java +++ b/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); } diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java index 5b4a1e7..e9bf629 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java +++ b/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; } } diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java index 4cc7203..9ece3f3 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java +++ b/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; diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardTemplateServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardTemplateServiceImpl.java index 6b5c035..8acb374 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardTemplateServiceImpl.java +++ b/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(); } } diff --git a/inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanVO.java b/inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanVO.java index feee425..1cd93c8 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanVO.java +++ b/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 = "绾﹀畾鏃堕棿") diff --git a/inspect-server/src/main/resources/mapper/InsSampleMapper.xml b/inspect-server/src/main/resources/mapper/InsSampleMapper.xml index 6fd61d9..b5effec 100644 --- a/inspect-server/src/main/resources/mapper/InsSampleMapper.xml +++ b/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> -- Gitblit v1.9.3