From 72c9d9b5bf78e15d06329112c60707f17308a637 Mon Sep 17 00:00:00 2001 From: wangjie <805650258@qq.com> Date: Tue, 11 Jul 2023 10:38:03 +0800 Subject: [PATCH] =?UTF-8?q?#=E5=B7=A5=E5=8F=B7=E7=94=9F=E6=88=90=E3=80=81?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=BB=BA=E6=A8=A1=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../action/PendingEmploymentModeAction.java | 83 +++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 src/weaver/interfaces/shuzhi/action/PendingEmploymentModeAction.java diff --git a/src/weaver/interfaces/shuzhi/action/PendingEmploymentModeAction.java b/src/weaver/interfaces/shuzhi/action/PendingEmploymentModeAction.java new file mode 100644 index 0000000..298144d --- /dev/null +++ b/src/weaver/interfaces/shuzhi/action/PendingEmploymentModeAction.java @@ -0,0 +1,83 @@ +package weaver.interfaces.shuzhi.action; + +import weaver.conn.RecordSet; +import weaver.general.BaseBean; +import weaver.general.Util; +import weaver.interfaces.workflow.action.Action; +import weaver.soa.workflow.request.RequestInfo; + +/** + * 更新待入职生成流程的员工gh + * + * @author wangj + * @version 1.00版本 + * @Date 2023/7/4 + */ + +public class PendingEmploymentModeAction implements Action { + @Override + public String execute(RequestInfo requestInfo) { + BaseBean bb = new BaseBean(); + RecordSet rs = new RecordSet(); + String tableName = requestInfo.getRequestManager().getBillTableName(); + String lcid = requestInfo.getRequestid(); + String gzdw = ""; + String sfzh = ""; + String sql = "select gzdw,sfzh from " + tableName + " where requestid = '" + lcid + "'"; + rs.execute(sql); + while (rs.next()) { + gzdw = Util.null2String(rs.getString("gzdw")); + sfzh = Util.null2String(rs.getString("sfzh")); + } + bb.writeLog("PendingEmploymentModeAction--------lcid-:" + lcid); + bb.writeLog("PendingEmploymentModeAction--------gzdw-:" + gzdw); + bb.writeLog("PendingEmploymentModeAction--------sfzh-:" + sfzh); + + + if (!"".equals(lcid) && !"".equals(gzdw) && !"".equals(sfzh)) { + + String workcode = ""; + sql = "SELECT " + + "CASE " + + " WHEN " + + " MAX( workcode ) IS NULL THEN " + + " ( " + + " ( select subcompanycode from HrmSubCompany where id = '" + gzdw + "' ) + RIGHT ( DATEPART ( yy, GETDATE ( ) ), 2 ) + '0001' " + + " ) ELSE cast( MAX( workcode ) AS INT ) + 1 " + + " END AS 'workcode' " + + " FROM " + + " HrmResource " + + "WHERE " + + " workcode LIKE ( select subcompanycode from HrmSubCompany where id = '" + gzdw + "' ) + RIGHT ( DATEPART ( yy, GETDATE ( ) ), 2 ) + '%'"; + + rs.execute(sql); + while (rs.next()) { + workcode = Util.null2String(rs.getString("workcode")); + } + + if (!"".equals(workcode)) { + updateWfdata(lcid, workcode, sfzh, tableName); + } + + } + return null; + } + + private void updateWfdata(String lcid, String workcode, String sfzh, String tableName) { + String sql = "update " + tableName + " set gh = '" + workcode + "' where requestid = '" + lcid + "'"; + RecordSet rs = new RecordSet(); + rs.execute(sql); + + sql = "update hrmresource set workcode = '" + workcode + "' where certificatenum= '" + sfzh + "'"; + rs.execute(sql); + new BaseBean().writeLog("PendingEmploymentModeAction--updateWfdata sql:" + sql); + + //入职确认 sfzh + sql = "update uf_rzgljmb set gh = '" + workcode + "' where sfzh = '" + sfzh + "'"; + rs.execute(sql); + + ////入职确认 uf_syqglbd + sql = "update uf_syqglbd set gh = '" + workcode + "' where sjid = '" + lcid + "'"; + rs.execute(sql); + } +}