diff --git a/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/platform/UserExportModel.java b/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/platform/UserExportModel.java index c3d4274..c665e3b 100644 --- a/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/platform/UserExportModel.java +++ b/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/platform/UserExportModel.java @@ -135,38 +135,46 @@ public class UserExportModel extends BaseBean { } public UserExportModel setSysUser(SysUser sysUser){ - this.userLoginName=sysUser.getUserLoginName(); - this.userPhone=sysUser.getUserPhone(); - this.userEmail=sysUser.getUserEmail(); - this.infoEmpNo=sysUser.getUserEmpNo(); + if (sysUser != null) { + this.userLoginName = sysUser.getUserLoginName(); + this.userPhone = sysUser.getUserPhone(); + this.userEmail = sysUser.getUserEmail(); + this.infoEmpNo = sysUser.getUserEmpNo(); + } else { + this.userLoginName = "用户账号不存在"; + } return this; } public UserExportModel setSysUserInfo(SysUserInfo sysUserInfo){ - this.infoName=sysUserInfo.getName(); - this.departmentNameRdd=sysUserInfo.getDepartmentNameRdd(); - this.positionNameRdd=sysUserInfo.getPositionNameRdd(); - this.organizeNameRdd=sysUserInfo.getOrganizeNameRdd(); - this.infoEmployeeType=sysUserInfo.getUserEmployeeType(); - this.infoGrade=sysUserInfo.getUserGrade(); - this.infoSex=sysUserInfo.getUserSex(); - this.infoMarriage=sysUserInfo.getUserMarriage(); - this.infoCardType=sysUserInfo.getUserCardType(); - this.infoCardNumber=sysUserInfo.getUserCardNumber(); - this.infoSchoolProfession=sysUserInfo.getUserSchoolProfession(); - this.infoSchool=sysUserInfo.getUserSchool(); - this.infoSchoolEducation=sysUserInfo.getUserSchoolEducation(); - this.infoSchoolLeaveDate=sysUserInfo.getUserSchoolLeaveDate(); - this.infoBirthplace=sysUserInfo.getUserBirthplace(); - this.infoRace=sysUserInfo.getUserRace(); - this.infoEmergencyContact=sysUserInfo.getUserEmergencyContact(); - this.infoEmergencyPhone=sysUserInfo.getUserEmergencyPhone(); - this.infoJoinDate=sysUserInfo.getUserJoinDate(); - this.infoResignationDate=sysUserInfo.getUserResignationDate(); - this.infoBornDate=sysUserInfo.getUserBornDate(); - this.infoPoliticalStatus=sysUserInfo.getUserPoliticalStatus(); - this.infoHobby=sysUserInfo.getUserHobby(); - this.infoFamilyAddress=sysUserInfo.getUserFamilyAddress(); + if (sysUserInfo != null) { + this.infoName = sysUserInfo.getName(); + this.departmentNameRdd = sysUserInfo.getDepartmentNameRdd(); + this.positionNameRdd = sysUserInfo.getPositionNameRdd(); + this.organizeNameRdd = sysUserInfo.getOrganizeNameRdd(); + this.infoEmployeeType = sysUserInfo.getUserEmployeeType(); + this.infoGrade = sysUserInfo.getUserGrade(); + this.infoSex = sysUserInfo.getUserSex(); + this.infoMarriage = sysUserInfo.getUserMarriage(); + this.infoCardType = sysUserInfo.getUserCardType(); + this.infoCardNumber = sysUserInfo.getUserCardNumber(); + this.infoSchoolProfession = sysUserInfo.getUserSchoolProfession(); + this.infoSchool = sysUserInfo.getUserSchool(); + this.infoSchoolEducation = sysUserInfo.getUserSchoolEducation(); + this.infoSchoolLeaveDate = sysUserInfo.getUserSchoolLeaveDate(); + this.infoBirthplace = sysUserInfo.getUserBirthplace(); + this.infoRace = sysUserInfo.getUserRace(); + this.infoEmergencyContact = sysUserInfo.getUserEmergencyContact(); + this.infoEmergencyPhone = sysUserInfo.getUserEmergencyPhone(); + this.infoJoinDate = sysUserInfo.getUserJoinDate(); + this.infoResignationDate = sysUserInfo.getUserResignationDate(); + this.infoBornDate = sysUserInfo.getUserBornDate(); + this.infoPoliticalStatus = sysUserInfo.getUserPoliticalStatus(); + this.infoHobby = sysUserInfo.getUserHobby(); + this.infoFamilyAddress = sysUserInfo.getUserFamilyAddress(); + } else { + this.infoName = "用户消息不存在"; + } return this; } } diff --git a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/SysSoftUpdateRecord.java b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/SysSoftUpdateRecord.java new file mode 100644 index 0000000..f5985dc --- /dev/null +++ b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/SysSoftUpdateRecord.java @@ -0,0 +1,78 @@ +package cn.estsh.i3plus.pojo.platform.bean; + +import cn.estsh.i3plus.pojo.base.bean.BaseBean; +import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiParam; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.hibernate.annotations.DynamicInsert; +import org.hibernate.annotations.DynamicUpdate; + +import javax.persistence.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @Description : + * @Reference : + * @Author : yunhao + * @CreateDate : 2020-09-13 17:35 + * @Modify: + **/ +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@EqualsAndHashCode(callSuper = true) +@Table(name="SYS_SOFT_UPDATE_RECORD") +@ApiModel(value="软件更新记录",description = "软件更新记录") +public class SysSoftUpdateRecord extends BaseBean { + + @Column(name="SYSTEM_SOFT_TYPE") + @ApiParam(value ="系统软件类型") + private Integer systemSoftType; + + public String getSystemSoftTypeTxt(){ + return systemSoftType == null ? "无" : CommonEnumUtil.SOFT_TYPE.valueOfDescription(systemSoftType); + } + + @Column(name="SYSTEM_VERSION") + @ApiParam(value ="系统版本") + private String systemVersion; + + @Lob + @Column(name="UPDATE_CONTENT") + @ApiParam(value ="更新内容") + private String updateContent; + + @Column(name="FIRST_DEPLOYMENT_TIME") + @ApiParam(value ="首次部署时间") + private String firstDeploymentTime; + + @Transient + private Map> updateDetailMap; + + public void putUpdateDetail(String detailType, String detail) { + if(updateDetailMap == null){ + updateDetailMap = new HashMap<>(); + } + + List detailList; + if (updateDetailMap.containsKey(detailType)) { + detailList = updateDetailMap.get(detailType); + } else { + detailList = new ArrayList<>(); + updateDetailMap.put(detailType, detailList); + } + + detailList.add(detail); + } + + public void transformUpdateDetail() { + this.updateContent = JSON.toJSONString(updateDetailMap); + } +} diff --git a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/repository/SysSoftUpdateRecordRepository.java b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/repository/SysSoftUpdateRecordRepository.java new file mode 100644 index 0000000..9b9953c --- /dev/null +++ b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/repository/SysSoftUpdateRecordRepository.java @@ -0,0 +1,14 @@ +package cn.estsh.i3plus.pojo.platform.repository; + +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import cn.estsh.i3plus.pojo.platform.bean.SysSoftUpdateRecord; + +/** + * @Description : + * @Reference : + * @Author : yunhao + * @CreateDate : 2020-09-14 13:15 + * @Modify: + **/ +public interface SysSoftUpdateRecordRepository extends BaseRepository { +} diff --git a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/repository/SysToolTypeRepository.java b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/repository/SysToolTypeRepository.java index f74a350..614b9a7 100644 --- a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/repository/SysToolTypeRepository.java +++ b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/repository/SysToolTypeRepository.java @@ -2,6 +2,10 @@ package cn.estsh.i3plus.pojo.platform.repository; import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; import cn.estsh.i3plus.pojo.platform.bean.SysToolType; +import org.springframework.data.jpa.repository.Lock; +import org.springframework.data.jpa.repository.Query; + +import javax.persistence.LockModeType; /** * @Description : 设备类型 @@ -11,4 +15,9 @@ import cn.estsh.i3plus.pojo.platform.bean.SysToolType; * @Modify : **/ public interface SysToolTypeRepository extends BaseRepository { + + @Lock(LockModeType.PESSIMISTIC_WRITE) + @Query(value = "from SysToolType where id = ?1") + SysToolType getByIds(Long id); + } diff --git a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreHqlPack.java b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreHqlPack.java index e0c1886..ff6f6bc 100644 --- a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreHqlPack.java +++ b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreHqlPack.java @@ -1210,4 +1210,26 @@ public class CoreHqlPack { return ddlPackBean; } + + public static DdlPackBean packHqlQuerySysSoftUpdateRecord(SysSoftUpdateRecord sysSoftUpdateRecord){ + DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(sysSoftUpdateRecord); + + DdlPreparedPack.getNumEqualPack(sysSoftUpdateRecord.getSystemSoftType(), "systemSoftType", ddlPackBean); + DdlPreparedPack.getStringEqualPack(sysSoftUpdateRecord.getSystemVersion(), "systemVersion", ddlPackBean); + DdlPreparedPack.timeBuilder(sysSoftUpdateRecord.getFirstDeploymentTime(), "firstDeploymentTime", ddlPackBean, false, + true); + + return ddlPackBean; + } + + public static DdlPackBean packHqlCheckSysSoftUpdateRecordOnly(SysSoftUpdateRecord sysSoftUpdateRecord){ + DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(sysSoftUpdateRecord); + + DdlPreparedPack.getNumNOEqualPack(sysSoftUpdateRecord.getId(), "id", ddlPackBean); + DdlPreparedPack.getNumEqualPack(sysSoftUpdateRecord.getSystemSoftType(), "systemSoftType", ddlPackBean); + DdlPreparedPack.getStringEqualPack(sysSoftUpdateRecord.getSystemVersion(), "systemVersion", ddlPackBean); + + return ddlPackBean; + } + } \ No newline at end of file