|
@@ -0,0 +1,870 @@
|
|
|
+<template>
|
|
|
+ <!-- 新增运输作业页面 -->
|
|
|
+ <div id="contractDetails">
|
|
|
+ <page-title>运输预约</page-title>
|
|
|
+ <div style="text-align: center; font-size:20px; font-weight:bold; margin-top:15px; color:green">
|
|
|
+ <span>进口矿预约界面</span>
|
|
|
+ </div>
|
|
|
+ <div class="supplieUnit">
|
|
|
+ <el-form
|
|
|
+ :inline="true"
|
|
|
+ class="demo-form-inline"
|
|
|
+ label-width="80px"
|
|
|
+ >
|
|
|
+ <el-form-item label="发货单位:">
|
|
|
+ <el-autocomplete
|
|
|
+ class="inline-input"
|
|
|
+ v-model="stateSupplier"
|
|
|
+ :fetch-suggestions="querySearchSupplier"
|
|
|
+ placeholder="请输入发货单位名称"
|
|
|
+ :trigger-on-focus="false"
|
|
|
+ @select="handleSelectSupplier"
|
|
|
+ >
|
|
|
+ <template slot-scope="{ item }">
|
|
|
+ <div class="name">{{ item.supplierName }}</div>
|
|
|
+ </template>
|
|
|
+ </el-autocomplete>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </div>
|
|
|
+ <div class="material from">
|
|
|
+ <span class="text">物资:</span>
|
|
|
+ <el-input class="input" v-model="materialName" disabled> </el-input>
|
|
|
+ <el-button type="primary" @click="ondrawer(1)">浏览</el-button>
|
|
|
+ </div>
|
|
|
+ <div class="remark from">
|
|
|
+ <span class="text">船名:</span>
|
|
|
+ <el-input class="input" v-model="remark" @blur="onBlur" :disabled="true"> </el-input>
|
|
|
+ <span class="span"></span>
|
|
|
+ </div>
|
|
|
+ <div class="forwardingUnit from">
|
|
|
+ <span class="text">卸货点:</span>
|
|
|
+ <el-input class="input" v-model="unloadPointName" disabled> </el-input>
|
|
|
+ <el-button type="primary" @click="ondrawer(4)">浏览</el-button>
|
|
|
+ </div>
|
|
|
+ <div class="lineId from">
|
|
|
+ <span class="text">选择路线:</span>
|
|
|
+ <el-input class="input" v-model="lineName" disabled> </el-input>
|
|
|
+ <el-button type="primary" @click="ondrawer(5)">浏览</el-button>
|
|
|
+ </div>
|
|
|
+ <div class="lineId from">
|
|
|
+ <span class="text">采购订单号:</span>
|
|
|
+ <el-input class="input" v-model="purchaseOrderNo" disabled> </el-input>
|
|
|
+ <el-button type="primary" @click="ondrawer(6)">浏览</el-button>
|
|
|
+ </div>
|
|
|
+ <div class="contractTitle from">
|
|
|
+ <dil-form :formId="219" v-model="form1"></dil-form>
|
|
|
+ </div>
|
|
|
+ <div class="truckList1">
|
|
|
+ <div class="truckList from">
|
|
|
+ <span class="text">选择车辆:</span>
|
|
|
+ <el-button type="primary" @click="ondrawer(3)" class="truckBtn"
|
|
|
+ >浏览</el-button
|
|
|
+ >
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 物资和装卸点以及装卸货次序 -->
|
|
|
+ <div class="swtichTop">
|
|
|
+ <span class="titile">选择车辆前请选择物资单位!</span>
|
|
|
+ <div class="switch" v-if="selectionList.length > 0">
|
|
|
+ <el-tooltip placement="top">
|
|
|
+ <div slot="content">下面表格已有数据,不能进行更改!!!</div>
|
|
|
+ <el-switch
|
|
|
+ v-model="value"
|
|
|
+ active-text="件数"
|
|
|
+ inactive-text="重量"
|
|
|
+ disabled
|
|
|
+ >
|
|
|
+ </el-switch>
|
|
|
+ </el-tooltip>
|
|
|
+ </div>
|
|
|
+ <div class="switch" v-else>
|
|
|
+ <el-tooltip placement="top">
|
|
|
+ <div slot="content">当下面表格有数据之后,将不能进行更改!!!</div>
|
|
|
+ <el-switch v-model="value" active-text="件数" inactive-text="重量">
|
|
|
+ </el-switch>
|
|
|
+ </el-tooltip>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="truckListTable">
|
|
|
+ <el-table
|
|
|
+ :data="selectionList"
|
|
|
+ border
|
|
|
+ style="width: 100%"
|
|
|
+ highlight-current-row
|
|
|
+ >
|
|
|
+ <el-table-column type="index" width="50" label="序号" align="center">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ v-for="(item, i) in tableTop"
|
|
|
+ :key="i"
|
|
|
+ :prop="item.prop"
|
|
|
+ :label="item.label"
|
|
|
+ align="center"
|
|
|
+ show-overflow-tooltip
|
|
|
+ >
|
|
|
+ <template slot="scope" v-if="item.th_name !== '重量'">
|
|
|
+ <span>{{ item.label }}</span>
|
|
|
+ </template>
|
|
|
+ <!-- 插入输入框 -->
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <template v-if="item.slot">
|
|
|
+ <template v-if="item.prop == 'orderMaterialWeight'">
|
|
|
+ <el-input
|
|
|
+ style="width: 250px"
|
|
|
+ v-model.number="scope.row.orderMaterialWeight"
|
|
|
+ ></el-input>
|
|
|
+ </template>
|
|
|
+ <!-- 物资件数 -->
|
|
|
+ <template v-if="item.prop == 'orderMaterialNumber'">
|
|
|
+ <el-input
|
|
|
+ class="textinput"
|
|
|
+ v-model.number="scope.row.orderMaterialNumber"
|
|
|
+ @input="onInputNumber(scope.row.orderMaterialNumber)"
|
|
|
+ ></el-input>
|
|
|
+ </template>
|
|
|
+ </template>
|
|
|
+ <template v-else>
|
|
|
+ <span>{{ scope.row[item.prop] }}</span>
|
|
|
+ </template>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+
|
|
|
+ <el-table-column fixed="right" label="操作" width="100">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button type="text" size="small" @click="onClick(scope.$index)"
|
|
|
+ >删除</el-button
|
|
|
+ >
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ <!-- 模态窗口 -->
|
|
|
+ <el-drawer :visible.sync="drawer" :direction="direction" size="40%">
|
|
|
+ <div class="drawer_top">
|
|
|
+ <el-input
|
|
|
+ placeholder="请输入内容"
|
|
|
+ v-model="input"
|
|
|
+ style="margin-top: 10px; margin-right: 10px; width: 250px"
|
|
|
+ clearable
|
|
|
+ ></el-input>
|
|
|
+ <el-button type="primary" class="btn" @click="onclick">
|
|
|
+ <i class="el-icon-search"></i>查询
|
|
|
+ </el-button>
|
|
|
+ </div>
|
|
|
+ <div class="drawer_table1" v-show="onDrawerNumber == 1">
|
|
|
+ <dilTable
|
|
|
+ v-bind.sync="frist"
|
|
|
+ @radio-change="currentRadioChange1"
|
|
|
+ :isKuang="isKuang"
|
|
|
+ @func="func"
|
|
|
+ :isHeigth="isHeigth"
|
|
|
+ :shiyHeigth="shiyHeigth"
|
|
|
+ :drawer="drawer"
|
|
|
+ ></dilTable>
|
|
|
+ </div>
|
|
|
+ <div v-show="onDrawerNumber == 2">
|
|
|
+ <dilTable
|
|
|
+ v-bind.sync="secend"
|
|
|
+ @radio-change="currentRadioChange2"
|
|
|
+ :isKuang="isKuang"
|
|
|
+ @func="func"
|
|
|
+ :isHeigth="isHeigth1"
|
|
|
+ :shiyHeigth="shiyHeigth1"
|
|
|
+ :drawer="drawer"
|
|
|
+ ></dilTable>
|
|
|
+ </div>
|
|
|
+ <div v-show="onDrawerNumber == 3">
|
|
|
+ <dilTable
|
|
|
+ v-bind.sync="third"
|
|
|
+ @selection-change="currentRadioChange3"
|
|
|
+ :isHeigth="isHeigth2"
|
|
|
+ :shiyHeigth="shiyHeigth2"
|
|
|
+ ></dilTable>
|
|
|
+ </div>
|
|
|
+ <div v-show="onDrawerNumber == 4">
|
|
|
+ <dilTable
|
|
|
+ v-bind.sync="unloadPoint"
|
|
|
+ @radio-change="currentRadioChange4"
|
|
|
+ :isKuang="isKuang"
|
|
|
+ @func="func"
|
|
|
+ :isHeigth="isHeigth3"
|
|
|
+ :shiyHeigth="shiyHeigth3"
|
|
|
+ :drawer="drawer"
|
|
|
+ ></dilTable>
|
|
|
+ </div>
|
|
|
+ <div v-show="onDrawerNumber == 5">
|
|
|
+ <dilTable
|
|
|
+ v-bind.sync="line"
|
|
|
+ @radio-change="currentRadioChange5"
|
|
|
+ :isKuang="isKuang"
|
|
|
+ @func="func"
|
|
|
+ :isHeigth="isHeigth4"
|
|
|
+ :shiyHeigth="shiyHeigth4"
|
|
|
+ :drawer="drawer"
|
|
|
+ ></dilTable>
|
|
|
+ </div>
|
|
|
+ <div v-show="onDrawerNumber == 6">
|
|
|
+ <dilTable
|
|
|
+ v-bind.sync="purchaseOrder"
|
|
|
+ @radio-change="currentRadioChange6"
|
|
|
+ :isKuang="isKuang"
|
|
|
+ @func="func"
|
|
|
+ :isHeigth="isHeigth5"
|
|
|
+ :shiyHeigth="shiyHeigth5"
|
|
|
+ :drawer="drawer"
|
|
|
+ ></dilTable>
|
|
|
+ </div>
|
|
|
+ </el-drawer>
|
|
|
+ <div class="button_box">
|
|
|
+ <el-button @click="onClickCancel">返回</el-button>
|
|
|
+ <el-button type="primary" @click="onClickConfirm">确认</el-button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+<script>
|
|
|
+import PageTitle from "@/components/Page/Title";
|
|
|
+import { sjTime, isNumber, isIntegerNumber } from "@/utils/sharedJsFile";
|
|
|
+import { getCookie } from "@/utils/util.js";
|
|
|
+export default {
|
|
|
+ components: { PageTitle },
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ //限定first
|
|
|
+ isHeigth:true,
|
|
|
+ shiyHeigth:140,
|
|
|
+ //限定second
|
|
|
+ isHeigth1:true,
|
|
|
+ shiyHeigth1:140,
|
|
|
+ //限定third
|
|
|
+ isHeigth2:true,
|
|
|
+ shiyHeigth2:140,
|
|
|
+ //限定unloadPoint
|
|
|
+ isHeigth3:true,
|
|
|
+ shiyHeigth3:140,
|
|
|
+ //限定line
|
|
|
+ isHeigth4:true,
|
|
|
+ shiyHeigth4:140,
|
|
|
+ //限定purchaseOrder
|
|
|
+ isHeigth5:true,
|
|
|
+ shiyHeigth5:140,
|
|
|
+ isKuang: false,
|
|
|
+ //采购订单号
|
|
|
+ purchaseOrderNo: "",
|
|
|
+ isMoreTrips: false,
|
|
|
+ // 线路名称
|
|
|
+ lineName: "",
|
|
|
+ //线路id
|
|
|
+ lineId: null,
|
|
|
+ // 件数与重量的开关
|
|
|
+ value: false,
|
|
|
+ //船名
|
|
|
+ remark: null,
|
|
|
+ // 车辆表格表头
|
|
|
+ tableTop: [
|
|
|
+ {
|
|
|
+ prop: "capacityNumber",
|
|
|
+ label: "车牌号",
|
|
|
+ width: "140",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ prop: "carrierName",
|
|
|
+ label: "承运商",
|
|
|
+ width: "140",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ prop: "orderMaterialWeight",
|
|
|
+ label: "重量",
|
|
|
+ slot: true,
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ //发货单位名称
|
|
|
+ supplierName: "",
|
|
|
+ stateSupplier:null,
|
|
|
+ restaurantsSupplier:null,
|
|
|
+ //车辆表格数据
|
|
|
+ selectionList: [],
|
|
|
+ // 表单
|
|
|
+ form1: {},
|
|
|
+ //采购订单id
|
|
|
+ purchaseOrderId: "",
|
|
|
+ //物资名称
|
|
|
+ materialName: "",
|
|
|
+ //发货单位名称
|
|
|
+ supplierName: "",
|
|
|
+ //发货单位id
|
|
|
+ supplierId: null,
|
|
|
+ //物资id
|
|
|
+ materialId: null,
|
|
|
+ //是否需要打开模态窗口
|
|
|
+ drawer: false,
|
|
|
+ //卸货点id
|
|
|
+ unloadPointId: "",
|
|
|
+ //卸货点名称
|
|
|
+ unloadPointName: "",
|
|
|
+ //订单类别
|
|
|
+ orderType: 5,
|
|
|
+ onDrawerNumber: 1,
|
|
|
+ direction: "rtl",
|
|
|
+ input: "",
|
|
|
+ frist: {
|
|
|
+ requestUrl: "",
|
|
|
+ selectionType: "radio",
|
|
|
+ mapList1: [],
|
|
|
+ },
|
|
|
+ secend: {
|
|
|
+ requestUrl: "",
|
|
|
+ selectionType: "radio",
|
|
|
+ mapList2: [],
|
|
|
+ },
|
|
|
+ third: {
|
|
|
+ requestUrl: "",
|
|
|
+ selectionType: "select",
|
|
|
+ mapList3: [],
|
|
|
+ },
|
|
|
+ unloadPoint: {
|
|
|
+ requestUrl: "",
|
|
|
+ selectionType: "radio",
|
|
|
+ },
|
|
|
+ line: {
|
|
|
+ requestUrl: "",
|
|
|
+ selectionType: "radio",
|
|
|
+ },
|
|
|
+ purchaseOrder: {
|
|
|
+ requestUrl: "",
|
|
|
+ selectionType: "radio",
|
|
|
+ },
|
|
|
+ truckList:[]
|
|
|
+ };
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ drawer(val) {
|
|
|
+ if (val) {
|
|
|
+ this.input = null;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ value() {
|
|
|
+ if (this.value) {
|
|
|
+ this.tableTop.splice(this.tableTop.length - 1, 1);
|
|
|
+ this.tableTop.push({
|
|
|
+ prop: "orderMaterialNumber",
|
|
|
+ label: "件数",
|
|
|
+ slot: true,
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ this.tableTop.splice(this.tableTop.length - 1, 1);
|
|
|
+ this.tableTop.push({
|
|
|
+ prop: "orderMaterialWeight",
|
|
|
+ label: "重量",
|
|
|
+ slot: true,
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ },
|
|
|
+ created() {
|
|
|
+ if (getCookie("orgCode") == "chengyunshang") {
|
|
|
+ this.third.requestUrl =
|
|
|
+ "/api/v1/uc/getAllCapacityByCarrierLike?apiId=248&carrierSsoId=" +
|
|
|
+ getCookie("userId");
|
|
|
+ } else {
|
|
|
+ this.third.requestUrl =
|
|
|
+ "/api/v1/uc/getAllCapacityByCarrierLike?apiId=248&carrierSsoId=" + null;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ onClick(index) {
|
|
|
+ this.selectionList.splice(index, 1);
|
|
|
+ },
|
|
|
+ onBlur() {
|
|
|
+ this.getPurchaseOrderNo();
|
|
|
+ },
|
|
|
+ //发货单位弹出层
|
|
|
+ handleSelectSupplier(item){
|
|
|
+ this.supplierId = item.supplierId
|
|
|
+ this.supplierName = item.supplierName
|
|
|
+ },
|
|
|
+ //以下是发货单位边输边查搜索
|
|
|
+ querySearchSupplier(queryString, cb) {
|
|
|
+ this.axios.post('/api/v1/uc/getSupplierMesByLike?index='+this.stateSupplier).then((res)=>{
|
|
|
+ if(res.data.code == "200"){
|
|
|
+ var restaurantsSupplier = res.data.data
|
|
|
+ var results = queryString ? restaurantsSupplier.filter(this.createFilterSupplier(queryString)) :restaurantsSupplier;
|
|
|
+ // 调用 callback 返回建议列表的数据
|
|
|
+ cb(results);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ createFilterSupplier(queryString) {
|
|
|
+ return (restaurantsSupplier) => {
|
|
|
+ return (restaurantsSupplier.value.toLowerCase().indexOf(queryString.toLowerCase()) > -1);
|
|
|
+ };
|
|
|
+ },
|
|
|
+ getPurchaseOrderNo() {
|
|
|
+ let map = {
|
|
|
+ materialId: this.materialId,
|
|
|
+ supplierId: this.supplierId,
|
|
|
+ };
|
|
|
+ if (this.remark) {
|
|
|
+ map.remark = this.remark;
|
|
|
+ }
|
|
|
+ console.log(this.map);
|
|
|
+ if (this.materialId && this.supplierId) {
|
|
|
+ this.axios.post("/api/v1/oms/selectNewOrderId", map).then((res) => {
|
|
|
+ console.log(res);
|
|
|
+ if (res.data.code == "200") {
|
|
|
+ if (res.data.data == null) {
|
|
|
+ this.$message({
|
|
|
+ message: "没有匹配的采购订单号!",
|
|
|
+ type: "warning",
|
|
|
+ });
|
|
|
+ this.form1 = [];
|
|
|
+ } else {
|
|
|
+ console.log();
|
|
|
+ this.remark = res.data.data.remark;
|
|
|
+ this.purchaseOrderId = res.data.data.purchaseOrderId;
|
|
|
+ this.purchaseOrderNo = res.data.data.purchaseOrderNo;
|
|
|
+ // if (res.data.data.receiveUnitId == 1) {
|
|
|
+ // this.orderType = 6;
|
|
|
+ // } else {
|
|
|
+ // this.orderType = 7;
|
|
|
+ // }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.$message.error("请求失败");
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ onclick() {
|
|
|
+ if (this.input) {
|
|
|
+ this.isKuang = true;
|
|
|
+ if (this.onDrawerNumber == 1) {
|
|
|
+ this.frist.requestUrl =
|
|
|
+ "/api/v1/uc/queryAPOMaterialByLike?apiId=244&startNum=050&index=" +
|
|
|
+ this.input + "&supplierId=" + this.supplierId;
|
|
|
+ } else if (this.onDrawerNumber == 2) {
|
|
|
+ this.secend.requestUrl =
|
|
|
+ "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=" +
|
|
|
+ this.materialId +
|
|
|
+ "&index=" +
|
|
|
+ this.input;
|
|
|
+ } else if (this.onDrawerNumber == 3) {
|
|
|
+ //判断是否是承运商查询车辆
|
|
|
+ if (getCookie("orgCode") == "chengyunshang") {
|
|
|
+ this.third.requestUrl =
|
|
|
+ "/api/v1/uc/getAllCapacityByCarrierLike?apiId=248&carrierSsoId=" +
|
|
|
+ getCookie("userId") +
|
|
|
+ "&index=" +
|
|
|
+ this.input;
|
|
|
+ } else {
|
|
|
+ this.third.requestUrl =
|
|
|
+ "/api/v1/uc/getAllCapacityByCarrierLike?apiId=248&carrierSsoId=" +
|
|
|
+ null +
|
|
|
+ "&index=" +
|
|
|
+ this.input;
|
|
|
+ }
|
|
|
+ } else if (this.onDrawerNumber == 4) {
|
|
|
+ this.unloadPoint.requestUrl =
|
|
|
+ "/api/v1/uc/getUnloadingMesByLike?apiId=374&index=" + this.input;
|
|
|
+ } else if (this.onDrawerNumber == 5) {
|
|
|
+ this.line.requestUrl =
|
|
|
+ "/api/v1/rms/getAllLineDesk?apiId=249&lineType=3&con=" + this.input;
|
|
|
+ } else if (this.onDrawerNumber == 6) {
|
|
|
+ this.purchaseOrder.requestUrl =
|
|
|
+ "/api/v1/ams/getPurchaseOrderList?apiId=81&sendCompId=" +
|
|
|
+ this.supplierId +
|
|
|
+ "&con=" +
|
|
|
+ this.input +
|
|
|
+ "&i=" +
|
|
|
+ new Date();
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if (this.onDrawerNumber == 1) {
|
|
|
+ this.frist.requestUrl =
|
|
|
+ "/api/v1/uc/queryAPOMaterialByLike?apiId=244&startNum=050&i=" +
|
|
|
+ new Date() + "&supplierId=" + this.supplierId;
|
|
|
+ } else if (this.onDrawerNumber == 2) {
|
|
|
+ this.secend.requestUrl =
|
|
|
+ "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=" +
|
|
|
+ this.materialId +
|
|
|
+ "&i=" +
|
|
|
+ new Date();
|
|
|
+ } else if (this.onDrawerNumber == 3) {
|
|
|
+ //判断是否是承运商查询车辆
|
|
|
+ if (getCookie("orgCode") == "chengyunshang") {
|
|
|
+ this.third.requestUrl =
|
|
|
+ "/api/v1/uc/getAllCapacityByCarrierLike?apiId=248&carrierSsoId=" +
|
|
|
+ getCookie("userId") +
|
|
|
+ "&i=" +
|
|
|
+ new Date();
|
|
|
+ } else {
|
|
|
+ this.third.requestUrl =
|
|
|
+ "/api/v1/uc/getAllCapacityByCarrierLike?apiId=248&carrierSsoId=" +
|
|
|
+ null +
|
|
|
+ "&i=" +
|
|
|
+ new Date();
|
|
|
+ }
|
|
|
+ } else if (this.onDrawerNumber == 4) {
|
|
|
+ this.unloadPoint.requestUrl =
|
|
|
+ "/api/v1/uc/getUnloadingMesByLike?apiId=374&i=" + new Date();
|
|
|
+ } else if (this.onDrawerNumber == 5) {
|
|
|
+ this.line.requestUrl =
|
|
|
+ "/api/v1/rms/getAllLineDesk?apiId=249&lineType=3&i=" + new Date();
|
|
|
+ } else if (this.onDrawerNumber == 6) {
|
|
|
+ this.purchaseOrder.requestUrl =
|
|
|
+ "/api/v1/ams/getPurchaseOrderList?apiId=81&sendCompId=" +
|
|
|
+ this.supplierId +
|
|
|
+ "&i=" +
|
|
|
+ new Date();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ func(res) {
|
|
|
+ console.log(res);
|
|
|
+ this.isKuang = false;
|
|
|
+ },
|
|
|
+ refreshTable(){
|
|
|
+ },
|
|
|
+ ondrawer(num) {
|
|
|
+ console.log(this.supplierId)
|
|
|
+ if(this.supplierId == null){
|
|
|
+ this.$message.warning("请先选择发货单位")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if(num != 1 && this.materialId == null){
|
|
|
+ this.$message.warning("请先选择物资")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.drawer = true;
|
|
|
+ this.onDrawerNumber = num;
|
|
|
+ this.refreshTable()
|
|
|
+ if (num == 1) {
|
|
|
+ this.frist.requestUrl =
|
|
|
+ "/api/v1/uc/queryAPOMaterialByLike?apiId=244&startNum=050&index=" +
|
|
|
+ this.input + "&supplierId=" + this.supplierId;
|
|
|
+ } else if (num == 2) {
|
|
|
+ this.secend.requestUrl =
|
|
|
+ "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=" +
|
|
|
+ this.materialId;
|
|
|
+ } else if (num == 3) {
|
|
|
+ //判断是否是承运商查询车辆
|
|
|
+ if (getCookie("orgCode") == "chengyunshang") {
|
|
|
+ this.third.requestUrl =
|
|
|
+ "/api/v1/uc/getAllCapacityByCarrierLike?apiId=248&carrierSsoId=" +
|
|
|
+ getCookie("userId") +
|
|
|
+ "&i=" +
|
|
|
+ new Date();
|
|
|
+ } else {
|
|
|
+ this.third.requestUrl =
|
|
|
+ "/api/v1/uc/getAllCapacityByCarrierLike?apiId=248&carrierSsoId=" +
|
|
|
+ null +
|
|
|
+ "&i=" +
|
|
|
+ new Date();
|
|
|
+ }
|
|
|
+ } else if (num == 4) {
|
|
|
+ this.unloadPoint.requestUrl =
|
|
|
+ "/api/v1/uc/getUnloadingMesByLike?apiId=374&i=" + new Date();
|
|
|
+ } else if (num == 5) {
|
|
|
+ this.line.requestUrl =
|
|
|
+ "/api/v1/rms/getAllLineDesk?apiId=249&lineType=3&con=辅料&i=" + new Date();
|
|
|
+ } else if (num == 6) {
|
|
|
+ this.purchaseOrder.requestUrl =
|
|
|
+ "/api/v1/ams/getPurchaseOrderList?apiId=81&sendCompId=" +
|
|
|
+ this.supplierId +
|
|
|
+ "&i=" +
|
|
|
+ new Date();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 返回
|
|
|
+ onClickCancel() {
|
|
|
+ this.$router.push("/transportReserveRan");
|
|
|
+ },
|
|
|
+ currentRadioChange1(selection) {
|
|
|
+ this.materialName = selection.materialName;
|
|
|
+ this.materialId = selection.materialId;
|
|
|
+ this.getPurchaseOrderNo();
|
|
|
+ },
|
|
|
+ currentRadioChange4(selection) {
|
|
|
+ this.unloadPointId = selection.warehouseId;
|
|
|
+ this.unloadPointName = selection.warehouseName;
|
|
|
+ },
|
|
|
+ currentRadioChange5(selection) {
|
|
|
+ this.lineName = selection.lineName;
|
|
|
+ this.lineId = selection.lineId;
|
|
|
+ },
|
|
|
+ currentRadioChange6(selection) {
|
|
|
+ this.materialName = selection.materialName;
|
|
|
+ this.materialId = selection.materialId;
|
|
|
+ this.supplierId = selection.supplierId;
|
|
|
+ this.supplierName = selection.supplierName;
|
|
|
+ this.purchaseOrderNo = selection.purchaseOrderNo;
|
|
|
+ this.purchaseOrderId = selection.purchaseOrderId;
|
|
|
+ },
|
|
|
+ currentRadioChange3(selection) {
|
|
|
+ this.selectionList = []
|
|
|
+ this.selectionList = selection;
|
|
|
+ },
|
|
|
+ // 确认
|
|
|
+ onClickConfirm() {
|
|
|
+ var state = 0;
|
|
|
+ if (
|
|
|
+ this.materialId &&
|
|
|
+ this.supplierId &&
|
|
|
+ this.form1.purchaseOrderId &&
|
|
|
+ this.unloadPointId &&
|
|
|
+ sjTime(this.form1.orderEntryTime) &&
|
|
|
+ this.lineId
|
|
|
+ ) {
|
|
|
+ state = 1;
|
|
|
+ } else {
|
|
|
+ if (!this.materialId) {
|
|
|
+ this.$message({
|
|
|
+ message: "请选择物资!",
|
|
|
+ type: "warning",
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ else if (!this.supplierId) {
|
|
|
+ this.$message({
|
|
|
+ message: "请选择发货单位!",
|
|
|
+ type: "warning",
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ } else if (!this.purchaseOrderId) {
|
|
|
+ this.$message({
|
|
|
+ message: "没有匹配的采购订单号!",
|
|
|
+ type: "warning",
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ } else if (!this.unloadPointId) {
|
|
|
+ this.$message({
|
|
|
+ message: "请选择卸货地点!",
|
|
|
+ type: "warning",
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ } else if (!this.lineId) {
|
|
|
+ this.$message({
|
|
|
+ message: "请选择运输路线!",
|
|
|
+ type: "warning",
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ } else if (!sjTime(this.form1.orderEntryTime)) {
|
|
|
+ this.$message({
|
|
|
+ message: "请选择预估进厂时间!",
|
|
|
+ type: "warning",
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (this.selectionList.length == 0) {
|
|
|
+ this.$message({
|
|
|
+ message: "请选择车辆!",
|
|
|
+ type: "warning",
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ } else {
|
|
|
+ this.selectionList.forEach((e) => {
|
|
|
+ if (e.orderMaterialWeight) {
|
|
|
+ if (isNumber(e.orderMaterialWeight)) {
|
|
|
+ if (isIntegerNumber(e.orderMaterialWeight)) {
|
|
|
+ state = 1;
|
|
|
+ } else {
|
|
|
+ this.$message({
|
|
|
+ message: "重量只能是整数!",
|
|
|
+ type: "warning",
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.$message({
|
|
|
+ message: "重量只能是数字!",
|
|
|
+ type: "warning",
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ let map = {
|
|
|
+ materialId: this.materialId,
|
|
|
+ supplierId: this.supplierId,
|
|
|
+ purchaseOrderId: this.purchaseOrderId,
|
|
|
+ unloadPointId: this.unloadPointId,
|
|
|
+ orderEntryTime: sjTime(this.form1.orderEntryTime),
|
|
|
+ driverCapacityIdList: this.selectionList,
|
|
|
+ orderType: 8,
|
|
|
+ lineId: this.lineId,
|
|
|
+ isMoreTrips: this.isMoreTrips,
|
|
|
+ };
|
|
|
+ this.axios.post("/api/v1/oms/addPurOrder", map).then((res) => {
|
|
|
+ if (res.data.code == "200") {
|
|
|
+ this.$message({
|
|
|
+ message: "添加成功!",
|
|
|
+ type: "success",
|
|
|
+ });
|
|
|
+ this.$router.push("/mineralTransportAppoint");
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
+</script>
|
|
|
+<style lang="scss">
|
|
|
+.contractDetails {
|
|
|
+ width: 100%;
|
|
|
+}
|
|
|
+
|
|
|
+.el-drawer__container ::-webkit-scrollbar {
|
|
|
+ display: none;
|
|
|
+}
|
|
|
+.from {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ margin-top: 5px;
|
|
|
+ margin-bottom: 20px;
|
|
|
+}
|
|
|
+.remark {
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ .text {
|
|
|
+ display: inline-block;
|
|
|
+ width: 100px;
|
|
|
+ text-align: right;
|
|
|
+ }
|
|
|
+ .input {
|
|
|
+ width: 250px;
|
|
|
+ margin-right: 20px;
|
|
|
+ }
|
|
|
+}
|
|
|
+.lineId {
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ .text {
|
|
|
+ display: inline-block;
|
|
|
+ width: 170px;
|
|
|
+ text-align: right;
|
|
|
+ }
|
|
|
+ .input {
|
|
|
+ width: 250px;
|
|
|
+ margin-right: 20px;
|
|
|
+ }
|
|
|
+ .span {
|
|
|
+ display: inline-block;
|
|
|
+ width: 70px;
|
|
|
+ height: 1px;
|
|
|
+ }
|
|
|
+}
|
|
|
+.swtichTop{
|
|
|
+ display: flex;
|
|
|
+ height: 40px;
|
|
|
+ align-content: center;
|
|
|
+ justify-content: center;
|
|
|
+ padding-right:20px ;
|
|
|
+ .titile{
|
|
|
+ color: red;
|
|
|
+ font-size: 14px;
|
|
|
+ }
|
|
|
+ .switch{
|
|
|
+ margin-right: -30px
|
|
|
+ }
|
|
|
+}
|
|
|
+.supplieUnit {
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ align-items: center;
|
|
|
+ margin-top: 20px;
|
|
|
+ .el-input {
|
|
|
+ width: 250px;
|
|
|
+ }
|
|
|
+}
|
|
|
+.material {
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ margin-top: 20px;
|
|
|
+ .text {
|
|
|
+ display: inline-block;
|
|
|
+ width: 170px;
|
|
|
+ text-align: right;
|
|
|
+ }
|
|
|
+ .input {
|
|
|
+ width: 250px;
|
|
|
+ margin-right: 20px;
|
|
|
+ }
|
|
|
+}
|
|
|
+.orderType {
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ .text {
|
|
|
+ display: inline-block;
|
|
|
+ width: 110px;
|
|
|
+ text-align: right;
|
|
|
+ }
|
|
|
+ .select {
|
|
|
+ width: 250px;
|
|
|
+ }
|
|
|
+ .span {
|
|
|
+ display: inline-block;
|
|
|
+ width: 30px;
|
|
|
+ height: 10px;
|
|
|
+ }
|
|
|
+}
|
|
|
+.contractTitle {
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ .el-form-item {
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ .el-form-item__label {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ }
|
|
|
+ .el-input {
|
|
|
+ width: 250px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+.forwardingUnit {
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ .text {
|
|
|
+ display: inline-block;
|
|
|
+ width: 170px;
|
|
|
+ text-align: right;
|
|
|
+ }
|
|
|
+ .input {
|
|
|
+ width: 250px;
|
|
|
+ margin-right: 20px;
|
|
|
+ }
|
|
|
+}
|
|
|
+.truckList1 {
|
|
|
+ width: 100%;
|
|
|
+ .truckList {
|
|
|
+ width: 96%;
|
|
|
+ .text {
|
|
|
+ display: inline-block;
|
|
|
+ width: 120px;
|
|
|
+ text-align: right;
|
|
|
+ }
|
|
|
+ .truckBtn {
|
|
|
+ width: 250px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+.drawer_top{
|
|
|
+ margin-top: -50px;
|
|
|
+ width: 100%;height: 60px;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+}
|
|
|
+.drawer_table1{
|
|
|
+ width: 100%;height: 500px;
|
|
|
+}
|
|
|
+.button_box {
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ align-items: center;
|
|
|
+ width: 100%;
|
|
|
+ height: 100px;
|
|
|
+}
|
|
|
+</style>
|