Browse Source

员工管理问题修复

zhanglei
God 3 years ago
parent
commit
fdbb3ad2bb
  1. 4
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelDto.java
  2. 4
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstaffinfo/SysStaffinfoDetailsVo.java
  3. 6
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstaffinfo/SysStaffinfoDto.java
  4. 6
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstaffinfo/SysStaffinfoQuery.java
  5. 3
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstafforg/SysStaffOrgDto.java
  6. 2
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstaffpost/SysStaffPostDetailsVo.java
  7. 3
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationMapper.java
  8. 1
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationService.java
  9. 3
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/syspost/SysPostMapper.java
  10. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/syspost/SysPostService.java
  11. 11
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffinfo/SysStaffinfoMapper.java
  12. 30
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffinfo/SysStaffinfoMapper.xml
  13. 125
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffinfo/SysStaffinfoService.java
  14. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgMapper.java
  15. 5
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgService.java
  16. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffpost/SysStaffPostMapper.java
  17. 2
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffpost/SysStaffPostMapper.xml
  18. 5
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffpost/SysStaffPostService.java

4
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelDto.java

@ -127,12 +127,12 @@ public class BaseVehicleModelDto implements Dto {
@ApiModelProperty(value = "创建组织(陕汽必须的字段)") @ApiModelProperty(value = "创建组织(陕汽必须的字段)")
private String createOrg; private String createOrg;
@ApiModelProperty(value = "使用组织id", required = true) /* @ApiModelProperty(value = "使用组织id", required = true)
@NotBlank(message = "使用组织不能为空") @NotBlank(message = "使用组织不能为空")
private String useOrg; private String useOrg;
@ApiModelProperty(value = "使用组织名称") @ApiModelProperty(value = "使用组织名称")
private String useOrgName; private String useOrgName;*/
@ApiModelProperty(value = "细分市场(陕汽、欧曼特有)") @ApiModelProperty(value = "细分市场(陕汽、欧曼特有)")
private String marketSegments; private String marketSegments;

4
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstaffinfo/SysStaffinfoDetailsVo.java

@ -100,9 +100,9 @@ public class SysStaffinfoDetailsVo implements Vo {
@ApiModelProperty("员工照片") @ApiModelProperty("员工照片")
private String photo; private String photo;
@ApiModelProperty(value = "员工部门信息") @ApiModelProperty(value = "员工部门信息")
private SysStaffOrgDetailsVo sysStaffOrgDetailsVo; private SysStaffOrgDetailsVo sysStaffOrg;
@ApiModelProperty(value = "员工岗位信息") @ApiModelProperty(value = "员工岗位信息")
private SysStaffPostDetailsVo sysStaffPostDetailsVo; private SysStaffPostDetailsVo sysStaffPost;
//===========================================// //===========================================//
@ApiModelProperty(value = "毕业院校") @ApiModelProperty(value = "毕业院校")

6
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstaffinfo/SysStaffinfoDto.java

@ -40,6 +40,8 @@ public class SysStaffinfoDto implements Dto {
@ApiModelProperty(value = "性别", required = true) @ApiModelProperty(value = "性别", required = true)
@NotBlank(message = "性别不能为空") @NotBlank(message = "性别不能为空")
private String gender; private String gender;
@ApiModelProperty(value = "员工编号")
private String jobNumber;
@ApiModelProperty(value = "身份证号", required = true) @ApiModelProperty(value = "身份证号", required = true)
@Pattern(regexp = "/(^\\d{15}$)|(^\\d{18}$)|(^\\d{17}(\\d|X|x)$)/", message = "请输入正确的身份证号") @Pattern(regexp = "/(^\\d{15}$)|(^\\d{18}$)|(^\\d{17}(\\d|X|x)$)/", message = "请输入正确的身份证号")
@NotBlank(message = "身份证号不能为空") @NotBlank(message = "身份证号不能为空")
@ -127,9 +129,9 @@ public class SysStaffinfoDto implements Dto {
@ApiModelProperty("员工照片") @ApiModelProperty("员工照片")
private String photo; private String photo;
@ApiModelProperty(value = "员工部门信息") @ApiModelProperty(value = "员工部门信息")
private SysStaffOrgDto sysStaffOrgDto; private SysStaffOrgDto sysStaffOrg;
@ApiModelProperty(value = "员工岗位信息") @ApiModelProperty(value = "员工岗位信息")
private SysStaffPostDto sysStaffPostDto; private SysStaffPostDto sysStaffPost;
//========================================// //========================================//
@ApiModelProperty(value = "毕业院校") @ApiModelProperty(value = "毕业院校")

6
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstaffinfo/SysStaffinfoQuery.java

@ -34,12 +34,10 @@ public class SysStaffinfoQuery implements Query {
private String personTypeKey; private String personTypeKey;
@ApiModelProperty("手机号") @ApiModelProperty("手机号")
private String mobile; private String mobile;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty("入职开始日期") @ApiModelProperty("入职开始日期")
private Date joinCompnyDateStart; private String joinCompnyDateStart;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty("入职结束日期") @ApiModelProperty("入职结束日期")
private Date joinCompnyDateEnd; private String joinCompnyDateEnd;
@ApiModelProperty(value = "所在部门sid") @ApiModelProperty(value = "所在部门sid")
private String orgSid; private String orgSid;
@ApiModelProperty(value = "所在岗位sid") @ApiModelProperty(value = "所在岗位sid")

3
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstafforg/SysStaffOrgDto.java

@ -6,6 +6,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank;
/** /**
* Project: anrui_portal(门户建设) <br/> * Project: anrui_portal(门户建设) <br/>
* File: SysStaffOrgDto.java <br/> * File: SysStaffOrgDto.java <br/>
@ -27,6 +29,7 @@ public class SysStaffOrgDto implements Dto {
@ApiModelProperty("部门sid") @ApiModelProperty("部门sid")
private String orgSid; private String orgSid;
@ApiModelProperty("部门名称") @ApiModelProperty("部门名称")
@NotBlank(message = "部门名称不能为空")
private String orgName; private String orgName;
@ApiModelProperty("部门路径") @ApiModelProperty("部门路径")
private String orgSidPath; private String orgSidPath;

2
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstaffpost/SysStaffPostDetailsVo.java

@ -19,4 +19,6 @@ public class SysStaffPostDetailsVo implements Vo {
private Integer isDepetHead; private Integer isDepetHead;
@ApiModelProperty(value = "岗位编码") @ApiModelProperty(value = "岗位编码")
private String postCode; private String postCode;
@ApiModelProperty(value = "岗位名称")
private String name;
} }

3
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationMapper.java

@ -96,4 +96,7 @@ public interface SysOrganizationMapper extends BaseMapper<SysOrganization> {
int updateQrCodePath(@Param("sid") String sid, @Param("path") String path); int updateQrCodePath(@Param("sid") String sid, @Param("path") String path);
QrCodeVo getQrCodeVo(@Param("sid") String sid); QrCodeVo getQrCodeVo(@Param("sid") String sid);
@Select("select * from sys_organization WHERE staffSid=#{sid}")
SysOrganizationVo getUseOrgByStaffSid(String sid);
} }

1
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationService.java

@ -376,4 +376,5 @@ public class SysOrganizationService extends MybatisBaseService<SysOrganizationMa
public QrCodeVo getQrCodeVo(String sid) { public QrCodeVo getQrCodeVo(String sid) {
return baseMapper.getQrCodeVo(sid); return baseMapper.getQrCodeVo(sid);
} }
} }

3
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/syspost/SysPostMapper.java

@ -62,4 +62,7 @@ public interface SysPostMapper extends BaseMapper<SysPost> {
* @return * @return
*/ */
SysPost selectByPostCode(String substring); SysPost selectByPostCode(String substring);
@Select("select * from sys_post where staffSid = #{sid}")
SysPost getPostByStaffSid(String sid);
} }

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/syspost/SysPostService.java

@ -137,4 +137,8 @@ public class SysPostService extends MybatisBaseService<SysPostMapper, SysPost> {
public SysPost selectByPostCode(String substring) { public SysPost selectByPostCode(String substring) {
return baseMapper.selectByPostCode(substring); return baseMapper.selectByPostCode(substring);
} }
public SysPost getPostByStaffSid(String sid) {
return baseMapper.getPostByStaffSid(sid);
}
} }

11
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffinfo/SysStaffinfoMapper.java

@ -40,13 +40,7 @@ public interface SysStaffinfoMapper extends BaseMapper<SysStaffinfo> {
List<AppContactSysOrganizationVo> selectContactsByOrgsid(@Param("sid") String sid); List<AppContactSysOrganizationVo> selectContactsByOrgsid(@Param("sid") String sid);
/** SysStaffinfo selectJobNumber();
* 根据员工类型key
*
* @param personTypeKey 员工类型key
* @return
*/
SysStaffinfo selectJobNumber(String personTypeKey);
/** /**
* 查询员工的手机号是否重复 * 查询员工的手机号是否重复
@ -104,10 +98,9 @@ public interface SysStaffinfoMapper extends BaseMapper<SysStaffinfo> {
* *
* @param personType 员工类型 * @param personType 员工类型
* @param personTypeKey 员工类型key * @param personTypeKey 员工类型key
* @param jobNumber 员工工号
* @param sid 员工sid * @param sid 员工sid
* @return * @return
*/ */
int updateBySid(@Param("personType") String personType, @Param("personTypeKey") String personTypeKey, int updateBySid(@Param("personType") String personType, @Param("personTypeKey") String personTypeKey,
@Param("jobNumber") String jobNumber, @Param("sid") String sid, @Param("date") Date date, @Param("reason") String reason); @Param("sid") String sid, @Param("date") Date date, @Param("reason") String reason);
} }

30
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffinfo/SysStaffinfoMapper.xml

@ -72,7 +72,6 @@
<select id="selectJobNumber" resultType="com.yxt.anrui.portal.api.sysstaffinfo.SysStaffinfo"> <select id="selectJobNumber" resultType="com.yxt.anrui.portal.api.sysstaffinfo.SysStaffinfo">
select * select *
from sys_staffinfo from sys_staffinfo
where personTypeKey = #{personTypeKey}
order by jobNumber desc order by jobNumber desc
limit 1 limit 1
</select> </select>
@ -110,6 +109,10 @@
sp.sid = sp.sid =
ssp.postSid where ssp.staffSid = si.sid group by ssp.id) as postName ssp.postSid where ssp.staffSid = si.sid group by ssp.id) as postName
from sys_staffinfo si from sys_staffinfo si
LEFT JOIN sys_staff_org so
ON so.staffSid = si.sid
LEFT JOIN sys_staff_post ssp
ON ssp.staffSid = si.sid
${ew.customSqlSegment} ${ew.customSqlSegment}
</select> </select>
<!--根据员工手机号和sid查询员工信息是否已存在--> <!--根据员工手机号和sid查询员工信息是否已存在-->
@ -198,17 +201,29 @@
<!--开户行--> <!--开户行-->
openBank, openBank,
<!--身份证(人像面)--> <!--身份证(人像面)-->
concat(#{path}, idCardA) as idCardA, IF(idCardA = "",idCardA,CONCAT(#{path}, idCardA)) AS idCardA,
<!--NULLIF(idCardA,CONCAT(#{path}, idCardA) as idCardA),-->
<!--when idCardA is null then idCardA else concat(#{path}, idCardA) as idCardA end,-->
<!--身份证(国徽面)--> <!--身份证(国徽面)-->
concat(#{path}, idCardB) as idCardB, IF(idCardB = "",idCardB,CONCAT(#{path}, idCardB)) AS idCardB,
<!--NULLIF(idCardB,concat(#{path}, idCardB) as idCardB),-->
<!--when idCardB is null then idCardB else concat(#{path}, idCardB) as idCardB end,-->
<!--学历证书--> <!--学历证书-->
concat(#{path}, diploma) as diploma, IF(diploma = "",diploma,CONCAT(#{path}, diploma)) AS diploma,
<!--NULLIF(CONCAT(#{path}, diploma) as diploma,diploma),-->
<!--when diploma is null then diploma else concat(#{path}, diploma) as diploma end,-->
<!--学位证书--> <!--学位证书-->
concat(#{path}, degreeCertificate) as degreeCertificate, IF(degreeCertificate = "",degreeCertificate,CONCAT(#{path}, degreeCertificate)) AS degreeCertificate,
<!--NULLIF(CONCAT(#{path}, degreeCertificate) as degreeCertificate,degreeCertificate),-->
<!--when degreeCertificate is null then degreeCertificate else concat(#{path}, degreeCertificate) as degreeCertificate end,-->
<!--前公司离职证明--> <!--前公司离职证明-->
concat(#{path}, leaveCertificate) as leaveCertificate, IF(leaveCertificate = "",leaveCertificate,CONCAT(#{path}, leaveCertificate)) AS leaveCertificate,
<!--NULLIF(CONCAT(#{path}, leaveCertificate) as leaveCertificate,leaveCertificate),-->
<!--when leaveCertificate is null then leaveCertificate else concat(#{path}, leaveCertificate) as leaveCertificate end,-->
<!--员工照片--> <!--员工照片-->
concat(#{path}, photo) as photo, IF(photo = "",photo,CONCAT(#{path}, photo)) AS photo,
<!--NULLIF(CONCAT(#{path}, photo) as photo,photo),-->
<!--when photo is null then photo else concat(#{path}, photo) as photo end,-->
<!--毕业院校--> <!--毕业院校-->
graduate, graduate,
<!--学历/专业--> <!--学历/专业-->
@ -273,7 +288,6 @@
update sys_staffinfo update sys_staffinfo
set personType = #{personType}, set personType = #{personType},
personTypeKey = #{personTypeKey}, personTypeKey = #{personTypeKey},
jobNumber = #{jobNumber},
quitDate = #{date}, quitDate = #{date},
quitReason = #{reason} quitReason = #{reason}
where sid = #{sid} where sid = #{sid}

125
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffinfo/SysStaffinfoService.java

@ -5,11 +5,13 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.portal.api.sysorganization.AppContactSysOrganizationVo; import com.yxt.anrui.portal.api.sysorganization.AppContactSysOrganizationVo;
import com.yxt.anrui.portal.api.sysorganization.SysOrganization; import com.yxt.anrui.portal.api.sysorganization.SysOrganization;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.syspost.SysPost; import com.yxt.anrui.portal.api.syspost.SysPost;
import com.yxt.anrui.portal.api.sysstaffinfo.*; import com.yxt.anrui.portal.api.sysstaffinfo.*;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgDetailsVo; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgDetailsVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgDto; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgDto;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgVo;
import com.yxt.anrui.portal.api.sysstaffpost.SysStaffPost; import com.yxt.anrui.portal.api.sysstaffpost.SysStaffPost;
import com.yxt.anrui.portal.api.sysstaffpost.SysStaffPostDetailsVo; import com.yxt.anrui.portal.api.sysstaffpost.SysStaffPostDetailsVo;
import com.yxt.anrui.portal.api.sysstaffpost.SysStaffPostDto; import com.yxt.anrui.portal.api.sysstaffpost.SysStaffPostDto;
@ -121,23 +123,25 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName())); // 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<SysStaffinfoVo> qw = new QueryWrapper<>(); QueryWrapper<SysStaffinfoVo> qw = new QueryWrapper<>();
if (StringUtils.isNotBlank(query.getName())) {//姓名 if (StringUtils.isNotBlank(query.getName())) {//姓名
qw.eq("si.name", query.getName()); qw.like("si.name", query.getName());
} }
if (StringUtils.isNotBlank(query.getOrgSid())) { if (StringUtils.isNotBlank(query.getOrgSid())) {
qw.eq("so.orgSid", query.getOrgSid()); qw.eq("so.orgSid", query.getOrgSid());
} }
if (StringUtils.isNotBlank(query.getMobile())) { if (StringUtils.isNotBlank(query.getPostSid())) {
qw.eq("si.mobile", query.getMobile()); qw.eq("ssp.postSid", query.getPostSid());
}
if (query.getJoinCompnyDateStart() != null) {
qw.ge("si.joinCompnyDate", query.getJoinCompnyDateStart());
} }
if (query.getJoinCompnyDateEnd() != null) { if (StringUtils.isNotBlank(query.getMobile())) {
qw.le("si.joinCompnyDate", query.getJoinCompnyDateEnd()); qw.like("si.mobile", query.getMobile());
} }
String joinCompnyDateStart = query.getJoinCompnyDateStart();
String joinCompnyDateEnd = query.getJoinCompnyDateEnd();
qw.apply(StringUtils.isNotEmpty(joinCompnyDateStart), "date_format (joinCompnyDate,'%Y-%m-%d') >= date_format('" + joinCompnyDateStart + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(joinCompnyDateEnd), "date_format (joinCompnyDate,'%Y-%m-%d') <= date_format('" + joinCompnyDateEnd + "','%Y-%m-%d')"
);
//员工类型key //员工类型key
if (StringUtils.isNotBlank(query.getPersonTypeKey())) { if (StringUtils.isNotBlank(query.getPersonTypeKey())) {
qw.eq("si.personKey", query.getPersonTypeKey()); qw.eq("si.personTypeKey", query.getPersonTypeKey());
} }
qw.orderByDesc("si.id"); qw.orderByDesc("si.id");
return qw; return qw;
@ -170,15 +174,14 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
public ResultBean saveStaffInfo(SysStaffinfoDto dto) { public ResultBean saveStaffInfo(SysStaffinfoDto dto) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
//员工类型 //员工类型
String personTypeKey = dto.getPersonTypeKey(); //String personTypeKey = dto.getPersonTypeKey();
//根据员工类型key查询最大员工编号
String jobNumber = ""; String jobNumber = "";
SysStaffinfo sysStaffinfo = baseMapper.selectJobNumber(personTypeKey); SysStaffinfo sysStaffinfo = baseMapper.selectJobNumber();
if (sysStaffinfo == null) { if (sysStaffinfo == null) {
//无此员工类型的员工 //无此员工类型的员工
jobNumber = addOne("0000"); jobNumber = addOne("0000");
} else { } else {
jobNumber = sysStaffinfo.getJobNumber().substring(sysStaffinfo.getJobNumber().length() - 4); jobNumber = sysStaffinfo.getJobNumber();
jobNumber = addOne(jobNumber); jobNumber = addOne(jobNumber);
} }
//查询员工的手机号是否重复 //查询员工的手机号是否重复
@ -192,16 +195,16 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
return rb.setMsg("已存在身份证号为" + dto.getIdNo() + "的员工"); return rb.setMsg("已存在身份证号为" + dto.getIdNo() + "的员工");
} }
//查询部门和岗位是否为空 //查询部门和岗位是否为空
if (dto.getSysStaffOrgDto() == null) { if (dto.getSysStaffOrg() == null) {
return rb.setMsg("员工部门信息不能为空"); return rb.setMsg("员工部门信息不能为空");
} }
if (dto.getSysStaffPostDto() == null) { if (dto.getSysStaffPost() == null) {
return rb.setMsg("员工岗位信息不能为空"); return rb.setMsg("员工岗位信息不能为空");
} }
//添加员工基础信息 //添加员工基础信息
SysStaffinfo sysStaffinfo3 = new SysStaffinfo(); SysStaffinfo sysStaffinfo3 = new SysStaffinfo();
dto.fillEntity(sysStaffinfo3); dto.fillEntity(sysStaffinfo3);
sysStaffinfo3.setJobNumber(dto.getSysStaffOrgDto().getOrgCode() + dto.getSysStaffPostDto().getPostCode() + "_" + jobNumber); sysStaffinfo3.setJobNumber(jobNumber);
sysStaffinfo3.setPinYinName(PinYinUtils.getPinYinName(dto.getName())); sysStaffinfo3.setPinYinName(PinYinUtils.getPinYinName(dto.getName()));
sysStaffinfo3.setFirstPinYinLabel(PinYinUtils.getCharDuoPinYinChar(dto.getName())); sysStaffinfo3.setFirstPinYinLabel(PinYinUtils.getCharDuoPinYinChar(dto.getName()));
//是否意外险参保 //是否意外险参保
@ -269,22 +272,28 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
sysStaffinfo3.setPhoto(sysStaffinfo3.getPhoto().replace(fileUploadComponent.getUrlPrefix(), "")); sysStaffinfo3.setPhoto(sysStaffinfo3.getPhoto().replace(fileUploadComponent.getUrlPrefix(), ""));
} }
} }
save(sysStaffinfo3);
//添加用户信息
SysUser sysUser = new SysUser();
sysUser.setStaffSid(sysStaffinfo3.getSid());
sysUser.setUserName(jobNumber);
sysUser.setMobile(sysStaffinfo3.getMobile());
boolean isSave = sysUserService.save(sysUser);
//增加员工的关联的部门信息 //增加员工的关联的部门信息
SysStaffOrg sysStaffOrg = new SysStaffOrg(); SysStaffOrg sysStaffOrg = new SysStaffOrg();
SysStaffOrgDto sysStaffOrgDto = dto.getSysStaffOrgDto(); SysStaffOrgDto sysStaffOrgDto = dto.getSysStaffOrg();
if (StringUtils.isBlank(sysStaffOrgDto.getOrgName())){
return rb.setMsg("所在部门不能为空");
}
sysStaffOrgDto.fillEntity(sysStaffOrg); sysStaffOrgDto.fillEntity(sysStaffOrg);
sysStaffOrg.setStaffSid(sysStaffinfo3.getSid()); sysStaffOrg.setStaffSid(sysStaffinfo3.getSid());
sysStaffOrgService.save(sysStaffOrg); sysStaffOrgService.save(sysStaffOrg);
//增加员工的关联的岗位信息 //增加员工的关联的岗位信息
SysStaffPost sysStaffPost = new SysStaffPost(); SysStaffPost sysStaffPost = new SysStaffPost();
SysStaffPostDto sysStaffPostDto = dto.getSysStaffPostDto(); SysStaffPostDto sysStaffPostDto = dto.getSysStaffPost();
if (StringUtils.isBlank(sysStaffPostDto.getPostSid())){
return rb.setMsg("岗位不能为空");
}
save(sysStaffinfo3);
//添加用户信息
SysUser sysUser = new SysUser();
sysUser.setStaffSid(sysStaffinfo3.getSid());
sysUser.setUserName(jobNumber);
sysUser.setMobile(sysStaffinfo3.getMobile());
boolean isSave = sysUserService.save(sysUser);
sysStaffPostDto.fillEntity(sysStaffPost); sysStaffPostDto.fillEntity(sysStaffPost);
sysStaffPost.setStaffSid(sysStaffinfo3.getSid()); sysStaffPost.setStaffSid(sysStaffinfo3.getSid());
sysStaffPost.setStartDate(new Date()); sysStaffPost.setStartDate(new Date());
@ -337,24 +346,6 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
if (sysStaffinfo == null) { if (sysStaffinfo == null) {
return rb.setMsg("此员工信息不存在"); return rb.setMsg("此员工信息不存在");
} }
//根据员工类型key查询最大员工编号
String jobNumber = "";
if (!sysStaffinfo.getPersonTypeKey().equals(dto.getPersonTypeKey())) {
//员工类型
String personTypeKey = dto.getPersonTypeKey();
SysStaffinfo sysStaffinfo1 = baseMapper.selectJobNumber(personTypeKey);
if (sysStaffinfo1 == null && "01".equals(personTypeKey)) {
//无此员工类型的员工
jobNumber = addOne("9001");
} else if (sysStaffinfo1 == null && "02".equals(personTypeKey)) {
jobNumber = addOne("0000");
} else {
jobNumber = sysStaffinfo.getJobNumber().substring(sysStaffinfo.getJobNumber().length() - 4);
jobNumber = addOne(jobNumber);
}
} else {
jobNumber = sysStaffinfo.getJobNumber();
}
//查询员工的手机号是否重复 //查询员工的手机号是否重复
SysStaffinfo sysStaffinfo2 = baseMapper.selectByMobileAndSid(dto.getMobile(), sid); SysStaffinfo sysStaffinfo2 = baseMapper.selectByMobileAndSid(dto.getMobile(), sid);
if (sysStaffinfo2 != null) { if (sysStaffinfo2 != null) {
@ -367,7 +358,7 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
} }
//更新员工基础信息 //更新员工基础信息
BeanUtil.copyProperties(dto, sysStaffinfo); BeanUtil.copyProperties(dto, sysStaffinfo);
sysStaffinfo.setJobNumber(dto.getSysStaffOrgDto().getOrgCode() + dto.getSysStaffPostDto().getPostCode() + "_" + jobNumber); sysStaffinfo.setJobNumber(dto.getJobNumber());
sysStaffinfo.setPinYinName(PinYinUtils.getPinYinName(dto.getName())); sysStaffinfo.setPinYinName(PinYinUtils.getPinYinName(dto.getName()));
sysStaffinfo.setFirstPinYinLabel(PinYinUtils.getCharDuoPinYinChar(dto.getName())); sysStaffinfo.setFirstPinYinLabel(PinYinUtils.getCharDuoPinYinChar(dto.getName()));
//是否意外险参保 //是否意外险参保
@ -429,17 +420,22 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
sysStaffinfo.setLeaveCertificate(sysStaffinfo.getLeaveCertificate().replace(fileUploadComponent.getUrlPrefix(), "")); sysStaffinfo.setLeaveCertificate(sysStaffinfo.getLeaveCertificate().replace(fileUploadComponent.getUrlPrefix(), ""));
} }
} }
//员工照片
if (StringUtils.isNotBlank(sysStaffinfo.getPhoto())) {
if (sysStaffinfo.getPhoto().contains(fileUploadComponent.getUrlPrefix())) {
sysStaffinfo.setPhoto(sysStaffinfo.getPhoto().replace(fileUploadComponent.getUrlPrefix(), ""));
}
}
//更新用户信息 //更新用户信息
sysUserService.updateByStaffSid(jobNumber, sysStaffinfo.getMobile(), sid); sysUserService.updateByStaffSid(dto.getJobNumber(), sysStaffinfo.getMobile(), sid);
//更新员工的关联的部门信息 //更新员工的关联的部门信息
SysOrganization sysOrganization = sysOrganizationService.selectByOrgCode(sysStaffinfo.getJobNumber().substring(0, 4)); SysStaffOrg sysStaffOrg = sysStaffOrgService.getOrgByStaffSid(sid);
SysStaffOrg sysStaffOrg = sysStaffOrgService.selectByStaffSid(sid, sysOrganization.getSid()); SysStaffOrgDto sysStaffOrgDto = dto.getSysStaffOrg();
SysStaffOrgDto sysStaffOrgDto = dto.getSysStaffOrgDto();
sysStaffOrgService.updateBySid(sysStaffOrgDto, sysStaffOrg.getSid()); sysStaffOrgService.updateBySid(sysStaffOrgDto, sysStaffOrg.getSid());
//更新员工的关联的岗位信息 //更新员工的关联的岗位信息
SysPost sysPost = sysPostService.selectByPostCode(sysStaffinfo.getJobNumber().substring(4, 6)); SysStaffPostDetailsVo staffPostDetailsVo = sysStaffPostService.getPostByStaffSid(sid);
SysStaffPost sysStaffPost = sysStaffPostService.selectByStaffSid(sid, sysPost.getSid()); SysStaffPost sysStaffPost = sysStaffPostService.selectByStaffSid(sid, staffPostDetailsVo.getPostSid());
SysStaffPostDto sysStaffPostDto = dto.getSysStaffPostDto(); SysStaffPostDto sysStaffPostDto = dto.getSysStaffPost();
sysStaffPostService.updateBySid(sysStaffPostDto, sysStaffPost.getSid()); sysStaffPostService.updateBySid(sysStaffPostDto, sysStaffPost.getSid());
boolean isUpdate = updateById(sysStaffinfo); boolean isUpdate = updateById(sysStaffinfo);
if (!isUpdate) { if (!isUpdate) {
@ -458,14 +454,13 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
String path = fileUploadComponent.getUrlPrefix(); String path = fileUploadComponent.getUrlPrefix();
SysStaffinfoDetailsVo sysStaffinfoDetailsVo = baseMapper.selectDetailsBySid(sid, path); SysStaffinfoDetailsVo sysStaffinfoDetailsVo = baseMapper.selectDetailsBySid(sid, path);
if (sysStaffinfoDetailsVo != null) { if (sysStaffinfoDetailsVo != null) {
SysOrganization sysOrganization = sysOrganizationService.selectByOrgCode(sysStaffinfoDetailsVo.getJobNumber().substring(0, 4)); SysStaffOrg sysStaffOrg = sysStaffOrgService.getOrgByStaffSid(sid);
//更新员工的关联的岗位信息 //更新员工的关联的岗位信息
String jobNumber = sysStaffinfoDetailsVo.getJobNumber().substring(4, 6); SysStaffPostDetailsVo staffPostDetailsVo = sysStaffPostService.getPostByStaffSid(sid);
SysPost sysPost = sysPostService.selectByPostCode(sysStaffinfoDetailsVo.getJobNumber().substring(4, 6)); SysStaffOrgDetailsVo sysStaffOrgDetailsVo = sysStaffOrgService.selectByStaff(sid, sysStaffOrg.getOrgSid());
SysStaffOrgDetailsVo sysStaffOrgDetailsVo = sysStaffOrgService.selectByStaff(sid, sysOrganization.getSid()); SysStaffPostDetailsVo sysStaffPostDetailsVo = sysStaffPostService.selectByStaff(sid, staffPostDetailsVo.getPostSid());
SysStaffPostDetailsVo sysStaffPostDetailsVo = sysStaffPostService.selectByStaff(sid, sysPost.getSid()); sysStaffinfoDetailsVo.setSysStaffOrg(sysStaffOrgDetailsVo);
sysStaffinfoDetailsVo.setSysStaffOrgDetailsVo(sysStaffOrgDetailsVo); sysStaffinfoDetailsVo.setSysStaffPost(sysStaffPostDetailsVo);
sysStaffinfoDetailsVo.setSysStaffPostDetailsVo(sysStaffPostDetailsVo);
} }
return sysStaffinfoDetailsVo; return sysStaffinfoDetailsVo;
} }
@ -481,20 +476,20 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
//员工类型离职状态 //员工类型离职状态
String personTypeKey = "01"; String personTypeKey = "01";
String personType = "离职"; String personType = "离职";
String jobNumber = ""; //String jobNumber = "";
SysStaffinfo sysStaffinfo = baseMapper.selectJobNumber(personTypeKey); //SysStaffinfo sysStaffinfo = baseMapper.selectJobNumber(personTypeKey);
if (sysStaffinfo == null) { /* if (sysStaffinfo == null) {
//无此员工类型的员工 //无此员工类型的员工
jobNumber = addOne("9000"); jobNumber = addOne("9000");
} else { } else {
jobNumber = sysStaffinfo.getJobNumber().substring(sysStaffinfo.getJobNumber().length() - 4); jobNumber = sysStaffinfo.getJobNumber();
jobNumber = addOne(jobNumber); jobNumber = addOne(jobNumber);
} }
jobNumber = sysStaffinfo.getJobNumber().substring(0, 6) + jobNumber; jobNumber = sysStaffinfo.getJobNumber();*/
//更新员工的员工状态以及员工工号 //更新员工的员工状态以及员工工号
int j = baseMapper.updateBySid(personType, personTypeKey, jobNumber, sysStaffQuery.getSid(), sysStaffQuery.getQuitDate(), sysStaffQuery.getQuitReason()); int j = baseMapper.updateBySid(personType, personTypeKey, sysStaffQuery.getSid(), sysStaffQuery.getQuitDate(), sysStaffQuery.getQuitReason());
//更新用户表中该员工的员工工号 //更新用户表中该员工的员工工号
sysUserService.updateByStaSid(jobNumber, sysStaffQuery.getSid()); //sysUserService.updateByStaSid(jobNumber, sysStaffQuery.getSid());
if (j > 0) { if (j > 0) {
count++; count++;
} }

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgMapper.java

@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgDetailsVo; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgDetailsVo;
import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -77,4 +78,7 @@ public interface SysStaffOrgMapper extends BaseMapper<SysStaffOrg> {
@Select("select * from sys_staff_org where staffSid=#{staffSid} AND manageType != 2") @Select("select * from sys_staff_org where staffSid=#{staffSid} AND manageType != 2")
SysStaffOrg selectAllByStaffSid(String staffSid); SysStaffOrg selectAllByStaffSid(String staffSid);
@Select("select * from sys_staff_org where staffSid=#{sid}")
SysStaffOrg getOrgByStaffSid(String sid);
} }

5
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgService.java

@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.portal.api.sysorganization.SysOrganization; import com.yxt.anrui.portal.api.sysorganization.SysOrganization;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.*; import com.yxt.anrui.portal.api.sysstafforg.*;
import com.yxt.anrui.portal.biz.sysorganization.SysOrganizationService; import com.yxt.anrui.portal.biz.sysorganization.SysOrganizationService;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
@ -187,4 +188,8 @@ public class SysStaffOrgService extends MybatisBaseService<SysStaffOrgMapper, Sy
SysStaffOrg sysStaffOrg = baseMapper.selectAllByStaffSid(staffSid); SysStaffOrg sysStaffOrg = baseMapper.selectAllByStaffSid(staffSid);
return rb.success().setData(sysStaffOrg); return rb.success().setData(sysStaffOrg);
} }
public SysStaffOrg getOrgByStaffSid(String sid) {
return baseMapper.getOrgByStaffSid(sid);
}
} }

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffpost/SysStaffPostMapper.java

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.portal.api.syspost.SysPost;
import com.yxt.anrui.portal.api.sysstaffpost.SysStaffPostDetailsVo; import com.yxt.anrui.portal.api.sysstaffpost.SysStaffPostDetailsVo;
import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -55,4 +56,7 @@ public interface SysStaffPostMapper extends BaseMapper<SysStaffPost> {
* @return * @return
*/ */
SysStaffPostDetailsVo selectByStaff(@Param("sid") String sid, @Param("postSid") String postSid); SysStaffPostDetailsVo selectByStaff(@Param("sid") String sid, @Param("postSid") String postSid);
@Select("select * from sys_staff_post where staffSid = #{sid}")
SysStaffPostDetailsVo getPostByStaffSid(String sid);
} }

2
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffpost/SysStaffPostMapper.xml

@ -27,7 +27,7 @@
</select> </select>
<select id="selectByStaff" resultType="com.yxt.anrui.portal.api.sysstaffpost.SysStaffPostDetailsVo"> <select id="selectByStaff" resultType="com.yxt.anrui.portal.api.sysstaffpost.SysStaffPostDetailsVo">
select ssp.postSid, ssp.isDepetHead,sp.postCode select ssp.postSid, ssp.isDepetHead,sp.postCode,sp.name
from sys_staff_post ssp from sys_staff_post ssp
left join sys_post sp on sp.sid = ssp.postSid left join sys_post sp on sp.sid = ssp.postSid
where ssp.staffSid = #{sid} and ssp.postSid = #{postSid} where ssp.staffSid = #{sid} and ssp.postSid = #{postSid}

5
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffpost/SysStaffPostService.java

@ -3,6 +3,7 @@ package com.yxt.anrui.portal.biz.sysstaffpost;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.portal.api.syspost.SysPost;
import com.yxt.anrui.portal.api.sysstaffpost.*; import com.yxt.anrui.portal.api.sysstaffpost.*;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.PagerUtil;
@ -127,4 +128,8 @@ public class SysStaffPostService extends MybatisBaseService<SysStaffPostMapper,
public SysStaffPostDetailsVo selectByStaff(String sid, String postSid) { public SysStaffPostDetailsVo selectByStaff(String sid, String postSid) {
return baseMapper.selectByStaff(sid, postSid); return baseMapper.selectByStaff(sid, postSid);
} }
public SysStaffPostDetailsVo getPostByStaffSid(String sid) {
return baseMapper.getPostByStaffSid(sid);
}
} }
Loading…
Cancel
Save