@ -17,11 +17,15 @@ import com.engine.hrm.util.HrmWeakPasswordUtil;
import com.engine.hrm.util.face.HrmFaceCheckManager ;
import com.engine.hrm.util.face.ValidateFieldManager ;
import com.engine.hrm.util.face.bean.CheckItemBean ;
import com.engine.organization.mapper.hrmresource.HrmResourceMapper ;
import com.engine.organization.util.db.MapperProxyFactory ;
import com.weaver.general.BaseBean ;
import ln.LN ;
import org.apache.commons.lang3.StringUtils ;
import weaver.common.DateUtil ;
import weaver.conn.RecordSet ;
import weaver.conn.RecordSetTrans ;
import weaver.crm.CrmShareBase ;
import weaver.file.Prop ;
import weaver.general.GCONST ;
import weaver.general.PasswordUtil ;
@ -44,8 +48,11 @@ import weaver.license.PluginUserCheck;
import weaver.rsa.security.RSA ;
import weaver.rtx.OrganisationCom ;
import weaver.rtx.OrganisationComRunnable ;
import weaver.system.CusFormSetting ;
import weaver.system.CusFormSettingComInfo ;
import weaver.system.SysRemindWorkflow ;
import weaver.systeminfo.SystemEnv ;
import weaver.systeminfo.setting.HrmUserSettingComInfo ;
import java.util.ArrayList ;
import java.util.HashMap ;
@ -65,7 +72,7 @@ public class ResourceSyncUtil {
Map < String , Object > retmap = new HashMap < > ( ) ;
RecordSet rs = new RecordSet ( ) ;
String sql = "" ;
String sql ;
try {
DepartmentComInfo departmentComInfo = new DepartmentComInfo ( ) ;
boolean canEdit = HrmUserVarify . checkUserRight ( "HrmResourceEdit:Edit" , user ) ;
@ -96,7 +103,7 @@ public class ResourceSyncUtil {
if ( ! loginid . equals ( "" ) & & "0" . equals ( accounttype ) ) {
sql = "select count(1) from hrmresourceallview where loginid='" + loginid + "' " ;
rs . execute Sql ( sql ) ;
rs . execute ( sql ) ;
if ( rs . next ( ) ) {
if ( rs . getInt ( 1 ) > 0 ) {
retmap . put ( "status" , "-1" ) ;
@ -116,7 +123,7 @@ public class ResourceSyncUtil {
ResourceComInfo ResourceComInfo = new ResourceComInfo ( ) ;
Map < String , String > result = ResourceSyncUtil. addResourceBase( user , params ) ;
Map < String , String > result = addResourceBase( user , params ) ;
String addResourceBaseCode = result . get ( "status" ) ;
if ( "-1" . equals ( addResourceBaseCode ) ) {
@ -148,8 +155,7 @@ public class ResourceSyncUtil {
//判断是否开启了【禁止弱密码保存】
String weakPasswordDisable = Util . null2s ( settings . getWeakPasswordDisable ( ) , "0" ) ;
if ( weakPasswordDisable . equals ( "1" ) ) {
if ( password . equals ( "" ) ) { //密码为空的情况
} else {
if ( ! password . equals ( "" ) ) { //密码为空的情况
//判断是否为弱密码
HrmWeakPasswordUtil hrmWeakPasswordUtil = new HrmWeakPasswordUtil ( ) ;
if ( hrmWeakPasswordUtil . isWeakPsd ( password ) ) {
@ -200,7 +206,7 @@ public class ResourceSyncUtil {
}
updateWorkInfo ( String . valueOf ( id ) , user , params ) ;
rs . execute Sql ( sql ) ;
rs . execute ( sql ) ;
HrmFaceCheckManager . setUserPassowrd ( id + "" , password ) ;
HrmFaceCheckManager . sync ( id + "" , HrmFaceCheckManager . getOptUpdate ( ) , "HrmResourceAddService_saveSimple_update" , HrmFaceCheckManager . getOaResource ( ) ) ;
@ -224,6 +230,7 @@ public class ResourceSyncUtil {
}
}
retmap . put ( "id" , id ) ;
retmap . put ( "status" , "1" ) ;
} catch ( Exception e ) {
new BaseBean ( ) . writeLog ( "保存新建人员simple错误: " + e ) ;
@ -593,10 +600,374 @@ public class ResourceSyncUtil {
return retmap ;
}
public static Map < String , Object > editResourceBase ( User user , Map < String , Object > params ) {
Map < String , Object > retMap = new HashMap < > ( ) ;
try {
boolean canEdit = HrmUserVarify . checkUserRight ( "HrmResourceEdit:Edit" , user ) ;
if ( ! canEdit ) {
retMap . put ( "status" , "-1" ) ;
retMap . put ( "message" , "" + weaver . systeminfo . SystemEnv . getHtmlLabelName ( 22620 , weaver . general . ThreadVarLanguage . getLang ( ) ) + "" ) ;
return retMap ;
}
RecordSet rs = new RecordSet ( ) ;
DepartmentComInfo DepartmentComInfo = new DepartmentComInfo ( ) ;
ResourceComInfo ResourceComInfo = new ResourceComInfo ( ) ;
HrmServiceManager HrmServiceManager = new HrmServiceManager ( ) ;
CrmShareBase CrmShareBase = new CrmShareBase ( ) ;
StringBuilder para ;
String id = Util . null2String ( params . get ( "id" ) ) ;
if ( id . length ( ) = = 0 ) {
retMap . put ( "status" , "-1" ) ;
retMap . put ( "message" , "" + weaver . systeminfo . SystemEnv . getHtmlLabelName ( 22620 , weaver . general . ThreadVarLanguage . getLang ( ) ) + "" ) ;
return retMap ;
}
String workcode = Util . fromScreen3 ( Util . null2String ( params . get ( "workcode" ) ) , user . getLanguage ( ) ) ;
String lastname = Util . fromScreen3 ( Util . null2String ( params . get ( "lastname" ) ) , user . getLanguage ( ) ) . trim ( ) ;
String sex = Util . fromScreen3 ( ( Util . null2String ( params . get ( "sex" ) ) ) , user . getLanguage ( ) ) ;
String resourceimageid = Util . null2String ( params . get ( "resourceimageid" ) ) ;
if ( resourceimageid . length ( ) > 0 ) {
resourceimageid = "" + DocDownloadCheckUtil . getDownloadfileidstr ( resourceimageid ) ;
}
String resourceimageBase64 = Util . null2String ( params . get ( "resourceimageBase64" ) ) ;
if ( resourceimageBase64 . length ( ) > 0 ) {
resourceimageid = ServiceUtil . saveResourceImage ( resourceimageBase64 ) ;
}
String oldresourceimageid = Util . null2String ( params . get ( "oldresourceimage" ) ) ;
if ( resourceimageid . equals ( "" ) ) resourceimageid = oldresourceimageid ;
String departmentid = Util . fromScreen3 ( Util . null2String ( params . get ( "departmentid" ) ) , user . getLanguage ( ) ) ;
String costcenterid = Util . fromScreen3 ( Util . null2String ( params . get ( "costcenterid" ) ) , user . getLanguage ( ) ) ;
String jobtitle = Util . fromScreen3 ( Util . null2String ( params . get ( "jobtitle" ) ) , user . getLanguage ( ) ) ;
String joblevel = Util . fromScreen3 ( Util . null2String ( params . get ( "joblevel" ) ) , user . getLanguage ( ) ) ;
String jobactivitydesc = Util . fromScreen3 ( Util . null2String ( params . get ( "jobactivitydesc" ) ) , user . getLanguage ( ) ) ;
String managerid = Util . fromScreen3 ( Util . null2String ( params . get ( "managerid" ) ) , user . getLanguage ( ) ) ;
String assistantid = Util . fromScreen3 ( Util . null2String ( params . get ( "assistantid" ) ) , user . getLanguage ( ) ) ;
String status = Util . fromScreen3 ( Util . null2String ( params . get ( "status" ) ) , user . getLanguage ( ) ) ;
String locationid = Util . fromScreen3 ( Util . null2String ( params . get ( "locationid" ) ) , user . getLanguage ( ) ) ;
String workroom = Util . fromScreen3 ( Util . null2String ( params . get ( "workroom" ) ) , user . getLanguage ( ) ) ;
String telephone = Util . fromScreen3 ( Util . null2String ( params . get ( "telephone" ) ) , user . getLanguage ( ) ) ;
String mobile = Util . fromScreen3 ( Util . null2String ( params . get ( "mobile" ) ) , user . getLanguage ( ) ) ;
String mobileshowtype = Util . fromScreen3 ( Util . null2String ( params . get ( "mobileshowtype" ) ) , user . getLanguage ( ) ) ;
String mobilecall = Util . fromScreen3 ( Util . null2String ( params . get ( "mobilecall" ) ) , user . getLanguage ( ) ) ;
String fax = Util . fromScreen3 ( Util . null2String ( params . get ( "fax" ) ) , user . getLanguage ( ) ) ;
String email = Util . fromScreen3 ( Util . null2String ( params . get ( "email" ) ) , user . getLanguage ( ) ) ;
String dsporder = Util . fromScreen3 ( Util . null2String ( params . get ( "dsporder" ) ) , user . getLanguage ( ) ) ;
String jobcall = Util . fromScreen3 ( Util . null2String ( params . get ( "jobcall" ) ) , user . getLanguage ( ) ) ;
String systemlanguage = Util . fromScreen3 ( Util . null2String ( params . get ( "systemlanguage" ) ) , user . getLanguage ( ) ) ;
if ( systemlanguage . equals ( "" ) | | systemlanguage . equals ( "0" ) ) {
systemlanguage = "7" ;
}
String accounttype = Util . fromScreen3 ( Util . null2String ( params . get ( "accounttype" ) ) , user . getLanguage ( ) ) ;
String belongto = Util . fromScreen3 ( Util . null2String ( params . get ( "belongto" ) ) , user . getLanguage ( ) ) ;
if ( dsporder . length ( ) = = 0 ) dsporder = id ;
if ( accounttype . equals ( "0" ) ) {
belongto = "-1" ;
}
CheckItemBean mobileBean = new CheckItemBean ( "mobile" , mobile , id ) ;
ValidateFieldManager . validate ( mobileBean ) ;
if ( ! mobileBean . isPass ( ) ) {
retMap . put ( "status" , "-1" ) ;
retMap . put ( "message" , mobileBean . getCheckMsg ( ) ) ;
return retMap ;
}
CheckItemBean telephoneBean = new CheckItemBean ( "telephone" , telephone , id ) ;
ValidateFieldManager . validate ( telephoneBean ) ;
if ( ! telephoneBean . isPass ( ) ) {
retMap . put ( "status" , "-1" ) ;
retMap . put ( "message" , telephoneBean . getCheckMsg ( ) ) ;
return retMap ;
}
SimpleBizLogger logger = new SimpleBizLogger ( ) ;
BizLogContext bizLogContext = new BizLogContext ( ) ;
bizLogContext . setLogType ( BizLogType . HRM ) ; //模块类型
bizLogContext . setBelongType ( BizLogSmallType4Hrm . HRM_RSOURCE_CARD ) ; //所属大类型
bizLogContext . setBelongTypeTargetName ( SystemEnv . getHtmlLabelName ( 1361 , user . getLanguage ( ) ) ) ;
bizLogContext . setLogSmallType ( BizLogSmallType4Hrm . HRM_RSOURCE_CARD_BASE ) ; //当前小类型
bizLogContext . setParams ( params ) ; //当前request请求参数
logger . setUser ( user ) ; //当前操作人
String cusFieldNames = ServiceUtil . getCusFieldNames ( "HrmCustomFieldByInfoType" , - 1 , "b" ) ;
String mainSql = "select a.*" + ( cusFieldNames . length ( ) > 0 ? "," + cusFieldNames : "" ) + " from hrmresource a left join cus_fielddata b on a.id=b.id and b.scope='HrmCustomFieldByInfoType' and b.scopeid=-1 where a.id=" + id ;
logger . setMainSql ( mainSql , "id" ) ; //主表sql
logger . setMainPrimarykey ( "id" ) ; //主日志表唯一key
logger . setMainTargetNameColumn ( "lastname" ) ; //当前targetName对应的列( 对应日志中的对象名)
logger . before ( bizLogContext ) ; //吸入操作前日志
//Td9325,解决多账号次账号没有登陆Id在浏览框组织结构中无法显示的问题。
String oldbelongto = "" ;
boolean falg = false ;
String loginid = "" ;
rs . execute ( "select * from HrmResource where id =" + id ) ;
if ( rs . next ( ) ) {
loginid = rs . getString ( "loginid" ) ;
float idsporder = rs . getFloat ( "dsporder" ) ;
if ( idsporder < = 0 ) {
dsporder = rs . getString ( "id" ) ;
} else {
dsporder = "" + idsporder ;
}
String thisAccounttype = rs . getString ( "accounttype" ) ;
if ( thisAccounttype . equals ( "1" ) & & accounttype . equals ( "0" ) ) {
oldbelongto = rs . getString ( "belongto" ) ;
}
}
if ( accounttype . equals ( "1" ) & & loginid . equalsIgnoreCase ( "" ) ) {
rs . execute ( "select loginid from HrmResource where id =" + belongto ) ;
if ( rs . next ( ) ) {
loginid = rs . getString ( 1 ) ;
}
if ( ! loginid . equals ( "" ) ) {
loginid = loginid + ( id + 1 ) ;
falg = true ;
}
}
String sql = "select * from HrmResource where id = " + Util . getIntValue ( id ) ;
rs . execute ( sql ) ;
String oldmanagerid = "" ;
String oldmanagerstr = "" ;
while ( rs . next ( ) ) {
oldmanagerid = rs . getString ( "managerid" ) ;
oldmanagerstr = rs . getString ( "managerstr" ) ;
// 处理managerstr 不以逗号开始或者结束的情况 形如 managerstr: 8 begin
if ( ! oldmanagerstr . startsWith ( "," ) ) oldmanagerstr = "," + oldmanagerstr ;
if ( ! oldmanagerstr . endsWith ( "," ) ) oldmanagerstr = oldmanagerstr + "," ;
// 处理managerstr 不以逗号开始或者结束的情况 形如 managerstr: 8 end
}
//mysql报错问题java.sql.SQLException: Incorrect integer value: '' for column 'COSTCENTERID' at row 1
if ( resourceimageid . length ( ) = = 0 ) resourceimageid = "null" ;
if ( costcenterid . length ( ) = = 0 ) costcenterid = "null" ;
if ( managerid . length ( ) = = 0 ) managerid = "null" ;
if ( assistantid . length ( ) = = 0 ) assistantid = "null" ;
if ( accounttype . length ( ) = = 0 ) accounttype = "null" ;
if ( belongto . length ( ) = = 0 ) belongto = "null" ;
if ( jobcall . length ( ) = = 0 ) jobcall = "null" ;
if ( mobileshowtype . length ( ) = = 0 ) mobileshowtype = "null" ;
if ( StringUtils . isNotEmpty ( workcode ) ) {
CodeRuleManager . getCodeRuleManager ( ) . checkReservedIfDel ( RuleCodeType . USER . getValue ( ) , workcode ) ;
}
para = new StringBuilder ( "" + id + separator + workcode + separator + lastname + separator + sex + separator + resourceimageid
+ separator + departmentid + separator + costcenterid + separator + jobtitle + separator + joblevel
+ separator + jobactivitydesc + separator + managerid + separator + assistantid + separator + status
+ separator + locationid + separator + workroom + separator + telephone + separator + mobile
+ separator + mobilecall + separator + fax + separator + jobcall + separator + systemlanguage
+ separator + accounttype + separator + belongto + separator + email + separator + dsporder + separator + mobileshowtype ) ;
RecordSetTrans rst = new RecordSetTrans ( ) ;
rst . setAutoCommit ( false ) ;
try {
rst . executeProc ( "HrmResourceBasicInfo_Update" , para . toString ( ) ) ;
if ( Util . null2String ( locationid ) . length ( ) > 0 ) {
rst . executeSql ( "update hrmresource set countryid=(select countryid from HrmLocations where id=" + locationid + ") where id=" + id ) ;
}
String logidsql , quickSearchStr = new HrmCommonServiceImpl ( ) . generateQuickSearchStr ( lastname ) ;
if ( falg ) {
logidsql = "update HrmResource set loginid = ?, pinyinlastname = ?, ecology_pinyin_search = ? where id = ?" ;
rst . executeUpdate ( logidsql , loginid , quickSearchStr , quickSearchStr , id ) ;
} else {
logidsql = "update HrmResource set pinyinlastname = ?, ecology_pinyin_search = ? where id = ?" ;
rst . executeUpdate ( logidsql , quickSearchStr , quickSearchStr , id ) ;
}
rst . commit ( ) ;
} catch ( Exception e ) {
rst . rollback ( ) ;
e . printStackTrace ( ) ;
}
if ( ! "7" . equals ( systemlanguage ) & & StringUtils . isNotBlank ( systemlanguage ) ) {
User . setUserLang ( Util . getIntValue ( id ) , Util . getIntValue ( systemlanguage , 7 ) ) ;
}
//421944 用户自定义隐私设置
UserPrivacyComInfo upc = new UserPrivacyComInfo ( ) ;
PrivacyComInfo pc = new PrivacyComInfo ( ) ;
Map < String , String > mapShowSets = pc . getMapShowSets ( ) ;
String insertSql ;
rs = new RecordSet ( ) ;
try {
String deletePriSql = " delete from userprivacysetting where userid= '" + id + "'" ;
rs . execute ( deletePriSql ) ;
for ( Map . Entry < String , String > me : mapShowSets . entrySet ( ) ) {
String fieldName = me . getKey ( ) ;
String fieldVal = Util . null2String ( mapShowSets . get ( fieldName ) ) ;
if ( fieldVal . equals ( "1" ) ) {
String tmpPK = id + "__" + fieldName ;
String tmpPvalue = Util . null2String ( params . get ( fieldName + "showtype" ) ) ;
insertSql = "insert into userprivacysetting (combinedid,userid,ptype,pvalue) values('" + tmpPK + "','" + id + "','" + fieldName + "','" + tmpPvalue + "')" ;
rs . execute ( insertSql ) ;
}
}
upc . removeUserPrivacyCache ( ) ;
} catch ( Exception e ) {
e . printStackTrace ( ) ;
}
int userid = user . getUID ( ) ;
String userpara = "" + userid + separator + today ;
rs . executeProc ( "HrmResource_ModInfo" , "" + id + separator + userpara ) ;
String managerstr = "" ;
if ( ! id . equals ( managerid ) ) {
sql = "select managerstr from HrmResource where id = " + Util . getIntValue ( managerid ) ;
rs . execute ( sql ) ;
while ( rs . next ( ) ) {
managerstr = rs . getString ( "managerstr" ) ;
// 处理managerstr 不以逗号开始或者结束的情况 形如 managerstr: 8 begin
if ( ! managerstr . startsWith ( "," ) ) managerstr = "," + managerstr ;
if ( ! managerstr . endsWith ( "," ) ) managerstr = managerstr + "," ;
// 处理managerstr 不以逗号开始或者结束的情况 形如 managerstr: 8 end
managerstr = "," + managerid + managerstr ;
managerstr = managerstr . endsWith ( "," ) ? managerstr : ( managerstr + "," ) ;
}
} else {
managerstr = "," + managerid + "," ;
}
rst = new RecordSetTrans ( ) ;
rst . setAutoCommit ( false ) ;
try {
para = new StringBuilder ( "" + id + separator + managerstr ) ;
rst . executeProc ( "HrmResource_UpdateManagerStr" , para . toString ( ) ) ;
rst . commit ( ) ;
} catch ( Exception e ) {
rst . rollback ( ) ;
e . printStackTrace ( ) ;
}
managerid = Util . null2String ( managerid ) . trim ( ) ;
oldmanagerid = Util . null2String ( oldmanagerid ) . trim ( ) ;
if ( ! managerid . equals ( oldmanagerid ) & & ! ( ( "" . equals ( managerid ) | | "0" . equals ( managerid ) ) & & ( "" . equals ( oldmanagerid ) | | "0" . equals ( oldmanagerid ) ) ) ) {
String temOldmanagerstr = "," + id + oldmanagerstr ;
temOldmanagerstr = temOldmanagerstr . endsWith ( "," ) ? temOldmanagerstr : ( temOldmanagerstr + "," ) ;
sql = "select id,departmentid,subcompanyid1,managerid,seclevel,managerstr from HrmResource where managerstr like '%" + temOldmanagerstr + "'" ;
rs . execute ( sql ) ;
while ( rs . next ( ) ) {
String nowmanagerstr = Util . null2String ( rs . getString ( "managerstr" ) ) ;
// 处理managerstr 不以逗号开始或者结束的情况 形如 managerstr: 8 begin
if ( ! nowmanagerstr . startsWith ( "," ) ) nowmanagerstr = "," + nowmanagerstr ;
if ( ! nowmanagerstr . endsWith ( "," ) ) nowmanagerstr = nowmanagerstr + "," ;
// 处理managerstr 不以逗号开始或者结束的情况 形如 managerstr: 8 end
String resourceid = rs . getString ( "id" ) ;
//指定上级为自身的情况,不更新自身上级
if ( id . equals ( resourceid ) )
continue ;
String nowmanagerstr2 = "" ;
int index = nowmanagerstr . lastIndexOf ( oldmanagerstr ) ;
if ( index ! = - 1 ) {
if ( ! "" . equals ( managerstr ) ) {
nowmanagerstr2 = nowmanagerstr . substring ( 0 , index ) + ( "" . equals ( oldmanagerstr ) ? managerstr . substring ( 1 ) : managerstr ) ;
} else {
nowmanagerstr2 = nowmanagerstr . substring ( 0 , index ) + ( "" . equals ( oldmanagerstr ) ? "" : "," ) ;
}
}
rst = new RecordSetTrans ( ) ;
rst . setAutoCommit ( false ) ;
try {
para = new StringBuilder ( resourceid + separator + nowmanagerstr2 ) ;
rst . executeProc ( "HrmResource_UpdateManagerStr" , para . toString ( ) ) ;
rst . commit ( ) ;
ResourceComInfo . updateResourceInfoCache ( resourceid ) ; //更新缓存
} catch ( Exception e ) {
rst . rollback ( ) ;
e . printStackTrace ( ) ;
}
}
}
String subcmpanyid1 = DepartmentComInfo . getSubcompanyid1 ( departmentid ) ;
para = new StringBuilder ( "" + id + separator + subcmpanyid1 ) ;
rst = new RecordSetTrans ( ) ;
rst . setAutoCommit ( false ) ;
try {
rst . executeProc ( "HrmResource_UpdateSubCom" , para . toString ( ) ) ;
rst . commit ( ) ;
} catch ( Exception e ) {
rst . rollback ( ) ;
e . printStackTrace ( ) ;
}
if ( ! managerid . equals ( oldmanagerid ) & & ! ( ( "" . equals ( managerid ) | | "0" . equals ( managerid ) ) & & ( "" . equals ( oldmanagerid ) | | "0" . equals ( oldmanagerid ) ) ) ) { //修改人力资源经理,对客户和日程共享重新计算
CrmShareBase . setShareForNewManager ( id ) ;
}
boolean formdefined = false ;
CusFormSettingComInfo CusFormSettingComInfo = new weaver . system . CusFormSettingComInfo ( ) ;
CusFormSetting CusFormSetting = CusFormSettingComInfo . getCusFormSetting ( "hrm" , "HrmResourceBase" ) ;
if ( CusFormSetting ! = null ) {
if ( CusFormSetting . getStatus ( ) = = 2 ) {
//自定义布局页面
formdefined = true ;
}
}
para = new StringBuilder ( "" + id ) ;
for ( int i = 0 ; i < 5 ; i + + ) {
int idx = i ;
if ( formdefined ) idx + + ;
String datefield = Util . null2String ( params . get ( "datefield" + idx ) ) ;
String numberfield = "" + Util . getDoubleValue ( Util . null2String ( params . get ( "numberfield" + idx ) ) , 0 ) ;
String textfield = Util . null2String ( params . get ( "textfield" + idx ) ) ;
String tinyintfield = "" + Util . getIntValue ( Util . null2String ( params . get ( "tinyintfield" + idx ) ) , 0 ) ;
para . append ( separator ) . append ( datefield ) . append ( separator ) . append ( numberfield ) . append ( separator ) . append ( textfield ) . append ( separator ) . append ( tinyintfield ) ;
}
rs . executeProc ( "HrmResourceDefine_Update" , para . toString ( ) ) ;
new Thread ( new OrganisationComRunnable ( "user" , "editbasicinfo" , id + "-" + status ) ) . start ( ) ;
// 改为自进行修正
ResourceComInfo . updateResourceInfoCache ( id ) ;
try {
//OA与第三方接口单条数据同步方法开始
HrmServiceManager . SynInstantHrmResource ( id , "2" ) ;
//OA与第三方接口单条数据同步方法结束
} catch ( Exception e ) {
new BaseBean ( ) . writeLog ( "OA与第三方接口单条数据同步失败" + e ) ;
}
//处理次账号修改为主账号时,检查次账号所属 主账号的 其他设置是否需要修改 add by kzw QC159888
try {
if ( ! oldbelongto . equals ( "" ) ) {
HrmUserSettingComInfo userSetting = new HrmUserSettingComInfo ( ) ;
String belongtoshow = userSetting . getBelongtoshowByUserId ( oldbelongto ) ;
if ( belongtoshow . equals ( "1" ) ) {
rs . execute ( "select id from hrmresource where belongto = " + oldbelongto ) ;
if ( ! rs . next ( ) ) {
String setId = userSetting . getId ( oldbelongto ) ;
rs . execute ( "update HrmUserSetting set belongtoshow=0 where id=" + setId ) ;
userSetting . removeHrmUserSettingComInfoCache ( ) ;
}
}
}
} catch ( Exception e ) {
new BaseBean ( ) . writeLog ( e . getMessage ( ) ) ;
}
rs . execute ( "update HrmResource set " + DbFunctionUtil . getUpdateSetSql ( rs . getDBType ( ) , user . getUID ( ) ) + " where id=" + id ) ;
rs . execute ( "update HrmResourceManager set " + DbFunctionUtil . getUpdateSetSql ( rs . getDBType ( ) , user . getUID ( ) ) + " where id=" + id ) ;
//写入操作后日志
LogUtil . writeBizLog ( logger . getBizLogContexts ( ) ) ;
HrmFaceCheckManager . sync ( id , HrmFaceCheckManager . getOptUpdate ( ) , "hrm_e9_HrmResourceBaseService_editResourceBase" , HrmFaceCheckManager . getOaResource ( ) ) ;
retMap . put ( "status" , "1" ) ;
retMap . put ( "id" , id ) ;
} catch ( Exception e ) {
new BaseBean ( ) . writeLog ( e ) ;
retMap . put ( "status" , "-1" ) ;
retMap . put ( "message" , "" + weaver . systeminfo . SystemEnv . getHtmlLabelName ( 22620 , weaver . general . ThreadVarLanguage . getLang ( ) ) + "" ) ;
}
return retMap ;
}
private static void updateWorkInfo ( String id , User user , Map < String , Object > params ) {
try {
RecordSet rs = new RecordSet ( ) ;
String sql = "" ;
String sql ;
String companystartdate = Util . fromScreen3 ( Util . null2String ( params . get ( "companystartdate" ) ) , user . getLanguage ( ) ) ;
String workstartdate = Util . fromScreen3 ( Util . null2String ( params . get ( "workstartdate" ) ) , user . getLanguage ( ) ) ;
@ -612,4 +983,62 @@ public class ResourceSyncUtil {
new BaseBean ( ) . writeLog ( e ) ;
}
}
public static Map < String , Object > convertEcResourceParams ( Map < String , Object > params ) {
Map < String , Object > convertParams = new HashMap < > ( ) ;
String jclResourceId = Util . null2String ( params . get ( "id" ) ) ;
String ecResourceId = "" ;
if ( StringUtils . isNotBlank ( jclResourceId ) ) {
ecResourceId = MapperProxyFactory . getProxy ( HrmResourceMapper . class ) . getEcResourceId ( jclResourceId ) ;
}
convertParams . put ( "id" , ecResourceId ) ;
// 部门ID
convertParams . put ( "departmentid" , params . get ( "ec_department" ) ) ;
// EC岗位
String jclJobId = Util . null2String ( params . get ( "job_title" ) ) ;
String ecJobId = "1" ;
if ( StringUtils . isNotBlank ( jclJobId ) ) {
ecJobId = EcHrmRelationUtil . getEcJobId ( Long . parseLong ( jclJobId ) ) ;
}
convertParams . put ( "jobtitle" , ecJobId ) ;
convertParams . put ( "loginid" , params . get ( "login_id" ) ) ;
convertParams . put ( "accounttype" , params . get ( "account_type" ) ) ;
convertParams . put ( "password" , params . get ( "pass_word" ) ) ;
convertParams . put ( "seclevel" , params . get ( "sec_level" ) ) ;
convertParams . put ( "workstartdate" , params . get ( "work_start_date" ) ) ;
convertParams . put ( "companystartdate" , params . get ( "company_start_date" ) ) ;
convertParams . put ( "dsporder" , params . get ( "show_order" ) ) ;
convertParams . put ( "workcode" , params . get ( "work_code" ) ) ;
convertParams . put ( "lastname" , params . get ( "last_name" ) ) ;
convertParams . put ( "sex" , params . get ( "sex" ) ) ;
convertParams . put ( "resourceimageid" , params . get ( "resource_image_id" ) ) ;
convertParams . put ( "joblevel" , params . get ( "job_level" ) ) ;
convertParams . put ( "jobactivitydesc" , params . get ( "job_activity_desc" ) ) ;
convertParams . put ( "managerid" , params . get ( "manager_id" ) ) ;
convertParams . put ( "assistantid" , params . get ( "assistant_id" ) ) ;
convertParams . put ( "status" , params . get ( "status" ) ) ;
convertParams . put ( "locationid" , params . get ( "location_id" ) ) ;
convertParams . put ( "workroom" , params . get ( "workroom" ) ) ;
convertParams . put ( "telephone" , params . get ( "telephone" ) ) ;
convertParams . put ( "mobile" , params . get ( "mobile" ) ) ;
convertParams . put ( "mobilecall" , params . get ( "mobile_call" ) ) ;
convertParams . put ( "fax" , params . get ( "fax" ) ) ;
convertParams . put ( "jobcall" , params . get ( "job_call" ) ) ;
convertParams . put ( "email" , params . get ( "email" ) ) ;
convertParams . put ( "systemlanguage" , params . get ( "system_language" ) ) ;
convertParams . put ( "belongto" , params . get ( "belong_to" ) ) ;
convertParams . put ( "mobileshowtype" , "" ) ;
convertParams . put ( "costcenterid" , "" ) ;
convertParams . put ( "cmd" , "" ) ;
convertParams . put ( "rcId" , "" ) ;
convertParams . put ( "departmentvirtualids" , "" ) ;
// 更新EC人员用到参数
convertParams . put ( "editcontact" , "" ) ;
convertParams . put ( "resourceimageBase64" , "" ) ;
convertParams . put ( "oldresourceimage" , "" ) ;
return convertParams ;
}
}