Ecology-Dev-chaofa/盛虹化纤/interface/shhq/checkYrzsp.jsp

1987 lines
80 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<%@ page contentType="text/html; charset=UTF-8" %>
<%@ page import="weaver.conn.RecordSet" %>
<%@ page import="weaver.general.Util" %>
<%@ page import="com.alibaba.fastjson.JSONObject" %>
<%@ page import="weaver.hrm.*" %>
<%@ page import="weaver.general.TimeUtil" %>
<%@ page import="java.util.*" %>
<%@ page import="weaver.general.BaseBean" %>
<%@ page import="weaver.soa.workflow.request.*" %>
<%@ page import="weaver.integration.logging.Logger" %>
<%@ page import="weaver.integration.logging.LoggerFactory" %>
<%@ page import="weaver.general.InitServiceXMLtoDB" %>
<%@ page import="weaver.formmode.setup.ModeRightInfo" %>
<%@ page import="weaver.interfaces.workflow.action.Action" %>
<%@ page import="com.alibaba.fastjson.JSONArray" %>
<%@ page import="weaver.hrm.company.SubCompanyComInfo" %>
<%@ page import="weaver.interfaces.shhq.util.HttpUtil" %>
<%@ page import="weaver.hrm.company.DepartmentComInfo" %>
<jsp:useBean id="rs" class="weaver.conn.RecordSet" scope="page" />
<jsp:useBean id="rs1" class="weaver.conn.RecordSet" scope="page" />
<jsp:useBean id="rs2" class="weaver.conn.RecordSet" scope="page" />
<jsp:useBean id="rs3" class="weaver.conn.RecordSet" scope="page" />
<%
JSONObject jsonObject = new JSONObject();
String bool = "0";
String flag = "0";
String sfqsfs = "1";
User user = HrmUserVarify.getUser(request, response);
int userid = user.getUID();
String username = user.getUsername();
String currentDate = TimeUtil.getCurrentDateString();
String title = "入职办理流程-"+username+"-"+currentDate;
String mainid = Util.null2String(request.getParameter("mainid"));
String workflowid = rs.getPropValue("hrm_shhq","rzbllc_workflowid");
String formtable = rs.getPropValue("hrm_shhq","rzbl_table");
String qsfstzslc_ybgw_billid = rs.getPropValue("hrm_shhq","qsfstzslc_ybgw_billid");
String qsfstzslc_glry_billid = rs.getPropValue("hrm_shhq","qsfstzslc_glry_billid");
String qsfstzslc_fpry_billid = rs.getPropValue("hrm_shhq","qsfstzslc_fpry_billid");
String qsfstzslc_tzzyry_billid = rs.getPropValue("hrm_shhq","qsfstzslc_tzzyry_billid");
String qsfstzslc_sxs_billid = rs.getPropValue("hrm_shhq","qsfstzslc_sxs_billid");
String qsfstzslc_billid = "";
String errorinfo = "";
String newerrorinfo = "";
try{
rs.executeQuery("select * from uf_xygrztz where id=?", mainid);
while (rs.next()) {
Map<String,Object> map = new HashMap();
//人员类型
String type = Util.null2String(rs.getString("rylx"));
if("0".equals(type)){
qsfstzslc_billid = qsfstzslc_ybgw_billid;
}else if("1".equals(type)){
qsfstzslc_billid = qsfstzslc_glry_billid;
}else if("2".equals(type)){
qsfstzslc_billid = qsfstzslc_fpry_billid;
}else if("3".equals(type)){
qsfstzslc_billid = qsfstzslc_tzzyry_billid;
}else if("4".equals(type)){
qsfstzslc_billid = qsfstzslc_sxs_billid;
}
//员工工号
String yggh = Util.null2String(rs.getString("yggh"));
if(yggh != null && !"".equals(yggh)){
map.put("yggh",yggh);
}else{
errorinfo += "员工工号值为空,";
}
//姓名
String xm = Util.null2String(rs.getString("xm"));
if(xm != null && !"".equals(xm)){
map.put("xm",xm);
}else{
errorinfo += "姓名值为空,";
}
//身份证正面
String sfzzm = Util.null2String(rs.getString("sfzzm"));
if(sfzzm != null && !"".equals(sfzzm)){
map.put("sfzzm",sfzzm);
}else{
errorinfo += "身份证正面值为空,";
}
//身份证反面
String sfzfm = Util.null2String(rs.getString("sfzfm"));
if(sfzfm != null && !"".equals(sfzfm)){
map.put("sfzfm",sfzfm);
}else{
errorinfo += "身份证反面值为空,";
}
//身份证号码
String sfzhm = Util.null2String(rs.getString("sfzhm"));
if(sfzhm != null && !"".equals(sfzhm)){
map.put("sfzhm",sfzhm);
}else{
errorinfo += "身份证号码值为空,";
}
//性别
String xb = Util.null2String(rs.getString("xb"));
if(xb != null && !"".equals(xb)){
map.put("xb",xb);
}else{
errorinfo += "性别值为空,";
}
//家庭住址
String jtzz = Util.null2String(rs.getString("jtzz"));
if(jtzz != null && !"".equals(jtzz)){
map.put("jtzz",jtzz);
}else{
errorinfo += "家庭住址值为空,";
}
//签发机关
String qfjg = Util.null2String(rs.getString("qfjg"));
if(qfjg != null && !"".equals(qfjg)){
map.put("qfjg",qfjg);
}else{
errorinfo += "签发机关值为空,";
}
//有效期
String yxq = Util.null2String(rs.getString("yxq"));
if(yxq != null && !"".equals(yxq)){
map.put("yxq",yxq);
}else{
errorinfo += "有效期值为空,";
}
//出生日期
String csrq = Util.null2String(rs.getString("csrq"));
if(csrq != null && !"".equals(csrq)){
map.put("csrq",csrq);
}else{
errorinfo += "出生日期值为空,";
}
//民族
String mz = Util.null2String(rs.getString("mz"));
if(mz != null && !"".equals(mz)){
map.put("mz",mz);
}else{
errorinfo += "民族值为空,";
}
//婚姻状况
String hyzk = Util.null2String(rs.getString("hyzk"));
if(hyzk != null && !"".equals(hyzk)){
map.put("hyzk",hyzk);
}else{
errorinfo += "婚姻状况值为空,";
}
//最高学历
String zgxl = Util.null2String(rs.getString("xl"));
if(zgxl != null && !"".equals(zgxl)){
map.put("zgxl",zgxl);
}else{
errorinfo += "最高学历值为空,";
}
//籍贯
String jg = Util.null2String(rs.getString("jg"));
if(jg != null && !"".equals(jg)){
map.put("jg",jg);
}else{
errorinfo += "籍贯值为空,";
}
//是否全日制
String sfqrz = Util.null2String(rs.getString("sfqrz"));
if(sfqrz != null && !"".equals(sfqrz)){
map.put("sfqrz",sfqrz);
}
// else{
// errorinfo += "是否全日制值为空,";
// }
//专业
String zy = Util.null2String(rs.getString("zy"));
if(zy != null && !"".equals(zy)){
map.put("zy",zy);
}
// else{
// errorinfo += "专业值为空,";
// }
//毕业院校
String byyx = Util.null2String(rs.getString("byyx"));
if(byyx != null && !"".equals(byyx)){
map.put("byyx",byyx);
}
// else{
// errorinfo += "毕业院校值为空,";
// }
// //毕业日期
String byrq = Util.null2String(rs.getString("byrq"));
if(byrq != null && !"".equals(byrq)){
map.put("byrq",byrq);
}
// else{
// errorinfo += "毕业日期值为空,";
// }
//后学历
String hxl = Util.null2String(rs.getString("hxl"));
if(hxl != null && !"".equals(hxl)){
map.put("hxl",hxl);
}
// else{
// errorinfo += "后学历值为空,";
// }
//后学历毕业院校
String hxlbyyx = Util.null2String(rs.getString("hxlbyyx"));
if(hxlbyyx != null && !"".equals(hxlbyyx)){
map.put("hxlbyyx",hxlbyyx);
}
// else{
// errorinfo += "后学历毕业院校值为空,";
// }
//后学历毕业专业
String hxlbyzy = Util.null2String(rs.getString("hxlbyzy"));
if(hxlbyzy != null && !"".equals(hxlbyzy)){
map.put("hxlbyzy",hxlbyzy);
}
// else{
// errorinfo += "后学历毕业专业值为空,";
// }
//参加工作日期
String cjgzrq = Util.null2String(rs.getString("cjgzrq"));
if(cjgzrq != null && !"".equals(cjgzrq)){
map.put("cjgzrq",cjgzrq);
}
// else{
// errorinfo += "参加工作日期值为空,";
// }
//政治面貌
String zzmm = Util.null2String(rs.getString("zzmm"));
if(zzmm != null && !"".equals(zzmm)){
map.put("zzmm",zzmm);
}else{
errorinfo += "政治面貌值为空,";
}
//身高
String sg = Util.null2String(rs.getString("sg"));
if(sg != null && !"".equals(sg)){
map.put("sg",sg);
}else{
errorinfo += "身高值为空,";
}
//体重
String tz = Util.null2String(rs.getString("tz"));
if(tz != null && !"".equals(tz)){
map.put("tz",tz);
}else{
errorinfo += "体重值为空,";
}
//工作服尺寸
String gzfcc = Util.null2String(rs.getString("gzfcc"));
if(gzfcc != null && !"".equals(gzfcc)){
map.put("gzfcc",gzfcc);
}else{
errorinfo += "工作服尺寸值为空,";
}
//个人特长
String grtc = Util.null2String(rs.getString("grtc"));
if(grtc != null && !"".equals(grtc)){
map.put("grtc",grtc);
}
// else{
// errorinfo += "个人特长值为空,";
// }
//户口性质
String hkxz = Util.null2String(rs.getString("hkxz"));
if(hkxz != null && !"".equals(hkxz)){
map.put("hkxz",hkxz);
}else{
errorinfo += "户口性质值为空,";
}
//实际居住地
String sjjzd = Util.null2String(rs.getString("sjjzd"));
if(sjjzd != null && !"".equals(sjjzd)){
map.put("sjjzd",sjjzd);
}else{
errorinfo += "实际居住地值为空,";
}
//爱心基金
String axjj = Util.null2String(rs.getString("axjj"));
if(axjj != null && !"".equals(axjj)){
map.put("axjj",axjj);
}else{
errorinfo += "爱心基金值为空,";
}
//微信号
String wxh = Util.null2String(rs.getString("wxh"));
if(wxh != null && !"".equals(wxh)){
map.put("wxh",wxh);
}else{
errorinfo += "微信号值为空,";
}
//车牌
String cp = Util.null2String(rs.getString("cp"));
if(cp != null && !"".equals(cp)){
map.put("cp",cp);
}
// else{
// errorinfo += "车牌值为空,";
// }
//职业资格证书/职称
String zyzgzszc = Util.null2String(rs.getString("zyzgzszc"));
if(zyzgzszc != null && !"".equals(zyzgzszc)){
map.put("zyzgzszc",zyzgzszc);
}
// else{
// errorinfo += "职业资格证书/职称值为空,";
// }
//移动电话
String yddh = Util.null2String(rs.getString("yddh"));
if(yddh != null && !"".equals(yddh)){
map.put("yddh",yddh);
}else{
errorinfo += "移动电话值为空,";
}
//紧急联系人1姓名
String jjlxr1xm = Util.null2String(rs.getString("jjlxr1xm"));
if(jjlxr1xm != null && !"".equals(jjlxr1xm)){
map.put("jjlxr1xm",jjlxr1xm);
}else{
errorinfo += "紧急联系人1姓名值为空,";
}
//紧急联系人1关系
String jjlxr1gx = Util.null2String(rs.getString("jjlxr1gx"));
if(jjlxr1gx != null && !"".equals(jjlxr1gx)){
map.put("jjlxr1gx",jjlxr1gx);
}else{
errorinfo += "紧急联系人1关系值为空,";
}
//紧急联系人1电话
String jjlxr1dh = Util.null2String(rs.getString("jjlxr1dh"));
if(jjlxr1dh != null && !"".equals(jjlxr1dh)){
map.put("jjlxr1dh",jjlxr1dh);
}else{
errorinfo += "紧急联系人1电话值为空,";
}
//紧急联系人2姓名
String jjlxr2xm = Util.null2String(rs.getString("jjlxr2xm"));
if(jjlxr2xm != null && !"".equals(jjlxr2xm)){
map.put("jjlxr2xm",jjlxr2xm);
}
// else{
// errorinfo += "紧急联系人2姓名值为空,";
// }
//紧急联系人2关系
String jjlxr2gx = Util.null2String(rs.getString("jjlxr2gx"));
if(jjlxr2gx != null && !"".equals(jjlxr2gx)){
map.put("jjlxr2gx",jjlxr2gx);
}
// else{
// errorinfo += "紧急联系人2关系值为空,";
// }
//紧急联系人2电话
String jjlxr2dh = Util.null2String(rs.getString("jjlxr2dh"));
if(jjlxr2dh != null && !"".equals(jjlxr2dh)){
map.put("jjlxr2dh",jjlxr2dh);
}
// else{
// errorinfo += "紧急联系人2电话值为空,";
// }
//照片
String gzzp = Util.null2String(rs.getString("gzzp"));
if(gzzp != null && !"".equals(gzzp)){
map.put("gzzp",gzzp);
}else{
errorinfo += "照片值为空,";
}
//学历证明
String xlxwzm = Util.null2String(rs.getString("xlxwzm"));
if(xlxwzm != null && !"".equals(xlxwzm)){
map.put("xlxwzm",xlxwzm);
}
// else{
// errorinfo += "学历证明值为空,";
// }
//离职证明
String sjdwlzzm = Util.null2String(rs.getString("sjdwlzzm"));
if(sjdwlzzm != null && !"".equals(sjdwlzzm)){
map.put("sjdwlzzm",sjdwlzzm);
}
// else{
// errorinfo += "离职证明值为空,";
// }
//无犯罪记录证明
String wfzjlzm = Util.null2String(rs.getString("wfzjlzm"));
if(wfzjlzm != null && !"".equals(wfzjlzm)){
map.put("wfzjlzm",wfzjlzm);
}
// else{
// errorinfo += "无犯罪记录证明值为空,";
// }
//体检合格报告
String tjbg = Util.null2String(rs.getString("tjbg"));
if(tjbg != null && !"".equals(tjbg)){
map.put("tjbg",tjbg);
}
// else{
// errorinfo += "体检合格报告值为空,";
// }
//个人征信报告
String grzxbg = Util.null2String(rs.getString("grzxbg"));
if(grzxbg != null && !"".equals(grzxbg)){
map.put("grzxbg",grzxbg);
}
// else{
// errorinfo += "个人征信报告值为空,";
// }
//是否曾经有失业登记
String sfzjysydj = Util.null2String(rs.getString("sfzjysydj"));
if(sfzjysydj != null && !"".equals(sfzjysydj)){
map.put("sfzjysydj",sfzjysydj);
}
// else{
// errorinfo += "是否曾经有失业登记值为空,";
// }
//是否贫困人口
String sfpkrk = Util.null2String(rs.getString("sfpkrk"));
if(sfpkrk != null && !"".equals(sfpkrk)){
map.put("sfpkrk",sfpkrk);
}
// else{
// errorinfo += "是否贫困人口值为空,";
// }
//是否退役军人
String sftyjr = Util.null2String(rs.getString("sftyjr"));
if(sftyjr != null && !"".equals(sftyjr)){
map.put("sftyjr",sftyjr);
}else{
errorinfo += "是否退役军人值为空,";
}
//区域
String qy = Util.null2String(rs.getString("qy"));
if(qy != null && !"".equals(qy)){
map.put("qy",qy);
}else{
errorinfo += "区域值为空,";
}
//公司名称
String gsmc = Util.null2String(rs.getString("gsmc"));
if(gsmc != null && !"".equals(gsmc)){
map.put("gsmc",gsmc);
}else{
errorinfo += "公司名称值为空,";
}
//部门
String bm = Util.null2String(rs.getString("bm"));
if(bm != null && !"".equals(bm)){
map.put("bm",bm);
}else{
errorinfo += "部门值为空,";
}
//岗位
String gw = Util.null2String(rs.getString("gw"));
if(gw != null && !"".equals(gw)){
map.put("gw",gw);
}else{
errorinfo += "岗位值为空,";
}
//入职日期
String rzrq = Util.null2String(rs.getString("rzrq"));
if(rzrq != null && !"".equals(rzrq)){
map.put("rzrq",rzrq);
}else{
errorinfo += "入职日期值为空,";
}
//用工性质
String ygxz = Util.null2String(rs.getString("ygxz"));
if(ygxz != null && !"".equals(ygxz)){
map.put("ygxz",ygxz);
}else{
errorinfo += "用工性质值为空,";
}
//办公地点
String bgdd = Util.null2String(rs.getString("bgdd"));
if(bgdd != null && !"".equals(bgdd)){
map.put("bgdd",bgdd);
}else{
errorinfo += "办公地点值为空,";
}
//招工渠道
String zgqd = Util.null2String(rs.getString("zgqd"));
if(zgqd != null && !"".equals(zgqd)){
map.put("zgqd",zgqd);
}else{
errorinfo += "招工渠道值为空,";
}
//行政级别
String hzjb = Util.null2String(rs.getString("hzjb"));
if(hzjb != null && !"".equals(hzjb)){
map.put("hzjb",hzjb);
}else{
errorinfo += "行政级别值为空,";
}
//个人征信情况
String grzxqk = Util.null2String(rs.getString("grzxqk"));
if(grzxqk != null && !"".equals(grzxqk)){
map.put("grzxqk",grzxqk);
}
// else{
// errorinfo += "个人征信情况值为空,";
// }
//背景调查(安保类)
String bjdcabl = Util.null2String(rs.getString("bjdcabl"));
if(bjdcabl != null && !"".equals(bjdcabl)){
map.put("bjdcabl",bjdcabl);
}
// else{
// errorinfo += "背景调查(安保类)值为空,";
// }
//体检结果
String tjjg = Util.null2String(rs.getString("tjjg"));
if(tjjg != null && !"".equals(tjjg)){
map.put("tjjg",tjjg);
}
// else{
// errorinfo += "体检结果值为空,";
// }
//休息/是否倒班
String xxsfdb = Util.null2String(rs.getString("xxsfdb"));
if(xxsfdb != null && !"".equals(xxsfdb)){
map.put("xxsfdb",xxsfdb);
}
// else{
// errorinfo += "休息/是否倒班值为空,";
// }
//社保公积金基数
String sbgjjjs = Util.null2String(rs.getString("sbgjjjs"));
if(sbgjjjs != null && !"".equals(sbgjjjs)){
map.put("sbgjjjs",sbgjjjs);
}
// else{
// errorinfo += "社保公积金基数值为空,";
// }
//通讯费
String txf = Util.null2String(rs.getString("txf"));
if(txf != null && !"".equals(txf)){
map.put("txf",txf);
}
// else{
// errorinfo += "通讯费值为空,";
// }
//食宿
String ss = Util.null2String(rs.getString("ss"));
if(ss != null && !"".equals(ss)){
map.put("ss",ss);
}
// else{
// errorinfo += "食宿值为空,";
// }
//其他告知内容
String qgznr = Util.null2String(rs.getString("qgznr"));
if(qgznr != null && !"".equals(qgznr)){
map.put("qgznr",qgznr);
}
// else{
// errorinfo += "其他告知内容值为空,";
// }
//录用意见
String lyyj = Util.null2String(rs.getString("lyyj"));
if(lyyj != null && !"".equals(lyyj)){
map.put("lyyj",lyyj);
}
// else{
// errorinfo += "录用意见值为空,";
// }
//培训组考核结果
String pxzkhjg = Util.null2String(rs.getString("pxzkhjg"));
if(pxzkhjg != null && !"".equals(pxzkhjg)){
map.put("pxzkhjg",pxzkhjg);
}
// else{
// errorinfo += "培训组考核结果值为空,";
// }
//环安考核结果
String hakhjg = Util.null2String(rs.getString("hakhjg"));
if(hakhjg != null && !"".equals(hakhjg)){
map.put("hakhjg",hakhjg);
}
// else{
// errorinfo += "环安考核结果值为空,";
// }
//招聘批次号
String zppch = Util.null2String(rs.getString("zppch"));
if(zppch != null && !"".equals(zppch)){
map.put("zppch",zppch);
}else{
errorinfo += "招聘批次号值为空,";
}
//招聘专员工号
String zpzygh = Util.null2String(rs.getString("zpzygh"));
if(zpzygh != null && !"".equals(zpzygh)){
map.put("zpzygh",zpzygh);
}else{
errorinfo += "招聘专员工号值为空,";
}
//入职状态
String rzzt = Util.null2String(rs.getString("rzzt"));
if(rzzt != null && !"".equals(rzzt)){
map.put("rzzt",rzzt);
}else{
errorinfo += "入职状态值为空,";
}
//电子邮箱
String dzyx = Util.null2String(rs.getString("dzyx"));
if(dzyx != null && !"".equals(dzyx)){
map.put("dzyx",dzyx);
}
// else{
// errorinfo += "电子邮箱值为空,";
// }
//合同类型
String htlx = Util.null2String(rs.getString("htlx"));
if(htlx != null && !"".equals(htlx)){
map.put("htlx",htlx);
}
// else{
// errorinfo += "合同类型值为空,";
// }
//合同开始日期
String htksrq = Util.null2String(rs.getString("htksrq"));
//合同结束日期
String htjsrq = Util.null2String(rs.getString("htjsrq"));
String ksyear = "0";
String jsyear = "0";
if(htksrq != null && !"".equals(htksrq)) {
ksyear = htksrq.substring(0,4);
map.put("htksrq", htksrq);
}else{
errorinfo += "合同开始日期值为空,";
}
if(htjsrq != null && !"".equals(htjsrq)) {
jsyear = htjsrq.substring(0,4);
map.put("htjsrq", htjsrq);
}else{
errorinfo += "合同结束日期值为空,";
}
//查 年份
String chayear = String.valueOf(Integer.parseInt(jsyear) - Integer.parseInt(ksyear));
//合同类型 0-A固定 1-B不固定
if("9999".equals(jsyear)){
map.put("htlx", "1");
}else{
map.put("htlx", "0");
}
//试用期月数
String syqys = Util.null2String(rs.getString("syqys"));
if(syqys != null && !"".equals(syqys)){
map.put("syqys",syqys);
}
// else{
// errorinfo += "试用期月数值为空,";
// }
//试用期结束日期
String syqjsrq = Util.null2String(rs.getString("syqjsrq"));
if(syqjsrq != null && !"".equals(syqjsrq)){
map.put("syqjsrq",syqjsrq);
}else{
errorinfo += "试用期结束日期值为空,";
}
//省
String province = Util.null2String(rs.getString("s"));
if(province != null && !"".equals(province)){
map.put("s",province);
}else{
errorinfo += "省值为空,";
}
// 判断是否 走完了 签署入职合同相关协议
boolean boles = checkHasQsfstzslc(qsfstzslc_billid,sfzhm);
if(boles){
sfqsfs = "1";
boolean boole = checkHasWorkflow(sfzhm);
rs.writeLog("============ boole ================ " + boole);
rs.writeLog("============ userid ================ " + userid);
rs.writeLog("============ title ================ " + title);
rs.writeLog("============ map ================ " + map);
if (!boole) {
if(errorinfo.length() < 5){
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
//构建明细1
createMx1(xm,yggh,mainid,list);
//构建明细2
// createMx2(xm,yggh,mainid,list2);
//构建明细3
// createMx3(xm,yggh,mainid,list);
String requestid = Createrequest(Integer.parseInt(workflowid), userid, title, "", map, list, "1");
rs.writeLog("============ requestid ================ " + requestid);
if (Integer.parseInt(requestid) > 0) {
String mainId = "" ;
String mainsql = " select id from "+formtable+" where requestid=?";
rs.executeQuery(mainsql, requestid);
if(rs.next()){
mainId = Util.null2String(rs.getString("id"));
}
//流程明细2 工作经历
boolean insertWorkflowMx2 = insertWorkflowMx2(xm,yggh,mainid,mainId);
rs.writeLog("============ checkYrzsp.jsp insertWorkflowMx2 ================ " + insertWorkflowMx2);
//模块 工作经历
boolean insertModeMx2 = insertModeMx2(xm,yggh,mainid,mainId);
rs.writeLog("============ checkYrzsp.jsp insertModeMx2 ================ " + insertModeMx2);
//流程明细3 家庭情况
boolean insertWorkflowMx3 = insertWorkflowMx3(xm,yggh,mainid,mainId);
rs.writeLog("============ checkYrzsp.jsp insertWorkflowMx3 ================ " + insertWorkflowMx3);
//模块 家庭情况
boolean insertModeMx3 = insertModeMx3(xm,yggh,mainid,mainId);
rs.writeLog("============ checkYrzsp.jsp insertModeMx3 ================ " + insertModeMx3);
flag = "1";
} else {
flag = "0";
break;
}
}else{
flag = "0";
}
}else{
bool = "1";
}
if(errorinfo.endsWith(",")){
errorinfo = errorinfo.substring(0,errorinfo.length()-1);
}
}else{
sfqsfs = "0";
}
}
}catch (Exception e){
e.printStackTrace();
rs.writeLog(e);
}
newerrorinfo = errorinfo;
if(errorinfo.length() > 60){
errorinfo = "有部分信息未填写全面";
}
jsonObject.put("sfqsfs",sfqsfs);
jsonObject.put("booll",bool);
jsonObject.put("flag",flag);
jsonObject.put("errorinfo",errorinfo);
jsonObject.put("newerrorinfo",newerrorinfo);
out.print(JSONObject.toJSONString(jsonObject));
%>
<%!
/**
* 同步 员工工号 到 SAP
* @param sfzhm
* @return
*/
public static boolean synUserCodeToSAP(String sfzhm){
boolean bool = false;
RecordSet rs = new RecordSet();
RecordSet rs1 = new RecordSet();
RecordSet rss = new RecordSet();
RecordSet rst = new RecordSet();
int xtdjjg_formmodeid = weaver.general.Util.getIntValue(rs.getPropValue("hrm_shhq","xtdjjg_formmodeid"));
rs.writeLog("====== 员工工号同步至SAP开始 ======= ");
try{
String url = "http://poqassrv.shenghongtec.com:50000/XISOAPAdapter/MessageServlet?senderParty=&senderService=SH_BPM_QAS&receiverParty=&receiverService=&interface=CommonInter_Info_SYN_OUT&interfaceNamespace=urn:shenghong:bpm:s4";
String action = "SSQ_PMINFO";
String usr_pwd = "po_sender:posender0807" ;
String soapAction = "";
String xml ="<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:urn=\"urn:shenghong:bpm:s4\">\n" +
" <soapenv:Header/>\n" +
" <soapenv:Body>\n" +
" <urn:CommonInter_Info>\n" +
" <ACTION>"+action+"</ACTION>\n";
rs.executeQuery("select * from uf_xygrztz where sfzhm = ?",sfzhm);
if(rs.next()) {
JSONArray jsonArray = new JSONArray();
JSONObject jsonObject = new JSONObject();
//用户id
String userid = Util.null2String(rs.getString("id"));
// 分部id
String subcomid = Util.null2String(rs.getString("gsmc"));
String subcomdesc = new SubCompanyComInfo().getSubCompanydesc(subcomid);
//员工编号
String workcode = Util.null2String(rs.getString("yggh"));
// 中文名
String lastname = Util.null2String(rs.getString("xm"));
// 性别 0-男 1-女
String sex = Util.null2String(rs.getString("xb"));
// 出生日期
String birthday = Util.null2String(rs.getString("csrq"));
// 手机号
String mobile = Util.null2String(rs.getString("yddh"));
// 居住地
String residentplace = Util.null2String(rs.getString("sjjzd"));
jsonObject.put("company_name",subcomdesc);
jsonObject.put("pernr",workcode);
jsonObject.put("id_card",sfzhm);
jsonObject.put("name",lastname);
jsonObject.put("birthday",birthday);
jsonObject.put("address",residentplace);
jsonObject.put("phone",mobile);
jsonObject.put("sex","0".equals(sex) ? "男" : "女");
jsonArray.add(jsonObject);
xml+= "<VALUE>" + jsonArray +"</VALUE>\n";
xml+= " </urn:CommonInter_Info>\n" +
" </soapenv:Body>\n" +
"</soapenv:Envelope>";
rs.writeLog("====== 员工工号同步至SAP 请求入参 xml ======= "+ xml);
String msgMap = HttpUtil.doPostSoap(url,xml,soapAction,usr_pwd);
rs.writeLog("====== 员工工号同步至SAP 返回结果 msgMap ======= "+ msgMap);
String status = HttpUtil.getValue(msgMap,"ISSUCCESS");
String message = "";
rs.writeLog("====== 员工工号同步至SAP status ======= "+ status);
// 失败
if("E".equals(status)){
message = HttpUtil.getValue(msgMap,"MESSAGE");
rss.executeQuery("select id from uf_xtdjjgb where sfzhm = ?",sfzhm);
if(rss.next()){
rst.executeUpdate("update uf_xtdjjgb set tbghzt='1',tbghjg='"+ message +"' where sfzhm='"+ sfzhm +"'");
}else {
String currentdate = TimeUtil.getCurrentDateString();
String currenttime = TimeUtil.getOnlyCurrentTimeString();
//插入新数据
String insert_jlsql = "insert into uf_xtdjjgb(sfzhm,sjhm,yg,tbghzt,tbghjg,modedatacreater,modedatacreatedate,modedatacreatetime,formmodeid,modeuuid) " +
" values(?,?,?,?,?,?,?,?,?,?) ";
int bill_id = -1;
String uuid1 = UUID.randomUUID().toString();
boolean exeRes1 = rst.executeUpdate(insert_jlsql, new Object[]{sfzhm, mobile, lastname, '1', message, userid, currentdate, currenttime, xtdjjg_formmodeid, uuid1});
if (exeRes1) {
//重构权限
rs1.executeQuery(" select id from uf_xtdjjgb where modeuuid=? ", new Object[]{uuid1});
rs1.next();
bill_id = rs1.getInt("id");
ModeRightInfo moderight1 = new ModeRightInfo();
moderight1.editModeDataShare(Integer.parseInt(userid), xtdjjg_formmodeid, bill_id);
}
}
}else {
message = "同步成功";
rss.executeQuery("select id from uf_xtdjjgb where sfzhm = ?",sfzhm);
if(rss.next()){
rst.executeUpdate("update uf_xtdjjgb set tbghzt='0',tbghjg='"+ message +"' where sfzhm='"+ sfzhm +"'");
}else {
String currentdate = TimeUtil.getCurrentDateString();
String currenttime = TimeUtil.getOnlyCurrentTimeString();
//插入新数据
String insert_jlsql = "insert into uf_xtdjjgb(sfzhm,sjhm,xm,tbghzt,tbghjg,modedatacreater,modedatacreatedate,modedatacreatetime,formmodeid,modeuuid) " +
" values(?,?,?,?,?,?,?,?,?,?) ";
int bill_id = -1;
String uuid1 = UUID.randomUUID().toString();
boolean exeRes1 = rst.executeUpdate(insert_jlsql, new Object[]{sfzhm, mobile, lastname, '0', message, userid, currentdate, currenttime, xtdjjg_formmodeid, uuid1});
if (exeRes1) {
//重构权限
rs1.executeQuery(" select id from uf_xtdjjgb where modeuuid=? ", new Object[]{uuid1});
rs1.next();
bill_id = rs1.getInt("id");
ModeRightInfo moderight1 = new ModeRightInfo();
moderight1.editModeDataShare(Integer.parseInt(userid), xtdjjg_formmodeid, bill_id);
}
}
bool = true;
}
}
}catch (Exception e){
bool = false;
e.printStackTrace();
rs.writeLog("====== 员工工号同步至SAP出错请联系管理员查看 ======= "+e);
}
rs.writeLog("====== 员工工号同步至SAP 结束 ======= ");
return bool;
}
/**
* 同步 员工信息 到 SAP
* @param sfzhm
* @return
*/
public static boolean synUserInfoToSAP(String sfzhm){
boolean bool = false;
RecordSet rs = new RecordSet();
RecordSet rss = new RecordSet();
RecordSet rs1 = new RecordSet();
RecordSet rst = new RecordSet();
int xtdjjg_formmodeid = weaver.general.Util.getIntValue(rs.getPropValue("hrm_shhq","xtdjjg_formmodeid"));
rs.writeLog("====== 新员工入职信息同步至SAP 开始 ======= ");
try{
//毕业院校
String byyy_fieldid = rs.getPropValue("hrm_shhq","byyy_fieldid");
//毕业日期
String byrq_fieldid = rs.getPropValue("hrm_shhq","byrq_fieldid");
//家庭住址
String jtzz_fieldid = rs.getPropValue("hrm_shhq","jtzz_fieldid");
//部门属性
String bmsx_fieldid = rs.getPropValue("hrm_shhq","bmsx_fieldid");
//专业
String zy_fieldid = rs.getPropValue("hrm_shhq","zy_fieldid");
//后学历
String hxl_fieldid = rs.getPropValue("hrm_shhq","hxl_fieldid");
//后学历毕业院校
String hxlbyyx_fieldid = rs.getPropValue("hrm_shhq","hxlbyyx_fieldid");
//后学历毕业专业
String hxlbyzy_fieldid = rs.getPropValue("hrm_shhq","hxlbyzy_fieldid");
//政治面貌
String zzmm_fieldid = rs.getPropValue("hrm_shhq","zzmm_fieldid");
//工作服尺寸
String gzfcc_fieldid = rs.getPropValue("hrm_shhq","gzfcc_fieldid");
//工作服尺寸 id
String gzfcc_fieldId = rs.getPropValue("hrm_shhq","gzfcc_fieldId");
//户口性质
String hkxz_fieldid = rs.getPropValue("hrm_shhq","hkxz_fieldid");
//爱心基金
String axjj_fieldid = rs.getPropValue("hrm_shhq","axjj_fieldid");
//微信号
String wxh_fieldid = rs.getPropValue("hrm_shhq","wxh_fieldid");
//车牌号
String cph_fieldid = rs.getPropValue("hrm_shhq","cph_fieldid");
//紧急联系人1姓名
String jjlxr1xm_fieldid = rs.getPropValue("hrm_shhq","jjlxr1xm_fieldid");
//紧急联系人1关系
String jjlxr1gx_fieldid = rs.getPropValue("hrm_shhq","jjlxr1gx_fieldid");
//紧急联系人1电话
String jjlxr1dh_fieldid = rs.getPropValue("hrm_shhq","jjlxr1dh_fieldid");
//紧急联系人2姓名
String jjlxr2xm_fieldid = rs.getPropValue("hrm_shhq","jjlxr2xm_fieldid");
//紧急联系人2关系
String jjlxr2gx_fieldid = rs.getPropValue("hrm_shhq","jjlxr2gx_fieldid");
//紧急联系人2电话
String jjlxr2dh_fieldid = rs.getPropValue("hrm_shhq","jjlxr2dh_fieldid");
//区域
String qy_fieldid = rs.getPropValue("hrm_shhq","qy_fieldid");
//招工渠道
String zgqd_fieldid = rs.getPropValue("hrm_shhq","zgqd_fieldid");
//行政级别
String xzjb_fieldid = rs.getPropValue("hrm_shhq","xzjb_fieldid");
//合同类型
String htlx_fieldid = rs.getPropValue("hrm_shhq","htlx_fieldid");
//试用期月数
String syqys_fieldid = rs.getPropValue("hrm_shhq","syqys_fieldid");
//民族
String mz_fieldid = rs.getPropValue("hrm_shhq","mz_fieldid");
String url = "http://poqassrv.shenghongtec.com:50000/XISOAPAdapter/MessageServlet?senderParty=&senderService=SH_BPM_QAS&receiverParty=&receiverService=&interface=CommonInter_Info_SYN_OUT&interfaceNamespace=urn:shenghong:bpm:s4";
String action = "SSQ_EMPINFO";
String usr_pwd = "po_sender:posender0807" ;
String soapAction = "";
String xml = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:urn=\"urn:shenghong:bpm:s4\">\n" +
" <soapenv:Header/>\n" +
" <soapenv:Body>\n" +
" <urn:CommonInter_Info>\n" +
" <ACTION>"+action+"</ACTION>\n";
rs.executeQuery("select * from uf_xygrztz where sfzhm = ?",sfzhm);
while (rs.next()) {
JSONArray jsonArray = new JSONArray();
JSONObject jsonObject = new JSONObject();
// 分部id
String subcomid = Util.null2String(rs.getString("gsmc"));
String subcomdesc = new SubCompanyComInfo().getSubCompanydesc(subcomid);
//部门id
String deptid = Util.null2String(rs.getString("bm"));
//部门名称
String deptname = new DepartmentComInfo().getDepartmentName(deptid);
//部门属性
// String bmsx = HttpUtil.getWorkCusFieldValue(userid,bmsx_fieldid);
String bmsx = "生产部门";
//身份证号
//员工编号
String workcode = Util.null2String(rs.getString("yggh"));
// 中文名
String lastname = Util.null2String(rs.getString("xm"));
// 性别 0-男 1-女
String sex = Util.null2String(rs.getString("xb"));
// 出生日期
String birthday = Util.null2String(rs.getString("csrq"));
if(birthday != null && !"".equals(birthday)) {
birthday = birthday.replaceAll("-", "");
}
// 手机号
String mobile = Util.null2String(rs.getString("yddh"));
// 居住地
String residentplace = Util.null2String(rs.getString("sjjzd"));
//民族
String folk = Util.null2String(rs.getString("mz"));
String folkname = HttpUtil.getMzname(folk);
//籍贯
String nativeplace = Util.null2String(rs.getString("jg"));
//学历
String educationlevel = Util.null2String(rs.getString("xl"));
String educationname = getEducationName(educationlevel);
//毕业院校
String byyy = Util.null2String(rs.getString("byyx"));
//毕业日期
String byrq = Util.null2String(rs.getString("byrq"));
if(byrq != null && !"".equals(byrq)) {
byrq = byrq.replaceAll("-", "");
}
//后学历
String hxl = Util.null2String(rs.getString("hxl"));
//后学历毕业院校
String hxlbyyx = Util.null2String(rs.getString("hxlbyyx"));
//后学历毕业专业
String hxlbyzy = Util.null2String(rs.getString("hxlbyzy"));
//专业
String zy = Util.null2String(rs.getString("zy"));
//婚姻状况 0-未婚 1-已婚 2-离异
String maritalstatus = Util.null2String(rs.getString("hyzk"));
String maritalname = "0";
if("0".equals(maritalstatus)){
maritalname = "未婚";
}else if("1".equals(maritalstatus)){
maritalname = "已婚";
}else if("2".equals(maritalstatus)){
maritalname = "离异";
}
//政治面貌
String zzmm = Util.null2String(rs.getString("zzmm"));
zzmm_fieldid = zzmm_fieldid.substring(5,zzmm_fieldid.length());
String zzmmname = HttpUtil.getSelectName(zzmm_fieldid,zzmm);
//工作服尺寸
String gzfccid = Util.null2String(rs.getString("gzfcc"));
String gzfcc = HttpUtil.getSelectName(gzfcc_fieldId,gzfccid);
//户口性质
String hkxz = Util.null2String(rs.getString("hkxz"));
hkxz_fieldid = hkxz_fieldid.substring(5,hkxz_fieldid.length());
String hkxzname = HttpUtil.getSelectName(hkxz_fieldid,hkxz);
//爱心基金
String axjj = Util.null2String(rs.getString("axjj"));
if("0".equals(axjj)){
axjj = "Y";
}else if("1".equals(axjj)){
axjj = "N";
}
//微信号
String wxh = Util.null2String(rs.getString("wxh"));
//车牌号
String cph = Util.null2String(rs.getString("cp"));
//紧急联系人1姓名
String jjlxr1xm = Util.null2String(rs.getString("jjlxr1xm"));
//紧急联系人1关系
String jjlxr1gx = Util.null2String(rs.getString("jjlxr1gx"));
//紧急联系人1电话
String jjlxr1dh = Util.null2String(rs.getString("jjlxr1dh"));
//紧急联系人2姓名
String jjlxr2xm = Util.null2String(rs.getString("jjlxr2xm"));
//紧急联系人2关系
String jjlxr2gx = Util.null2String(rs.getString("jjlxr2gx"));
//紧急联系人2电话
String jjlxr2dh = Util.null2String(rs.getString("jjlxr2dh"));
//区域
// String qy = HttpUtil.getBaseCusFieldValue(userid,qy_fieldid);
String qy = "CN";
//入职日期
String companystartdate = Util.null2String(rs.getString("rzrq"));
if(companystartdate != null && !"".equals(companystartdate)) {
companystartdate = companystartdate.replaceAll("-","");
}
//用工性质
String usekind = Util.null2String(rs.getString("ygxz"));
String usekindname = getUseKindName(usekind);
//招工渠道
String zgqd = Util.null2String(rs.getString("zgqd"));
zgqd_fieldid = zgqd_fieldid.substring(5,zgqd_fieldid.length());
String zgqdname = HttpUtil.getSelectName(zgqd_fieldid,zgqd);
//行政级别
String xzjb = Util.null2String(rs.getString("hzjb"));
xzjb_fieldid = xzjb_fieldid.substring(5,xzjb_fieldid.length());
String xzjbname = HttpUtil.getSelectName(xzjb_fieldid,xzjb);
//合同类型
String htlx = Util.null2String(rs.getString("htlx"));
htlx_fieldid = htlx_fieldid.substring(5,htlx_fieldid.length());
String htlxname = HttpUtil.getSelectName(htlx_fieldid,htlx);
//合同开始日期
String startdate = Util.null2String(rs.getString("htksrq"));
if(startdate != null && !"".equals(startdate)) {
startdate = startdate.replaceAll("-","");
}
//合同结束日期
String enddate = Util.null2String(rs.getString("htjsrq"));
if(enddate != null && !"".equals(enddate)) {
enddate = enddate.replaceAll("-","");
}
//试用期月数
String syqys = Util.null2String(rs.getString("syqys"));
//试用期结束日期
String probationenddate = Util.null2String(rs.getString("syqjsrq"));
if(probationenddate != null && !"".equals(probationenddate)) {
probationenddate = probationenddate.replaceAll("-","");
}
//省
String province = Util.null2String(rs.getString("s"));
jsonObject.put("EMPLOY_NAME",lastname);
jsonObject.put("PERNR",workcode);
jsonObject.put("COMPANY_NAME",subcomdesc);
jsonObject.put("DEPART_NAME",deptname);
jsonObject.put("DEPART_SX",bmsx);
jsonObject.put("SEX","0".equals(sex) ? "男" : "女");
jsonObject.put("ZZ_MZ",folkname);
jsonObject.put("BIRTHDAY",birthday);
jsonObject.put("ADDRESS",residentplace);
jsonObject.put("ID_CARD",sfzhm);
jsonObject.put("NATIVE_PLACE",nativeplace);
jsonObject.put("EDUCATION",educationname);
jsonObject.put("SKILL",zy);
jsonObject.put("INSTI",byyy);
jsonObject.put("SCHOOL_DAY",byrq);
jsonObject.put("ZHXL",hxl);
jsonObject.put("ZBEIYONG23",hxlbyyx);
jsonObject.put("ZBEIYONG24",hxlbyzy);
jsonObject.put("FAMST",maritalname);
jsonObject.put("POLI_STATUS",zzmmname);
jsonObject.put("ZSIZE",gzfcc);
jsonObject.put("HUKOU",hkxzname);
jsonObject.put("LOVEFUND",axjj);
jsonObject.put("ZWXH",wxh);
jsonObject.put("ZCARNUMBER",cph);
jsonObject.put("PHONE",mobile);
jsonObject.put("ZLIAISONPERSON1",jjlxr1xm);
jsonObject.put("ZEMERGENCYLIAISON1",jjlxr1gx);
jsonObject.put("ZTEL1",jjlxr1dh);
jsonObject.put("ZLIAISONPERSON2",jjlxr2xm);
jsonObject.put("ZEMERGENCYLIAISON2",jjlxr2gx);
jsonObject.put("ZTEL2",jjlxr2dh);
jsonObject.put("NATION",qy);
jsonObject.put("HIREDA",companystartdate);
jsonObject.put("HIRE_TYPE",usekindname);
jsonObject.put("HIRE_CHANNEL",zgqdname);
jsonObject.put("ZADMINISTRATIVELEVEL",xzjbname);
jsonObject.put("ZHTLX",htlxname);
jsonObject.put("ZHTJDDA",startdate);
jsonObject.put("ZHTDQDA",enddate);
jsonObject.put("LRMONS",syqys);
jsonObject.put("LRENDDA",probationenddate);
jsonObject.put("PROVINCE",province);
jsonObject.put("COUNTY","");
jsonObject.put("FILE_CODE",workcode);
jsonArray.add(jsonObject);
rs.writeLog("====== 新员工入职信息同步至SAP jsonArray======= "+ jsonArray);
xml+= "<VALUE>" + jsonArray +"</VALUE>\n";
xml+= " </urn:CommonInter_Info>\n" +
" </soapenv:Body>\n" +
"</soapenv:Envelope>";
rs.writeLog("====== 新员工入职信息同步至SAP 请求入参 xml ======= "+ xml);
String msgMap = HttpUtil.doPostSoap(url,xml,soapAction,usr_pwd);
rs.writeLog("====== 新员工入职信息同步至SAP 返回结果 msgMap ======= "+ msgMap);
String status = HttpUtil.getValue(msgMap,"ISSUCCESS");
String message = "";
rs.writeLog("====== 新员工入职信息同步至SAP status ======= "+ status);
// 失败
if("E".equals(status)){
message = HttpUtil.getValue(msgMap,"MESSAGE");
rss.executeQuery("select id from uf_xtdjjgb where sfzhm = ?",sfzhm);
if(rss.next()){
rst.executeUpdate("update uf_xtdjjgb set ygxxtbzsapzt='1',ygxxtbzsapjg='"+ message +"' where sfzhm='"+ sfzhm +"'");
}else {
String currentdate = TimeUtil.getCurrentDateString();
String currenttime = TimeUtil.getOnlyCurrentTimeString();
int userid = 1;
//插入新数据
String insert_jlsql = "insert into uf_xtdjjgb(sfzhm,sjhm,yg,ygxxtbzsapzt,ygxxtbzsapjg,modedatacreater,modedatacreatedate,modedatacreatetime,formmodeid,modeuuid) " +
" values(?,?,?,?,?,?,?,?,?,?) ";
int bill_id = -1;
String uuid1 = UUID.randomUUID().toString();
boolean exeRes1 = rst.executeUpdate(insert_jlsql, new Object[]{sfzhm, mobile, lastname,'1', message, userid, currentdate, currenttime, xtdjjg_formmodeid, uuid1});
if (exeRes1) {
//重构权限
rs1.executeQuery(" select id from uf_xtdjjgb where modeuuid=? ", new Object[]{uuid1});
rs1.next();
bill_id = rs1.getInt("id");
ModeRightInfo moderight1 = new ModeRightInfo();
moderight1.editModeDataShare(userid, xtdjjg_formmodeid, bill_id);
}
}
bool = false;
}else {
message = "同步成功";
rss.executeQuery("select id from uf_xtdjjgb where sfzhm = ?",sfzhm);
if(rss.next()){
rst.executeUpdate("update uf_xtdjjgb set ygxxtbzsapzt='0',ygxxtbzsapjg='"+ message +"' where sfzhm='"+ sfzhm +"'");
}else {
String currentdate = TimeUtil.getCurrentDateString();
String currenttime = TimeUtil.getOnlyCurrentTimeString();
int userid = 1;
//插入新数据
String insert_jlsql = "insert into uf_xtdjjgb(sfzhm,sjhm,yg,ygxxtbzsapzt,ygxxtbzsapjg,modedatacreater,modedatacreatedate,modedatacreatetime,formmodeid,modeuuid) " +
" values(?,?,?,?,?,?,?,?,?,?) ";
int bill_id = -1;
String uuid1 = UUID.randomUUID().toString();
boolean exeRes1 = rst.executeUpdate(insert_jlsql, new Object[]{sfzhm, mobile, lastname, '0', message, userid, currentdate, currenttime, xtdjjg_formmodeid, uuid1});
if (exeRes1) {
//重构权限
rs1.executeQuery(" select id from uf_xtdjjgb where modeuuid=? ", new Object[]{uuid1});
rs1.next();
bill_id = rs1.getInt("id");
ModeRightInfo moderight1 = new ModeRightInfo();
moderight1.editModeDataShare(userid, xtdjjg_formmodeid, bill_id);
}
}
bool = true;
}
}
}catch (Exception e){
bool = false;
e.printStackTrace();
rs.writeLog("====== 新员工入职信息同步至SAP出错请联系管理员查看 ======= "+e);
}
rs.writeLog("====== 新员工入职信息同步至SAP 结束 ======= ");
return bool;
}
/**
* 获取学历名称
* @param eduId
* @return
*/
public static String getEducationName(String eduId){
String result = "";
RecordSet rs = new RecordSet();
rs.executeQuery("select * from hrmeducationlevel where id = ?",eduId);
while(rs.next()){
result = com.api.formmode.page.util.Util.null2String(rs.getString("name"));
}
return result;
}
/**
* 获取 用工性质 名称
* @param eduId
* @return
*/
public static String getUseKindName(String eduId){
String result = "";
RecordSet rs = new RecordSet();
rs.executeQuery("select * from hrmusekind where id = ?",eduId);
while(rs.next()){
result = com.api.formmode.page.util.Util.null2String(rs.getString("name"));
}
return result;
}
/**
*
* 方法描述 : 将数据插入表单建模
* @param modeid 模块id
* @param userid 创建人id
* @param map 数据map
* @return
* int
*/
public static int createmodedata(int modeid,int userid,Map map){
int dataid=0;
RecordSet rs = new RecordSet();
Logger log = LoggerFactory.getLogger(InitServiceXMLtoDB.class);
//查询该模块表名
rs.execute("select b.TABLENAME,a.FORMID from modeinfo a left join workflow_bill b on a.FORMID=b.id where a.id="+modeid);
rs.next();
String tablename=Util.null2String(rs.getString("tablename"));
String uuid = UUID.randomUUID().toString();
String sql = "insert into "+tablename+"(modeuuid,modedatacreater,modedatacreatedate,modedatacreatetime,formmodeid) values('"+uuid+"',"+userid+",'"+TimeUtil.getCurrentDateString()+"','"+TimeUtil.getOnlyCurrentTimeString()+"',"+modeid+")";
boolean flag=rs.execute(sql);
if(flag){
rs.execute("select id from "+tablename+" where modeuuid='"+uuid+"'");
rs.next();
dataid=Util.getIntValue(rs.getString("id"));
if(dataid>0){
//遍历数据 进行update
String updatesql="update "+tablename+" set ";
Set<String> keySet = map.keySet();
for(String key : keySet){
updatesql+=key+"='"+map.get(key).toString()+"',";
}
if(updatesql.endsWith(",")){
updatesql=updatesql.substring(0, updatesql.length()-1);
updatesql+=" where id="+dataid;
log.info("向建模表主表插入数据:"+updatesql);
rs.execute(updatesql);
}
/*
* 进行权限重构
*/
ModeRightInfo moderight=new ModeRightInfo();
moderight.editModeDataShare(userid, modeid, dataid);
}
}else{
log.info("============="+sql);
}
return dataid;
}
/**
* 方法描述 : 插入建模明细数据
* @param modeid
* @param detailNum
* @param map
* @return
*/
public static String createmodedetaildata(int modeid,int detailNum,Map map){
Logger log = LoggerFactory.getLogger(InitServiceXMLtoDB.class);
RecordSet rs = new RecordSet();
//查询该模块表名
rs.execute("select b.TABLENAME,a.FORMID from modeinfo a left join workflow_bill b on a.FORMID=b.id where a.id="+modeid);
rs.next();
String tablename=Util.null2String(rs.getString("tablename"));
Set<String> keySet = map.keySet();
String sqlKeys = "";
String sqlValues = "";
for(String key : keySet){
sqlKeys += key + ",";
sqlValues += "'"+map.get(key)+"',";
}
sqlKeys = sqlKeys.endsWith(",")?sqlKeys.substring(0, sqlKeys.length()-1):sqlKeys;
sqlValues = sqlValues.endsWith(",")?sqlValues.substring(0, sqlValues.length()-1):sqlValues;
String sql = "insert into "+tablename+"_dt"+detailNum+" ("+sqlKeys+")" + " values(" +sqlValues +")";
log.info("检查为题所在"+sql);
boolean flag = rs.execute(sql );
return flag?"true":sql;
}
public static boolean insertMx1(String xm,String bh,String tzMainid,String mainid){
boolean bool = false;
RecordSet rs = new RecordSet();
RecordSet rst = new RecordSet();
String formtable = rs.getPropValue("hrm_shhq","rzbl_table");
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
rst.executeUpdate(" delete from "+formtable+"_dt1 where mainid="+mainid);
rs.executeQuery("select * from uf_xygrztz_dt1 where mainid=?",tzMainid);
while(rs.next()){
Map<String, Object> map = new HashMap<String, Object>();
String kssj = Util.null2String(rs.getString("kssj"));
String jssj = Util.null2String(rs.getString("jssj"));
String byyx = Util.null2String(rs.getString("byyx"));
String xl = Util.null2String(rs.getString("xl"));
String xw = Util.null2String(rs.getString("xw"));
String zy = Util.null2String(rs.getString("zy"));
map.put("xm",xm);
map.put("bh",bh);
map.put("kssj",kssj);
map.put("jssj",jssj);
map.put("byyx",byyx);
map.put("xl",xl);
map.put("xw",xw);
map.put("zy",zy);
list.add(map);
}
int cou = insertDtTableByList(list,formtable+"_dt1",mainid);
if(cou > 0){
bool = true;
}
return bool;
}
public static void createMx1(String xm,String bh,String tzMainid,List<Map<String, Object>> list){
RecordSet rs = new RecordSet();
rs.executeQuery("select * from uf_xygrztz_dt1 where mainid=?",tzMainid);
while(rs.next()){
Map<String, Object> map = new HashMap<String, Object>();
String kssj = Util.null2String(rs.getString("kssj"));
String jssj = Util.null2String(rs.getString("jssj"));
String byyx = Util.null2String(rs.getString("byyx"));
String xl = Util.null2String(rs.getString("xl"));
String xw = Util.null2String(rs.getString("xw"));
String zy = Util.null2String(rs.getString("zy"));
map.put("xm",xm);
map.put("bh",bh);
map.put("kssj",kssj);
map.put("jssj",jssj);
map.put("byyx",byyx);
map.put("xl",xl);
map.put("xw",xw);
map.put("zy",zy);
list.add(map);
}
}
public static boolean insertWorkflowMx2(String xm,String bh,String tzMainid,String mainid){
boolean bool = false;
RecordSet rs = new RecordSet();
RecordSet rst = new RecordSet();
String formtable = rs.getPropValue("hrm_shhq","rzbl_table");
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
rst.executeUpdate(" delete from "+formtable+"_dt2 where mainid="+mainid);
rs.executeQuery("select * from uf_xygrztz_dt2 where mainid=?",tzMainid);
while(rs.next()){
Map<String, Object> map = new HashMap<String, Object>();
String bm = Util.null2String(rs.getString("bm"));
String zmr = Util.null2String(rs.getString("zmr"));
String zmrlxfs = Util.null2String(rs.getString("lxdh"));
String ksrq = Util.null2String(rs.getString("ksrq"));
String jsrq = Util.null2String(rs.getString("jsrq"));
String gzdw = Util.null2String(rs.getString("gzdw"));
String drzw = Util.null2String(rs.getString("drzw"));
map.put("xm",xm);
map.put("bh",bh);
map.put("bm",bm);
map.put("zmrlxfs",zmrlxfs);
map.put("zmr",zmr);
map.put("ksrq",ksrq);
map.put("jsrq",jsrq);
map.put("gzdw",gzdw);
map.put("drzw",drzw);
list.add(map);
}
if(list.size()>0){
int cou = insertDtTableByList(list,formtable+"_dt2",mainid);
if(cou > 0){
bool = true;
}
}
return bool;
}
public static boolean insertModeMx2(String xm,String bh,String tzMainid,String mainid){
boolean bool = false;
RecordSet rs = new RecordSet();
int gzjl_formmodeid = Util.getIntValue(rs.getPropValue("hrm_shhq","gzjl_formmodeid"));
rs.executeQuery("select * from uf_xygrztz_dt2 where mainid=?",tzMainid);
while(rs.next()){
Map<String, Object> map = new HashMap<String, Object>();
String bm = Util.null2String(rs.getString("bm"));
String zmr = Util.null2String(rs.getString("zmr"));
String zmrlxfs = Util.null2String(rs.getString("lxdh"));
String ksrq = Util.null2String(rs.getString("ksrq"));
String jsrq = Util.null2String(rs.getString("jsrq"));
String gzdw = Util.null2String(rs.getString("gzdw"));
String drzw = Util.null2String(rs.getString("drzw"));
map.put("xm",xm);
map.put("bh",bh);
map.put("bm",bm);
map.put("zmrlxfs",zmrlxfs);
map.put("zmr",zmr);
map.put("ksrq",ksrq);
map.put("jsrq",jsrq);
map.put("gzdw",gzdw);
map.put("drzw",drzw);
int dataid = createmodedata(gzjl_formmodeid,1,map);
if(dataid > 0){
bool = true;
}
}
return bool;
}
public static void createMx2(String xm,String bh,String tzMainid,List<Map<String, Object>> list){
RecordSet rs = new RecordSet();
rs.executeQuery("select * from uf_xygrztz_dt2 where mainid=?",tzMainid);
while(rs.next()){
Map<String, Object> map = new HashMap<String, Object>();
String bm = Util.null2String(rs.getString("bm"));
String zmr = Util.null2String(rs.getString("zmr"));
String zmrlxfs = Util.null2String(rs.getString("lxdh"));
String ksrq = Util.null2String(rs.getString("ksrq"));
String jsrq = Util.null2String(rs.getString("jsrq"));
String gzdw = Util.null2String(rs.getString("gzdw"));
String drzw = Util.null2String(rs.getString("drzw"));
map.put("xm",xm);
map.put("bh",bh);
map.put("bm",bm);
map.put("zmrlxfs",zmrlxfs);
map.put("zmr",zmr);
map.put("ksrq",ksrq);
map.put("jsrq",jsrq);
map.put("gzdw",gzdw);
map.put("drzw",drzw);
list.add(map);
}
}
public static boolean insertWorkflowMx3(String xm,String bh,String tzMainid,String mainid){
boolean bool = false;
RecordSet rs = new RecordSet();
RecordSet rst = new RecordSet();
String formtable = rs.getPropValue("hrm_shhq","rzbl_table");
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
rst.executeUpdate(" delete from "+formtable+"_dt3 where mainid="+mainid);
rs.executeQuery("select * from uf_xygrztz_dt3 where mainid=?",tzMainid);
while(rs.next()){
Map<String, Object> map = new HashMap<String, Object>();
String jtcyxm = Util.null2String(rs.getString("jtcyxm"));
String gx = Util.null2String(rs.getString("gx"));
String nl = Util.null2String(rs.getString("nl"));
String gzdw = Util.null2String(rs.getString("gzdw"));
String zw = Util.null2String(rs.getString("zw"));
String lxdh = Util.null2String(rs.getString("lxdh"));
map.put("xm",xm);
map.put("bh",bh);
map.put("jtcyxm",jtcyxm);
map.put("gx",gx);
map.put("nl",nl);
map.put("gzdw",gzdw);
map.put("zw",zw);
map.put("lxdh",lxdh);
list.add(map);
}
if(list.size() > 0) {
int cou = insertDtTableByList(list, formtable + "_dt3", mainid);
if (cou > 0) {
bool = true;
}
}
return bool;
}
public static boolean insertModeMx3(String xm,String bh,String tzMainid,String mainid){
boolean bool = false;
RecordSet rs = new RecordSet();
int jtqk_formmodeid = Util.getIntValue(rs.getPropValue("hrm_shhq","jtqk_formmodeid"));
rs.executeQuery("select * from uf_xygrztz_dt3 where mainid=?",tzMainid);
while(rs.next()){
Map<String, Object> map = new HashMap<String, Object>();
String jtcyxm = Util.null2String(rs.getString("jtcyxm"));
String gx = Util.null2String(rs.getString("gx"));
String nl = Util.null2String(rs.getString("nl"));
String gzdw = Util.null2String(rs.getString("gzdw"));
String zw = Util.null2String(rs.getString("zw"));
String lxdh = Util.null2String(rs.getString("lxdh"));
map.put("xm",xm);
map.put("bh",bh);
map.put("jtcyxm",jtcyxm);
map.put("gx",gx);
map.put("nl",nl);
map.put("gzdw",gzdw);
map.put("zw",zw);
map.put("lxdh",lxdh);
int dataid = createmodedata(jtqk_formmodeid,1,map);
if(dataid > 0){
bool = true;
}
}
return bool;
}
public static void createMx3(String xm,String bh,String tzMainid,List<Map<String, Object>> list){
RecordSet rs = new RecordSet();
rs.executeQuery("select * from uf_xygrztz_dt3 where mainid=?",tzMainid);
while(rs.next()){
Map<String, Object> map = new HashMap<String, Object>();
String jtcyxm = Util.null2String(rs.getString("jtcyxm"));
String gx = Util.null2String(rs.getString("gx"));
String nl = Util.null2String(rs.getString("nl"));
String gzdw = Util.null2String(rs.getString("gzdw"));
String zw = Util.null2String(rs.getString("zw"));
String lxdh = Util.null2String(rs.getString("lxdh"));
map.put("xm",xm);
map.put("bh",bh);
map.put("jtcyxm",jtcyxm);
map.put("gx",gx);
map.put("nl",nl);
map.put("gzdw",gzdw);
map.put("zw",zw);
map.put("lxdh",lxdh);
list.add(map);
}
}
public static int insertDtTableByList(List<Map<String,Object>> list,String table,String mainid)
{
RecordSet rs = new RecordSet();
BaseBean bb = new BaseBean();
int count = 0;
if(list !=null && list.size() > 0)
{
for(int i=0; i<list.size();i++)
{
String tablename = "" ;
String tablenvalue = "" ;
Map<String,Object> map = list.get(i);
for (Map.Entry<String, Object> entry : map.entrySet())
{
String fieldname = Util.null2String(entry.getKey()).trim();
String fieldvalue = Util.null2String(entry.getValue()).replace("'", "''").trim();
tablename += tablename==""? fieldname :","+fieldname ;
tablenvalue += tablenvalue=="" ? "'"+fieldvalue+"'" :",'"+fieldvalue+"'" ;
}
if(tablename !="" && tablenvalue !="")
{
String sql = " insert into "+table+"(mainid,"+tablename+") values ('"+mainid+"',"+ tablenvalue +")";
rs.writeLog("sql:"+sql);
boolean boo = rs.execute(sql);
if(boo)
{
count++;
}
}
}
}
bb.writeLog("count:"+count);
return count;
}
/**
* 判断字段是否 编辑/必填 true:是 false
* @param nodeid
* @param fieldid
* @return
*/
public static boolean checkIsMandatory(String nodeid,String fieldid){
boolean bool = false;
RecordSet rs = new RecordSet();
rs.executeQuery("select ismandatory from workflow_nodeform where nodeid=? and fieldid=? and isview='1'",nodeid,fieldid);
while(rs.next()){
String isedit = Util.null2String(rs.getString("isedit"));
String ismandatory = Util.null2String(rs.getString("ismandatory"));
if(isedit != null && !"".equals(isedit)) {
//是否编辑 0否,1
if ("1".equals(isedit)) {
bool = true;
}
}else
if(ismandatory != null && !"".equals(ismandatory)) {
//是否必填 0否,1
if ("1".equals(ismandatory)) {
bool = true;
}
}
}
return bool;
}
/**
* 方法描述 : 创建流程方法
* @param workflowid
* @param userid 创建人id
* @param title 流程标题
* @param IsNextFlow 是否默认流转到下一节点 传 1 或 空 默认提交到下一节点
* @param map 数据map
* @return
* String
*/
public static String Createrequest(int workflowid, int userid, String title, String IsNextFlow, Map map,List<Map<String,Object>> detailList,String dtnum){
String newrequestid="";
RequestInfo req=new RequestInfo();
req.setCreatorid(userid+""); //创建人
req.setWorkflowid(workflowid+"");//流程id
req.setDescription(title); //流程标题
req.setIsNextFlow(IsNextFlow); //是否默认流转到下一节点
MainTableInfo maintable=new MainTableInfo();
Set<String> keySet = map.keySet();
Property[] property = new Property[keySet.size()];
int i= 0;
Property p = null;
for(String key : keySet){
p = new Property();
p.setName(key);
p.setValue(map.get(key).toString());
property[i] = p;
i++;
}
maintable.setProperty(property);
req.setMainTableInfo(maintable);
req.setRequestlevel("0");
if(detailList.size() >0)
{
DetailTableInfo detailTableInfo = queryDetailTableInfo(detailList,dtnum);
req.setDetailTableInfo(detailTableInfo);
}
RequestService service=new RequestService();
try {
newrequestid=service.createRequest(req);
} catch (Exception e) {
e.printStackTrace();
}
return newrequestid;
}
/***
*
* @param detailList
* @param detailid
* @return
*/
public static DetailTableInfo queryDetailTableInfo(List<Map<String,Object>> detailList,String detailid){
DetailTableInfo dti = new DetailTableInfo();
if("".equals(detailid)){
return dti;
}
List<DetailTable> detailtables = new ArrayList<DetailTable>();
if(detailList.size() > 0) {
DetailTable dt = new DetailTable();
dt.setId(detailid);
List<Row> rows = new ArrayList<Row>();
for (int i = 0; i < detailList.size(); i++) {
Map<String, Object> detailMap = detailList.get(i);
Row r = new Row();
List<Cell> cells = new ArrayList<Cell>();
for (Map.Entry<String, Object> entry : detailMap.entrySet()) {
String fieldname = Util.null2String(entry.getKey()).trim();
String fieldvalue = Util.null2String(entry.getValue()).replace("'", "''").trim();
Cell c = new Cell();
c.setName(fieldname);
c.setValue(fieldvalue);
cells.add(c);
}
Cell[] ca = new Cell[cells.size()];
cells.toArray(ca);
r.setCell(ca);
rows.add(r);
}
Row[] ra = new Row[rows.size()];
rows.toArray(ra);
dt.setRow(ra);
detailtables.add(dt);
}
DetailTable[] dta = new DetailTable[detailtables.size()];
detailtables.toArray(dta);
dti.setDetailTable(dta);
return dti;
}
/**
* 获取 字段名称
* @param id
* @return
*/
public static String getLabelName(String id){
String result = "";
RecordSet rs = new RecordSet();
rs.executeQuery("select labelname from HtmlLabelInfo where indexid = ? ",id);
if(rs.next()){
result = Util.null2String(rs.getString("labelname"));
}
return result;
}
public static String getFieldId(String fieldname){
RecordSet rs = new RecordSet();
String fieldid = "field";
String billid = rs.getPropValue("hrm_shhq","rzbllc_billid");
rs.executeQuery("select * from workflow_billfield where billid=? and viewtype=0 and fieldname=?",billid,fieldname);
if(rs.next()){
String id = Util.null2String(rs.getString("id"));
fieldid += id;
}
return fieldid;
}
public static boolean checkHasWorkflow(String sfzhm){
boolean flag = false;
RecordSet rs = new RecordSet();
RecordSet rst = new RecordSet();
RecordSet rs1 = new RecordSet();
String billid = rs.getPropValue("hrm_shhq","rzbllc_billid");
rs.executeQuery("select * from workflow_bill where id=?",billid);
rs.next();
String tablename = Util.null2String(rs.getString("tablename"));
rs1.executeQuery("select * from "+ tablename +" where sfzhm=?",sfzhm);
while(rs1.next()){
String requestid = Util.null2String(rs1.getString("requestid"));
rst.executeQuery("select currentnodetype from workflow_requestbase where requestid=?",requestid);
rst.next();
String currentnodetype = Util.null2String(rst.getString("currentnodetype"));
//非创建节点
if(!"0".equals(currentnodetype)){
flag = true;
break;
}else{
boolean bool = checkHasWorkflowLog(requestid);
if(bool){
flag = true;
break;
}
}
}
return flag;
}
public static boolean checkHasWorkflowLog(String requestid){
boolean flag = false;
RecordSet rs = new RecordSet();
rs.executeQuery("select * from workflow_requestlog where logtype='3' and requestid=?",requestid);
if(rs.next()){
flag = true;
}
return flag;
}
/**
* 判断 是否已经走完了 签署入职合同相关协议 已归档
* @param billid
* @param sfzhm
* @return
*/
public static boolean checkHasQsfstzslc(String billid,String sfzhm){
boolean flag = false;
RecordSet rs = new RecordSet();
RecordSet rst = new RecordSet();
RecordSet rs1 = new RecordSet();
rs.executeQuery("select * from workflow_bill where id=?",billid);
rs.next();
String tablename = Util.null2String(rs.getString("tablename"));
rs1.executeQuery("select a.requestid from "+ tablename +" a,workflow_requestbase b where a.requestid=b.requestid and b.currentnodetype='3' and a.sfzhm='"+ sfzhm +"'");
if(rs1.next()){
flag = true;
}
return flag;
}
%>