From 23ea9d4b546819f4b888e029daf29c93f11e2a74 Mon Sep 17 00:00:00 2001 From: Crunchy <3114200645@qq.com> Date: 星期日, 26 五月 2024 23:55:44 +0800 Subject: [PATCH] 2024-5-23 小需求调整 --- inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanTaskSwitchVo.java | 36 ++++++++++++ inspect-server/src/main/java/com/yuanchu/mom/mapper/InsSampleMapper.java | 3 + inspect-server/src/main/resources/mapper/InsSampleMapper.xml | 42 ++++++++++++++ framework/src/main/java/com/yuanchu/mom/service/InformationNotificationService.java | 4 + framework/src/main/java/com/yuanchu/mom/service/impl/InformationNotificationServiceImpl.java | 25 ++++++++ inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java | 15 +++++ framework/src/main/java/com/yuanchu/mom/controller/InformationNotificationController.java | 10 +++ inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java | 11 +++ user-server/src/main/java/com/yuanchu/mom/dto/Custom.java | 5 + inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderPlanService.java | 4 10 files changed, 153 insertions(+), 2 deletions(-) diff --git a/framework/src/main/java/com/yuanchu/mom/controller/InformationNotificationController.java b/framework/src/main/java/com/yuanchu/mom/controller/InformationNotificationController.java index 704967a..78158f3 100644 --- a/framework/src/main/java/com/yuanchu/mom/controller/InformationNotificationController.java +++ b/framework/src/main/java/com/yuanchu/mom/controller/InformationNotificationController.java @@ -10,6 +10,8 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.util.Map; + /** * <p> * 娑堟伅閫氱煡 鍓嶇鎺у埗鍣� @@ -71,4 +73,12 @@ informationNotificationService.triggerModificationStatusToRead(id); return Result.success(); } + + @ApiOperation(value = "娑堟伅閫氱煡-鑾峰彇棣栭〉鍥涚娑堟伅鏁伴噺") + @GetMapping("getNumberFourTypesMessagesHomePage") + @ValueAuth + public Result<?> getNumberFourTypesMessagesHomePage() { + Map<String, Object> data = informationNotificationService.getNumberFourTypesMessagesHomePage(); + return Result.success(data); + } } diff --git a/framework/src/main/java/com/yuanchu/mom/service/InformationNotificationService.java b/framework/src/main/java/com/yuanchu/mom/service/InformationNotificationService.java index 1d13fe7..9614fb6 100644 --- a/framework/src/main/java/com/yuanchu/mom/service/InformationNotificationService.java +++ b/framework/src/main/java/com/yuanchu/mom/service/InformationNotificationService.java @@ -6,6 +6,8 @@ import com.yuanchu.mom.pojo.InformationNotification; import com.yuanchu.mom.pojo.InformationNotificationDto; +import java.util.Map; + /** * <p> * 娑堟伅閫氱煡 鏈嶅姟绫� @@ -25,4 +27,6 @@ void triggerModificationStatusToRead(Integer id); int addInformationNotification(InformationNotification informationNotification); + + Map<String, Object> getNumberFourTypesMessagesHomePage(); } diff --git a/framework/src/main/java/com/yuanchu/mom/service/impl/InformationNotificationServiceImpl.java b/framework/src/main/java/com/yuanchu/mom/service/impl/InformationNotificationServiceImpl.java index 68ba7ef..39c53a4 100644 --- a/framework/src/main/java/com/yuanchu/mom/service/impl/InformationNotificationServiceImpl.java +++ b/framework/src/main/java/com/yuanchu/mom/service/impl/InformationNotificationServiceImpl.java @@ -12,6 +12,8 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.time.LocalDate; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -76,4 +78,27 @@ public int addInformationNotification(InformationNotification informationNotification) { return baseMapper.insert(informationNotification); } + + @Override + public Map<String, Object> getNumberFourTypesMessagesHomePage() { + Map<String, Integer> map1 = null; + Map<String, Object> map = new HashMap<>(); + map1 = getLook.selectPowerByMethodAndUserId("selectInsOrderParameter"); + Long totalNumberOfMessages = baseMapper.selectCount(Wrappers.<InformationNotification>lambdaQuery() + .eq(InformationNotification::getConsigneeId, map1.get("userId"))); + Long totalNumberOfReadMessages = baseMapper.selectCount(Wrappers.<InformationNotification>lambdaQuery() + .eq(InformationNotification::getConsigneeId, map1.get("userId")) + .eq(InformationNotification::getViewStatus, true)); + LocalDate today = LocalDate.now(); + LocalDate sevenDaysAgo = today.minusDays(7); + Long totalNumberOfMessagesInThePastSevenDays = baseMapper.selectCount(Wrappers.<InformationNotification>lambdaQuery() + .eq(InformationNotification::getConsigneeId, map1.get("userId")) + .between(InformationNotification::getCreateTime, today, sevenDaysAgo)); + long remainingToDo = totalNumberOfMessages - totalNumberOfReadMessages; + map.put("totalNumberOfMessages", totalNumberOfMessages); + map.put("remainingToDo", remainingToDo); + map.put("totalNumberOfReadMessages", totalNumberOfReadMessages); + map.put("totalNumberOfMessagesInThePastSevenDays", totalNumberOfMessagesInThePastSevenDays); + return map; + } } diff --git a/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java b/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java index 18c32af..56df2da 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java @@ -38,6 +38,17 @@ InsOrderPlanDTO insOrderPlanDTO = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), InsOrderPlanDTO.class); return Result.success(insOrderPlanService.selectInsOrderPlanList(page, insOrderPlanDTO)); } + + @ValueClassify("妫�楠屼换鍔�") + @ApiOperation(value = "妫�楠屽崟璇︽儏-浠诲姟鍒囨崲") + @PostMapping("/inspectionOrderDetailsTaskSwitching") + public Result inspectionOrderDetailsTaskSwitching(@RequestBody Map<String, Object> data) throws Exception { + Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class); + page.setOptimizeCountSql(false); + InsOrderPlanDTO insOrderPlanDTO = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), InsOrderPlanDTO.class); + return Result.success(insOrderPlanService.inspectionOrderDetailsTaskSwitching(page, insOrderPlanDTO)); + } + @ValueClassify("妫�楠屼换鍔�") @ApiOperation(value = "璁ら浠诲姟璁″垝") @PostMapping("/claimInsOrderPlan") 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 88d97ae..7bff8d3 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 @@ -7,6 +7,7 @@ import com.yuanchu.mom.dto.InsOrderPlanDTO; import com.yuanchu.mom.dto.SampleProductDto; import com.yuanchu.mom.pojo.InsSample; +import com.yuanchu.mom.vo.InsOrderPlanTaskSwitchVo; import com.yuanchu.mom.vo.InsOrderPlanVO; import java.util.List; @@ -21,6 +22,8 @@ IPage<InsOrderPlanVO> findInsSampleAndOrder(Page page, QueryWrapper<InsOrderPlanDTO> ew, Integer userId); + IPage<InsOrderPlanTaskSwitchVo> inspectionOrderDetailsTaskSwitching(Page page, QueryWrapper<InsOrderPlanDTO> ew, Integer userId); + List<SampleProductDto> selectSampleProductListByOrderId(Integer id); List<SampleProductDto> getInsOrderAndSample(Integer id, String laboratory); diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderPlanService.java b/inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderPlanService.java index 83282ad..bf1f1e5 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderPlanService.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderPlanService.java @@ -2,8 +2,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.dto.InsOrderPlanDTO; -import com.yuanchu.mom.pojo.InsOrder; -import com.yuanchu.mom.pojo.InsSample; import java.util.Map; @@ -13,6 +11,8 @@ public interface InsOrderPlanService { Map<String,Object> selectInsOrderPlanList(Page page, InsOrderPlanDTO insOrderPlanDTO); + Map<String,Object> inspectionOrderDetailsTaskSwitching(Page page, InsOrderPlanDTO insOrderPlanDTO); + boolean claimInsOrderPlan(InsOrderPlanDTO entity); void saveInsContext(Map<String, Object> insContext); 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 78ec60d..2952551 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 @@ -33,6 +33,7 @@ import com.yuanchu.mom.utils.JackSonUtil; import com.yuanchu.mom.utils.MatrixToImageWriter; import com.yuanchu.mom.utils.QueryWrappers; +import com.yuanchu.mom.vo.InsOrderPlanTaskSwitchVo; import com.yuanchu.mom.vo.InsOrderPlanVO; import org.apache.commons.io.IOUtils; import org.apache.poi.xwpf.usermodel.*; @@ -114,6 +115,20 @@ } @Override + public Map<String, Object> inspectionOrderDetailsTaskSwitching(Page page, InsOrderPlanDTO insOrderPlanDTO) { + Map<String, Object> map = new HashMap<>(); + map.put("head", PrintChina.printChina(InsOrderPlanTaskSwitchVo.class)); + Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId(null); + Integer userId = map1.get("userId"); + if (ObjectUtil.isNotEmpty(insOrderPlanDTO.getUserId())) { + insOrderPlanDTO.setUserId(userId.longValue()); + } + IPage<InsOrderPlanTaskSwitchVo> insOrderPage = insSampleMapper.inspectionOrderDetailsTaskSwitching(page, QueryWrappers.queryWrappers(insOrderPlanDTO), userId); + map.put("body", insOrderPage); + return map; + } + + @Override public boolean claimInsOrderPlan(InsOrderPlanDTO entity) { if (Objects.isNull(entity)) { return false; diff --git a/inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanTaskSwitchVo.java b/inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanTaskSwitchVo.java new file mode 100644 index 0000000..d317a85 --- /dev/null +++ b/inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanTaskSwitchVo.java @@ -0,0 +1,36 @@ +package com.yuanchu.mom.vo; + +import com.yuanchu.mom.annotation.ValueTableShow; +import com.yuanchu.mom.common.OrderBy; +import lombok.Data; + +@Data +public class InsOrderPlanTaskSwitchVo extends OrderBy { + private String id; + + @ValueTableShow(value = 1,name = "濮旀墭缂栧彿") + private String entrustCode; + + @ValueTableShow(value = 2,name = "妫�楠屽璞�") + private String sampleType; + + @ValueTableShow(value = 4,name = "绱ф�ョ▼搴�") + private String type; + + @ValueTableShow(value = 5,name = "鐘舵��") + private String insState; + + @ValueTableShow(value = 6,name = "绾﹀畾鏃堕棿") + private String appointed; + + @ValueTableShow(value = 7,name = "涓嬪彂鏃堕棿") + private String sendTime; + + private Integer userId; + + private String sonLaboratory; + + private Integer orderUserId; + + private Integer verifyUser; +} diff --git a/inspect-server/src/main/resources/mapper/InsSampleMapper.xml b/inspect-server/src/main/resources/mapper/InsSampleMapper.xml index 141741a..2596699 100644 --- a/inspect-server/src/main/resources/mapper/InsSampleMapper.xml +++ b/inspect-server/src/main/resources/mapper/InsSampleMapper.xml @@ -67,6 +67,48 @@ </if> </select> + <select id="inspectionOrderDetailsTaskSwitching" resultType="com.yuanchu.mom.vo.InsOrderPlanTaskSwitchVo"> + select * from( + SELECT + a.*,ios.ins_state,ios.verify_tell,isu2.order_user_id,(ios.verify_user = #{userId}) verify_user + FROM + ( + SELECT + io.id, + io.entrust_code, + io.type, + io.appointed, + io.send_time, + io.sample_type, + isu.user_id, + ip.son_laboratory, + io.ins_time + FROM + ins_order io + LEFT JOIN ins_sample isa ON isa.ins_order_id = io.id + LEFT JOIN ( SELECT * FROM ins_sample_user GROUP BY ins_sample_id, user_id ) isu ON isu.ins_sample_id = io.id + LEFT JOIN ins_product ip ON ip.ins_sample_id = isa.id + WHERE + io.state = 1 + # AND io.ins_state != 5 + and send_time is not null + and (isu.user_id = #{userId} OR isu.user_id is NULL) + GROUP BY + ip.son_laboratory, + io.id + ) a + LEFT JOIN ins_order_state ios ON ios.ins_order_id = a.id AND ios.laboratory = a.son_laboratory + left join (SELECT td.user_id order_user_id, td.ins_sample_id FROM ins_sample_user td,(SELECT max(id) id FROM ins_sample_user GROUP BY ins_sample_id) md where td.id = md.id and user_id = #{userId}) isu2 on isu2.ins_sample_id = a.id + ORDER BY + a.user_id DESC, + a.type DESC, + a.id + ) b + <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> + ${ew.customSqlSegment} + </if> + </select> + <select id="selectSampleProductListByOrderId" resultMap="sampleDto"> select isa.*, ip.id ip_id, diff --git a/user-server/src/main/java/com/yuanchu/mom/dto/Custom.java b/user-server/src/main/java/com/yuanchu/mom/dto/Custom.java index cfece7c..5a82e45 100644 --- a/user-server/src/main/java/com/yuanchu/mom/dto/Custom.java +++ b/user-server/src/main/java/com/yuanchu/mom/dto/Custom.java @@ -84,4 +84,9 @@ private Integer isCustom; + @ApiModelProperty(value = "鑻辨枃瀹㈡埛鍗曚綅") + private String companyEn; + + @ApiModelProperty(value = "鑻辨枃鍗曚綅鍦板潃") + private String addressEn; } -- Gitblit v1.9.3