2 Commits ade6b62c7e ... e3d7cc8e0b

Author SHA1 Message Date
  wujiefeng e3d7cc8e0b Merge remote-tracking branch 'origin/master' 1 year ago
  wujiefeng 7e762b3b12 请假记录筛选条件 1 year ago

+ 9 - 0
FullCardClient/src/main/java/com/zhongshu/card/client/model/attendance/LeaveQueryParam.java

@@ -38,6 +38,15 @@ public class LeaveQueryParam {
     @Schema(description = "申请人姓名")
     private String leaveUserName;
 
+    @Schema(description = "申请人电话")
+    private String leaveUserPhone;
+
     @Schema(description = "审批人姓名")
     private String approvalUserName;
+
+    @Schema(description = "审核时间开始")
+    private Long approvalStartTime;
+
+    @Schema(description = "审核时间结束")
+    private Long approvalEndTime;
 }

+ 8 - 0
FullCardServer/src/main/java/com/zhongshu/card/server/core/controller/attendance/LeaveController.java

@@ -61,4 +61,12 @@ public class LeaveController {
                               @Parameter(required = false) LeaveQueryParam param){
         return leaveService.page(pageable,param);
     }
+
+    @Operation(summary = "应用管理-请假申请列表(分页)", description = "应用管理-请假申请列表(分页)")
+    @RequestMapping(value = "pageLeave", method = {RequestMethod.POST})
+    @ResourceAuth(value = "user", type = AuthType.User)
+    public ResultContent pageLeave(@Parameter(hidden = true) @PageableDefault(page = 0, size = 10)Pageable pageable,
+                              @Parameter(required = false) LeaveQueryParam param){
+        return leaveService.pageLeave(pageable,param);
+    }
 }

+ 8 - 0
FullCardServer/src/main/java/com/zhongshu/card/server/core/controller/pay/balance/RechargeController.java

@@ -1,5 +1,7 @@
 package com.zhongshu.card.server.core.controller.pay.balance;
 
+import com.github.microservice.auth.security.annotations.ResourceAuth;
+import com.github.microservice.auth.security.type.AuthType;
 import com.github.microservice.pay.client.ret.ResultContent;
 import com.zhongshu.card.client.model.pay.QueryRechargeParam;
 import com.zhongshu.card.client.model.pay.RechargeParam;
@@ -23,30 +25,35 @@ public class RechargeController {
 
     @Operation(summary = "余额充值", description = "余额充值")
     @RequestMapping(value = "recharge", method = RequestMethod.POST)
+    @ResourceAuth(value = "user", type = AuthType.User)
     public Object recharge(@RequestBody RechargeParam param){
         return balancePayService.recharge(param);
     }
 
     @Operation(summary = "查询充值记录", description = "查询充值记录")
     @RequestMapping(value = "queryRechargeOrder", method = RequestMethod.POST)
+    @ResourceAuth(value = "user", type = AuthType.User)
     public Object queryRechargeOrder(@RequestBody QueryRechargeParam param){
         return balancePayService.queryRechargeOrder(param);
     }
 
     @Operation(summary = "查询用户余额", description = "查询用户余额")
     @RequestMapping(value = "queryUserBalance", method = RequestMethod.GET)
+    @ResourceAuth(value = "user", type = AuthType.User)
     public Object queryUserBalance(@RequestParam(value = "projectOid", required = false) String projectOid, @RequestParam(value = "userId", required = false) String userId){
         return balancePayService.queryUserBalance(projectOid, userId);
     }
 
     @Operation(summary = "查询充值订单详情", description = "查询充值订单详情")
     @RequestMapping(value = "queryInfo", method = RequestMethod.GET)
+    @ResourceAuth(value = "user", type = AuthType.User)
     public Object queryInfo(@RequestParam("orderNo") String orderNo){
         return balancePayService.queryInfo(orderNo);
     }
 
     @Operation(summary = "关闭充值订单", description = "关闭充值订单(只有待支付状态时可以关闭)")
     @RequestMapping(value = "close", method = RequestMethod.GET)
+    @ResourceAuth(value = "user", type = AuthType.User)
     public Object close(@RequestParam("orderNo") String orderNo){
         return balancePayService.close(orderNo);
     }
@@ -59,6 +66,7 @@ public class RechargeController {
 
     @Operation(summary = "分页查询充值订单", description = "分页查询充值订单")
     @RequestMapping(value = "page", method = RequestMethod.POST)
+    @ResourceAuth(value = "user", type = AuthType.User)
     public Object page(@Parameter(hidden = true) @PageableDefault(page = 0, size = 10) Pageable pageable,
                        @Parameter(required = false) RechargeSearchParam param){
         return balancePayService.page(pageable, param);

+ 1 - 1
FullCardServer/src/main/java/com/zhongshu/card/server/core/dao/attendance/extend/LeaveApprovalDaoExtend.java

@@ -11,7 +11,7 @@ import java.util.List;
 
 public interface LeaveApprovalDaoExtend {
 
-    Page<LeaveApproval> page(Pageable pageable, LeaveQueryType queryType, String projectId, String sceneId, String userId, Long startTime, Long endTime, List<String> leaveType, List<LeaveStatus> leaveStatus, String approvalUserName, String leaveUserName);
+    Page<LeaveApproval> page(Pageable pageable, LeaveQueryType queryType, String projectId, String sceneId, String userId, Long startTime, Long endTime, List<String> leaveType, List<LeaveStatus> leaveStatus, String approvalUserName, String leaveUserName, String leaveUserPhone, Long approvalStartTime, Long approvalEndTime);
 
     Page<LeaveApproval> openApiPage(Pageable pageable, PageLeaveOpenApiParam param);
 }

+ 24 - 4
FullCardServer/src/main/java/com/zhongshu/card/server/core/dao/attendance/impl/LeaveApprovalDaoImpl.java

@@ -24,7 +24,7 @@ public class LeaveApprovalDaoImpl implements LeaveApprovalDaoExtend {
     DBHelper dbHelper;
 
     @Override
-    public Page<LeaveApproval> page(Pageable pageable, LeaveQueryType queryType, String projectId, String sceneId, String userId, Long startTime, Long endTime, List<String> leaveType, List<LeaveStatus> leaveStatus, String approvalUserName, String leaveUserName) {
+    public Page<LeaveApproval> page(Pageable pageable, LeaveQueryType queryType, String projectId, String sceneId, String userId, Long startTime, Long endTime, List<String> leaveType, List<LeaveStatus> leaveStatus, String approvalUserName, String leaveUserName, String leaveUserPhone, Long approvalStartTime, Long approvalEndTime) {
         Criteria criteria = new Criteria();
 
         if (StringUtils.isNotBlank(projectId)){
@@ -39,9 +39,13 @@ public class LeaveApprovalDaoImpl implements LeaveApprovalDaoExtend {
             criteria.and("leaveType").in(leaveType);
         }
 
-//        if (leaveStatus != null && !leaveStatus.isEmpty()){
-//            criteria.and("leaveStatus").in(leaveStatus);
-//        }
+        if (startTime != null && endTime == null){
+            criteria.and("createTime").gte(startTime);
+        }
+
+        if (startTime == null && endTime != null){
+            criteria.and("createTime").lte(endTime);
+        }
 
         if (startTime != null && endTime != null){
             criteria.and("createTime").gte(startTime).lte(endTime);
@@ -57,6 +61,22 @@ public class LeaveApprovalDaoImpl implements LeaveApprovalDaoExtend {
             criteria.and("leaveUserName").regex(leaveUserNamePattern);
         }
 
+        if (StringUtils.isNotBlank(leaveUserPhone)){
+            criteria.and("leaveUserPhone").is(leaveUserPhone);
+        }
+
+        if (approvalStartTime != null && approvalEndTime ==null){
+            criteria.and("approvalTime").gte(approvalStartTime);
+        }
+
+        if (approvalStartTime == null && approvalEndTime != null){
+            criteria.and("approvalTime").lte(approvalEndTime);
+        }
+
+        if (approvalStartTime != null && approvalEndTime != null){
+            criteria.and("approvalTime").gte(approvalStartTime).lte(approvalEndTime);
+        }
+
         if (LeaveQueryType.Wait.equals(queryType)){
             criteria.and("leaveStatus").is(LeaveStatus.Wait);
             criteria.and("approvalUser").is(userId);

+ 4 - 0
FullCardServer/src/main/java/com/zhongshu/card/server/core/domain/attendance/LeaveApproval.java

@@ -60,4 +60,8 @@ public class LeaveApproval extends SuperEntity {
 
     @Indexed
     private String leaveUserName;
+
+    //请假人手机
+    @Indexed
+    private String leaveUserPhone;
 }

+ 14 - 1
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/attendance/LeaveService.java

@@ -130,6 +130,7 @@ public class LeaveService extends SuperService {
         }
         leaveApproval.setLeaveUser(currentUserId);
         leaveApproval.setLeaveUserName(leaveUserAccount.getName());
+        leaveApproval.setLeaveUserPhone(leaveUserAccount.getPhone());
 
         leaveApproval.setLeaveStatus(LeaveStatus.Wait);
         leaveApprovalDao.save(leaveApproval);
@@ -179,7 +180,19 @@ public class LeaveService extends SuperService {
         }
 
         String userId = authHelper.getCurrentUser().getUserId();
-        Page<LeaveApproval> page = leaveApprovalDao.page(pageable, param.getLeaveQueryType(), projectId, param.getSceneId(), userId, startTime, param.getEndTime(), param.getLeaveType(), param.getLeaveStatus(), param.getApprovalUserName(), param.getLeaveUserName());
+        Page<LeaveApproval> page = leaveApprovalDao.page(pageable, param.getLeaveQueryType(), projectId, param.getSceneId(), userId, startTime, param.getEndTime(), param.getLeaveType(), param.getLeaveStatus(), param.getApprovalUserName(), param.getLeaveUserName(), param.getLeaveUserPhone(), param.getApprovalStartTime(), param.getApprovalEndTime());
+        return ResultContent.buildContent(PageEntityUtil.concurrent2PageModel(page, this::toModel));
+    }
+
+    public ResultContent pageLeave(Pageable pageable, LeaveQueryParam param) {
+
+        String projectId = param.getProjectId();
+        if (StringUtils.isBlank(projectId)){
+            projectId = getCurrentProjectOid();
+        }
+
+        String userId = authHelper.getCurrentUser().getUserId();
+        Page<LeaveApproval> page = leaveApprovalDao.page(pageable, param.getLeaveQueryType(), projectId, param.getSceneId(), userId, param.getStartTime(), param.getEndTime(), param.getLeaveType(), param.getLeaveStatus(), param.getApprovalUserName(), param.getLeaveUserName(), param.getLeaveUserPhone(), param.getApprovalStartTime(), param.getApprovalEndTime());
         return ResultContent.buildContent(PageEntityUtil.concurrent2PageModel(page, this::toModel));
     }