Commit ed6e6788 authored by liuzeheng's avatar liuzeheng

二期16、19 问题

parent c70f7984
...@@ -110,6 +110,7 @@ ...@@ -110,6 +110,7 @@
<el-button type="primary" size="small" :disabled="scope.row.abnormalDealStatus === 1" @click="()=>updateStatus('single', scope.row)" style="margin-top: 5px;">{{$t('更新状态')}}</el-button> <el-button type="primary" size="small" :disabled="scope.row.abnormalDealStatus === 1" @click="()=>updateStatus('single', scope.row)" style="margin-top: 5px;">{{$t('更新状态')}}</el-button>
<el-button type="primary" size="small" style="margin-top: 5px;" :disabled="shipmentObj.clStatus==132|| (shipmentObj.clearanceInfo == null) || (shipmentObj.clearanceInfo&&shipmentObj.clearanceInfo.clearanceOrderList.findIndex(ff=>ff.orderId == scope.row.orderId) == -1)" @click="()=>cancleClear(scope.row)">{{$t('撤销清关申请')}}</el-button> <el-button type="primary" size="small" style="margin-top: 5px;" :disabled="shipmentObj.clStatus==132|| (shipmentObj.clearanceInfo == null) || (shipmentObj.clearanceInfo&&shipmentObj.clearanceInfo.clearanceOrderList.findIndex(ff=>ff.orderId == scope.row.orderId) == -1)" @click="()=>cancleClear(scope.row)">{{$t('撤销清关申请')}}</el-button>
<!-- <el-button type="danger" style="margin-top: 5px;" size="small" @click="openError(scope.row)">{{$t('异常')}}</el-button> -->
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -218,7 +219,18 @@ ...@@ -218,7 +219,18 @@
<template v-if="dialogConfig.type === 'cancelClear'"> <template v-if="dialogConfig.type === 'cancelClear'">
<cancelClear v-if="dialogConfig.visible" @closeDialog="closeDialog" :shipmentObj="shipmentObj" :cancelClearInfo="cancelClearInfo" /> <cancelClear v-if="dialogConfig.visible" @closeDialog="closeDialog" :shipmentObj="shipmentObj" :cancelClearInfo="cancelClearInfo" />
</template> </template>
<template v-if="dialogConfig.type === 'unloadingError'">
<unloadingError v-if="dialogConfig.visible" @closeDialog="closeDialog" :shipmentObj="shipmentObj" :unloadingError="unloadingError" />
</template>
</el-dialog> </el-dialog>
<!-- 对话框 -->
<el-dialog custom-class="shipping-dialog" :title="$t('异常')" :visible.sync="dialogVisible" width="600px" :modal-append-to-body=false append-to-body>
<unloadingError v-if="dialogVisible" @closeDialog="closeDialog1" v-bind="$attrs" :currRow="currRow" />
</el-dialog>
</div> </div>
</template> </template>
...@@ -251,6 +263,7 @@ import updateArrival from "./updateArrival.vue"; ...@@ -251,6 +263,7 @@ import updateArrival from "./updateArrival.vue";
import updateClear from "./updateClear.vue"; import updateClear from "./updateClear.vue";
import cancelClear from "./cancelClear.vue"; import cancelClear from "./cancelClear.vue";
import { listUser } from "@/api/system/user"; import { listUser } from "@/api/system/user";
import unloadingError from "./shippingAir/nodePage/unloading/openError.vue";
export default { export default {
name: "EcwBoxBoxQueryAir", name: "EcwBoxBoxQueryAir",
...@@ -264,7 +277,8 @@ export default { ...@@ -264,7 +277,8 @@ export default {
updateError, updateError,
updateArrival, updateArrival,
updateClear, updateClear,
cancelClear cancelClear,
unloadingError
}, },
created() { created() {
this.transportTypes = this.getDictDatas( this.transportTypes = this.getDictDatas(
...@@ -315,7 +329,21 @@ export default { ...@@ -315,7 +329,21 @@ export default {
title: "", title: "",
width: "600px", width: "600px",
type: "", type: "",
dialogVisible: false,
fullscreen: false,
}, },
// // 弹窗配置
// dialogConfig: {
// title: "",
// dialogVisible: false,
// width: "30%",
// type: "",
// fullscreen: false,
// },
dialogVisible: false,
// 运输方式 // 运输方式
transportTypes: [], transportTypes: [],
// 费用详情 // 费用详情
...@@ -391,6 +419,20 @@ export default { ...@@ -391,6 +419,20 @@ export default {
if (row.abnormalDealStatus === 1) return false; if (row.abnormalDealStatus === 1) return false;
return true; return true;
}, },
/* 关闭弹窗 */
closeDialog1(type) {
this.dialogVisible = false;
// if (type === "query") this.getLoadGoodsList();
},
/* 打开异常 */
openError(row) {
console.log(row)
this.currRow = row;
this.dialogVisible = true;
},
/* 全选 */ /* 全选 */
handleSelectionChange(selected) { handleSelectionChange(selected) {
this.selectedRows = selected; this.selectedRows = selected;
......
...@@ -4,12 +4,12 @@ ...@@ -4,12 +4,12 @@
<el-form-item :label="$t('代理商AGENT')"> <el-form-item :label="$t('代理商AGENT')">
<supplierSelect v-model="subMaterialObj.agentId" :areaType="1" :placeholder="$t('请选择供应商')" :allSupplier="this.$attrs.allSupplier" :disabled="agentFlag" @change="getSup" /> <supplierSelect v-model="subMaterialObj.agentId" :areaType="1" :placeholder="$t('请选择供应商')" :allSupplier="this.$attrs.allSupplier" :disabled="agentFlag" @change="getSup" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('提单号M/BL NO.')" class="two-element"> <el-form-item :label="$t('提单号AWB NO.')" class="two-element">
<el-input v-model="subMaterialObj.blMblNo" :placeholder="$t('请输入提单号')"></el-input> <el-input v-model="subMaterialObj.blMblNo" :placeholder="$t('请输入提单号')"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="SO NO."> <!-- <el-form-item label="SO NO.">
<el-input v-model="subMaterialObj.soNo" :placeholder="$t('请输入SO NO')"></el-input> <el-input v-model="subMaterialObj.soNo" :placeholder="$t('请输入SO NO')"></el-input>
</el-form-item> </el-form-item> -->
<el-form-item :label="$t('起运港')"> <el-form-item :label="$t('起运港')">
<dockSelect v-model="subMaterialObj.startPortId" :placeholder="$t('请选择起运港')" :allDocks="this.$attrs.allDocks" /> <dockSelect v-model="subMaterialObj.startPortId" :placeholder="$t('请选择起运港')" :allDocks="this.$attrs.allDocks" />
</el-form-item> </el-form-item>
...@@ -52,11 +52,11 @@ ...@@ -52,11 +52,11 @@
<el-form-item :label="$t('柜型')"> <el-form-item :label="$t('柜型')">
{{cabinetType}} {{cabinetType}}
</el-form-item> --> </el-form-item> -->
<el-form-item :label="$t('出单方式')"> <!-- <el-form-item :label="$t('出单方式')">
<el-radio-group v-model="subMaterialObj.issueType"> <el-radio-group v-model="subMaterialObj.issueType">
<el-radio v-for="item in method" :key="item.value" :label="item.value">{{item.label}}</el-radio> <el-radio v-for="item in method" :key="item.value" :label="item.value">{{item.label}}</el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item> -->
<el-form-item :label="$t('备注')"> <el-form-item :label="$t('备注')">
<el-input v-model="subMaterialObj.remarks" type="textarea" rows="2" :placeholder="$t('请输入备注')"></el-input> <el-input v-model="subMaterialObj.remarks" type="textarea" rows="2" :placeholder="$t('请输入备注')"></el-input>
</el-form-item> </el-form-item>
...@@ -145,6 +145,8 @@ export default { ...@@ -145,6 +145,8 @@ export default {
this.$set(this.subMaterialObj,'destPortId',this.shipmentObj.bookAirInfo?.destPortId||undefined) this.$set(this.subMaterialObj,'destPortId',this.shipmentObj.bookAirInfo?.destPortId||undefined)
this.$set(this.subMaterialObj,'kgs',this.shipmentObj.customsInfo?.dcGoodsWgt||undefined) this.$set(this.subMaterialObj,'kgs',this.shipmentObj.customsInfo?.dcGoodsWgt||undefined)
this.$set(this.subMaterialObj,'containerSealNo',(this.shipmentObj.trailerInfo?.tlContainerNo||'')+'/'+(this.shipmentObj.trailerInfo?.tlStripSeal||'/')) this.$set(this.subMaterialObj,'containerSealNo',(this.shipmentObj.trailerInfo?.tlContainerNo||'')+'/'+(this.shipmentObj.trailerInfo?.tlStripSeal||'/'))
this.subMaterialObj.containerSealNo = this.subMaterialObj.containerSealNo.replace('//','') this.subMaterialObj.containerSealNo = this.subMaterialObj.containerSealNo.replace('//','')
if(this.subMaterialObj.agentId) this.getSup(this.subMaterialObj.agentId) if(this.subMaterialObj.agentId) this.getSup(this.subMaterialObj.agentId)
} }
...@@ -192,9 +194,10 @@ export default { ...@@ -192,9 +194,10 @@ export default {
this.$emit("closeDialog", type); this.$emit("closeDialog", type);
}, },
download() { download() {
getBoxLadingBillPdf({shipmentId: this.shipmentObj.id}).then(res=>{ console.log(this.shipmentObj)
getBoxLadingBillPdf({shipmentId: this.shipmentObj.id,type:2}).then(res=>{
let blob = new Blob([res], {type: "application/vnd.ms-excel"}) let blob = new Blob([res], {type: "application/vnd.ms-excel"})
FileSaver.saveAs(blob, this.$t('提单确认件.xlsx')); FileSaver.saveAs(blob, this.$t(this.shipmentObj.selfNo+"-"+this.subMaterialObj.blMblNo+"-"+'提单补料.xlsx'));
}) })
} }
}, },
......
<template>
<div>
<el-form ref="errorForm" :model="errorObj" label-width="100px" :rules="rules">
<el-form-item :label="$t('异常')" prop="exceptionType">
<el-radio-group v-model="errorObj.exceptionType">
<el-radio class="exception-list" v-for="item in this.getDictDatas(DICT_TYPE.BOX_SHIPPING_UNLOADING_ERROR)" :key="item.value" :label="item.value">{{$l(item, 'label')}}</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item :label="$t('品名')">
<el-select v-model="errorObj.productId" :placeholder="$t('请选择品名')">
<el-option v-for="(item, index) in goodsList" :key="index" :value="item.orderItemId" :label="$l(item, 'prodTitle')"></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('件数')" prop="productNum">
<el-input-number v-model="errorObj.productNum" controls-position="right" :min="1"></el-input-number>
</el-form-item>
<el-form-item :label="$t('异常详情-测试')">
<el-input v-model="errorObj.exceptionDetail" type="textarea" rows="2" :placeholder="$t('请输入异常详情')"></el-input>
</el-form-item>
</el-form>
<el-row class="operate-button">
<el-button type="success" @click="onSubmit">{{$t('提交')}}</el-button>
<el-button @click="$emit('closeDialog')">{{$t('关闭')}}</el-button>
</el-row>
</div>
</template>
<script>
import { createError } from "@/api/ecw/boxSea";
import { serviceMsg } from "../../utils";
import { debounce } from "throttle-debounce";
/**
* 卸柜异常
*/
export default {
name: "openError",
inheritAttrs: false,
data() {
const { currRow } = this.$attrs;
return {
// 校验
rules: {
exceptionType: [
{ required: true, message: this.$t("必填"), trigger: "change" },
],
productNum: [
{ required: true, message: this.$t("必填"), trigger: "change" },
],
},
// 异常对象
errorObj: {
productId: currRow.goodsList[0].orderItemId,
},
// 品名
goodsList: currRow.goodsList ?? [],
};
},
methods: {
/** 提交 */
onSubmit: debounce(340, function onSubmit() {
this.$refs["errorForm"].validate((valid) => {
if (valid) {
const { productNum = 0 } = this.errorObj;
const { currRow } = this.$attrs;
if (productNum > currRow.installNum) {
this.$message.error(this.$t("货物异常数量不能大于装柜数量"));
return;
}
console.log("打印:"+this.$attrs.currRow.orderId)
createError({
...this.errorObj,
orderId: this.$attrs.currRow.orderId,
shipmentId: this.$attrs.currRow.shipmentId,
}).then((res) => {
serviceMsg(res, this).then((res) => {
this.$emit("closeDialog", "query");
});
});
}
});
}),
},
};
</script>
<style lang="scss" scoped>
.exception-list{
margin-bottom: 20px;
}
</style>
...@@ -187,7 +187,7 @@ export default { ...@@ -187,7 +187,7 @@ export default {
this.$emit("closeDialog", type); this.$emit("closeDialog", type);
}, },
download() { download() {
getBoxLadingBillPdf({shipmentId: this.shipmentObj.id}).then(res=>{ getBoxLadingBillPdf({shipmentId: this.shipmentObj.id,type:1}).then(res=>{
let blob = new Blob([res], {type: "application/vnd.ms-excel"}) let blob = new Blob([res], {type: "application/vnd.ms-excel"})
FileSaver.saveAs(blob, this.$t('提单确认件.xlsx')); FileSaver.saveAs(blob, this.$t('提单确认件.xlsx'));
}) })
......
...@@ -230,13 +230,19 @@ ...@@ -230,13 +230,19 @@
<div v-if="row.warehouseInInfoVO && row.warehouseInInfoVO.isMultiSpecification">({{$t('多规格')}})</div> <div v-if="row.warehouseInInfoVO && row.warehouseInInfoVO.isMultiSpecification">({{$t('多规格')}})</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="unit" :label="$t('单位')" width="90px"> <el-table-column prop="unit" :label="$t('填单包装单位')" width="100px">
<template slot-scope="{row}"> <template slot-scope="{row}">
<dict-tag :type="DICT_TYPE.ECW_PACKAGING_TYPE" :value="row.unit" /> <dict-tag :type="DICT_TYPE.ECW_PACKAGING_TYPE" :value="row.unit" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="worth" :label="$t('货值')" width="120px"/> <el-table-column prop="worth" :label="$t('货值')" width="120px"/>
<el-table-column prop="warehouseType" :label="$t('入仓类型')" width="120px"/>
<el-table-column prop="specificationType" :label="$t('入仓包装单位')" width="120px"/>
<el-table-column prop="" :label="$t('材质')"> <el-table-column prop="" :label="$t('材质')">
<template slot-scope="{row}"> <template slot-scope="{row}">
<dict-tag :type="DICT_TYPE.ECW_PRODUCT_MATERIAL" :value="row.material" /> <dict-tag :type="DICT_TYPE.ECW_PRODUCT_MATERIAL" :value="row.material" />
...@@ -273,6 +279,9 @@ ...@@ -273,6 +279,9 @@
<dict-tag :type="DICT_TYPE.ECW_PAY_ADVANCE" :value="row.isPayAdvance" /> <dict-tag :type="DICT_TYPE.ECW_PAY_ADVANCE" :value="row.isPayAdvance" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="warehouseRecordRemark" :label="$t('入仓记录备注')" width="120px"/>
<el-table-column prop="" :label="$t('用途')"> <el-table-column prop="" :label="$t('用途')">
<template slot-scope="{row}"> <template slot-scope="{row}">
<div v-if="row.usageIds"> <div v-if="row.usageIds">
...@@ -284,6 +293,16 @@ ...@@ -284,6 +293,16 @@
<div v-else></div> <div v-else></div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="charging" :label="$t('收费模式')" width="120px">
<template slot-scope="{row}">
<template v-if="row.charging ==0">{{ $t('运费/清关费') }}</template>
<template v-if="row.charging ==1">{{ $t('全包价') }}</template>
</template>
</el-table-column>
<el-table-column prop="" :label="$t('成交单价')" width="220px"> <el-table-column prop="" :label="$t('成交单价')" width="220px">
<template slot-scope="{row}"> <template slot-scope="{row}">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment