产值确认隔离优化,OA供应商同步数据优化

This commit is contained in:
weiyunlong 2024-11-12 12:09:33 +08:00
parent 0b8d92068b
commit 1b06952d17
6 changed files with 224 additions and 78 deletions

View File

@ -193,7 +193,7 @@ public class ContractFormPlugin extends AbstractFormPlugin implements UploadLis
//删除单据体数据 //删除单据体数据
qeug_invoiceentryinfos.clear(); qeug_invoiceentryinfos.clear();
SaveServiceHelper.save(new DynamicObject[]{this.getModel().getDataEntity()}); SaveServiceHelper.save(new DynamicObject[]{this.getModel().getDataEntity(true)});
// 删除完成之后刷新界面 // 删除完成之后刷新界面
this.getView().invokeOperation("refresh"); this.getView().invokeOperation("refresh");
return result; return result;
@ -547,8 +547,9 @@ public class ContractFormPlugin extends AbstractFormPlugin implements UploadLis
QFilter q1 = new QFilter("qeug_sheetname", QCP.equals, qeug_summarycontent); QFilter q1 = new QFilter("qeug_sheetname", QCP.equals, qeug_summarycontent);
QFilter q2 = new QFilter("qeug_contractid",QCP.equals, String.valueOf(pkValue)); QFilter q2 = new QFilter("qeug_contractid",QCP.equals, String.valueOf(pkValue));
QFilter q3 = new QFilter("qeug_workloadcfmid",QCP.equals, "");
List<QFilter> listQF = Lists.newArrayList(); List<QFilter> listQF = Lists.newArrayList();
listQF.add(q1.and(q2)); listQF.add(q1.and(q2).and(q3));
parameter.setListFilterParameter(new ListFilterParameter(listQF, null)); parameter.setListFilterParameter(new ListFilterParameter(listQF, null));
this.getView().showForm(parameter); this.getView().showForm(parameter);
} }

View File

@ -20,11 +20,13 @@ import kd.bos.orm.query.QCP;
import kd.bos.orm.query.QFilter; import kd.bos.orm.query.QFilter;
import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.BusinessDataServiceHelper;
import kd.bos.servicehelper.operation.SaveServiceHelper; import kd.bos.servicehelper.operation.SaveServiceHelper;
import kd.bos.util.StringUtils;
import kd.scm.pds.common.util.OpenFormUtils; import kd.scm.pds.common.util.OpenFormUtils;
import org.apache.cxf.Bus; import org.apache.cxf.Bus;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.EventObject; import java.util.EventObject;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -88,6 +90,7 @@ public class WorkloadcfmbillFormPlugin extends AbstractFormPlugin implements Tab
// //
QFilter q1 = new QFilter("qeug_sheetname", QCP.equals, qeug_summarycontent); QFilter q1 = new QFilter("qeug_sheetname", QCP.equals, qeug_summarycontent);
QFilter q2 = new QFilter("qeug_contractid",QCP.equals, contentId); QFilter q2 = new QFilter("qeug_contractid",QCP.equals, contentId);
QFilter q3 = new QFilter("qeug_workloadcfmid",QCP.equals,String.valueOf(this.getModel().getDataEntity().getPkValue()));
// List<QFilter> listQF = Lists.newArrayList(); // List<QFilter> listQF = Lists.newArrayList();
// listQF.add(q1.and(q2)); // listQF.add(q1.and(q2));
// parameter.setListFilterParameter(new ListFilterParameter(listQF, null)); // parameter.setListFilterParameter(new ListFilterParameter(listQF, null));
@ -96,7 +99,9 @@ public class WorkloadcfmbillFormPlugin extends AbstractFormPlugin implements Tab
// parameter.setStatus(OperationStatus.ADDNEW); // parameter.setStatus(OperationStatus.ADDNEW);
// this.getView().showForm(parameter); // this.getView().showForm(parameter);
// OpenFormUtils.openListPage(); // OpenFormUtils.openListPage();
OpenFormUtils.openListPage(this.getView(), "qeug_contractsummarylist", ShowType.MainNewTabPage, (Map) null, q1.and(q2), (CloseCallBack) null); Map<String, Object> map = new HashMap<String, Object>();
map.put("Workloadcfmbill_id", this.getModel().getDataEntity().getPkValue());
OpenFormUtils.openListPage(this.getView(), "qeug_contractsummarylist", ShowType.MainNewTabPage,map, q1.and(q2).and(q3), (CloseCallBack) null);
} }
@ -147,6 +152,45 @@ public class WorkloadcfmbillFormPlugin extends AbstractFormPlugin implements Tab
this.getView().updateView("qeug_invoiceentryinfo"); this.getView().updateView("qeug_invoiceentryinfo");
this.getView().updateView("qeug_engmanager"); this.getView().updateView("qeug_engmanager");
SaveServiceHelper.save(new DynamicObject[]{this.getModel().getDataEntity(true)}); SaveServiceHelper.save(new DynamicObject[]{this.getModel().getDataEntity(true)});
//todo 根据汇总的条件查出明细,复制一个明细单据将产值确认id存放
// 汇总查看明细时,条件再加一个产值确认id
// 合同/补充/暂转固查看清单时,新增过滤条件,产值确认id=null
// 产值确认删除时,删除对应的清单明细
for (DynamicObject invoiceentryinfo : invoiceentryinfos) {
QFilter q3 = new QFilter("qeug_sheetname", QCP.equals, invoiceentryinfo.getString("qeug_summarycontent"));
QFilter q4 = new QFilter("qeug_contractid",QCP.equals, String.valueOf(id));
QFilter q5 = new QFilter("qeug_workloadcfmid",QCP.equals, "");//防止第二次产值确认时,id覆盖确认过的清单产值确认
DynamicObject[] recon_contractbills = BusinessDataServiceHelper.load("qeug_contractsummarylist",
"id,qeug_seq,qeug_projectnumber,qeug_projectname,qeug_featuredescript,qeug_engincontent," +
"qeug_unit,qeug_decimalqty,qeug_unitprice,qeug_amounttotal,qeug_artificial,qeug_provisional," +
"qeug_remarks,qeug_contractid,qeug_sheetname", new QFilter[]{q3,q4,q5});
if (recon_contractbills.length > 0) {
for (int i = 0; i < recon_contractbills.length; i++) {
DynamicObject contractsummarylist = recon_contractbills[i];
DynamicObject add = BusinessDataServiceHelper.newDynamicObject("qeug_contractsummarylist");
add.set("qeug_seq", contractsummarylist.getString("qeug_seq"));
add.set("qeug_projectnumber", contractsummarylist.getString("qeug_projectnumber"));
add.set("qeug_projectname", contractsummarylist.getString("qeug_projectname"));
add.set("qeug_featuredescript", contractsummarylist.getString("qeug_featuredescript"));
add.set("qeug_engincontent", contractsummarylist.getString("qeug_engincontent"));
add.set("qeug_unit", contractsummarylist.getString("qeug_unit"));
add.set("qeug_decimalqty", contractsummarylist.getBigDecimal("qeug_decimalqty"));
add.set("qeug_unitprice", contractsummarylist.getBigDecimal("qeug_unitprice"));
add.set("qeug_amounttotal", contractsummarylist.getBigDecimal("qeug_amounttotal"));
add.set("qeug_artificial", contractsummarylist.getBigDecimal("qeug_artificial"));
add.set("qeug_provisional", contractsummarylist.getBigDecimal("qeug_provisional"));
add.set("qeug_remarks", contractsummarylist.getString("qeug_remarks"));
add.set("qeug_contractid", contractsummarylist.getString("qeug_contractid"));
add.set("qeug_sheetname", contractsummarylist.getString("qeug_sheetname"));
add.set("qeug_workloadcfmid",String.valueOf(this.getModel().getDataEntity().getPkValue()));
add.set("enable","1");//使用状态
add.set("status","A");//数据状态
SaveServiceHelper.save(new DynamicObject[]{add});
}
}
}
break; break;
default: default:
break; break;
@ -195,20 +239,24 @@ public class WorkloadcfmbillFormPlugin extends AbstractFormPlugin implements Tab
String tabKey = tabSelectEvent.getTabKey(); String tabKey = tabSelectEvent.getTabKey();
if ("tabbillinfo".equals(tabKey)) { if ("tabbillinfo".equals(tabKey)) {
//获取产值确认当前合同对应的所有清单明细 //获取产值确认当前合同对应的所有清单明细
String billstatus = (String)this.getModel().getValue("billstatus");
if ("A".equals(billstatus)) {
DynamicObject cqcontract = (DynamicObject) this.getModel().getValue("contractbill"); DynamicObject cqcontract = (DynamicObject) this.getModel().getValue("contractbill");
long id = 0; long id = 0;
if (null != cqcontract) { if (null != cqcontract) {
id = cqcontract.getLong("id"); id = cqcontract.getLong("id");
} }
Object pkValue = this.getModel().getDataEntity().getPkValue();
String qeug_workloadcfmid = String.valueOf(pkValue);
if (StringUtils.isNotEmpty(qeug_workloadcfmid)) {
QFilter q1 = new QFilter("qeug_contractid",QCP.equals, String.valueOf(id)); QFilter q1 = new QFilter("qeug_contractid",QCP.equals, String.valueOf(id));
QFilter q2 = new QFilter("qeug_workloadcfmid",QCP.equals, String.valueOf(this.getModel().getDataEntity().getPkValue()));
DynamicObject[] recon_contractbills = BusinessDataServiceHelper.load("qeug_contractsummarylist", DynamicObject[] recon_contractbills = BusinessDataServiceHelper.load("qeug_contractsummarylist",
"id,qeug_bcdecimalqty,qeug_unitprice", new QFilter[]{q1}); "id,qeug_bcdecimalqty,qeug_unitprice,qeug_bcdecimalqtys", new QFilter[]{q1,q2});
if (recon_contractbills.length > 0) { if (recon_contractbills.length > 0) {
BigDecimal bigDecimal = BigDecimal.ZERO; BigDecimal bigDecimal = BigDecimal.ZERO;
for (DynamicObject recon_contractbill : recon_contractbills) { for (DynamicObject recon_contractbill : recon_contractbills) {
BigDecimal qeugBcdecimalqty = recon_contractbill.getBigDecimal("qeug_bcdecimalqty");//本次完工量 BigDecimal qeugBcdecimalqty = recon_contractbill.getBigDecimal("qeug_bcdecimalqtys");//本次完工量
BigDecimal qeugUnitprice = recon_contractbill.getBigDecimal("qeug_unitprice");//综合单价 BigDecimal qeugUnitprice = recon_contractbill.getBigDecimal("qeug_unitprice");//综合单价
BigDecimal qeugAmount = qeugBcdecimalqty.multiply(qeugUnitprice).setScale(2, BigDecimal.ROUND_HALF_UP);//四舍五入金额 BigDecimal qeugAmount = qeugBcdecimalqty.multiply(qeugUnitprice).setScale(2, BigDecimal.ROUND_HALF_UP);//四舍五入金额
bigDecimal = bigDecimal.add(qeugAmount); bigDecimal = bigDecimal.add(qeugAmount);
@ -220,4 +268,8 @@ public class WorkloadcfmbillFormPlugin extends AbstractFormPlugin implements Tab
} }
} }
} }
}
}
} }

View File

@ -6,10 +6,8 @@ import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.entity.datamodel.ListSelectedRow; import kd.bos.entity.datamodel.ListSelectedRow;
import kd.bos.entity.datamodel.ListSelectedRowCollection; import kd.bos.entity.datamodel.ListSelectedRowCollection;
import kd.bos.entity.filter.FilterParameter; import kd.bos.entity.filter.FilterParameter;
import kd.bos.form.events.AfterDoOperationEventArgs; import kd.bos.form.events.*;
import kd.bos.form.events.ExportFileEvent; import kd.bos.form.operate.FormOperate;
import kd.bos.form.events.FlexBeforeClosedEvent;
import kd.bos.form.events.SetFilterEvent;
import kd.bos.list.BillList; import kd.bos.list.BillList;
import kd.bos.list.events.BillClosedCallBackEvent; import kd.bos.list.events.BillClosedCallBackEvent;
import kd.bos.list.plugin.AbstractListPlugin; import kd.bos.list.plugin.AbstractListPlugin;
@ -19,8 +17,12 @@ import kd.bos.orm.query.QFilter;
import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.BusinessDataServiceHelper;
import kd.bos.servicehelper.operation.SaveServiceHelper; import kd.bos.servicehelper.operation.SaveServiceHelper;
import kd.bos.servicehelper.user.UserServiceHelper; import kd.bos.servicehelper.user.UserServiceHelper;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.File; import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -33,10 +35,45 @@ import java.util.stream.Collectors;
*/ */
public class ContractSummaryListPlugin extends AbstractListPlugin implements IListPlugin { public class ContractSummaryListPlugin extends AbstractListPlugin implements IListPlugin {
@Override
public void beforeDoOperation(BeforeDoOperationEventArgs args) {
super.beforeDoOperation(args);
Map<String, Object> customParams = this.getView().getFormShowParameter().getCustomParams();
Object Workloadcfmbill_id = customParams.get("Workloadcfmbill_id");
FormOperate source = (FormOperate) args.getSource();
String operateKey = source.getOperateKey();
if ("exportlist".equals(operateKey)) {
// ListSelectedRowCollection rows = this.getSelectedRows();
// for (ListSelectedRow row : rows) {
// Long pk = (Long) row.getPrimaryKeyValue();
// DynamicObject dataEntity = BusinessDataServiceHelper.loadSingle(pk, "qeug_contractsummarylist");
// dataEntity.set("qeug_workloadcfmid",Workloadcfmbill_id);
// SaveServiceHelper.save(new DynamicObject[]{dataEntity});
// }
// // 获取单据列表
// BillList billList = this.getControl(AbstractListPlugin.BILLLISTID);
// //获取过滤参数
// FilterParameter generalFilterParameter = billList.generalFilterParameter();
// //获取过滤条件
// List<QFilter> qFilters = generalFilterParameter.getQFilters();
// QFilter[] array = qFilters.toArray(new QFilter[0]);
// DynamicObject[] loads = BusinessDataServiceHelper.load("qeug_contractsummarylist",
// "id,qeug_workloadcfmid", array);
// for (DynamicObject load : loads) {
// load.set("qeug_workloadcfmid",Workloadcfmbill_id);
// }
// SaveServiceHelper.save(loads);
}
}
@Override @Override
public void afterDoOperation(AfterDoOperationEventArgs afterDoOperationEventArgs) { public void afterDoOperation(AfterDoOperationEventArgs afterDoOperationEventArgs) {
super.afterDoOperation(afterDoOperationEventArgs); super.afterDoOperation(afterDoOperationEventArgs);
//
// String operateKey = afterDoOperationEventArgs.getOperateKey(); // String operateKey = afterDoOperationEventArgs.getOperateKey();
// if ("importdata".equals(operateKey)) { // if ("importdata".equals(operateKey)) {
// //
@ -90,9 +127,51 @@ public class ContractSummaryListPlugin extends AbstractListPlugin implements ILi
// qFilters.addAll(listQF); // qFilters.addAll(listQF);
} }
/** 导出文件后事件可以用来修改导出的文件内容比如修改excel数据、格式、加密等 */ @Override
public void afterQueryOfExport(AfterQueryOfExportEvent e) {
super.afterQueryOfExport(e);
// DynamicObject[] datas = e.getQueryValues();
// for (DynamicObject data : datas) {
// String billno = (String) data.get("billno");
// if (billno != null) {
// billno = "****" + billno.substring(4);
// } else {
// billno = "******";
// }
// data.set("billno", billno);
// }
}
/**
* 导出文件后事件可以用来修改导出的文件内容比如修改excel数据格式加密等
*/
public void afterExportFile(ExportFileEvent e) { public void afterExportFile(ExportFileEvent e) {
File file = e.getFile(); // Map<String, Object> customParams = this.getView().getFormShowParameter().getCustomParams();
// Object Workloadcfmbill_id = customParams.get("Workloadcfmbill_id");
// File file = e.getFile();
// if (file != null) {
// try (FileInputStream fis = new FileInputStream(file)) {
// Workbook wb = new XSSFWorkbook(fis);
// Sheet sheet = wb.getSheetAt(0);
// // 写入产值确认id
// int rowCountsheet = sheet.getPhysicalNumberOfRows();//总行数
// for (int i = 4; i < rowCountsheet; i++) {
// Row row = sheet.getRow(i);
// Cell cell = row.getCell(16);
// cell.setCellValue(String.valueOf(Workloadcfmbill_id));
// }
// // 保存
// FileOutputStream out = new FileOutputStream(file);
// wb.write(out);
// wb.close();
// out.close();
// } catch
// (Throwable ex) {
// ex.printStackTrace();
// }
// }
} }

View File

@ -21,17 +21,18 @@ public class IntroduceContractPlugin extends BatchImportPlugin {
while (iterator.hasNext()){ while (iterator.hasNext()){
ImportBillData importBillData = iterator.next(); ImportBillData importBillData = iterator.next();
JSONObject data = importBillData.getData(); JSONObject data = importBillData.getData();
String qeug_bcdecimalqty = (String) data.get("qeug_bcdecimalqty");//本次完工量 String qeug_bcdecimalqtys = (String) data.get("qeug_bcdecimalqtys");//本次完工量
String qeug_decimalqty = (String) data.get("qeug_decimalqty");//工程量 String qeug_decimalqty = (String) data.get("qeug_decimalqty");//工程量
String qeug_preofpro = (String) data.get("qeug_preofpro");//进度百分比 String qeug_preofpro = (String) data.get("qeug_preofpro");//进度百分比
double bcdecimalqty = 0; String qeug_workloadcfmid = (String) data.get("qeug_workloadcfmid");//产值确认id
double decimalqty =0; BigDecimal bcdecimalqty = null;
double preofpro =0; BigDecimal decimalqty =null;
BigDecimal preofpro =null;
if (qeug_decimalqty != null && qeug_preofpro!= null) { if (qeug_decimalqty != null && qeug_preofpro!= null) {
//校验 工程量&进度百分比 数据格式是否正确 //校验 工程量&进度百分比 数据格式是否正确
try { try {
decimalqty = Double.parseDouble(qeug_decimalqty); decimalqty = new BigDecimal(qeug_decimalqty);
preofpro = Double.parseDouble(qeug_preofpro); preofpro = new BigDecimal(qeug_preofpro);
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
logger.log(importBillData.getStartIndex(),"工程量数据格式有误").fail(); logger.log(importBillData.getStartIndex(),"工程量数据格式有误").fail();
iterator.remove(); iterator.remove();
@ -39,14 +40,15 @@ public class IntroduceContractPlugin extends BatchImportPlugin {
// 本次完工量 = 工程量 * 进度百分比 // 本次完工量 = 工程量 * 进度百分比
BigDecimal bd1 = new BigDecimal(qeug_decimalqty); BigDecimal bd1 = new BigDecimal(qeug_decimalqty);
BigDecimal bd2 = new BigDecimal(qeug_preofpro); BigDecimal bd2 = new BigDecimal(qeug_preofpro);
BigDecimal result = bd1.multiply(bd2); BigDecimal result = bd1.multiply(bd2).multiply(BigDecimal.valueOf(0.01));
result = result.setScale(2, BigDecimal.ROUND_HALF_UP); // result = result.setScale(2, BigDecimal.ROUND_HALF_UP);
data.put("qeug_bcdecimalqty",result); data.put("qeug_bcdecimalqtys",result);
if (StringUtils.isNotEmpty(qeug_preofpro)) { if (StringUtils.isNotEmpty(qeug_preofpro)) {
preofpro = Double.parseDouble(qeug_preofpro); preofpro = new BigDecimal(qeug_preofpro);
} }
if (preofpro>1){ if (preofpro != null && preofpro.compareTo(BigDecimal.valueOf(100)) > 0) {
logger.log(importBillData.getStartIndex(),"进度百分比不能大于1").fail();
logger.log(importBillData.getStartIndex(), "进度百分比不能大于100").fail();
iterator.remove(); iterator.remove();
} }
} }

View File

@ -23,6 +23,8 @@ import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import static shkd.utils.OAUtils.pushOASupplier;
/** /**
* 推送OA供应商 * 推送OA供应商
*/ */
@ -42,43 +44,11 @@ public class PushOASupplierOPPlugin extends AbstractOperationServicePlugIn {
if ("audit".equals(operationKey)) { if ("audit".equals(operationKey)) {
for (DynamicObject dataEntity : e.getDataEntities()) { for (DynamicObject dataEntity : e.getDataEntities()) {
//String url = System.getProperty("efms.infcompany.url.ip");
//logger.info("url");
//获取token //获取token
// String oaToken = OAUtils.getOaToken(); String oaToken = OAUtils.getOaToken(dataEntity.getString("name"));
String oaToken = "OAUtils.getOaToken()";
if (StringUtils.isNotEmpty(oaToken)) { if (StringUtils.isNotEmpty(oaToken)) {
//ICS新增/更新OA客户租户接口 pushOASupplier(oaToken,dataEntity);
String customerUrl = "http://172.31.254.240:9090/seeyon/rest/ats/type/customer";
Map<String, String> customerHeader = new HashMap<>();
customerHeader.put("Content-Type", "application/json");
customerHeader.put("token", oaToken);
//组装请求体
DynamicObject supplier = dataEntity.getDynamicObject("supplier");
if (null != supplier) {
JSONObject customerBody = assembleBody(OAUtils.l(supplier.getPkValue()));
if (null != customerBody) {
String customerPostjson = null;
try {
customerPostjson = HttpClientUtils.postjson(customerUrl, customerHeader, customerBody.toJSONString());
JSONObject jsonObject = JSONObject.parseObject(customerPostjson);
if (!jsonObject.isEmpty()) {
String result = (String) JSONObject.parseObject(customerPostjson).get("success");
if ("success".equals(result)) {
// logger.info("ICS新增/更新OA客户租户接口返回结果\n{}", customerPostjson);
}
}
logger.info("ICS新增/更新OA客户租户接口返回结果\n{}", customerPostjson);
} catch (Exception ex) {
logger.info(String.format("ICS新增/更新OA客户租户接口异常%s", ex.getMessage()));
throw new RuntimeException(ex);
}
}
}
} }
} }
} }
@ -87,7 +57,7 @@ public class PushOASupplierOPPlugin extends AbstractOperationServicePlugIn {
/** /**
* 组装供应商入参 * 组装供应商入参
*/ */
private static JSONObject assembleBody(long supplierID){ public static JSONObject assembleBody(long supplierID){
JSONObject customerBody = null; JSONObject customerBody = null;
//获取正式供应商 //获取正式供应商
QFilter q = new QFilter("id", QCP.equals, supplierID); QFilter q = new QFilter("id", QCP.equals, supplierID);

View File

@ -13,6 +13,8 @@ import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import static shkd.repc.resm.opplugin.PushOASupplierOPPlugin.assembleBody;
/** /**
* @author weiyunlong * @author weiyunlong
* @date Created 2024/9/11 16:02 * @date Created 2024/9/11 16:02
@ -21,8 +23,8 @@ import java.util.Map;
public class OAUtils { public class OAUtils {
private static final Log logger = LogFactory.getLog(OAUtils.class); private static final Log logger = LogFactory.getLog(OAUtils.class);
private static final String oaUrl = System.getProperty("oaurl");//(测试环境外网地址) public static final String oaUrl = System.getProperty("oaurl");//(测试环境外网地址)
// private static final String oaUrl = "http://172.31.254.240:9090";//本地(内网地址) // public static final String oaUrl = "http://172.31.254.240:9090";//本地(内网地址)
//致远服务前获取token接口 //致远服务前获取token接口
public static String getOaToken(String billNo){ public static String getOaToken(String billNo){
@ -67,6 +69,46 @@ public class OAUtils {
} }
} }
/**
* OA供应商同步接口
*/
public static void pushOASupplier(String oaToken, DynamicObject dataEntity){
//ICS新增/更新OA客户租户接口
String customerUrl = OAUtils.oaUrl+"/seeyon/rest/ats/type/customer";
Map<String, String> customerHeader = new HashMap<>();
customerHeader.put("Content-Type", "application/json");
customerHeader.put("token", oaToken);
//组装请求体
// DynamicObject supplier = dataEntity.getDynamicObject("syssupplier");//系统供应商
// if (null != supplier) {
JSONObject customerBody = assembleBody(OAUtils.l(dataEntity.getPkValue()));
if (null != customerBody) {
String customerPostjson = null;
try {
customerPostjson = HttpClientUtils.postjson(customerUrl, customerHeader, customerBody.toJSONString());
JSONObject jsonObject = JSONObject.parseObject(customerPostjson);
if (!jsonObject.isEmpty()) {
String result = jsonObject.getString("success");
boolean success = "true".equals(result);
DobeDWUtils.saveLog(dataEntity.getString("name"),
"致远", customerBody.toJSONString(), customerPostjson,
success, "调用ICS新增/更新OA客户租户接口");
}
} catch (Exception ex) {
DobeDWUtils.saveLog(dataEntity.getString("name"),
"致远", customerBody.toJSONString(), customerPostjson,
false, "调用ICS新增/更新OA客户租户接口");
throw new RuntimeException(ex);
}
}
// }
}
/** /**
* OA接口绑定用户 * OA接口绑定用户
* 代办接口之前需要先(用户的绑定 你通过定时任务 增量推就行或者你们系统有人员进来推一次这个人绑定成功了 就不需要再绑定除非人员工号有变动) * 代办接口之前需要先(用户的绑定 你通过定时任务 增量推就行或者你们系统有人员进来推一次这个人绑定成功了 就不需要再绑定除非人员工号有变动)