From 4500116a9a66351ff38d9a331e5c805a0ac3a153 Mon Sep 17 00:00:00 2001
From: zhouxiantao <1026371446@qq.com>
Date: Wed, 11 Sep 2024 10:24:23 +0800
Subject: [PATCH] 小程序登记,补状态
---
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java | 29 +++++
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/wechat/CaseInfoWechatController.java | 3
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/wechat/CaseEvaluateWechatController.java | 192 ++++++++++++++++++++++++++++++++++++++
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java | 49 +++++++--
4 files changed, 258 insertions(+), 15 deletions(-)
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/wechat/CaseEvaluateWechatController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/wechat/CaseEvaluateWechatController.java
new file mode 100644
index 0000000..8f0226c
--- /dev/null
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/wechat/CaseEvaluateWechatController.java
@@ -0,0 +1,192 @@
+package cn.huge.module.cases.controller.wechat;
+
+import cn.huge.base.common.utils.ReturnFailUtils;
+import cn.huge.base.common.utils.ReturnSucUtils;
+import cn.huge.base.config.CurrentUser;
+import cn.huge.module.cases.domain.po.CaseEvaluate;
+import cn.huge.module.cases.service.CaseEvaluateService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+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;
+
+/**
+ * @title: 当事人纠纷评价表接口api-web端
+ * @description: 当事人纠纷评价表接口api-web端
+ * @company: hugeinfo
+ * @author: wangwh
+ * @time: 2024-09-04 20:21:05
+ * @version: 1.0.0
+ */
+@Slf4j
+@RestController
+@RequestMapping("/api/webchat/caseEvaluate")
+public class CaseEvaluateWechatController {
+
+ @Autowired(required = false)
+ private HttpServletRequest request;
+
+ @Autowired
+ private CaseEvaluateService service;
+
+ /**
+ * 获取请求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);
+ }
+ // 纠纷编号
+ String caseId = request.getParameter("caseId");
+ if (StringUtils.isNotBlank(caseId)){
+ terms.put("caseId", caseId);
+ }
+ // 评价等级
+ String evaluateGrade = request.getParameter("evaluateGrade");
+ if (StringUtils.isNotBlank(evaluateGrade)){
+ terms.put("evaluateGrade", evaluateGrade);
+ }
+ // 选择评语,多个用,隔开
+ String evaluateRemark = request.getParameter("evaluateRemark");
+ if (StringUtils.isNotBlank(evaluateRemark)){
+ terms.put("evaluateRemark", evaluateRemark);
+ }
+ // 评价建议
+ String evaluateContent = request.getParameter("evaluateContent");
+ if (StringUtils.isNotBlank(evaluateContent)){
+ terms.put("evaluateContent", evaluateContent);
+ }
+ // 评价人编号
+ String evaluateUserId = request.getParameter("evaluateUserId");
+ if (StringUtils.isNotBlank(evaluateUserId)){
+ terms.put("evaluateUserId", evaluateUserId);
+ }
+ // 评价人名称
+ String evaluateUserName = request.getParameter("evaluateUserName");
+ if (StringUtils.isNotBlank(evaluateUserName)){
+ terms.put("evaluateUserName", evaluateUserName);
+ }
+ // 删除状态,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/caseEvaluate/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/caseEvaluate/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<CaseEvaluate> caseEvaluatePage = service.pageQuery(pageRequest, terms);
+ return ReturnSucUtils.getRepInfo( "处理成功", caseEvaluatePage);
+ } catch (Exception e) {
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
+
+ /**
+ * 根据编号查询单个
+ * @url {ctx}/api/web/caseEvaluate/getByCaseId
+ * @param caseId 事项ID
+ * @return Object
+ */
+ @GetMapping("/getByCaseId")
+ public Object getByCaseId(@RequestParam(value = "caseId") String caseId) {
+ try {
+ QueryWrapper<CaseEvaluate> caseEvaluateQueryWrapper = new QueryWrapper<>();
+ caseEvaluateQueryWrapper.eq("case_id", caseId).eq("delete_status", 0);
+ return ReturnSucUtils.getRepInfo(service.getOne(caseEvaluateQueryWrapper));
+ } catch (Exception e) {
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
+
+ /**
+ * 根据主键单个
+ * @url {ctx}/api/web/caseEvaluate/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/caseEvaluate/saveCaseEvaluate
+ * @param caseEvaluate 实体对象
+ * @return Object
+ */
+ @PostMapping("/saveCaseEvaluate")
+ public Object saveCaseEvaluate(@CurrentUser String userId, @RequestBody CaseEvaluate caseEvaluate) {
+ try {
+ service.saveCaseEvaluateWechat(caseEvaluate,userId);
+ return ReturnSucUtils.getRepInfo();
+ } catch (Exception e) {
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
+
+}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/wechat/CaseInfoWechatController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/wechat/CaseInfoWechatController.java
index 5d50a22..3477860 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/wechat/CaseInfoWechatController.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/wechat/CaseInfoWechatController.java
@@ -101,8 +101,9 @@
* @CurrentUser String userId,
*/
@PostMapping("/caseRegister")
- public Object caseRegister(@CurrentUser String userId, @RequestBody RegisterSaveDTO registerSaveDTO) {
+ public Object caseRegister( @RequestBody RegisterSaveDTO registerSaveDTO) {
try {
+ String userId ="2408301111391000";
Object caseRegister = GuavaCacheUtils.getCache("caseRegister"+userId);
if(ObjectUtils.isNotEmpty(caseRegister)){
log.info("caseRegister is exist {}",caseRegister);
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java
index f1086fd..6a0dc4b 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java
@@ -3,9 +3,11 @@
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.cases.dao.mapper.CaseEvaluateMapper;
import cn.huge.module.cases.domain.po.CaseEvaluate;
+import cn.huge.module.cust.dto.PaUserDTO;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -39,6 +41,9 @@
@Autowired
private UtilsClientImpl utilsClient;
+
+ @Autowired
+ private CustClientImpl custClient;
/**
* 更新对象
@@ -130,4 +135,28 @@
}
}
+ /**
+ * 新增或更新对象
+ * @param caseEvaluate 实体对象
+ */
+ public void saveCaseEvaluateWechat(CaseEvaluate caseEvaluate,String userId){
+ try{
+ PaUserDTO loginUser = custClient.paclientGetUser(userId);
+ Date nowDate = DateUtils.getNowDate();
+ // 判断是否新增
+ if (IdUtils.checkNewId(caseEvaluate.getId())){
+ caseEvaluate.setId(utilsClient.getNewTimeId());
+ caseEvaluate.setCreateTime(nowDate);
+ }
+ caseEvaluate.setEvaluateUserId(loginUser.getId());
+ caseEvaluate.setEvaluateUserName(loginUser.getTrueName());
+ caseEvaluate.setCustId(loginUser.getCustId());
+ caseEvaluate.setUpdateTime(nowDate);
+ this.saveOrUpdate(caseEvaluate);
+ }catch (Exception e){
+ log.error("[CaseEvaluateService.saveCaseEvaluateWechat]调用失败,异常信息:"+e, e);
+ throw new ServiceException("CaseEvaluateService.saveCaseEvaluateWechat", e);
+ }
+ }
+
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java
index 46f624f..8b66bf5 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java
@@ -14,8 +14,7 @@
import cn.huge.module.cases.domain.po.CaseInfo;
import cn.huge.module.constant.BaseConsts;
import cn.huge.module.cust.dto.PaUserDTO;
-import cn.huge.module.mediate.constant.CaseBaseConsts;
-import cn.huge.module.mediate.constant.CaseBaseConstsEnum;
+import cn.huge.module.mediate.constant.*;
import cn.huge.module.cust.dto.CtUserDTO;
import cn.huge.module.draft.service.CasedraftInfoService;
import cn.huge.module.mediate.constant.CaseProcessBaseConstsEnum;
@@ -533,10 +532,6 @@
Date nowDate = DateUtils.getNowDate();
registerSaveDTO.setUpdateTime(nowDate);
- StringBuffer plaintiffs = new StringBuffer();
- StringBuffer defendants = new StringBuffer();
- StringBuffer pagents = new StringBuffer();
- StringBuffer dagents = new StringBuffer();
CaseInfo caseInfo = new CaseInfo();
CaseInfoUnfold caseInfoUnfold = new CaseInfoUnfold();
@@ -561,6 +556,7 @@
}
//todo case_title生成
caseInfo.setCaseRef(utilsClient.createCaseRef());
+
// 为了演示先兼容小程序没属地问题,写死属地
if (ObjectUtils.isEmpty(caseInfo.getQueProv())) {
caseInfo.setQueProv("19");
@@ -587,12 +583,31 @@
caseInfoUnfold.setCreateTime(nowDate);
caseInfoUnfold.setUpdateTime(nowDate);
+ StringBuffer plaintiffs = new StringBuffer();
+ StringBuffer defendants = new StringBuffer();
+ StringBuffer pagents = new StringBuffer();
+ StringBuffer dagents = new StringBuffer();
// 常规登记-保存当事人
- this.saveCasePersonWechat(registerSaveDTO, plaintiffs, pagents, defendants, dagents,loginUser);
+ int peopleNum = this.saveCasePersonWechat(registerSaveDTO, plaintiffs, pagents, defendants, dagents,loginUser);
+ caseInfo.setVisitPeopleNum(peopleNum);
caseInfo.setPlaintiffs(plaintiffs.toString());
caseInfo.setPagents(pagents.toString());
caseInfo.setDefendants(defendants.toString());
caseInfo.setDagents(dagents.toString());
+
+ //todo case_title生成
+ caseInfo.setCaseTitle(this.createCaseTitle(plaintiffs.toString(), defendants.toString(), caseInfo.getCaseTypeName()));
+
+ caseInfo.setInfoProcess(CaseInfoProcessBaseConstsEnum.CASE_INFO_PROCESS_1.getIndex());
+ caseInfo.setInfoProcessName(CaseInfoProcessBaseConstsEnum.CASE_INFO_PROCESS_1.getDes());
+ caseInfo.setProcess(CaseProcessBaseConstsEnum.CASE_PROCESS_1.getIndex());
+ caseInfo.setProcessName(CaseProcessBaseConstsEnum.CASE_PROCESS_1.getDes());
+ caseInfo.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_1.getIndex());
+ caseInfo.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_1.getDes());
+ caseInfo.setCaseLevel(3);
+ caseInfo.setCanal(CaseBaseConstsEnum.CASE_CANAL_2.getIndex());
+ caseInfo.setCanalName(CaseBaseConstsEnum.CASE_CANAL_2.getDes());
+
this.saveOrUpdate(caseInfo);
// 启动工作流-自动调度流程
@@ -660,13 +675,13 @@
personService.saveOrUpdate(casePerson);
//添加申请方和被申请方人名组合
- if(CaseBaseConstsEnum.PERSON_TYPE_1.equals(casePerson.getPerType())){
+ if(CaseBaseConstsEnum.PERSON_TYPE_1.getIndex().equals(casePerson.getPerType())){
//申请方
if (StringUtils.isNotEmpty(plaintiffs.toString())) {
plaintiffs.append(BaseConsts.COMMA);
}
plaintiffs.append(casePerson.getTrueName());
- }else if(CaseBaseConstsEnum.PERSON_TYPE_2.equals(casePerson.getPerType())){
+ }else if(CaseBaseConstsEnum.PERSON_TYPE_2.getIndex().equals(casePerson.getPerType())){
//被申请方
if (StringUtils.isNotEmpty(defendants.toString())) {
defendants.append(BaseConsts.COMMA);
@@ -688,16 +703,22 @@
caseAgent.setCreateTime(registerSaveDTO.getUpdateTime());
caseAgent.setUpdateTime(registerSaveDTO.getUpdateTime());
agentService.saveOrUpdate(caseAgent);
-
- if (StringUtils.isNotEmpty(pagents.toString())) {
- pagents.append(BaseConsts.COMMA);
+ if(CaseBaseConstsEnum.PERSON_TYPE_3.getIndex().equals(caseAgent.getPerType())){
+ if (StringUtils.isNotEmpty(pagents.toString())) {
+ pagents.append(BaseConsts.COMMA);
+ }
+ pagents.append(caseAgent.getTrueName());
+ }else if(CaseBaseConstsEnum.PERSON_TYPE_4.getIndex().equals(caseAgent.getPerType())){
+ if (StringUtils.isNotEmpty(dagents.toString())) {
+ dagents.append(BaseConsts.COMMA);
+ }
+ dagents.append(caseAgent.getTrueName());
}
- pagents.append(caseAgent.getTrueName());
+
}
//todo 绑定当事人小程序
}
}
-
return peopleNum;
}
--
Gitblit v1.8.0