【物料封装商品】物料审核时自动封装生成商城商品信息
This commit is contained in:
		
							parent
							
								
									b9abee90a9
								
							
						
					
					
						commit
						bf797cafe5
					
				|  | @ -0,0 +1,103 @@ | |||
| package tqq9.lc123.cloud.app.plugin.operate.sys; | ||||
| 
 | ||||
| import com.grapecity.documents.excel.B; | ||||
| import kd.bos.dataentity.OperateOption; | ||||
| import kd.bos.dataentity.entity.DynamicObject; | ||||
| import kd.bos.entity.operate.result.IOperateInfo; | ||||
| import kd.bos.entity.operate.result.OperationResult; | ||||
| import kd.bos.entity.plugin.AbstractOperationServicePlugIn; | ||||
| import kd.bos.entity.plugin.args.AfterOperationArgs; | ||||
| import kd.bos.orm.query.QFilter; | ||||
| import kd.bos.servicehelper.BusinessDataServiceHelper; | ||||
| import kd.fi.cas.helper.OperateServiceHelper; | ||||
| 
 | ||||
| import java.math.BigDecimal; | ||||
| import java.util.List; | ||||
| 
 | ||||
| /** | ||||
|  * 物料审核操作 | ||||
|  *      审核成功后,生成对应的商城商品 | ||||
|  */ | ||||
| public class MaterialAuditOp extends AbstractOperationServicePlugIn { | ||||
| 
 | ||||
|     @Override | ||||
|     public void afterExecuteOperationTransaction(AfterOperationArgs e) { | ||||
|         super.afterExecuteOperationTransaction(e); | ||||
|         OperationResult operationResult = this.getOperationResult(); | ||||
|         if (operationResult.isSuccess()){ | ||||
|             DynamicObject[] dataEntities = e.getDataEntities(); | ||||
|             for (DynamicObject material : dataEntities) { | ||||
|                 material = BusinessDataServiceHelper.loadSingle(material.getPkValue(), "bd_material", | ||||
|                         "id,name,number,baseunit,tqq9_spfliii,tqq9_combofield_spflii,tqq9_combofield_spfliii,tqq9_ssbm,tqq9_zccpmc,tqq9_brand,tqq9_wlcd1,tqq9_ylfl,tqq9_spdj,tqq9_ccystj,tqq9_ylflml"); | ||||
|                 Long materialID = material.getLong("id"); | ||||
|                 DynamicObject goods = null; | ||||
|                 //查询对应的商品是否存在 | ||||
|                 QFilter f = new QFilter("tqq9_mater.id", "=", materialID); | ||||
|                 DynamicObject[] goodsArr = BusinessDataServiceHelper.load("tqq9_goodspackage", "id", new QFilter[]{f}); | ||||
|                 if (goodsArr != null && goodsArr.length > 0){ | ||||
|                     goods = goodsArr[0]; | ||||
|                     goods = BusinessDataServiceHelper.loadSingle(goods.getPkValue(), goods.getDynamicObjectType().getName()); | ||||
|                 }else { | ||||
|                     goods = BusinessDataServiceHelper.newDynamicObject("tqq9_goodspackage"); | ||||
|                     goods.set("number", material.getString("number")); | ||||
|                     goods.set("tqq9_mater", material); | ||||
|                 } | ||||
|                 //创建组织-默认励齿集团 | ||||
|                 DynamicObject createorg = null; | ||||
|                 f = new QFilter("number", "=", "LCJT"); | ||||
|                 DynamicObject[] orgArr = BusinessDataServiceHelper.load("bos_org", "id,name,number", new QFilter[]{f}); | ||||
|                 if(orgArr != null && orgArr.length > 0){ | ||||
|                     createorg = orgArr[0]; | ||||
|                 } | ||||
|                 //币种-默认CNY | ||||
|                 DynamicObject currency = null; | ||||
|                 f = new QFilter("number", "=", "CNY"); | ||||
|                 DynamicObject[] currencyArr = BusinessDataServiceHelper.load("bd_currency", "id,name,number", new QFilter[]{f}); | ||||
|                 if(currencyArr != null && currencyArr.length > 0){ | ||||
|                     currency = currencyArr[0]; | ||||
|                 } | ||||
|                 //查询税率和税率基础资料 | ||||
|                 DynamicObject tqq9_ssbm = material.getDynamicObject("tqq9_ssbm"); | ||||
|                 tqq9_ssbm = BusinessDataServiceHelper.loadSingle(tqq9_ssbm.getPkValue(), tqq9_ssbm.getDynamicObjectType().getName(),"id,name,number,taxrate"); | ||||
|                 BigDecimal taxrate = tqq9_ssbm.getBigDecimal("taxrate"); | ||||
|                 if(taxrate != null && taxrate.compareTo(BigDecimal.ZERO) > 0){ | ||||
|                     goods.set("tqq9_saletaxdcm", taxrate); | ||||
|                     QFilter f1 = new QFilter("taxrate", "=", taxrate.multiply(new BigDecimal(100))); | ||||
|                     DynamicObject[] bd_taxratesArr = BusinessDataServiceHelper.load("bd_taxrate", "id,number,name,taxrate", new QFilter[]{f1}); | ||||
|                     goods.set("tqq9_saletaxrate", bd_taxratesArr[0]); | ||||
|                 } | ||||
| 
 | ||||
|                 //给商品信息赋值 | ||||
|                 goods.set("createorg", createorg); | ||||
|                 goods.set("name", material.getString("name")); | ||||
|                 goods.set("tqq9_regproname", material.getString("tqq9_zccpmc")); | ||||
|                 goods.set("tqq9_platform", "A,B,C");//平台 | ||||
|                 goods.set("tqq9_brand", material.getDynamicObject("tqq9_brand")); | ||||
|                 goods.set("tqq9_wlcd", material.getDynamicObject("tqq9_wlcd1")); | ||||
|                 goods.set("tqq9_taxno", tqq9_ssbm); | ||||
|                 goods.set("tqq9_medicaltype", material.getString("tqq9_ylfl")); | ||||
|                 goods.set("tqq9_level", material.getString("tqq9_spdj")); | ||||
|                 goods.set("tqq9_currency", currency);//币种 | ||||
|                 goods.set("tqq9_onsale", "B"); | ||||
|                 goods.set("tqq9_saleunit", material.getDynamicObject("baseunit"));//销售单位 | ||||
|                 goods.set("tqq9_keepcondition", material.getString("tqq9_ccystj")); | ||||
|                 goods.set("tqq9_medicalclass", material.getDynamicObject("tqq9_ylflml")); | ||||
|                 goods.set("tqq9_skutype2", material.getString("tqq9_combofield_spflii")); | ||||
|                 goods.set("tqq9_ckutype3", material.getString("tqq9_combofield_spfliii")); | ||||
|                 goods.set("tqq9_skutype4", material.getString("tqq9_spfliii")); | ||||
|                 goods.set("tqq9_isauto", true); | ||||
|                 goods.set("enable", "1"); | ||||
|                 OperationResult operationResult1 = OperateServiceHelper.executeOperate("save", "tqq9_goodspackage", new DynamicObject[]{goods}, OperateOption.create()); | ||||
|                 if(!operationResult1.isSuccess()){ | ||||
|                     List<IOperateInfo> allErrorOrValidateInfo = operationResult1.getAllErrorOrValidateInfo(); | ||||
|                     for (IOperateInfo iOperateInfo : allErrorOrValidateInfo) { | ||||
|                         iOperateInfo.getMessage(); | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
| 
 | ||||
|         } | ||||
| 
 | ||||
| 
 | ||||
|     } | ||||
| } | ||||
		Loading…
	
		Reference in New Issue