feat: 同步所有客户到下单平台

This commit is contained in:
zzs 2025-04-09 15:03:44 +08:00
parent 9971b563c8
commit 7a5944c413
2 changed files with 53 additions and 56 deletions

View File

@ -19,6 +19,7 @@ import kd.bos.entity.datamodel.ListSelectedRow;
import kd.bos.entity.operate.OperateOptionConst; import kd.bos.entity.operate.OperateOptionConst;
import kd.bos.entity.operate.result.IOperateInfo; import kd.bos.entity.operate.result.IOperateInfo;
import kd.bos.entity.operate.result.OperationResult; import kd.bos.entity.operate.result.OperationResult;
import kd.bos.exception.KDBizException;
import kd.bos.logging.Log; import kd.bos.logging.Log;
import kd.bos.logging.LogFactory; import kd.bos.logging.LogFactory;
import kd.bos.orm.ORM; import kd.bos.orm.ORM;
@ -472,11 +473,10 @@ public class OrderApiUtils {
JSONObject jsonObject = JSONObject.parseObject(res); JSONObject jsonObject = JSONObject.parseObject(res);
int code = jsonObject.getIntValue("code"); int code = jsonObject.getIntValue("code");
if (code == 0) { if (code == 0) {
Object data = jsonObject.get("data"); Integer data = jsonObject.getInteger("data");
if (data instanceof Long) { resStatus.put("id", String.valueOf(data));
String ids = data.toString(); } else {
resStatus.put("id", ids); throw new KDBizException("失败:" + res);
}
} }
return resStatus; return resStatus;
} else { } else {

View File

@ -4,7 +4,6 @@ import com.yem.or.utils.OrderApiUtils;
import com.yem.wm.utils.YEM; import com.yem.wm.utils.YEM;
import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.entity.ExtendedDataEntity; import kd.bos.entity.ExtendedDataEntity;
import kd.bos.entity.plugin.args.EndOperationTransactionArgs;
import kd.bos.entity.validate.AbstractValidator; import kd.bos.entity.validate.AbstractValidator;
import kd.bos.orm.query.QCP; import kd.bos.orm.query.QCP;
import kd.bos.orm.query.QFilter; import kd.bos.orm.query.QFilter;
@ -25,15 +24,15 @@ public class CustomerValidator extends AbstractValidator {
for (ExtendedDataEntity dataEntitie : dataEntities) { for (ExtendedDataEntity dataEntitie : dataEntities) {
DynamicObject mechanical = dataEntitie.getDataEntity(); DynamicObject mechanical = dataEntitie.getDataEntity();
boolean isSynced = mechanical.getBoolean("yem_checkboxfield"); boolean isSynced = mechanical.getBoolean("yem_checkboxfield");
DynamicObject group = mechanical.getDynamicObject("group"); // DynamicObject group = mechanical.getDynamicObject("group");
if (group != null) { // if (group != null) {
long groupid = group.getLong("id"); // long groupid = group.getLong("id");
QFilter qFilter = new QFilter("parent.number", QCP.equals, "11602"); // QFilter qFilter = new QFilter("parent.number", QCP.equals, "11602");
QFilter qFilter1 = new QFilter("id", QCP.equals, groupid); // QFilter qFilter1 = new QFilter("id", QCP.equals, groupid);
qFilter1.and(new QFilter("enable", QCP.equals, "1")); // qFilter1.and(new QFilter("enable", QCP.equals, "1"));
DynamicObject[] dynamicObjects = BusinessDataServiceHelper.load("bd_customergroup", "id,number,parent" // DynamicObject[] dynamicObjects = BusinessDataServiceHelper.load("bd_customergroup", "id,number,parent"
, new QFilter[]{qFilter, qFilter1}); // , new QFilter[]{qFilter, qFilter1});
if (dynamicObjects.length > 0) { // if (dynamicObjects.length > 0) {
String number = mechanical.getString("number"); String number = mechanical.getString("number");
String name = mechanical.getString("name"); String name = mechanical.getString("name");
DynamicObject groupcustomers = mechanical.getDynamicObject("yem_groupcustomers"); DynamicObject groupcustomers = mechanical.getDynamicObject("yem_groupcustomers");
@ -51,31 +50,29 @@ public class CustomerValidator extends AbstractValidator {
continue; continue;
} }
} }
if (isSynced) {
String torderid = mechanical.getString("yem_torderid"); String torderid = mechanical.getString("yem_torderid");
Long existId = Long.valueOf(torderid); Long existId = Long.valueOf(torderid);
if (isSynced) {
demands = OrderApiUtils.demands(name, number, groupcustomers, false, existId); demands = OrderApiUtils.demands(name, number, groupcustomers, false, existId);
} else { } else {
demands = OrderApiUtils.demands(name, number, groupcustomers, true, null); demands = OrderApiUtils.demands(name, number, groupcustomers, true, null);
} }
String msg = demands.get("msg"); String msg = demands.get("msg");
if (msg == null) { if (demands.containsKey("id")) {
String id = demands.get("id"); String id = demands.get("id");
if (YEM.isNotEmpty(id)) {
mechanical.set("yem_torderid", id); mechanical.set("yem_torderid", id);
mechanical.set("yem_checkboxfield", true); mechanical.set("yem_checkboxfield", true);
SaveServiceHelper.update(mechanical); SaveServiceHelper.update(mechanical);
SaveServiceHelper.save(new DynamicObject[]{mechanical}); SaveServiceHelper.save(new DynamicObject[]{mechanical});
}
} else { } else {
this.addErrorMessage(dataEntitie, msg); this.addErrorMessage(dataEntitie, msg);
} }
} else { // } else {
this.addErrorMessage(dataEntitie, "当前客户不满足同步条件,禁止同步至下单平台!!!"); // this.addErrorMessage(dataEntitie, "当前客户不满足同步条件,禁止同步至下单平台!!!");
} // }
} else { // } else {
this.addErrorMessage(dataEntitie, "当前客户分组为空!!"); // this.addErrorMessage(dataEntitie, "当前客户分组为空!!");
} // }
} }
} }
} }