作者 xudada

清单申报,批量申报,导入申报功能添加

@@ -2,6 +2,7 @@ import axios from 'axios' @@ -2,6 +2,7 @@ import axios from 'axios'
2 import http from "../http"; 2 import http from "../http";
3 3
4 let baseServiceURL = 'cross-border-service' 4 let baseServiceURL = 'cross-border-service'
  5 +let baseServiceURL2 = 'wlpt-cbed-system'
5 6
6 7
7 8
@@ -15,4 +16,7 @@ export const importExcel = params => { return http.postExcelData(`${baseServiceU @@ -15,4 +16,7 @@ export const importExcel = params => { return http.postExcelData(`${baseServiceU
15 export const batchOrder = params => { return http.post(`${baseServiceURL}/ExportOrderDeclaration/batchOrder`, params); }; 16 export const batchOrder = params => { return http.post(`${baseServiceURL}/ExportOrderDeclaration/batchOrder`, params); };
16 //订单批量导入申报 17 //订单批量导入申报
17 export const batchOrderImport = params => { return http.postExcelData(`${baseServiceURL}/ExportOrderDeclaration/batchOrderImport`, params); }; 18 export const batchOrderImport = params => { return http.postExcelData(`${baseServiceURL}/ExportOrderDeclaration/batchOrderImport`, params); };
18 - 19 +//清单批量申报
  20 +export const eldhBatchDeclare = params => { return http.post(`${baseServiceURL2}/ExportListDeclaration/eldhBatchDeclare`, params); };
  21 +//清单批量导入申报
  22 +export const eldhImportDeclare = params => { return http.postExcelData(`${baseServiceURL2}/ExportListDeclaration/eldhImportDeclare`, params); };
@@ -3,7 +3,7 @@ @@ -3,7 +3,7 @@
3 <div> 3 <div>
4 <el-form :inline="true" :model="queryInfo" class="demo-form-inline"> 4 <el-form :inline="true" :model="queryInfo" class="demo-form-inline">
5 <el-form-item label=""> 5 <el-form-item label="">
6 - <el-input size="medium" v-model="queryInfo.ext1" placeholder="客户编码"></el-input> 6 + <el-input size="medium" v-model="queryInfo.ext1" class="" placeholder="客户编码"></el-input>
7 </el-form-item> 7 </el-form-item>
8 <el-form-item label=""> 8 <el-form-item label="">
9 <el-input size="medium" v-model="queryInfo.orderno" placeholder="订单号"></el-input> 9 <el-input size="medium" v-model="queryInfo.orderno" placeholder="订单号"></el-input>
@@ -41,6 +41,7 @@ @@ -41,6 +41,7 @@
41 <el-form-item> 41 <el-form-item>
42 <div class="block"> 42 <div class="block">
43 <el-date-picker 43 <el-date-picker
  44 + style="background: none"
44 size="medium" 45 size="medium"
45 v-model="value2" 46 v-model="value2"
46 type="daterange" 47 type="daterange"
@@ -54,7 +55,7 @@ @@ -54,7 +55,7 @@
54 </div> 55 </div>
55 </el-form-item> 56 </el-form-item>
56 <el-form-item> 57 <el-form-item>
57 - <el-button size="medium" @click="getList">查询</el-button> 58 + <el-button size="medium" @click="getList" style="background: none">查询</el-button>
58 </el-form-item> 59 </el-form-item>
59 <el-form-item> 60 <el-form-item>
60 <el-upload 61 <el-upload
@@ -71,16 +72,29 @@ @@ -71,16 +72,29 @@
71 <div style="margin-bottom: 20px"> 72 <div style="margin-bottom: 20px">
72 <el-row :gutter="24"> 73 <el-row :gutter="24">
73 <el-col :span="3"> 74 <el-col :span="3">
74 - <el-button size="medium" @click="batchOrder">订单批量申报</el-button> 75 + <el-button size="medium" @click="batchOrder" style="background: none">订单批量申报</el-button>
75 </el-col> 76 </el-col>
76 - <el-col :span="3"> 77 + <el-col :span="4">
77 <el-upload 78 <el-upload
78 class="upload-demo" 79 class="upload-demo"
79 action="" 80 action=""
80 :before-upload="beforeUpload" 81 :before-upload="beforeUpload"
81 :http-request="batchOrderImport" 82 :http-request="batchOrderImport"
82 :show-file-list="false"> 83 :show-file-list="false">
83 - <el-button size="medium">订单批量导入申报</el-button> 84 + <el-button size="medium" style="background: none">订单批量导入申报</el-button>
  85 + </el-upload>
  86 + </el-col>
  87 + <el-col :span="3">
  88 + <el-button size="medium" @click="batchDeclare" style="background: none">清单批量申报</el-button>
  89 + </el-col>
  90 + <el-col :span="4">
  91 + <el-upload
  92 + class="upload-demo"
  93 + action=""
  94 + :before-upload="beforeUpload"
  95 + :http-request="batchDeclareImport"
  96 + :show-file-list="false">
  97 + <el-button size="medium" style="background: none">清单批量导入申报</el-button>
84 </el-upload> 98 </el-upload>
85 </el-col> 99 </el-col>
86 </el-row> 100 </el-row>
@@ -117,6 +131,7 @@ @@ -117,6 +131,7 @@
117 </template> 131 </template>
118 </el-table-column> 132 </el-table-column>
119 <el-table-column type="selection" width="55"></el-table-column> 133 <el-table-column type="selection" width="55"></el-table-column>
  134 + <el-table-column prop="ext1" label="客户编号" width="180"></el-table-column>
120 <el-table-column prop="orderno" label="订单编号" width="180"></el-table-column> 135 <el-table-column prop="orderno" label="订单编号" width="180"></el-table-column>
121 <el-table-column prop="ordertype" label="订单类型" width="120"> 136 <el-table-column prop="ordertype" label="订单类型" width="120">
122 <template slot-scope="scope"> 137 <template slot-scope="scope">
@@ -131,7 +146,6 @@ @@ -131,7 +146,6 @@
131 </span> 146 </span>
132 </template> 147 </template>
133 </el-table-column> 148 </el-table-column>
134 - <!--<el-table-column prop="guid" label="GUID" width="180"></el-table-column>-->  
135 <el-table-column prop="apptype" label="报送类型" width="120"> 149 <el-table-column prop="apptype" label="报送类型" width="120">
136 <template slot-scope="scope"> 150 <template slot-scope="scope">
137 <span v-if="scope.row.apptype==='1'"> 151 <span v-if="scope.row.apptype==='1'">
@@ -164,7 +178,7 @@ @@ -164,7 +178,7 @@
164 show-overflow-tooltip> 178 show-overflow-tooltip>
165 <template slot-scope="scope"> 179 <template slot-scope="scope">
166 <el-button type="text" size="small" @click="sendorder(scope.row)">订单申报</el-button> 180 <el-button type="text" size="small" @click="sendorder(scope.row)">订单申报</el-button>
167 - <el-button type="text" size="small" @click="sendorder(scope.row)">清单申报</el-button> 181 + <el-button type="text" size="small" @click="sendDeclare(scope.row)">清单申报</el-button>
168 </template> 182 </template>
169 </el-table-column> 183 </el-table-column>
170 </el-table> 184 </el-table>
@@ -183,7 +197,7 @@ @@ -183,7 +197,7 @@
183 </template> 197 </template>
184 198
185 <script> 199 <script>
186 - import {sendOrder,selectLists,batchOrder,batchOrderImport,importExcel} from '../../api/consigner/exportOrder' 200 + import {sendOrder,selectLists,batchOrder,batchOrderImport,importExcel,eldhBatchDeclare,eldhImportDeclare} from '../../api/consigner/exportOrder'
187 export default { 201 export default {
188 data() { 202 data() {
189 return { 203 return {
@@ -266,6 +280,62 @@ @@ -266,6 +280,62 @@
266 this.getList(); 280 this.getList();
267 }, 281 },
268 methods: { 282 methods: {
  283 + //清单批量导入申报
  284 + batchDeclareImport({ file, onSuccess, onError }){
  285 + // 生成 FormData 对象
  286 + const formData = new FormData();
  287 + formData.append('file', file);
  288 + eldhImportDeclare(formData).then((response) => {
  289 + const res = response.data
  290 + if (res.code !== '200') {
  291 + return this.$message.error(res.msg);
  292 + }
  293 + this.$message.success(res.msg);
  294 + this.getList();
  295 + onSuccess(response.data); // 调用 onSuccess 回调通知上传成功
  296 + }).catch(error => {
  297 + // 关闭加载
  298 + this.$message.error(error.toString())
  299 + onError(error); // 调用 onError 回调通知上传失败
  300 + })
  301 + },
  302 + //清单申报
  303 + sendDeclare(row){
  304 + const { orderno, ext1 } = row;
  305 + const senddata= [{ orderno, ext1 }];
  306 + eldhBatchDeclare(senddata).then((response)=>{
  307 + const res=response.data;
  308 + if (res.code !== '200') {
  309 + return this.$message.error('清单批量申报失败!')
  310 + }
  311 + this.$message.success('清单批量申报成功!');
  312 + this.getList();
  313 + }).catch(error=>{
  314 + this.$message.error(error.toString())
  315 + })
  316 +
  317 + },
  318 + //清单批量申报
  319 + batchDeclare(){
  320 + if(this.selectedRows.length!==0){
  321 + this.transformedData = this.selectedRows.map(item => ({
  322 + orderno: item.orderno,
  323 + ext1: item.ext1
  324 + }));
  325 + eldhBatchDeclare(this.transformedData).then((response)=>{
  326 + const res=response.data;
  327 + if (res.code !== '200') {
  328 + return this.$message.error('清单批量申报失败!')
  329 + }
  330 + this.$message.success('清单批量申报成功!');
  331 + this.getList();
  332 + }).catch(error=>{
  333 + this.$message.error(error.toString())
  334 + })
  335 + }else{
  336 + this.$message.error('请选勾取需要申报的清单信息!');
  337 + }
  338 + },
269 //订单批量导入申报 339 //订单批量导入申报
270 batchOrderImport({ file, onSuccess, onError }){ 340 batchOrderImport({ file, onSuccess, onError }){
271 // 生成 FormData 对象 341 // 生成 FormData 对象
@@ -387,8 +457,9 @@ @@ -387,8 +457,9 @@
387 </script> 457 </script>
388 458
389 <style scoped> 459 <style scoped>
390 -  
391 - 460 + .el-input__inner{
  461 + background-color: #f5f7fd;
  462 + }
392 .el-table { 463 .el-table {
393 border: 1px solid #ddd; 464 border: 1px solid #ddd;
394 } 465 }