From 9e8f7a8a1a84c56b1f4d18655231c7b98fae6c1f Mon Sep 17 00:00:00 2001
From: wangwh <2397901735@qq.com>
Date: Sun, 08 Sep 2024 09:28:43 +0800
Subject: [PATCH] 1、首页统计部分代码 2、unfo表加字段、修改办理详情 3、督办模板相关接口
---
dyh-service/dyh-sys/src/main/resources/config/application-prod.yml | 9
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/FrontPageCountDTO.java | 39 +
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java | 24 +
dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/domain/po/ModeSupervise.java | 120 +++++
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseSuperviseMapper.java | 10
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfoUnfold.java | 12
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java | 13
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseSuperviseMapper.xml | 12
dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/dao/mapper/xml/ModeSuperviseMapper.xml | 251 +++++++++++
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoUnfoldWebController.java | 14
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java | 1
dyh-service/dyh-sys/src/main/resources/config/application-test.yml | 9
dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/controller/web/ModeSuperviseWebController.java | 293 +++++++++++++
dyh-service/dyh-sys/src/main/resources/config/application-dev.yml | 9
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoUnfoldService.java | 12
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseTaskMapper.java | 7
dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/domain/bo/ModeSuperviseBO.java | 17
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseSuperviseService.java | 11
dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java | 4
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/TransactResultDTO.java | 8
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoUnfoldMapper.xml | 24 +
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseTaskMapper.xml | 20
dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/service/ModeSuperviseService.java | 217 ++++++++++
dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/dao/mapper/ModeSuperviseMapper.java | 84 ++++
24 files changed, 1,208 insertions(+), 12 deletions(-)
diff --git a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java
index c681d15..aaab12c 100644
--- a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java
+++ b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java
@@ -333,7 +333,7 @@
unitSelectTerm.setValue(ctUnit.getId());
unitSelectTerm.setLabel(ctUnit.getUnitName());
unitSelectTerm.setParentId(ctUnit.getParentId());
- unitSelectTerm.setCheckable(false);
+ unitSelectTerm.setCheckable(true);
List<SelectTermDTO> deptSelectTerms = new ArrayList<>();
for(CtDept ctDept : ctDeptList){
if(ctUnit.getId().equals(ctDept.getUnitId())){
@@ -341,7 +341,7 @@
deptSelectTerm.setValue(ctDept.getId());
deptSelectTerm.setLabel(ctDept.getName());
deptSelectTerm.setParentId(ctDept.getParentId());
- deptSelectTerm.setCheckable(false);
+ deptSelectTerm.setCheckable(true);
deptSelectTerms.add(deptSelectTerm);
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoUnfoldWebController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoUnfoldWebController.java
index 07ce60b..e181220 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoUnfoldWebController.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoUnfoldWebController.java
@@ -268,6 +268,20 @@
terms.put("updateStart", updateStart);
terms.put("updateEnd", updateEnd);
}
+ // 更新时间区间
+ String acceptTimeStart = request.getParameter("acceptTimeStart");
+ String acceptTimeEnd = request.getParameter("acceptTimeEnd");
+ if(StringUtils.isNotBlank(acceptTimeStart) && StringUtils.isNotBlank(acceptTimeEnd)) {
+ terms.put("acceptTimeStart", acceptTimeStart);
+ terms.put("acceptTimeEnd", acceptTimeEnd);
+ }
+ // 更新时间区间
+ String closeTimeStart = request.getParameter("closeTimeStart");
+ String closeTimeEnd = request.getParameter("closeTimeEnd");
+ if(StringUtils.isNotBlank(closeTimeStart) && StringUtils.isNotBlank(closeTimeEnd)) {
+ terms.put("closeTimeStart", closeTimeStart);
+ terms.put("closeTimeEnd", closeTimeEnd);
+ }
return terms;
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java
index daf365e..086f454 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java
@@ -231,4 +231,17 @@
}
}
+ /**
+ * web端-查询流程进度
+ * @url {ctx}/api/web/caseTask/getCountList
+ * @return Object
+ */
+ @GetMapping("/getCountList")
+ public Object getCountList(@CurrentUser String userId) {
+ try {
+ return ReturnSucUtils.getRepInfo(service.getCountList(userId));
+ } catch (Exception e) {
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseSuperviseMapper.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseSuperviseMapper.java
index 9e71c75..da14e53 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseSuperviseMapper.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseSuperviseMapper.java
@@ -64,10 +64,9 @@
/**
* 按条件查询实体总数
* @param caseId 查询条件集合
- * @param page 分页对象
* @param caseId 事项ID
*/
- long countCaseSupervise(@Param("caseId") String caseId, @Param("page") PageRequest page, @Param("supStatus") int supStatus, @Param("quiltUnitId") String quiltUnitId);
+ long countCaseSupervise(@Param("caseId") String caseId, @Param("supStatus") int supStatus, @Param("quiltUnitId") String quiltUnitId);
/**
* 根据事项ID分页查询
@@ -77,5 +76,10 @@
*/
List<CaseSupervise> pageCaseSupervise(@Param("caseId") String caseId, @Param("page") PageRequest page, @Param("supStatus") int supStatus, @Param("quiltUnitId") String quiltUnitId);
-
+ /**
+ * 首页-督办数量
+ * @param supStatus 回复状态
+ * @param quiltUnitId 被督办组织编号
+ */
+ long countCaseSuperviseList( @Param("supStatus") int supStatus, @Param("quiltUnitId") String quiltUnitId);
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseTaskMapper.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseTaskMapper.java
index 19cf927..8fbaf4c 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseTaskMapper.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseTaskMapper.java
@@ -1,5 +1,6 @@
package cn.huge.module.cases.dao.mapper;
+import cn.huge.module.cases.domain.dto.FrontPageCountDTO;
import cn.huge.module.cases.domain.po.CaseTask;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
@@ -61,4 +62,10 @@
*/
List<CaseTask> pageTerms(@Param("page") PageRequest page, @Param("terms") Map<String, Object> terms);
+ /**
+ * 按条件查询实体总数
+ * @param terms 查询条件集合
+ * @return long
+ */
+ FrontPageCountDTO countTaskList(@Param("terms") Map<String, Object> terms);
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoUnfoldMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoUnfoldMapper.xml
index 2890856..3323de9 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoUnfoldMapper.xml
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoUnfoldMapper.xml
@@ -55,6 +55,8 @@
<result property="custId" column="cust_id"/>
<result property="createTime" column="create_time"/>
<result property="updateTime" column="update_time"/>
+ <result property="acceptTime" column="accept_time"/>
+ <result property="closeTime" column="close_time"/>
</resultMap>
<!-- 表 -->
<sql id='table-name'>dyh_case_info_unfold</sql>
@@ -103,7 +105,9 @@
party_joy,
cust_id,
create_time,
- update_time
+ update_time,
+ accept_time,
+ close_time
</sql>
<!-- 更新实体字段 -->
<sql id="set-part">
@@ -149,7 +153,9 @@
<if test="entity.partyJoy != null">party_joy = #{entity.partyJoy},</if>
<if test="entity.custId != null">cust_id = #{entity.custId},</if>
<if test="entity.createTime != null">create_time = #{entity.createTime},</if>
- <if test="entity.updateTime != null">update_time = #{entity.updateTime}</if>
+ <if test="entity.updateTime != null">update_time = #{entity.updateTime},</if>
+ <if test="entity.acceptTime != null">accept_time = #{entity.acceptTime},</if>
+ <if test="entity.closeTime != null">close_time = #{entity.closeTime},</if>
</sql>
<!-- 条件 -->
<sql id="where-part">
@@ -295,6 +301,20 @@
and (DATE_FORMAT(update_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.updateStart}
and DATE_FORMAT(update_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.updateEnd})
</if>
+ <if test="terms.acceptTime != null and terms.acceptTime !=''">
+ and DATE_FORMAT(accept_time,'%Y-%m-%d') = #{terms.acceptTime}
+ </if>
+ <if test="terms.acceptTimeStart != null and terms.acceptTimeStart !='' and terms.acceptTimeEnd != null and terms.acceptTimeEnd !=''">
+ and (DATE_FORMAT(accept_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.acceptTimeStart}
+ and DATE_FORMAT(accept_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.acceptTimeEnd})
+ </if>
+ <if test="terms.closeTime != null and terms.closeTime !=''">
+ and DATE_FORMAT(close_time,'%Y-%m-%d') = #{terms.closeTime}
+ </if>
+ <if test="terms.closeTimeStart != null and terms.closeTimeStart !='' and terms.closeTimeEnd != null and terms.closeTimeEnd !=''">
+ and (DATE_FORMAT(close_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.closeTimeStart}
+ and DATE_FORMAT(close_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.closeTimeEnd})
+ </if>
</where>
</if>
</sql>
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseSuperviseMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseSuperviseMapper.xml
index 4c633d9..57334d3 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseSuperviseMapper.xml
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseSuperviseMapper.xml
@@ -240,4 +240,16 @@
</if>
limit #{page.offset}, #{page.size}
</select>
+
+ <!-- 根据条件统计 -->
+ <select id="countCaseSuperviseList" resultType="java.lang.Long">
+ select
+ COUNT(1)
+ from
+ <include refid="table-name" />
+ where
+ delete_status = '0'
+ and sup_status = #{supStatus}
+ and quilt_unit_id = #{quiltUnitId}
+ </select>
</mapper>
\ No newline at end of file
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseTaskMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseTaskMapper.xml
index 73cfc8e..a4ccf2c 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseTaskMapper.xml
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseTaskMapper.xml
@@ -319,4 +319,24 @@
limit #{page.offset}, #{page.size}
</select>
+ <!-- 结果集-->
+ <resultMap id="FrontPageCountResult" type="cn.huge.module.cases.domain.dto.FrontPageCountDTO">
+ <result property="waitSign" column="waitSign"/>
+ <result property="waitAccept" column="waitAccept"/>
+ <result property="waitAccept" column="waitAccept"/>
+ </resultMap>
+ <!-- 查询任务数量 -->
+ <select id="countTaskList" resultMap="FrontPageCountResult">
+ select
+ count(case when sign_status = 1 then id end) as waitSign,
+ count(case when node_id = then id end) as waitAccept,
+ count(case when node_id = then id end) as Processing
+ from
+ <include refid="table-name" />
+ where
+ cande_unit_id = #{terms.candeUnitId}
+ and (cande_dept_id = #{terms.candeDeptId} or cande_dept_id is null)
+ and delete_status = '0'
+ and status = '1'
+ </select>
</mapper>
\ No newline at end of file
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/FrontPageCountDTO.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/FrontPageCountDTO.java
new file mode 100644
index 0000000..47ceccf
--- /dev/null
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/FrontPageCountDTO.java
@@ -0,0 +1,39 @@
+package cn.huge.module.cases.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class FrontPageCountDTO {
+ /**
+ * 待分派
+ */
+ private Long waitDispatch;
+
+ /**
+ * 待签收
+ */
+ private Long waitSign;
+
+ /**
+ * 待受理
+ */
+ private Long waitAccept;
+
+ /**
+ * 办理中
+ */
+ private Long Processing;
+
+ /**
+ * 待审核
+ */
+ private Long waitReview;
+
+ /**
+ * 督办
+ */
+ private Long supervise;
+}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/TransactResultDTO.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/TransactResultDTO.java
index d430b33..3d09be6 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/TransactResultDTO.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/TransactResultDTO.java
@@ -1,8 +1,11 @@
package cn.huge.module.cases.domain.dto;
import cn.huge.module.cases.domain.po.CaseInfoUnfold;
+import cn.huge.module.sys.dto.FileInfoBaseDTO;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
+
+import java.util.List;
@Data
public class TransactResultDTO extends CaseInfoUnfold {
@@ -10,4 +13,9 @@
* 申请配合组织名称,多个用、隔开
*/
private String applyAssistUnitName;
+
+ /**
+ * 附件
+ */
+ private List<FileInfoBaseDTO> fileInfoBaseDTOList;
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfoUnfold.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfoUnfold.java
index 6247ae6..0efd46c 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfoUnfold.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfoUnfold.java
@@ -33,6 +33,12 @@
private String caseId;
/**
+ * 纠纷受理时间
+ */
+ @TableField(value = "accept_time")
+ private Date acceptTime;
+
+ /**
* 实际调解组织编号
*/
@TableField(value = "mediate_unit_id")
@@ -273,6 +279,12 @@
private String custId;
/**
+ * 案件办结时间
+ */
+ @TableField(value = "close_time")
+ private Date closeTime;
+
+ /**
* 创建时间
*/
@TableField(value = "create_time")
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java
index 0d5288d..6629ef2 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java
@@ -230,7 +230,6 @@
caseFeedback.setHandleUserId(loginUser.getId());
caseFeedback.setHandleUserName(loginUser.getTrueName());
Date nowDate = DateUtils.getNowDate();
- caseFeedback.setId(utilsClient.getNewTimeId());
caseFeedback.setUpdateTime(nowDate);
caseFeedback.setCreateTime(nowDate);
//todo 承办、配合--查询task
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoUnfoldService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoUnfoldService.java
index ef02010..5ce5c6d 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoUnfoldService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoUnfoldService.java
@@ -7,11 +7,13 @@
import cn.huge.module.cases.domain.po.CaseAssistApply;
import cn.huge.module.cases.domain.dto.TransactResultDTO;
import cn.huge.module.client.api.impl.CustClientImpl;
+import cn.huge.module.client.api.impl.SysClientImpl;
import cn.huge.module.client.api.impl.UtilsClientImpl;
import cn.huge.module.cases.dao.mapper.CaseInfoUnfoldMapper;
import cn.huge.module.cases.domain.po.CaseInfoUnfold;
import cn.huge.module.cust.dto.CtUserDTO;
import cn.huge.module.mediate.constant.CaseBaseConsts;
+import cn.huge.module.sys.dto.FileIdInfoBaseDTO;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.BeanUtils;
@@ -52,6 +54,9 @@
@Autowired
private CaseAssistApplyService assistApplyService;
+
+ @Autowired
+ private SysClientImpl sysClient;
/**
* 更新对象
@@ -183,6 +188,13 @@
transactResultDTO.setApplyAssistUnitName(caseAssistApply.getApplyAssistUnitName());
}
}
+ Map<String, Object> terms = new HashMap<>();
+ terms.put("mainId", caseId);
+ terms.put("ownerIds", "'"+caseId+"'");
+ List<FileIdInfoBaseDTO> fileIdInfoBaseDTOList = sysClient.listIdInfoByOwnerIdList(terms);
+ if(ObjectUtils.isNotEmpty(fileIdInfoBaseDTOList)){
+ transactResultDTO.setFileInfoBaseDTOList(fileIdInfoBaseDTOList.get(0).getFileList());
+ }
return transactResultDTO;
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseSuperviseService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseSuperviseService.java
index fbebe41..d7a2aa0 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseSuperviseService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseSuperviseService.java
@@ -194,7 +194,7 @@
try{
CtUserDTO loginUser = custClient.clientGetUserAll(userId);
String quiltUnitId = loginUser.getUnitId();
- long countSuperviseList = mapper.countCaseSupervise(caseId, page, supStatus, quiltUnitId);
+ long countSuperviseList = mapper.countCaseSupervise(caseId, supStatus, quiltUnitId);
List<CaseSupervise> caseSuperviseList = mapper.pageCaseSupervise(caseId, page, supStatus, quiltUnitId);
Map<String, Object>map = new HashMap<>();
@@ -216,4 +216,13 @@
}
}
+ /**
+ * 查询督办数量
+ * @param supStatus 回复状态
+ * @param quiltUnitId 被督办组织编号
+ * @return long
+ */
+ public long countCaseSuperviseList(Integer supStatus, String quiltUnitId){
+ return mapper.countCaseSuperviseList(supStatus, quiltUnitId);
+ }
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
index 6d85073..3e92f05 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
@@ -6,9 +6,11 @@
import cn.huge.module.cases.domain.dto.CaseFlowDTO;
import cn.huge.module.cases.domain.dto.TabButtonDTO;
import cn.huge.module.cases.domain.dto.TabButtonInfoDTO;
+import cn.huge.module.client.api.impl.CustClientImpl;
import cn.huge.module.client.api.impl.UtilsClientImpl;
import cn.huge.module.cases.dao.mapper.CaseTaskMapper;
import cn.huge.module.cases.domain.po.CaseTask;
+import cn.huge.module.cust.dto.CtUserDTO;
import cn.huge.module.mediate.constant.CaseBaseConsts;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.common.collect.Maps;
@@ -42,6 +44,12 @@
@Autowired
private UtilsClientImpl utilsClient;
+
+ @Autowired
+ private CustClientImpl custClient;
+
+ @Autowired
+ private CaseSuperviseService superviseService;
/**
* 更新对象
@@ -332,4 +340,20 @@
}
}
+ /**
+ * 按条件统计
+ * @param userId 用户编号
+ * @return long
+ */
+ public Map<String, Long> getCountList(String userId){
+ CtUserDTO loginUser = custClient.clientGetUserAll(userId);
+ Map<String, Object> terms = new HashMap<>();
+ terms.put("candeUnitId", loginUser.getUnitId());
+ terms.put("candeDeptId", loginUser.getDeptId());
+ mapper.countTaskList(terms);
+ superviseService.countCaseSuperviseList(0,loginUser.getUnitId());
+ Map<String, Long> result = new HashMap<>();
+ return result;
+ }
+
}
diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/controller/web/ModeSuperviseWebController.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/controller/web/ModeSuperviseWebController.java
new file mode 100644
index 0000000..a18e7e4
--- /dev/null
+++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/controller/web/ModeSuperviseWebController.java
@@ -0,0 +1,293 @@
+package cn.huge.module.mode.controller.web;
+
+import cn.huge.base.common.utils.ReturnFailUtils;
+import cn.huge.base.common.utils.ReturnSucUtils;
+import cn.huge.base.config.CurrentUser;
+import cn.huge.module.client.api.impl.CustClientImpl;
+import cn.huge.module.cust.dto.CtUserDTO;
+import cn.huge.module.mode.domain.po.ModeSupervise;
+import cn.huge.module.mode.service.ModeSuperviseService;
+import com.google.common.collect.Maps;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.PageRequest;
+import org.springframework.data.domain.Sort;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.Map;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
+
+/**
+ * @title: 督办模板表接口api-web端
+ * @description: 督办模板表接口api-web端
+ * @company: hugeinfo
+ * @author: wangwh
+ * @time: 2024-09-07 10:31:33
+ * @version: 1.0.0
+ */
+@Slf4j
+@RestController
+@RequestMapping("/api/web/modeSupervise")
+public class ModeSuperviseWebController {
+
+ @Autowired(required = false)
+ private HttpServletRequest request;
+
+ @Autowired
+ private ModeSuperviseService service;
+
+ @Autowired
+ private CustClientImpl custClient;
+
+ /**
+ * 获取请求URL参数
+ * @return Map<String, Object>
+ */
+ private Map<String, Object> getParameter(){
+ Map<String, Object> terms = Maps.newHashMap();
+ // 主键编号
+ String id = request.getParameter("id");
+ if (StringUtils.isNotBlank(id)){
+ terms.put("id", id);
+ }
+ // 模板类型,1:系统模板,2:自定义模板
+ String modeType = request.getParameter("modeType");
+ if (StringUtils.isNotBlank(modeType)){
+ terms.put("modeType", modeType);
+ }
+ // 模板内容
+ String modeContent = request.getParameter("modeContent");
+ if (StringUtils.isNotBlank(modeContent)){
+ terms.put("modeContent", modeContent);
+ }
+ // 模板所属人编号
+ String modeUserId = request.getParameter("modeUserId");
+ if (StringUtils.isNotBlank(modeUserId)){
+ terms.put("modeUserId", modeUserId);
+ }
+ // 模板所属人名称
+ String modeUserName = request.getParameter("modeUserName");
+ if (StringUtils.isNotBlank(modeUserName)){
+ terms.put("modeUserName", modeUserName);
+ }
+ // 模板所属单位编号
+ String modeUnitId = request.getParameter("modeUnitId");
+ if (StringUtils.isNotBlank(modeUnitId)){
+ terms.put("modeUnitId", modeUnitId);
+ }
+ // 模板所属单位名称
+ String modeUnitName = request.getParameter("modeUnitName");
+ if (StringUtils.isNotBlank(modeUnitName)){
+ terms.put("modeUnitName", modeUnitName);
+ }
+ // 模板状态,0:启用,1:禁用
+ String modeStatus = request.getParameter("modeStatus");
+ if (StringUtils.isNotBlank(modeStatus)){
+ terms.put("modeStatus", modeStatus);
+ }
+ // 模板展示顺序
+ String modeIndex = request.getParameter("modeIndex");
+ if (StringUtils.isNotBlank(modeIndex)){
+ terms.put("modeIndex", modeIndex);
+ }
+ // 操作人编号
+ String operUserId = request.getParameter("operUserId");
+ if (StringUtils.isNotBlank(operUserId)){
+ terms.put("operUserId", operUserId);
+ }
+ // 操作人名称
+ String operUserName = request.getParameter("operUserName");
+ if (StringUtils.isNotBlank(operUserName)){
+ terms.put("operUserName", operUserName);
+ }
+ // 使用次数
+ String useNum = request.getParameter("useNum");
+ if (StringUtils.isNotBlank(useNum)){
+ terms.put("useNum", useNum);
+ }
+ // 删除状态,0:未删除,1:已删除
+ String deleteStatus = request.getParameter("deleteStatus");
+ if (StringUtils.isNotBlank(deleteStatus)){
+ terms.put("deleteStatus", deleteStatus);
+ }
+ // 顾客编号
+ String custId = request.getParameter("custId");
+ if (StringUtils.isNotBlank(custId)){
+ terms.put("custId", custId);
+ }
+ // 创建时间区间
+ String createStart = request.getParameter("createStart");
+ String createEnd = request.getParameter("createEnd");
+ if(StringUtils.isNotBlank(createStart) && StringUtils.isNotBlank(createEnd)) {
+ terms.put("createStart", createStart);
+ terms.put("createEnd", createEnd);
+ }
+ // 更新时间区间
+ String updateStart = request.getParameter("updateStart");
+ String updateEnd = request.getParameter("updateEnd");
+ if(StringUtils.isNotBlank(updateStart) && StringUtils.isNotBlank(updateEnd)) {
+ terms.put("updateStart", updateStart);
+ terms.put("updateEnd", updateEnd);
+ }
+ return terms;
+ }
+
+ /**
+ * 条件查询多个
+ * @url {ctx}/api/web/modeSupervise/listQuery
+ * @return Object
+ */
+ @GetMapping("/listQuery")
+ public Object listQuery() {
+ try {
+ Map<String, Object> terms = getParameter();
+ return ReturnSucUtils.getRepInfo(service.listTerms(terms));
+ } catch (Exception e) {
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
+
+ /**
+ * 条件分页查询
+ * @url {ctx}/api/web/modeSupervise/pageQuery
+ * @param page 页码
+ * @param size 每页数量
+ * @return Object
+ */
+ @GetMapping("/pageQuery")
+ public Object pageQuery(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size) {
+ try {
+ Map<String, Object> terms = getParameter();
+ Sort sort = Sort.by(Sort.Direction.DESC, "create_time");
+ PageRequest pageRequest = PageRequest.of(page-1, size, sort);
+ Page<ModeSupervise> modeSupervisePage = service.pageQuery(pageRequest, terms);
+ return ReturnSucUtils.getRepInfo( "处理成功", modeSupervisePage);
+ } catch (Exception e) {
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
+
+ /**
+ * 根据编号查询单个
+ * @url {ctx}/api/web/modeSupervise/getById
+ * @param id 主键编号
+ * @return Object
+ */
+ @GetMapping("/getById")
+ public Object getById(@RequestParam(value = "id") String id) {
+ try {
+ return ReturnSucUtils.getRepInfo(service.getById(id));
+ } catch (Exception e) {
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
+
+ /**
+ * 根据主键单个
+ * @url {ctx}/api/web/modeSupervise/deleteById
+ * @param id 主键编号
+ * @return Object
+ */
+ @GetMapping("/deleteById")
+ public Object deleteById(@RequestParam(value = "id") String id) {
+ try {
+ service.removeById(id);
+ return ReturnSucUtils.getRepInfo();
+ } catch (Exception e) {
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
+
+ /**
+ * 新增或更新对象
+ * @url {ctx}/api/web/modeSupervise/saveModeSupervise
+ * @param modeSupervise 实体对象
+ * @return Object
+ */
+ @PostMapping("/saveModeSupervise")
+ public Object saveModeSupervise(@RequestBody ModeSupervise modeSupervise) {
+ try {
+ service.saveModeSupervise(modeSupervise);
+ return ReturnSucUtils.getRepInfo();
+ } catch (Exception e) {
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
+
+ /**
+ * 条件分页查询
+ * @url {ctx}/api/web/modeSupervise/pageModeSupervise
+ * @param page 页码
+ * @param size 每页数量
+ * @return Object
+ */
+ @GetMapping("/pageModeSupervise")
+ public Object pageModeSupervise(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size,
+ @CurrentUser String userId) {
+ try {
+ CtUserDTO loginUser = custClient.clientGetUserAll(userId);
+ Map<String, Object> terms = getParameter();
+ terms.put("modeUserId", loginUser.getId());
+ terms.put("modeUnitId", loginUser.getUnitId());
+ Sort sort = Sort.by(Sort.Direction.DESC, "create_time");
+ PageRequest pageRequest = PageRequest.of(page-1, size, sort);
+ Page<ModeSupervise> modeSupervisePage = service.pageModeSupervise(pageRequest, terms);
+ return ReturnSucUtils.getRepInfo( "处理成功", modeSupervisePage);
+ } catch (Exception e) {
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
+
+ /**
+ * 修改状态
+ * @url {ctx}/api/web/modeSupervise/updateModeStatus
+ * @param id 模板编号
+ * @return Object
+ */
+ @PostMapping("/updateModeStatus")
+ public Object updateModeStatus(@RequestParam(value = "id") String id, @RequestParam(value = "modeStatus") Integer modeStatus,
+ @CurrentUser String userId) {
+ try {
+ service.updateModeStatus(id, modeStatus, userId);
+ return ReturnSucUtils.getRepInfo();
+ } catch (Exception e) {
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
+
+ /**
+ * 使用次数增加
+ * @url {ctx}/api/web/modeSupervise/addUseNum
+ * @param id 模板编号
+ * @return Object
+ */
+ @PostMapping("/addUseNum")
+ public Object addUseNum(@RequestParam(value = "id") String id) {
+ try {
+ service.addUseNum(id);
+ return ReturnSucUtils.getRepInfo();
+ } catch (Exception e) {
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
+
+ /**
+ * 新增督办模板
+ * @url {ctx}/api/web/modeSupervise/addModeSupervise
+ * @param modeSupervise 实体对象
+ * @return Object
+ */
+ @PostMapping("/addModeSupervise")
+ public Object addModeSupervise(@RequestBody ModeSupervise modeSupervise, @CurrentUser String userId) {
+ try {
+ service.addModeSupervise(modeSupervise, userId);
+ return ReturnSucUtils.getRepInfo();
+ } catch (Exception e) {
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
+}
diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/dao/mapper/ModeSuperviseMapper.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/dao/mapper/ModeSuperviseMapper.java
new file mode 100644
index 0000000..ee3eaae
--- /dev/null
+++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/dao/mapper/ModeSuperviseMapper.java
@@ -0,0 +1,84 @@
+package cn.huge.module.mode.dao.mapper;
+
+import cn.huge.module.mode.domain.po.ModeSupervise;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.data.domain.PageRequest;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+* @title: 督办模板表持久层业务处理
+* @Description 此处仅涉及复杂SQL操作,务必不要在此再次写单表的CRUD操作,因为mybatisPlus已经实现。
+* @company: hugeinfo
+* @author: wangwh
+* @time: 2024-09-07 10:31:33
+* @version 1.0.0
+*/
+@Repository
+public interface ModeSuperviseMapper extends BaseMapper<ModeSupervise>{
+
+ /**
+ * 更新对象
+ * @param entity 对象
+ */
+ void updateModeSupervise(@Param("entity") ModeSupervise entity);
+
+ /**
+ * 条件更新对象
+ * @param entity 对象
+ * @param terms 条件
+ */
+ void updateModeSuperviseTerms(@Param("entity") ModeSupervise entity, @Param("terms") Map<String, Object> terms);
+
+ /**
+ * 根据编号物理删除
+ * @param id 查询条件集合
+ */
+ void deleteModeSupervise(@Param("id") String id);
+
+ /**
+ * 按条件查询结果集
+ * @param terms 查询条件集合
+ * @return List<ModeSupervise>
+ */
+ List<ModeSupervise> listTerms(@Param("terms") Map<String, Object> terms);
+
+ /**
+ * 按条件查询实体总数
+ * @param terms 查询条件集合
+ * @return long
+ */
+ long countTerms(@Param("terms") Map<String, Object> terms);
+
+ /**
+ * 按条件查询实体分页结果集
+ * @param page 分页对象
+ * @param terms 查询条件集合
+ * @return List<ModeSupervise>
+ */
+ List<ModeSupervise> pageTerms(@Param("page") PageRequest page, @Param("terms") Map<String, Object> terms);
+
+ /**
+ * 按条件查询实体总数
+ * @param terms 查询条件集合
+ * @return long
+ */
+ long countModeSupervise(@Param("terms") Map<String, Object> terms);
+
+ /**
+ * 按条件查询实体分页结果集
+ * @param page 分页对象
+ * @param terms 查询条件集合
+ * @return List<ModeSupervise>
+ */
+ List<ModeSupervise> pageModeSupervise(@Param("page") PageRequest page, @Param("terms") Map<String, Object> terms);
+
+ /**
+ * 使用次数增加
+ * @param id 查询条件集合
+ */
+ void addUseNum(@Param("id") String id);
+}
diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/dao/mapper/xml/ModeSuperviseMapper.xml b/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/dao/mapper/xml/ModeSuperviseMapper.xml
new file mode 100644
index 0000000..5354c6d
--- /dev/null
+++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/dao/mapper/xml/ModeSuperviseMapper.xml
@@ -0,0 +1,251 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<!--
+ * @title: 督办模板表
+ * @description: 自定义sql,请自行实现业务逻辑
+ * @company: hugeinfo
+ * @author: wangwh
+ * @time:2024-09-07 10:31:33
+ * @version 1.0.0
+-->
+<mapper namespace="cn.huge.module.mode.dao.mapper.ModeSuperviseMapper">
+ <!-- 结果集 -->
+ <resultMap id="dataResult" type="cn.huge.module.mode.domain.po.ModeSupervise">
+ <result property="id" column="id"/>
+ <result property="modeType" column="mode_type"/>
+ <result property="modeContent" column="mode_content"/>
+ <result property="modeUserId" column="mode_user_id"/>
+ <result property="modeUserName" column="mode_user_name"/>
+ <result property="modeUnitId" column="mode_unit_id"/>
+ <result property="modeUnitName" column="mode_unit_name"/>
+ <result property="modeStatus" column="mode_status"/>
+ <result property="modeIndex" column="mode_index"/>
+ <result property="operUserId" column="oper_user_id"/>
+ <result property="operUserName" column="oper_user_name"/>
+ <result property="useNum" column="use_num"/>
+ <result property="deleteStatus" column="delete_status"/>
+ <result property="custId" column="cust_id"/>
+ <result property="createTime" column="create_time"/>
+ <result property="updateTime" column="update_time"/>
+ </resultMap>
+ <!-- 表 -->
+ <sql id='table-name'>dyh_mode_supervise</sql>
+ <!-- 字段 -->
+ <sql id="column-part">
+ id,
+ mode_type,
+ mode_content,
+ mode_user_id,
+ mode_user_name,
+ mode_unit_id,
+ mode_unit_name,
+ mode_status,
+ mode_index,
+ oper_user_id,
+ oper_user_name,
+ use_num,
+ delete_status,
+ cust_id,
+ create_time,
+ update_time
+ </sql>
+ <!-- 更新实体字段 -->
+ <sql id="set-part">
+ <if test="entity.modeType != null">mode_type = #{entity.modeType},</if>
+ <if test="entity.modeContent != null">mode_content = #{entity.modeContent},</if>
+ <if test="entity.modeUserId != null">mode_user_id = #{entity.modeUserId},</if>
+ <if test="entity.modeUserName != null">mode_user_name = #{entity.modeUserName},</if>
+ <if test="entity.modeUnitId != null">mode_unit_id = #{entity.modeUnitId},</if>
+ <if test="entity.modeUnitName != null">mode_unit_name = #{entity.modeUnitName},</if>
+ <if test="entity.modeStatus != null">mode_status = #{entity.modeStatus},</if>
+ <if test="entity.modeIndex != null">mode_index = #{entity.modeIndex},</if>
+ <if test="entity.operUserId != null">oper_user_id = #{entity.operUserId},</if>
+ <if test="entity.operUserName != null">oper_user_name = #{entity.operUserName},</if>
+ <if test="entity.useNum != null">use_num = #{entity.useNum},</if>
+ <if test="entity.deleteStatus != null">delete_status = #{entity.deleteStatus},</if>
+ <if test="entity.custId != null">cust_id = #{entity.custId},</if>
+ <if test="entity.createTime != null">create_time = #{entity.createTime},</if>
+ <if test="entity.updateTime != null">update_time = #{entity.updateTime}</if>
+ </sql>
+ <!-- 条件 -->
+ <sql id="where-part">
+ <if test="terms != null">
+ <where>
+ <if test="terms.id != null and terms.id !=''">
+ and id = #{terms.id}
+ </if>
+ <if test="terms.modeType != null and terms.modeType !=''">
+ and mode_type = #{terms.modeType}
+ </if>
+ <if test="terms.modeContent != null and terms.modeContent !=''">
+ and mode_content = #{terms.modeContent}
+ </if>
+ <if test="terms.modeUserId != null and terms.modeUserId !=''">
+ and mode_user_id = #{terms.modeUserId}
+ </if>
+ <if test="terms.modeUserName != null and terms.modeUserName !=''">
+ and mode_user_name = #{terms.modeUserName}
+ </if>
+ <if test="terms.modeUnitId != null and terms.modeUnitId !=''">
+ and mode_unit_id = #{terms.modeUnitId}
+ </if>
+ <if test="terms.modeUnitName != null and terms.modeUnitName !=''">
+ and mode_unit_name = #{terms.modeUnitName}
+ </if>
+ <if test="terms.modeStatus != null and terms.modeStatus !=''">
+ and mode_status = #{terms.modeStatus}
+ </if>
+ <if test="terms.modeIndex != null and terms.modeIndex !=''">
+ and mode_index = #{terms.modeIndex}
+ </if>
+ <if test="terms.operUserId != null and terms.operUserId !=''">
+ and oper_user_id = #{terms.operUserId}
+ </if>
+ <if test="terms.operUserName != null and terms.operUserName !=''">
+ and oper_user_name = #{terms.operUserName}
+ </if>
+ <if test="terms.useNum != null and terms.useNum !=''">
+ and use_num = #{terms.useNum}
+ </if>
+ <if test="terms.deleteStatus = null and terms.deleteStatus =''">
+ and delete_status = 0
+ </if>
+ <if test="terms.deleteStatus != null and terms.deleteStatus !=''">
+ and delete_status = #{terms.deleteStatus}
+ </if>
+ <if test="terms.custId != null and terms.custId !=''">
+ and cust_id = #{terms.custId}
+ </if>
+ <if test="terms.createTime != null and terms.createTime !=''">
+ and DATE_FORMAT(create_time,'%Y-%m-%d') = #{terms.createTime}
+ </if>
+ <if test="terms.createStart != null and terms.createStart !='' and terms.createEnd != null and terms.createEnd !=''">
+ and (DATE_FORMAT(create_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.createStart}
+ and DATE_FORMAT(create_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.createEnd})
+ </if>
+ <if test="terms.updateTime != null and terms.updateTime !=''">
+ and DATE_FORMAT(update_time,'%Y-%m-%d') = #{terms.updateTime}
+ </if>
+ <if test="terms.updateStart != null and terms.updateStart !='' and terms.updateEnd != null and terms.updateEnd !=''">
+ and (DATE_FORMAT(update_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.updateStart}
+ and DATE_FORMAT(update_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.updateEnd})
+ </if>
+ </where>
+ </if>
+ </sql>
+ <!-- 更新对象 -->
+ <update id="updateModeSupervise">
+ update
+ <include refid="table-name"/>
+ <set>
+ <include refid="set-part"/>
+ </set>
+ <where>
+ id = #{entity.id}
+ </where>
+ </update>
+ <!-- 条件更新对象 -->
+ <update id="updateModeSuperviseTerms">
+ update
+ <include refid="table-name"/>
+ <set>
+ <include refid="set-part"/>
+ </set>
+ <include refid="where-part"/>
+ </update>
+ <!-- 根据编号物理删除 -->
+ <delete id="deleteModeSupervise">
+ delete from
+ <include refid="table-name" />
+ where id = #{id}
+ </delete>
+ <!-- 根据条件查询 -->
+ <select id="listTerms" resultMap="dataResult">
+ select
+ <include refid="column-part"/>
+ from
+ <include refid="table-name" />
+ <include refid="where-part"/>
+ </select>
+ <!-- 根据条件统计 -->
+ <select id="countTerms" resultType="java.lang.Long">
+ select
+ COUNT(1)
+ from
+ <include refid="table-name" />
+ <include refid="where-part"/>
+ </select>
+ <!-- 根据条件分页查询 -->
+ <select id="pageTerms" resultMap="dataResult">
+ SELECT
+ <include refid="column-part"/>
+ FROM
+ <include refid="table-name" />
+ <include refid="where-part"/>
+ <if test="page.sort != null">
+ <foreach collection="page.sort" item="s" index="index" separator="," open="order by ">
+ isnull(${s.property}), ${s.property} ${s.direction}
+ </foreach>
+ </if>
+ <if test="page.sort == null">
+ order by isnull(create_time), create_time desc
+ </if>
+ limit #{page.offset}, #{page.size}
+ </select>
+
+ <!-- 根据条件统计 -->
+ <select id="countModeSupervise" resultType="java.lang.Long">
+ select
+ COUNT(1)
+ from
+ <include refid="table-name" />
+ where
+ modeStatus = '0'
+ and deleteStatus = '0'
+ and (modeType = '1'
+ or
+ (modeType = '2'
+ <if test="terms.modeUserId != null and terms.modeUserId !=''">
+ and mode_user_id = #{terms.modeUserId}
+ </if>
+ <if test="terms.modeUnitId != null and terms.modeUnitId !=''">
+ and mode_unit_id = #{terms.modeUnitId}
+ </if>)
+ </select>
+
+ <!-- 根据条件分页查询 -->
+ <select id="pageModeSupervise" resultMap="dataResult">
+ SELECT
+ <include refid="column-part"/>
+ FROM
+ <include refid="table-name" />
+ where
+ modeStatus = '0'
+ and deleteStatus = '0'
+ and (modeType = '1'
+ or
+ (modeType = '2'
+ <if test="terms.modeUserId != null and terms.modeUserId !=''">
+ and mode_user_id = #{terms.modeUserId}
+ </if>
+ <if test="terms.modeUnitId != null and terms.modeUnitId !=''">
+ and mode_unit_id = #{terms.modeUnitId}
+ </if>)
+
+ <if test="page.sort != null">
+ <foreach collection="page.sort" item="s" index="index" separator="," open="order by ">
+ isnull(${s.property}), ${s.property} ${s.direction}
+ </foreach>
+ </if>
+ <if test="page.sort == null">
+ order by isnull(create_time), create_time desc
+ </if>
+ limit #{page.offset}, #{page.size}
+ </select>
+
+ <!-- 增加使用次数 -->
+ <delete id="addUseNum">
+ update dyh_mode_supervise set use_num = use_num+1
+ where id = #{id}
+ </delete>
+</mapper>
\ No newline at end of file
diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/domain/bo/ModeSuperviseBO.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/domain/bo/ModeSuperviseBO.java
new file mode 100644
index 0000000..a335cba
--- /dev/null
+++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/domain/bo/ModeSuperviseBO.java
@@ -0,0 +1,17 @@
+package cn.huge.module.mode.domain.bo;
+
+import cn.huge.module.mode.domain.po.ModeSupervise;
+
+/**
+ * @title: 督办模板表业务扩展类
+ * @description: 督办模板表业务扩展类
+ * @company: hugeinfo
+ * @author: wangwh
+ * @time: 2024-09-07 10:31:33
+ * @version: 1.0.0
+ * @see cn.huge.module.mode.domain.po.ModeSupervise
+ */
+public class ModeSuperviseBO extends ModeSupervise {
+
+
+}
diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/domain/po/ModeSupervise.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/domain/po/ModeSupervise.java
new file mode 100644
index 0000000..cf3ab99
--- /dev/null
+++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/domain/po/ModeSupervise.java
@@ -0,0 +1,120 @@
+package cn.huge.module.mode.domain.po;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @title: 督办模板表数据库对应关系类
+ * @description: PO中的属性与数据表是一一对应关系,如需根据业务处理不同,请使用BO对象。
+ * @company:hugeinfo
+ * @author: wangwh
+ * @time: 2024-09-07 10:31:33
+ * @version 1.0.0
+ */
+@TableName(value = "dyh_mode_supervise")
+@Data
+public class ModeSupervise {
+
+ /**
+ * 主键编号
+ */
+ @TableId(value = "id")
+ private String id;
+
+ /**
+ * 模板类型,1:系统模板,2:自定义模板
+ */
+ @TableField(value = "mode_type")
+ private Integer modeType;
+
+ /**
+ * 模板内容
+ */
+ @TableField(value = "mode_content")
+ private String modeContent;
+
+ /**
+ * 模板所属人编号
+ */
+ @TableField(value = "mode_user_id")
+ private String modeUserId;
+
+ /**
+ * 模板所属人名称
+ */
+ @TableField(value = "mode_user_name")
+ private String modeUserName;
+
+ /**
+ * 模板所属单位编号
+ */
+ @TableField(value = "mode_unit_id")
+ private String modeUnitId;
+
+ /**
+ * 模板所属单位名称
+ */
+ @TableField(value = "mode_unit_name")
+ private String modeUnitName;
+
+ /**
+ * 模板状态,0:启用,1:禁用
+ */
+ @TableField(value = "mode_status")
+ private Integer modeStatus;
+
+ /**
+ * 模板展示顺序
+ */
+ @TableField(value = "mode_index")
+ private Integer modeIndex;
+
+ /**
+ * 操作人编号
+ */
+ @TableField(value = "oper_user_id")
+ private String operUserId;
+
+ /**
+ * 操作人名称
+ */
+ @TableField(value = "oper_user_name")
+ private String operUserName;
+
+ /**
+ * 使用次数
+ */
+ @TableField(value = "use_num")
+ private Integer useNum;
+
+ /**
+ * 删除状态,0:未删除,1:已删除
+ */
+ @TableLogic
+ @TableField(value = "delete_status")
+ private Integer deleteStatus;
+
+ /**
+ * 顾客编号
+ */
+ @TableField(value = "cust_id")
+ private String custId;
+
+ /**
+ * 创建时间
+ */
+ @TableField(value = "create_time")
+ private Date createTime;
+
+ /**
+ * 更新时间
+ */
+ @TableField(value = "update_time")
+ private Date updateTime;
+
+}
diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/service/ModeSuperviseService.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/service/ModeSuperviseService.java
new file mode 100644
index 0000000..5c045aa
--- /dev/null
+++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/service/ModeSuperviseService.java
@@ -0,0 +1,217 @@
+package cn.huge.module.mode.service;
+
+import cn.huge.base.common.exception.ServiceException;
+import cn.huge.base.common.utils.DateUtils;
+import cn.huge.base.common.utils.IdUtils;
+import cn.huge.module.client.api.impl.CustClientImpl;
+import cn.huge.module.client.api.impl.UtilsClientImpl;
+import cn.huge.module.cust.dto.CtUserDTO;
+import cn.huge.module.mode.dao.mapper.ModeSuperviseMapper;
+import cn.huge.module.mode.domain.po.ModeSupervise;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.PageImpl;
+import org.springframework.data.domain.PageRequest;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.annotation.PostConstruct;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @title: 督办模板表业务逻辑处理
+ * @Description 督办模板表业务逻辑处理
+ * @company hugeinfo
+ * @author wangwh
+ * @Time 2024-09-07 10:31:33
+ * @version 1.0.0
+ */
+@Slf4j
+@Service
+@Transactional(rollbackFor = Exception.class)
+public class ModeSuperviseService extends ServiceImpl<ModeSuperviseMapper, ModeSupervise>{
+
+ @Autowired
+ private ModeSuperviseMapper mapper;
+
+ @Autowired
+ private UtilsClientImpl utilsClient;
+
+ @Autowired
+ private CustClientImpl custClient;
+
+ /**
+ * 更新对象
+ * @param entity 对象
+ */
+ public void updateModeSupervise(ModeSupervise entity){
+ try{
+ mapper.updateModeSupervise(entity);
+ }catch (Exception e){
+ log.error("[ModeSuperviseService.updateModeSupervise]调用失败,异常信息:"+e, e);
+ throw new ServiceException("ModeSuperviseService.updateModeSupervise", e);
+ }
+ }
+
+ /**
+ * 条件更新对象
+ * @param entity 对象
+ * @param terms 条件
+ */
+ public void updateModeSuperviseTerms(ModeSupervise entity, Map<String, Object> terms){
+ try{
+ mapper.updateModeSuperviseTerms(entity, terms);
+ }catch (Exception e){
+ log.error("[ModeSuperviseService.updateModeSuperviseTerms]调用失败,异常信息:"+e, e);
+ throw new ServiceException("ModeSuperviseService.updateModeSuperviseTerms", e);
+ }
+ }
+
+ /**
+ * 根据编号物理删除
+ * @param id 查询条件集合
+ */
+ public void deleteModeSupervise(String id){
+ try{
+ mapper.deleteModeSupervise(id);
+ }catch (Exception e){
+ log.error("[ModeSuperviseService.deleteModeSupervise]调用失败,异常信息:"+e, e);
+ throw new ServiceException("ModeSuperviseService.deleteModeSupervise", e);
+ }
+ }
+
+ /**
+ * 按条件查询
+ * @param terms 条件
+ * @return List
+ */
+ public List<ModeSupervise> listTerms(Map<String, Object> terms){
+ return mapper.listTerms(terms);
+ }
+
+ /**
+ * 按条件统计
+ * @param terms 条件
+ * @return long
+ */
+ public long countTerms(Map<String, Object> terms){
+ return mapper.countTerms(terms);
+ }
+
+ /**
+ * 按条件分页查询
+ * @param page 分页对象
+ * @param terms 条件
+ * @return Page
+ */
+ public Page<ModeSupervise> pageQuery(PageRequest page, Map<String, Object> terms){
+ long total = mapper.countTerms(terms);
+ List<ModeSupervise> content = mapper.pageTerms(page, terms);
+ return new PageImpl<ModeSupervise>(content, page, total);
+ }
+
+ /**
+ * 新增或更新对象
+ * @param modeSupervise 实体对象
+ */
+ public void saveModeSupervise(ModeSupervise modeSupervise){
+ try{
+ Date nowDate = DateUtils.getNowDate();
+ // 判断是否新增
+ if (IdUtils.checkNewId(modeSupervise.getId())){
+ modeSupervise.setId(utilsClient.getNewTimeId());
+ modeSupervise.setCreateTime(nowDate);
+ }
+ modeSupervise.setUpdateTime(nowDate);
+ this.saveOrUpdate(modeSupervise);
+ }catch (Exception e){
+ log.error("[ModeSuperviseService.saveModeSupervise]调用失败,异常信息:"+e, e);
+ throw new ServiceException("ModeSuperviseService.saveModeSupervise", e);
+ }
+ }
+
+ /**
+ * 按条件分页查询
+ * @param page 分页对象
+ * @param terms 条件
+ * @return Page
+ */
+ public Page<ModeSupervise> pageModeSupervise(PageRequest page, Map<String, Object> terms){
+ long total = mapper.countModeSupervise(terms);
+ List<ModeSupervise> content = mapper.pageModeSupervise(page, terms);
+ return new PageImpl<ModeSupervise>(content, page, total);
+ }
+
+ /**
+ * 修改状态
+ * @param id 模板编号
+ * @param modeStatus 状态
+ */
+ public void updateModeStatus(String id, Integer modeStatus, String userId){
+ try{
+ Date nowDate = DateUtils.getNowDate();
+ CtUserDTO loginUser = custClient.clientGetUserAll(userId);
+ ModeSupervise modeSupervise = new ModeSupervise();
+ modeSupervise.setId(id);
+ modeSupervise.setModeStatus(modeStatus);
+ modeSupervise.setOperUserId(loginUser.getId());
+ modeSupervise.setOperUserName(loginUser.getTrueName());
+ modeSupervise.setUpdateTime(nowDate);
+ Map<String, Object> terms = new HashMap<>();
+ terms.put("modeType", 2);
+ mapper.updateModeSuperviseTerms(modeSupervise, terms);
+ }catch (Exception e){
+ log.error("[ModeSuperviseService.saveModeSupervise]调用失败,异常信息:"+e, e);
+ throw new ServiceException("ModeSuperviseService.saveModeSupervise", e);
+ }
+ }
+
+ /**
+ * 修改状态
+ * @param modeSupervise 模板信息
+ * @param userId 用户编号
+ */
+ public void addModeSupervise(ModeSupervise modeSupervise, String userId){
+ try{
+ Date nowDate = DateUtils.getNowDate();
+ CtUserDTO loginUser = custClient.clientGetUserAll(userId);
+ modeSupervise.setId(IdUtils.getNewTimeId());
+ //默认添加所属人和组织为当前用户
+ modeSupervise.setModeUserId(loginUser.getId());
+ modeSupervise.setModeUserName(loginUser.getTrueName());
+ modeSupervise.setModeUnitId(loginUser.getUnitId());
+ modeSupervise.setModeUnitName(loginUser.getUnitName());
+ modeSupervise.setModeStatus(0);
+ modeSupervise.setUseNum(0);
+ modeSupervise.setOperUserId(loginUser.getId());
+ modeSupervise.setOperUserName(loginUser.getTrueName());
+ modeSupervise.setDeleteStatus(0);
+ modeSupervise.setUpdateTime(nowDate);
+ modeSupervise.setCreateTime(nowDate);
+ //todo 模板展示顺序
+ mapper.insert(modeSupervise);
+ }catch (Exception e){
+ log.error("[ModeSuperviseService.addModeSupervise]调用失败,异常信息:"+e, e);
+ throw new ServiceException("ModeSuperviseService.addModeSupervise", e);
+ }
+ }
+
+ /**
+ * 使用次数增加
+ * @param id 模板编号
+ */
+ public void addUseNum(String id){
+ try{
+ mapper.addUseNum(id);
+ }catch (Exception e){
+ log.error("[ModeSuperviseService.saveModeSupervise]调用失败,异常信息:"+e, e);
+ throw new ServiceException("ModeSuperviseService.saveModeSupervise", e);
+ }
+ }
+}
diff --git a/dyh-service/dyh-sys/src/main/resources/config/application-dev.yml b/dyh-service/dyh-sys/src/main/resources/config/application-dev.yml
index 89abc93..28ca250 100644
--- a/dyh-service/dyh-sys/src/main/resources/config/application-dev.yml
+++ b/dyh-service/dyh-sys/src/main/resources/config/application-dev.yml
@@ -106,4 +106,11 @@
#密码
password: hugeinfo123
#附件存储根目录
- rootdir: /home/ftp/gzdyh
\ No newline at end of file
+ rootdir: /home/ftp/gzdyh
+
+#科大讯飞配置
+xfyun:
+ host_url: https://iat-api.xfyun.cn/v2/iat
+ appid: 5c7b00be
+ api_secret: MGM5Mjg2ODQzYWZmNGE2YjlhOGZlMTJj
+ api_key: 9e0a80ed995daf5b194f06ca336080c1
\ No newline at end of file
diff --git a/dyh-service/dyh-sys/src/main/resources/config/application-prod.yml b/dyh-service/dyh-sys/src/main/resources/config/application-prod.yml
index 5465a0e..4a13e04 100644
--- a/dyh-service/dyh-sys/src/main/resources/config/application-prod.yml
+++ b/dyh-service/dyh-sys/src/main/resources/config/application-prod.yml
@@ -93,4 +93,11 @@
servlet:
context-path: /
ssl:
- enabled: false
\ No newline at end of file
+ enabled: false
+
+#科大讯飞配置
+xfyun:
+ host_url: https://iat-api.xfyun.cn/v2/iat
+ appid: 5c7b00be
+ api_secret: MGM5Mjg2ODQzYWZmNGE2YjlhOGZlMTJj
+ api_key: 9e0a80ed995daf5b194f06ca336080c1
\ No newline at end of file
diff --git a/dyh-service/dyh-sys/src/main/resources/config/application-test.yml b/dyh-service/dyh-sys/src/main/resources/config/application-test.yml
index 5465a0e..4a13e04 100644
--- a/dyh-service/dyh-sys/src/main/resources/config/application-test.yml
+++ b/dyh-service/dyh-sys/src/main/resources/config/application-test.yml
@@ -93,4 +93,11 @@
servlet:
context-path: /
ssl:
- enabled: false
\ No newline at end of file
+ enabled: false
+
+#科大讯飞配置
+xfyun:
+ host_url: https://iat-api.xfyun.cn/v2/iat
+ appid: 5c7b00be
+ api_secret: MGM5Mjg2ODQzYWZmNGE2YjlhOGZlMTJj
+ api_key: 9e0a80ed995daf5b194f06ca336080c1
\ No newline at end of file
--
Gitblit v1.8.0