@ -4,24 +4,36 @@ import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject ;
import org.apache.commons.lang.StringUtils ;
import weaver.conn.RecordSet ;
import weaver.formmode.setup.ModeRightInfo ;
import weaver.general.BaseBean ;
import weaver.general.Util ;
import weaver.interfaces.dito.comInfo.PropBean ;
import java.text.SimpleDateFormat ;
import java.util.Date ;
import java.util.HashMap ;
import java.util.Map ;
import java.util.UUID ;
import java.util.concurrent.locks.Lock ;
import java.util.concurrent.locks.ReentrantLock ;
public class HrmRocketmqUtil {
private Lock lock = new ReentrantLock ( ) ;
public int updateOrgData ( String data )
{
BaseBean bb = new BaseBean ( ) ;
int errcount = 0 ;
try {
lock . lock ( ) ;
try {
RecordSet rs = new RecordSet ( ) ;
String cus_staff = PropBean . getUfPropValue ( "cus_staff" ) ;
SimpleDateFormat sdf = new SimpleDateFormat ( "yyyy-MM-dd HH:mm" ) ;
String nowDateTime = sdf . format ( new Date ( ) ) ;
JSONObject jsonObject = JSONObject . parseObject ( data ) ;
if ( jsonObject . containsKey ( "masterInfo" ) )
{
@ -50,16 +62,70 @@ public class HrmRocketmqUtil {
managerid = Util . null2String ( rs . getString ( "id" ) ) ;
}
if ( StringUtils . isNotEmpty ( personid ) & & StringUtils . isNotEmpty ( managerid ) ) {
Map < String , String > dataMap = new HashMap < String , String > ( ) ;
dataMap . put ( "syndate" , nowDateTime ) ;
dataMap . put ( "reqmessage" , jsonObject . toJSONString ( ) ) ;
dataMap . put ( "systable" , "hrmresource" ) ;
sql = " update hrmresource h set h.managerid = ? where id = ? " ;
boolean flag = rs . executeUpdate ( sql , new Object [ ] { managerid , personid } ) ;
if ( ! flag ) {
errcount + + ;
dataMap . put ( "errmessage" , "人员更新SQL执行错误,managerid:" + managerid + "、personid:" + personid ) ;
} else {
dataMap . put ( "errmessage" , "人员更新SQL执行成功" ) ;
}
recordErrorData ( dataMap ) ;
} else {
Map < String , String > dataMap = new HashMap < String , String > ( ) ;
dataMap . put ( "syndate" , nowDateTime ) ;
dataMap . put ( "reqmessage" , jsonObject . toJSONString ( ) ) ;
dataMap . put ( "systable" , "hrmresource" ) ;
dataMap . put ( "errmessage" , "入参参数personno、managerno在cus_fielddata查询为空" ) ;
recordErrorData ( dataMap ) ;
}
} else {
Map < String , String > dataMap = new HashMap < String , String > ( ) ;
dataMap . put ( "syndate" , nowDateTime ) ;
dataMap . put ( "reqmessage" , jsonObject . toJSONString ( ) ) ;
dataMap . put ( "systable" , "hrmresource" ) ;
dataMap . put ( "errmessage" , "入参参数personno、managerno未空" ) ;
recordErrorData ( dataMap ) ;
}
} else {
Map < String , String > dataMap = new HashMap < String , String > ( ) ;
dataMap . put ( "syndate" , nowDateTime ) ;
dataMap . put ( "reqmessage" , jsonObject . toJSONString ( ) ) ;
dataMap . put ( "systable" , "hrmresource" ) ;
dataMap . put ( "errmessage" , "入参参数status不为1" ) ;
recordErrorData ( dataMap ) ;
}
}
} else {
Map < String , String > dataMap = new HashMap < String , String > ( ) ;
dataMap . put ( "syndate" , nowDateTime ) ;
dataMap . put ( "reqmessage" , jsonObject . toJSONString ( ) ) ;
dataMap . put ( "systable" , "hrmresource" ) ;
dataMap . put ( "errmessage" , "入参参数缺少datas" ) ;
recordErrorData ( dataMap ) ;
}
} else {
Map < String , String > dataMap = new HashMap < String , String > ( ) ;
dataMap . put ( "syndate" , nowDateTime ) ;
dataMap . put ( "reqmessage" , jsonObject . toJSONString ( ) ) ;
dataMap . put ( "systable" , "hrmresource" ) ;
dataMap . put ( "errmessage" , "入参参数缺少masterInfo" ) ;
recordErrorData ( dataMap ) ;
}
} catch ( Exception e ) {
bb . writeLog ( "e:" + e ) ;
@ -68,4 +134,71 @@ public class HrmRocketmqUtil {
}
return errcount ;
}
/ * * *
*
* /
public void recordErrorData ( Map < String , String > dataMap ) {
String uftable = "uf_orgmq" ;
RecordSet rs = new RecordSet ( ) ;
BaseBean bb = new BaseBean ( ) ;
ModeRightInfo mode = new ModeRightInfo ( ) ;
SimpleDateFormat sdf1 = new SimpleDateFormat ( "yyyy-MM-dd" ) ; //当前时间日期
SimpleDateFormat sdf2 = new SimpleDateFormat ( "HH:mm:ss" ) ;
int formmodeid = 0 ;
String modedatacreater = "1" ;
String modedatacreatertype = "0" ;
String modedatacreatedate = sdf1 . format ( new Date ( ) ) ;
String modedatacreatetime = sdf2 . format ( new Date ( ) ) ;
String uuid = UUID . randomUUID ( ) . toString ( ) ;
try {
String sql = " select k.id from modeinfo k \n" +
" inner join workflow_bill l on formid = l.id\n" +
" where l.tablename = ? " ;
rs . executeQuery ( sql , new Object [ ] { uftable } ) ;
if ( rs . next ( ) ) {
formmodeid = Util . getIntValue ( Util . null2String ( rs . getString ( "id" ) ) ) ;
}
String syndate = Util . null2String ( dataMap . get ( "syndate" ) ) ;
String reqmessage = Util . null2String ( dataMap . get ( "reqmessage" ) ) ;
String errmessage = Util . null2String ( dataMap . get ( "errmessage" ) ) ;
String systable = Util . null2String ( dataMap . get ( "systable" ) ) ;
int bool = 0 ;
sql = " insert into " + uftable + "(uuid,formmodeid,modedatacreater,modedatacreatertype,modedatacreatedate,modedatacreatetime,syndate,reqmessage,errmessage,systable)" +
" values(?,?,?,?,?,?,?,?,?,?)" ;
boolean flag = rs . executeUpdate ( sql , new Object [ ] { uuid , formmodeid , modedatacreater , modedatacreatertype , modedatacreatedate , modedatacreatetime , syndate , reqmessage , errmessage , systable } ) ;
bb . writeLog ( "sql;" + sql ) ;
if ( flag ) {
bool + + ;
}
bb . writeLog ( "bool;" + bool ) ;
if ( bool > 0 )
{
String dataid = "" ;
sql = " select * from " + uftable + " where uuid=? " ;
bb . writeLog ( "sql:" + sql ) ;
rs . executeQuery ( sql , new Object [ ] { uuid } ) ;
if ( rs . next ( ) ) {
dataid = Util . null2String ( rs . getString ( "id" ) ) ;
}
bb . writeLog ( "sql:" + sql ) ;
bb . writeLog ( "dataid:" + dataid ) ;
bb . writeLog ( "modeid:" + formmodeid ) ;
if ( StringUtils . isNotEmpty ( dataid ) )
{
mode . setNewRight ( true ) ;
mode . editModeDataShare ( Integer . valueOf ( modedatacreater ) , formmodeid , Integer . parseInt ( dataid ) ) ;
}
}
} catch ( Exception e ) {
bb . writeLog ( "e:" + e ) ;
}
}
}