Explorar el Código

优化考勤人员信息

Your Name hace 3 años
padre
commit
e24c1fb5dc

+ 33 - 13
java110-bean/src/main/java/com/java110/dto/attendanceClassesStaff/AttendanceClassesStaffDto.java

@@ -1,6 +1,7 @@
 package com.java110.dto.attendanceClassesStaff;
 package com.java110.dto.attendanceClassesStaff;
 
 
 import com.java110.dto.PageDto;
 import com.java110.dto.PageDto;
+
 import java.io.Serializable;
 import java.io.Serializable;
 import java.util.Date;
 import java.util.Date;
 
 
@@ -15,45 +16,56 @@ import java.util.Date;
 public class AttendanceClassesStaffDto extends PageDto implements Serializable {
 public class AttendanceClassesStaffDto extends PageDto implements Serializable {
 
 
     private String classesId;
     private String classesId;
-private String csId;
-private String staffName;
-private String storeId;
-private String staffId;
+    private String csId;
+    private String staffName;
+    private String storeId;
+    private String staffId;
 
 
 
 
     private Date createTime;
     private Date createTime;
 
 
     private String statusCd = "0";
     private String statusCd = "0";
 
 
+    private String personFace;
+
 
 
     public String getClassesId() {
     public String getClassesId() {
         return classesId;
         return classesId;
     }
     }
-public void setClassesId(String classesId) {
+
+    public void setClassesId(String classesId) {
         this.classesId = classesId;
         this.classesId = classesId;
     }
     }
-public String getCsId() {
+
+    public String getCsId() {
         return csId;
         return csId;
     }
     }
-public void setCsId(String csId) {
+
+    public void setCsId(String csId) {
         this.csId = csId;
         this.csId = csId;
     }
     }
-public String getStaffName() {
+
+    public String getStaffName() {
         return staffName;
         return staffName;
     }
     }
-public void setStaffName(String staffName) {
+
+    public void setStaffName(String staffName) {
         this.staffName = staffName;
         this.staffName = staffName;
     }
     }
-public String getStoreId() {
+
+    public String getStoreId() {
         return storeId;
         return storeId;
     }
     }
-public void setStoreId(String storeId) {
+
+    public void setStoreId(String storeId) {
         this.storeId = storeId;
         this.storeId = storeId;
     }
     }
-public String getStaffId() {
+
+    public String getStaffId() {
         return staffId;
         return staffId;
     }
     }
-public void setStaffId(String staffId) {
+
+    public void setStaffId(String staffId) {
         this.staffId = staffId;
         this.staffId = staffId;
     }
     }
 
 
@@ -73,4 +85,12 @@ public void setStaffId(String staffId) {
     public void setStatusCd(String statusCd) {
     public void setStatusCd(String statusCd) {
         this.statusCd = statusCd;
         this.statusCd = statusCd;
     }
     }
+
+    public String getPersonFace() {
+        return personFace;
+    }
+
+    public void setPersonFace(String personFace) {
+        this.personFace = personFace;
+    }
 }
 }

+ 42 - 0
service-common/src/main/java/com/java110/common/cmd/attendanceClasses/ListAttendanceClassesStaffCmd.java

@@ -20,7 +20,12 @@ import com.java110.core.annotation.Java110Cmd;
 import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.event.cmd.CmdEvent;
+import com.java110.dto.accessControlWhite.AccessControlWhiteDto;
+import com.java110.dto.file.FileRelDto;
+import com.java110.intf.common.IFileRelInnerServiceSMO;
 import com.java110.intf.user.IAttendanceClassesStaffV1InnerServiceSMO;
 import com.java110.intf.user.IAttendanceClassesStaffV1InnerServiceSMO;
+import com.java110.utils.cache.MappingCache;
+import com.java110.utils.constant.MappingConstant;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.utils.util.BeanConvertUtil;
@@ -54,6 +59,10 @@ public class ListAttendanceClassesStaffCmd extends Cmd {
     @Autowired
     @Autowired
     private IAttendanceClassesStaffV1InnerServiceSMO attendanceClassesStaffV1InnerServiceSMOImpl;
     private IAttendanceClassesStaffV1InnerServiceSMO attendanceClassesStaffV1InnerServiceSMOImpl;
 
 
+
+    @Autowired
+    private IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl;
+
     @Override
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         super.validatePageInfo(reqJson);
         super.validatePageInfo(reqJson);
@@ -74,6 +83,7 @@ public class ListAttendanceClassesStaffCmd extends Cmd {
 
 
         if (count > 0) {
         if (count > 0) {
             attendanceClassesStaffDtos = attendanceClassesStaffV1InnerServiceSMOImpl.queryAttendanceClassesStaffs(attendanceClassesStaffDto);
             attendanceClassesStaffDtos = attendanceClassesStaffV1InnerServiceSMOImpl.queryAttendanceClassesStaffs(attendanceClassesStaffDto);
+            refreshPhoto(attendanceClassesStaffDtos);
         } else {
         } else {
             attendanceClassesStaffDtos = new ArrayList<>();
             attendanceClassesStaffDtos = new ArrayList<>();
         }
         }
@@ -84,4 +94,36 @@ public class ListAttendanceClassesStaffCmd extends Cmd {
 
 
         cmdDataFlowContext.setResponseEntity(responseEntity);
         cmdDataFlowContext.setResponseEntity(responseEntity);
     }
     }
+
+    private void refreshPhoto(List<AttendanceClassesStaffDto> attendanceClassesStaffDtos) {
+        if (attendanceClassesStaffDtos == null || attendanceClassesStaffDtos.size() < 1) {
+            return;
+        }
+
+        List<String> csId = new ArrayList<>();
+        for (AttendanceClassesStaffDto attendanceClassesStaffDto : attendanceClassesStaffDtos) {
+            csId.add(attendanceClassesStaffDto.getCsId());
+        }
+
+        FileRelDto fileRelDto = new FileRelDto();
+        fileRelDto.setObjIds(csId.toArray(new String[csId.size()]));
+        List<FileRelDto> fileRelDtos = fileRelInnerServiceSMOImpl.queryFileRels(fileRelDto);
+
+        if (fileRelDtos == null || fileRelDtos.size() < 1) {
+            return;
+        }
+        String imgUrl = MappingCache.getValue(MappingConstant.FILE_DOMAIN, "IMG_PATH");
+        for (AttendanceClassesStaffDto attendanceClassesStaffDto : attendanceClassesStaffDtos) {
+            for (FileRelDto tmpFileRelDto : fileRelDtos) {
+                if (!attendanceClassesStaffDto.getCsId().equals(tmpFileRelDto.getObjId())) {
+                    continue;
+                }
+                if (tmpFileRelDto.getFileSaveName().startsWith("http")) {
+                    attendanceClassesStaffDto.setPersonFace(tmpFileRelDto.getFileSaveName());
+                } else {
+                    attendanceClassesStaffDto.setPersonFace(imgUrl + tmpFileRelDto.getFileSaveName());
+                }
+            }
+        }
+    }
 }
 }

+ 21 - 1
service-common/src/main/java/com/java110/common/cmd/attendanceClasses/SaveAttendanceClassesStaffCmd.java

@@ -22,7 +22,10 @@ import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.core.smo.IPhotoSMO;
+import com.java110.dto.user.UserDto;
 import com.java110.intf.user.IAttendanceClassesStaffV1InnerServiceSMO;
 import com.java110.intf.user.IAttendanceClassesStaffV1InnerServiceSMO;
+import com.java110.intf.user.IUserV1InnerServiceSMO;
 import com.java110.po.attendanceClassesStaff.AttendanceClassesStaffPo;
 import com.java110.po.attendanceClassesStaff.AttendanceClassesStaffPo;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.Assert;
@@ -32,6 +35,8 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
 
 
+import java.util.List;
+
 /**
 /**
  * 类表述:保存
  * 类表述:保存
  * 服务编码:attendanceClassesStaff.saveAttendanceClassesStaff
  * 服务编码:attendanceClassesStaff.saveAttendanceClassesStaff
@@ -52,11 +57,17 @@ public class SaveAttendanceClassesStaffCmd extends Cmd {
     @Autowired
     @Autowired
     private IAttendanceClassesStaffV1InnerServiceSMO attendanceClassesStaffV1InnerServiceSMOImpl;
     private IAttendanceClassesStaffV1InnerServiceSMO attendanceClassesStaffV1InnerServiceSMOImpl;
 
 
+    @Autowired
+    private IPhotoSMO photoSMOImpl;
+
+    @Autowired
+    private IUserV1InnerServiceSMO userV1InnerServiceSMOImpl;
+
     @Override
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         Assert.hasKeyAndValue(reqJson, "classesId", "请求报文中未包含classesId");
         Assert.hasKeyAndValue(reqJson, "classesId", "请求报文中未包含classesId");
         Assert.hasKeyAndValue(reqJson, "staffId", "请求报文中未包含staffId");
         Assert.hasKeyAndValue(reqJson, "staffId", "请求报文中未包含staffId");
-        Assert.hasKeyAndValue(reqJson, "staffName", "请求报文中未包含staffName");
+        Assert.hasKeyAndValue(reqJson, "photo", "请求报文中未包含人脸");
 
 
         String storeId = cmdDataFlowContext.getReqHeaders().get("store-id");
         String storeId = cmdDataFlowContext.getReqHeaders().get("store-id");
         Assert.hasLength(storeId, "未包含商户信息");
         Assert.hasLength(storeId, "未包含商户信息");
@@ -68,8 +79,15 @@ public class SaveAttendanceClassesStaffCmd extends Cmd {
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
         String storeId = cmdDataFlowContext.getReqHeaders().get("store-id");
         String storeId = cmdDataFlowContext.getReqHeaders().get("store-id");
 
 
+        UserDto userDto = new UserDto();
+        userDto.setUserId(reqJson.getString("staffId"));
+        List<UserDto> userDtos = userV1InnerServiceSMOImpl.queryUsers(userDto);
+
+        Assert.listOnlyOne(userDtos,"员工不存在");
+
         AttendanceClassesStaffPo attendanceClassesStaffPo = BeanConvertUtil.covertBean(reqJson, AttendanceClassesStaffPo.class);
         AttendanceClassesStaffPo attendanceClassesStaffPo = BeanConvertUtil.covertBean(reqJson, AttendanceClassesStaffPo.class);
         attendanceClassesStaffPo.setStoreId(storeId);
         attendanceClassesStaffPo.setStoreId(storeId);
+        attendanceClassesStaffPo.setStaffName(userDtos.get(0).getName());
         attendanceClassesStaffPo.setCsId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
         attendanceClassesStaffPo.setCsId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
         int flag = attendanceClassesStaffV1InnerServiceSMOImpl.saveAttendanceClassesStaff(attendanceClassesStaffPo);
         int flag = attendanceClassesStaffV1InnerServiceSMOImpl.saveAttendanceClassesStaff(attendanceClassesStaffPo);
 
 
@@ -77,6 +95,8 @@ public class SaveAttendanceClassesStaffCmd extends Cmd {
             throw new CmdException("保存数据失败");
             throw new CmdException("保存数据失败");
         }
         }
 
 
+        photoSMOImpl.savePhoto(reqJson, attendanceClassesStaffPo.getCsId(), reqJson.getString("communityId"));
+
         cmdDataFlowContext.setResponseEntity(ResultVo.success());
         cmdDataFlowContext.setResponseEntity(ResultVo.success());
     }
     }
 }
 }