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