weaver-zhuyou/src/com/engine/zhuyou/service/impl/CommonFormModeServiceImpl.java

239 lines
9.9 KiB
Java
Raw Normal View History

2025-06-06 11:36:05 +08:00
package com.engine.zhuyou.service.impl;
import com.engine.core.impl.Service;
import com.engine.zhuyou.service.CommonFormModeService;
import com.weaver.general.BaseBean;
import org.apache.commons.lang3.StringUtils;
import weaver.common.DateUtil;
import weaver.conn.RecordSet;
import weaver.general.Util;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class CommonFormModeServiceImpl extends Service implements CommonFormModeService {
public BaseBean bb = new BaseBean();
@Override
2025-06-10 14:49:39 +08:00
public Map<String, Object> getAllState(Map<String, Object> params) {
bb.writeLog("getAllState param:" + params);
2025-06-06 11:36:05 +08:00
Map<String, Object> resultMap = new HashMap<>();
try {
2025-06-10 14:49:39 +08:00
String rq = Util.null2String(params.get("rq"));
2025-06-06 11:36:05 +08:00
if (StringUtils.isEmpty(rq)) {
rq = DateUtil.getCurrentDate();
}
2025-06-10 14:49:39 +08:00
String bhParam = Util.null2String(params.get("bh"));
String ygxmParam = Util.null2String(params.get("ygxm"));
String gcParam = Util.null2String(params.get("gc"));
String bmParam = Util.null2String(params.get("bm"));
String zwParam = Util.null2String(params.get("zw"));
String qfParam = Util.null2String(params.get("qf"));
String zzParam = Util.null2String(params.get("zz"));
String zgdjParam = Util.null2String(params.get("zgdj"));
String jhParam = Util.null2String(params.get("jh"));
String bbParam = Util.null2String(params.get("bb"));
// 人事变更记录表billid
2025-06-06 11:36:05 +08:00
String billid = bb.getPropValue("zhuyou_prop_zm", "rsbgjl_table_billid");
if (StringUtils.isEmpty(billid)) {
billid = "-198";
}
RecordSet rs = new RecordSet();
//表格数据
List<Map<String, Object>> infos = new ArrayList<>();
String sql = "SELECT t1.*, t3.lastname, t4.jobactivitymark, t5.zgdj as zgdjName, t6.jhmc, t7.bbmc " +
"FROM uf_rsbgjl t1\n" +
"INNER JOIN (\n" +
" SELECT \n" +
" xm,\n" +
" MAX(sxrq) AS sxrq " +
" FROM uf_rsbgjl\n" +
" WHERE sxrq <= '" + rq + "' " +
" GROUP BY xm\n" +
") t2 ON t1.xm = t2.xm \n" +
" AND t1.sxrq = t2.sxrq " +
"LEFT JOIN hrmresource t3 ON t1.xm = t3.id " +
"LEFT JOIN hrmjobactivities t4 ON t1.zw = t4.id " +
"LEFT JOIN uf_zgdjda t5 ON t1.zgdj = t5.zgdjbh " +
"LEFT JOIN uf_jhda t6 ON t1.jh = t6.jhbm " +
"LEFT JOIN uf_bbgl t7 on t1.bb = t7.bbbm ";
rs.execute(sql);
while (rs.next()) {
String xm = rs.getString("xm");
String lastname = rs.getString("lastname");
String gh = rs.getString("gh");
String bmmc = rs.getString("bmmc");
String gcmc = rs.getString("gcmc");
String jobactivitymark = rs.getString("jobactivitymark");
String qf = rs.getString("qf");
String zz = rs.getString("zz");
String zgdjName = rs.getString("zgdjName");
String jhmc = rs.getString("jhmc");
String bbmc = rs.getString("bbmc");
String sxrq = rs.getString("sxrq");
2025-06-10 14:49:39 +08:00
String qfName = null;
if (StringUtils.isNotEmpty(qf)) {
qfName = getSelectNameMain("qf", billid, qf);
}
String zzName = null;
if (StringUtils.isNotEmpty(zz)) {
zzName = getSelectNameMain("zz", billid, zz);
}
if (StringUtils.isNotEmpty(bhParam)) {
if (StringUtils.isEmpty(gh) || !gh.contains(bhParam)) {
continue;
}
}
if (StringUtils.isNotEmpty(ygxmParam)) {
if (StringUtils.isEmpty(lastname) || !lastname.contains(ygxmParam)) {
continue;
}
}
if (StringUtils.isNotEmpty(gcParam)) {
if (StringUtils.isEmpty(gcmc) || !gcmc.contains(gcParam)) {
continue;
}
}
if (StringUtils.isNotEmpty(bmParam)) {
if (StringUtils.isEmpty(bmmc) || !bmmc.contains(bmParam)) {
continue;
}
}
if (StringUtils.isNotEmpty(zwParam)) {
if (StringUtils.isEmpty(jobactivitymark) || !jobactivitymark.contains(zwParam)) {
continue;
}
}
if (StringUtils.isNotEmpty(qfParam)) {
if (StringUtils.isEmpty(qfName) || !qfName.contains(qfParam)) {
continue;
}
}
if (StringUtils.isNotEmpty(zzParam)) {
if (StringUtils.isEmpty(zzName) || !zzName.contains(zzParam)) {
continue;
}
}
if (StringUtils.isNotEmpty(zgdjParam)) {
if (StringUtils.isEmpty(zgdjName) || !zgdjName.contains(zgdjParam)) {
continue;
}
}
if (StringUtils.isNotEmpty(jhParam)) {
if (StringUtils.isEmpty(jhmc) || !jhmc.contains(jhParam)) {
continue;
}
}
if (StringUtils.isNotEmpty(bbParam)) {
if (StringUtils.isEmpty(bbmc) || !bbmc.contains(bbParam)) {
continue;
}
}
2025-06-06 11:36:05 +08:00
Map<String, Object> info = new HashMap<>();
info.put("ryid", xm);
info.put("xm", lastname);
info.put("gh", gh);
info.put("gc", gcmc);
2025-06-10 14:49:39 +08:00
info.put("bm", bmmc);
2025-06-06 11:36:05 +08:00
info.put("zw", jobactivitymark);
2025-06-10 14:49:39 +08:00
info.put("qf", qfName);
info.put("zz", zzName);
2025-06-06 11:36:05 +08:00
info.put("zgdj", zgdjName);
info.put("jh", jhmc);
info.put("bb", bbmc);
info.put("sxrq", sxrq);
infos.add(info);
}
List<Map<String, String>> colMapList = new ArrayList<>();
Map<String, String> colMap = new HashMap<>();
colMap.put("colSpan", "1");
colMap.put("dataIndex", "gh");
colMap.put("width", "100");
colMap.put("title", "工号");
colMapList.add(colMap);
colMap = new HashMap<>();
colMap.put("colSpan", "1");
colMap.put("dataIndex", "xm");
colMap.put("width", "100");
colMap.put("title", "姓名");
colMapList.add(colMap);
colMap = new HashMap<>();
colMap.put("colSpan", "1");
2025-06-10 14:49:39 +08:00
colMap.put("dataIndex", "gc");
2025-06-06 11:36:05 +08:00
colMap.put("width", "100");
2025-06-10 14:49:39 +08:00
colMap.put("title", "工程");
2025-06-06 11:36:05 +08:00
colMapList.add(colMap);
colMap = new HashMap<>();
colMap.put("colSpan", "1");
2025-06-10 14:49:39 +08:00
colMap.put("dataIndex", "bm");
2025-06-06 11:36:05 +08:00
colMap.put("width", "100");
2025-06-10 14:49:39 +08:00
colMap.put("title", "部门");
2025-06-06 11:36:05 +08:00
colMapList.add(colMap);
colMap = new HashMap<>();
colMap.put("colSpan", "1");
colMap.put("dataIndex", "zw");
colMap.put("width", "100");
colMap.put("title", "职务");
colMapList.add(colMap);
colMap = new HashMap<>();
colMap.put("colSpan", "1");
colMap.put("dataIndex", "qf");
colMap.put("width", "100");
colMap.put("title", "区分");
colMapList.add(colMap);
colMap = new HashMap<>();
colMap.put("colSpan", "1");
colMap.put("dataIndex", "zz");
colMap.put("width", "100");
colMap.put("title", "职种");
colMapList.add(colMap);
colMap = new HashMap<>();
colMap.put("colSpan", "1");
colMap.put("dataIndex", "zgdj");
colMap.put("width", "100");
colMap.put("title", "资格等级");
colMapList.add(colMap);
colMap = new HashMap<>();
colMap.put("colSpan", "1");
colMap.put("dataIndex", "jh");
colMap.put("width", "100");
colMap.put("title", "级号");
colMapList.add(colMap);
colMap = new HashMap<>();
colMap.put("colSpan", "1");
colMap.put("dataIndex", "bb");
colMap.put("width", "100");
colMap.put("title", "班别");
colMapList.add(colMap);
resultMap.put("count", infos.size());
resultMap.put("dataList", infos);
resultMap.put("colList", colMapList);
resultMap.put("code", "200");
} catch (Exception e) {
resultMap.put("code", "500");
bb.writeLog("getAllState error:" + e);
}
bb.writeLog("getAllState end.");
return resultMap;
}
private String getSelectNameMain(String fieldName, String billid, String selectValue) {
RecordSet rs = new RecordSet();
rs.executeQuery("select id from workflow_billfield where fieldname = ? and billid = ? and viewtype=0", fieldName, billid);
rs.next();
int fieldId = com.weaver.general.Util.getIntValue(rs.getString("id"),-1);
rs.executeQuery("select selectname from workflow_SelectItem where fieldid = ? and selectvalue = ?", fieldId, selectValue);
rs.next();
return com.weaver.general.Util.null2String(rs.getString("selectname"));
}
}