From 1c26d05a692239825921c146348db52540261d7c Mon Sep 17 00:00:00 2001 From: JYW <2013732181@qq.com> Date: 星期三, 24 四月 2024 16:12:51 +0800 Subject: [PATCH] 2024-04-24 样品缺陷指数 --- inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderService.java | 2 + inspect-server/src/main/java/com/yuanchu/mom/vo/SampleDefectsChildrenVo.java | 17 ++++++++ inspect-server/src/main/java/com/yuanchu/mom/mapper/InsSampleMapper.java | 1 inspect-server/src/main/resources/mapper/InsOrderMapper.xml | 50 +++++++++++++++++++++++++ inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderController.java | 8 +++- inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java | 15 +++++++ inspect-server/src/main/java/com/yuanchu/mom/mapper/InsOrderStateMapper.java | 1 inspect-server/src/main/java/com/yuanchu/mom/vo/SampleDefectsFatherVo.java | 17 ++++++++ inspect-server/src/main/java/com/yuanchu/mom/mapper/InsOrderMapper.java | 4 ++ 9 files changed, 112 insertions(+), 3 deletions(-) diff --git a/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderController.java b/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderController.java index 12210bd..d2bda67 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderController.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderController.java @@ -36,8 +36,6 @@ private InsOrderService insOrderService; - private InsSampleService insSampleService; - private InsProductService insProductService; private InsOrderTemplateService insOrderTemplateService; @@ -134,5 +132,11 @@ CostStatisticsDto costStatisticsDto = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), CostStatisticsDto.class); return Result.success(insOrderService.costStatistics(page, costStatisticsDto)); } + @ApiOperation(value = "鏍峰搧缂洪櫡鎸囨暟", tags = "鏍峰搧缂洪櫡鎸囨暟") + @PostMapping("/selectSampleDefects") + public Result selectSampleDefects(Integer size, Integer current, String inspectionItems, String orderNumber) { + return Result.success(insOrderService.selectSampleDefects(new Page<>(current, size),inspectionItems, orderNumber)); + + } } diff --git a/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsOrderMapper.java b/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsOrderMapper.java index 28ae993..0158ffb 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsOrderMapper.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsOrderMapper.java @@ -3,11 +3,13 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.dto.CostStatisticsDto; import com.yuanchu.mom.dto.SampleOrderDto; import com.yuanchu.mom.dto.SampleProductDto; import com.yuanchu.mom.dto.SampleProductDto2; import com.yuanchu.mom.pojo.InsOrder; +import com.yuanchu.mom.vo.SampleDefectsFatherVo; import java.util.List; import java.util.Map; @@ -34,7 +36,9 @@ IPage<CostStatisticsDto> selectCostStatistics(IPage<CostStatisticsDto> page, QueryWrapper<CostStatisticsDto> ew); List<Map<String, String>> selectDeviceList(Set<String> names); + List<SampleDefectsFatherVo> selectSampleDefects(Page page, String inspectionItems, String orderNumber); + Long getCount(String inspectionItems, String orderNumber); } diff --git a/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsOrderStateMapper.java b/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsOrderStateMapper.java index 83fc5c9..68035dc 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsOrderStateMapper.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsOrderStateMapper.java @@ -11,6 +11,7 @@ */ public interface InsOrderStateMapper extends BaseMapper<InsOrderState> { + } diff --git a/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsSampleMapper.java b/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsSampleMapper.java index 762a4bb..41f1913 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsSampleMapper.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsSampleMapper.java @@ -26,7 +26,6 @@ List<SampleProductDto> selectSampleProductListByOrderId(Integer id); List<SampleProductDto> getInsOrderAndSample(Integer id, String laboratory); - } diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderService.java b/inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderService.java index 4f1f80f..ccb2eab 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderService.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderService.java @@ -1,6 +1,7 @@ package com.yuanchu.mom.service; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.yuanchu.mom.dto.*; import com.yuanchu.mom.pojo.InsOrder; @@ -33,4 +34,5 @@ Map<String, Object> costStatistics(IPage<CostStatisticsDto> page, CostStatisticsDto costStatisticsDto); + Map<String, Object> selectSampleDefects(Page page, String inspectionItems, String orderNumber); } 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 bd725d6..52d0804 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 @@ -6,6 +6,7 @@ import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +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; @@ -16,6 +17,7 @@ import com.yuanchu.mom.service.StandardTemplateService; import com.yuanchu.mom.utils.GiveCode; import com.yuanchu.mom.utils.QueryWrappers; +import com.yuanchu.mom.vo.SampleDefectsFatherVo; import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -48,6 +50,9 @@ private InsSampleUserMapper insSampleUserMapper; private InsOrderStateMapper insOrderStateMapper; + + + //鑾峰彇妫�楠屼笅鍗曟暟鎹� @Override @@ -159,6 +164,16 @@ map.put("body", insOrderMapper.selectCostStatistics(page, QueryWrappers.queryWrappers(costStatisticsDto))); return map; } + @Override + public Map<String, Object> selectSampleDefects(Page page, String inspectionItems, String orderNumber) { + List<SampleDefectsFatherVo> sampleDefectsFatherVos = insOrderMapper.selectSampleDefects(page, inspectionItems, orderNumber); + Map<String, Object> map = new HashMap<>(); + map.put("records", sampleDefectsFatherVos); + Long aLong = insOrderMapper.getCount(inspectionItems, orderNumber); + map.put("total", aLong); + return map; + + } } diff --git a/inspect-server/src/main/java/com/yuanchu/mom/vo/SampleDefectsChildrenVo.java b/inspect-server/src/main/java/com/yuanchu/mom/vo/SampleDefectsChildrenVo.java new file mode 100644 index 0000000..aaf8c48 --- /dev/null +++ b/inspect-server/src/main/java/com/yuanchu/mom/vo/SampleDefectsChildrenVo.java @@ -0,0 +1,17 @@ +package com.yuanchu.mom.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class SampleDefectsChildrenVo { + private String entrust_code;//濮旀墭缂栫爜 + private String inspection_item;//妫�楠岄」 + private String name;//妫�楠屼汉 + private LocalDateTime create_time;//妫�楠屾棩鏈� +} diff --git a/inspect-server/src/main/java/com/yuanchu/mom/vo/SampleDefectsFatherVo.java b/inspect-server/src/main/java/com/yuanchu/mom/vo/SampleDefectsFatherVo.java new file mode 100644 index 0000000..e54af7c --- /dev/null +++ b/inspect-server/src/main/java/com/yuanchu/mom/vo/SampleDefectsFatherVo.java @@ -0,0 +1,17 @@ +package com.yuanchu.mom.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class SampleDefectsFatherVo { + private Integer id;//鏍峰搧id + private String sample;//鏍峰搧鍚嶇О + + private List<SampleDefectsChildrenVo> children;//瀛愮被 +} diff --git a/inspect-server/src/main/resources/mapper/InsOrderMapper.xml b/inspect-server/src/main/resources/mapper/InsOrderMapper.xml index 573ed0b..3326b0e 100644 --- a/inspect-server/src/main/resources/mapper/InsOrderMapper.xml +++ b/inspect-server/src/main/resources/mapper/InsOrderMapper.xml @@ -50,6 +50,18 @@ <result property="remark" column="remark"/> </resultMap> + <resultMap id="selectSampleDefectsMap" type="com.yuanchu.mom.vo.SampleDefectsFatherVo"> + <id column="id" property="id"/> + <result column="sample" property="sample"/> + <association property="children" resultMap="SampleDefectsChildrenMap" javaType="java.util.List"/> + </resultMap> + + <resultMap id="SampleDefectsChildrenMap" type="com.yuanchu.mom.vo.SampleDefectsChildrenVo"> + <result column="entrust_code" property="entrust_code" /> + <result column="inspection_item" property="inspection_item" /> + <result column="name" property="name"/> + <result column="create_time" property="create_time" /> + </resultMap> <select id="selectInsOrderParameter" resultType="com.yuanchu.mom.pojo.InsOrder"> select * from ( @@ -174,4 +186,42 @@ </where> </update> + <select id="selectSampleDefects" resultMap="selectSampleDefectsMap"> + SELECT io.entrust_code,sam.sample,ip.inspection_item,u.name,b.create_time, sam.id + from ins_order io + left JOIN ins_sample sam on io.id=sam.ins_order_id + LEFT JOIN ins_product ip on ip.ins_sample_id=sam.id + LEFT JOIN + (SELECT create_time,create_user,ins_product_id FROM (select * FROM ins_product_user ORDER BY ins_product_user.create_time DESC) a GROUP BY a.ins_product_id) b + on b.ins_product_id=ip.id + left JOIN `user` u on u.id=b.create_user + WHERE (ip.ins_result=0 OR ip.state=0) + <if test="inspectionItems != null and inspectionItems != ''"> + and inspection_item like concat('%', #{inspectionItems}, '%') + </if> + <if test="orderNumber != null and orderNumber != ''"> + and io.entrust_code like concat('%', #{orderNumber}, '%') + </if> + </select> + + <select id="getCount" resultType="long"> + select count(1) + from ( + SELECT io.entrust_code,sam.sample,ip.inspection_item,u.name,b.create_time, sam.id + from ins_order io + left JOIN ins_sample sam on io.id=sam.ins_order_id + LEFT JOIN ins_product ip on ip.ins_sample_id=sam.id + LEFT JOIN + (SELECT create_time,create_user,ins_product_id FROM (select * FROM ins_product_user ORDER BY ins_product_user.create_time DESC) a GROUP BY a.ins_product_id) b + on b.ins_product_id=ip.id + left JOIN `user` u on u.id=b.create_user + where (ip.ins_result=0 OR ip.state=0) + <if test="inspectionItems != null and inspectionItems != ''"> + and inspection_item like concat('%', #{inspectionItems}, '%') + </if> + <if test="orderNumber != null and orderNumber != ''"> + and io.entrust_code like concat('%', #{orderNumber}, '%') + </if> + ) temp + </select> </mapper> -- Gitblit v1.9.3