l
This commit is contained in:
parent
fab8a9cd9f
commit
12ba81e92a
@ -5,6 +5,7 @@ import com.yem.wm.utils.DynamicObjectUtil;
|
||||
import com.yem.wm.utils.YEM;
|
||||
import kd.bos.dataentity.entity.DynamicObject;
|
||||
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
||||
import kd.bos.entity.BillEntityType;
|
||||
import kd.bos.entity.ExtendedDataEntity;
|
||||
import kd.bos.entity.botp.plugin.AbstractConvertPlugIn;
|
||||
import kd.bos.entity.botp.plugin.args.AfterConvertEventArgs;
|
||||
@ -28,9 +29,9 @@ public class DeclareDocxToExportinvoiceConvert extends AbstractConvertPlugIn {
|
||||
public void afterConvert(AfterConvertEventArgs e) {
|
||||
super.afterConvert(e);
|
||||
String targetName = this.getTgtMainType().getName();
|
||||
//上游
|
||||
String name = this.getSrcMainType().getName();
|
||||
ExtendedDataEntity[] findByEntityKeys = e.getTargetExtDataEntitySet().FindByEntityKey(targetName);
|
||||
|
||||
for (ExtendedDataEntity findByEntityKey : findByEntityKeys) {
|
||||
//携带合同中的佣金率
|
||||
setRate(findByEntityKey);
|
||||
@ -90,9 +91,67 @@ public class DeclareDocxToExportinvoiceConvert extends AbstractConvertPlugIn {
|
||||
// }
|
||||
|
||||
calculatePremium(dataEntity);
|
||||
|
||||
}
|
||||
|
||||
ExtendedDataEntity[] findByname = e.getTargetExtDataEntitySet().FindByEntityKey(targetName);
|
||||
yemCushscode(findByname);
|
||||
}
|
||||
|
||||
private void yemCushscode(ExtendedDataEntity[] findByname) {
|
||||
for (ExtendedDataEntity extendedDataEntity : findByname) {
|
||||
DynamicObject dataEntity = extendedDataEntity.getDataEntity();
|
||||
long aLong2 = dataEntity.getLong("yem_sourcebillid");
|
||||
String yem_es_declare = DynamicObjectUtil.getSelectfields("yem_es_declaredocx", false);
|
||||
String yem_es_declare_ec = DynamicObjectUtil.getEntrySelectfields(yem_es_declare, "yem_es_declaredocx", "yem_es_declare_ec", false);
|
||||
DynamicObject dynamicObject2 = BusinessDataServiceHelper.loadSingle("yem_es_declaredocx", yem_es_declare_ec, new QFilter[]{new QFilter("id", QCP.equals, aLong2)});
|
||||
DynamicObjectCollection dynamicObjectCollection = dynamicObject2.getDynamicObjectCollection("yem_es_declare_ec");
|
||||
//出口发票
|
||||
for (DynamicObject dynamicObject : dynamicObjectCollection) {
|
||||
DynamicObject yemCushscode = dynamicObject.getDynamicObject("yem_cushscode");
|
||||
long aLong1 = dynamicObject.getLong("id");
|
||||
if (yemCushscode != null) {
|
||||
String yemCushscodeString = yemCushscode.getString("number");
|
||||
String yemDecmatericalname = dynamicObject.getString("yem_decmatericalname");
|
||||
BigDecimal yemCusconsalesprice = dynamicObject.getBigDecimal("yem_cusconsalesprice");
|
||||
QFilter qFilter = new QFilter("yem_ca_cddetailedentry.yem_codets.number", QCP.equals, yemCushscodeString);
|
||||
qFilter.and(new QFilter("yem_ca_cddetailedentry.yem_codetsname", QCP.equals, yemDecmatericalname));
|
||||
qFilter.and(new QFilter("yem_ca_cddetailedentry.yem_declprice", QCP.equals, yemCusconsalesprice));
|
||||
String selectfield = DynamicObjectUtil.getSelectfields("yem_ca_cusdec", false);
|
||||
String selectfields = DynamicObjectUtil.getEntrySelectfields(selectfield, "yem_ca_cusdec", "yem_ca_cddetailedentry", false);
|
||||
//单一窗口报关单
|
||||
DynamicObject load = BusinessDataServiceHelper.loadSingle("yem_ca_cusdec", selectfields, new QFilter[]{qFilter});
|
||||
if (load != null) {
|
||||
DynamicObjectCollection dynamicObjectCollection1 = load.getDynamicObjectCollection("yem_ca_cddetailedentry");
|
||||
for (DynamicObject object : dynamicObjectCollection1) {
|
||||
DynamicObject yemCodets = object.getDynamicObject("yem_codets");
|
||||
BigDecimal bigDecimal = object.getBigDecimal("yem_declprice");
|
||||
String string = object.getString("yem_codetsname");
|
||||
DynamicObject yemGunit = object.getDynamicObject("yem_gunit");
|
||||
DynamicObject yemunit = object.getDynamicObject("yem_unit1");
|
||||
DynamicObject yemUnit = object.getDynamicObject("yem_unit2");
|
||||
if (yemCodets != null) {
|
||||
String yemCodetsString = yemCodets.getString("number");
|
||||
if (yemCodetsString.equals(yemCushscodeString) && bigDecimal.compareTo(yemCusconsalesprice) == 0 && yemDecmatericalname.equals(string)) {
|
||||
DynamicObjectCollection dynamicObjectCollection2 = dataEntity.getDynamicObjectCollection("yem_exportinvoice_c");
|
||||
for (DynamicObject dynamicObject1 : dynamicObjectCollection2) {
|
||||
long aLong = dynamicObject1.getLong("yem_sourcebillentryid");
|
||||
if (aLong1 == aLong) {
|
||||
dynamicObject1.set("yem_customsdeclaration", yemGunit);
|
||||
dynamicObject1.set("yem_unitmeasurement", yemunit);
|
||||
dynamicObject1.set("yem_measurement", yemUnit);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取出口日期的海运费汇率 保费汇率
|
||||
*
|
||||
@ -163,9 +222,9 @@ public class DeclareDocxToExportinvoiceConvert extends AbstractConvertPlugIn {
|
||||
//汇率
|
||||
BigDecimal yem_seatransfeerate = dataEntity.getBigDecimal("yem_seatransfeerate");
|
||||
//海运费原币
|
||||
BigDecimal multiply1 = yem_count.multiply(yem_localamountsum).setScale(2,BigDecimal.ROUND_HALF_UP);
|
||||
BigDecimal multiply1 = yem_count.multiply(yem_localamountsum).setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||
//海运费(本位币)
|
||||
BigDecimal yem_seatransfeebase = yem_seatransfeerate.multiply(multiply1).setScale(2,BigDecimal.ROUND_HALF_UP);
|
||||
BigDecimal yem_seatransfeebase = yem_seatransfeerate.multiply(multiply1).setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||
//佣金
|
||||
BigDecimal yem_commissionba = dataEntity.getBigDecimal("yem_commissionba");
|
||||
BigDecimal ybz = yem_seatransfeebase.add(yem_insurefeebase).add(yem_commissionba);
|
||||
|
Loading…
Reference in New Issue
Block a user