From cf28a6bc97dbb2589151c5365a129b835991319f Mon Sep 17 00:00:00 2001
From: liuleilei <234@qq.com>
Date: 星期一, 18 十二月 2023 10:09:03 +0800
Subject: [PATCH] 员工列表

---
 server/dmvisit_service/src/main/java/com/doumee/dao/business/join/EmpowerJoinMapper.java      |   13 ++
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/EmpowerServiceImpl.java |  132 ++++++++++---------------
 server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java               |  112 ++++++++++++++-------
 3 files changed, 141 insertions(+), 116 deletions(-)

diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/join/EmpowerJoinMapper.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/join/EmpowerJoinMapper.java
new file mode 100644
index 0000000..7b7548b
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/join/EmpowerJoinMapper.java
@@ -0,0 +1,13 @@
+package com.doumee.dao.business.join;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.Empower;
+import com.github.yulichang.base.mapper.MPJJoinMapper;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/11/30 15:33
+ */
+public interface EmpowerJoinMapper extends MPJJoinMapper<Empower> {
+
+}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java
index 41e5093..a174a5c 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java
@@ -1,5 +1,6 @@
 package com.doumee.dao.business.model;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.doumee.core.annotation.excel.ExcelColumn;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -22,95 +23,130 @@
 
     @TableId(type = IdType.AUTO)
     @ApiModelProperty(value = "涓婚敭", example = "1")
-    @ExcelColumn(name="涓婚敭")
     private Integer id;
 
     @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�")
-    @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
     private String creator;
 
-    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
-    @ExcelColumn(name="鍒涘缓鏃堕棿")
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    private Date createDate;
+
 
     @ApiModelProperty(value = "鏇存柊浜虹紪鐮�")
-    @ExcelColumn(name="鏇存柊浜虹紪鐮�")
     private String edirot;
 
     @ApiModelProperty(value = "鏇存柊鏃堕棿")
-    @ExcelColumn(name="鏇存柊鏃堕棿")
     @JsonFormat(pattern = "yyyy-MM-dd")
     private Date editDate;
 
     @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
-    @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
     private Integer isdeleted;
 
     @ApiModelProperty(value = "澶囨敞")
-    @ExcelColumn(name="澶囨敞")
     private String remark;
 
     @ApiModelProperty(value = "棰勭害鏍囪瘑", example = "1")
-    @ExcelColumn(name="棰勭害鏍囪瘑")
     private String hkId;
 
     @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
-    @ExcelColumn(name="鎺掑簭鐮�")
     private Integer sortnum;
 
     @ApiModelProperty(value = "浜哄憳缂栫爜", example = "1")
-    @ExcelColumn(name="浜哄憳缂栫爜")
     private Integer memberId;
 
-    @ApiModelProperty(value = "闂ㄧ鏈夋晥鏈熷紑濮�")
-    @ExcelColumn(name="闂ㄧ鏈夋晥鏈熷紑濮�")
-    private Date startTime;
 
-    @ApiModelProperty(value = "闂ㄧ鏈夋晥鏈熺粨鏉�", example = "1")
-    @ExcelColumn(name="闂ㄧ鏈夋晥鏈熺粨鏉�")
-    private Date endTime;
 
     @ApiModelProperty(value = "瀵煎叆鐘舵��", example = "1")
-    @ExcelColumn(name="瀵煎叆鐘舵��")
     private Integer importStatus;
 
     @ApiModelProperty(value = "瀵煎叆澶囨敞")
-    @ExcelColumn(name="瀵煎叆澶囨敞")
     private String importInfo;
 
-    @ApiModelProperty(value = "涓嬪彂鐘舵�� 0寰呬笅鍙� 1宸蹭笅鍙� 2宸插彇娑�", example = "1")
-    @ExcelColumn(name="涓嬪彂鐘舵�� 0寰呬笅鍙� 1宸蹭笅鍙� 2宸插彇娑�")
-    private Integer sendStatus;
 
-    @ApiModelProperty(value = "涓嬪彂绫诲瀷 0瀹炴椂 1瀹氭椂 ", example = "1")
-    @ExcelColumn(name="涓嬪彂绫诲瀷 0瀹炴椂 1瀹氭椂 ")
-    private Integer sendType;
 
-    @ApiModelProperty(value = "涓嬪彂澶囨敞")
-    @ExcelColumn(name="涓嬪彂澶囨敞")
-    private String sendInfo;
 
-    @ApiModelProperty(value = "涓嬪彂鏃堕棿")
-    @ExcelColumn(name="涓嬪彂鏃堕棿")
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    private Date sendDate;
 
     @ApiModelProperty(value = "涓嬪彂浜哄憳", example = "1")
-    @ExcelColumn(name="涓嬪彂浜哄憳")
     private Integer sendUserId;
 
     @ApiModelProperty(value = "鍙栨秷浜哄憳", example = "1")
-    @ExcelColumn(name="鍙栨秷浜哄憳")
     private Integer cancelUserId;
 
     @ApiModelProperty(value = "鍙栨秷鏃堕棿")
-    @ExcelColumn(name="鍙栨秷鏃堕棿")
     @JsonFormat(pattern = "yyyy-MM-dd")
     private Date cancelDate;
 
     @ApiModelProperty(value = "鍙栨秷澶囨敞")
-    @ExcelColumn(name="鍙栨秷澶囨敞")
     private String cANCElInfo;
 
+    @ApiModelProperty(value = "鎵�灞炲叕鍙哥紪鐮�")
+    @TableField(exist = false)
+    private String companyId;
+
+    @ApiModelProperty(value = "濮撳悕")
+    @ExcelColumn(name="濮撳悕",index = 1)
+    @TableField(exist = false)
+    private String memberName;
+
+    @ApiModelProperty(value = "鎵嬫満鍙�")
+    @ExcelColumn(name="鎵嬫満鍙�" ,index = 2)
+    @TableField(exist = false)
+    private String memberPhone;
+
+    @ApiModelProperty(value = "韬唤璇�")
+    @ExcelColumn(name="韬唤璇�",index= 3)
+    @TableField(exist = false)
+    private String memberidCard;
+
+    @ApiModelProperty(value = "鎵�灞炲叕鍙�")
+    @ExcelColumn(name="鎵�灞炲叕鍙�",index= 4)
+    @TableField(exist = false)
+    private String companyName;
+
+    @ApiModelProperty(value = "闂ㄧ鏈夋晥鏈熷紑濮�")
+    @ExcelColumn(name="闂ㄧ鏈夋晥鏈熷紑濮�",index= 5,dateFormat = "yyyy-MM-dd")
+    private Date startTime;
+
+    @ApiModelProperty(value = "闂ㄧ鏈夋晥鏈熺粨鏉�", example = "1")
+    @ExcelColumn(name="闂ㄧ鏈夋晥鏈熺粨鏉�",index= 6,dateFormat = "yyyy-MM-dd")
+    private Date endTime;
+
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    @ExcelColumn(name="鍒涘缓鏃堕棿",index= 7,dateFormat = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date createDate;
+
+    @ApiModelProperty(value = "鎿嶄綔浜�")
+    @ExcelColumn(name="鎿嶄綔浜�",index= 7)
+    @TableField(exist = false)
+    private String createrName;
+
+    @ApiModelProperty(value = "涓嬪彂鐘舵�� 0寰呬笅鍙� 1宸蹭笅鍙� 2宸插彇娑�", example = "1")
+    @ExcelColumn(name="涓嬪彂鐘舵��",index= 8,valueMapping ="0=寰呬笅鍙�;1=宸蹭笅鍙�;2=宸插彇娑�" )
+    private Integer sendStatus;
+
+    @ApiModelProperty(value = "涓嬪彂绫诲瀷 0瀹炴椂 1瀹氭椂 ", example = "1")
+    @ExcelColumn(name="涓嬪彂绫诲瀷",index= 9,valueMapping ="0=瀹炴椂;1=瀹氭椂" )
+    private Integer sendType;
+
+
+
+    @ApiModelProperty(value = "涓嬪彂鏃堕棿")
+    @ExcelColumn(name="涓嬪彂鏃堕棿",index= 10,dateFormat = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date sendDate;
+
+    @ApiModelProperty(value = "涓嬪彂澶囨敞")
+    @ExcelColumn(name="涓嬪彂澶囨敞",index= 11)
+    private String sendInfo;
+
+    @ApiModelProperty(value = "涓嬪彂寮�濮嬫椂闂�")
+    @TableField(exist = false)
+    private String sendStartDate;
+    @ApiModelProperty(value = "涓嬪彂缁撴潫鏃堕棿")
+    @TableField(exist = false)
+    private String sendEndDate;
+
+    @ApiModelProperty(value = "鏃堕棿娈�0锛�7,30")
+    @TableField(exist = false)
+    private Integer timeDn;
+
 }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/EmpowerServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/EmpowerServiceImpl.java
index a5bceb9..d75a56b 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/EmpowerServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/EmpowerServiceImpl.java
@@ -2,19 +2,31 @@
 
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.Date;
 import com.doumee.core.utils.Utils;
+import com.doumee.dao.admin.response.MemberInfoDTO;
 import com.doumee.dao.business.EmpowerMapper;
+import com.doumee.dao.business.join.EmpowerJoinMapper;
+import com.doumee.dao.business.model.Company;
 import com.doumee.dao.business.model.Empower;
+import com.doumee.dao.business.model.Member;
+import com.doumee.dao.system.model.SystemUser;
 import com.doumee.service.business.EmpowerService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
+import java.text.SimpleDateFormat;
+import java.util.Calendar;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * 浜哄憳鎺堟潈瀵煎叆璁板綍Service瀹炵幇
@@ -26,6 +38,10 @@
 
     @Autowired
     private EmpowerMapper empowerMapper;
+
+    @Autowired
+    private EmpowerJoinMapper empowerJoinMapper;
+
 
     @Override
     public Integer create(Empower empower) {
@@ -87,86 +103,46 @@
     @Override
     public PageData<Empower> findPage(PageWrap<Empower> pageWrap) {
         IPage<Empower> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
-        QueryWrapper<Empower> queryWrapper = new QueryWrapper<>();
-        Utils.MP.blankToNull(pageWrap.getModel());
-        if (pageWrap.getModel().getId() != null) {
-            queryWrapper.lambda().eq(Empower::getId, pageWrap.getModel().getId());
-        }
-        if (pageWrap.getModel().getCreator() != null) {
-            queryWrapper.lambda().eq(Empower::getCreator, pageWrap.getModel().getCreator());
-        }
-        if (pageWrap.getModel().getCreateDate() != null) {
-            queryWrapper.lambda().ge(Empower::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
-            queryWrapper.lambda().le(Empower::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
-        }
-        if (pageWrap.getModel().getEdirot() != null) {
-            queryWrapper.lambda().eq(Empower::getEdirot, pageWrap.getModel().getEdirot());
-        }
-        if (pageWrap.getModel().getEditDate() != null) {
-            queryWrapper.lambda().ge(Empower::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
-            queryWrapper.lambda().le(Empower::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
-        }
-        if (pageWrap.getModel().getIsdeleted() != null) {
-            queryWrapper.lambda().eq(Empower::getIsdeleted, pageWrap.getModel().getIsdeleted());
-        }
-        if (pageWrap.getModel().getRemark() != null) {
-            queryWrapper.lambda().eq(Empower::getRemark, pageWrap.getModel().getRemark());
-        }
-        if (pageWrap.getModel().getHkId() != null) {
-            queryWrapper.lambda().eq(Empower::getHkId, pageWrap.getModel().getHkId());
-        }
-        if (pageWrap.getModel().getSortnum() != null) {
-            queryWrapper.lambda().eq(Empower::getSortnum, pageWrap.getModel().getSortnum());
-        }
-        if (pageWrap.getModel().getMemberId() != null) {
-            queryWrapper.lambda().eq(Empower::getMemberId, pageWrap.getModel().getMemberId());
-        }
-        if (pageWrap.getModel().getStartTime() != null) {
-            queryWrapper.lambda().eq(Empower::getStartTime, pageWrap.getModel().getStartTime());
-        }
-        if (pageWrap.getModel().getEndTime() != null) {
-            queryWrapper.lambda().eq(Empower::getEndTime, pageWrap.getModel().getEndTime());
-        }
-        if (pageWrap.getModel().getImportStatus() != null) {
-            queryWrapper.lambda().eq(Empower::getImportStatus, pageWrap.getModel().getImportStatus());
-        }
-        if (pageWrap.getModel().getImportInfo() != null) {
-            queryWrapper.lambda().eq(Empower::getImportInfo, pageWrap.getModel().getImportInfo());
-        }
-        if (pageWrap.getModel().getSendStatus() != null) {
-            queryWrapper.lambda().eq(Empower::getSendStatus, pageWrap.getModel().getSendStatus());
-        }
-        if (pageWrap.getModel().getSendType() != null) {
-            queryWrapper.lambda().eq(Empower::getSendType, pageWrap.getModel().getSendType());
-        }
-        if (pageWrap.getModel().getSendInfo() != null) {
-            queryWrapper.lambda().eq(Empower::getSendInfo, pageWrap.getModel().getSendInfo());
-        }
-        if (pageWrap.getModel().getSendDate() != null) {
-            queryWrapper.lambda().ge(Empower::getSendDate, Utils.Date.getStart(pageWrap.getModel().getSendDate()));
-            queryWrapper.lambda().le(Empower::getSendDate, Utils.Date.getEnd(pageWrap.getModel().getSendDate()));
-        }
-        if (pageWrap.getModel().getSendUserId() != null) {
-            queryWrapper.lambda().eq(Empower::getSendUserId, pageWrap.getModel().getSendUserId());
-        }
-        if (pageWrap.getModel().getCancelUserId() != null) {
-            queryWrapper.lambda().eq(Empower::getCancelUserId, pageWrap.getModel().getCancelUserId());
-        }
-        if (pageWrap.getModel().getCancelDate() != null) {
-            queryWrapper.lambda().ge(Empower::getCancelDate, Utils.Date.getStart(pageWrap.getModel().getCancelDate()));
-            queryWrapper.lambda().le(Empower::getCancelDate, Utils.Date.getEnd(pageWrap.getModel().getCancelDate()));
-        }
-        if (pageWrap.getModel().getCANCElInfo() != null) {
-            queryWrapper.lambda().eq(Empower::getCANCElInfo, pageWrap.getModel().getCANCElInfo());
-        }
-        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
-            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
-                queryWrapper.orderByDesc(sortData.getProperty());
-            } else {
-                queryWrapper.orderByAsc(sortData.getProperty());
+        MPJLambdaWrapper<Empower> queryWrapper = new MPJLambdaWrapper<>();
+
+        queryWrapper.selectAll(Empower.class);
+        queryWrapper.selectAs(Member::getName,Empower::getMemberName);
+        queryWrapper.selectAs(Member::getPhone,Empower::getMemberPhone);
+        queryWrapper.selectAs(Member::getIdcardNo,Empower::getMemberidCard);
+        queryWrapper.selectAs(Company::getName,Empower::getCompanyName);
+        queryWrapper.selectAs(SystemUser::getUsername,Empower::getCreaterName);
+        queryWrapper.leftJoin(Member.class,Member::getId,Empower::getMemberId);
+        queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId);
+        queryWrapper.leftJoin(SystemUser.class,SystemUser::getId,Empower::getCreator);
+
+        queryWrapper.eq(Empower::getIsdeleted, Constants.ZERO)
+                .and(StringUtils.isNotBlank(pageWrap.getModel().getMemberName()), ms->ms.like(Member::getName,pageWrap.getModel().getMemberName())
+                .or().like(Member::getPhone,pageWrap.getModel().getCompanyName()));
+        queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getSendStatus()),Empower::getSendStatus,pageWrap.getModel().getSendStatus());
+        queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getCompanyId()),Company::getId,pageWrap.getModel().getCompanyId());
+        queryWrapper.ge(Objects.nonNull(pageWrap.getModel().getSendStartDate()),Empower::getSendDate,pageWrap.getModel().getSendStartDate());
+        queryWrapper.le(Objects.nonNull(pageWrap.getModel().getSendEndDate()),Empower::getSendDate,pageWrap.getModel().getSendEndDate());
+
+        SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");
+        Calendar cal=Calendar.getInstance();
+        if(Objects.nonNull(pageWrap.getModel().getTimeDn())){
+            if(Constants.equalsInteger(pageWrap.getModel().getTimeDn(),0)){
+                String now=format.format(cal.getTime())+" :00:00:00";
+                queryWrapper.ge(Empower::getSendDate,now);
+            }
+            if(Constants.equalsInteger(pageWrap.getModel().getTimeDn(),7)){
+
+                cal.add(Calendar.DAY_OF_MONTH,-7);
+                queryWrapper.ge(Empower::getSendDate,cal.getTime());
+            }
+            if(Constants.equalsInteger(pageWrap.getModel().getTimeDn(),30)){
+                cal.add(Calendar.DAY_OF_MONTH,-30);
+                queryWrapper.ge(Empower::getSendDate,cal.getTime());
             }
         }
-        return PageData.from(empowerMapper.selectPage(page, queryWrapper));
+        queryWrapper.orderByDesc(Empower::getCreateDate);
+        IPage<Empower> result = empowerJoinMapper.selectJoinPage(page, Empower.class,queryWrapper);
+        return PageData.from(result);
     }
 
     @Override

--
Gitblit v1.9.3