fix:
出口报关生成出口发票时多选基础资料赋值
This commit is contained in:
parent
992ec1036b
commit
d4334e9aaf
@ -1,6 +1,7 @@
|
||||
package com.yem.tws.task;
|
||||
|
||||
import com.yem.wm.task.YunZhiJaGetOpenidTask;
|
||||
import com.yem.wm.utils.BigDecimalUtils;
|
||||
import com.yem.wm.utils.DynamicObjectUtil;
|
||||
import com.yem.wm.utils.YEM;
|
||||
import kd.bos.coderule.api.CodeRuleInfo;
|
||||
@ -90,7 +91,7 @@ public class CusdecToDeclaredocxTask extends AbstractTask {
|
||||
String string = yemCodets + "-" + yemGname + "-" + yemGqty + "-" + yemDeclprice + "-" + yemDecltotal + "-" + number;
|
||||
maps.put(string, dynamicObject);
|
||||
}
|
||||
//出口报关单
|
||||
//出口报关单//海运费(原币)、保费(原表)取单一窗口的的海运费、保费
|
||||
QFilter yemRealbringbillno = new QFilter("yem_realbringbillno", QCP.equals, yemBillno);
|
||||
yemRealbringbillno.or(new QFilter("yem_bringbillno", QCP.equals, yemBillno));
|
||||
String selectfield = DynamicObjectUtil.getSelectfields("yem_es_declaredocx", false);
|
||||
@ -154,6 +155,7 @@ public class CusdecToDeclaredocxTask extends AbstractTask {
|
||||
String yemErroriskey = billno + "-" + yemDecmatericalname + "-" + yemCusqty + "-" + yemCusconsalesprice + "-" + yemCusamount + "-" + aLong;
|
||||
DynamicObject dynamicObject = maps.get(yemErroriskey);
|
||||
if (dynamicObject != null) {
|
||||
object.set("yem_gmodel",dynamicObject.getString("yem_gmodel"));
|
||||
i = i - 1;
|
||||
} else {
|
||||
seq = seq + object.getString("seq") + ",";
|
||||
@ -169,30 +171,40 @@ public class CusdecToDeclaredocxTask extends AbstractTask {
|
||||
declaredocx.set("yem_customsnumber", yemEntryid);
|
||||
declaredocx.set("yem_exportdate", yemFiedatets);
|
||||
declaredocx.set("yem_customsdocumentid", id);
|
||||
declaredocx.set("yem_reightamt", user.getBigDecimal("yem_feerate"));
|
||||
declaredocx.set("yem_premiumamt", user.getBigDecimal("yem_insurrate"));
|
||||
declaredocx.set("yem_reightamtbase", user.getBigDecimal("yem_feerate").multiply(declaredocx.getBigDecimal("yem_reightamtrate")));
|
||||
declaredocx.set("yem_premiumamtbase", user.getBigDecimal("yem_insurrate").multiply(declaredocx.getBigDecimal("yem_pmamtrate")));
|
||||
declaredocx.set("yem_reightamtend"
|
||||
, BigDecimalUtils.div((user.getBigDecimal("yem_feerate").multiply(declaredocx.getBigDecimal("yem_reightamtrate")))
|
||||
,declaredocx.getBigDecimal("yem_exrate"),2));
|
||||
|
||||
BigDecimal exchangeRate = YEM.getExchangeRate(declaredocx.getDynamicObject("yem_exratetable")
|
||||
, declaredocx.getDynamicObject("yem_currencybase")
|
||||
, declaredocx.getDynamicObject("yem_usdcurrency")
|
||||
, yemFiedatets);
|
||||
declaredocx.set("yem_usbexrate", exchangeRate);
|
||||
|
||||
List<DynamicObject> userList = new ArrayList<>();
|
||||
DynamicObjectCollection userColl = declaredocx.getDynamicObjectCollection("yem_shipports");
|
||||
userList.add(user.getDynamicObject("yem_despportcodebase"));
|
||||
for (DynamicObject users: userList) {
|
||||
DynamicObject newUser = new DynamicObject(userColl.getDynamicObjectType());
|
||||
newUser.set("fbasedataId", users);
|
||||
userColl.add(newUser);
|
||||
}
|
||||
declaredocx.set("yem_shipports",userColl);
|
||||
List<DynamicObject> userLists = new ArrayList<>();
|
||||
DynamicObjectCollection userColls = declaredocx.getDynamicObjectCollection("yem_destports");
|
||||
userLists.add(user.getDynamicObject("yem_distinateportbase"));
|
||||
for (DynamicObject users: userLists) {
|
||||
DynamicObject newUser = new DynamicObject(userColls.getDynamicObjectType());
|
||||
newUser.set("fbasedataId", users);
|
||||
userColls.add(newUser);
|
||||
}
|
||||
declaredocx.set("yem_destports",userColls);
|
||||
declaredocx.set("yem_despportcodebase",user.getDynamicObject("yem_despportcodebase") );
|
||||
declaredocx.set("yem_distinateportbase", user.getDynamicObject("yem_distinateportbase"));
|
||||
declaredocx.set("yem_transmodbase", user.getDynamicObject("yem_transmodbase"));
|
||||
// List<DynamicObject> userList = new ArrayList<>();
|
||||
// DynamicObjectCollection userColl = declaredocx.getDynamicObjectCollection("yem_shipports");
|
||||
// userList.add(user.getDynamicObject("yem_despportcodebase"));
|
||||
// for (DynamicObject users: userList) {
|
||||
// DynamicObject newUser = new DynamicObject(userColl.getDynamicObjectType());
|
||||
// newUser.set("fbasedataId", users);
|
||||
// userColl.add(newUser);
|
||||
// }
|
||||
// declaredocx.set("yem_shipports",userColl);
|
||||
// List<DynamicObject> userLists = new ArrayList<>();
|
||||
// DynamicObjectCollection userColls = declaredocx.getDynamicObjectCollection("yem_destports");
|
||||
// userLists.add(user.getDynamicObject("yem_distinateportbase"));
|
||||
// for (DynamicObject users: userLists) {
|
||||
// DynamicObject newUser = new DynamicObject(userColls.getDynamicObjectType());
|
||||
// newUser.set("fbasedataId", users);
|
||||
// userColls.add(newUser);
|
||||
// }
|
||||
// declaredocx.set("yem_destports",userColls);
|
||||
SaveServiceHelper.update(declaredocx);
|
||||
SaveServiceHelper.save(new DynamicObject[]{declaredocx});
|
||||
if ("结关".equals(yemCusdecstatusname) && !YEM.isEmpty(yemFiedatets)) {
|
||||
|
Loading…
Reference in New Issue
Block a user