Parcourir la source

白马项目相关接口

liuyc il y a 2 ans
Parent
commit
53ea75466e

+ 1 - 2
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/dto/SaveUserInfoByProjectDTO.java

@@ -14,7 +14,7 @@ import java.io.Serializable;
 @AllArgsConstructor
 @NoArgsConstructor
 @TableName("m_project_assignment_user")
-public class SaveUserInfoByProjectDTO extends BaseEntity implements Serializable {
+public class SaveUserInfoByProjectDTO extends BaseEntity {
     private static final long serialVersionUID = 1L;
 
     /**
@@ -53,5 +53,4 @@ public class SaveUserInfoByProjectDTO extends BaseEntity implements Serializable
     private String userId;
 
 
-
 }

+ 0 - 4
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/entity/SaveUserInfoByProject.java

@@ -52,8 +52,4 @@ public class SaveUserInfoByProject extends BaseEntity{
     @ApiModelProperty(value = "userId",required = true)
     private String userId;
 
-
-
-
-
 }

+ 6 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/feign/SaveUserInfoByProjectClient.java

@@ -21,6 +21,7 @@ public interface SaveUserInfoByProjectClient {
     String SEARCH_USER_INFO_AND_PROJECT = "/api/manager/searchUserInfoAndProject";
     String SEARCH_USER_INFO_AND_PROJECT2 = "/api/manager/searchUserInfoAndProject2";
     String QUERY_USER_CONTRACT_ROLE = "/api/manager/queryUserContractRole";
+    String SAVE_INFO_RELATION = "/api/manager/saveInfoRelation";
 
     @PostMapping(QUERY_USER_CONTRACT_ROLE)
     List<JSONObject> queryUserContractRole(@RequestBody List<Long> userIds, @RequestParam String contractId);
@@ -37,5 +38,10 @@ public interface SaveUserInfoByProjectClient {
     @GetMapping(SEARCH_USER_INFO_AND_PROJECT2)
     List<SaveUserInfoByProjectDTO> searchUserInfoAndProject2(@RequestParam("userId") String userId);
 
+    /**
+     * 保存用户项目角色关联信息
+     */
+    @PostMapping(SAVE_INFO_RELATION)
+    void saveInfoRelation(@RequestParam Long userId, @RequestParam Long projectId, @RequestParam Long contractId, @RequestParam Long roleId);
 
 }

+ 6 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/feign/WbsTreeContractClient.java

@@ -82,6 +82,12 @@ public interface WbsTreeContractClient {
     @PostMapping(API_PREFIX + "/getContractWbsTreeByContractIdAndId")
     WbsTreeContract getContractWbsTreeByContractIdAndId(@RequestParam Long id, @RequestParam Long contractId);
 
+    /**
+     * 根据合同段ID获取合同段划分树
+     */
+    @PostMapping(API_PREFIX + "/getContractWbsTreeByContractId")
+    List<WbsTreeContract> getContractWbsTreeByContractId(@RequestParam Long contractId);
+
     /**
      * 根据primaryKeyId获取合同段划分树的节点信息
      *

+ 18 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/feign/SaveUserInfoByProjectClientImpl.java

@@ -4,7 +4,10 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import lombok.AllArgsConstructor;
+import org.springblade.common.utils.SnowFlakeUtil;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.manager.dto.SaveUserInfoByProjectDTO;
+import org.springblade.manager.entity.SaveUserInfoByProject;
 import org.springblade.manager.service.SaveUserInfoByProjectService;
 import org.springframework.web.bind.annotation.RestController;
 
@@ -20,7 +23,7 @@ public class SaveUserInfoByProjectClientImpl implements SaveUserInfoByProjectCli
     @Override
     public List<JSONObject> queryUserContractRole(List<Long> userIds, String contractId) {
         List<SaveUserInfoByProjectDTO> userContractRole = this.saveUserInfoByProjectService.list(Wrappers.<SaveUserInfoByProjectDTO>lambdaQuery().in(SaveUserInfoByProjectDTO::getUserId, userIds).eq(SaveUserInfoByProjectDTO::getContractId, contractId));
-        if(userContractRole != null && userContractRole.size() > 0){
+        if (userContractRole != null && userContractRole.size() > 0) {
             return JSONArray.parseArray(JSONObject.toJSONString(userContractRole), JSONObject.class);
         }
         return null;
@@ -41,4 +44,18 @@ public class SaveUserInfoByProjectClientImpl implements SaveUserInfoByProjectCli
                         .eq(SaveUserInfoByProjectDTO::getUserId, userId)
         );
     }
+
+    @Override
+    public void saveInfoRelation(Long userId, Long projectId, Long contractId, Long roleId) {
+        SaveUserInfoByProjectDTO obj = new SaveUserInfoByProjectDTO();
+        obj.setId(SnowFlakeUtil.getId());
+        obj.setUserId(String.valueOf(userId));
+        obj.setProjectId(String.valueOf(projectId));
+        obj.setContractId(String.valueOf(contractId));
+        obj.setRoleId(String.valueOf(roleId));
+        obj.setStatus(1);
+        saveUserInfoByProjectService.save(obj);
+    }
+
+
 }

+ 5 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/feign/WbsTreeContractClientImpl.java

@@ -155,6 +155,11 @@ public class WbsTreeContractClientImpl implements WbsTreeContractClient {
         return this.wbsTreeContractService.getOne(Wrappers.<WbsTreeContract>lambdaQuery().eq(WbsTreeContract::getId, id.toString()).eq(WbsTreeContract::getContractId, contractId.toString()));
     }
 
+    @Override
+    public List<WbsTreeContract> getContractWbsTreeByContractId(Long contractId) {
+        return this.wbsTreeContractService.getBaseMapper().selectList(Wrappers.<WbsTreeContract>lambdaQuery().eq(WbsTreeContract::getContractId, contractId.toString()));
+    }
+
     @Override
     public WbsTreeContract getContractWbsTreeByPrimaryKeyId(Long primaryKeyId) {
         return this.wbsTreeContractService.getOne(Wrappers.<WbsTreeContract>lambdaQuery().eq(WbsTreeContract::getPKeyId, primaryKeyId));

+ 30 - 23
blade-service/blade-user/src/main/java/org/springblade/system/user/controller/UserController.java

@@ -484,10 +484,10 @@ public class UserController {
     }
 
     /**
-     * 获取当前系统所有项目下所有合同段的当天天气
+     * 定时同步白马项目用户信息
      */
     @Scheduled(cron = "0 0 4 * * ?")
-    public void syncWeatherInfo() throws ParseException, IOException {
+    public void syncProjectUserInfo() throws ParseException, IOException {
         List<User> userList = userService.list(Wrappers.<User>lambdaQuery().in(User::getSysType, 2));
         JSONObject json = new JSONObject();
 
@@ -495,8 +495,8 @@ public class UserController {
             Date maxTime = userList.stream().max(Comparator.comparing(User::getUpdateTime)).get().getUpdateTime();
             json.put("fn", "time");
             json.put("timestamp", maxTime.getTime());
-            System.out.println("1670255453504");
-            System.out.println(maxTime.getTime());
+            //System.out.println("1670255453504");
+            //System.out.println(maxTime.getTime());
         } else {
             json.put("fn", "all");
         }
@@ -511,17 +511,17 @@ public class UserController {
                 JSONArray list = userInfo.getJSONArray("list");
 
                 if (list != null && list.size() >= 1) {
-                    for (int i=0;i<list.size();i++) {
+                    for (int i = 0; i < list.size(); i++) {
                         JSONObject jsonObject = list.getJSONObject(i);
                         String id = jsonObject.getString("id"); //人员唯一编码
                         String account = jsonObject.getString("account"); //账号
                         String password = jsonObject.getString("password"); //MD5加密后的密码
                         String name = jsonObject.getString("name"); //人员姓名
-                        String idcard = jsonObject.getString("idcard"); //身份证号
-                        String salt = jsonObject.getString("salt"); //md5密码盐
-                        String factDeptName = jsonObject.getString("factDeptName"); //部门名称
+                        String idCard = jsonObject.getString("idcard"); //身份证号
+                        //String salt = jsonObject.getString("salt"); //md5密码盐
+                        //String factDeptName = jsonObject.getString("factDeptName"); //部门名称
                         String companyName = jsonObject.getString("companyName"); //公司名称
-                        String updateTime = jsonObject.getString("updateTime"); //更新时间
+                        //String updateTime = jsonObject.getString("updateTime"); //更新时间
                         String status = jsonObject.getString("status"); //状态(1:启用  2:冻结  3:删除)
                         User newUser = new User();
                         User sysUser = userService.getOne(Wrappers.<User>lambdaQuery().eq(User::getSysId, id).eq(User::getSysType, 2));
@@ -530,28 +530,35 @@ public class UserController {
                         } else {
                             newUser.setDeptId("1588069957940674562"); //白马部门
                             newUser.setSysType(2);
-                            newUser.setIsDeleted(1);
+                            newUser.setIsDeleted(0);
                             newUser.setCreateUser(Long.parseLong("1541381503819694081"));
                             newUser.setUpdateUser(Long.parseLong("1541381503819694081"));
                             newUser.setTenantId("000000");
                             newUser.setSysId(id);
                         }
-                        newUser.setAccount(account);
-                        newUser.setRealName(name);
-                        newUser.setName(name);
-                        newUser.setPassword(password);
-                        newUser.setName(name);
-                        newUser.setStatus(Integer.parseInt(status));
-                        newUser.setIdNumber(idcard);
-                        newUser.setUpdateTime(new Date());
-                        newUser.setCreateTime(new Date());
-                        userService.submit(newUser);
+                        if (companyName.contains("白马")) {
+                            newUser.setUserType(1);
+                            newUser.setAccount(account);
+                            newUser.setRealName(name);
+                            newUser.setName(name);
+                            newUser.setPassword(password);
+                            newUser.setName(name);
+                            newUser.setStatus(Integer.parseInt(status));
+                            newUser.setIdNumber(idCard);
+                            newUser.setUpdateTime(new Date());
+                            newUser.setCreateTime(new Date());
+                            newUser.setCompanyName(companyName);
+                            userService.submit(newUser);
+
+                            //绑定项目,设置默认角色信息 白马项目id:1578599210897772545;第二期合同段id:1579773037233184770;角色施工-资料员id:1537249581371707394
+                            saveUserInfoByProjectClient.saveInfoRelation(newUser.getId(), 1578599210897772545L, 1579773037233184770L, 1537249581371707394L);
+
+                        }
                     }
                 }
-            } else {
-                System.out.println(userInfo.getString("message"));
             }
         }
-
     }
+
+
 }