|  | @@ -78,6 +78,21 @@
 | 
	
		
			
				|  |  |      </el-form>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      <el-row :gutter="10" class="mb8">
 | 
	
		
			
				|  |  | +      <el-col :span="1.5">
 | 
	
		
			
				|  |  | +        <el-upload
 | 
	
		
			
				|  |  | +          :action="uploadUrl"
 | 
	
		
			
				|  |  | +          :auto-upload="true"
 | 
	
		
			
				|  |  | +          accept=".xls,.xlsx"
 | 
	
		
			
				|  |  | +          :on-success="(res, file) => { importBoxDynamics( res, file); }"
 | 
	
		
			
				|  |  | +          :headers="headers"
 | 
	
		
			
				|  |  | +          :show-file-list="false"
 | 
	
		
			
				|  |  | +        >
 | 
	
		
			
				|  |  | +          <el-button size="mini" type="primary" icon="el-icon-plus">导入箱动态</el-button>
 | 
	
		
			
				|  |  | +        </el-upload>
 | 
	
		
			
				|  |  | +      </el-col>
 | 
	
		
			
				|  |  | +      <el-col :span="1.5">
 | 
	
		
			
				|  |  | +        <el-button size="mini" type="primary" icon="el-icon-download" @click="downloadBoxTemplate">下载箱动态模板</el-button>
 | 
	
		
			
				|  |  | +      </el-col>
 | 
	
		
			
				|  |  |        <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
 | 
	
		
			
				|  |  |        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
 | 
	
		
			
				|  |  |        <div class="tabSetting">
 | 
	
	
		
			
				|  | @@ -315,6 +330,99 @@
 | 
	
		
			
				|  |  |        @pagination="getList"
 | 
	
		
			
				|  |  |      />
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +<!--    导入箱动态弹窗-->
 | 
	
		
			
				|  |  | +    <el-dialog
 | 
	
		
			
				|  |  | +      title="导入箱动态"
 | 
	
		
			
				|  |  | +      :visible.sync="importDynamicsopen"
 | 
	
		
			
				|  |  | +      :show-close="false"
 | 
	
		
			
				|  |  | +      width="80%">
 | 
	
		
			
				|  |  | +      <el-table
 | 
	
		
			
				|  |  | +        :data="tableData"
 | 
	
		
			
				|  |  | +        style="width: 100%">
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="opctnstatusName"
 | 
	
		
			
				|  |  | +          label="箱动态"
 | 
	
		
			
				|  |  | +          :show-overflow-tooltip="true"
 | 
	
		
			
				|  |  | +          align="center">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="fNo"
 | 
	
		
			
				|  |  | +          align="center"
 | 
	
		
			
				|  |  | +          :show-overflow-tooltip="true"
 | 
	
		
			
				|  |  | +          label="箱号">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="updateEFName"
 | 
	
		
			
				|  |  | +          align="center"
 | 
	
		
			
				|  |  | +          :show-overflow-tooltip="true"
 | 
	
		
			
				|  |  | +          label="空重">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="fUpdatetime"
 | 
	
		
			
				|  |  | +          align="center"
 | 
	
		
			
				|  |  | +          :show-overflow-tooltip="true"
 | 
	
		
			
				|  |  | +          label="动态日期">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="fVsl"
 | 
	
		
			
				|  |  | +          align="center"
 | 
	
		
			
				|  |  | +          :show-overflow-tooltip="true"
 | 
	
		
			
				|  |  | +          label="船名">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="fVoy"
 | 
	
		
			
				|  |  | +          align="center"
 | 
	
		
			
				|  |  | +          :show-overflow-tooltip="true"
 | 
	
		
			
				|  |  | +          label="航次">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="fBoxWeight"
 | 
	
		
			
				|  |  | +          align="center"
 | 
	
		
			
				|  |  | +          :show-overflow-tooltip="true"
 | 
	
		
			
				|  |  | +          label="重量">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="addressName"
 | 
	
		
			
				|  |  | +          align="center"
 | 
	
		
			
				|  |  | +          :show-overflow-tooltip="true"
 | 
	
		
			
				|  |  | +          label="堆放地点">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="fMblno"
 | 
	
		
			
				|  |  | +          align="center"
 | 
	
		
			
				|  |  | +          :show-overflow-tooltip="true"
 | 
	
		
			
				|  |  | +          label="提单号">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="fSealno"
 | 
	
		
			
				|  |  | +          align="center"
 | 
	
		
			
				|  |  | +          :show-overflow-tooltip="true"
 | 
	
		
			
				|  |  | +          label="铅封号">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="cntrstatusName"
 | 
	
		
			
				|  |  | +          align="center"
 | 
	
		
			
				|  |  | +          :show-overflow-tooltip="true"
 | 
	
		
			
				|  |  | +          label="是否箱损">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="remark"
 | 
	
		
			
				|  |  | +          align="center"
 | 
	
		
			
				|  |  | +          :show-overflow-tooltip="true"
 | 
	
		
			
				|  |  | +          label="箱损描述">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="portName"
 | 
	
		
			
				|  |  | +          align="center"
 | 
	
		
			
				|  |  | +          :show-overflow-tooltip="true"
 | 
	
		
			
				|  |  | +          label="地点类型">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +      </el-table>
 | 
	
		
			
				|  |  | +      <span slot="footer" class="dialog-footer">
 | 
	
		
			
				|  |  | +        <el-button @click="importDynamicsopen = false">取 消</el-button>
 | 
	
		
			
				|  |  | +        <el-button type="primary" @click="confirmLeadingIn">确 定</el-button>
 | 
	
		
			
				|  |  | +      </span>
 | 
	
		
			
				|  |  | +    </el-dialog>
 | 
	
		
			
				|  |  |    </div>
 | 
	
		
			
				|  |  |  </template>
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -324,6 +432,9 @@ import Cookies from 'js-cookie'
 | 
	
		
			
				|  |  |  import { addSet, resetModule, select } from '@/api/system/set'
 | 
	
		
			
				|  |  |  import draggable from "vuedraggable";
 | 
	
		
			
				|  |  |  import Vue from 'vue'
 | 
	
		
			
				|  |  | +import { getToken } from '@/utils/auth'
 | 
	
		
			
				|  |  | +import {leadingIn,downloadBox} from '@/api/kaihe/containerNews/boxInformation'
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  Vue.directive('dialogDrag', {
 | 
	
		
			
				|  |  |    bind(el, binding, vnode, oldVnode) {
 | 
	
		
			
				|  |  |      const dialogHeaderEl = el.querySelector('.el-dialog__header')
 | 
	
	
		
			
				|  | @@ -526,8 +637,14 @@ export default {
 | 
	
		
			
				|  |  |          fUpdateaddress:null,
 | 
	
		
			
				|  |  |          cLoadDate:null,
 | 
	
		
			
				|  |  |          fUpdateef:null,
 | 
	
		
			
				|  |  | -        fCntrstatus:null
 | 
	
		
			
				|  |  | +        fCntrstatus:null,
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  | +      uploadUrl: process.env.VUE_APP_BASE_API + '/shipping/cntrno/importAirForceStation', // 导入箱动态服务器地址
 | 
	
		
			
				|  |  | +      headers: {
 | 
	
		
			
				|  |  | +        Authorization: 'Bearer ' + getToken()
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      importDynamicsopen:false,
 | 
	
		
			
				|  |  | +      tableData: [],
 | 
	
		
			
				|  |  |      };
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    created() {
 | 
	
	
		
			
				|  | @@ -679,7 +796,9 @@ export default {
 | 
	
		
			
				|  |  |          fUpdateaddress:null,
 | 
	
		
			
				|  |  |          cLoadDate:null,
 | 
	
		
			
				|  |  |          fUpdateef:null,
 | 
	
		
			
				|  |  | -        fCntrstatus:null
 | 
	
		
			
				|  |  | +        fCntrstatus:null,
 | 
	
		
			
				|  |  | +        pageNum: 1,
 | 
	
		
			
				|  |  | +        pageSize: 10,
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |          this.resetForm("queryForm");
 | 
	
		
			
				|  |  |        this.handleQuery();
 | 
	
	
		
			
				|  | @@ -690,7 +809,31 @@ export default {
 | 
	
		
			
				|  |  |        this.single = selection.length!==1
 | 
	
		
			
				|  |  |        this.multiple = !selection.length
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +    importBoxDynamics(file, fileList){
 | 
	
		
			
				|  |  | +      console.log(file)
 | 
	
		
			
				|  |  | +      if (file.code === 200){
 | 
	
		
			
				|  |  | +        this.importDynamicsopen = true
 | 
	
		
			
				|  |  | +        this.tableData = file.data
 | 
	
		
			
				|  |  | +      }else if (file.code === 500) {
 | 
	
		
			
				|  |  | +        this.$message.error(file.msg);
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    //确认导入箱动态
 | 
	
		
			
				|  |  | +    confirmLeadingIn(){
 | 
	
		
			
				|  |  | +      leadingIn({tCntrno:this.tableData}).then(res=>{
 | 
	
		
			
				|  |  | +        this.importDynamicsopen = false
 | 
	
		
			
				|  |  | +        this.$message({
 | 
	
		
			
				|  |  | +          type: 'success',
 | 
	
		
			
				|  |  | +          message: '操作成功!'
 | 
	
		
			
				|  |  | +        })
 | 
	
		
			
				|  |  | +      })
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    // 下载箱动态模板
 | 
	
		
			
				|  |  | +    downloadBoxTemplate(){
 | 
	
		
			
				|  |  | +      downloadBox().then(res=>{
 | 
	
		
			
				|  |  | +        this.download(res.msg)
 | 
	
		
			
				|  |  | +      })
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  |  </script>
 |