From edf2bc6f41c9784e9cdccc9b569a7091a5a5a438 Mon Sep 17 00:00:00 2001
From: lidongdong <1459917685@qq.com>
Date: 星期五, 23 九月 2022 16:10:07 +0800
Subject: [PATCH] Merge branch 'zigonggao_dev' of http://gitlab.nhys.cdnhxx.com/root/zhihuishequ into huacheng_test

---
 flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java |  322 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 322 insertions(+), 0 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
new file mode 100644
index 0000000..f8a77e8
--- /dev/null
+++ b/flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java
@@ -0,0 +1,322 @@
+package com.dg.core.controller;
+
+
+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.service.IGuideEvolveService;
+import com.dg.core.service.IGuideRepairOrderService;
+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.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import java.time.LocalDateTime;
+
+/**
+ * 工单管理
+ */
+@Api(tags = {"工单管理接口"})
+@RestController
+@RequestMapping("/guideRepairOrder")
+public class GuideRepairOrderController extends BaseController {
+
+    @Resource
+    private IGuideRepairOrderService iGuideRepairOrderService;
+
+    @Autowired
+    private IGuideEvolveService iGuideEvolveService;
+
+    /**
+     * 提交导办订单
+     * @return
+     */
+    @ApiOperation(value = "提交导办订单",response = GuideRepairOrder.class)
+    @PostMapping("/addOrder")
+    @Authorization
+    public ResultData addOrder(@RequestBody GuideRepairOrder guideRepairOrder,@CurrentUser SysUser sysUser) {
+          guideRepairOrder.setSubmitUserId(sysUser.getUserId().toString());
+          guideRepairOrder.setSubmitUserPhone(sysUser.getPhonenumber());
+          return toAjax(iGuideRepairOrderService.addOrder(guideRepairOrder));
+    }
+
+
+    /**
+     * 获取详情
+     * @param Id
+     * @param orderNum
+     * @return
+     */
+    @ApiOperation("获取订单详情")
+    @GetMapping("/orderdata")
+    @Authorization
+    public ResultData selectConfigData(@RequestParam(value = "Id",required = false) String Id,
+                                       @RequestParam(value = "orderNum",required = false)  String orderNum)
+    {
+        if(StringUtils.isEmpty(Id) && StringUtils.isEmpty(orderNum))
+        {
+            return ResultData.error("id或者订单号不能都为空");
+        }
+
+        GuideRepairOrder order=iGuideRepairOrderService.selectConfigData(Id,orderNum);
+        order.setGuideEvolveEntities(iGuideEvolveService.selectConfigList(Id));
+
+        return ResultData.success(order);
+    }
+
+
+    /**
+     * 分配人员
+     * @param order
+     * @return
+     */
+    @ApiOperation("分配人员")
+    @PostMapping("/allocation")
+    @Authorization
+    public ResultData allocation(@RequestBody GuideRepairOrder order, @CurrentUser SysUser sysUser)
+    {
+        if(order==null)
+        {
+            return ResultData.error("参数不能为空");
+        }
+
+        if(StringUtils.isEmpty(order.getGuideDepartmentId()))
+        {
+            return ResultData.error("导办部门id不能为空");
+        }
+
+        if(StringUtils.isEmpty(order.getGuideUserId()))
+        {
+            return ResultData.error("导办人员id不能为空");
+        }
+
+        if(StringUtils.isEmpty(order.getGuideUserPhone()))
+        {
+            return ResultData.error("导办人员电话不能为空");
+        }
+
+        //已分配
+        order.setState("2");
+
+        //新增分配记录
+        GuideEvolveEntity entity=new GuideEvolveEntity();
+        entity.setCreateTime(LocalDateTime.now());
+        entity.setUpdateTime(LocalDateTime.now());
+        entity.setState("13");
+        entity.setDepartmentalId(sysUser.getDepartmentId());
+        entity.setToUserId(sysUser.getUserId()+"");
+        entity.setFromUserId(order.getGuideUserId());
+        entity.setFromDepartmentalId(order.getGuideDepartmentId());
+
+        iGuideEvolveService.insertConfig(entity);
+
+        return toAjax(iGuideRepairOrderService.updateConfig(order));
+    }
+
+
+    /**
+     * 转派人员
+     * @param order
+     * @return
+     */
+    @ApiOperation("转派人员")
+    @PostMapping("/redeploy")
+    @Authorization
+    public ResultData redeploy(@RequestBody GuideRepairOrder order, @CurrentUser SysUser sysUser)
+    {
+        if(order==null)
+        {
+            return ResultData.error("参数不能为空");
+        }
+
+        if(StringUtils.isEmpty(order.getGuideDepartmentId()))
+        {
+            return ResultData.error("导办部门id不能为空");
+        }
+
+        if(StringUtils.isEmpty(order.getGuideUserId()))
+        {
+            return ResultData.error("导办人员id不能为空");
+        }
+
+        if(StringUtils.isEmpty(order.getGuideUserPhone()))
+        {
+            return ResultData.error("导办人员电话不能为空");
+        }
+
+        //已分配
+        order.setState("2");
+
+        //新增转派记录
+        GuideEvolveEntity entity=new GuideEvolveEntity();
+        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());
+
+        iGuideEvolveService.insertConfig(entity);
+
+        return toAjax(iGuideRepairOrderService.updateConfig(order));
+    }
+
+
+
+    /**
+     * 去处理
+     * @param entity
+     * @return
+     */
+    @ApiOperation("去处理")
+    @PostMapping("/dispose")
+    @Authorization
+    public ResultData dispose(@RequestBody GuideEvolveEntity entity, @CurrentUser SysUser sysUser)
+    {
+        if(entity==null)
+        {
+            return ResultData.error("参数不能为空");
+        }
+
+        if(StringUtils.isEmpty(entity.getGuideId()))
+        {
+            return ResultData.error("工单id不能为空");
+        }
+
+        GuideRepairOrder order=iGuideRepairOrderService.selectConfigData(entity.getGuideId(),"");
+        if(order==null)
+        {
+            return ResultData.error("该工单不存在!");
+        }
+
+        if(StringUtils.equals(order.getState(),"3"))
+        {
+            return ResultData.error("该工单已办结!");
+        }
+
+        if(!StringUtils.equals(order.getState(),"2"))
+        {
+            return ResultData.error("该工单非是待办状态!");
+        }
+        //待评价
+        order.setState("4");
+        //新增已办结记录
+        entity.setCreateTime(LocalDateTime.now());
+        entity.setUpdateTime(LocalDateTime.now());
+        entity.setState("4");
+        entity.setFromDepartmentalId(sysUser.getDepartmentId());
+        entity.setFromUserId(sysUser.getUserId()+"");
+        iGuideEvolveService.insertConfig(entity);
+        return toAjax(iGuideRepairOrderService.updateConfig(order));
+    }
+
+
+    /**
+     * 取消导办工单
+     * @param entity
+     * @return
+     */
+    @ApiOperation("取消导办工单")
+    @PostMapping("/cancel")
+    @Authorization
+    public ResultData cancel(@RequestBody GuideEvolveEntity entity, @CurrentUser SysUser sysUser)
+    {
+        if(entity==null)
+        {
+            return ResultData.error("参数不能为空");
+        }
+
+        if(StringUtils.isEmpty(entity.getGuideId()))
+        {
+            return ResultData.error("工单id不能为空");
+        }
+
+        GuideRepairOrder order=iGuideRepairOrderService.selectConfigData(entity.getGuideId(),"");
+        if(order==null)
+        {
+            return ResultData.error("该工单不存在!");
+        }
+
+        if(!StringUtils.equals(order.getState(),"1"))
+        {
+            return ResultData.error("该工单不能取消!");
+        }
+        //取消状态
+        order.setState("5");
+
+        //新增已取消记录
+        entity.setCreateTime(LocalDateTime.now());
+        entity.setUpdateTime(LocalDateTime.now());
+        entity.setState("5");
+        entity.setFromDepartmentalId(sysUser.getDepartmentId());
+        entity.setFromUserId(sysUser.getUserId()+"");
+        iGuideEvolveService.insertConfig(entity);
+        return toAjax(iGuideRepairOrderService.updateConfig(order));
+    }
+
+
+
+    /**
+     * 工单评价
+     * @param entity
+     * @return
+     */
+    @ApiOperation("工单评价")
+    @PostMapping("/evaluate")
+    @Authorization
+    public ResultData evaluate(@RequestBody GuideRepairOrder entity, @CurrentUser SysUser sysUser)
+    {
+        if(entity==null)
+        {
+            return ResultData.error("参数不能为空");
+        }
+
+        if(entity.getId()<=0)
+        {
+            return ResultData.error("工单id不能为空");
+        }
+
+        if(!StringUtils.equals(entity.getState(),"4"))
+        {
+            return ResultData.error("该工单不能评价!");
+        }
+
+        if(StringUtils.isEmpty(entity.getEvaluateState()))
+        {
+            return ResultData.error("满意程度不能为空!");
+        }
+        //已办结
+        entity.setState("3");
+        //新增已办结记录
+        GuideEvolveEntity guideEvolveEntity=new GuideEvolveEntity();
+        guideEvolveEntity.setCreateTime(LocalDateTime.now());
+        guideEvolveEntity.setUpdateTime(LocalDateTime.now());
+        guideEvolveEntity.setState("3");
+        guideEvolveEntity.setFromDepartmentalId(sysUser.getDepartmentId());
+        guideEvolveEntity.setFromUserId(sysUser.getUserId()+"");
+        iGuideEvolveService.insertConfig(guideEvolveEntity);
+
+        return toAjax(iGuideRepairOrderService.updateConfig(entity));
+    }
+
+    /**
+     * 获取个人中心工单数据
+     * @param sysUser 当前登录人员信息
+     * @return
+     */
+    @ApiOperation("获取个人中心工单数据")
+    @GetMapping("/personalCenter")
+    @Authorization
+    public ResultData selectBySubmitId(@CurrentUser SysUser sysUser){
+        return ResultData.success(iGuideRepairOrderService.selectBySubmitId(sysUser.getUserId().toString()));
+    }
+
+
+
+}

--
Gitblit v1.7.1