lc/lc123/cloud/app/api/plugin/FWOtheroutApplySavePlugin.java

99 lines
4.3 KiB
Java

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<Map<String, Object>> preHandleRequestData(List<Map<String, Object>> reqData) {
for (Map<String, Object> reqDatum : reqData) {
//组织
Map<String, Object> org = (Map<String, Object>) 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<String, Object> map = new HashMap<>();
map.put("number", "tqq9_otheroutapply_BT");
reqDatum.put("tqq9_billtype", map);
//业务类型
Map<String, Object> map1 = new HashMap<>();//库存事务
Map<String, Object> tqq9_biztype = (Map<String, Object>) 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<String, Object> tqq9_user = (Map<String, Object>) 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<String, Object> tqq9_dept = (Map<String, Object>) 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);
}
//明细
List<Map<String, Object>> entries = (List<Map<String, Object>>) reqDatum.get("entryentity");
for (Map<String, Object> entry : entries) {
entry.put("tqq9_outownertype", "bos_org");//出库货主类型
Map<String, Object> tqq9_outinvtype = new HashMap<>();
tqq9_outinvtype.put("number", "110");
entry.put("tqq9_outinvtype", tqq9_outinvtype);//出库库存类型
Map<String, Object> 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);//出库保管者
}
}
return reqData;
}
}