Merge pull request 'feature/dxf' (#6) from feature/dxf into develop
Reviewed-on: http://221.226.25.34:3000/liang.cheng/weaver-hrm-organization/pulls/6
This commit is contained in:
commit
8289ae1c56
|
|
@ -16,7 +16,7 @@
|
|||
<update id="updateMap">
|
||||
update jcl_org_map
|
||||
<set>
|
||||
fdateend=#{currentDate},
|
||||
fdateend=#{yesterday},
|
||||
</set>
|
||||
where ftype=#{ftype} and fobjid=#{fobjid} and fdateend > #{currentDate}
|
||||
</update>
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@
|
|||
<select id="getTreeData" resultMap="TreeResultMap">
|
||||
select id, scheme_name,forbidden_tag
|
||||
from jcl_org_scheme
|
||||
where delete_type = '0' and forbidden_tag = 0
|
||||
where delete_type = '0' and forbidden_tag = 0 order by scheme_no
|
||||
</select>
|
||||
<select id="getSchemesByIds" resultMap="BaseResultMap">
|
||||
select
|
||||
|
|
|
|||
|
|
@ -12,7 +12,9 @@ public interface StaffTriggerMapper {
|
|||
|
||||
//Integer countDepartmentUsers(@Param("ecDepartmentId") String ecDepartmentId);
|
||||
|
||||
Integer countJobUsers(@Param("jobTitle") String jobTitle);
|
||||
//Integer countJobUsers(@Param("jobTitle") String jobTitle);
|
||||
|
||||
Integer countOnJobByJObId(@Param("jobId") String jobId);
|
||||
|
||||
//Integer countAllUsers();
|
||||
|
||||
|
|
|
|||
|
|
@ -95,4 +95,13 @@
|
|||
AND FDATEBEGIN <= #{currentDate}
|
||||
AND FDATEEND >= #{currentDate}
|
||||
</select>
|
||||
<select id="countOnJobByJObId" resultType="java.lang.Integer">
|
||||
select count(1)
|
||||
from HrmResource a
|
||||
inner join cus_fielddata b on
|
||||
a.id = b.id
|
||||
and b.scopeid = -1
|
||||
and b.field100002 = #{jobId}
|
||||
where a.status < 3
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
@ -115,6 +115,8 @@ public class StaffServiceImpl extends Service implements StaffService {
|
|||
HasRightUtil.hasRight(user, RIGHT_NAME, false);
|
||||
StaffPO staffByID = getStaffMapper().getStaffByID(param.getId());
|
||||
StaffPO staffPO = StaffBO.convertParamToPO(param, (long) user.getUID());
|
||||
staffPO.setPermanentNum(staffByID.getPermanentNum());
|
||||
staffPO.setFreezeNum(staffByID.getFreezeNum());
|
||||
checkRequired(staffPO);
|
||||
// 赋值
|
||||
CompPO jclCompanyId = EcHrmRelationUtil.getJclCompanyId(Util.null2String(staffPO.getEcCompany()));
|
||||
|
|
|
|||
|
|
@ -30,6 +30,10 @@ public class HrmResourceTriggerRunnable implements Runnable {
|
|||
return MapperProxyFactory.getProxy(HrmResourceTriggerMapper.class);
|
||||
}
|
||||
|
||||
private JclOrgMapper getJclOrgMapper() {
|
||||
return MapperProxyFactory.getProxy(JclOrgMapper.class);
|
||||
}
|
||||
|
||||
public HrmResourceTriggerRunnable(Long id) {
|
||||
this.userId = id;
|
||||
}
|
||||
|
|
@ -75,15 +79,25 @@ public class HrmResourceTriggerRunnable implements Runnable {
|
|||
cal.setTime(jclMap.getFDateBegin());
|
||||
Calendar calendar = DateUtil.addDay(cal, -1);
|
||||
Date time = new Date(calendar.getTime().getTime());
|
||||
// 更新前的数据
|
||||
JclOrgMap jclOrgMapByObjID = getJclOrgMapper().getJclOrgMapByObjID(currentDate, "4", hrmResource.getId().toString());
|
||||
|
||||
getCompTriggerMapper().deleteMap(jclMap.getFType(), jclMap.getFObjId(), jclMap.getFDateBegin());
|
||||
getCompTriggerMapper().updateMap(jclMap.getFType(), jclMap.getFObjId(), jclMap.getFDateBegin(), time);
|
||||
if (0 == delete) {
|
||||
MapperProxyFactory.getProxy(JclOrgMapper.class).insertMap(jclMap);
|
||||
getHrmResourceTriggerMapper().updateLeaders(currentDate,hrmResource.getId().toString(), jclMap.getFLeaderImg(), jclMap.getFLeaderName(), jclMap.getFLeaderJobId(), jclMap.getFLeaderJob(), jclMap.getFLeaderLv(), jclMap.getFLeaderSt());
|
||||
// 更新当前架构图负责人的卡片信息
|
||||
getHrmResourceTriggerMapper().updateLeaders(currentDate, hrmResource.getId().toString(), jclMap.getFLeaderImg(), jclMap.getFLeaderName(), jclMap.getFLeaderJobId(), jclMap.getFLeaderJob(), jclMap.getFLeaderLv(), jclMap.getFLeaderSt());
|
||||
// 更新组织架构图在岗数
|
||||
if (null == jclOrgMapByObjID) {
|
||||
new StaffTriggerRunnable(jclMap.getFObjParentId()).run();
|
||||
} else if (!jclMap.getFObjParentId().equals(jclOrgMapByObjID.getFObjParentId())) {
|
||||
new StaffTriggerRunnable(jclOrgMapByObjID.getFObjParentId()).run();
|
||||
new StaffTriggerRunnable(jclMap.getFObjParentId()).run();
|
||||
}
|
||||
} else if (null != jclOrgMapByObjID) {
|
||||
new StaffTriggerRunnable(jclOrgMapByObjID.getFObjParentId()).run();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,7 +15,6 @@ import com.engine.organization.mapper.staff.StaffPlanMapper;
|
|||
import com.engine.organization.mapper.trigger.StaffTriggerMapper;
|
||||
import com.engine.organization.util.OrganizationDateUtil;
|
||||
import com.engine.organization.util.db.MapperProxyFactory;
|
||||
import com.engine.organization.util.relation.EcHrmRelationUtil;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import weaver.common.DateUtil;
|
||||
|
||||
|
|
@ -28,6 +27,7 @@ import java.sql.Date;
|
|||
*/
|
||||
public class StaffTriggerRunnable implements Runnable {
|
||||
StaffPO staffPO;
|
||||
StaffPlanPO staffPlanByID;
|
||||
|
||||
private StaffPlanMapper getStaffPlanMapper() {
|
||||
return MapperProxyFactory.getProxy(StaffPlanMapper.class);
|
||||
|
|
@ -58,6 +58,20 @@ public class StaffTriggerRunnable implements Runnable {
|
|||
|
||||
public StaffTriggerRunnable(StaffPO staffPO) {
|
||||
this.staffPO = staffPO;
|
||||
this.staffPlanByID = getStaffPlanMapper().getStaffPlanByID(staffPO.getPlanId());
|
||||
|
||||
currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date());
|
||||
yesterday = DateUtil.addDate(currentDate, -1);
|
||||
}
|
||||
|
||||
public StaffTriggerRunnable(Integer jclJobId) {
|
||||
if (null != jclJobId) {
|
||||
JobPO jobById = getJobMapper().getJobById((long) jclJobId);
|
||||
if (null != jobById) {
|
||||
this.staffPO = StaffPO.builder().compId(jobById.getParentComp()).deptId(jobById.getParentDept()).jobId(jobById.getId()).build();
|
||||
this.staffPlanByID = StaffPlanPO.builder().controlDimension("3").build();
|
||||
}
|
||||
}
|
||||
currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date());
|
||||
yesterday = DateUtil.addDate(currentDate, -1);
|
||||
}
|
||||
|
|
@ -65,7 +79,6 @@ public class StaffTriggerRunnable implements Runnable {
|
|||
@Override
|
||||
public void run() {
|
||||
if (null != staffPO) {
|
||||
StaffPlanPO staffPlanByID = getStaffPlanMapper().getStaffPlanByID(staffPO.getPlanId());
|
||||
if (null != staffPlanByID && StringUtils.isNotBlank(staffPlanByID.getControlDimension())) {
|
||||
String fType = staffPlanByID.getControlDimension();
|
||||
switch (fType) {
|
||||
|
|
@ -150,8 +163,7 @@ public class StaffTriggerRunnable implements Runnable {
|
|||
break;
|
||||
case "3":
|
||||
planSum = getStaffTriggerMapper().countJobStaffNum(currentDate, objId);
|
||||
String ecJobId = EcHrmRelationUtil.getEcJobId(Long.parseLong(objId));
|
||||
onJobSum = getStaffTriggerMapper().countJobUsers(ecJobId);
|
||||
onJobSum = getStaffTriggerMapper().countOnJobByJObId(objId);
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -94,7 +94,7 @@ public class StaffChangeAction implements Action {
|
|||
switch (changeType) {
|
||||
case "3":// 冻结,比如招聘中,面试中,入职办理中等
|
||||
if (staffPO.getFreezeNum() + changeNum > staffNum) {
|
||||
return "冻结数不能小于编制数";
|
||||
return "冻结数不能大于编制数";
|
||||
}
|
||||
// 设置冻结数
|
||||
staffPO.setFreezeNum(staffPO.getFreezeNum() + changeNum);
|
||||
|
|
|
|||
Loading…
Reference in New Issue