运输方式+费用项目+港口唯一
This commit is contained in:
parent
281f5c5207
commit
0278d6e8e4
@ -0,0 +1,26 @@
|
|||||||
|
package com.yem.wm.im.transportCosts.Op;
|
||||||
|
|
||||||
|
import com.yem.wm.im.transferorder.vaildator.TransFerOrderSubmitMustInputValidator;
|
||||||
|
import com.yem.wm.im.transportCosts.validator.TransportCostsSaveValidator;
|
||||||
|
import com.yem.wm.utils.DynamicObjectUtil;
|
||||||
|
import kd.bos.dataentity.entity.DynamicObject;
|
||||||
|
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
||||||
|
import kd.bos.entity.plugin.AbstractOperationServicePlugIn;
|
||||||
|
import kd.bos.entity.plugin.AddValidatorsEventArgs;
|
||||||
|
import kd.bos.entity.plugin.args.BeforeOperationArgs;
|
||||||
|
import kd.bos.orm.query.QCP;
|
||||||
|
import kd.bos.orm.query.QFilter;
|
||||||
|
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author ljw
|
||||||
|
* @date 2024/8/31 15:54
|
||||||
|
* @description TransportCostsSaveOp
|
||||||
|
*/
|
||||||
|
public class TransportCostsSaveOp extends AbstractOperationServicePlugIn {
|
||||||
|
@Override
|
||||||
|
public void onAddValidators(AddValidatorsEventArgs e) {
|
||||||
|
super.onAddValidators(e);
|
||||||
|
e.addValidator(new TransportCostsSaveValidator());
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,60 @@
|
|||||||
|
package com.yem.wm.im.transportCosts.validator;
|
||||||
|
|
||||||
|
import com.yem.wm.utils.DynamicObjectUtil;
|
||||||
|
import kd.bos.dataentity.entity.DynamicObject;
|
||||||
|
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
||||||
|
import kd.bos.entity.ExtendedDataEntity;
|
||||||
|
import kd.bos.entity.validate.AbstractValidator;
|
||||||
|
import kd.bos.orm.query.QCP;
|
||||||
|
import kd.bos.orm.query.QFilter;
|
||||||
|
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author ljw
|
||||||
|
* @date 2024/8/31 16:11
|
||||||
|
* @description TransportCostsSaveValidator
|
||||||
|
*/
|
||||||
|
public class TransportCostsSaveValidator extends AbstractValidator {
|
||||||
|
@Override
|
||||||
|
public void validate() {
|
||||||
|
ExtendedDataEntity[] extendedDataEntities = this.getDataEntities();
|
||||||
|
for (ExtendedDataEntity extendedDataEntity : extendedDataEntities) {
|
||||||
|
DynamicObject eDataEntity = extendedDataEntity.getDataEntity();
|
||||||
|
DynamicObjectCollection dynamicObjectCollection = eDataEntity.getDynamicObjectCollection("yem_bd_logistics");
|
||||||
|
long aLong = eDataEntity.getLong("id");
|
||||||
|
for (DynamicObject dynamicObject : dynamicObjectCollection) {
|
||||||
|
DynamicObject yemShippingmethod = dynamicObject.getDynamicObject("yem_shippingmethod");
|
||||||
|
DynamicObject yemExpenseitems = dynamicObject.getDynamicObject("yem_expenseitems");
|
||||||
|
DynamicObject yemPort = dynamicObject.getDynamicObject("yem_port");
|
||||||
|
QFilter qFilter = new QFilter("id", QCP.not_equals, aLong);
|
||||||
|
if (yemExpenseitems!=null){
|
||||||
|
long yem_expenseitems = yemExpenseitems.getLong("id");
|
||||||
|
qFilter.and("yem_bd_logistics.yem_expenseitems.id", QCP.equals, yem_expenseitems);
|
||||||
|
}else {
|
||||||
|
this.addMessage(extendedDataEntity,"费用项目不允许为空");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (yemPort!=null){
|
||||||
|
long yem_port = yemPort.getLong("id");
|
||||||
|
qFilter.and("yem_bd_logistics.yem_port.id", QCP.equals, yem_port);
|
||||||
|
}else {
|
||||||
|
this.addMessage(extendedDataEntity,"运输方式不允许为空");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (yemShippingmethod!=null){
|
||||||
|
long yem_padexpense = yemShippingmethod.getLong("id");
|
||||||
|
qFilter.and("yem_bd_logistics.yem_shippingmethod.id", QCP.equals, yem_padexpense);
|
||||||
|
}else {
|
||||||
|
this.addMessage(extendedDataEntity,"港口不允许为空");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
String selectfield = DynamicObjectUtil.getSelectfields("yem_bd_transportcosts", false);
|
||||||
|
String selectfields = DynamicObjectUtil.getEntrySelectfields(selectfield, "yem_bd_transportcosts", "yem_bd_logistics", false);
|
||||||
|
DynamicObject dynamicObject1 = BusinessDataServiceHelper.loadSingle("yem_bd_transportcosts", selectfields, new QFilter[]{qFilter});
|
||||||
|
if (dynamicObject1 != null) {
|
||||||
|
this.addMessage(extendedDataEntity,"运输方式+费用项目+港口唯一");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user