From 73dbaf75acd2f4af75fd15c2706f192f767bbb17 Mon Sep 17 00:00:00 2001 From: Mlin Date: Fri, 9 Dec 2022 08:50:23 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=88=86=E9=83=A8=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E6=8E=A7=E5=88=B6=E5=86=99=E5=85=A5=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/version/HrmSubCompanyVersion.java | 22 ++++ .../mapper/version/CompanyVersionMapper.java | 13 +++ .../mapper/version/CompanyVersionMapper.xml | 41 +++++++ .../service/VersionManageService.java | 3 +- .../impl/VersionManageServiceImpl.java | 102 +++++++++++++++++- .../wrapper/VersionManageWrapper.java | 2 +- 6 files changed, 176 insertions(+), 7 deletions(-) create mode 100644 src/com/engine/organization/entity/version/HrmSubCompanyVersion.java create mode 100644 src/com/engine/organization/mapper/version/CompanyVersionMapper.xml diff --git a/src/com/engine/organization/entity/version/HrmSubCompanyVersion.java b/src/com/engine/organization/entity/version/HrmSubCompanyVersion.java new file mode 100644 index 00000000..4a7e7181 --- /dev/null +++ b/src/com/engine/organization/entity/version/HrmSubCompanyVersion.java @@ -0,0 +1,22 @@ +package com.engine.organization.entity.version; + +import lombok.Data; + +import java.util.Date; + +@Data +public class HrmSubCompanyVersion { + + Integer id; + Integer subComId; + String subCompanyDesc; + String subCompanyCode; + String subCompanyName; + Integer supsSubComId; + Integer showOrder; + Integer canceled; + String description; + String operator; + String version; + Date operateTime; +} diff --git a/src/com/engine/organization/mapper/version/CompanyVersionMapper.java b/src/com/engine/organization/mapper/version/CompanyVersionMapper.java index a962522d..198e9282 100644 --- a/src/com/engine/organization/mapper/version/CompanyVersionMapper.java +++ b/src/com/engine/organization/mapper/version/CompanyVersionMapper.java @@ -1,5 +1,8 @@ package com.engine.organization.mapper.version; +import com.engine.organization.entity.version.HrmSubCompanyVersion; +import org.apache.ibatis.annotations.Param; + /** * @Author weaver_cl * @Description: @@ -7,4 +10,14 @@ package com.engine.organization.mapper.version; * @Version V1.0 **/ public interface CompanyVersionMapper { + + /** + * 取分部版本最大记录 + */ + HrmSubCompanyVersion getMaxVersion(@Param("sid") String sid); + + /** + * 新增分部版本 + */ + int insertHrmSubComVersion(HrmSubCompanyVersion hrmSubCompanyVersion); } diff --git a/src/com/engine/organization/mapper/version/CompanyVersionMapper.xml b/src/com/engine/organization/mapper/version/CompanyVersionMapper.xml new file mode 100644 index 00000000..6a456a29 --- /dev/null +++ b/src/com/engine/organization/mapper/version/CompanyVersionMapper.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + t.id ,t.subcomid ,t.subcompanydesc ,t.subcompanycode ,t.subcompanyname ,t.supsubcomid , + t.showorder ,t.canceled ,t.description ,t.operator ,t.version ,t.operate_time + + + + + + insert into hrmsubcompany_version + (subcomid ,subcompanydesc ,subcompanycode ,subcompanyname ,supsubcomid , + showorder ,canceled ,description ,operator ,version ,operate_time) + values (#{subComId}, #{subCompanyDesc}, #{subCompanyCode}, #{subCompanyName}, #{supsSubComId}, + #{showOrder}, #{canceled}, #{description}, #{operator}, #{version}, #{operateTime}) + + + + + \ No newline at end of file diff --git a/src/com/engine/organization/service/VersionManageService.java b/src/com/engine/organization/service/VersionManageService.java index 25b9037d..f3cb162a 100644 --- a/src/com/engine/organization/service/VersionManageService.java +++ b/src/com/engine/organization/service/VersionManageService.java @@ -1,6 +1,7 @@ package com.engine.organization.service; import com.engine.organization.enums.ModuleTypeEnum; +import weaver.hrm.User; import java.util.Map; @@ -17,5 +18,5 @@ public interface VersionManageService { * @param moduleTypeEnum * @param params */ - void save(ModuleTypeEnum moduleTypeEnum, Map params); + void save(ModuleTypeEnum moduleTypeEnum, Map params, User user); } diff --git a/src/com/engine/organization/service/impl/VersionManageServiceImpl.java b/src/com/engine/organization/service/impl/VersionManageServiceImpl.java index 35022362..029c1fb6 100644 --- a/src/com/engine/organization/service/impl/VersionManageServiceImpl.java +++ b/src/com/engine/organization/service/impl/VersionManageServiceImpl.java @@ -1,11 +1,20 @@ package com.engine.organization.service.impl; import com.engine.core.impl.Service; +import com.engine.organization.entity.map.JclOrgMap; +import com.engine.organization.entity.version.HrmSubCompanyVersion; import com.engine.organization.enums.ModuleTypeEnum; +import com.engine.organization.mapper.jclorgmap.JclOrgMapper; +import com.engine.organization.mapper.trigger.CompTriggerMapper; import com.engine.organization.mapper.version.CompanyVersionMapper; import com.engine.organization.service.VersionManageService; +import com.engine.organization.util.OrganizationDateUtil; import com.engine.organization.util.db.MapperProxyFactory; +import weaver.common.DateUtil; +import weaver.hrm.User; +import java.sql.Date; +import java.util.Calendar; import java.util.Map; /** @@ -20,14 +29,97 @@ public class VersionManageServiceImpl extends Service implements VersionManageSe return MapperProxyFactory.getProxy(CompanyVersionMapper.class); } + private JclOrgMapper getJclOrgMapMapper(){ + return MapperProxyFactory.getProxy(JclOrgMapper.class); + } + @Override - public void save(ModuleTypeEnum moduleTypeEnum, Map params) { + public void save(ModuleTypeEnum moduleTypeEnum, Map params, User user) { + + switch (moduleTypeEnum.getValue()){ + case 1: + saveSubComToMap(params); + saveSubComToVersion(params,user); + break; + case 2: + break; + case 4: + break; + default: + break; + } + + } + + /** + * 分部保存至map表 + */ + void saveSubComToMap(Map params) { + String id = (String) params.get("id"); + String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date()); + + JclOrgMap jclOrgMap = new JclOrgMap(); + jclOrgMap.setId(Integer.parseInt((String) params.get("id"))); + jclOrgMap.setFType(1); + jclOrgMap.setFObjId(Integer.parseInt((String) params.get("id"))); + jclOrgMap.setFClass(0); + jclOrgMap.setFClassName("行政维度"); + jclOrgMap.setFName((String) params.get("departmentName")); + jclOrgMap.setFParentId(Integer.parseInt((String) params.get("supSubComId"))); + jclOrgMap.setFIsVitual(0); + jclOrgMap.setFDateBegin(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime())); + jclOrgMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2022-12-31").getTime())); + + JclOrgMap jclOrgMapByFParentId = getJclOrgMapMapper().getJclOrgMapByFParentId(jclOrgMap.getFDateBegin(), id); + jclOrgMap.setFPlan(jclOrgMapByFParentId.getFPlan()); + jclOrgMap.setFOnJob(jclOrgMapByFParentId.getFOnJob()); - //1.参数处理 + Calendar cal = Calendar.getInstance(); + cal.setTime(jclOrgMap.getFDateBegin()); + Calendar calendar = DateUtil.addDay(cal, -1); + Date time = new Date(calendar.getTime().getTime()); - //2.枚举处理不同mapper + MapperProxyFactory.getProxy(CompTriggerMapper.class).deleteMap(jclOrgMap.getFType(), jclOrgMap.getFObjId(), jclOrgMap.getFDateBegin()); + MapperProxyFactory.getProxy(CompTriggerMapper.class).updateMap(jclOrgMap.getFType(), jclOrgMap.getFObjId(), jclOrgMap.getFDateBegin(), time); - //3.保存逻辑 - //版本表 操作者,操作时间,版本V1.0 + 0.1 (默认字段) + getJclOrgMapMapper().insertMap(jclOrgMap); } + + /** + * 分部保存至版本表 + */ + void saveSubComToVersion(Map params,User user) { + String id = (String) params.get("id"); + String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date()); + + HrmSubCompanyVersion hrmSubCompanyVersion = new HrmSubCompanyVersion(); + hrmSubCompanyVersion.setSubComId(Integer.parseInt(id)); + hrmSubCompanyVersion.setSubCompanyDesc((String) params.get("subCompanyDesc")); + hrmSubCompanyVersion.setSubCompanyCode((String) params.get("subCompanyCode")); + hrmSubCompanyVersion.setSubCompanyName((String) params.get("subCompanyName")); + hrmSubCompanyVersion.setSupsSubComId(Integer.parseInt((String) params.get("supSubComId"))); + hrmSubCompanyVersion.setShowOrder(Integer.parseInt((String) params.get("showOrder"))); + hrmSubCompanyVersion.setCanceled(Integer.parseInt((String) params.get("canceled"))); + hrmSubCompanyVersion.setDescription((String) params.get("description")); + hrmSubCompanyVersion.setOperator(user.getUsername()); + hrmSubCompanyVersion.setVersion(genVersionId(id)); + hrmSubCompanyVersion.setOperateTime(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime())); + + getCompanyVersionMapper().insertHrmSubComVersion(hrmSubCompanyVersion); + } + + /** + * 版本号生成 + */ + private String genVersionId(String sid) { + // 版本V1.0 + 0.1 (默认字段) + double id = 1.0; + HrmSubCompanyVersion hrmSubCompanyVersion = getCompanyVersionMapper().getMaxVersion(sid); + if (null != hrmSubCompanyVersion) { + id = id + Double.parseDouble(hrmSubCompanyVersion.getVersion()); + } + return String.valueOf(id); + } + + } diff --git a/src/com/engine/organization/wrapper/VersionManageWrapper.java b/src/com/engine/organization/wrapper/VersionManageWrapper.java index 482d45cd..c8187866 100644 --- a/src/com/engine/organization/wrapper/VersionManageWrapper.java +++ b/src/com/engine/organization/wrapper/VersionManageWrapper.java @@ -23,6 +23,6 @@ public class VersionManageWrapper extends OrganizationWrapper { } public void save(ModuleTypeEnum moduleTypeEnum, Map params) { - getVersionManageService(user).save(moduleTypeEnum,params); + getVersionManageService(user).save(moduleTypeEnum,params,user); } } From 13ae13687248fbf1fbe25d474bccb5b9700e8d02 Mon Sep 17 00:00:00 2001 From: Mlin Date: Fri, 9 Dec 2022 16:04:35 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E9=83=A8=E9=97=A8=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E6=8E=A7=E5=88=B6=E5=86=99=E5=85=A5=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/version/HrmDepartmentVersion.java | 24 +++ .../entity/version/HrmResourceVersion.java | 162 ++++++++++++++++++ .../entity/version/HrmSubCompanyVersion.java | 2 +- .../mapper/version/CompanyVersionMapper.java | 27 ++- .../mapper/version/CompanyVersionMapper.xml | 42 ++++- .../impl/VersionManageServiceImpl.java | 120 +++++++++++-- 6 files changed, 359 insertions(+), 18 deletions(-) create mode 100644 src/com/engine/organization/entity/version/HrmDepartmentVersion.java create mode 100644 src/com/engine/organization/entity/version/HrmResourceVersion.java diff --git a/src/com/engine/organization/entity/version/HrmDepartmentVersion.java b/src/com/engine/organization/entity/version/HrmDepartmentVersion.java new file mode 100644 index 00000000..9435263b --- /dev/null +++ b/src/com/engine/organization/entity/version/HrmDepartmentVersion.java @@ -0,0 +1,24 @@ +package com.engine.organization.entity.version; + +import lombok.Data; + +import java.util.Date; + +@Data +public class HrmDepartmentVersion { + + int id; + int departmentId; + String departmentMark; + String departmentCode; + String departmentName; + int subCompanyId1; + int supDepId; + int bmfzr; + int showOrder; + int canceled; + String description; + String operator; + Double version; + Date operateTime; +} diff --git a/src/com/engine/organization/entity/version/HrmResourceVersion.java b/src/com/engine/organization/entity/version/HrmResourceVersion.java new file mode 100644 index 00000000..618df54c --- /dev/null +++ b/src/com/engine/organization/entity/version/HrmResourceVersion.java @@ -0,0 +1,162 @@ +package com.engine.organization.entity.version; + +import lombok.Data; + +import java.util.Date; + +@Data +public class HrmResourceVersion { + + private Integer id; + + private Integer resourceid; + + private Date companystartdate; + + private Integer companyworkyear; + + private Date workstartdate; + + private Integer workyear; + + private Integer usekind; + + private Integer jobcall; + + private String accumfundaccount; + + private String birthplace; + + private String folk; + + private String residentphone; + + private String residentpostcode; + + private String extphone; + + private String managerstr; + + private Integer status; + + private String fax; + + private String islabouunion; + + private Integer weight; + + private String tempresidentnumber; + + private Date probationenddate; + + private Integer countryid; + + private Date passwdchgdate; + + private String lloginid; + + private Integer dsporder; + + private Integer passwordstate; + + private Integer accounttype; + + private Integer belongto; + + private String messagerurl; + + private String accountname; + + private String loginid; + + private String password; + + private String lastname; + + private String sex; + + private String birthday; + + private Integer nationality; + + private String maritalstatus; + + private String telephone; + + private String mobile; + + private String mobilecall; + + private String email; + + private Integer locationid; + + private String workroom; + + private String homeaddress; + + private String resourcetype; + + private Date startdate; + + private Date enddate; + + private Integer jobtitle; + + private String jobactivitydesc; + + private Integer joblevel; + + private Integer seclevel; + + private Integer departmentid; + + private Integer subcompanyid1; + + private Integer costcenterid; + + private Integer managerid; + + private Integer assistantid; + + private Integer bankid1; + + private String accountid1; + + private Integer resourceimageid; + + private String certificatenum; + + private String nativeplace; + + private Integer educationlevel; + + private Date bememberdate; + + private Date bepartydate; + + private String workcode; + + private String regresidentplace; + + private String healthinfo; + + private String residentplace; + + private String policy; + + private String degree; + + private String height; + + private String classification; + + private String description; + + private String operator; + + private Double version; + + private Date operateTime; + +} diff --git a/src/com/engine/organization/entity/version/HrmSubCompanyVersion.java b/src/com/engine/organization/entity/version/HrmSubCompanyVersion.java index 4a7e7181..5fcd7fa4 100644 --- a/src/com/engine/organization/entity/version/HrmSubCompanyVersion.java +++ b/src/com/engine/organization/entity/version/HrmSubCompanyVersion.java @@ -17,6 +17,6 @@ public class HrmSubCompanyVersion { Integer canceled; String description; String operator; - String version; + Double version; Date operateTime; } diff --git a/src/com/engine/organization/mapper/version/CompanyVersionMapper.java b/src/com/engine/organization/mapper/version/CompanyVersionMapper.java index 198e9282..02c8cbaa 100644 --- a/src/com/engine/organization/mapper/version/CompanyVersionMapper.java +++ b/src/com/engine/organization/mapper/version/CompanyVersionMapper.java @@ -1,5 +1,7 @@ package com.engine.organization.mapper.version; +import com.engine.organization.entity.version.HrmDepartmentVersion; +import com.engine.organization.entity.version.HrmResourceVersion; import com.engine.organization.entity.version.HrmSubCompanyVersion; import org.apache.ibatis.annotations.Param; @@ -14,10 +16,33 @@ public interface CompanyVersionMapper { /** * 取分部版本最大记录 */ - HrmSubCompanyVersion getMaxVersion(@Param("sid") String sid); + HrmSubCompanyVersion getMaxVersion(@Param("subComId") String subComId); /** * 新增分部版本 */ int insertHrmSubComVersion(HrmSubCompanyVersion hrmSubCompanyVersion); + + + /** + * 取部门版本最大记录 + */ + HrmDepartmentVersion getMaxDeptVersion(@Param("departmentid") String departmentid); + + + /** + * 新增部门版本 + */ + int insertHrmDeptVersion(HrmDepartmentVersion hrmDepartmentVersion); + + + /** + * 人员版本最大记录 + */ + HrmResourceVersion getMaxHrmVersion(@Param("getMaxHrmVersion") String getMaxHrmVersion); + + /** + * 新增人员版本 + */ + int insertHrmResourceVersion(HrmResourceVersion hrmResourceVersion); } diff --git a/src/com/engine/organization/mapper/version/CompanyVersionMapper.xml b/src/com/engine/organization/mapper/version/CompanyVersionMapper.xml index 6a456a29..d5be2b05 100644 --- a/src/com/engine/organization/mapper/version/CompanyVersionMapper.xml +++ b/src/com/engine/organization/mapper/version/CompanyVersionMapper.xml @@ -22,10 +22,10 @@ t.showorder ,t.canceled ,t.description ,t.operator ,t.version ,t.operate_time - select - from hrmsubcompany_version t where t.sid=#{sid} order by t.version desc limit 1 + from hrmsubcompany_version t where t.subcomid=#{subComId} order by t.version desc limit 1 @@ -36,6 +36,44 @@ #{showOrder}, #{canceled}, #{description}, #{operator}, #{version}, #{operateTime}) + + + insert into hrmdepartment_version + (departmentid, departmentmark, departmentcode, departmentname, subcompanyid1, supdepid, + bmfzr, showorder, canceled, description, operator, version, operate_time) + VALUES (#{departmentid}, #{departmentmark}, #{departmentcode}, #{departmentname}, #{subcompanyid1}, #{supdepid}, + #{bmfzr}, #{showorder}, #{canceled}, #{description}, #{operator}, #{version}, #{operateTime}) + + + + + + insert into hrmresource_version + (resourceid, companystartdate, companyworkyear, workstartdate, workyear, usekind, jobcall, + accumfundaccount, birthplace, folk, residentphone, residentpostcode, extphone, managerstr, + status, fax, islabouunion, weight, tempresidentnumber, probationenddate, countryid, passwdchgdate, + lloginid, dsporder, passwordstate, accounttype, belongto, messagerurl, accountname, + loginid, password, lastname, sex, birthday, nationality, maritalstatus, telephone, mobile, + mobilecall, email, locationid, workroom, homeaddress, resourcetype, startdate, enddate, jobtitle, + jobactivitydesc, joblevel, seclevel, departmentid, subcompanyid1, costcenterid, managerid, assistantid, + bankid1, accountid1, resourceimageid, certificatenum, nativeplace, educationlevel, bememberdate, + bepartydate, workcode, regresidentplace, healthinfo, residentplace, policy, degree, height, + classification, description, operator, version, operate_time) + values (#{resourceid}, #{companystartdate}, #{companyworkyear}, #{workstartdate}, #{workyear}, #{usekind}, #{jobcall}, + #{accumfundaccount}, #{birthplace}, #{folk}, #{residentphone}, #{residentpostcode}, #{extphone}, #{managerstr}, + #{status}, #{fax}, #{islabouunion}, #{weight}, #{tempresidentnumber}, #{probationenddate}, #{countryid}, #{passwdchgdate}, + #{lloginid}, #{dsporder}, #{passwordstate}, #{accounttype}, #{belongto}, #{messagerurl}, #{accountname}, + #{loginid}, #{password}, #{lastname}, #{sex}, #{birthday}, #{nationality}, #{maritalstatus}, #{telephone}, #{mobile}, + #{mobilecall}, #{email}, #{locationid}, #{workroom}, #{homeaddress}, #{resourcetype}, #{startdate}, #{enddate}, #{jobtitle}, + #{jobactivitydesc}, #{joblevel}, #{seclevel}, #{departmentid}, #{subcompanyid1}, #{costcenterid}, #{managerid}, #{assistantid}, + #{bankid1}, #{accountid1}, #{resourceimageid}, #{certificatenum}, #{nativeplace}, #{educationlevel}, #{bememberdate}, + #{bepartydate}, #{workcode}, #{regresidentplace}, #{healthinfo}, #{residentplace}, #{policy}, #{degree}, #{height}, + #{classification}, #{description}, #{operator}, #{version}, #{operateTime}) + \ No newline at end of file diff --git a/src/com/engine/organization/service/impl/VersionManageServiceImpl.java b/src/com/engine/organization/service/impl/VersionManageServiceImpl.java index 029c1fb6..6e4ffe21 100644 --- a/src/com/engine/organization/service/impl/VersionManageServiceImpl.java +++ b/src/com/engine/organization/service/impl/VersionManageServiceImpl.java @@ -2,6 +2,8 @@ package com.engine.organization.service.impl; import com.engine.core.impl.Service; import com.engine.organization.entity.map.JclOrgMap; +import com.engine.organization.entity.version.HrmDepartmentVersion; +import com.engine.organization.entity.version.HrmResourceVersion; import com.engine.organization.entity.version.HrmSubCompanyVersion; import com.engine.organization.enums.ModuleTypeEnum; import com.engine.organization.mapper.jclorgmap.JclOrgMapper; @@ -11,6 +13,7 @@ import com.engine.organization.service.VersionManageService; import com.engine.organization.util.OrganizationDateUtil; import com.engine.organization.util.db.MapperProxyFactory; import weaver.common.DateUtil; +import weaver.general.Util; import weaver.hrm.User; import java.sql.Date; @@ -42,6 +45,7 @@ public class VersionManageServiceImpl extends Service implements VersionManageSe saveSubComToVersion(params,user); break; case 2: + saveComToVersion(params, user); break; case 4: break; @@ -64,23 +68,70 @@ public class VersionManageServiceImpl extends Service implements VersionManageSe jclOrgMap.setFObjId(Integer.parseInt((String) params.get("id"))); jclOrgMap.setFClass(0); jclOrgMap.setFClassName("行政维度"); + jclOrgMap.setFName((String) params.get("subCompanyName")); + jclOrgMap.setFParentId(Integer.parseInt((String) params.get("supSubComId"))); + jclOrgMap.setFIsVitual(0); + jclOrgMap.setFDateBegin(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime())); + jclOrgMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2022-12-31").getTime())); + + JclOrgMap jclOrgMapByFParentId = getJclOrgMapMapper().getSumPlanAndJobByFParentId(jclOrgMap.getFDateBegin(), String.valueOf(jclOrgMap.getId())); + if(jclOrgMapByFParentId !=null){ + jclOrgMap.setFPlan(jclOrgMapByFParentId.getFPlan()); + jclOrgMap.setFOnJob(jclOrgMapByFParentId.getFOnJob()); + }else{ + jclOrgMap.setFPlan(0); + jclOrgMap.setFOnJob(0); + } + + Calendar cal = Calendar.getInstance(); + cal.setTime(jclOrgMap.getFDateBegin()); + Calendar calendar = DateUtil.addDay(cal, -1); + Date time = new Date(calendar.getTime().getTime()); + + getJclOrgMapMapper().deleteMap("1", id, jclOrgMap.getFDateBegin()); + getJclOrgMapMapper().updateMap("1", id, jclOrgMap.getFDateBegin(), time); + + getJclOrgMapMapper().insertMap(jclOrgMap); + } + + /** + * 部门保存到map表 + */ + void saveDeptToMap(Map params){ + String id = (String) params.get("id"); + int st = 100000000; + int sj = 200000000; + int sk = 300000000; + String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date()); + + JclOrgMap jclOrgMap = new JclOrgMap(); + jclOrgMap.setId(st + Integer.parseInt(id)); + jclOrgMap.setFType(2); + jclOrgMap.setFObjId(Integer.parseInt(id)); + jclOrgMap.setFClass(0); + jclOrgMap.setFClassName("行政维度"); jclOrgMap.setFName((String) params.get("departmentName")); jclOrgMap.setFParentId(Integer.parseInt((String) params.get("supSubComId"))); jclOrgMap.setFIsVitual(0); jclOrgMap.setFDateBegin(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime())); jclOrgMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2022-12-31").getTime())); - JclOrgMap jclOrgMapByFParentId = getJclOrgMapMapper().getJclOrgMapByFParentId(jclOrgMap.getFDateBegin(), id); - jclOrgMap.setFPlan(jclOrgMapByFParentId.getFPlan()); - jclOrgMap.setFOnJob(jclOrgMapByFParentId.getFOnJob()); + JclOrgMap jclOrgMapByFParentId = getJclOrgMapMapper().getSumPlanAndJobByFParentId(jclOrgMap.getFDateBegin(), String.valueOf(jclOrgMap.getId())); + if (null != jclOrgMapByFParentId){ + jclOrgMap.setFPlan(jclOrgMapByFParentId.getFPlan()); + jclOrgMap.setFOnJob(jclOrgMapByFParentId.getFOnJob()); + }else { + jclOrgMap.setFPlan(0); + jclOrgMap.setFOnJob(0); + } Calendar cal = Calendar.getInstance(); cal.setTime(jclOrgMap.getFDateBegin()); Calendar calendar = DateUtil.addDay(cal, -1); Date time = new Date(calendar.getTime().getTime()); - MapperProxyFactory.getProxy(CompTriggerMapper.class).deleteMap(jclOrgMap.getFType(), jclOrgMap.getFObjId(), jclOrgMap.getFDateBegin()); - MapperProxyFactory.getProxy(CompTriggerMapper.class).updateMap(jclOrgMap.getFType(), jclOrgMap.getFObjId(), jclOrgMap.getFDateBegin(), time); + getJclOrgMapMapper().deleteMap("2", id, jclOrgMap.getFDateBegin()); + getJclOrgMapMapper().updateMap("2", id, jclOrgMap.getFDateBegin(), time); getJclOrgMapMapper().insertMap(jclOrgMap); } @@ -98,28 +149,69 @@ public class VersionManageServiceImpl extends Service implements VersionManageSe hrmSubCompanyVersion.setSubCompanyCode((String) params.get("subCompanyCode")); hrmSubCompanyVersion.setSubCompanyName((String) params.get("subCompanyName")); hrmSubCompanyVersion.setSupsSubComId(Integer.parseInt((String) params.get("supSubComId"))); - hrmSubCompanyVersion.setShowOrder(Integer.parseInt((String) params.get("showOrder"))); + String showOrder = (String) params.get("showOrder"); + hrmSubCompanyVersion.setShowOrder(null==showOrder ? null : Integer.parseInt(showOrder)); + hrmSubCompanyVersion.setCanceled(Integer.parseInt((String) params.get("canceled"))); - hrmSubCompanyVersion.setDescription((String) params.get("description")); +// hrmSubCompanyVersion.setDescription((String) params.get("description")); hrmSubCompanyVersion.setOperator(user.getUsername()); - hrmSubCompanyVersion.setVersion(genVersionId(id)); + hrmSubCompanyVersion.setVersion(genVersionId(1,id)); hrmSubCompanyVersion.setOperateTime(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime())); getCompanyVersionMapper().insertHrmSubComVersion(hrmSubCompanyVersion); } + /** + * 部门保存至版本 + */ + void saveComToVersion(Map params,User user) { + String id = (String) params.get("id"); + String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date()); + + HrmDepartmentVersion hrmDepartmentVersion = new HrmDepartmentVersion(); + hrmDepartmentVersion.setDepartmentId(Integer.parseInt(id)); + hrmDepartmentVersion.setDepartmentMark((String) params.get("departmentMark")); + hrmDepartmentVersion.setDepartmentCode((String) params.get("departmentCode")); + hrmDepartmentVersion.setDepartmentName((String) params.get("departmentName")); + hrmDepartmentVersion.setSubCompanyId1(Integer.parseInt((String) params.get("subCompanyId1"))); + hrmDepartmentVersion.setSupDepId((int) params.get("supDepId")); + hrmDepartmentVersion.setBmfzr((int) params.get("bmfzr")); + String showOrder = (String) params.get("showOrder"); + hrmDepartmentVersion.setShowOrder(null==showOrder ? null : Integer.parseInt(showOrder)); + hrmDepartmentVersion.setCanceled((int)params.get("canceled")); + hrmDepartmentVersion.setDescription((String) params.get("description")); + hrmDepartmentVersion.setOperator(user.getLastname()); + hrmDepartmentVersion.setVersion(genVersionId(2,id)); + hrmDepartmentVersion.setOperateTime(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime())); + } + /** * 版本号生成 */ - private String genVersionId(String sid) { + private Double genVersionId(int fType,String sid) { // 版本V1.0 + 0.1 (默认字段) double id = 1.0; - HrmSubCompanyVersion hrmSubCompanyVersion = getCompanyVersionMapper().getMaxVersion(sid); - if (null != hrmSubCompanyVersion) { - id = id + Double.parseDouble(hrmSubCompanyVersion.getVersion()); + switch (fType) { + case 1: + HrmSubCompanyVersion hrmSubCompanyVersion = getCompanyVersionMapper().getMaxVersion(sid); + if (null != hrmSubCompanyVersion) { + id = 0.1 + hrmSubCompanyVersion.getVersion(); + } + break; + case 2: + HrmDepartmentVersion hrmDepartmentVersion = getCompanyVersionMapper().getMaxDeptVersion(sid); + if (null != hrmDepartmentVersion) { + id = 0.1 + hrmDepartmentVersion.getVersion(); + } + break; + case 3: + HrmResourceVersion hrmResourceVersion = getCompanyVersionMapper().getMaxHrmVersion(sid); + if (null != hrmResourceVersion) { + id = 0.1 + hrmResourceVersion.getVersion(); + } + break; } - return String.valueOf(id); + return id; } - } From 32e8eb4890e8db15d1216d4e6ddf55d7f39a1068 Mon Sep 17 00:00:00 2001 From: Mlin Date: Fri, 9 Dec 2022 16:57:42 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=88=86=E9=83=A8=E3=80=81=E9=83=A8?= =?UTF-8?q?=E9=97=A8=E7=89=88=E6=9C=AC=E6=8E=A7=E5=88=B6=E5=86=99=E5=85=A5?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/version/CompanyVersionMapper.xml | 4 +-- .../impl/VersionManageServiceImpl.java | 35 ++++++++++++++----- 2 files changed, 28 insertions(+), 11 deletions(-) diff --git a/src/com/engine/organization/mapper/version/CompanyVersionMapper.xml b/src/com/engine/organization/mapper/version/CompanyVersionMapper.xml index d5be2b05..e4c5ee19 100644 --- a/src/com/engine/organization/mapper/version/CompanyVersionMapper.xml +++ b/src/com/engine/organization/mapper/version/CompanyVersionMapper.xml @@ -44,8 +44,8 @@ insert into hrmdepartment_version (departmentid, departmentmark, departmentcode, departmentname, subcompanyid1, supdepid, bmfzr, showorder, canceled, description, operator, version, operate_time) - VALUES (#{departmentid}, #{departmentmark}, #{departmentcode}, #{departmentname}, #{subcompanyid1}, #{supdepid}, - #{bmfzr}, #{showorder}, #{canceled}, #{description}, #{operator}, #{version}, #{operateTime}) + VALUES (#{departmentId}, #{departmentMark}, #{departmentCode}, #{departmentName}, #{subCompanyId1}, #{supDepId}, + #{bmfzr}, #{showOrder}, #{canceled}, #{description}, #{operator}, #{version}, #{operateTime})