fix:配件价格库获取标准价条件增加

This commit is contained in:
ljw 2024-09-24 20:02:23 +08:00
parent 4e767b6990
commit 038eae94f0

View File

@ -338,6 +338,7 @@ public class ClientUtils {
list.add(new QFilter("yem_billtype.number", QCP.equals, "yem_pricelibrary_PJ")); list.add(new QFilter("yem_billtype.number", QCP.equals, "yem_pricelibrary_PJ"));
list.add(new QFilter("yem_accessory.yem_material.id", QCP.equals, materialId)); list.add(new QFilter("yem_accessory.yem_material.id", QCP.equals, materialId));
list.add(new QFilter("yem_productclass.number", QCP.equals, yemBdProducts)); list.add(new QFilter("yem_productclass.number", QCP.equals, yemBdProducts));
list.add(new QFilter("yem_cancelstatus", QCP.equals, "0"));
//DynamicObject yem_material = BusinessDataServiceHelper.loadSingle("yem_pricelibrary","yem_accessory.yem_material,yem_accessory.yem_standsalesprice", list.toArray(new QFilter[0])); //DynamicObject yem_material = BusinessDataServiceHelper.loadSingle("yem_pricelibrary","yem_accessory.yem_material,yem_accessory.yem_standsalesprice", list.toArray(new QFilter[0]));
DynamicObject[] yem_material = BusinessDataServiceHelper.load("yem_pricelibrary", "billno,yem_accessory.yem_material,yem_accessory.yem_standsalesprice,auditdate", list.toArray(new QFilter[0])); DynamicObject[] yem_material = BusinessDataServiceHelper.load("yem_pricelibrary", "billno,yem_accessory.yem_material,yem_accessory.yem_standsalesprice,auditdate", list.toArray(new QFilter[0]));
DynamicObject nowMaterial = null; DynamicObject nowMaterial = null;
@ -374,11 +375,14 @@ public class ClientUtils {
if (yem_accessory != null && yem_accessory.size() > 0) { if (yem_accessory != null && yem_accessory.size() > 0) {
for (DynamicObject dm : yem_accessory) { for (DynamicObject dm : yem_accessory) {
long yem_materials = dm.getLong("yem_material.id");//价格库物料内码 long yem_materials = dm.getLong("yem_material.id");//价格库物料内码
String yemBillstatusfield = dm.getString("yem_billstatusfield");
if (materialId == yem_materials) { if (materialId == yem_materials) {
pjDatas.add(dm); pjDatas.add(dm);
if (dm != null) { if (dm != null) {
models.setValue("yem_fobprice", dm.getBigDecimal("yem_standsalesprice"), rowInfo); models.setValue("yem_fobprice", dm.getBigDecimal("yem_standsalesprice"), rowInfo);
String yembilltype = models.getDataEntityType().getName(); String yembilltype = models.getDataEntityType().getName();
if ("B".equals(yemBillstatusfield)) {
if ("yem_es_salesorder".equals(yembilltype) || "yem_es_xsalesorder".equals(yembilltype)) { if ("yem_es_salesorder".equals(yembilltype) || "yem_es_xsalesorder".equals(yembilltype)) {
models.setValue("yem_exwrmbprice", dm.getBigDecimal("yem_standsalesprice"), rowInfo); models.setValue("yem_exwrmbprice", dm.getBigDecimal("yem_standsalesprice"), rowInfo);
} }
@ -388,6 +392,9 @@ public class ClientUtils {
models.setValue("yem_safobprice", roundUpNew(dm.getBigDecimal("yem_standsalesprice").divide(yem_exrate, RoundingMode.HALF_UP)), rowInfo); models.setValue("yem_safobprice", roundUpNew(dm.getBigDecimal("yem_standsalesprice").divide(yem_exrate, RoundingMode.HALF_UP)), rowInfo);
} }
} }
} else {
info.append("明细信息 第" + (rowInfo + 1) + "行未获取到标准价,请及时询价!\r\n");
}
} }
} }
} }
@ -520,7 +527,7 @@ public class ClientUtils {
/** /**
* 实际整车单价 * 实际整车单价
* * <p>
* 实际整车单价 = 实际整车金额 / 数量 * 实际整车单价 = 实际整车金额 / 数量
*/ */
public static void countRealCatPrice(IDataModel model, int rowNow) { public static void countRealCatPrice(IDataModel model, int rowNow) {
@ -543,7 +550,7 @@ public class ClientUtils {
/** /**
* 实际整车金额 * 实际整车金额
* * <p>
* 实际整车金额 = 销售金额价格条款 - 资源配件金额 * 实际整车金额 = 销售金额价格条款 - 资源配件金额
*/ */
@ -1201,7 +1208,7 @@ public class ClientUtils {
* @param[2] row * @param[2] row
* return * return
* @time 2023/8/10 19:55 * @time 2023/8/10 19:55
* * <p>
* 销售单价价格条款= 销售FOB金额 /数量 * 销售单价价格条款= 销售FOB金额 /数量
*/ */
@ -1234,17 +1241,15 @@ public class ClientUtils {
} }
} }
/** /**
* 销售金额价格条款结算币别 * 销售金额价格条款结算币别
* * <p>
* 1如果分录没有总费用没有折扣金额就是按照 数量*销售EXW单价 * 1如果分录没有总费用没有折扣金额就是按照 数量*销售EXW单价
* 2如果分录有总费用或者折扣金额则销售金额价格条款 = 折扣后销售金额 +总费用 + 资源配件单价 *数量 * 2如果分录有总费用或者折扣金额则销售金额价格条款 = 折扣后销售金额 +总费用 + 资源配件单价 *数量
* 销售单价价格条款= 销售金额价格条款 /数量 * 销售单价价格条款= 销售金额价格条款 /数量
*
*/ */
public static void addSaAmountTk(IDataModel model, int rowNow) { public static void addSaAmountTk(IDataModel model, int rowNow) {
boolean ifgift = (boolean) model.getValue("yem_ifgift", rowNow); boolean ifgift = (boolean) model.getValue("yem_ifgift", rowNow);
@ -1294,6 +1299,7 @@ public class ClientUtils {
/** /**
* 整机计算 销售单价价格条款=折扣后销售单价+单车总费用+资源配件单价 * 整机计算 销售单价价格条款=折扣后销售单价+单车总费用+资源配件单价
*
* @param model * @param model
* @param row * @param row
*/ */
@ -1308,6 +1314,7 @@ public class ClientUtils {
/** /**
* 整机 销售金额价格条款=销售单价价格条款*数量 * 整机 销售金额价格条款=销售单价价格条款*数量
*
* @param model * @param model
* @param row * @param row
*/ */
@ -1320,6 +1327,7 @@ public class ClientUtils {
/** /**
* 整机 实际整车单价=折扣后销售单价+单车总费用 * 整机 实际整车单价=折扣后销售单价+单车总费用
*
* @param model * @param model
* @param row * @param row
*/ */
@ -1333,6 +1341,7 @@ public class ClientUtils {
/** /**
* 整机 实际整车金额=实际整车单价*数量 * 整机 实际整车金额=实际整车单价*数量
*
* @param model * @param model
* @param row * @param row
*/ */
@ -1346,6 +1355,7 @@ public class ClientUtils {
/** /**
* 计算保险费 * 计算保险费
* 保险费=FOB单价+海运费*保险加成率*运保费率/100 * 保险费=FOB单价+海运费*保险加成率*运保费率/100
*
* @param rowIdx * @param rowIdx
* @param model * @param model
*/ */
@ -1408,8 +1418,9 @@ public class ClientUtils {
/** /**
* // 银行利息费=当前行销售FOB单价+海运费+保险费*收款计划中的是否信保为是的收汇百分比%/100*利息率/100利息率手填 * // 银行利息费=当前行销售FOB单价+海运费+保险费*收款计划中的是否信保为是的收汇百分比%/100*利息率/100利息率手填
* * <p>
* 银行利息费=当前行销售FOB单价+海运费+保险费*收款计划中的是否信保为是的收汇百分比%/100*利息率/100/360*利息天数 * 银行利息费=当前行销售FOB单价+海运费+保险费*收款计划中的是否信保为是的收汇百分比%/100*利息率/100/360*利息天数
*
* @param rowIdx * @param rowIdx
* @param model * @param model
*/ */
@ -1852,7 +1863,7 @@ public class ClientUtils {
/** /**
* 计算销售FCA标配青岛单价 * 计算销售FCA标配青岛单价
* * <p>
* 销售FCA标配青岛单价 = 标配FOB青岛 / 汇率向上取整保留整数业务存在手动调整 * 销售FCA标配青岛单价 = 标配FOB青岛 / 汇率向上取整保留整数业务存在手动调整
* *
* @param model * @param model
@ -1870,7 +1881,7 @@ public class ClientUtils {
/** /**
* 销售FCA标配青岛金额 * 销售FCA标配青岛金额
* * <p>
* 销售FCA标配青岛金额=销售FCA标配青岛单价*数量 * 销售FCA标配青岛金额=销售FCA标配青岛单价*数量
* *
* @param model * @param model
@ -1885,7 +1896,7 @@ public class ClientUtils {
/** /**
* 计算销售FOB单价 * 计算销售FOB单价
* * <p>
* 销售FOB单价=商品明细对应多功能配置中 单台加价金额结算币别合计值 + 销售FCA标配青岛单价+FOB与FCA费用差额 * 销售FOB单价=商品明细对应多功能配置中 单台加价金额结算币别合计值 + 销售FCA标配青岛单价+FOB与FCA费用差额
*/ */
public static void calculateSalesFOBUnitPrice(IDataModel model, int idx) { public static void calculateSalesFOBUnitPrice(IDataModel model, int idx) {
@ -2004,6 +2015,7 @@ public class ClientUtils {
/** /**
* 根据重量物流价格核算表.明细信息.重量核算价格 查询价格 * 根据重量物流价格核算表.明细信息.重量核算价格 查询价格
*
* @param entry 重量核算价格 * @param entry 重量核算价格
* @param weight 重量 * @param weight 重量
* @return 单价 * @return 单价
@ -2075,6 +2087,7 @@ public class ClientUtils {
/** /**
* 选择基础机型携带基础机型中产品机型的吨数 * 选择基础机型携带基础机型中产品机型的吨数
*
* @param model 外销合同 * @param model 外销合同
* @param idx 明细行 * @param idx 明细行
*/ */
@ -2094,6 +2107,7 @@ public class ClientUtils {
/** /**
* 查询费用项目对应的计费方式 * 查询费用项目对应的计费方式
*
* @return * @return
*/ */
public static Long queryBillingMethod(DynamicObject dataEntity, String expenseItemNo) { public static Long queryBillingMethod(DynamicObject dataEntity, String expenseItemNo) {