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 public Map getAllState(Map param) { bb.writeLog("getAllState param:" + param); Map resultMap = new HashMap<>(); try { String rq = Util.null2String(param.get("rq")); if (StringUtils.isEmpty(rq)) { rq = DateUtil.getCurrentDate(); } // 结转额度 String billid = bb.getPropValue("zhuyou_prop_zm", "rsbgjl_table_billid"); if (StringUtils.isEmpty(billid)) { billid = "-198"; } RecordSet rs = new RecordSet(); //表格数据 List> 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"); Map info = new HashMap<>(); info.put("ryid", xm); info.put("xm", lastname); info.put("gh", gh); info.put("bm", bmmc); info.put("gc", gcmc); info.put("zw", jobactivitymark); info.put("qf", getSelectNameMain("qf", billid, qf)); info.put("zz", getSelectNameMain("zz", billid, zz)); info.put("zgdj", zgdjName); info.put("jh", jhmc); info.put("bb", bbmc); info.put("sxrq", sxrq); infos.add(info); } List> colMapList = new ArrayList<>(); Map 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"); colMap.put("dataIndex", "bm"); colMap.put("width", "100"); colMap.put("title", "部门"); colMapList.add(colMap); colMap = new HashMap<>(); colMap.put("colSpan", "1"); colMap.put("dataIndex", "gc"); colMap.put("width", "100"); colMap.put("title", "工程"); 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")); } }