Ver Fonte

1125需要变更

wanghongzhi há 1 ano atrás
pai
commit
d52cc81660

+ 9 - 0
easydo-chengfa/src/main/java/easydo/technology/controller/PurchaseController.java

@@ -59,9 +59,13 @@ public class PurchaseController {
         Map<String, Object> paramMap = new HashMap<>();
         try {
             connection = dataSource.getConnection();
+            if (map.containsKey("applySql")) {
+                paramMap.put("applySql", map.get("applySql"));
+            }
             List<Purchase> filter = jdbcClient.getJdbcList(paramMap, Purchase.class, connection);
             List<String> purchaseIdList = filter.stream().map(Purchase::getId).collect(Collectors.toList());
 
+            paramMap.clear();
             boolean isNeedIdFilter = false;
             if (map.containsKey("contractNo") && StringUtil.isNotEmpty(map.get("contractNo"))) {
                 String contractNo = map.get("contractNo").toString();
@@ -256,6 +260,7 @@ public class PurchaseController {
 
     @WebLog
     @RequestMapping(value = "/getPage2")
+    @Deprecated
     public Object getPage2(@RequestBody Map<String, Object> map) throws Exception {
         Connection connection = null;
         try {
@@ -412,6 +417,10 @@ public class PurchaseController {
             String sql = "select sum(sign_amount) as sign_amount from purchase_contract";
 
             Map<String, Object> paramMap = new HashMap<>();
+            if (map.containsKey("applySql")) {
+                paramMap.put("applySql", map.get("applySql"));
+            }
+
             PurchaseContract contract = jdbcClient.getJdbcModelByMap(paramMap, sql, PurchaseContract.class, connection);
             result.put("contractAmount", contract.getSignAmount());
 

+ 8 - 2
easydo-chengfa/src/main/java/easydo/technology/controller/PurchasePlanController.java

@@ -63,7 +63,7 @@ public class PurchasePlanController {
 
     @WebLog
     @RequestMapping(value = "/getSelectPage")
-    public Object getSelectPage(@RequestBody Map<String, Object> map)throws Exception {
+    public Object getSelectPage(@RequestBody Map<String, Object> map) throws Exception {
         Connection connection = null;
         try {
             connection = dataSource.getConnection();
@@ -95,7 +95,7 @@ public class PurchasePlanController {
 
     @WebLog
     @RequestMapping(value = "/getTongji")
-    public Object getTongji(@RequestBody Map<String, Object> map) throws Exception{
+    public Object getTongji(@RequestBody Map<String, Object> map) throws Exception {
         Map<String, Object> result = new HashMap<>();
         Connection connection = null;
         try {
@@ -105,12 +105,18 @@ public class PurchasePlanController {
             Map<String, Object> paramMap = new HashMap<>();
             paramMap.put("createTimeBegin", map.get("yearCreateTimeBegin"));
             paramMap.put("createTimeEnd", map.get("yearCreateTimeEnd"));
+            if (map.containsKey("applySql")) {
+                paramMap.put("applySql", map.get("applySql"));
+            }
             PurchasePlan purchasePlan = jdbcClient.getJdbcModelByMap(paramMap, sql, PurchasePlan.class, connection);
             result.put("yearBudgetAmount", purchasePlan.getBudgetAmount());
 
             paramMap.clear();
             paramMap.put("createTimeBegin", map.get("monthCreateTimeBegin"));
             paramMap.put("createTimeEnd", map.get("monthCreateTimeEnd"));
+            if (map.containsKey("applySql")) {
+                paramMap.put("applySql", map.get("applySql"));
+            }
             purchasePlan = jdbcClient.getJdbcModelByMap(paramMap, sql, PurchasePlan.class, connection);
             result.put("monthBudgetAmount", purchasePlan.getBudgetAmount());
 

+ 9 - 7
easydo-chengfa/src/main/java/easydo/technology/controller/UserProjectRefController.java

@@ -2,9 +2,8 @@ package easydo.technology.controller;
 
 import easydo.technology.annotation.WebLog;
 import easydo.technology.components.JdbcClient;
-import easydo.technology.model.UserProjectRef;
+import easydo.technology.system.domain.UserProjectRef;
 import easydo.technology.utils.StringUtil;
-import lombok.extern.java.Log;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -54,11 +53,14 @@ public class UserProjectRefController {
 
             jdbcClient.jdbcRemove(model, connection);
 
-            String[] projectIdArr = model.getProjectIds().split(",");
-            for (String projectId : projectIdArr) {
-                UserProjectRef ref = new UserProjectRef();
-                ref.setProjectId(Long.valueOf(projectId));
-                jdbcClient.jdbcInsert(ref, connection);
+            if (StringUtil.isNotEmpty(model.getProjectIds())) {
+                String[] projectIdArr = model.getProjectIds().split(",");
+                for (String projectId : projectIdArr) {
+                    UserProjectRef ref = new UserProjectRef();
+                    ref.setProjectId(Long.valueOf(projectId));
+                    ref.setUserId(model.getUserId());
+                    jdbcClient.jdbcInsert(ref, connection);
+                }
             }
             connection.commit();
             return new ResponseEntity<>(model, HttpStatus.OK);

+ 1 - 1
easydo-chengfa/src/main/java/easydo/technology/model/PurchaseContract.java

@@ -29,5 +29,5 @@ public class PurchaseContract extends ZeroSpringFolder<PurchaseContract> {
     private String endTime;
     private String objectId;
     private String fileName;
-
+    private Long createId;
 }

+ 1 - 0
easydo-chengfa/src/main/java/easydo/technology/quartz/task/JobTask.java

@@ -237,6 +237,7 @@ public class JobTask {
                         purchaseContract.setSupplierId(supplier.getId());
                         purchaseContract.setSupplierName(supplier.getSupplierName());
                         purchaseContract.setSupplierNo(supplier.getSupplierNo());
+                        purchaseContract.setCreateId(model.getCreateId());
                         jdbcClient.jdbcInsert(purchaseContract, connection);
                     }
                     model.setIsHaveContract(true);

+ 21 - 1
easydo-common/src/main/java/easydo/technology/utils/ResultSetUtil.java

@@ -545,7 +545,27 @@ public class ResultSetUtil {
     public static String formatRemoveSql(Object obj) throws Exception {
         String tableName = obj.getClass().getSimpleName();
         tableName = ResultSetUtil.humpToLine(tableName);
-        Map<String, Object> map = MapUtil.objectToMap(obj);
+
+        Field[] declaredFields = obj.getClass().getDeclaredFields();
+        Map<String, Object> map = new HashMap<>();
+        for (Field field : declaredFields) {
+            if ("folders".equals(field.getName()) || "serialVersionUID".equals(field.getName())) {
+                continue;
+            }
+            if (field.isAnnotationPresent(NotTableField.class)) {
+                continue;
+            }
+            if (field.isAnnotationPresent(TableField.class)) {
+                if (!field.getAnnotation(TableField.class).exist()) {
+                    continue;
+                }
+            }
+            field.setAccessible(true);
+            if (StringUtil.isEmpty(field.get(obj))) {
+                continue;
+            }
+            map.put(field.getName(), field.get(obj));
+        }
 
         String sql = "delete from " + tableName + formatSqlCondition(map);
         if (sql.endsWith("1=1 ")) {

+ 1 - 1
easydo-chengfa/src/main/java/easydo/technology/model/UserProjectRef.java

@@ -1,4 +1,4 @@
-package easydo.technology.model;
+package easydo.technology.system.domain;
 
 import easydo.technology.annotation.NotTableField;
 import lombok.Data;

+ 2 - 0
easydo-system/src/main/java/easydo/technology/system/dto/UserDto.java

@@ -43,6 +43,8 @@ public class UserDto extends CommonDto {
 
     private String avatarPath;
 
+    private String projectIds;
+
     @JsonIgnore
     private String password;
 

+ 12 - 0
easydo-system/src/main/java/easydo/technology/system/security/rest/AuthorizationController.java

@@ -20,9 +20,11 @@ import easydo.technology.annotation.WebLog;
 import easydo.technology.annotation.rest.AnonymousDeleteMapping;
 import easydo.technology.annotation.rest.AnonymousGetMapping;
 import easydo.technology.annotation.rest.AnonymousPostMapping;
+import easydo.technology.components.JdbcClient;
 import easydo.technology.config.RsaProperties;
 import easydo.technology.exception.BadRequestException;
 import easydo.technology.system.domain.Dept;
+import easydo.technology.system.domain.UserProjectRef;
 import easydo.technology.system.security.config.bean.LoginCodeEnum;
 import easydo.technology.system.security.config.bean.LoginProperties;
 import easydo.technology.system.security.config.bean.SecurityProperties;
@@ -52,6 +54,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.UUID;
 import java.util.concurrent.TimeUnit;
+import java.util.stream.Collectors;
 
 /**
  * @author Zheng Jie
@@ -70,6 +73,7 @@ public class AuthorizationController {
     private final AuthenticationManagerBuilder authenticationManagerBuilder;
     private final DeptService deptService;
     private final LoginProperties loginProperties;
+    private final JdbcClient jdbcClient;
 
     @AnonymousPostMapping(value = "/login")
     public ResponseEntity<Object> login(@Validated @RequestBody AuthUserDto authUser, HttpServletRequest request)
@@ -107,6 +111,14 @@ public class AuthorizationController {
                 }
             }
         }
+        UserProjectRef userProjectRef = new UserProjectRef();
+        userProjectRef.setUserId(jwtUserDto.getUser().getId());
+        List<UserProjectRef> projectRefList = jdbcClient.getJdbcList(userProjectRef);
+        if (!projectRefList.isEmpty()) {
+            String projectIds = projectRefList.stream().map(UserProjectRef::getProjectId).map(String::valueOf).collect(Collectors.joining(","));
+            jwtUserDto.getUser().setProjectIds(projectIds);
+        }
+
         // 保存在线信息
         onlineUserService.save(jwtUserDto, token, request);
         // 返回 token 与 用户信息