Compare commits

...

13 Commits

@ -0,0 +1,12 @@
package com.api.htypoc.web;
import javax.ws.rs.Path;
/**
* @author:dxfeng
* @createTime: 2024/09/08
* @version: 1.0
*/
@Path("/hty/poc")
public class HtyController extends com.engine.hty.web.HtyController{
}

@ -0,0 +1,12 @@
package com.api.jclpoc.web;
import javax.ws.rs.Path;
/**
* @author:dxfeng
* @createTime: 2024/05/08
* @version: 1.0
*/
@Path("/jcl/poc/pocperformance")
public class PocPerformanceController extends com.engine.jclpoc.web.PocPerformanceController{
}

@ -1,13 +0,0 @@
package com.api.jygf.web;
import javax.ws.rs.Path;
/**
* @Author weaver_cl
* @Description:
* @Date 2022/10/9
* @Version V1.0
**/
@Path("/mobile/permission")
public class MobilePermissionsAction extends com.engine.jygf.web.MobilePermissionsAction {
}

@ -0,0 +1,178 @@
package com.engine.hty.web;
import cn.hutool.core.convert.Convert;
import com.engine.common.util.ParamUtil;
import com.weaver.general.Util;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author:dxfeng
* @createTime: 2024/09/08
* @version: 1.0
*/
public class HtyController {
@GET
@Path("/getTotalScore")
@Produces(MediaType.APPLICATION_JSON)
public Map<String, Object> getTotalScore(@Context HttpServletRequest request, @Context HttpServletResponse response) {
Map<String, Object> map = ParamUtil.request2Map(request);
Map<String, Object> returnMap = new HashMap<>();
returnMap.put("api_status", true);
String khzq = Util.null2String((String) map.get("khzq"));
String xmkhry = Util.null2String((String) map.get("xmkhry"));
String xmpfqz = Util.null2String((String) map.get("xmpfqz"));
String gwzzpfqz = Util.null2String((String) map.get("gwzzpfqz"));
String gwzzpf = Util.null2String((String) map.get("gwzzpf"));
String billId = Util.null2String((String) map.get("billId"));
RecordSet rs = new RecordSet();
List<Double> list = new ArrayList<>();
// 考核周期。考核人员
rs.executeQuery("select xmjldf from uf_xmkhpf where khzq = ? and xmkhry = ?", khzq, xmkhry);
while (rs.next()) {
list.add(Convert.toDouble(rs.getString("xmjldf"), 0D));
}
if (CollectionUtils.isNotEmpty(list)) {
Double total = 0D;
for (Double i : list) {
total += i;
}
BigDecimal totalDecimal = BigDecimal.valueOf(total);
BigDecimal sizeDecimal = BigDecimal.valueOf(list.size());
// 保留两位小数
BigDecimal average = totalDecimal.divide(sizeDecimal, 2, RoundingMode.HALF_UP);
returnMap.put("average", average);
//
Double xmpfqzInt = Convert.toDouble(xmpfqz, 0D);
if (xmpfqzInt == 0D) {
returnMap.put("api_status", false);
returnMap.put("msg", "项目评分权重转换失败");
}
Double gwzzpfqzInt = Convert.toDouble(gwzzpfqz, 0D);
if (gwzzpfqzInt == 0D) {
returnMap.put("api_status", false);
returnMap.put("msg", "岗位职责评分权重转换失败");
}
Double gwzzpfInt = Convert.toDouble(gwzzpf, 0D);
if (gwzzpfInt == 0D) {
returnMap.put("api_status", false);
returnMap.put("msg", "岗位职责评分转换失败");
}
BigDecimal xmpfqzBig = BigDecimal.valueOf(xmpfqzInt).divide(BigDecimal.valueOf(100), 2, RoundingMode.HALF_UP);
BigDecimal gwzzpfqzBig = BigDecimal.valueOf(gwzzpfqzInt).divide(BigDecimal.valueOf(100), 2, RoundingMode.HALF_UP);
BigDecimal result1 = average.multiply(xmpfqzBig).setScale(2, RoundingMode.HALF_UP);
BigDecimal result2 = gwzzpfqzBig.multiply(BigDecimal.valueOf(gwzzpfInt)).setScale(2, RoundingMode.HALF_UP);
BigDecimal add = result1.add(result2);
returnMap.put("result", add);
// 更新表中的数据
rs.executeUpdate("update uf_xmzkh set khzdf = ? where id = ? ", add, billId);
}
return returnMap;
}
@GET
@Path("/getData")
@Produces(MediaType.APPLICATION_JSON)
public Map<String, Object> getData(@Context HttpServletRequest request, @Context HttpServletResponse response) {
Map<String, Object> map = ParamUtil.request2Map(request);
Map<String, Object> returnMap = new HashMap<>();
returnMap.put("api_status", true);
String ffyf = Util.null2String((String) map.get("ffyf"));
String ffry = Util.null2String((String) map.get("ffry"));
String bm = Util.null2String((String) map.get("bm"));
if (StringUtils.isBlank(bm)) {
}
String billId = Util.null2String((String) map.get("billId"));
RecordSet rs = new RecordSet();
String year = ffyf.substring(0, 4);
// 年月转化为季度
String month = ffyf.substring(4, 6);
// 月份转化为季度
String quarter = "";
if (month.equals("01") || month.equals("02") || month.equals("03")) {
quarter = "0";
} else if (month.equals("04") || month.equals("05") || month.equals("06")) {
quarter = "1";
} else if (month.equals("07") || month.equals("08") || month.equals("09")) {
quarter = "2";
} else if (month.equals("10") || month.equals("11") || month.equals("12")) {
quarter = "3";
}
String sql = "select * from uf_htyjxhd where khnd =" + year + " and khjd =" + quarter + " and concat(',',khry,',') like '%," + ffry + ",%' order by id desc ";
rs.executeQuery(sql);
if (rs.next()) {
String id = rs.getString("id");
rs.executeQuery("select * from uf_jxdjfb_dt2 where jxhd = ? and khry = ?", id, ffry);
if (rs.next()) {
map.put("khzzdf", rs.getString("khzzdf"));
map.put("khdj", rs.getString("khdj"));
}
}
rs.executeQuery("select * from uf_jcl_yjjx where yjyf = ?", ffyf);
String jxyj = "";
if (rs.next()) {
jxyj = rs.getString("jxyj");
}
map.put("jxyj", jxyj);
String xs = "";
rs.executeQuery("select a.jjxs,b.mrjjxs from uf_jcl_jjfpfa_dt1 a inner join uf_jcl_jjfpfa b on a.mainid = b.id where a.ry = ?", ffry);
if (rs.next()) {
xs = rs.getString("jjxs");
if (StringUtils.isBlank(xs)) {
xs = rs.getString("mrjjxs");
}
}
if (StringUtils.isBlank(xs)) {
rs.executeQuery("select a.jjxs,b.mrjjxs from uf_jcl_jjfpfa_dt1 a inner join uf_jcl_jjfpfa b on a.mainid = b.id where a.bm =?", bm);
if (rs.next()) {
xs = rs.getString("jjxs");
if (StringUtils.isBlank(xs)) {
xs = rs.getString("mrjjxs");
}
}
}
map.put("xs", xs);
if (StringUtils.isNotBlank(xs) && StringUtils.isNotBlank(jxyj)) {
BigDecimal decimal = new BigDecimal(xs).multiply(new BigDecimal(jxyj)).setScale(2, RoundingMode.HALF_UP);
map.put("bzjjje", decimal);
}
return returnMap;
}
}

@ -0,0 +1,56 @@
package com.engine.jclpoc.web;
import com.engine.common.util.ParamUtil;
import weaver.conn.RecordSet;
import weaver.general.Util;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.HashMap;
import java.util.Map;
/**
* @author:dxfeng
* @createTime: 2024/05/08
* @version: 1.0
*/
public class PocPerformanceController {
@GET
@Path("/getTotalScore")
@Produces(MediaType.APPLICATION_JSON)
public Map<String, Object> getTotalScore(@Context HttpServletRequest request, @Context HttpServletResponse response) {
Map<String, Object> map = ParamUtil.request2Map(request);
Map<String, Object> returnMap = new HashMap<>();
returnMap.put("api_status", true);
String hdId = Util.null2String(map.get("hdId"));
String bpr = Util.null2String(map.get("bpr"));
RecordSet rs = new RecordSet();
// 查询明细表已完成评价且得分不为空的数据
rs.executeQuery("select * from uf_360pjhd_dt2 where mainid = ? and bpr = ? and sfpjwc = 1 and df is not null", hdId, bpr);
int count = 0;
double sum = 0;
while (rs.next()) {
count++;
sum += rs.getDouble("df");
}
if (count > 0 && sum > 0) {
// 计算并保留两位小数
BigDecimal dividend = new BigDecimal(sum);
BigDecimal divisor = new BigDecimal(count);
BigDecimal result = dividend.divide(divisor, 2, RoundingMode.HALF_UP);
returnMap.put("totalScore", result);
} else {
returnMap.put("totalScore", 0);
}
return returnMap;
}
}

@ -1,68 +0,0 @@
package com.engine.jygf.cmd;
import com.engine.common.biz.AbstractCommonCommand;
import com.engine.common.entity.BizLogContext;
import com.engine.core.interceptor.CommandContext;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
import weaver.hrm.User;
import weaver.wechat.util.Utils;
import java.util.*;
/**
* @Author weaver_cl
* @Description:
* @Date 2022/10/9
* @Version V1.0
**/
public class MobilePermissionsCmd extends AbstractCommonCommand<Map<String, Object>> {
private static final String FIELDID = "field100026"; //移动电话自定义字段
private static final String SCOPE = "HrmCustomFieldByInfoType";
private static final String SCOPEID = "-1";
public MobilePermissionsCmd(Map<String, Object> params, User user) {
this.user = user;
this.params = params;
}
@Override
public BizLogContext getLogContext() {
return null;
}
@Override
public Map<String, Object> execute(CommandContext commandContext) {
Map<String, Object> data = new HashMap<>();
String uid = Utils.null2String(user.getUID());
RecordSet rs = new RecordSet();
HashSet<String> ids = new HashSet<>();
ids.add(uid);
rs.executeQuery("select ckr,bckr from uf_yddhqx_dt1");
while (rs.next()) {
String ckr = Utils.null2String(rs.getString("ckr"));
String bckr = Utils.null2String(rs.getString("bckr"));
if (Arrays.asList(ckr.split(",")).contains(uid)) {
ids.addAll(Arrays.asList(bckr.split(",")));
}
}
Map<String,String> mobileInfo = new HashMap<>();
String value = StringUtils.join(ids,",");
rs.executeQuery("select id,"+FIELDID+" from cus_fielddata where scope = ? and scopeid = ?" +
" and id in ("+value+")",SCOPE,SCOPEID);
while (rs.next()){
mobileInfo.put(Utils.null2String(rs.getString("id")),rs.getString(FIELDID));
}
data.put("ids",ids);
data.put("mobileInfo",mobileInfo);
return data;
}
}

@ -1,16 +0,0 @@
package com.engine.jygf.service;
import weaver.hrm.User;
import java.util.Map;
/**
* @Author weaver_cl
* @Description:
* @Date 2022/10/9
* @Version V1.0
**/
public interface MobilePermissionsService {
Map<String, Object> getPermissionInfo(Map<String, Object> params, User user);
}

@ -1,24 +0,0 @@
package com.engine.jygf.service.impl;
import com.engine.core.impl.Service;
import com.engine.jygf.cmd.MobilePermissionsCmd;
import com.engine.jygf.service.MobilePermissionsService;
import weaver.hrm.User;
import java.util.Map;
/**
* @Author weaver_cl
* @Description:
* @Date 2022/10/9
* @Version V1.0
**/
public class MobilePermissionsServiceImpl extends Service implements MobilePermissionsService {
@Override
public Map<String, Object> getPermissionInfo(Map<String, Object> params, User user) {
return commandExecutor.execute(new MobilePermissionsCmd(params,user));
}
}

@ -1,57 +0,0 @@
package com.engine.jygf.web;
import com.alibaba.fastjson.JSONObject;
import com.engine.common.util.ParamUtil;
import com.engine.common.util.ServiceUtil;
import com.engine.jygf.service.MobilePermissionsService;
import com.engine.jygf.service.impl.MobilePermissionsServiceImpl;
import weaver.hrm.HrmUserVarify;
import weaver.hrm.User;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import java.util.HashMap;
import java.util.Map;
/**
* @Author weaver_cl
* @Description:
* @Date 2022/10/9
* @Version V1.0
**/
public class MobilePermissionsAction {
public MobilePermissionsService getMobilePermissionsService(User user) {
return ServiceUtil.getService(MobilePermissionsServiceImpl.class,user);
}
/**
*
* @param request
* @param response
* @return
*/
@GET
@Path("/controller")
@Produces(MediaType.APPLICATION_JSON)
public String getPermissionInfo(@Context HttpServletRequest request, @Context HttpServletResponse response) {
Map<String, Object> apidatas = new HashMap<>();
try {
User user = HrmUserVarify.getUser(request, response);
//实例化Service 并调用业务类处理
apidatas = getMobilePermissionsService(user).getPermissionInfo(ParamUtil.request2Map(request), user);
} catch (Exception e) {
//异常处理
apidatas.put("api_status", false);
}
return JSONObject.toJSONString(apidatas);
}
}

@ -0,0 +1,81 @@
package weaver.formmode.hty.modeexpand.activity;
import cn.hutool.core.convert.Convert;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
import weaver.workflow.webservices.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author:dxfeng
* @createTime: 2024/09/06
* @version: 1.0
*/
public class FlowUtil {
public static String parseBlankToNull(String str) {
return StringUtils.isBlank(str) ? null : str;
}
public static List<Map<String, String>> getRecordMapList(RecordSet rs) {
List<Map<String, String>> list = new ArrayList<>();
while (rs.next()) {
String[] columnNames = rs.getColumnName();
Map<String, String> dataMap = new HashMap<>();
for (String columnName : columnNames) {
dataMap.put(columnName.toLowerCase(), parseBlankToNull(rs.getString(columnName)));
}
list.add(dataMap);
}
return list;
}
public static WorkflowRequestTableField createWorkflowRequestTableField(String fieldName, String fieldValue) {
WorkflowRequestTableField tableField = new WorkflowRequestTableField();
tableField.setFieldName(fieldName);
tableField.setFieldValue(fieldValue);
tableField.setView(true);
tableField.setEdit(true);
return tableField;
}
/**
*
*
* @param flowId
* @param title
* @param creatorId
* @param isNextFlow
* @param workflowMainTableInfo
* @param workflowDetailTableInfoArray
* @return
*/
public static String createWorkflow(String flowId, String title, String creatorId, String isNextFlow, WorkflowMainTableInfo workflowMainTableInfo, WorkflowDetailTableInfo[] workflowDetailTableInfoArray) {
WorkflowBaseInfo workflowBaseInfo = new WorkflowBaseInfo();
workflowBaseInfo.setWorkflowId(flowId);
//工作流程请求信息
WorkflowRequestInfo workflowRequestInfo = new WorkflowRequestInfo();
//请求标题
workflowRequestInfo.setRequestName(title);
//请求重要级别
workflowRequestInfo.setRequestLevel("1");
//显示
workflowRequestInfo.setCanView(true);
//创建者id
workflowRequestInfo.setCreatorId(creatorId);
//工作流信息
workflowRequestInfo.setWorkflowBaseInfo(workflowBaseInfo);
//主表
workflowRequestInfo.setWorkflowMainTableInfo(workflowMainTableInfo);
workflowRequestInfo.setWorkflowDetailTableInfos(workflowDetailTableInfoArray);
//是否提交下一节点
workflowRequestInfo.setIsnextflow(isNextFlow);
WorkflowService workflow = new WorkflowServiceImpl();
return workflow.doCreateWorkflowRequest(workflowRequestInfo, Convert.toInt(creatorId, 1));
}
}

@ -0,0 +1,236 @@
package weaver.formmode.hty.modeexpand.activity;
import com.alibaba.fastjson.JSON;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import weaver.common.DateUtil;
import weaver.conn.RecordSet;
import weaver.formmode.customjavacode.AbstractModeExpandJavaCodeNew;
import weaver.general.Util;
import weaver.hrm.User;
import weaver.soa.workflow.request.*;
import weaver.workflow.webservices.WorkflowDetailTableInfo;
import weaver.workflow.webservices.WorkflowMainTableInfo;
import weaver.workflow.webservices.WorkflowRequestTableField;
import weaver.workflow.webservices.WorkflowRequestTableRecord;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static weaver.formmode.hty.modeexpand.activity.FlowUtil.*;
/**
* @author:dxfeng
* @createTime: 2024/09/06
* @version: 1.0
*/
public class InitiateRatingExpand extends AbstractModeExpandJavaCodeNew {
private String FLOW_ID = "136";
@Override
public Map<String, String> doModeExpand(Map<String, Object> param) {
Map<String, String> result = new HashMap<>(2);
RecordSet rs = new RecordSet();
try {
int billId;
int modeId;
RequestInfo requestInfo = (RequestInfo) param.get("RequestInfo");
if (requestInfo != null) {
User user = (User) param.get("user");
billId = Util.getIntValue(requestInfo.getRequestid());
modeId = Util.getIntValue(requestInfo.getWorkflowid());
if (billId > 0 && modeId > 0) {
Map<String, String> mainDataMap = new HashMap<>(16);
MainTableInfo mainTableInfo = requestInfo.getMainTableInfo();
Property[] properties = mainTableInfo.getProperty();
for (Property property : properties) {
mainDataMap.put(property.getName(), property.getValue());
}
List<Map<String, String>> detailList = new ArrayList<>();
DetailTableInfo detailTableInfo = requestInfo.getDetailTableInfo();
DetailTable detailTable = detailTableInfo.getDetailTable(0);
Row[] rows = detailTable.getRow();
for (Row row : rows) {
Map<String, String> detailDataMap = new HashMap<>();
detailDataMap.put("id", row.getId());
Cell[] cells = row.getCell();
for (Cell cell : cells) {
String name = cell.getName();
String value = cell.getValue();
detailDataMap.put(name, value);
}
detailList.add(detailDataMap);
}
// 遍历明细表数据、查询对应方案数据,创建流程
String khnd = mainDataMap.get("khnd");
String khjd = mainDataMap.get("khjd");
for (Map<String, String> detailItem : detailList) {
String activityDetailId = detailItem.get("id");
String khry = detailItem.get("khry");
matchPlanData(rs, user, activityDetailId, khnd, khjd, khry,String.valueOf(billId), FlowUtil.parseBlankToNull(mainDataMap.get("zpbz")),FlowUtil.parseBlankToNull(mainDataMap.get("zjsjqz")), FlowUtil.parseBlankToNull(mainDataMap.get("xxsjqz")));
}
}
}
} catch (Exception e) {
rs.writeLog(e);
result.put("errmsg", "添加评价人员拓展异常");
result.put("flag", "false");
}
return result;
}
// 遍历数据创建流程
/**
* @param rs
* @param khnd
* @param khjd
*/
private void matchPlanData(RecordSet rs, User user, String activityDetailId, String khnd, String khjd, String khry,String id,String zpbz,String zjsjqz,String xxsjqz) {
rs.executeQuery("select * from uf_khfahty where zrr = ? and nd = ? and jd = ? And formmodeid = 312", khry, khnd, khjd);
Map<String, String> mainDataMap = new HashMap<>();
String mainId = "";
if (rs.next()) {
mainId = rs.getString("id");
String[] columnNames = rs.getColumnName();
for (String columnName : columnNames) {
mainDataMap.put(columnName.toLowerCase(), FlowUtil.parseBlankToNull(rs.getString(columnName)));
}
}
// 未查到数据或者主表ID跳过该数据
if (StringUtils.isBlank(mainId) || mainDataMap.isEmpty()) {
rs.writeLog("未匹配到方案数据khnd==" + khnd + ",khjd==" + khjd + ",khry==" + khry);
return;
}
rs.writeLog("mainDataMap==="+ JSON.toJSONString(mainDataMap));
// 构建主表流程数据
WorkflowRequestTableField[] workflowRequestTableField = {
createWorkflowRequestTableField("zrr", FlowUtil.parseBlankToNull(mainDataMap.get("zrr"))),
createWorkflowRequestTableField("gs", FlowUtil.parseBlankToNull(mainDataMap.get("gs"))),
createWorkflowRequestTableField("bm", FlowUtil.parseBlankToNull(mainDataMap.get("bm"))),
createWorkflowRequestTableField("gw", FlowUtil.parseBlankToNull(mainDataMap.get("gw"))),
createWorkflowRequestTableField("zrrsj", FlowUtil.parseBlankToNull(mainDataMap.get("zrrsj"))),
createWorkflowRequestTableField("zgld", FlowUtil.parseBlankToNull(mainDataMap.get("zgld"))),
createWorkflowRequestTableField("zgldsj", FlowUtil.parseBlankToNull(mainDataMap.get("zgldsj"))),
createWorkflowRequestTableField("xgld", FlowUtil.parseBlankToNull(mainDataMap.get("xgld"))),
createWorkflowRequestTableField("xgldsj", FlowUtil.parseBlankToNull(mainDataMap.get("xgldsj"))),
createWorkflowRequestTableField("khdf", FlowUtil.parseBlankToNull(mainDataMap.get("khdf"))),
createWorkflowRequestTableField("khdj", FlowUtil.parseBlankToNull(mainDataMap.get("khdj"))),
createWorkflowRequestTableField("kpiqz", FlowUtil.parseBlankToNull(mainDataMap.get("kpiqz"))),
createWorkflowRequestTableField("zdgzqz", FlowUtil.parseBlankToNull(mainDataMap.get("zdgzqz"))),
createWorkflowRequestTableField("khhd", id),
createWorkflowRequestTableField("nd", khnd),
createWorkflowRequestTableField("jd", khjd),
createWorkflowRequestTableField("zpfzb", zpbz),
createWorkflowRequestTableField("zgfzb", zjsjqz),
createWorkflowRequestTableField("xgfzb", xxsjqz)
};
rs.writeLog("workflowRequestTableField=="+JSON.toJSONString(workflowRequestTableField));
WorkflowMainTableInfo workflowMainTableInfo = new WorkflowMainTableInfo();
WorkflowRequestTableRecord[] workflowRequestTableRecord = new WorkflowRequestTableRecord[1];
workflowMainTableInfo.setRequestRecords(workflowRequestTableRecord);
workflowRequestTableRecord[0] = new WorkflowRequestTableRecord();
workflowRequestTableRecord[0].setWorkflowRequestTableFields(workflowRequestTableField);
// 构建明细表数据
WorkflowDetailTableInfo[] workflowDetailTableInfoArray = new WorkflowDetailTableInfo[3];
workflowDetailTableInfoArray[0] = new WorkflowDetailTableInfo();
workflowDetailTableInfoArray[1] = new WorkflowDetailTableInfo();
workflowDetailTableInfoArray[2] = new WorkflowDetailTableInfo();
// 明细表一
rs.executeQuery("select * from uf_khfahty_dt1 where mainid = ?", mainId);
List<Map<String, String>> detail1 = getRecordMapList(rs);
if (CollectionUtils.isNotEmpty(detail1)) {
WorkflowRequestTableRecord[] workflowRequestTableRecordDt = new WorkflowRequestTableRecord[detail1.size()];
for (int i = 0; i < detail1.size(); i++) {
Map<String, String> item = detail1.get(i);
WorkflowRequestTableField[] workflowRequestTableFieldDt = {
createWorkflowRequestTableField("zblx", item.get("zblx")),
createWorkflowRequestTableField("xh", item.get("xh")),
createWorkflowRequestTableField("khzb", item.get("khzb")),
createWorkflowRequestTableField("tqwcz", item.get("tqwcz")),
createWorkflowRequestTableField("bqdxz", item.get("bqdxz")),
createWorkflowRequestTableField("bqdbz", item.get("bqdbz")),
createWorkflowRequestTableField("bqtzz", item.get("bqtzz")),
createWorkflowRequestTableField("pfqz", item.get("pfqz")),
createWorkflowRequestTableField("khbz", item.get("khbz")),
createWorkflowRequestTableField("sjly", item.get("sjly")),
createWorkflowRequestTableField("zpf", item.get("zpf")),
createWorkflowRequestTableField("zgf", item.get("zgf")),
createWorkflowRequestTableField("xgf", item.get("xgf")),
createWorkflowRequestTableField("hjf", item.get("hjf")),
createWorkflowRequestTableField("zbmc", item.get("zbmc"))
};
workflowRequestTableRecordDt[i] = new WorkflowRequestTableRecord();
workflowRequestTableRecordDt[i].setWorkflowRequestTableFields(workflowRequestTableFieldDt);
workflowDetailTableInfoArray[0].setWorkflowRequestTableRecords(workflowRequestTableRecordDt);
}
}
// 明细表二
rs.executeQuery("select * from uf_khfahty_dt2 where mainid = ?", mainId);
List<Map<String, String>> detail2 = getRecordMapList(rs);
if (CollectionUtils.isNotEmpty(detail2)) {
WorkflowRequestTableRecord[] workflowRequestTableRecordDt = new WorkflowRequestTableRecord[detail1.size()];
for (int i = 0; i < detail2.size(); i++) {
Map<String, String> item = detail2.get(i);
WorkflowRequestTableField[] workflowRequestTableFieldDt = {
createWorkflowRequestTableField("zblx", item.get("zblx")),
createWorkflowRequestTableField("xh", item.get("xh")),
createWorkflowRequestTableField("zdgzrwmb", item.get("zdgzrwmb")),
createWorkflowRequestTableField("pfqz", item.get("pfqz")),
createWorkflowRequestTableField("pjbz", item.get("pjbz")),
createWorkflowRequestTableField("sjly", item.get("sjly")),
createWorkflowRequestTableField("zpf", item.get("zpf")),
createWorkflowRequestTableField("zgf", item.get("zgf")),
createWorkflowRequestTableField("xgf", item.get("xgf")),
createWorkflowRequestTableField("hjf", item.get("hjf"))
};
workflowRequestTableRecordDt[i] = new WorkflowRequestTableRecord();
workflowRequestTableRecordDt[i].setWorkflowRequestTableFields(workflowRequestTableFieldDt);
workflowDetailTableInfoArray[1].setWorkflowRequestTableRecords(workflowRequestTableRecordDt);
}
}
// 明细表三
rs.executeQuery("select * from uf_khfahty_dt3 where mainid = ?", mainId);
List<Map<String, String>> detail3 = getRecordMapList(rs);
if (CollectionUtils.isNotEmpty(detail3)) {
WorkflowRequestTableRecord[] workflowRequestTableRecordDt = new WorkflowRequestTableRecord[detail1.size()];
for (int i = 0; i < detail3.size(); i++) {
Map<String, String> item = detail3.get(i);
WorkflowRequestTableField[] workflowRequestTableFieldDt = {
createWorkflowRequestTableField("zblx", item.get("zblx")),
createWorkflowRequestTableField("xh", item.get("xh")),
createWorkflowRequestTableField("sxmc", item.get("sxmc")),
createWorkflowRequestTableField("pjbz", item.get("pjbz")),
createWorkflowRequestTableField("sjly", item.get("sjly")),
createWorkflowRequestTableField("zpf", item.get("zpf")),
createWorkflowRequestTableField("zgf", item.get("zgf")),
createWorkflowRequestTableField("xgf", item.get("xgf")),
createWorkflowRequestTableField("hjf", item.get("hjf")),
};
workflowRequestTableRecordDt[i] = new WorkflowRequestTableRecord();
workflowRequestTableRecordDt[i].setWorkflowRequestTableFields(workflowRequestTableFieldDt);
workflowDetailTableInfoArray[2].setWorkflowRequestTableRecords(workflowRequestTableRecordDt);
}
}
String workflow = createWorkflow(FLOW_ID, "考核评分-" + user.getLastname() + "-" + DateUtil.getCurrentDate(), user.getUID() + "", "0", workflowMainTableInfo, workflowDetailTableInfoArray);
// 更新建模明细表流程ID
rs.executeUpdate("update uf_htyjxhd_dt1 set jxpflc = ? where id = ?", workflow, activityDetailId);
}
}

@ -0,0 +1,215 @@
package weaver.formmode.hty.modeexpand.performance;
import cn.hutool.core.convert.Convert;
import com.alibaba.fastjson.JSON;
import weaver.conn.RecordSet;
import weaver.formmode.customjavacode.AbstractModeExpandJavaCodeNew;
import weaver.soa.workflow.request.*;
import java.util.*;
/**
* @author:dxfeng
* @createTime: 2024/09/07
* @version: 1.0
*/
public class RegistrationDistributionExpand extends AbstractModeExpandJavaCodeNew {
@Override
public Map<String, String> doModeExpand(Map<String, Object> param) {
Map<String, String> resultMap = new HashMap<>(2);
RecordSet rs = new RecordSet();
try {
int billId;
int modeId;
RequestInfo requestInfo = (RequestInfo) param.get("RequestInfo");
if (requestInfo != null) {
{
DetailTableInfo detailTableInfo = requestInfo.getDetailTableInfo();
DetailTable detailTable0 = detailTableInfo.getDetailTable(0);
List<Rule> ruleList = new ArrayList<>();
Row[] rows0 = detailTable0.getRow();
for (Row row : rows0) {
Rule rule = new Rule();
Cell[] cells = row.getCell();
for (Cell cell : cells) {
String name = cell.getName();
String value = cell.getValue();
if ("jxdj".equals(name)) {
rule.setRuleName(value);
} else if ("fbbl".equals(name)) {
rule.setRuleRange(Double.parseDouble(value));
}
}
ruleList.add(rule);
}
ruleList.forEach(item -> rs.writeLog(JSON.toJSONString(item)));
DetailTable detailTable1 = detailTableInfo.getDetailTable(1);
Row[] rows1 = detailTable1.getRow();
List<Result> resultList = new ArrayList<>();
for (Row row : rows1) {
Cell[] cells = row.getCell();
Result result = new Result();
result.setId(row.getId());
for (Cell cell : cells) {
String name = cell.getName();
String value = cell.getValue();
if ("khzzdf".equals(name)) {
result.setScore(Convert.toDouble(value, 0D));
}
}
resultList.add(result);
}
// 所有人员排名
LinkedHashSet<Integer> rankSet = calculateRankings(resultList);
rs.writeLog("排名");
resultList.forEach(item -> rs.writeLog(JSON.toJSONString(item)));
ArrayList<Integer> rankList = new ArrayList<>(rankSet);
// 根据排名,按照分部比例划分
int subStart = 0;
double currentRange = 0.0;
for (int i = 0; i < ruleList.size(); i++) {
Rule rule = ruleList.get(i);
double ruleRange = rule.getRuleRange() / 100;
currentRange += ruleRange;
rs.writeLog("ruleRange==" + ruleRange);
rs.writeLog("currentRange==" + currentRange);
//int subEnd = subStart!=0?(int) Math.floor(rankList.size() * ruleRange):(int) Math.ceil(rankList.size() * ruleRange);
// 向下取
int subEnd = (int) Math.floor(rankList.size() * currentRange);
if (i == 0 && subEnd < 1) {
subEnd = 1;
}
if (i == ruleList.size() && subEnd < ruleList.size()) {
subEnd = rankList.size();
}
List<Integer> rangeList = rankList.subList(subStart, subEnd);
for (Integer integer : rangeList) {
for (Result result : resultList) {
if (result.getRank().equals(integer)) {
result.setLevel(rule.getRuleName());
}
}
}
subStart = subEnd;
}
rs.writeLog("划分等级");
// 更新明细表
String updateSql = "update uf_jxdjfb_dt2 set khdj = ? where id = ?";
for (Result result : resultList) {
rs.writeLog(JSON.toJSONString(result));
rs.executeUpdate(updateSql, result.getLevel(), result.getId());
}
}
}
} catch (Exception e) {
rs.writeLog(e);
resultMap.put("errmsg", e.getMessage());
resultMap.put("flag", "false");
}
return resultMap;
}
public static LinkedHashSet<Integer> calculateRankings(List<Result> resultList) {
LinkedHashSet<Integer> rankSet = new LinkedHashSet<>();
resultList.sort((o1, o2) -> {
return o2.getScore().compareTo(o1.getScore()); // 按值(分数)降序排序
});
// 计算排名并输出
int rank = 1;
double prevScore = -1;
for (Result result : resultList) {
double score = result.getScore();
if (score < prevScore) {
rank++;
}
prevScore = score;
result.setRank(rank);
rankSet.add(rank);
}
return rankSet;
}
static class Rule {
String ruleName;
double ruleRange;
public Rule() {
}
public Rule(String ruleName, double ruleRange) {
this.ruleName = ruleName;
this.ruleRange = ruleRange;
}
public String getRuleName() {
return ruleName;
}
public void setRuleName(String ruleName) {
this.ruleName = ruleName;
}
public double getRuleRange() {
return ruleRange;
}
public void setRuleRange(double ruleRange) {
this.ruleRange = ruleRange;
}
}
static class Result {
String id;
Double score;
String level;
Integer rank;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Double getScore() {
return score;
}
public void setScore(Double score) {
this.score = score;
}
public String getLevel() {
return level;
}
public void setLevel(String level) {
this.level = level;
}
public Integer getRank() {
return rank;
}
public void setRank(Integer rank) {
this.rank = rank;
}
}
}

@ -0,0 +1,98 @@
package weaver.formmode.poc.modeexpand.evaluate;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
import weaver.formmode.customjavacode.AbstractModeExpandJavaCodeNew;
import weaver.general.Util;
import weaver.hrm.resource.ResourceComInfo;
import weaver.soa.workflow.request.MainTableInfo;
import weaver.soa.workflow.request.Property;
import weaver.soa.workflow.request.RequestInfo;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
*
*
* @author:dxfeng
* @createTime: 2024/05/07
* @version: 1.0
*/
public class AddEvaluationMemberExpand extends AbstractModeExpandJavaCodeNew {
@Override
public Map<String, String> doModeExpand(Map<String, Object> param) {
Map<String, String> result = new HashMap<>(2);
RecordSet rs = new RecordSet();
try {
int billId;
int modeId;
RequestInfo requestInfo = (RequestInfo) param.get("RequestInfo");
if (requestInfo != null) {
billId = Util.getIntValue(requestInfo.getRequestid());
modeId = Util.getIntValue(requestInfo.getWorkflowid());
if (billId > 0 && modeId > 0) {
Map<String, String> mainDataMap = new HashMap<>(3);
MainTableInfo mainTableInfo = requestInfo.getMainTableInfo();
Property[] properties = mainTableInfo.getProperty();
for (Property property : properties) {
mainDataMap.put(property.getName(), property.getValue());
}
String bpr = mainDataMap.get("bpr");
if (StringUtils.isNotBlank(bpr)) {
ResourceComInfo resourceComInfo = new ResourceComInfo();
String[] bprSplit = bpr.split(",");
for (String s : bprSplit) {
String departmentId = resourceComInfo.getDepartmentID(s);
// 查询同部门下的所有评价人
rs.executeQuery("select id from hrmresource where departmentid = ? and id != ?", departmentId, s);
while (rs.next()) {
Map<String, Object> insertMap = new HashMap<>(4);
// 主表ID
insertMap.put("mainid", billId);
// 评价人
insertMap.put("pjr", rs.getString("id"));
// 被评人
insertMap.put("bpr", s);
// 未评价
insertMap.put("sfpjwc", "0");
// 插入数据
insertData(insertMap, "uf_360pjhd_dt2");
}
}
}
}
}
} catch (Exception e) {
rs.writeLog(e);
result.put("errmsg", "添加评价人员拓展异常");
result.put("flag", "false");
}
return result;
}
public static void insertData(Map<String, Object> dataMap, String tableName) {
List<String> fieldList = new ArrayList<>();
List<Object> dataList = new ArrayList<>();
List<String> paramList = new ArrayList<>();
dataMap.forEach((key, value) -> {
if (null != value) {
fieldList.add(key);
dataList.add(value);
paramList.add("?");
}
});
String insertSql = " insert into " + tableName + "(" + StringUtils.join(fieldList, ",") + ") values (" + StringUtils.join(paramList, ",") + ")";
RecordSet rs = new RecordSet();
rs.executeUpdate(insertSql, dataList);
if (StringUtils.isNotBlank(rs.getExceptionMsg())) {
throw new RuntimeException(rs.getExceptionMsg());
}
}
}

@ -1,135 +0,0 @@
package weaver.interfaces.gsjrkg.action;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
import weaver.general.Util;
import weaver.interfaces.workflow.action.Action;
import weaver.soa.workflow.request.MainTableInfo;
import weaver.soa.workflow.request.Property;
import weaver.soa.workflow.request.RequestInfo;
import java.util.*;
/**
* @Description:
* @author:dxfeng
* @createTime: 2023/02/20
* @version: 1.0
*/
public class SyncCertificateAction implements Action {
/**
*
*/
private String modeTableName;
/**
*
*/
private String params;
private String resourceFieldGroup;
@Override
public String execute(RequestInfo requestInfo) {
if (StringUtils.isBlank(params)) {
requestInfo.getRequestManager().setMessagecontent("自定义接口参数值配置错误");
return Action.FAILURE_AND_CONTINUE;
}
if (StringUtils.isBlank(resourceFieldGroup)) {
// -1:基本信息,1:个人信息,3:工作信息
resourceFieldGroup = "1";
}
Map<String, String> fieldMap = new HashMap<>();
String[] fieldsArray = params.split(";");
for (String fields : fieldsArray) {
String[] field = fields.split(":");
if (field.length == 2) {
fieldMap.put(field[0], field[1]);
}
}
if (fieldMap.size() != fieldsArray.length) {
requestInfo.getRequestManager().setMessagecontent("自定义接口参数值格式错误,请检查");
return Action.FAILURE_AND_CONTINUE;
}
Set<String> modeFields = fieldMap.keySet();
Map<String, Set<String>> modeMap = new HashMap<>();
RecordSet rs = new RecordSet();
String resourceId = "";
MainTableInfo mainTableInfo = requestInfo.getMainTableInfo();
Property[] property = mainTableInfo.getProperty();
for (Property item : property) {
String name = item.getName();
String value = Util.null2String(item.getValue());
if (StringUtils.isNotBlank(name) && StringUtils.isNotBlank(value)) {
if ("xm".equals(name)) {
resourceId = value;
}
}
}
// 查询当前人员的所有数据
StringBuilder sqlBuilder = new StringBuilder("select ").append(StringUtils.join(modeFields, ",")).append(" from ").append(modeTableName).append(" where xm = ").append(resourceId).append(" order by id");
rs.executeQuery(sqlBuilder.toString());
while (rs.next()) {
appendIds(modeFields, rs, modeMap);
}
// 判断有无数据,没有的话插入数据
sqlBuilder = new StringBuilder("SELECT id FROM CUS_FIELDDATA where scope ='HrmCustomFieldByInfoType' and scopeid = '").append(resourceFieldGroup).append("' and id =? ");
rs.executeQuery(sqlBuilder.toString(), resourceId);
if (!rs.next()) {
// 插入人员信息数据
rs.executeUpdate("insert into cus_fielddata (scope,scopeid,id) values ('HrmCustomFieldByInfoType','" + resourceFieldGroup + "',?)", resourceId);
}
// 组装更新SQL语句
sqlBuilder = new StringBuilder("update cus_fielddata set ");
for (Map.Entry<String, String> entry : fieldMap.entrySet()) {
Set<String> valueSet = modeMap.get(entry.getKey());
String values = CollectionUtils.isEmpty(valueSet) ? "" : StringUtils.join(valueSet, ",");
sqlBuilder.append(" ").append(entry.getValue()).append(" = '").append(values).append("',");
}
sqlBuilder.deleteCharAt(sqlBuilder.length() - 1);
sqlBuilder.append(" where scope ='HrmCustomFieldByInfoType' and scopeid = ").append(resourceFieldGroup).append(" and id = ").append(resourceId);
rs.executeUpdate(sqlBuilder.toString());
return Action.SUCCESS;
}
private void appendIds(Set<String> modeFields, RecordSet rs, Map<String, Set<String>> modeMap) {
for (String modeField : modeFields) {
String ids = rs.getString(modeField);
if (StringUtils.isBlank(ids)) {
return;
}
if (CollectionUtils.isEmpty(modeMap.get(modeField))) {
modeMap.put(modeField, new HashSet<>());
}
modeMap.get(modeField).addAll(Arrays.asList(ids.split(",")));
}
}
public String getParams() {
return params;
}
public void setParams(String params) {
this.params = params;
}
public String getModeTableName() {
return modeTableName;
}
public void setModeTableName(String modeTableName) {
this.modeTableName = modeTableName;
}
public String getResourceFieldGroup() {
return resourceFieldGroup;
}
public void setResourceFieldGroup(String resourceFieldGroup) {
this.resourceFieldGroup = resourceFieldGroup;
}
}

@ -0,0 +1,233 @@
package weaver.interfaces.poc.action;
import com.alibaba.fastjson.JSON;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
import weaver.general.BaseBean;
import weaver.interfaces.workflow.action.Action;
import weaver.soa.workflow.request.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedHashSet;
import java.util.List;
/**
* @author:dxfeng
* @createTime: 2024/05/08
* @version: 1.0
*/
public class PerformanceDistributionAction implements Action {
@Override
public String execute(RequestInfo requestInfo) {
BaseBean baseBean = new BaseBean();
try {
MainTableInfo mainTableInfo = requestInfo.getMainTableInfo();
DetailTableInfo detailTableInfo = requestInfo.getDetailTableInfo();
DetailTable detailTable0 = detailTableInfo.getDetailTable(0);
List<Rule> ruleList = new ArrayList<>();
Row[] rows0 = detailTable0.getRow();
for (Row row : rows0) {
Rule rule = new Rule();
Cell[] cells = row.getCell();
for (Cell cell : cells) {
String name = cell.getName();
String value = cell.getValue();
if ("jxdj".equals(name)) {
rule.setRuleName(value);
} else if ("fbbl".equals(name)) {
rule.setRuleRange(Double.parseDouble(value));
}
}
ruleList.add(rule);
}
ruleList.forEach(item -> baseBean.writeLog(JSON.toJSONString(item)));
DetailTable detailTable1 = detailTableInfo.getDetailTable(1);
String tableDBName = detailTable1.getTableDBName();
Row[] rows1 = detailTable1.getRow();
List<Result> resultList = new ArrayList<>();
for (Row row : rows1) {
Cell[] cells = row.getCell();
Result result = new Result();
result.setId(row.getId());
for (Cell cell : cells) {
String name = cell.getName();
String value = cell.getValue();
if ("khzzdf".equals(name)) {
result.setScore(StringUtils.isBlank(value) ? "0" : value);
}
}
resultList.add(result);
}
// 所有人员排名
LinkedHashSet<Integer> rankSet = calculateRankings(resultList);
baseBean.writeLog("排名");
resultList.forEach(item -> baseBean.writeLog(JSON.toJSONString(item)));
ArrayList<Integer> rankList = new ArrayList<>(rankSet);
// 根据排名,按照分部比例划分
int subStart = 0;
for (int i = 0; i < ruleList.size(); i++) {
Rule rule = ruleList.get(i);
double ruleRange = rule.getRuleRange();
//int subEnd = subStart!=0?(int) Math.floor(rankList.size() * ruleRange):(int) Math.ceil(rankList.size() * ruleRange);
// 向下取
int subEnd = (int) Math.floor(rankList.size() * ruleRange);
if (i == 0 && subEnd < 1) {
subEnd = 1;
}
if (i == ruleList.size() && subEnd < ruleList.size()) {
subEnd = rankList.size();
}
List<Integer> rangeList = rankList.subList(subStart, subEnd);
for (Integer integer : rangeList) {
for (Result result : resultList) {
if (result.getRank().equals(integer)) {
result.setLevel(rule.getRuleName());
}
}
}
subStart = subEnd;
}
baseBean.writeLog("划分等级");
// 更新明细表
RecordSet rs = new RecordSet();
String updateSql = "update " + tableDBName + " set khdj = ? where id = ?";
for (Result result : resultList) {
baseBean.writeLog(JSON.toJSONString(result));
rs.executeUpdate(updateSql, result.getLevel(), result.getId());
}
return SUCCESS;
} catch (Exception e) {
baseBean.writeLog(e);
return FAILURE_AND_CONTINUE;
}
}
public static LinkedHashSet<Integer> calculateRankings(List<Result> resultList) {
LinkedHashSet<Integer> rankSet = new LinkedHashSet<>();
Collections.sort(resultList, (o1, o2) -> {
return o2.getScore().compareTo(o1.getScore()); // 按值(分数)降序排序
});
// 计算排名并输出
int rank = 1;
double prevScore = -1;
for (Result result : resultList) {
double score = Double.parseDouble(result.getScore());
if (score < prevScore) {
rank++;
}
prevScore = score;
result.setRank(rank);
rankSet.add(rank);
}
return rankSet;
}
//public static LinkedHashSet<Integer> calculateRankings(List<Result> resultList) {
// LinkedHashSet<Integer> rankSet = new LinkedHashSet<>();
// int rank = 1;
// double prevScore = Integer.MAX_VALUE;
// double sameScoreCount = 0;
//
// for (Result result : resultList) {
// double score = Double.parseDouble(result.getScore());
// if (score < prevScore) {
// rank += sameScoreCount;
// sameScoreCount = 1;
// } else {
// sameScoreCount++;
// }
// result.setRank(rank);
// rankSet.add(rank);
// prevScore = score;
// }
//
// return rankSet;
//}
static class Rule {
String ruleName;
double ruleRange;
public Rule() {
}
public Rule(String ruleName, double ruleRange) {
this.ruleName = ruleName;
this.ruleRange = ruleRange;
}
public String getRuleName() {
return ruleName;
}
public void setRuleName(String ruleName) {
this.ruleName = ruleName;
}
public double getRuleRange() {
return ruleRange;
}
public void setRuleRange(double ruleRange) {
this.ruleRange = ruleRange;
}
}
static class Result {
String id;
String score;
String level;
Integer rank;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getScore() {
return score;
}
public void setScore(String score) {
this.score = score;
}
public String getLevel() {
return level;
}
public void setLevel(String level) {
this.level = level;
}
public Integer getRank() {
return rank;
}
public void setRank(Integer rank) {
this.rank = rank;
}
}
}

@ -0,0 +1,60 @@
package weaver.interfaces.poc.action;
import weaver.conn.RecordSet;
import weaver.general.BaseBean;
import weaver.interfaces.workflow.action.Action;
import weaver.soa.workflow.request.*;
import java.util.HashMap;
import java.util.Map;
/**
* @author:dxfeng
* @createTime: 2024/05/10
* @version: 1.0
*/
public class UpdatePerformanceLevelsAction implements Action {
@Override
public String execute(RequestInfo requestInfo) {
BaseBean baseBean = new BaseBean();
try {
Map<String, String> mainDataMap = new HashMap<>();
MainTableInfo mainTableInfo = requestInfo.getMainTableInfo();
Property[] properties = mainTableInfo.getProperty();
for (Property property : properties) {
mainDataMap.put(property.getName(), property.getValue());
}
// 绩效活动
String jxhd = mainDataMap.get("jxhd");
DetailTableInfo detailTableInfo = requestInfo.getDetailTableInfo();
// 明细表二
DetailTable detailTable1 = detailTableInfo.getDetailTable(1);
String updateSql = "update uf_khfa set khdj = ? where requestId is null and jxhd = ? and khzzdf = ? and xm = ?";
RecordSet rs = new RecordSet();
Row[] rows = detailTable1.getRow();
for (Row row : rows) {
Map<String, String> detailMap = new HashMap<>();
Cell[] cells = row.getCell();
for (Cell cell : cells) {
detailMap.put(cell.getName(), cell.getValue());
}
String khzzdf = detailMap.get("khzzdf");
String xm = detailMap.get("ryxm");
String khdj = detailMap.get("khdj");
baseBean.writeLog("khdj==" + khdj);
baseBean.writeLog("jxhd==" + jxhd);
baseBean.writeLog("khzzdf==" + khzzdf);
baseBean.writeLog("xm==" + xm);
// 更新考核方案表登记
rs.executeUpdate(updateSql, khdj, jxhd, khzzdf, xm);
}
return SUCCESS;
} catch (Exception e) {
baseBean.writeLog(e);
return FAILURE_AND_CONTINUE;
}
}
}
Loading…
Cancel
Save