| | |
| | | package com.dg.core.api; |
| | | |
| | | |
| | | 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.manual.mapper.util.ConstantPropertiesUtil; |
| | | import com.dg.core.service.IGuideEvolveService; |
| | | import com.dg.core.service.IGuideRepairOrderService; |
| | | import com.dg.core.service.IOrganizationChartService; |
| | | import com.dg.core.util.PermissionUtil; |
| | | 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.data.redis.core.StringRedisTemplate; |
| | | import org.springframework.util.Assert; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.time.LocalDateTime; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | | |
| | | /** |
| | | * 工单管理 |
| | |
| | | @Autowired |
| | | private IGuideEvolveService iGuideEvolveService; |
| | | |
| | | @Resource |
| | | IOrganizationChartService iOrganizationChartService; |
| | | |
| | | @Resource(name = "stringRedisTemplate") |
| | | private StringRedisTemplate stringRedisTemplate; |
| | | |
| | | private static String guideRepairOrderCompleteTemplateId = "7ZCHHii87rWPwVkdhZnvNiYbYi_Buq0NXO10cmUhAFk"; |
| | | |
| | | @Resource |
| | | SmsUtil smsUtil; |
| | | |
| | | /** |
| | | * 提交导办订单 |
| | | * @return |
| | |
| | | public ResultData addOrder(@RequestBody GuideRepairOrder guideRepairOrder,@CurrentUser SysUser sysUser) { |
| | | guideRepairOrder.setSubmitUserId(sysUser.getUserId().toString()); |
| | | guideRepairOrder.setSubmitUserPhone(sysUser.getPhonenumber()); |
| | | return toAjax(iGuideRepairOrderService.addOrder(guideRepairOrder)); |
| | | guideRepairOrder.setSubmitType(1); |
| | | int i = iGuideRepairOrderService.addOrder(guideRepairOrder); |
| | | if (i>0){ |
| | | iGuideEvolveService.updateGuid(); |
| | | return ResultData.success(); |
| | | } |
| | | else |
| | | return ResultData.error("提交失败,请检查你是否有相同的咨询内容在处理中"); |
| | | } |
| | | |
| | | |
| | |
| | | @GetMapping("/orderdata") |
| | | @Authorization |
| | | public ResultData selectConfigData(@RequestParam(value = "Id",required = false) String Id, |
| | | @RequestParam(value = "orderNum",required = false) String orderNum) |
| | | @RequestParam(value = "orderNum",required = false) String orderNum, |
| | | @CurrentUser SysUser sysUser) |
| | | { |
| | | if(StringUtils.isEmpty(Id) && StringUtils.isEmpty(orderNum)) |
| | | { |
| | |
| | | } |
| | | |
| | | GuideRepairOrder order=iGuideRepairOrderService.selectConfigData(Id,orderNum); |
| | | order.setGuideEvolveEntities(iGuideEvolveService.selectConfigList(Id)); |
| | | order.setGuideEvolveEntities(iGuideEvolveService.selectConfigList(Id,sysUser)); |
| | | |
| | | return ResultData.success(order); |
| | | } |
| | |
| | | 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()); |
| | | |
| | | entity.setState("10"); |
| | | entity.setDepartmentalId(order.getGuideDepartmentId()); |
| | | entity.setToUserId(order.getGuideUserId()); |
| | | entity.setFromUserId(sysUser.getUserId()+""); |
| | | entity.setFromDepartmentalId(sysUser.getDepartmentId()); |
| | | entity.setGuideId(order.getId().toString()); |
| | | iGuideEvolveService.insertConfig(entity); |
| | | |
| | | iGuideRepairOrderService.updateSysUserOrderNum(entity); |
| | | return toAjax(iGuideRepairOrderService.updateConfig(order)); |
| | | } |
| | | |
| | |
| | | } |
| | | if(StringUtils.equals(entity.getState(),"2")){//如果用户选择未解决则状态改为待办 |
| | | order.setState("2"); |
| | | entity.setState("8"); |
| | | entity.setState("9"); |
| | | } |
| | | else if(StringUtils.equals(entity.getState(),"4")){ |
| | | if (order.getSubmitType().equals(1))//小程序提交 |
| | | { |
| | | WxUtil wxUtil=new WxUtil(); |
| | | String accessToken="0"; |
| | | try { |
| | | accessToken= stringRedisTemplate.boundValueOps("access_token:access_token:" + ConstantPropertiesUtil.WX_OPEN_APP_ID).get(); |
| | | } catch (Exception e) { |
| | | throw new RuntimeException(e); |
| | | } |
| | | SysUser submitUser = iGuideRepairOrderService.getSubmitUser(order); |
| | | wxUtil.sendGuideRepairOrderComplete(submitUser.getOpenid(),accessToken,guideRepairOrderCompleteTemplateId,entity); |
| | | } |
| | | else if (order.getSubmitType().equals(2)){ |
| | | smsUtil.sendSmsCompleteNew(order.getConsultUserPhone(),order.getMatterName()); |
| | | } |
| | | //待评价 |
| | | order.setState("4"); |
| | | entity.setState("9"); |
| | | entity.setState("7"); |
| | | } |
| | | //新增已办结记录 |
| | | entity.setCreateTime(LocalDateTime.now()); |
| | |
| | | entity.setFromUserId(sysUser.getUserId()+""); |
| | | entity.setGuideId(order.getId().toString()); |
| | | iGuideEvolveService.insertConfig(entity); |
| | | iGuideRepairOrderService.updateSysUserOrderNum(entity); |
| | | return toAjax(iGuideRepairOrderService.updateConfig(order)); |
| | | } |
| | | |
| | |
| | | entity.setState("5"); |
| | | entity.setFromDepartmentalId(sysUser.getDepartmentId()); |
| | | entity.setFromUserId(sysUser.getUserId()+""); |
| | | entity.setGuideId(order.getId().toString()); |
| | | iGuideEvolveService.insertConfig(entity); |
| | | return toAjax(iGuideRepairOrderService.updateConfig(order)); |
| | | } |
| | |
| | | { |
| | | return ResultData.error("工单id不能为空"); |
| | | } |
| | | |
| | | if(!StringUtils.equals(entity.getState(),"4")) |
| | | { |
| | | return ResultData.error("该工单不能评价!"); |
| | | } |
| | | |
| | | if(StringUtils.isEmpty(entity.getEvaluateState())) |
| | | { |
| | | return ResultData.error("满意程度不能为空!"); |
| | |
| | | GuideEvolveEntity guideEvolveEntity=new GuideEvolveEntity(); |
| | | guideEvolveEntity.setCreateTime(LocalDateTime.now()); |
| | | guideEvolveEntity.setUpdateTime(LocalDateTime.now()); |
| | | guideEvolveEntity.setState("3"); |
| | | guideEvolveEntity.setState("13"); |
| | | 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(); |
| | | } |
| | | |
| | | /** |
| | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 小程序获取导办工单管理列表 |
| | | * @return |
| | | */ |
| | | @ApiOperation(value = "小程序获取导办工单管理列表",response = GuideRepairOrder.class) |
| | | @GetMapping("/getList") |
| | | @Authorization |
| | | public TableDataInfo selectConfigList(@RequestParam(value = "state",required = false) String status, |
| | | @CurrentUser SysUser sysUser) |
| | | { |
| | | List<String> ids=null; |
| | | String userId=null; |
| | | if( StringUtils.equals("2",sysUser.getRoleIds())) |
| | | { |
| | | if(StringUtils.equals("1",sysUser.getIsDivisionHead())) |
| | | { |
| | | ids=PermissionUtil.getPermission(sysUser,iOrganizationChartService); |
| | | } |
| | | else |
| | | { |
| | | userId=sysUser.getUserId()+""; |
| | | ids=new ArrayList<>(); |
| | | ids.add(sysUser.getDepartmentId()); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | ids=PermissionUtil.getPermission(sysUser,iOrganizationChartService); |
| | | } |
| | | List<GuideRepairOrder> list = iGuideRepairOrderService.selectConfigList(null,ids,status,userId,null,null,null); |
| | | int num=iGuideRepairOrderService.countConfigList(null,ids,status,userId); |
| | | return getDataTable(list,num); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 删除评论 |
| | | * @return |
| | | */ |
| | | @ApiOperation(value = "删除评论",response = GuideRepairOrder.class) |
| | | @GetMapping("/deleteComment") |
| | | @Authorization |
| | | public ResultData deleteComment(@RequestParam(value = "id",required = false) Integer id,@CurrentUser SysUser sysUser){ |
| | | return iGuideRepairOrderService.deleteComment(id,sysUser); |
| | | } |
| | | |
| | | |
| | | } |