出口报关生成出口发票时多选基础资料赋值
This commit is contained in:
ljw 2025-01-11 18:02:02 +08:00
parent 992ec1036b
commit d4334e9aaf

View File

@ -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)) {