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