Răsfoiți Sursa

闪电增员根据五级机构确定出单员和代理人

wks 2 ani în urmă
părinte
comite
5539d92f28

+ 46 - 0
src/main/java/com/ydtech/constants/enums/dict/organization/OrganizationSource.java

@@ -0,0 +1,46 @@
+package com.ydtech.constants.enums.dict.organization;
+
+
+import com.ydtech.aop.request.DictEnum;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @description: 新车判断单位
+ * @author: wenks
+ * @date: 2023/11/23 17:41
+ **/
+@AllArgsConstructor
+@Getter
+@DictEnum(key = "organizationSource", desc = "机构来源")
+public enum OrganizationSource {
+
+    OS_1("1", "渠道", 0, 0),
+    OS_2("2", "个代", 1, 0),
+    OS_3("3", "服务", 2, 0);
+
+    // 编号
+    private final String code;
+    // 说明
+    private final String desc;
+    // 排序
+    private final Integer sort;
+    // 状态  0 启用  1 不启用
+    private final Integer status;
+
+    @AllArgsConstructor
+    @Getter
+    public enum Source {
+
+        S_1("2", "出单员"),
+        S_2("1", "个代");
+
+        public static final String NAME = "S_";
+        // 编号
+        private final String code;
+        // 说明
+        private final String desc;
+    }
+
+
+}

+ 31 - 0
src/main/java/com/ydtech/modules/admin/controller/SysUserRecruitingController.java

@@ -0,0 +1,31 @@
+package com.ydtech.modules.admin.controller;
+
+
+import com.ydtech.core.page.HttpResult;
+import com.ydtech.modules.admin.model.SysUser;
+import com.ydtech.modules.admin.service.SysUserRecruitingService;
+import com.ydtech.modules.base.controller.BaseController;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@Api(tags = "增员管理")
+@RestController
+@RequestMapping("/recruiting")
+@RequiredArgsConstructor
+public class SysUserRecruitingController {
+
+    private final SysUserRecruitingService sysUserRecruitingService;
+
+    @GetMapping("/queryType")
+    @ApiOperation("机构来源查询")
+    public HttpResult<Object> queryType(){
+        SysUser user = new BaseController().getUser();
+        String deptId = user.getDeptId();
+        return sysUserRecruitingService.queryType(deptId);
+    }
+
+}

+ 14 - 0
src/main/java/com/ydtech/modules/admin/service/SysUserRecruitingService.java

@@ -0,0 +1,14 @@
+package com.ydtech.modules.admin.service;
+
+import com.ydtech.core.page.HttpResult;
+
+public interface SysUserRecruitingService {
+
+    /**
+     * 查询机构来源
+     * @param deptId 渠道id
+     * @return
+     */
+    HttpResult<Object> queryType(String deptId);
+
+}

+ 31 - 0
src/main/java/com/ydtech/modules/admin/service/impl/SysUserRecruitingServiceImpl.java

@@ -0,0 +1,31 @@
+package com.ydtech.modules.admin.service.impl;
+
+
+import com.ydtech.constants.enums.dict.organization.OrganizationSource;
+import com.ydtech.core.page.HttpResult;
+import com.ydtech.modules.admin.model.SysDept;
+import com.ydtech.modules.admin.service.SysDeptService;
+import com.ydtech.modules.admin.service.SysUserRecruitingService;
+import com.ydtech.modules.protocol.utils.AssertionUtils;
+import com.ydtech.utils.StringUtils;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+@Service
+@RequiredArgsConstructor
+public class SysUserRecruitingServiceImpl implements SysUserRecruitingService {
+
+    private final SysDeptService sysDeptService;
+
+    @Override
+    public HttpResult<Object> queryType(String deptId) {
+        SysDept sysDept = sysDeptService.getById(deptId);
+        // 查询上级机构个代还是出单员
+        String parentId = sysDept.getParentId();
+        SysDept sysDeptParent = sysDeptService.getById(parentId);
+        String managementSource = sysDeptParent.getManagementSource();
+        AssertionUtils.isFail(StringUtils.isEmpty(managementSource), "此机构暂时不支持增员");
+        OrganizationSource.Source source = Enum.valueOf(OrganizationSource.Source.class, OrganizationSource.Source.NAME + managementSource);
+        return HttpResult.ok(source.getDesc(), source.getCode());
+    }
+}