| | |
| | | <el-table-column align="center" label="序号" type="index" width="60" /> |
| | | <el-table-column label="销售订单" prop="salesContractNo" show-overflow-tooltip /> |
| | | <el-table-column label="发货订单号" prop="shippingNo" show-overflow-tooltip /> |
| | | <el-table-column label="产品名称" prop="productCategory" show-overflow-tooltip /> |
| | | <el-table-column label="图纸编号" prop="specificationModel" show-overflow-tooltip /> |
| | | <el-table-column label="客户名称" prop="customerName" show-overflow-tooltip /> |
| | | <el-table-column label="发货进度" align="center" width="150"> |
| | | <template #default="scope"> |
| | |
| | | <span class="label">发货订单号</span> |
| | | <span class="value">{{ currentShippingOrder.shippingNo || '--' }}</span> |
| | | </div> |
| | | <div class="info-item"> |
| | | <span class="label">产品名称</span> |
| | | <span class="value">{{ currentShippingOrder.productCategory || '--' }}</span> |
| | | </div> |
| | | <div class="info-item"> |
| | | <span class="label">图纸编号</span> |
| | | <span class="value">{{ currentShippingOrder.specificationModel || '--' }}</span> |
| | | </div> |
| | | <el-divider /> |
| | | <div class="quantity-summary"> |
| | | <div class="summary-item"> |
| | |
| | | </div> |
| | | <div class="summary-item"> |
| | | <div class="summary-label">已退货数量</div> |
| | | <div class="summary-value returned">{{ currentShippingOrder.returnedQuantity || 0 }}</div> |
| | | <div class="summary-value returned">{{ currentShippingOrder.returnTotal || 0 }}</div> |
| | | </div> |
| | | <div class="summary-item"> |
| | | <div class="summary-label">待发货数量</div> |
| | |
| | | </div> |
| | | <div class="info-row"> |
| | | <span class="info-label">退货数量</span> |
| | | <span class="info-value returned">{{ record.returnNum || 0 }}</span> |
| | | <span class="info-value returned">{{ record.returnTotal || 0 }}</span> |
| | | </div> |
| | | <div class="info-row" v-if="record.type === '货车'"> |
| | | <span class="info-label">车牌号</span> |
| | |
| | | /> |
| | | </div> |
| | | </div> |
| | | <div class="info-row"> |
| | | <span class="info-label">库位</span> |
| | | <span class="info-value">{{ record.stockLocation || '--' }}</span> |
| | | </div> |
| | | <div class="record-actions" v-if="canRevokeShipping(record)"> |
| | | <el-button |
| | | type="danger" |
| | |
| | | </el-row> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="24"> |
| | | <el-form-item label="库位" prop="stockLocation"> |
| | | <el-input v-model="shippingForm.stockLocation" placeholder="请输入库位" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="24"> |
| | | <el-form-item label="发货日期" prop="shippingDate"> |
| | | <el-date-picker |
| | | v-model="shippingForm.shippingDate" |
| | | value-format="YYYY-MM-DD HH:mm:ss" |
| | | type="datetime" |
| | | <el-date-picker |
| | | v-model="shippingForm.shippingDate" |
| | | value-format="YYYY-MM-DD HH:mm:ss" |
| | | type="datetime" |
| | | placeholder="请选择" |
| | | style="width: 100%" |
| | | /> |
| | |
| | | addShippingInfoDetail, |
| | | updateShippingInfoDetail, |
| | | delShippingInfoDetail, |
| | | getShippingInfoById, |
| | | } from "@/api/salesManagement/deliveryLedger.js"; |
| | | import { delLedgerFile } from "@/api/salesManagement/salesLedger.js"; |
| | | |
| | |
| | | shippingCarNumber: "", |
| | | expressCompany: "", |
| | | expressNumber: "", |
| | | stockLocation: "", |
| | | }); |
| | | const shippingRules = { |
| | | shippingNum: [{ required: true, message: "请输入发货数量", trigger: "blur" }], |
| | | stockLocation: [{ required: true, message: "请输入库位", trigger: "blur" }], |
| | | type: [{ required: true, message: "请选择发货类型", trigger: "change" }], |
| | | shippingDate: [{ required: true, message: "请选择发货日期", trigger: "change" }], |
| | | shippingCarNumber: [ |
| | |
| | | shippingCarNumber: "", |
| | | expressCompany: "", |
| | | expressNumber: "", |
| | | stockLocation: "", |
| | | }; |
| | | shippingFileList.value = []; |
| | | |
| | |
| | | shippingCarNumber: "", |
| | | expressCompany: "", |
| | | expressNumber: "", |
| | | stockLocation: "", |
| | | }; |
| | | shippingFileList.value = []; |
| | | }; |
| | |
| | | shippingCarNumber: "", |
| | | expressCompany: "", |
| | | expressNumber: "", |
| | | stockLocation: "", |
| | | }; |
| | | shippingFileList.value = []; |
| | | }; |
| | |
| | | shippingNum: shippingForm.value.shippingNum, |
| | | type: shippingForm.value.type, |
| | | shippingDate: shippingForm.value.shippingDate, |
| | | stockLocation: shippingForm.value.stockLocation, |
| | | shippingCarNumber: shippingForm.value.type === "货车" ? shippingForm.value.shippingCarNumber : "", |
| | | expressCompany: shippingForm.value.type === "快递" ? shippingForm.value.expressCompany : "", |
| | | expressNumber: shippingForm.value.type === "快递" ? shippingForm.value.expressNumber : "", |
| | |
| | | addShippingInfoDetail(payload).then((res) => { |
| | | proxy.$modal.msgSuccess("发货成功"); |
| | | hideAddShippingForm(); |
| | | getShippingInfoById(currentShippingOrder.value.id).then((infoRes) => { |
| | | if (infoRes.code === 200) { |
| | | currentShippingOrder.value = infoRes.data; |
| | | } |
| | | }); |
| | | loadShippingRecords(currentShippingOrder.value.id); |
| | | getList(); |
| | | }); |