package tqq9.lc123.cloud.app.api.plugin; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.openapi.api.plugin.ApiSavePlugin; import tqq9.lc123.cloud.app.plugin.utils.FWUtils; import java.util.HashMap; import java.util.List; import java.util.Map; /** * 泛微其他入申请导入接口插件 */ public class FWOtheroutApplySavePlugin implements ApiSavePlugin { @Override public List> preHandleRequestData(List> reqData) { for (Map reqDatum : reqData) { //组织 Map org = (Map) reqDatum.get("org"); String orgnumber = (String) org.get("number"); DynamicObject kdOrg = FWUtils.getKdOrgByFsOrgNumber(orgnumber); org.put("number", kdOrg.getString("number")); reqDatum.put("org", org); //单据类型 Map map = new HashMap<>(); map.put("number", "tqq9_otheroutapply_BT"); reqDatum.put("tqq9_billtype", map); //业务类型 Map map1 = new HashMap<>();//库存事务 Map tqq9_biztype = (Map) reqDatum.get("tqq9_biztype"); Object biztypenumber = tqq9_biztype.get("number"); if("0".equals(biztypenumber)){ tqq9_biztype.put("number", "351"); map1.put("number", "351.1"); }else if("1".equals(biztypenumber)){ tqq9_biztype.put("number", "355"); map1.put("number", "355.1"); }else if("2".equals(biztypenumber)){ tqq9_biztype.put("number", "612"); map1.put("number", "612.1"); }else if("3".equals(biztypenumber)){ tqq9_biztype.put("number", "613"); map1.put("number", "613.1"); }else if("4".equals(biztypenumber)){ tqq9_biztype.put("number", "614"); map1.put("number", "614.1"); }else if("5".equals(biztypenumber)){ tqq9_biztype.put("number", "615"); map1.put("number", "615.1"); }else if("6".equals(biztypenumber)){ tqq9_biztype.put("number", "616"); map1.put("number", "616.1"); }else if("7".equals(biztypenumber)){ tqq9_biztype.put("number", "617"); map1.put("number", "617.1"); } //库存事务赋值 reqDatum.put("tqq9_kcsw", map1); //接收人 Map tqq9_user = (Map) reqDatum.get("tqq9_user"); String tqq9_user_number = (String) tqq9_user.get("number"); DynamicObject kdUser = FWUtils.getKdUserByFwUserID(tqq9_user_number); if(kdUser != null){ tqq9_user.put("number", kdUser.getString("number")); reqDatum.put("tqq9_user", tqq9_user); } //申请部门 Map tqq9_dept = (Map) reqDatum.get("tqq9_dept"); String tqq9_dept_number = (String) tqq9_dept.get("number"); DynamicObject kdDept = FWUtils.getKdOrgByFsOrgNumber(tqq9_dept_number); if(kdDept != null){ tqq9_dept.put("number", kdDept.getString("number")); reqDatum.put("tqq9_dept", tqq9_dept); } //库管员 tqq9_operator_operatorid_number Map tqq9_operator = (Map) reqDatum.get("tqq9_operator"); if(tqq9_operator != null && tqq9_operator.size() > 0){ Map operatorid = (Map) tqq9_operator.get("operatorid"); if(operatorid != null && operatorid.size() > 0){ String operatorNumber = (String) operatorid.get("number"); DynamicObject kdOperator = FWUtils.getKdUserByFwUserID(operatorNumber); if (kdOperator != null){ operatorid.put("number", kdOperator.getString("number")); tqq9_operator.put("operatorid", operatorid); reqDatum.put("tqq9_operator", tqq9_operator); } } } String ckNumber = null; //明细 List> entries = (List>) reqDatum.get("entryentity"); for (Map entry : entries) { entry.put("tqq9_outownertype", "bos_org");//出库货主类型 Map tqq9_outinvtype = new HashMap<>(); tqq9_outinvtype.put("number", "110"); entry.put("tqq9_outinvtype", tqq9_outinvtype);//出库库存类型 Map tqq9_outinvstatus = new HashMap<>(); tqq9_outinvstatus.put("number", "110"); entry.put("tqq9_outinvstatus", tqq9_outinvstatus);//出库库存状态 entry.put("tqq9_outowner", org);//出库货主 entry.put("tqq9_outkeepertype", "bos_org");//出库保管者类型 entry.put("tqq9_outkeeper", org);//出库保管者 Map tqq9_dcck = (Map) entry.get("tqq9_dcck"); ckNumber = (String) tqq9_dcck.get("number"); } Map tqq9_ckck_number = new HashMap<>(); tqq9_ckck_number.put("number", ckNumber); reqDatum.put("tqq9_ckck", tqq9_ckck_number); } return reqData; } }