123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- package com.kingdee.eas.custom.shuiyou.six.osf;
- import cn.hutool.core.util.StrUtil;
- import cn.hutool.json.JSONArray;
- import cn.hutool.json.JSONObject;
- import cn.hutool.json.JSONUtil;
- import com.google.common.collect.Maps;
- import com.kingdee.bos.BOSException;
- import com.kingdee.bos.Context;
- import com.kingdee.bos.bsf.service.app.IHRMsfService;
- import com.kingdee.bos.dao.ormapping.ObjectUuidPK;
- import com.kingdee.bos.metadata.entity.EntityViewInfo;
- import com.kingdee.bos.metadata.entity.SelectorItemCollection;
- import com.kingdee.bos.metadata.entity.SelectorItemInfo;
- import com.kingdee.bos.rabbitmq.guava.Lists;
- import com.kingdee.eas.common.EASBizException;
- import com.kingdee.eas.custom.shuiyou.task.ITask;
- import com.kingdee.eas.custom.shuiyou.task.TaskCollection;
- import com.kingdee.eas.custom.shuiyou.task.TaskFactory;
- import com.kingdee.eas.custom.shuiyou.task.TaskInfo;
- import com.kingdee.eas.util.app.DbUtil;
- import com.kingdee.jdbc.rowset.IRowSet;
- import java.util.List;
- import java.util.Map;
- /**
- * description: GetQuerySpecialAmountFeedback <br>
- * date: 2024/9/9 16:03 <br>
- * author: lhbj <br>
- * version: 1.0 <br>
- */
- public class GetQuerySpecialAmountFeedback implements IHRMsfService {
- @Override
- public Object process(Context context, Map map) throws EASBizException, BOSException {
- //获取请求结果
- String result = (String) map.get("result");
- //获取请求参数
- String paramData = (String) map.get("paramData");
- JSONObject paramMap = JSONUtil.parseObj(paramData);
- //获取传入任务id
- String preTaskId = paramMap.getStr("preTaskId");
- String skssq = paramMap.getStr("skssq");
- SelectorItemCollection sc = new SelectorItemCollection();
- sc.add(new SelectorItemInfo("id"));
- sc.add(new SelectorItemInfo("url"));
- sc.add(new SelectorItemInfo("requestId"));
- sc.add(new SelectorItemInfo("requestType"));
- sc.add(new SelectorItemInfo("requestParam.id"));
- sc.add(new SelectorItemInfo("requestParam.paramContent"));
- ITask iTask = TaskFactory.getLocalInstance(context);
- TaskInfo taskInfo = iTask.getTaskInfo(new ObjectUuidPK(preTaskId),sc);
- JSONObject paramContent = JSONUtil.parseObj(taskInfo.getRequestParam().getParamContent());
- String taxPersonRecordEntryIDS = paramContent.getStr("taxPersonRecordEntryIDS");
- JSONObject resultMap = JSONUtil.parseObj(result);
- JSONObject head = resultMap.getJSONObject("head");
- JSONObject body = resultMap.getJSONObject("body");
- String code = head.getStr("code");
- if("00000000".equals(code)){
- Map<String,List<String>> sql_param = Maps.newHashMap();
- JSONArray ryxxlb = body.getJSONArray("ryxxlb");
- for(int i=0;i<ryxxlb.size();i++){
- JSONObject ryxx = ryxxlb.getJSONObject(i);
- StringBuilder sql = new StringBuilder();
- sql.append("update T_HR_STAXCALINITDETAIL set ");
- List<String> paramList = Lists.newArrayList();
- for(Map.Entry<String,Object> entry : ryxx.entrySet()){
- String key =entry.getKey();
- Object value =entry.getValue();
- String field = this.getFieldByNumber(context,key);
- if(StrUtil.isNotBlank(field)) {
- paramList.add(StrUtil.toString(value));
- sql.append(field+"=?,");
- }
- }
- String zzhm = ryxx.getStr("zzhm");
- sql=sql.delete(sql.length()-1,sql.length());
- //select * from T_BD_Person where FIDCARDNO=''
- sql.append(" where ");
- sql_param.put(sql.toString(),paramList);
- }
- }
- return null;
- }
- protected String getFieldByNumber(Context context,String number){
- String sql = "select ('T'||FIELDSN) fieldName,fname_L2 from T_HR_STaxItem where FSIMPLENAME=?";
- try {
- IRowSet rs = DbUtil.executeQuery(context, sql, new String[]{number});
- if (rs.next()) {
- return rs.getString("fieldName");
- }
- }catch (Exception e){
- e.printStackTrace();
- }
- return null;
- }
- }
|