From 5e2d78f61bf7d1513d5d5c8cd55442133a6e898e Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期一, 14 七月 2025 18:23:36 +0800
Subject: [PATCH] 保洁巡检本周代码

---
 ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java |  108 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 108 insertions(+), 0 deletions(-)

diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java
index 2548608..aeda7ff 100644
--- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java
+++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java
@@ -5,11 +5,13 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.basic.PageInfo;
+import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.core.domain.BaseModel;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.domain.entity.SysRole;
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.redis.service.RedisService;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.bean.BeanUtils;
 import com.ruoyi.framework.web.service.TokenService;
@@ -25,14 +27,25 @@
 import com.ruoyi.system.query.KnowledgeListQuery;
 import com.ruoyi.system.query.TaskListQuery;
 import com.ruoyi.system.service.*;
+import com.ruoyi.system.utils.TemplateMessageSendUtil;
+import com.ruoyi.system.utils.wx.body.resp.Code2SessionRespBody;
+import com.ruoyi.system.utils.wx.body.resq.Code2SessionResqBody;
+import com.ruoyi.system.utils.wx.model.WeixinProperties;
+import com.ruoyi.system.utils.wx.pojo.AppletUserDecodeData;
+import com.ruoyi.system.utils.wx.pojo.AppletUserEncrypteData;
+import com.ruoyi.system.utils.wx.tools.WxAppletTools;
+import com.ruoyi.system.utils.wx.tools.WxUtils;
 import com.ruoyi.system.vo.system.*;
 import com.ruoyi.web.controller.tool.EmailUtils;
 import com.ruoyi.web.controller.tool.MsgUtils;
 import com.sun.jna.platform.win32.LMAccess;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.StringUtils;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.client.RestTemplate;
 
 import javax.annotation.Resource;
 import javax.validation.Valid;
@@ -54,6 +67,7 @@
  * @author xiaochen
  * @since 2025-05-28
  */
+@Slf4j
 @Api(tags = "个人中心")
 @RestController
 @RequestMapping("/t-user")
@@ -100,8 +114,35 @@
     private TProblemEscalationService problemEscalationService;
     @Resource
     private TNoticeService noticeService;
+    @Autowired
+    private RestTemplate wxRestTemplate;
+    @Autowired
+    private WeixinProperties weixinProperties;
+    @Resource
+    private RedisService redisService;
     @Resource
     private MsgUtils msgUtils;
+    @Resource
+    private TemplateMessageSendUtil templateMessageSendUtil;
+    @ApiOperation(value = "通过code获得openid,获取用户信息",tags = {"微信小程序登录"})
+    @GetMapping("/openIdByJsCode")
+    public R<String> openIdByJsCode(@RequestParam String code) {
+        Long userId = tokenService.getLoginUserApplet().getUserId();
+        SysUser sysUser = sysUserService.selectUserById(userId);
+        if(Objects.isNull(sysUser)){
+            return R.fail("未查询到当前登录用户信息");
+        }
+        if(StringUtils.hasLength(sysUser.getOpenId())){
+            return R.ok();
+        }
+        log.info("<<<<<<<<换取openid开始<<<<<<<<:{}", code);
+        WxAppletTools appletTools = new WxAppletTools(wxRestTemplate, weixinProperties, redisService);
+        Code2SessionRespBody body = appletTools.getOpenIdByJscode2session(new Code2SessionResqBody().build(code));
+        String openid = body.getOpenid();
+        sysUser.setOpenId(openid);
+        sysUserService.updateUser(sysUser);
+        return R.ok();
+    }
 
     @ApiOperation(value = "消息通知列表")
     @PostMapping(value = "/noticeList")
@@ -374,6 +415,36 @@
         }
         return R.ok(taskDetailVO);
     }
+    @ApiOperation(value = "督察任务-详情任务")
+    @GetMapping(value = "/detaiInspectorl")
+    public R<InspectorDetailVO> detaiInspectorl(@RequestParam String id) {
+        InspectorDetailVO taskDetailVO = new InspectorDetailVO();
+        TInspector inspector = inspectorService.getById(id);
+        TLocation location = locationService.getById(inspector.getLocationId());
+        TLocationType locationType = locationTypeService.getById(location.getLocationType());
+        taskDetailVO.setLocationAddress(location.getLocationAddress());
+        taskDetailVO.setLocationAddressEnd(location.getLocationAddressEnd());
+        taskDetailVO.setLocationIcon(locationType.getLocationIcon());
+        taskDetailVO.setLocationName(locationType.getLocationName());
+        taskDetailVO.setLocationTypeName(locationType.getLocationName());
+        taskDetailVO.setLocationLonEnd(location.getLocationLonEnd());
+        taskDetailVO.setLocationLatEnd(location.getLocationLatEnd());
+        taskDetailVO.setLocationLon(location.getLocationLon());
+        taskDetailVO.setLocationLat(location.getLocationLat());
+        taskDetailVO.setLocationName(location.getLocationName());
+        taskDetailVO.setId(inspector.getId());
+        taskDetailVO.setClearStatus(inspector.getClearStatus());
+        taskDetailVO.setUnqualified(inspector.getUnqualified());
+        taskDetailVO.setRemark(inspector.getAuditRemark());
+        taskDetailVO.setPicture(inspector.getPicture());
+        taskDetailVO.setAudioUrl(inspector.getAudioUrl());
+        taskDetailVO.setStatus(inspector.getStatus());
+        taskDetailVO.setAuditPerson(inspector.getAuditPerson());
+        taskDetailVO.setAuditTime(inspector.getAuditTime());
+        taskDetailVO.setAuditStatus(inspector.getAuditStatus());
+        taskDetailVO.setAuditRemark(inspector.getAuditRemark());
+        return R.ok(taskDetailVO);
+    }
 
     @ApiOperation(value = "详情任务-操作记录-详情")
     @GetMapping(value = "/detailRecord")
@@ -466,6 +537,12 @@
         );
         return R.ok(list);
     }
+    @ApiOperation(value = "点位列表")
+    @PostMapping(value = "/locationList")
+    public R<List<TLocation>> locationList() {
+        List<TLocation> locations = locationService.list();
+        return R.ok(locations);
+    }
 
     @ApiOperation(value = "上传督察任务")
     @PostMapping(value = "/addInspector")
@@ -483,6 +560,19 @@
         }
         inspectorService.save(dto);
         return R.ok();
+
+//        TLocation location = locationService.getById(dto.getLocationId());
+//        SysUser sysUser = sysUserService.selectUserById(Long.valueOf(location.getLocationLeader()));
+//        dto.setCommitPerson(tokenService.getLoginUserApplet().getUserId() + "");
+//
+//        if (dto.getClearStatus() == 1) {
+//            dto.setStatus(4);
+//        } else {
+//            dto.setStatus(1);
+//
+//        }
+//        inspectorService.save(dto);
+//        return R.ok();
     }
 
     @ApiOperation(value = "上传意见反馈")
@@ -721,6 +811,17 @@
                                        }
                                        break;
                                    case 3:
+                                       if (StringUtils.hasLength(sysUser.getOpenId())){
+                                           Date date1 = new Date();
+                                           SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+                                           SimpleDateFormat simpleDateFormat2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+                                           String format1 = simpleDateFormat1.format(date1);
+                                           String startTime = simpleDateFormat2.format(leaveDTO.getStartTime());
+                                           String endTime = simpleDateFormat2.format(leaveDTO.getStartTime());
+                                           templateMessageSendUtil.wxTemplatePendApprovalRequest(sysUser.getOpenId(),
+                                                   user.getNickName(),format1,"员工请假",
+                                                   startTime,endTime);
+                                       }
                                        break;
                                }
 
@@ -878,6 +979,13 @@
                     }
                     break;
                 case 3:
+                    if (StringUtils.hasLength(sysUser.getOpenId())){
+                        Date date = new Date();
+                        SimpleDateFormat simpleDateFormat2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+                        String startTime1 = simpleDateFormat2.format(date);
+                        templateMessageSendUtil.wxTemplateMakeCopyRequest(sysUser1.getOpenId(),
+                                sysUser1.getNickName(),startTime1,"请假审批");
+                    }
                     break;
             }
         }

--
Gitblit v1.7.1