lc/lc123/cloud/app/plugin/operate/pm/PurRptPushPurOrderPlugin.java

59 lines
2.9 KiB
Java

package tqq9.lc123.cloud.app.plugin.operate.pm;
import com.oracle.truffle.regex.tregex.string.StringUTF16;
import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.dataentity.entity.DynamicObjectCollection;
import kd.bos.dataentity.utils.StringUtils;
import kd.bos.entity.ExtendedDataEntity;
import kd.bos.entity.ExtendedDataEntitySet;
import kd.bos.entity.botp.plugin.AbstractConvertPlugIn;
import kd.bos.entity.botp.plugin.args.AfterConvertEventArgs;
import kd.bos.logging.Log;
import kd.bos.logging.LogFactory;
import kd.bos.orm.query.QCP;
import kd.bos.orm.query.QFilter;
import kd.bos.servicehelper.BusinessDataServiceHelper;
import kd.sdk.plugin.Plugin;
import tqq9.lc123.cloud.app.plugin.operate.im.PurOrderPushReceiptNoticePlugin;
import java.math.BigDecimal;
import java.util.Map;
/**
* 采购订单下推采购建议报表转换插件
*/
public class PurRptPushPurOrderPlugin extends AbstractConvertPlugIn implements Plugin {
private final static Log logger = LogFactory.getLog(PurRptPushPurOrderPlugin.class);
private static String PURORDERBILL = "pm_purorderbill";//采购订单
@Override
public void afterConvert(AfterConvertEventArgs e) {
super.afterConvert(e);
ExtendedDataEntitySet targetExtDataEntitySet = e.getTargetExtDataEntitySet();
ExtendedDataEntity[] extendedDataEntities = targetExtDataEntitySet.FindByEntityKey(PURORDERBILL);
Map<String, String> variables = this.getOption().getVariables();
for (ExtendedDataEntity extendedDataEntity : extendedDataEntities) {
//采购订单
DynamicObject dataEntity = extendedDataEntity.getDataEntity();
DynamicObjectCollection dynamicObjectCollection = dataEntity.getDynamicObjectCollection("billentry");
for (DynamicObject dynamicObject : dynamicObjectCollection) {
DynamicObject org = dataEntity.getDynamicObject("org");//采购组织
String number = org.getString("number");
DynamicObject materialpurchaseinfo = dynamicObject.getDynamicObject("material");//物料采购信息
DynamicObject masterid = materialpurchaseinfo.getDynamicObject("masterid");//物料信息
masterid = BusinessDataServiceHelper.loadSingle("bd_material", new QFilter[]{new QFilter("number", QCP.equals, masterid.getString("number"))});
BigDecimal maxprice = BigDecimal.ZERO;
if(StringUtils.equals("SHLC",number)){
maxprice=masterid.getBigDecimal("tqq9_maxprice_sh");
}else if(StringUtils.equals("BJLC",number)){
maxprice=masterid.getBigDecimal("tqq9_maxprice_bj");
}else if(StringUtils.equals("GZLC",number)){
maxprice=masterid.getBigDecimal("tqq9_maxprice_gz");
}
dynamicObject.set("priceandtax",maxprice);
dynamicObject.set("tqq9_zgcgxj",maxprice);
}
}
}
}