From f319da9fce782232b09d8587adb4c7e642f58204 Mon Sep 17 00:00:00 2001
From: lidongdong <1459917685@qq.com>
Date: 星期六, 15 十月 2022 16:39:28 +0800
Subject: [PATCH] 修改小程序获取不到用户信息 bug
---
flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java | 157 +++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 130 insertions(+), 27 deletions(-)
diff --git a/flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java b/flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java
index f5e725b..09503a3 100644
--- a/flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java
+++ b/flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java
@@ -1,21 +1,28 @@
package com.dg.core.controller;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
-import com.dg.core.db.gen.entity.GuideEvolveEntity;
-import com.dg.core.db.gen.entity.GuideRepairOrder;
-import com.dg.core.db.gen.entity.SysUser;
+import com.dg.core.db.gen.entity.*;
import com.dg.core.service.IGuideEvolveService;
import com.dg.core.service.IGuideRepairOrderService;
+import com.dg.core.service.IOrganizationChartService;
+import com.dg.core.util.SmsUtil;
+import com.dg.core.util.TableDataInfo;
+import com.dg.core.util.WxUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.Assert;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.time.LocalDateTime;
+import java.util.List;
/**
* 工单管理
@@ -31,6 +38,16 @@
@Autowired
private IGuideEvolveService iGuideEvolveService;
+ @Autowired
+ IOrganizationChartService iOrganizationChartService;
+
+ private static String guideRepairOrderCompleteTemplateId = "7ZCHHii87rWPwVkdhZnvNiYbYi_Buq0NXO10cmUhAFk";
+
+
+ @Resource
+ SmsUtil smsUtil;
+
+
/**
* 提交导办订单
* @return
@@ -41,7 +58,15 @@
public ResultData addOrder(@RequestBody GuideRepairOrder guideRepairOrder,@CurrentUser SysUser sysUser) {
guideRepairOrder.setSubmitUserId(sysUser.getUserId().toString());
guideRepairOrder.setSubmitUserPhone(sysUser.getPhonenumber());
- return toAjax(iGuideRepairOrderService.addOrder(guideRepairOrder));
+ guideRepairOrder.setSubmitUserPhone(sysUser.getPhonenumber());
+ guideRepairOrder.setSubmitType(2);
+ int i = iGuideRepairOrderService.addOrder(guideRepairOrder);
+ if (i>0){
+ iGuideEvolveService.updateGuid();
+ return ResultData.success();
+ }
+ else
+ return ResultData.error("提交失败,请检查你是否有相同的咨询内容在处理中");
}
@@ -94,10 +119,7 @@
return ResultData.error("导办人员id不能为空");
}
- if(StringUtils.isEmpty(order.getGuideUserPhone()))
- {
- return ResultData.error("导办人员电话不能为空");
- }
+
//已分配
order.setState("2");
@@ -111,6 +133,7 @@
entity.setToUserId(sysUser.getUserId()+"");
entity.setFromUserId(order.getGuideUserId());
entity.setFromDepartmentalId(order.getGuideDepartmentId());
+ entity.setGuideId(order.getId().toString());
iGuideEvolveService.insertConfig(entity);
@@ -143,11 +166,6 @@
return ResultData.error("导办人员id不能为空");
}
- if(StringUtils.isEmpty(order.getGuideUserPhone()))
- {
- return ResultData.error("导办人员电话不能为空");
- }
-
//已分配
order.setState("2");
@@ -156,10 +174,11 @@
entity.setCreateTime(LocalDateTime.now());
entity.setUpdateTime(LocalDateTime.now());
entity.setState("12");
- entity.setDepartmentalId(sysUser.getDepartmentId());
- entity.setToUserId(sysUser.getUserId()+"");
- entity.setFromUserId(order.getGuideUserId());
- entity.setFromDepartmentalId(order.getGuideDepartmentId());
+ entity.setDepartmentalId(order.getGuideDepartmentId());
+ entity.setToUserId(order.getGuideUserId());
+ entity.setFromUserId(sysUser.getUserId()+"");
+ entity.setFromDepartmentalId(sysUser.getDepartmentId());
+ entity.setGuideId(order.getId().toString());
iGuideEvolveService.insertConfig(entity);
@@ -198,19 +217,36 @@
{
return ResultData.error("该工单已办结!");
}
-
- if(!StringUtils.equals(order.getState(),"2"))
- {
- return ResultData.error("该工单非是待办状态!");
+ if(StringUtils.equals(entity.getState(),"2")){//如果用户选择未解决则状态改为待办
+ order.setState("2");
+ entity.setState("8");
}
- //待评价
- order.setState("4");
+ else if(StringUtils.equals(entity.getState(),"4")){
+ //待评价
+ if (order.getSubmitType().equals(1))//小程序提交
+ {
+ WxUtil wxUtil=new WxUtil();
+ String accessToken="0";
+ try {
+ accessToken= wxUtil.getBatteryCarAccessToken();
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ SysUser submitUser = iGuideRepairOrderService.getSubmitUser(order);
+ wxUtil.sendGuideRepairOrderComplete(submitUser.getOpenid(),accessToken,guideRepairOrderCompleteTemplateId,order);
+ }
+ else if (order.getSubmitType().equals(2)){
+ smsUtil.sendSmsComplete(order.getSubmitUserPhone(),order.getMatterName());
+ }
+ order.setState("4");
+ entity.setState("9");
+ }
//新增已办结记录
entity.setCreateTime(LocalDateTime.now());
entity.setUpdateTime(LocalDateTime.now());
- entity.setState("4");
entity.setFromDepartmentalId(sysUser.getDepartmentId());
entity.setFromUserId(sysUser.getUserId()+"");
+ entity.setGuideId(order.getId().toString());
iGuideEvolveService.insertConfig(entity);
return toAjax(iGuideRepairOrderService.updateConfig(order));
}
@@ -255,6 +291,7 @@
entity.setState("5");
entity.setFromDepartmentalId(sysUser.getDepartmentId());
entity.setFromUserId(sysUser.getUserId()+"");
+ entity.setGuideId(order.getId().toString());
iGuideEvolveService.insertConfig(entity);
return toAjax(iGuideRepairOrderService.updateConfig(order));
}
@@ -299,11 +336,77 @@
guideEvolveEntity.setState("3");
guideEvolveEntity.setFromDepartmentalId(sysUser.getDepartmentId());
guideEvolveEntity.setFromUserId(sysUser.getUserId()+"");
- iGuideEvolveService.insertConfig(guideEvolveEntity);
-
- return toAjax(iGuideRepairOrderService.updateConfig(entity));
+ guideEvolveEntity.setGuideId(entity.getId().toString());
+ int i = iGuideRepairOrderService.updateConfig(entity);
+ if (i>0)
+ return toAjax( iGuideEvolveService.insertConfig(guideEvolveEntity));
+ else
+ return ResultData.error();
}
+ /**
+ * 获取个人中心工单数据
+ * @param sysUser 当前登录人员信息
+ * @return
+ */
+ @ApiOperation(value = "获取个人中心工单数据",response = GuideRepairOrder.class)
+ @GetMapping("/personalCenter")
+ @Authorization
+ public ResultData selectBySubmitId(@CurrentUser SysUser sysUser){
+ return ResultData.success(iGuideRepairOrderService.selectBySubmitId(sysUser.getUserId().toString()));
+ }
+
+
+ /**
+ * 获取工单列表(分页)
+ * @param matterName
+ * @return
+ */
+ @ApiOperation(value = "获取工单列表(分页)",response = GuideRepairOrder.class)
+ @GetMapping("/getList")
+ @Authorization
+ public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
+ @RequestParam(value = "pageSize",required = false) Integer pageSize,
+ @RequestParam(value = "matterName",required = false) String matterName,
+ @CurrentUser SysUser sysUser)
+ {
+ Assert.notNull(pageNum, "pageNum 不能为空");
+ Assert.notNull(pageSize, "pageSize 不能为空");
+ Page<GuideRepairOrder> pageParam = new Page<>(pageNum,pageSize);
+
+ List<String> ids=iOrganizationChartService.getIds(sysUser.getDepartmentId());
+ List<GuideRepairOrder> list = iGuideRepairOrderService.selectConfigList(pageParam,pageSize,matterName,ids);
+ int num=iGuideRepairOrderService.countConfigList(matterName,ids);
+ return getDataTable(list,num);
+ }
+
+
+ @ApiOperation("导办工单统计不同状态工单数")
+ @GetMapping("/getWorkOrder")
+ @Authorization
+ public ResultData getWorkOrder(@CurrentUser SysUser sysUser)
+ {
+ WorkOrder workOrder=new WorkOrder();
+ List<String> ids=iOrganizationChartService.getIds(sysUser.getDepartmentId());
+ //状态(1待分配 2 待办结 3 已办结 4 待评价 5 已取消 8未解决 9已解决)
+ workOrder.setAllNum(iGuideRepairOrderService.countStatisticsNum("",ids,null,null,null,null));
+ workOrder.setWaitDistribution(iGuideRepairOrderService.countStatisticsNum("1",ids,null,null,null,null));
+ workOrder.setWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",ids,null,null,null,null));
+ workOrder.setHaveDealWith(iGuideRepairOrderService.countStatisticsNum("3",ids,null,null,null,null));
+ workOrder.setRemainEvaluated(iGuideRepairOrderService.countStatisticsNum("4",ids,null,null,null,null));
+ workOrder.setCanceled(iGuideRepairOrderService.countStatisticsNum("5",ids,null,null,null,null));
+ workOrder.setUnsolved(iGuideRepairOrderService.countStatisticsNum("6",ids,null,null,null,null));
+ workOrder.setResolved(iGuideRepairOrderService.countStatisticsNum("7",ids,null,null,null,null));
+
+
+ //是否超时 (1 未超时 2已超时) 超时未办结
+ workOrder.setOvertime(iGuideRepairOrderService.countStatisticsNum(null,ids,null,"2",null,null));
+ workOrder.setOvertimeWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",ids,null,"2",null,null));
+ return ResultData.success(workOrder);
+ }
+
+
+
}
--
Gitblit v1.7.1