|
@@ -0,0 +1,75 @@
|
|
|
|
|
+package com.cyksj.web.controller.manage.corp.wxkf;
|
|
|
|
|
+
|
|
|
|
|
+import cn.hutool.core.bean.BeanUtil;
|
|
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
|
|
+import com.cyksj.dto.Result;
|
|
|
|
|
+import com.cyksj.enums.GatewayResponse;
|
|
|
|
|
+import com.cyksj.mapper.corp.kf.CorpKfUserMapper;
|
|
|
|
|
+import com.cyksj.model.entity.CorpKfUser;
|
|
|
|
|
+import com.cyksj.model.kf.CorpKfUserInfo;
|
|
|
|
|
+import com.cyksj.service.corp.WxCorpOps;
|
|
|
|
|
+import lombok.RequiredArgsConstructor;
|
|
|
|
|
+import org.springframework.dao.DuplicateKeyException;
|
|
|
|
|
+import org.springframework.web.bind.annotation.*;
|
|
|
|
|
+
|
|
|
|
|
+/**
|
|
|
|
|
+ * 项目名: yhlxj2
|
|
|
|
|
+ * 文件名: CorpKfUserController
|
|
|
|
|
+ * 创建者: JavaZou
|
|
|
|
|
+ * 创建时间:2025/1/15 18:27
|
|
|
|
|
+ */
|
|
|
|
|
+@RestController
|
|
|
|
|
+@RequestMapping("/manage/corp/kf/user")
|
|
|
|
|
+@RequiredArgsConstructor
|
|
|
|
|
+public class CorpKfUserController {
|
|
|
|
|
+ private final CorpKfUserMapper corpKfUserMapper;
|
|
|
|
|
+
|
|
|
|
|
+ private final WxCorpOps wxCorpOps;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 微信客户详情
|
|
|
|
|
+ */
|
|
|
|
|
+ @GetMapping("/get/detail")
|
|
|
|
|
+ public Result<CorpKfUser> getCorpKfUserInfo(String externalUserid) throws Exception {
|
|
|
|
|
+ CorpKfUser corpKfUser = corpKfUserMapper.selectOne(Wrappers.lambdaQuery(CorpKfUser.class)
|
|
|
|
|
+ .eq(CorpKfUser::getExternalUserid, externalUserid)
|
|
|
|
|
+ .last("limit 1"));
|
|
|
|
|
+ if (corpKfUser == null) {
|
|
|
|
|
+ CorpKfUserInfo corpKfUserInfo = wxCorpOps.getCorpKfUserInfo(externalUserid);
|
|
|
|
|
+ try {
|
|
|
|
|
+ corpKfUser = new CorpKfUser();
|
|
|
|
|
+ BeanUtil.copyProperties(corpKfUserInfo, corpKfUser);
|
|
|
|
|
+ corpKfUserMapper.insert(corpKfUser);
|
|
|
|
|
+ } catch (DuplicateKeyException e) {
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ return GatewayResponse.SUCCESS.newBuilder().toResult(corpKfUser);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 设置备注
|
|
|
|
|
+ */
|
|
|
|
|
+ @PostMapping("/set/remark")
|
|
|
|
|
+ public Result<String> setUserRemark(@RequestBody CorpKfUser corpKfUser) {
|
|
|
|
|
+ Long id = corpKfUser.getId();
|
|
|
|
|
+ CorpKfUser dbCorpKfUser = corpKfUserMapper.selectById(id);
|
|
|
|
|
+ if (dbCorpKfUser != null) {
|
|
|
|
|
+ dbCorpKfUser.setRemark(corpKfUser.getRemark());
|
|
|
|
|
+ corpKfUserMapper.updateById(corpKfUser);
|
|
|
|
|
+ }
|
|
|
|
|
+ return GatewayResponse.SUCCESS.newBuilder().toResult();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 标记为设备用户
|
|
|
|
|
+ */
|
|
|
|
|
+ @PostMapping("/mark/device/{id}")
|
|
|
|
|
+ public Result<String> markUserDevice(@PathVariable Long id) {
|
|
|
|
|
+ CorpKfUser corpKfUser = corpKfUserMapper.selectById(id);
|
|
|
|
|
+ if (corpKfUser != null) {
|
|
|
|
|
+ corpKfUser.setIsDevice(!corpKfUser.getIsDevice());
|
|
|
|
|
+ corpKfUserMapper.updateById(corpKfUser);
|
|
|
|
|
+ }
|
|
|
|
|
+ return GatewayResponse.SUCCESS.newBuilder().toResult();
|
|
|
|
|
+ }
|
|
|
|
|
+}
|