|
@@ -164,6 +164,11 @@
|
|
|
{{ moneyFormat(computeMoney(index, props.$index), 2) }}
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
+ <el-table-column label="操作" align="center" fixed="right" width="60">
|
|
|
+ <template #default="props">
|
|
|
+ <el-button type="danger" @click="clickDeletePackingFittings(index, props.$index)" text>删除</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
</el-table>
|
|
|
</div>
|
|
|
</template>
|
|
@@ -527,6 +532,85 @@ const computeMoney = (index, indexSKU) => {
|
|
|
}
|
|
|
return money;
|
|
|
};
|
|
|
+const clickDeletePackingFittings = (index, indexTwo) => {
|
|
|
+ formData.data.orderSkuList[index].orderSkuBomList.splice(indexTwo, 1);
|
|
|
+ calculatedAmount();
|
|
|
+};
|
|
|
+const calculatedAmount = () => {
|
|
|
+ let productTotalAmount = 0;
|
|
|
+ let customProcessingFee = 0;
|
|
|
+ let lssueFee = 0;
|
|
|
+ let deliveryMaterialsFee = 0;
|
|
|
+ let packingLabor = 0;
|
|
|
+ let managementFee = 0;
|
|
|
+ let packagingMaterialCost = 0;
|
|
|
+ let totalAmount = 0;
|
|
|
+ if (formData.data.orderSkuList && formData.data.orderSkuList.length > 0) {
|
|
|
+ for (let i = 0; i < formData.data.orderSkuList.length; i++) {
|
|
|
+ if (formData.data.orderSkuList[i].quantity) {
|
|
|
+ if (formData.data.orderSkuList[i].customProcessingFee) {
|
|
|
+ customProcessingFee = Number(
|
|
|
+ Math.round((customProcessingFee + formData.data.orderSkuList[i].customProcessingFee * formData.data.orderSkuList[i].quantity) * 100) / 100
|
|
|
+ );
|
|
|
+ }
|
|
|
+ if (formData.data.orderSkuList[i].lssueFee) {
|
|
|
+ lssueFee = Number(Math.round((lssueFee + formData.data.orderSkuList[i].lssueFee * formData.data.orderSkuList[i].quantity) * 100) / 100);
|
|
|
+ }
|
|
|
+ if (formData.data.orderSkuList[i].deliveryMaterialsFee) {
|
|
|
+ deliveryMaterialsFee = Number(
|
|
|
+ Math.round((deliveryMaterialsFee + formData.data.orderSkuList[i].deliveryMaterialsFee * formData.data.orderSkuList[i].quantity) * 100) / 100
|
|
|
+ );
|
|
|
+ }
|
|
|
+ if (formData.data.orderSkuList[i].packingLabor) {
|
|
|
+ packingLabor = Number(Math.round((packingLabor + formData.data.orderSkuList[i].packingLabor * formData.data.orderSkuList[i].quantity) * 100) / 100);
|
|
|
+ }
|
|
|
+ if (formData.data.orderSkuList[i].managementFee) {
|
|
|
+ managementFee = Number(
|
|
|
+ Math.round((managementFee + formData.data.orderSkuList[i].managementFee * formData.data.orderSkuList[i].quantity) * 100) / 100
|
|
|
+ );
|
|
|
+ }
|
|
|
+ if (formData.data.orderSkuList[i].unitPrice) {
|
|
|
+ productTotalAmount = Number(
|
|
|
+ Math.round((productTotalAmount + formData.data.orderSkuList[i].unitPrice * formData.data.orderSkuList[i].quantity) * 100) / 100
|
|
|
+ );
|
|
|
+ }
|
|
|
+ let money = 0;
|
|
|
+ if (formData.data.orderSkuList[i].orderSkuBomList && formData.data.orderSkuList[i].orderSkuBomList.length > 0) {
|
|
|
+ for (let j = 0; j < formData.data.orderSkuList[i].orderSkuBomList.length; j++) {
|
|
|
+ if (formData.data.orderSkuList[i].orderSkuBomList[j].quantity && formData.data.orderSkuList[i].orderSkuBomList[j].unitPrice) {
|
|
|
+ packagingMaterialCost = Number(
|
|
|
+ Math.round(
|
|
|
+ (packagingMaterialCost +
|
|
|
+ formData.data.orderSkuList[i].orderSkuBomList[j].quantity *
|
|
|
+ formData.data.orderSkuList[i].orderSkuBomList[j].unitPrice *
|
|
|
+ formData.data.orderSkuList[i].quantity) *
|
|
|
+ 100
|
|
|
+ ) / 100
|
|
|
+ );
|
|
|
+ money = Number(
|
|
|
+ Math.round(
|
|
|
+ (money + formData.data.orderSkuList[i].orderSkuBomList[j].quantity * formData.data.orderSkuList[i].orderSkuBomList[j].unitPrice) * 100
|
|
|
+ ) / 100
|
|
|
+ );
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ formData.data.orderSkuList[i].packagingMaterialCost = money;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ formData.data.productTotalAmount = productTotalAmount;
|
|
|
+ formData.data.customProcessingFee = customProcessingFee;
|
|
|
+ formData.data.lssueFee = lssueFee;
|
|
|
+ formData.data.deliveryMaterialsFee = deliveryMaterialsFee;
|
|
|
+ formData.data.packingLabor = packingLabor;
|
|
|
+ formData.data.managementFee = managementFee;
|
|
|
+ formData.data.packagingMaterialCost = packagingMaterialCost;
|
|
|
+ totalAmount = Number(
|
|
|
+ Math.round((productTotalAmount + customProcessingFee + lssueFee + deliveryMaterialsFee + packingLabor + managementFee + packagingMaterialCost) * 100) / 100
|
|
|
+ );
|
|
|
+ formData.data.totalAmount = totalAmount;
|
|
|
+};
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|