From b8887b2db452117315f4e042408cdcca1f4603a4 Mon Sep 17 00:00:00 2001 From: Yen Date: Tue, 27 Jun 2023 16:23:08 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B4=E5=90=88=E5=90=8C=E6=AD=A5=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../serve/modules/sys/entity/dto/SyUser.java | 15 ++++ .../modules/tbs/common/TbsSeeYonConst.java | 1 + .../tbs/controller/TbsActivityController.java | 1 - src/main/java/com/qs/serve/task/SysTask.java | 37 +++++++++ .../TaskActivityController.java | 11 ++- .../TaskPolicyController.java | 2 +- .../TaskSupplierController.java | 2 +- .../task/controller/TaskUserController.java | 77 +++++++++++++++++++ .../TaskWechatController.java | 2 +- 9 files changed, 143 insertions(+), 5 deletions(-) create mode 100644 src/main/java/com/qs/serve/modules/sys/entity/dto/SyUser.java create mode 100644 src/main/java/com/qs/serve/task/SysTask.java rename src/main/java/com/qs/serve/task/{ => controller}/TaskActivityController.java (95%) rename src/main/java/com/qs/serve/task/{ => controller}/TaskPolicyController.java (97%) rename src/main/java/com/qs/serve/task/{ => controller}/TaskSupplierController.java (98%) create mode 100644 src/main/java/com/qs/serve/task/controller/TaskUserController.java rename src/main/java/com/qs/serve/task/{ => controller}/TaskWechatController.java (96%) diff --git a/src/main/java/com/qs/serve/modules/sys/entity/dto/SyUser.java b/src/main/java/com/qs/serve/modules/sys/entity/dto/SyUser.java new file mode 100644 index 00000000..ea99af72 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/sys/entity/dto/SyUser.java @@ -0,0 +1,15 @@ +package com.qs.serve.modules.sys.entity.dto; + +import lombok.Data; + +/** + * @author YenHex + * @since 2023/6/20 + */ +@Data +public class SyUser { + String id; + String name; + String code; + String mobile; +} diff --git a/src/main/java/com/qs/serve/modules/tbs/common/TbsSeeYonConst.java b/src/main/java/com/qs/serve/modules/tbs/common/TbsSeeYonConst.java index 2aeac3fb..05306852 100644 --- a/src/main/java/com/qs/serve/modules/tbs/common/TbsSeeYonConst.java +++ b/src/main/java/com/qs/serve/modules/tbs/common/TbsSeeYonConst.java @@ -47,6 +47,7 @@ public interface TbsSeeYonConst { String API_COUNT_NOT_OK = "/process/countUnfinished"; String OA_USER_LIST = "/process/getUsersByCode"; + String OA_USER_LIST_1 = "/process/getUsersList"; String XLT_SAVE_CHECK = "/xlt/saveCheck"; String XLT_SAVE_PAYMENT = "/xlt/savePayment"; diff --git a/src/main/java/com/qs/serve/modules/tbs/controller/TbsActivityController.java b/src/main/java/com/qs/serve/modules/tbs/controller/TbsActivityController.java index 74176cfb..8bee5724 100644 --- a/src/main/java/com/qs/serve/modules/tbs/controller/TbsActivityController.java +++ b/src/main/java/com/qs/serve/modules/tbs/controller/TbsActivityController.java @@ -404,7 +404,6 @@ public class TbsActivityController { if(CollectionUtil.isNotEmpty(goodsIds)&&subjectId!=null){ LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); lqw.eq(TbsBudget::getBudgetState,1); - lqw.eq(TbsBudget::getSubjectId,subjectId); //排除随货编码 lqw.ne(TbsBudget::getSubjectCode,"FYMC05"); List budgetList = tbsBudgetService.list(lqw); diff --git a/src/main/java/com/qs/serve/task/SysTask.java b/src/main/java/com/qs/serve/task/SysTask.java new file mode 100644 index 00000000..853a787d --- /dev/null +++ b/src/main/java/com/qs/serve/task/SysTask.java @@ -0,0 +1,37 @@ +package com.qs.serve.task; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.qs.serve.common.util.AuthContextUtils; +import com.qs.serve.modules.tbs.common.TbsActivityState; +import com.qs.serve.modules.tbs.entity.TbsActivity; +import com.qs.serve.task.controller.TaskUserController; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +import java.time.LocalDate; + +/** + * @author YenHex + * @since 2023/6/27 + */ +@Slf4j +@Component +@AllArgsConstructor +@ConditionalOnProperty(value = "project.task", havingValue = "true") +public class SysTask { + + TaskUserController taskUserController; + + /** + * 同步用户 + */ + @Scheduled(cron="0 0 1 * * ?") + public void task1(){ + AuthContextUtils.setTenant("001"); + taskUserController.test(); + } + +} diff --git a/src/main/java/com/qs/serve/task/TaskActivityController.java b/src/main/java/com/qs/serve/task/controller/TaskActivityController.java similarity index 95% rename from src/main/java/com/qs/serve/task/TaskActivityController.java rename to src/main/java/com/qs/serve/task/controller/TaskActivityController.java index 9b522b6a..6522a781 100644 --- a/src/main/java/com/qs/serve/task/TaskActivityController.java +++ b/src/main/java/com/qs/serve/task/controller/TaskActivityController.java @@ -1,4 +1,4 @@ -package com.qs.serve.task; +package com.qs.serve.task.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.qs.serve.common.model.dto.R; @@ -39,6 +39,15 @@ public class TaskActivityController { private final BirBaseActivityService birBaseActivityService; + /** + * 同步ERP的发货单,用于计算活动费率 + * @return + */ + @GetMapping("syncDispatch") + public R task0(){ + //todo + return R.ok(); + } /** * 同步费率底表记录 diff --git a/src/main/java/com/qs/serve/task/TaskPolicyController.java b/src/main/java/com/qs/serve/task/controller/TaskPolicyController.java similarity index 97% rename from src/main/java/com/qs/serve/task/TaskPolicyController.java rename to src/main/java/com/qs/serve/task/controller/TaskPolicyController.java index 67667176..49b9555e 100644 --- a/src/main/java/com/qs/serve/task/TaskPolicyController.java +++ b/src/main/java/com/qs/serve/task/controller/TaskPolicyController.java @@ -1,4 +1,4 @@ -package com.qs.serve.task; +package com.qs.serve.task.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.qs.serve.common.model.dto.R; diff --git a/src/main/java/com/qs/serve/task/TaskSupplierController.java b/src/main/java/com/qs/serve/task/controller/TaskSupplierController.java similarity index 98% rename from src/main/java/com/qs/serve/task/TaskSupplierController.java rename to src/main/java/com/qs/serve/task/controller/TaskSupplierController.java index 0e5735e3..c196ac0b 100644 --- a/src/main/java/com/qs/serve/task/TaskSupplierController.java +++ b/src/main/java/com/qs/serve/task/controller/TaskSupplierController.java @@ -1,4 +1,4 @@ -package com.qs.serve.task; +package com.qs.serve.task.controller; import com.qs.serve.common.framework.redis.RedisService; import com.qs.serve.common.model.consts.RedisCacheKeys; diff --git a/src/main/java/com/qs/serve/task/controller/TaskUserController.java b/src/main/java/com/qs/serve/task/controller/TaskUserController.java new file mode 100644 index 00000000..d3cf4a77 --- /dev/null +++ b/src/main/java/com/qs/serve/task/controller/TaskUserController.java @@ -0,0 +1,77 @@ +package com.qs.serve.task.controller; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.qs.serve.common.model.dto.R; +import com.qs.serve.common.util.JsonUtil; +import com.qs.serve.modules.seeyon.service.impl.SeeYonRequestBaseService; +import com.qs.serve.modules.sys.entity.SysUser; +import com.qs.serve.modules.sys.entity.dto.SyUser; +import com.qs.serve.modules.sys.service.SysUserService; +import com.qs.serve.modules.tbs.common.TbsSeeYonConst; +import com.qs.serve.modules.wx.service.WxUserService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.time.LocalDate; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 【同步】 用户相关 + * @author YenHex + * @since 2023/6/27 + */ +@Slf4j +@AllArgsConstructor +@RestController +@RequestMapping("/task/user") +@ConditionalOnProperty(value = "project.task", havingValue = "true") +public class TaskUserController { + + SeeYonRequestBaseService seeYonRequestBaseService; + SysUserService sysUserService; + + /** + * 同步致远的用户到CRM + * @return + */ + @GetMapping("syncFromSeeYon") + public R test(){ + R rs = seeYonRequestBaseService.getBase(TbsSeeYonConst.OA_USER_LIST_1,null); + String listJson = rs.getData(); + List userList = JsonUtil.jsonToList(listJson, SyUser.class); + assert userList != null; + if(userList.size()<1){ + return R.ok(); + } + List codes = userList.stream().map(SyUser::getCode).collect(Collectors.toList()); + LambdaQueryWrapper userLqw = new LambdaQueryWrapper<>(); + userLqw.in(SysUser::getCode,codes); + List existUserList = sysUserService.list(userLqw); + for (SyUser oaUser : userList) { + boolean exist = existUserList.stream().anyMatch(a->a.getCode().equals(oaUser.getCode())); + if(!exist){ + SysUser sysUser = new SysUser(); + sysUser.setCode(oaUser.getCode()); + sysUser.setMobile(oaUser.getMobile()); + sysUser.setAccount(oaUser.getCode()); + sysUser.setId(oaUser.getName()); + sysUser.setSyUserId(oaUser.getId()); + sysUser.setSyAccount(oaUser.getCode()); + sysUser.setServingState(1); + sysUser.setServingDate(LocalDate.now()); + sysUser.setSuperFlag(1); + sysUserService.save(sysUser); + } + } + return R.ok(); + } + + + +} diff --git a/src/main/java/com/qs/serve/task/TaskWechatController.java b/src/main/java/com/qs/serve/task/controller/TaskWechatController.java similarity index 96% rename from src/main/java/com/qs/serve/task/TaskWechatController.java rename to src/main/java/com/qs/serve/task/controller/TaskWechatController.java index 8a1b8b99..28c7eea6 100644 --- a/src/main/java/com/qs/serve/task/TaskWechatController.java +++ b/src/main/java/com/qs/serve/task/controller/TaskWechatController.java @@ -1,4 +1,4 @@ -package com.qs.serve.task; +package com.qs.serve.task.controller; import com.qs.serve.common.framework.redis.RedisService; import com.qs.serve.common.model.consts.RedisCacheKeys;