59 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			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);
							 | 
						||
| 
								 | 
							
								            }
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								}
							 |