diff --git a/jnpf-app/pages.json b/jnpf-app/pages.json
index 5315f45b..b690f62c 100644
--- a/jnpf-app/pages.json
+++ b/jnpf-app/pages.json
@@ -514,6 +514,12 @@
"style": {
"navigationBarTitleText": ""
}
+ },
+ {
+ "path": "purchaseReceiptVoucher/index",
+ "style": {
+ "navigationBarTitleText": ""
+ }
}
]
},
diff --git a/jnpf-app/pages/index/portal.vue b/jnpf-app/pages/index/portal.vue
index 92801ace..854368cf 100644
--- a/jnpf-app/pages/index/portal.vue
+++ b/jnpf-app/pages/index/portal.vue
@@ -166,6 +166,29 @@
v-if="item.show" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 采购收货凭证
+
+
+
+
+
+
+
+
+
diff --git a/jnpf-app/pages/scm/form/purchaseReceiptVoucher/index.vue b/jnpf-app/pages/scm/form/purchaseReceiptVoucher/index.vue
new file mode 100644
index 00000000..855345a7
--- /dev/null
+++ b/jnpf-app/pages/scm/form/purchaseReceiptVoucher/index.vue
@@ -0,0 +1,1236 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ({{i+1}})
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{dataForm.voucherproductList.length==0?"添加":"添加"}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ({{i+1}})
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{dataForm.vouchervehicleList.length==0?"添加":"添加"}}
+
+
+
+
+
+ 更多
+
+ 确定
+ 取消
+
+
+
+
+
+
+
+
+
+
diff --git a/jnpf-app/pages/scm/index/purchaseReceiptVoucher/index.vue b/jnpf-app/pages/scm/index/purchaseReceiptVoucher/index.vue
new file mode 100644
index 00000000..c75a0a65
--- /dev/null
+++ b/jnpf-app/pages/scm/index/purchaseReceiptVoucher/index.vue
@@ -0,0 +1,446 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 重置
+ 检索
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{column.label}}:
+ {{item[column.prop]}}
+
+
+ {{column.label}}:
+ {{toThousands(item[column.prop],column)}}
+ {{item[column.prop]}}
+
+
+
+
+
+
+
+
+
+
+ {{it.text}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/jnpf-java-boot/jnpf-admin/src/main/resources/mapper/scm/BusinessOrderMapper.xml b/jnpf-java-boot/jnpf-admin/src/main/resources/mapper/scm/BusinessOrderMapper.xml
index 1e17908c..2e05a3f9 100644
--- a/jnpf-java-boot/jnpf-admin/src/main/resources/mapper/scm/BusinessOrderMapper.xml
+++ b/jnpf-java-boot/jnpf-admin/src/main/resources/mapper/scm/BusinessOrderMapper.xml
@@ -661,7 +661,8 @@
a.tare_weight as tareWeight,
a.buckle_weight as buckleWeight,
IFNULL(c.purchase_amount,0) as purchaseAmount,
- IFNULL(c.sale_amount,0) as saleAmount
+ IFNULL(c.sale_amount,0) as saleAmount,
+ c.order_no as orderNo
FROM
`jg_voucher_product` a
RIGHT JOIN jg_voucher c ON a.voucher_id = c.id AND c.f_delete_mark IS NULL
diff --git a/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/impl/BusinessOrderServiceImpl.java b/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/impl/BusinessOrderServiceImpl.java
index 48e009e0..7155047d 100644
--- a/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/impl/BusinessOrderServiceImpl.java
+++ b/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/impl/BusinessOrderServiceImpl.java
@@ -887,7 +887,7 @@ public class BusinessOrderServiceImpl extends ServiceImpl orderByVoucherInfo(List voucherIds) {
List productWarehouseEntityList = businessOrderMapper.orderByVoucher(voucherIds);
- productWarehouseEntityList = productWarehouseEntityList.stream().collect(Collectors.toMap(s-> s.getId()+";"+s.getUnit(),a->a,(o1,o2) -> {
+ productWarehouseEntityList = productWarehouseEntityList.stream().collect(Collectors.toMap(s-> s.getId()+";"+s.getUnit()+";"+s.getOrderNo(),a->a,(o1,o2) -> {
o1.setNetWeight(o1.getNetWeight().add(o2.getNetWeight()));
o1.setGrossWeight(o1.getGrossWeight().add(o2.getGrossWeight()));
o1.setTareWeight(o1.getTareWeight().add(o2.getTareWeight()));
@@ -1109,9 +1109,9 @@ public class BusinessOrderServiceImpl extends ServiceImpl tableField140 = JsonUtil.getJsonToList(voucherForm.getVoucherVehicleList(),VoucherVehicleEntity.class);
for(VoucherVehicleEntity entitys : tableField140){
+ if (StringUtils.isNotEmpty(entitys.getVehicleNumber())){
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.lambda().eq(VehicleEntity::getVehicleNumber,entitys.getVehicleNumber());
+ queryWrapper.lambda().isNull(VehicleEntity::getDeleteMark);
+ VehicleEntity vehicleEntity = vehicleService.getOne(queryWrapper); //查询车牌号是否存在
+ if (ObjectUtil.isNotEmpty(vehicleEntity)){
+ entitys.setVehicleId(vehicleEntity.getId());//将车牌号ID赋值给子表
+ }else {
+ VehicleEntity vehicle = new VehicleEntity();
+ vehicle.setId(RandomUtil.uuId());
+ vehicle.setType("1");
+ vehicle.setVehicleNumber(entitys.getVehicleNumber());
+ vehicle.setPhoto(entity.getVehiclePictures());
+ vehicle.setStatus("1");
+ vehicle.setName(entitys.getDriverName());
+ vehicle.setMobile(entitys.getTelephone());
+ vehicleService.save(vehicle); //新增车辆到系统
+ entitys.setVehicleId(vehicle.getId()); //将车牌号ID赋值给子表
+ VehicleDriverEntity vehicleDriverEntity = new VehicleDriverEntity();
+ QueryWrapper queryWrapper1 = new QueryWrapper<>();
+ queryWrapper1.lambda().eq(DriverEntity::getName,entitys.getDriverName());
+ queryWrapper1.lambda().isNull(DriverEntity::getDeleteMark);
+ DriverEntity driverEntity = driverService.getOne(queryWrapper1); //查询司机
+ if (ObjectUtil.isNotEmpty(driverEntity)){
+ vehicleDriverEntity.setDriverId(driverEntity.getId()); //赋值司机ID
+ }
+ vehicleDriverEntity.setId(RandomUtil.uuId());
+ vehicleDriverEntity.setVehicleId(vehicle.getId());
+ vehicleDriverEntity.setName(entitys.getDriverName());
+ vehicleDriverEntity.setMobile(entitys.getTelephone());
+ vehicleDriverService.save(vehicleDriverEntity); //新增车辆和司机的关系表
+ }
+ }
entitys.setId(RandomUtil.uuId());
entitys.setVoucherId(entity.getId());
if(isSave){
@@ -731,29 +764,48 @@ public class VoucherServiceImpl extends ServiceImpl queryVoucherPopupInfo(VoucherPagination voucherPagination) {
- UserInfo userInfo=userProvider.get();
- OrganizeEntity organizeEntity = organizeService.getInfo(userInfo.getOrganizeId());
+ UserInfo userInfo = userProvider.get();
+ OrganizeEntity organizeEntity = organizeService.getInfo(userInfo.getOrganizeId());
List organizeJsonId = Arrays.stream(organizeEntity.getCompanyIdTree().split(",")).collect(Collectors.toList());
String organize = JSON.toJSONString(organizeJsonId);
- organize = organize.replace("[","");
- organize = organize.replace("]","");
- QueryWrapper queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("a.business_type",voucherPagination.getBusinessType());
- queryWrapper.eq("a.document_type",voucherPagination.getDocumentType());
- queryWrapper.eq("a.delivery_type","2");
- queryWrapper.eq("a.voucher_status","4");
+ organize = organize.replace("[", "");
+ organize = organize.replace("]", "");
+ QueryWrapper queryWrapper1 = new QueryWrapper<>();
+ queryWrapper1.eq("a.business_type",voucherPagination.getBusinessType());
+ queryWrapper1.eq("a.document_type",voucherPagination.getDocumentType());
+ queryWrapper1.eq("a.delivery_type","2");
+ queryWrapper1.eq("a.voucher_status","4");
if (StringUtils.isNotEmpty(voucherPagination.getKeyword())) {
- queryWrapper.and(wrapper -> wrapper.like("a.purchase_contract_no", voucherPagination.getKeyword())
+ queryWrapper1.and(wrapper -> wrapper.like("a.purchase_contract_no", voucherPagination.getKeyword())
.or().like("f.name", voucherPagination.getKeyword())
.or().like("a.voucher_code",voucherPagination.getKeyword()));
}
- queryWrapper.notIn(ObjectUtils.isNotEmpty(voucherPagination.getExcludeIdList()),"a.id",voucherPagination.getExcludeIdList());
- queryWrapper.in(ObjectUtils.isNotEmpty(voucherPagination.getProductIdList()),"c.product_id",voucherPagination.getProductIdList());
- queryWrapper.isNull("a.f_delete_mark");
-// queryWrapper.inSql("a.id", "SELECT f_process_id FROM flow_task WHERE f_status = '2'");//通过审核的订单
- queryWrapper.like("a.organize_json_id",organize);
+ queryWrapper1.notIn(ObjectUtils.isNotEmpty(voucherPagination.getExcludeIdList()),"a.id",voucherPagination.getExcludeIdList());
+ queryWrapper1.in(ObjectUtils.isNotEmpty(voucherPagination.getProductIdList()), "c.product_id", voucherPagination.getProductIdList());
+ queryWrapper1.isNull("a.f_delete_mark");
+ queryWrapper1.like("a.organize_json_id", organize);
+ queryWrapper1.eq(StringUtils.isNotEmpty(voucherPagination.getBusinessOrderId()),"a.business_order_id",voucherPagination.getBusinessOrderId());
+ IPage voucherEntityIPage = new Page<>();
Page page=new Page<>(voucherPagination.getCurrentPage(), voucherPagination.getPageSize());
- IPage voucherEntityIPage = voucherMapper.queryVoucherPopup(page,queryWrapper,voucherPagination.getBusinessType(),voucherPagination.getDocumentType());
+ voucherEntityIPage = voucherMapper.queryVoucherPopup(page, queryWrapper1,voucherPagination.getBusinessType(),voucherPagination.getDocumentType());
+ if (voucherEntityIPage.getTotal() == 0) {
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("a.business_type", voucherPagination.getBusinessType());
+ queryWrapper.eq("a.document_type", voucherPagination.getDocumentType());
+ queryWrapper.eq("a.delivery_type", "2");
+ queryWrapper.eq("a.voucher_status", "4");
+ if (StringUtils.isNotEmpty(voucherPagination.getKeyword())) {
+ queryWrapper.and(wrapper -> wrapper.like("a.purchase_contract_no", voucherPagination.getKeyword())
+ .or().like("f.name", voucherPagination.getKeyword())
+ .or().like("a.voucher_code", voucherPagination.getKeyword()));
+ }
+ queryWrapper.notIn(ObjectUtils.isNotEmpty(voucherPagination.getExcludeIdList()), "a.id", voucherPagination.getExcludeIdList());
+ queryWrapper.in(ObjectUtils.isNotEmpty(voucherPagination.getProductIdList()), "c.product_id", voucherPagination.getProductIdList());
+ queryWrapper.isNull("a.f_delete_mark");
+// queryWrapper.inSql("a.id", "SELECT f_process_id FROM flow_task WHERE f_status = '2'");//通过审核的订单
+ queryWrapper.like("a.organize_json_id", organize);
+ voucherEntityIPage = voucherMapper.queryVoucherPopup(page, queryWrapper, voucherPagination.getBusinessType(), voucherPagination.getDocumentType());
+ }
return voucherPagination.setData(voucherEntityIPage.getRecords(),voucherEntityIPage.getTotal());
}
diff --git a/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/entity/ProductWarehouseEntity.java b/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/entity/ProductWarehouseEntity.java
index 125a0115..54f404cd 100644
--- a/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/entity/ProductWarehouseEntity.java
+++ b/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/entity/ProductWarehouseEntity.java
@@ -309,6 +309,8 @@ public class ProductWarehouseEntity {
private BigDecimal saleAmount;
@TableField(exist = false)
private BigDecimal clearWeight;
+ @TableField(exist = false)
+ private String orderNo;
}
diff --git a/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/entity/VoucherVehicleEntity.java b/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/entity/VoucherVehicleEntity.java
index c6778871..ab0f9384 100644
--- a/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/entity/VoucherVehicleEntity.java
+++ b/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/entity/VoucherVehicleEntity.java
@@ -48,4 +48,6 @@ public class VoucherVehicleEntity {
private String organizeJsonId;
@TableField("F_TENANT_ID")
private String tenantId;
+ @TableField(exist = false)
+ private String vehicleNumber;
}
diff --git a/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/voucher/VoucherVehicleModel.java b/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/voucher/VoucherVehicleModel.java
index 564d4591..85dba654 100644
--- a/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/voucher/VoucherVehicleModel.java
+++ b/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/voucher/VoucherVehicleModel.java
@@ -30,4 +30,7 @@ public class VoucherVehicleModel {
/** 承运商 **/
@JSONField(name = "carrier")
private String carrier;
+ /** 车牌号 **/
+ @JSONField(name = "vehicleNumber")
+ private String vehicleNumber;
}
diff --git a/jnpf-java-boot/jnpf-web/src/views/scm/publicPopup/VoucherBox.vue b/jnpf-java-boot/jnpf-web/src/views/scm/publicPopup/VoucherBox.vue
index d9b186bb..79a8a12a 100644
--- a/jnpf-java-boot/jnpf-web/src/views/scm/publicPopup/VoucherBox.vue
+++ b/jnpf-java-boot/jnpf-web/src/views/scm/publicPopup/VoucherBox.vue
@@ -34,6 +34,8 @@
+
+
diff --git a/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/deliveryOrder/form.vue b/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/deliveryOrder/form.vue
index 9b48aa1d..76687691 100644
--- a/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/deliveryOrder/form.vue
+++ b/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/deliveryOrder/form.vue
@@ -586,7 +586,8 @@
-
+
@@ -1190,6 +1191,39 @@ export default {
this.initPurchaseData();
},
methods: {
+ getSummaries(param) {
+ const summaryField = ["saleNum", "grossWeight", "tareWeight", "buckleWeight", "netWeight", "deliveryNum", "taxCount", "notTaxCount"];
+ const { columns, data } = param;
+ const sums = [];
+ columns.forEach((column, index) => {
+ if (index === 0) {
+ sums[index] = '合计';
+ return;
+ }
+ if (!summaryField.includes(column.property)) {
+ sums[index] = '';
+ return;
+ }
+ const values = data.map(item => Number(item[column.property]));
+ if (!values.every(value => isNaN(value))) {
+ sums[index] = values.reduce((prev, curr) => {
+ const value = Number(curr);
+ if (!isNaN(value)) {
+ return this.jnpf.floatAdd(prev, curr);
+ } else {
+ return prev;
+ }
+ }, 0);
+ const thousandsField = [];
+ if (thousandsField.includes(column.property)) {
+ sums[index] = thousandsFormat(sums[index]);
+ }
+ } else {
+ sums[index] = '';
+ }
+ });
+ return sums;
+ },
//选择数据弹窗
choiceProduct() {
this.BomgoodsBoxVisible = true
diff --git a/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/purchaseOrder/form.vue b/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/purchaseOrder/form.vue
index a33f56b1..38624d71 100644
--- a/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/purchaseOrder/form.vue
+++ b/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/purchaseOrder/form.vue
@@ -817,7 +817,8 @@
-
+
@@ -866,10 +867,11 @@
@change="changeData('businessorderproductrelational-spec', scope.$index)"
placeholder="请输入"
:disabled="judgeWrite('businessorderproductrelationalList') || judgeWrite('businessorderproductrelationalList-spec')"
- clearable :style='{ "width": "100%" }' readonly>
+ clearable :style='{ "width": "100%" }'>
+
@@ -1560,6 +1562,39 @@ export default {
this.initPurchaseData();
},
methods: {
+ getSummaries(param) {
+ const summaryField = ["businessNum", "taxCount", "notTaxCount"];
+ const { columns, data } = param;
+ const sums = [];
+ columns.forEach((column, index) => {
+ if (index === 0) {
+ sums[index] = '合计';
+ return;
+ }
+ if (!summaryField.includes(column.property)) {
+ sums[index] = '';
+ return;
+ }
+ const values = data.map(item => Number(item[column.property]));
+ if (!values.every(value => isNaN(value))) {
+ sums[index] = values.reduce((prev, curr) => {
+ const value = Number(curr);
+ if (!isNaN(value)) {
+ return this.jnpf.floatAdd(prev, curr);
+ } else {
+ return prev;
+ }
+ }, 0);
+ const thousandsField = [];
+ if (thousandsField.includes(column.property)) {
+ sums[index] = thousandsFormat(sums[index]);
+ }
+ } else {
+ sums[index] = '';
+ }
+ });
+ return sums;
+ },
// 选择业务线清除表单
removeForm() {
if (this.dataForm.orderType == '3') {
diff --git a/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/receiptOrder/form.vue b/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/receiptOrder/form.vue
index c4af9432..56b37f90 100644
--- a/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/receiptOrder/form.vue
+++ b/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/receiptOrder/form.vue
@@ -746,7 +746,8 @@
-
+
@@ -958,7 +959,7 @@
+ prop="clearWeight" width="120">
{
+ if (index === 0) {
+ sums[index] = '合计';
+ return;
+ }
+ if (!summaryField.includes(column.property)) {
+ sums[index] = '';
+ return;
+ }
+ const values = data.map(item => Number(item[column.property]));
+ if (!values.every(value => isNaN(value))) {
+ sums[index] = values.reduce((prev, curr) => {
+ const value = Number(curr);
+ if (!isNaN(value)) {
+ return this.jnpf.floatAdd(prev, curr);
+ } else {
+ return prev;
+ }
+ }, 0);
+ const thousandsField = [];
+ if (thousandsField.includes(column.property)) {
+ sums[index] = thousandsFormat(sums[index]);
+ }
+ } else {
+ sums[index] = '';
+ }
+ });
+ return sums;
+ },
//选择数据弹窗
choiceProduct() {
this.BomgoodsBoxVisible = true;
@@ -1689,7 +1723,7 @@ export default {
}
let businessType = '1';
let documentType = '1';
- let businessId = '';
+ let businessId = this.dataForm.businessId;
let type = '1'; //采购收货订单获取凭证列表和关联的商品
this.$nextTick(() => {
this.$refs.VoucherBox.init(
diff --git a/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/returnCargoOrder/form.vue b/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/returnCargoOrder/form.vue
index 65e9bba5..a1538c93 100644
--- a/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/returnCargoOrder/form.vue
+++ b/jnpf-java-boot/jnpf-web/src/views/scm/purchaseCenter/returnCargoOrder/form.vue
@@ -610,7 +610,8 @@
-
+
@@ -1245,6 +1246,39 @@ export default {
this.initPurchaseData();
},
methods: {
+ getSummaries(param) {
+ const summaryField = ["saleNum", "grossWeight", "tareWeight", "buckleWeight", "netWeight", "deliveryNum", "taxCount", "notTaxCount"];
+ const { columns, data } = param;
+ const sums = [];
+ columns.forEach((column, index) => {
+ if (index === 0) {
+ sums[index] = '合计';
+ return;
+ }
+ if (!summaryField.includes(column.property)) {
+ sums[index] = '';
+ return;
+ }
+ const values = data.map(item => Number(item[column.property]));
+ if (!values.every(value => isNaN(value))) {
+ sums[index] = values.reduce((prev, curr) => {
+ const value = Number(curr);
+ if (!isNaN(value)) {
+ return this.jnpf.floatAdd(prev, curr);
+ } else {
+ return prev;
+ }
+ }, 0);
+ const thousandsField = [];
+ if (thousandsField.includes(column.property)) {
+ sums[index] = thousandsFormat(sums[index]);
+ }
+ } else {
+ sums[index] = '';
+ }
+ });
+ return sums;
+ },
//根据输入退货单价计算总价和不含税单价、不含税总价
priceCount(row) {
if (row.deliveryNum) {
diff --git a/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/deliveryOrder/form.vue b/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/deliveryOrder/form.vue
index 9ae9fe8a..7a612873 100644
--- a/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/deliveryOrder/form.vue
+++ b/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/deliveryOrder/form.vue
@@ -584,7 +584,8 @@
-
+
@@ -733,7 +734,7 @@
+ prop="clearWeight" width="150">
*净重
@@ -1230,6 +1231,39 @@ export default {
this.initPurchaseData();
},
methods: {
+ getSummaries(param) {
+ const summaryField = ["saleNum", "grossWeight", "tareWeight", "buckleWeight", "netWeight", "clearWeight", "deliveryNum", "taxCount", "notTaxCount"];
+ const { columns, data } = param;
+ const sums = [];
+ columns.forEach((column, index) => {
+ if (index === 0) {
+ sums[index] = '合计';
+ return;
+ }
+ if (!summaryField.includes(column.property)) {
+ sums[index] = '';
+ return;
+ }
+ const values = data.map(item => Number(item[column.property]));
+ if (!values.every(value => isNaN(value))) {
+ sums[index] = values.reduce((prev, curr) => {
+ const value = Number(curr);
+ if (!isNaN(value)) {
+ return this.jnpf.floatAdd(prev, curr);
+ } else {
+ return prev;
+ }
+ }, 0);
+ const thousandsField = [];
+ if (thousandsField.includes(column.property)) {
+ sums[index] = thousandsFormat(sums[index]);
+ }
+ } else {
+ sums[index] = '';
+ }
+ });
+ return sums;
+ },
batchNoMethod(val, val2, idx) {
if (this.inventoryIdList.indexOf(val2.id) != -1) {
this.dataForm.deliveryProductRelationList[idx].cargoId = ''
diff --git a/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/receiptOrder/form.vue b/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/receiptOrder/form.vue
index 5e642819..3d3a4f6e 100644
--- a/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/receiptOrder/form.vue
+++ b/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/receiptOrder/form.vue
@@ -572,7 +572,8 @@
-
+
@@ -1180,6 +1181,39 @@ export default {
this.initPurchaseData();
},
methods: {
+ getSummaries(param) {
+ const summaryField = ["saleNum", "grossWeight", "tareWeight", "buckleWeight", "netWeight", "deliveryNum", "taxCount", "notTaxCount"];
+ const { columns, data } = param;
+ const sums = [];
+ columns.forEach((column, index) => {
+ if (index === 0) {
+ sums[index] = '合计';
+ return;
+ }
+ if (!summaryField.includes(column.property)) {
+ sums[index] = '';
+ return;
+ }
+ const values = data.map(item => Number(item[column.property]));
+ if (!values.every(value => isNaN(value))) {
+ sums[index] = values.reduce((prev, curr) => {
+ const value = Number(curr);
+ if (!isNaN(value)) {
+ return this.jnpf.floatAdd(prev, curr);
+ } else {
+ return prev;
+ }
+ }, 0);
+ const thousandsField = [];
+ if (thousandsField.includes(column.property)) {
+ sums[index] = thousandsFormat(sums[index]);
+ }
+ } else {
+ sums[index] = '';
+ }
+ });
+ return sums;
+ },
//选择数据弹窗
choiceProduct() {
this.BomgoodsBoxVisible = true
diff --git a/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/returnCargoOrder/form.vue b/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/returnCargoOrder/form.vue
index 753a48e4..a2c1a29f 100644
--- a/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/returnCargoOrder/form.vue
+++ b/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/returnCargoOrder/form.vue
@@ -592,7 +592,8 @@
-
+
@@ -1204,6 +1205,39 @@ export default {
this.initPurchaseData();
},
methods: {
+ getSummaries(param) {
+ const summaryField = ["saleNum", "grossWeight", "tareWeight", "buckleWeight", "netWeight", "deliveryNum", "taxCount", "notTaxCount"];
+ const { columns, data } = param;
+ const sums = [];
+ columns.forEach((column, index) => {
+ if (index === 0) {
+ sums[index] = '合计';
+ return;
+ }
+ if (!summaryField.includes(column.property)) {
+ sums[index] = '';
+ return;
+ }
+ const values = data.map(item => Number(item[column.property]));
+ if (!values.every(value => isNaN(value))) {
+ sums[index] = values.reduce((prev, curr) => {
+ const value = Number(curr);
+ if (!isNaN(value)) {
+ return this.jnpf.floatAdd(prev, curr);
+ } else {
+ return prev;
+ }
+ }, 0);
+ const thousandsField = [];
+ if (thousandsField.includes(column.property)) {
+ sums[index] = thousandsFormat(sums[index]);
+ }
+ } else {
+ sums[index] = '';
+ }
+ });
+ return sums;
+ },
//根据输入退货单价计算总价和不含税单价、不含税总价
priceCount(row) {
if (row.deliveryNum) {
diff --git a/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/saleOrder/form.vue b/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/saleOrder/form.vue
index e2ee8ae3..8f7f5475 100644
--- a/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/saleOrder/form.vue
+++ b/jnpf-java-boot/jnpf-web/src/views/scm/saleCenter/saleOrder/form.vue
@@ -754,7 +754,8 @@
-
+
@@ -1469,6 +1470,39 @@ export default {
this.initPurchaseData();
},
methods: {
+ getSummaries(param) {
+ const summaryField = ["businessNum", "taxCount", "notTaxCount"];
+ const { columns, data } = param;
+ const sums = [];
+ columns.forEach((column, index) => {
+ if (index === 0) {
+ sums[index] = '合计';
+ return;
+ }
+ if (!summaryField.includes(column.property)) {
+ sums[index] = '';
+ return;
+ }
+ const values = data.map(item => Number(item[column.property]));
+ if (!values.every(value => isNaN(value))) {
+ sums[index] = values.reduce((prev, curr) => {
+ const value = Number(curr);
+ if (!isNaN(value)) {
+ return this.jnpf.floatAdd(prev, curr);
+ } else {
+ return prev;
+ }
+ }, 0);
+ const thousandsField = [];
+ if (thousandsField.includes(column.property)) {
+ sums[index] = thousandsFormat(sums[index]);
+ }
+ } else {
+ sums[index] = '';
+ }
+ });
+ return sums;
+ },
// 选择业务线清除表单
removeForm() {
if (this.dataForm.orderType == '3') {