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); } 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; } 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(); } } } 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); } 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); } 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> 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> 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> dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/FrontPageCountDTO.java
New file @@ -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; } 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; } 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") 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 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; } 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); } } 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; } } dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/controller/web/ModeSuperviseWebController.java
New file @@ -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(); } } } dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/dao/mapper/ModeSuperviseMapper.java
New file @@ -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); } dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/dao/mapper/xml/ModeSuperviseMapper.xml
New file @@ -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> dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/domain/bo/ModeSuperviseBO.java
New file @@ -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 { } dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/domain/po/ModeSupervise.java
New file @@ -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; } dyh-service/dyh-sys/src/main/java/cn/huge/module/mode/service/ModeSuperviseService.java
New file @@ -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); } } } dyh-service/dyh-sys/src/main/resources/config/application-dev.yml
@@ -106,4 +106,11 @@ #密码 password: hugeinfo123 #附件存储根目录 rootdir: /home/ftp/gzdyh rootdir: /home/ftp/gzdyh #科大讯飞配置 xfyun: host_url: https://iat-api.xfyun.cn/v2/iat appid: 5c7b00be api_secret: MGM5Mjg2ODQzYWZmNGE2YjlhOGZlMTJj api_key: 9e0a80ed995daf5b194f06ca336080c1 dyh-service/dyh-sys/src/main/resources/config/application-prod.yml
@@ -93,4 +93,11 @@ servlet: context-path: / ssl: enabled: false enabled: false #科大讯飞配置 xfyun: host_url: https://iat-api.xfyun.cn/v2/iat appid: 5c7b00be api_secret: MGM5Mjg2ODQzYWZmNGE2YjlhOGZlMTJj api_key: 9e0a80ed995daf5b194f06ca336080c1 dyh-service/dyh-sys/src/main/resources/config/application-test.yml
@@ -93,4 +93,11 @@ servlet: context-path: / ssl: enabled: false enabled: false #科大讯飞配置 xfyun: host_url: https://iat-api.xfyun.cn/v2/iat appid: 5c7b00be api_secret: MGM5Mjg2ODQzYWZmNGE2YjlhOGZlMTJj api_key: 9e0a80ed995daf5b194f06ca336080c1