Showing
11 changed files
with
1212 additions
and
116 deletions
| ... | @@ -223,3 +223,23 @@ export function bathDeclareDate(data) { | ... | @@ -223,3 +223,23 @@ export function bathDeclareDate(data) { |
| 223 | data, | 223 | data, |
| 224 | }); | 224 | }); |
| 225 | } | 225 | } |
| 226 | + | ||
| 227 | +// GET | ||
| 228 | +// /operatorPlace/getCurrUserOperatorCode | ||
| 229 | +// 获取当前用户监管场所代码 | ||
| 230 | +export function getCurrUserOperatorCode() { | ||
| 231 | + return request({ | ||
| 232 | + url: "/bus-customer/operatorPlace/getCurrUserOperatorCode", | ||
| 233 | + method: "get", | ||
| 234 | + }); | ||
| 235 | +} | ||
| 236 | + | ||
| 237 | +export function declareUpload(data) { | ||
| 238 | + return request({ | ||
| 239 | + url: "/bus-customer/declareData/" + data.type, | ||
| 240 | + method: "post", | ||
| 241 | + data: { | ||
| 242 | + ...data, | ||
| 243 | + }, | ||
| 244 | + }); | ||
| 245 | +} | ... | ... |
| ... | @@ -5,7 +5,7 @@ import request from "@/utils/request"; | ... | @@ -5,7 +5,7 @@ import request from "@/utils/request"; |
| 5 | // 新增监管场所 | 5 | // 新增监管场所 |
| 6 | export function addOperatorPlace(data) { | 6 | export function addOperatorPlace(data) { |
| 7 | return request({ | 7 | return request({ |
| 8 | - url: "/bus-customer/operatorPlace/addOperatorPlace", | 8 | + url: "/bus-customer/operatorPlace/addOperatorPlace", |
| 9 | method: "post", | 9 | method: "post", |
| 10 | data: data, | 10 | data: data, |
| 11 | }); | 11 | }); |
| ... | @@ -16,7 +16,7 @@ export function addOperatorPlace(data) { | ... | @@ -16,7 +16,7 @@ export function addOperatorPlace(data) { |
| 16 | // 查询监管场所列表 | 16 | // 查询监管场所列表 |
| 17 | export function getOperatorPlaceList(data) { | 17 | export function getOperatorPlaceList(data) { |
| 18 | return request({ | 18 | return request({ |
| 19 | - url: "/bus-customer/operatorPlace/getOperatorPlaceList", | 19 | + url: "/bus-customer/operatorPlace/getOperatorPlaceList", |
| 20 | method: "post", | 20 | method: "post", |
| 21 | data: data, | 21 | data: data, |
| 22 | }); | 22 | }); |
| ... | @@ -27,7 +27,7 @@ export function getOperatorPlaceList(data) { | ... | @@ -27,7 +27,7 @@ export function getOperatorPlaceList(data) { |
| 27 | // 修改监管场所 | 27 | // 修改监管场所 |
| 28 | export function updateOperatorPlace(data) { | 28 | export function updateOperatorPlace(data) { |
| 29 | return request({ | 29 | return request({ |
| 30 | - url: "/bus-customer/operatorPlace/updateOperatorPlace", | 30 | + url: "/bus-customer/operatorPlace/updateOperatorPlace", |
| 31 | method: "post", | 31 | method: "post", |
| 32 | data: data, | 32 | data: data, |
| 33 | }); | 33 | }); | ... | ... |
src/views/arrival-declare/dialog.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <el-dialog | ||
| 3 | + class="entryDialog classCUploadDialog" | ||
| 4 | + title="运抵单申报" | ||
| 5 | + :visible.sync="outerVisible" | ||
| 6 | + :show-close="false" | ||
| 7 | + width="40%" | ||
| 8 | + :close-on-click-modal="false" | ||
| 9 | + :destroy-on-close="true" | ||
| 10 | + v-loading="loadings.dialogLoading" | ||
| 11 | + @close="close" | ||
| 12 | + > | ||
| 13 | + <div class="modelItem"> | ||
| 14 | + <el-form | ||
| 15 | + class="fedexFormStyle" | ||
| 16 | + ref="formData" | ||
| 17 | + :model="formData" | ||
| 18 | + label-position="top" | ||
| 19 | + size="small" | ||
| 20 | + > | ||
| 21 | + <el-row :gutter="5"> | ||
| 22 | + <el-col :span="8"> | ||
| 23 | + <Formitem label="监管场所" prop="operatorCode" type="edit"> | ||
| 24 | + <el-select | ||
| 25 | + type="text" | ||
| 26 | + id="inputInner-edit-operatorCode" | ||
| 27 | + v-model="formData.operatorCode" | ||
| 28 | + clearable | ||
| 29 | + filterable | ||
| 30 | + placeholder="" | ||
| 31 | + > | ||
| 32 | + <el-option | ||
| 33 | + v-for="item in operatorCode" | ||
| 34 | + :key="item" | ||
| 35 | + :label="item" | ||
| 36 | + :value="item" | ||
| 37 | + ></el-option> | ||
| 38 | + </el-select> | ||
| 39 | + </Formitem> | ||
| 40 | + </el-col> | ||
| 41 | + | ||
| 42 | + <el-col :span="8"> | ||
| 43 | + <Formitem | ||
| 44 | + label="境内运输工具编码" | ||
| 45 | + prop="domesticTrafNo" | ||
| 46 | + type="edit" | ||
| 47 | + > | ||
| 48 | + <el-input | ||
| 49 | + type="text" | ||
| 50 | + class="inputShadow" | ||
| 51 | + id="inputInner-edit-domesticTrafNo" | ||
| 52 | + resize="none" | ||
| 53 | + v-model="formData.domesticTrafNo" | ||
| 54 | + clearable | ||
| 55 | + placeholder="" | ||
| 56 | + ></el-input> | ||
| 57 | + </Formitem> | ||
| 58 | + </el-col> | ||
| 59 | + </el-row> | ||
| 60 | + </el-form> | ||
| 61 | + </div> | ||
| 62 | + <div class="dialogOption entrySave"> | ||
| 63 | + <el-button | ||
| 64 | + class="entrySaveButton" | ||
| 65 | + :disabled="loadings.submitLoading" | ||
| 66 | + @click="submit" | ||
| 67 | + >确 定</el-button | ||
| 68 | + > | ||
| 69 | + <el-button class="entrySaveButton" @click="close">关 闭</el-button> | ||
| 70 | + </div> | ||
| 71 | + </el-dialog> | ||
| 72 | +</template> | ||
| 73 | + | ||
| 74 | +<script> | ||
| 75 | +import { | ||
| 76 | + getCurrUserOperatorCode, | ||
| 77 | + declareUpload, | ||
| 78 | +} from "@/api/declareData-api.js"; | ||
| 79 | +export default { | ||
| 80 | + props: { | ||
| 81 | + outerVisible: { | ||
| 82 | + type: Boolean, | ||
| 83 | + default: false, | ||
| 84 | + }, | ||
| 85 | + selected: { | ||
| 86 | + type: Array, | ||
| 87 | + default: () => { | ||
| 88 | + return []; | ||
| 89 | + }, | ||
| 90 | + }, | ||
| 91 | + }, | ||
| 92 | + watch: { | ||
| 93 | + outerVisible(val) { | ||
| 94 | + if (val) { | ||
| 95 | + this.loadings.dialogLoading = false; | ||
| 96 | + this.fetchOperatorCode(); | ||
| 97 | + } | ||
| 98 | + }, | ||
| 99 | + }, | ||
| 100 | + data() { | ||
| 101 | + return { | ||
| 102 | + formData: { | ||
| 103 | + operatorCode: "", | ||
| 104 | + domesticTrafNo: "", | ||
| 105 | + }, | ||
| 106 | + | ||
| 107 | + loadings: { | ||
| 108 | + dialogLoading: false, | ||
| 109 | + submitLoading: false, | ||
| 110 | + }, | ||
| 111 | + loadingText: "", | ||
| 112 | + operatorCode: [], | ||
| 113 | + }; | ||
| 114 | + }, | ||
| 115 | + methods: { | ||
| 116 | + fetchOperatorCode() { | ||
| 117 | + getCurrUserOperatorCode().then((res) => { | ||
| 118 | + if (res.code === "200") { | ||
| 119 | + this.operatorCode = res.data; | ||
| 120 | + } | ||
| 121 | + }); | ||
| 122 | + }, | ||
| 123 | + | ||
| 124 | + //数据保存 | ||
| 125 | + submit() { | ||
| 126 | + this.loadings.dialogLoading = true; | ||
| 127 | + let obj = { | ||
| 128 | + ...this.formData, | ||
| 129 | + declareIds: this.selected.map((item) => item.declareId), | ||
| 130 | + type: "arrivalIn", | ||
| 131 | + }; | ||
| 132 | + this.$refs.formData.validate((valid) => { | ||
| 133 | + if (valid) { | ||
| 134 | + this.addapi(obj); | ||
| 135 | + } else { | ||
| 136 | + this.loadings.dialogLoading = false; | ||
| 137 | + } | ||
| 138 | + }); | ||
| 139 | + }, | ||
| 140 | + //新增 | ||
| 141 | + addapi(val) { | ||
| 142 | + declareUpload(val) | ||
| 143 | + .then((res) => { | ||
| 144 | + if (res.code === "200") { | ||
| 145 | + this.msgSuccess(res.message); | ||
| 146 | + this.close(); | ||
| 147 | + } else { | ||
| 148 | + this.alertWarningMsg(res.message); | ||
| 149 | + this.loadings.dialogLoading = false; | ||
| 150 | + } | ||
| 151 | + }) | ||
| 152 | + .catch((err) => { | ||
| 153 | + console.log(err); | ||
| 154 | + this.loadings.dialogLoading = false; | ||
| 155 | + }); | ||
| 156 | + }, | ||
| 157 | + | ||
| 158 | + close() { | ||
| 159 | + this.formData = { | ||
| 160 | + operatorCode: "", | ||
| 161 | + domesticTrafNo: "", | ||
| 162 | + }; | ||
| 163 | + this.loadings.dialogLoading = false; | ||
| 164 | + this.$emit("close"); | ||
| 165 | + }, | ||
| 166 | + }, | ||
| 167 | +}; | ||
| 168 | +</script> | ||
| 169 | + | ||
| 170 | +<style lang="scss" scoped> | ||
| 171 | +@import "@/assets/styles/variables.scss"; | ||
| 172 | +</style> |
src/views/arrival-declare/index.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <div class="entrySreach"> | ||
| 3 | + <el-form | ||
| 4 | + class="fedexFormStyle fedexformSreach fedexformSreachBottomBorder" | ||
| 5 | + ref="sreachForm" | ||
| 6 | + :model="sreachFormData" | ||
| 7 | + label-position="top" | ||
| 8 | + size="small" | ||
| 9 | + > | ||
| 10 | + <el-row class="row-border"> | ||
| 11 | + <!-- 提运单号 --> | ||
| 12 | + <el-col :span="5"> | ||
| 13 | + <Formitem label="提运单号" prop="billNo"> | ||
| 14 | + <el-input | ||
| 15 | + type="text" | ||
| 16 | + class="inputShadow" | ||
| 17 | + id="inputInner--billNo" | ||
| 18 | + resize="none" | ||
| 19 | + v-model="sreachFormData.billNo" | ||
| 20 | + clearable | ||
| 21 | + placeholder="" | ||
| 22 | + ></el-input> | ||
| 23 | + </Formitem> | ||
| 24 | + </el-col> | ||
| 25 | + <!-- 物流运单编号 --> | ||
| 26 | + <el-col :span="5"> | ||
| 27 | + <Formitem label="物流运单编号" prop="logisticsNo"> | ||
| 28 | + <FormTextareaInput | ||
| 29 | + :formData="sreachFormData" | ||
| 30 | + dataKey="logisticsNo" | ||
| 31 | + @formChange="formChange" | ||
| 32 | + /> | ||
| 33 | + </Formitem> | ||
| 34 | + </el-col> | ||
| 35 | + <!-- 订单编号 --> | ||
| 36 | + <el-col :span="5"> | ||
| 37 | + <Formitem label="订单编号" prop="orderNo"> | ||
| 38 | + <el-input | ||
| 39 | + type="text" | ||
| 40 | + class="inputShadow" | ||
| 41 | + id="inputInner--orderNo" | ||
| 42 | + resize="none" | ||
| 43 | + v-model="sreachFormData.orderNo" | ||
| 44 | + clearable | ||
| 45 | + placeholder="" | ||
| 46 | + ></el-input> | ||
| 47 | + </Formitem> | ||
| 48 | + </el-col> | ||
| 49 | + <!-- 创建时间 --> | ||
| 50 | + <el-col :span="5"> | ||
| 51 | + <Formitem label="创建时间" prop="createTime" :activeType="true"> | ||
| 52 | + <el-date-picker | ||
| 53 | + class="inputInner--createTime" | ||
| 54 | + id="inputInner-edit-createTime" | ||
| 55 | + v-model="sreachFormData.createTime" | ||
| 56 | + type="daterange" | ||
| 57 | + format="yyyy-MM-dd" | ||
| 58 | + prefix-icon="none" | ||
| 59 | + value-format="yyyy-MM-dd" | ||
| 60 | + range-separator="至" | ||
| 61 | + @change="dateChange" | ||
| 62 | + /> | ||
| 63 | + </Formitem> | ||
| 64 | + </el-col> | ||
| 65 | + <el-col :span="2"> | ||
| 66 | + <el-form-item class="textCenter"> | ||
| 67 | + <el-button | ||
| 68 | + class="entrySreachButton" | ||
| 69 | + type="text" | ||
| 70 | + icon="el-icon-search" | ||
| 71 | + :loading="loadings.sreachLoading" | ||
| 72 | + @click="search(0)" | ||
| 73 | + ></el-button> | ||
| 74 | + </el-form-item> | ||
| 75 | + </el-col> | ||
| 76 | + <el-col :span="2"> | ||
| 77 | + <el-form-item class="textLeft textCenter"> | ||
| 78 | + <el-button | ||
| 79 | + type="text" | ||
| 80 | + size="small" | ||
| 81 | + icon="el-icon-refresh" | ||
| 82 | + @click="clear" | ||
| 83 | + > | ||
| 84 | + 重置 | ||
| 85 | + </el-button> | ||
| 86 | + </el-form-item> | ||
| 87 | + </el-col> | ||
| 88 | + </el-row> | ||
| 89 | + <el-row class="backgroundRow"> | ||
| 90 | + <!-- 回执状态 --> | ||
| 91 | + <el-col :span="5"> | ||
| 92 | + <Formitem label="回执状态" prop="receiptStatus"> | ||
| 93 | + <el-select | ||
| 94 | + type="text" | ||
| 95 | + id="inputInner--receiptStatus" | ||
| 96 | + v-model="sreachFormData.receiptStatus" | ||
| 97 | + clearable | ||
| 98 | + placeholder="" | ||
| 99 | + > | ||
| 100 | + <el-option | ||
| 101 | + v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS" | ||
| 102 | + :key="index" | ||
| 103 | + :label="item.itemChineseName" | ||
| 104 | + :value="item.itemValue" | ||
| 105 | + ></el-option> | ||
| 106 | + </el-select> | ||
| 107 | + </Formitem> | ||
| 108 | + </el-col> | ||
| 109 | + </el-row> | ||
| 110 | + </el-form> | ||
| 111 | + <div class="optionButton"> | ||
| 112 | + <el-button | ||
| 113 | + size="small" | ||
| 114 | + type="primary" | ||
| 115 | + class="dropdown-style-button" | ||
| 116 | + @click="addDeclare" | ||
| 117 | + > | ||
| 118 | + <svg-icon | ||
| 119 | + class="el-icon-user-solid" | ||
| 120 | + icon-class="fedexDeclareIcon" | ||
| 121 | + ></svg-icon> | ||
| 122 | + 运抵单申报 | ||
| 123 | + </el-button> | ||
| 124 | + </div> | ||
| 125 | + <Table | ||
| 126 | + class="fedexDetialTable fedexSreachTable" | ||
| 127 | + ref="entryTable" | ||
| 128 | + :data="tableData" | ||
| 129 | + :headerData="headerData" | ||
| 130 | + :height="tableMaxheight + 'px'" | ||
| 131 | + :maxHeight="tableMaxheight + 'px'" | ||
| 132 | + :border="true" | ||
| 133 | + :pagination="true" | ||
| 134 | + :order="false" | ||
| 135 | + :loading="loadings.sreachLoading" | ||
| 136 | + :page="page.pageIndex" | ||
| 137 | + :pageSizes="[20, 30, 50, 100]" | ||
| 138 | + :totalCount="page.total" | ||
| 139 | + @sizeChange="sizeChange" | ||
| 140 | + @currentChange="currentChange" | ||
| 141 | + :selection="true" | ||
| 142 | + :selectFixed="false" | ||
| 143 | + :rowSelectDataType="false" | ||
| 144 | + @tableSelect="tableSelect" | ||
| 145 | + @tableSelectAll="tableSelectAll" | ||
| 146 | + :selected="selected" | ||
| 147 | + > | ||
| 148 | + <template v-slot:listReceiptStatus="scope"> | ||
| 149 | + <TablePopover | ||
| 150 | + ref="listReceiptStatusPopover" | ||
| 151 | + dataKey="listReceiptStatus" | ||
| 152 | + idKey="declareId" | ||
| 153 | + :parentDom="$refs.entryTable" | ||
| 154 | + :receiptDataHead="receiptDataHead" | ||
| 155 | + :rowData="scope.row" | ||
| 156 | + :tableData="tableData" | ||
| 157 | + @popoverChange="popoverChange" | ||
| 158 | + @popoverClose="popoverClose" | ||
| 159 | + > | ||
| 160 | + <div slot="title"> | ||
| 161 | + <span style="font-weight: 700; color: #515a6e">订单编号:</span | ||
| 162 | + >{{ scope.row.orderno }} | ||
| 163 | + </div> | ||
| 164 | + <div slot="buttonLabel"> | ||
| 165 | + {{ scope.row.listReceiptStatus }} | ||
| 166 | + </div> | ||
| 167 | + </TablePopover> | ||
| 168 | + </template> | ||
| 169 | + <template v-slot:arrivalInReceiptStatus="scope"> | ||
| 170 | + <TablePopover | ||
| 171 | + ref="arrivalInReceiptStatusPopover" | ||
| 172 | + dataKey="arrivalInReceiptStatus" | ||
| 173 | + idKey="declareId" | ||
| 174 | + :parentDom="$refs.entryTable" | ||
| 175 | + :receiptDataHead="receiptDataHead" | ||
| 176 | + :rowData="scope.row" | ||
| 177 | + :tableData="tableData" | ||
| 178 | + @popoverChange="popoverChange" | ||
| 179 | + @popoverClose="popoverClose" | ||
| 180 | + > | ||
| 181 | + <div slot="title"> | ||
| 182 | + <span style="font-weight: 700; color: #515a6e">订单编号:</span | ||
| 183 | + >{{ scope.row.orderno }} | ||
| 184 | + </div> | ||
| 185 | + <div slot="buttonLabel"> | ||
| 186 | + {{ scope.row.arrivalInReceiptStatus }} | ||
| 187 | + </div> | ||
| 188 | + </TablePopover> | ||
| 189 | + </template> | ||
| 190 | + </Table> | ||
| 191 | + <DialogVue | ||
| 192 | + :outerVisible="outerVisible" | ||
| 193 | + :selected="selected" | ||
| 194 | + @close="dialogClose" | ||
| 195 | + /> | ||
| 196 | + </div> | ||
| 197 | +</template> | ||
| 198 | + | ||
| 199 | +<script> | ||
| 200 | +import { | ||
| 201 | + searchDeclareData, | ||
| 202 | + getListReceipt, | ||
| 203 | + arrivalInReceipt, | ||
| 204 | +} from "@/api/declareData-api.js"; | ||
| 205 | +import DialogVue from "./dialog.vue"; | ||
| 206 | +export default { | ||
| 207 | + name: "SupervisePlaceManage", | ||
| 208 | + components: { | ||
| 209 | + DialogVue, | ||
| 210 | + }, | ||
| 211 | + data() { | ||
| 212 | + return { | ||
| 213 | + // 控制日志弹窗的显示和隐藏 | ||
| 214 | + allLogDataReceiptStatusPopoverType: false, | ||
| 215 | + // 存储选中的日志数据 | ||
| 216 | + selectedLogRow: {}, | ||
| 217 | + selected: [], | ||
| 218 | + sreachFormData: { | ||
| 219 | + billNo: "", | ||
| 220 | + logisticsNo: "", | ||
| 221 | + orderNo: "", | ||
| 222 | + receiptStatus: null, | ||
| 223 | + receiptType: null, | ||
| 224 | + createTime: [], | ||
| 225 | + }, | ||
| 226 | + page: { | ||
| 227 | + pageIndex: 1, | ||
| 228 | + pageSize: 20, | ||
| 229 | + total: 0, | ||
| 230 | + }, | ||
| 231 | + tableData: [], | ||
| 232 | + headerData: [ | ||
| 233 | + { | ||
| 234 | + name: "提运单号", | ||
| 235 | + value: "billNo", | ||
| 236 | + width: "", | ||
| 237 | + align: "left", | ||
| 238 | + }, | ||
| 239 | + { | ||
| 240 | + name: "物流运单编号", | ||
| 241 | + value: "logisticsWaybillNumber", | ||
| 242 | + width: "", | ||
| 243 | + align: "left", | ||
| 244 | + }, | ||
| 245 | + { | ||
| 246 | + name: "订单编号", | ||
| 247 | + value: "orderno", | ||
| 248 | + width: "", | ||
| 249 | + align: "left", | ||
| 250 | + }, | ||
| 251 | + { | ||
| 252 | + name: "电商企业名称", | ||
| 253 | + value: "ecomEntName", | ||
| 254 | + width: "", | ||
| 255 | + align: "left", | ||
| 256 | + }, | ||
| 257 | + { | ||
| 258 | + name: "创建时间", | ||
| 259 | + value: "createTime", | ||
| 260 | + width: "", | ||
| 261 | + align: "left", | ||
| 262 | + }, | ||
| 263 | + { | ||
| 264 | + name: "清单回执", | ||
| 265 | + value: "listReceiptStatus", | ||
| 266 | + width: "", | ||
| 267 | + align: "left", | ||
| 268 | + slot: true, | ||
| 269 | + }, | ||
| 270 | + { | ||
| 271 | + // release-v1.0.9 | ||
| 272 | + name: "运抵单回执", | ||
| 273 | + value: "arrivalInReceiptStatus", | ||
| 274 | + width: "", | ||
| 275 | + align: "left", | ||
| 276 | + slot: true, | ||
| 277 | + }, | ||
| 278 | + ], | ||
| 279 | + receiptDataHead: [ | ||
| 280 | + { | ||
| 281 | + name: "回执状态", | ||
| 282 | + value: "receiptStatus", | ||
| 283 | + width: "", | ||
| 284 | + align: "left", | ||
| 285 | + }, | ||
| 286 | + { | ||
| 287 | + name: "状态时间", | ||
| 288 | + value: "statusTime", | ||
| 289 | + width: "", | ||
| 290 | + align: "left", | ||
| 291 | + }, | ||
| 292 | + { | ||
| 293 | + name: "回执描述", | ||
| 294 | + value: "receiptDescription", | ||
| 295 | + width: "", | ||
| 296 | + align: "left", | ||
| 297 | + }, | ||
| 298 | + ], | ||
| 299 | + loadings: { | ||
| 300 | + sreachLoading: false, | ||
| 301 | + }, | ||
| 302 | + tableMaxheight: 500, | ||
| 303 | + outerVisible: false, | ||
| 304 | + }; | ||
| 305 | + }, | ||
| 306 | + created() { | ||
| 307 | + this.search(0); | ||
| 308 | + this.calculateTableHeight(); | ||
| 309 | + }, | ||
| 310 | + watch: { | ||
| 311 | + $route(val, oldval) { | ||
| 312 | + this.popoverClose(); | ||
| 313 | + }, | ||
| 314 | + }, | ||
| 315 | + | ||
| 316 | + mounted() { | ||
| 317 | + window.addEventListener("resize", this.calculateTableHeight); | ||
| 318 | + }, | ||
| 319 | + beforeDestroy() { | ||
| 320 | + window.removeEventListener("resize", this.calculateTableHeight); | ||
| 321 | + }, | ||
| 322 | + methods: { | ||
| 323 | + tableSelect(val) { | ||
| 324 | + this.selected = val.selection; | ||
| 325 | + }, | ||
| 326 | + tableSelectAll(val) { | ||
| 327 | + this.selected = val; | ||
| 328 | + }, | ||
| 329 | + formChange(val) { | ||
| 330 | + this.sreachFormData = val; | ||
| 331 | + }, | ||
| 332 | + dateChange(val) { | ||
| 333 | + if (val == "" || val == null) { | ||
| 334 | + this.$nextTick(() => { | ||
| 335 | + this.sreachFormData.createTime = []; | ||
| 336 | + }); | ||
| 337 | + } | ||
| 338 | + }, | ||
| 339 | + popoverClose(val) { | ||
| 340 | + this.tableData.forEach((item) => { | ||
| 341 | + item.listReceiptStatusPopoverType = false; | ||
| 342 | + item.arrivalInReceiptStatusPopoverType = false; | ||
| 343 | + item.popoverData = []; | ||
| 344 | + }); | ||
| 345 | + this.selectedLogRow.allLogDataReceiptStatusPopoverType = false; | ||
| 346 | + this.$refs.entryTable.$refs.tables.$refs.bodyWrapper.style.overflowY = | ||
| 347 | + "auto"; | ||
| 348 | + }, | ||
| 349 | + calculateTableHeight() { | ||
| 350 | + this.tableMaxheight = window.innerHeight - 300; | ||
| 351 | + }, | ||
| 352 | + //查询回执 | ||
| 353 | + receiptApi(id, type) { | ||
| 354 | + return new Promise((resolve, reject) => { | ||
| 355 | + let obj = { declareId: id }; | ||
| 356 | + if (type == "listReceiptStatus") { | ||
| 357 | + getListReceipt(obj) | ||
| 358 | + .then((res) => { | ||
| 359 | + if (res.code === "200") { | ||
| 360 | + resolve(res.data); | ||
| 361 | + } else { | ||
| 362 | + reject(); | ||
| 363 | + } | ||
| 364 | + }) | ||
| 365 | + .catch((err) => { | ||
| 366 | + console.log(err); | ||
| 367 | + reject(); | ||
| 368 | + }); | ||
| 369 | + } else if (type == "arrivalInReceiptStatus") { | ||
| 370 | + arrivalInReceipt(obj) | ||
| 371 | + .then((res) => { | ||
| 372 | + if (res.code === "200") { | ||
| 373 | + resolve(res.data); | ||
| 374 | + } else { | ||
| 375 | + reject(); | ||
| 376 | + } | ||
| 377 | + }) | ||
| 378 | + .catch((err) => { | ||
| 379 | + console.log(err); | ||
| 380 | + reject(); | ||
| 381 | + }); | ||
| 382 | + } | ||
| 383 | + }); | ||
| 384 | + }, | ||
| 385 | + popoverChange(val) { | ||
| 386 | + this.tableData = val.tableData; | ||
| 387 | + | ||
| 388 | + console.log(val); | ||
| 389 | + | ||
| 390 | + this.receiptApi(val.data.declareId, val.status) | ||
| 391 | + .then((res) => { | ||
| 392 | + val.tableData.forEach((item) => { | ||
| 393 | + if (item.declareId == val.data.declareId) { | ||
| 394 | + item.popoverData = res; | ||
| 395 | + } | ||
| 396 | + }); | ||
| 397 | + this.tableData = val.tableData; | ||
| 398 | + }) | ||
| 399 | + .finally(() => { | ||
| 400 | + this.$nextTick(() => { | ||
| 401 | + this.$store.dispatch("setLoadingState", false); | ||
| 402 | + this.$refs.listReceiptStatusPopover.tableLoading = false; // 清单回执 | ||
| 403 | + this.$refs.arrivalInReceiptStatusPopover.tableLoading = false; //运抵单回执 | ||
| 404 | + }); | ||
| 405 | + }); | ||
| 406 | + }, | ||
| 407 | + | ||
| 408 | + clear() { | ||
| 409 | + this.$refs.sreachForm.resetFields(); | ||
| 410 | + //重置数据 | ||
| 411 | + this.sreachFormData = { | ||
| 412 | + billNo: "", | ||
| 413 | + logisticsNo: "", | ||
| 414 | + orderNo: "", | ||
| 415 | + receiptStatus: null, | ||
| 416 | + receiptType: null, | ||
| 417 | + createTime: [], | ||
| 418 | + }; | ||
| 419 | + }, | ||
| 420 | + //查询 | ||
| 421 | + search(val) { | ||
| 422 | + this.loadings.sreachLoading = true; | ||
| 423 | + this.selected = []; | ||
| 424 | + if (val == 0) { | ||
| 425 | + this.page.pageIndex = 1; | ||
| 426 | + } | ||
| 427 | + let obj = this.sreachFormData; | ||
| 428 | + obj.pageIndex = this.page.pageIndex; | ||
| 429 | + obj.pageSize = this.page.pageSize; | ||
| 430 | + obj.startCreateTime = ""; | ||
| 431 | + obj.endCreateTime = ""; | ||
| 432 | + if (this.sreachFormData.createTime.length > 0) { | ||
| 433 | + obj.startCreateTime = obj.createTime[0]; | ||
| 434 | + obj.endCreateTime = obj.createTime[1]; | ||
| 435 | + } | ||
| 436 | + searchDeclareData({ | ||
| 437 | + isOnlySearchArrivalIn: true, | ||
| 438 | + ...obj, | ||
| 439 | + }) | ||
| 440 | + .then((res) => { | ||
| 441 | + if (res.code === "200") { | ||
| 442 | + this.tableData = res.data.value; | ||
| 443 | + this.page.total = res.data.totalItems; | ||
| 444 | + this.tableData.forEach((item, idx) => { | ||
| 445 | + item.index = idx; | ||
| 446 | + item.listReceiptStatusPopoverType = false; // 清单回执 | ||
| 447 | + item.arrivalInReceiptStatusPopoverType = false; // 运抵单回执 | ||
| 448 | + // item.logLoading = false; | ||
| 449 | + item.popoverData = []; | ||
| 450 | + }); | ||
| 451 | + this.selectedLogRow.allLogDataReceiptStatusPopoverType = false; | ||
| 452 | + } else { | ||
| 453 | + this.alertWarningMsg(res.message); | ||
| 454 | + } | ||
| 455 | + this.loadings.sreachLoading = false; | ||
| 456 | + }) | ||
| 457 | + .catch((err) => { | ||
| 458 | + console.log(err); | ||
| 459 | + this.loadings.sreachLoading = false; | ||
| 460 | + }); | ||
| 461 | + }, | ||
| 462 | + addDeclare() { | ||
| 463 | + if (this.selected.length === 0) { | ||
| 464 | + this.alertWarningMsg("请选择数据!"); | ||
| 465 | + return; | ||
| 466 | + } | ||
| 467 | + this.outerVisible = true; | ||
| 468 | + }, | ||
| 469 | + | ||
| 470 | + dialogClose() { | ||
| 471 | + this.outerVisible = false; | ||
| 472 | + this.search(1); | ||
| 473 | + }, | ||
| 474 | + //分页 | ||
| 475 | + currentChange(val) { | ||
| 476 | + this.page.pageIndex = val.page; | ||
| 477 | + this.search(1); | ||
| 478 | + }, | ||
| 479 | + sizeChange(val) { | ||
| 480 | + this.page.pageSize = val; | ||
| 481 | + this.search(1); | ||
| 482 | + }, | ||
| 483 | + input() { | ||
| 484 | + this.$forceUpdate(); | ||
| 485 | + }, | ||
| 486 | + }, | ||
| 487 | +}; | ||
| 488 | +</script> | ||
| 489 | + | ||
| 490 | +<style scoped lang="scss"> | ||
| 491 | +@import "@/assets/styles/variables.scss"; | ||
| 492 | +.entrySreach { | ||
| 493 | + height: 100%; | ||
| 494 | + background-color: $menuLightBg; | ||
| 495 | + | ||
| 496 | + .entrySreachButton { | ||
| 497 | + display: inline-block; | ||
| 498 | + font-size: 20px; | ||
| 499 | + color: $fedexButton !important; | ||
| 500 | + } | ||
| 501 | + | ||
| 502 | + .optionButton { | ||
| 503 | + padding: 10px; | ||
| 504 | + text-align: left; | ||
| 505 | + | ||
| 506 | + .el-button.dropdown-style-button { | ||
| 507 | + background-color: #ffffff !important; | ||
| 508 | + border: 2px solid $fedexBottonColor !important; /* 设置边框颜色 */ | ||
| 509 | + color: $fedexBottonColor !important; | ||
| 510 | + font-size: 12px !important; | ||
| 511 | + } | ||
| 512 | + .el-button.dropdown-style-button:hover, | ||
| 513 | + .el-button.dropdown-style-button:focus { | ||
| 514 | + color: #ffffff !important; | ||
| 515 | + background-color: $fedexBottonColor !important; | ||
| 516 | + } | ||
| 517 | + | ||
| 518 | + .el-button { | ||
| 519 | + color: $fedexButton; | ||
| 520 | + border-color: $fedexButton !important; | ||
| 521 | + | ||
| 522 | + svg { | ||
| 523 | + display: inline-block; | ||
| 524 | + margin-right: 5px; | ||
| 525 | + fill: $fedexButton; | ||
| 526 | + } | ||
| 527 | + } | ||
| 528 | + | ||
| 529 | + .entrySaveButton:hover, | ||
| 530 | + .entrySaveButton:focus { | ||
| 531 | + color: $menuLightBg !important; | ||
| 532 | + background-color: $fedexButton !important; | ||
| 533 | + } | ||
| 534 | + } | ||
| 535 | +} | ||
| 536 | + | ||
| 537 | +.texttareaTip { | ||
| 538 | + position: absolute; | ||
| 539 | + top: 52%; | ||
| 540 | + right: 20px; | ||
| 541 | + transform: translate(0, -50%); | ||
| 542 | + z-index: 10; | ||
| 543 | +} | ||
| 544 | +</style> |
| ... | @@ -64,6 +64,107 @@ | ... | @@ -64,6 +64,107 @@ |
| 64 | </Formitem> | 64 | </Formitem> |
| 65 | </el-col> | 65 | </el-col> |
| 66 | </el-row> | 66 | </el-row> |
| 67 | + <!-- 1.0.9 --> | ||
| 68 | + <!-- 电商平台代码:、电商平台名称:、收发货人代码:、收发货人名称:、生产销售企业代码:、生产销售企业名称: --> | ||
| 69 | + <!-- 证书到期时间: --> | ||
| 70 | + <el-row :gutter="5"> | ||
| 71 | + <el-col :span="8"> | ||
| 72 | + <Formitem label="电商平台代码" prop="ebpcode" type="edit"> | ||
| 73 | + <el-input | ||
| 74 | + type="text" | ||
| 75 | + class="inputShadow" | ||
| 76 | + id="inputInner-edit-ebpcode" | ||
| 77 | + resize="none" | ||
| 78 | + v-model="formData.ebpcode" | ||
| 79 | + clearable | ||
| 80 | + placeholder="" | ||
| 81 | + ></el-input> | ||
| 82 | + </Formitem> | ||
| 83 | + </el-col> | ||
| 84 | + <el-col :span="8"> | ||
| 85 | + <Formitem label="电商平台名称" prop="ebpname" type="edit"> | ||
| 86 | + <el-input | ||
| 87 | + type="text" | ||
| 88 | + class="inputShadow" | ||
| 89 | + id="inputInner-edit-ebpname" | ||
| 90 | + resize="none" | ||
| 91 | + v-model="formData.ebpname" | ||
| 92 | + clearable | ||
| 93 | + placeholder="" | ||
| 94 | + ></el-input> | ||
| 95 | + </Formitem> | ||
| 96 | + </el-col> | ||
| 97 | + <el-col :span="8"> | ||
| 98 | + <Formitem | ||
| 99 | + label="收发货人代码" | ||
| 100 | + prop="consigneeShipperCode" | ||
| 101 | + type="edit" | ||
| 102 | + > | ||
| 103 | + <el-input | ||
| 104 | + type="text" | ||
| 105 | + class="inputShadow" | ||
| 106 | + id="inputInner-edit-consigneeShipperCode" | ||
| 107 | + resize="none" | ||
| 108 | + v-model="formData.consigneeShipperCode" | ||
| 109 | + clearable | ||
| 110 | + placeholder="" | ||
| 111 | + ></el-input> | ||
| 112 | + </Formitem> | ||
| 113 | + </el-col> | ||
| 114 | + </el-row> | ||
| 115 | + <el-row :gutter="5"> | ||
| 116 | + <el-col :span="8"> | ||
| 117 | + <Formitem | ||
| 118 | + label="收发货人名称" | ||
| 119 | + prop="consigneeShipperName" | ||
| 120 | + type="edit" | ||
| 121 | + > | ||
| 122 | + <el-input | ||
| 123 | + type="text" | ||
| 124 | + class="inputShadow" | ||
| 125 | + id="inputInner-edit-consigneeShipperName" | ||
| 126 | + resize="none" | ||
| 127 | + v-model="formData.consigneeShipperName" | ||
| 128 | + clearable | ||
| 129 | + placeholder="" | ||
| 130 | + ></el-input> | ||
| 131 | + </Formitem> | ||
| 132 | + </el-col> | ||
| 133 | + <el-col :span="8"> | ||
| 134 | + <Formitem | ||
| 135 | + label="生产销售企业代码" | ||
| 136 | + prop="productionSaleEnterpriseCode" | ||
| 137 | + type="edit" | ||
| 138 | + > | ||
| 139 | + <el-input | ||
| 140 | + type="text" | ||
| 141 | + class="inputShadow" | ||
| 142 | + id="inputInner-edit-productionSaleEnterpriseCode" | ||
| 143 | + resize="none" | ||
| 144 | + v-model="formData.productionSaleEnterpriseCode" | ||
| 145 | + clearable | ||
| 146 | + placeholder="" | ||
| 147 | + ></el-input> | ||
| 148 | + </Formitem> | ||
| 149 | + </el-col> | ||
| 150 | + <el-col :span="8"> | ||
| 151 | + <Formitem | ||
| 152 | + label="生产销售企业名称" | ||
| 153 | + prop="productionSaleEnterpriseName" | ||
| 154 | + type="edit" | ||
| 155 | + > | ||
| 156 | + <el-input | ||
| 157 | + type="text" | ||
| 158 | + class="inputShadow" | ||
| 159 | + id="inputInner-edit-productionSaleEnterpriseName" | ||
| 160 | + resize="none" | ||
| 161 | + v-model="formData.productionSaleEnterpriseName" | ||
| 162 | + clearable | ||
| 163 | + placeholder="" | ||
| 164 | + ></el-input> | ||
| 165 | + </Formitem> | ||
| 166 | + </el-col> | ||
| 167 | + </el-row> | ||
| 67 | <el-row :gutter="5"> | 168 | <el-row :gutter="5"> |
| 68 | <!-- 订单申报方 --> | 169 | <!-- 订单申报方 --> |
| 69 | <el-col :span="8"> | 170 | <el-col :span="8"> |
| ... | @@ -77,7 +178,8 @@ | ... | @@ -77,7 +178,8 @@ |
| 77 | placeholder="" | 178 | placeholder="" |
| 78 | > | 179 | > |
| 79 | <el-option | 180 | <el-option |
| 80 | - v-for="(item, index) in $store.getters.dict.ORDER_DECLARATION_PARTY" | 181 | + v-for="(item, index) in $store.getters.dict |
| 182 | + .ORDER_DECLARATION_PARTY" | ||
| 81 | :key="index" | 183 | :key="index" |
| 82 | :label="item.itemChineseName" | 184 | :label="item.itemChineseName" |
| 83 | :value="item.itemValue" | 185 | :value="item.itemValue" |
| ... | @@ -158,7 +260,11 @@ | ... | @@ -158,7 +260,11 @@ |
| 158 | </el-col> | 260 | </el-col> |
| 159 | <!-- </div>--> | 261 | <!-- </div>--> |
| 160 | <el-col :span="8"> | 262 | <el-col :span="8"> |
| 161 | - <Formitem label="山电DXPID" prop="qingdaoDanyiUserDxpid" type="edit"> | 263 | + <Formitem |
| 264 | + label="山电DXPID" | ||
| 265 | + prop="qingdaoDanyiUserDxpid" | ||
| 266 | + type="edit" | ||
| 267 | + > | ||
| 162 | <el-input | 268 | <el-input |
| 163 | type="text" | 269 | type="text" |
| 164 | class="inputShadow" | 270 | class="inputShadow" |
| ... | @@ -184,7 +290,11 @@ | ... | @@ -184,7 +290,11 @@ |
| 184 | </Formitem> | 290 | </Formitem> |
| 185 | </el-col> | 291 | </el-col> |
| 186 | <el-col :span="8"> | 292 | <el-col :span="8"> |
| 187 | - <Formitem label="山电用户密码" prop="qingdaoUserPassword" type="edit"> | 293 | + <Formitem |
| 294 | + label="山电用户密码" | ||
| 295 | + prop="qingdaoUserPassword" | ||
| 296 | + type="edit" | ||
| 297 | + > | ||
| 188 | <el-input | 298 | <el-input |
| 189 | type="text" | 299 | type="text" |
| 190 | class="inputShadow" | 300 | class="inputShadow" |
| ... | @@ -196,7 +306,7 @@ | ... | @@ -196,7 +306,7 @@ |
| 196 | ></el-input> | 306 | ></el-input> |
| 197 | </Formitem> | 307 | </Formitem> |
| 198 | </el-col> | 308 | </el-col> |
| 199 | - <el-col :span="16" style="padding-right: 5px;"> | 309 | + <el-col :span="16" style="padding-right: 5px"> |
| 200 | <div class="uploadItem"> | 310 | <div class="uploadItem"> |
| 201 | <div class="uploadbox"> | 311 | <div class="uploadbox"> |
| 202 | <el-button | 312 | <el-button |
| ... | @@ -218,7 +328,13 @@ | ... | @@ -218,7 +328,13 @@ |
| 218 | > | 328 | > |
| 219 | </el-upload> | 329 | </el-upload> |
| 220 | </div> | 330 | </div> |
| 221 | - <div class="fileList" v-if="portConfig.TAO.certificateBase64 != '' || portConfig.TAO.certificateName"> | 331 | + <div |
| 332 | + class="fileList" | ||
| 333 | + v-if=" | ||
| 334 | + portConfig.TAO.certificateBase64 != '' || | ||
| 335 | + portConfig.TAO.certificateName | ||
| 336 | + " | ||
| 337 | + > | ||
| 222 | <div class="fileList-item"> | 338 | <div class="fileList-item"> |
| 223 | <div class="uploadbox-fileName"> | 339 | <div class="uploadbox-fileName"> |
| 224 | <svg-icon | 340 | <svg-icon |
| ... | @@ -236,9 +352,8 @@ | ... | @@ -236,9 +352,8 @@ |
| 236 | :title="$t('entry.upload.delTip')" | 352 | :title="$t('entry.upload.delTip')" |
| 237 | @confirm="delQingdaoTypeDFile" | 353 | @confirm="delQingdaoTypeDFile" |
| 238 | > | 354 | > |
| 239 | - <el-button slot="reference" type="text">{{ | 355 | + <el-button slot="reference" type="text" |
| 240 | - $t("entry.upload.del") | 356 | + >{{ $t("entry.upload.del") }} |
| 241 | - }} | ||
| 242 | </el-button> | 357 | </el-button> |
| 243 | </el-popconfirm> | 358 | </el-popconfirm> |
| 244 | </div> | 359 | </div> |
| ... | @@ -258,7 +373,8 @@ | ... | @@ -258,7 +373,8 @@ |
| 258 | placeholder="" | 373 | placeholder="" |
| 259 | > | 374 | > |
| 260 | <el-option | 375 | <el-option |
| 261 | - v-for="(item, index) in $store.getters.dict.METHOD_OF_SIGNATURE" | 376 | + v-for="(item, index) in $store.getters.dict |
| 377 | + .METHOD_OF_SIGNATURE" | ||
| 262 | :key="index" | 378 | :key="index" |
| 263 | :label="item.itemChineseName" | 379 | :label="item.itemChineseName" |
| 264 | :value="item.itemValue" | 380 | :value="item.itemValue" |
| ... | @@ -317,7 +433,11 @@ | ... | @@ -317,7 +433,11 @@ |
| 317 | </section> | 433 | </section> |
| 318 | <el-row :gutter="5"> | 434 | <el-row :gutter="5"> |
| 319 | <el-col :span="8"> | 435 | <el-col :span="8"> |
| 320 | - <Formitem label="证书序列号" prop="certificateSerialNumber" type="edit"> | 436 | + <Formitem |
| 437 | + label="证书序列号" | ||
| 438 | + prop="certificateSerialNumber" | ||
| 439 | + type="edit" | ||
| 440 | + > | ||
| 321 | <el-input | 441 | <el-input |
| 322 | type="text" | 442 | type="text" |
| 323 | class="inputShadow" | 443 | class="inputShadow" |
| ... | @@ -330,7 +450,11 @@ | ... | @@ -330,7 +450,11 @@ |
| 330 | </Formitem> | 450 | </Formitem> |
| 331 | </el-col> | 451 | </el-col> |
| 332 | <el-col :span="8"> | 452 | <el-col :span="8"> |
| 333 | - <Formitem label="证书索引号" prop="certificateIndexNumber" type="edit"> | 453 | + <Formitem |
| 454 | + label="证书索引号" | ||
| 455 | + prop="certificateIndexNumber" | ||
| 456 | + type="edit" | ||
| 457 | + > | ||
| 334 | <el-input | 458 | <el-input |
| 335 | type="text" | 459 | type="text" |
| 336 | class="inputShadow" | 460 | class="inputShadow" |
| ... | @@ -342,7 +466,34 @@ | ... | @@ -342,7 +466,34 @@ |
| 342 | ></el-input> | 466 | ></el-input> |
| 343 | </Formitem> | 467 | </Formitem> |
| 344 | </el-col> | 468 | </el-col> |
| 345 | - <el-col :span="16" style="padding-right: 5px;"> | 469 | + <el-col :span="8"> |
| 470 | + <Formitem | ||
| 471 | + label="证书到期时间" | ||
| 472 | + prop="certificateExpirationTime" | ||
| 473 | + type="edit" | ||
| 474 | + > | ||
| 475 | + <el-date-picker | ||
| 476 | + id="inputInner-edit-certificateExpirationTime" | ||
| 477 | + v-model="formData.certificateExpirationTime" | ||
| 478 | + type="date" | ||
| 479 | + value-format="yyyy-MM-dd" | ||
| 480 | + clearable | ||
| 481 | + placeholder="" | ||
| 482 | + prefix-icon="none" | ||
| 483 | + > | ||
| 484 | + </el-date-picker> | ||
| 485 | + <!-- <el-input | ||
| 486 | + type="text" | ||
| 487 | + class="inputShadow" | ||
| 488 | + id="inputInner-edit-certificateExpirationTime" | ||
| 489 | + resize="none" | ||
| 490 | + v-model="formData.certificateExpirationTime" | ||
| 491 | + clearable | ||
| 492 | + placeholder="" | ||
| 493 | + ></el-input> --> | ||
| 494 | + </Formitem> | ||
| 495 | + </el-col> | ||
| 496 | + <el-col :span="16" style="padding-right: 5px"> | ||
| 346 | <div class="uploadItem"> | 497 | <div class="uploadItem"> |
| 347 | <div class="uploadbox"> | 498 | <div class="uploadbox"> |
| 348 | <el-button | 499 | <el-button |
| ... | @@ -365,7 +516,10 @@ | ... | @@ -365,7 +516,10 @@ |
| 365 | </el-upload> | 516 | </el-upload> |
| 366 | </div> | 517 | </div> |
| 367 | <!-- 1{{ formData.file }} --> | 518 | <!-- 1{{ formData.file }} --> |
| 368 | - <div class="fileList" v-if="formData.file != null || formData.certificare"> | 519 | + <div |
| 520 | + class="fileList" | ||
| 521 | + v-if="formData.file != null || formData.certificare" | ||
| 522 | + > | ||
| 369 | <div class="fileList-item"> | 523 | <div class="fileList-item"> |
| 370 | <div class="uploadbox-fileName"> | 524 | <div class="uploadbox-fileName"> |
| 371 | <svg-icon | 525 | <svg-icon |
| ... | @@ -374,8 +528,16 @@ | ... | @@ -374,8 +528,16 @@ |
| 374 | style="font-size: 18px; color: #de002e" | 528 | style="font-size: 18px; color: #de002e" |
| 375 | /> | 529 | /> |
| 376 | <Tooltip | 530 | <Tooltip |
| 377 | - :content="formData.file ? formData.file.name : formData.certificare" | 531 | + :content=" |
| 378 | - :refName="formData.file ? formData.file.name : formData.certificare" | 532 | + formData.file |
| 533 | + ? formData.file.name | ||
| 534 | + : formData.certificare | ||
| 535 | + " | ||
| 536 | + :refName=" | ||
| 537 | + formData.file | ||
| 538 | + ? formData.file.name | ||
| 539 | + : formData.certificare | ||
| 540 | + " | ||
| 379 | /> | 541 | /> |
| 380 | </div> | 542 | </div> |
| 381 | <div class="uploadbox-option"> | 543 | <div class="uploadbox-option"> |
| ... | @@ -383,9 +545,8 @@ | ... | @@ -383,9 +545,8 @@ |
| 383 | :title="$t('entry.upload.delTip')" | 545 | :title="$t('entry.upload.delTip')" |
| 384 | @confirm="delTypeDFile" | 546 | @confirm="delTypeDFile" |
| 385 | > | 547 | > |
| 386 | - <el-button slot="reference" type="text">{{ | 548 | + <el-button slot="reference" type="text" |
| 387 | - $t("entry.upload.del") | 549 | + >{{ $t("entry.upload.del") }} |
| 388 | - }} | ||
| 389 | </el-button> | 550 | </el-button> |
| 390 | </el-popconfirm> | 551 | </el-popconfirm> |
| 391 | </div> | 552 | </div> |
| ... | @@ -393,7 +554,6 @@ | ... | @@ -393,7 +554,6 @@ |
| 393 | </div> | 554 | </div> |
| 394 | </div> | 555 | </div> |
| 395 | </el-col> | 556 | </el-col> |
| 396 | - | ||
| 397 | </el-row> | 557 | </el-row> |
| 398 | </el-form> | 558 | </el-form> |
| 399 | </div> | 559 | </div> |
| ... | @@ -403,15 +563,13 @@ | ... | @@ -403,15 +563,13 @@ |
| 403 | :disabled="loadings.submitLoading" | 563 | :disabled="loadings.submitLoading" |
| 404 | @click="submit" | 564 | @click="submit" |
| 405 | >确 定 | 565 | >确 定 |
| 406 | - </el-button | 566 | + </el-button> |
| 407 | - > | ||
| 408 | <el-button | 567 | <el-button |
| 409 | class="entrySaveButton" | 568 | class="entrySaveButton" |
| 410 | :disabled="loadings.uploadLoading" | 569 | :disabled="loadings.uploadLoading" |
| 411 | @click="close" | 570 | @click="close" |
| 412 | >关 闭 | 571 | >关 闭 |
| 413 | - </el-button | 572 | + </el-button> |
| 414 | - > | ||
| 415 | </div> | 573 | </div> |
| 416 | </el-dialog> | 574 | </el-dialog> |
| 417 | </template> | 575 | </template> |
| ... | @@ -423,7 +581,7 @@ import { | ... | @@ -423,7 +581,7 @@ import { |
| 423 | uploadQingdaoCertificate, | 581 | uploadQingdaoCertificate, |
| 424 | updateCustomerData, | 582 | updateCustomerData, |
| 425 | delCertificate, | 583 | delCertificate, |
| 426 | - delQingdaoCertificate | 584 | + delQingdaoCertificate, |
| 427 | } from "@/api/system/customer-ai.js"; | 585 | } from "@/api/system/customer-ai.js"; |
| 428 | 586 | ||
| 429 | export default { | 587 | export default { |
| ... | @@ -444,7 +602,7 @@ export default { | ... | @@ -444,7 +602,7 @@ export default { |
| 444 | type: Object, | 602 | type: Object, |
| 445 | default: null, | 603 | default: null, |
| 446 | }, | 604 | }, |
| 447 | - portCodeList: [] | 605 | + portCodeList: [], |
| 448 | // dict: { | 606 | // dict: { |
| 449 | // type: Array, | 607 | // type: Array, |
| 450 | // default() { | 608 | // default() { |
| ... | @@ -457,20 +615,20 @@ export default { | ... | @@ -457,20 +615,20 @@ export default { |
| 457 | //配置模板 | 615 | //配置模板 |
| 458 | portConfig: { | 616 | portConfig: { |
| 459 | PEK: { | 617 | PEK: { |
| 460 | - dxpId: '', | 618 | + dxpId: "", |
| 461 | - signMethod:"CIPHER_MACHINE" | 619 | + signMethod: "CIPHER_MACHINE", |
| 462 | }, | 620 | }, |
| 463 | TAO: { | 621 | TAO: { |
| 464 | - dxpId: '', | 622 | + dxpId: "", |
| 465 | - userId: '', | 623 | + userId: "", |
| 466 | - key: '', | 624 | + key: "", |
| 467 | - danyiDxpId: '', | 625 | + danyiDxpId: "", |
| 468 | - userName: '', | 626 | + userName: "", |
| 469 | - password: '', | 627 | + password: "", |
| 470 | - certificateName: '', | 628 | + certificateName: "", |
| 471 | - certificateBase64: '', | 629 | + certificateBase64: "", |
| 472 | - methodOfSignature: '' | 630 | + methodOfSignature: "", |
| 473 | - } | 631 | + }, |
| 474 | }, | 632 | }, |
| 475 | choosePortCode: [], | 633 | choosePortCode: [], |
| 476 | formData: { | 634 | formData: { |
| ... | @@ -485,6 +643,13 @@ export default { | ... | @@ -485,6 +643,13 @@ export default { |
| 485 | certificateSerialNumber: "", | 643 | certificateSerialNumber: "", |
| 486 | certificateIndexNumber: "", | 644 | certificateIndexNumber: "", |
| 487 | file: null, | 645 | file: null, |
| 646 | + certificateExpirationTime: "", //证书到期时间 | ||
| 647 | + ebpcode: "", //电商平台代码 | ||
| 648 | + ebpname: "", //电商平台名称 | ||
| 649 | + consigneeShipperCode: "", //收发货人代码 | ||
| 650 | + consigneeShipperName: "", //收发货人名称 | ||
| 651 | + productionSaleEnterpriseCode: "", //生产销售企业代码 | ||
| 652 | + productionSaleEnterpriseName: "", //生产销售企业名称 | ||
| 488 | }, | 653 | }, |
| 489 | rules: { | 654 | rules: { |
| 490 | ecomEntCode: [ | 655 | ecomEntCode: [ |
| ... | @@ -500,7 +665,6 @@ export default { | ... | @@ -500,7 +665,6 @@ export default { |
| 500 | trigger: "blur", | 665 | trigger: "blur", |
| 501 | message: "电商企业名称不能为空!", | 666 | message: "电商企业名称不能为空!", |
| 502 | }, | 667 | }, |
| 503 | - | ||
| 504 | ], | 668 | ], |
| 505 | orderRequester: [ | 669 | orderRequester: [ |
| 506 | { | 670 | { |
| ... | @@ -582,10 +746,10 @@ export default { | ... | @@ -582,10 +746,10 @@ export default { |
| 582 | } | 746 | } |
| 583 | } | 747 | } |
| 584 | if (this.active?.config != null) { | 748 | if (this.active?.config != null) { |
| 585 | - this.choosePortCode = Object.keys(this.active.config) | 749 | + this.choosePortCode = Object.keys(this.active.config); |
| 586 | - Object.keys(this.active.config).forEach(key => { | 750 | + Object.keys(this.active.config).forEach((key) => { |
| 587 | - this.portConfig[key] = this.active.config[key] | 751 | + this.portConfig[key] = this.active.config[key]; |
| 588 | - }) | 752 | + }); |
| 589 | } | 753 | } |
| 590 | }, | 754 | }, |
| 591 | // type(newVal) { | 755 | // type(newVal) { |
| ... | @@ -664,8 +828,7 @@ export default { | ... | @@ -664,8 +828,7 @@ export default { |
| 664 | // qingdaoBeforeUpload(val) { | 828 | // qingdaoBeforeUpload(val) { |
| 665 | // return true; | 829 | // return true; |
| 666 | // }, | 830 | // }, |
| 667 | - fileUpload({file}) { | 831 | + fileUpload({ file }) { |
| 668 | - | ||
| 669 | const reader = new FileReader(); | 832 | const reader = new FileReader(); |
| 670 | reader.readAsDataURL(file); | 833 | reader.readAsDataURL(file); |
| 671 | reader.onload = (e) => { | 834 | reader.onload = (e) => { |
| ... | @@ -676,24 +839,21 @@ export default { | ... | @@ -676,24 +839,21 @@ export default { |
| 676 | }; | 839 | }; |
| 677 | this.formData.file = obj; | 840 | this.formData.file = obj; |
| 678 | }; | 841 | }; |
| 679 | - | ||
| 680 | }, | 842 | }, |
| 681 | - qingdaoFileUpload({file}) { | 843 | + qingdaoFileUpload({ file }) { |
| 682 | - | ||
| 683 | const reader = new FileReader(); | 844 | const reader = new FileReader(); |
| 684 | reader.readAsDataURL(file); | 845 | reader.readAsDataURL(file); |
| 685 | console.log(file); | 846 | console.log(file); |
| 686 | reader.onload = (e) => { | 847 | reader.onload = (e) => { |
| 687 | console.log(e); | 848 | console.log(e); |
| 688 | - this.portConfig.TAO.certificateName = file.name | 849 | + this.portConfig.TAO.certificateName = file.name; |
| 689 | - this.portConfig.TAO.certificateBase64 = e.target.result | 850 | + this.portConfig.TAO.certificateBase64 = e.target.result; |
| 690 | // let obj = { | 851 | // let obj = { |
| 691 | // file: e.target.result, | 852 | // file: e.target.result, |
| 692 | // name: file.name, | 853 | // name: file.name, |
| 693 | // }; | 854 | // }; |
| 694 | // this.formData.qingdaoFile = obj; | 855 | // this.formData.qingdaoFile = obj; |
| 695 | }; | 856 | }; |
| 696 | - | ||
| 697 | }, | 857 | }, |
| 698 | // fileChange(val) { | 858 | // fileChange(val) { |
| 699 | // }, | 859 | // }, |
| ... | @@ -724,7 +884,8 @@ export default { | ... | @@ -724,7 +884,8 @@ export default { |
| 724 | //删除证书 | 884 | //删除证书 |
| 725 | delCertificate() { | 885 | delCertificate() { |
| 726 | if (this.formData.id && this.formData.certificare) { | 886 | if (this.formData.id && this.formData.certificare) { |
| 727 | - delCertificate(this.formData.id, this.formData.certificare).then((res) => { | 887 | + delCertificate(this.formData.id, this.formData.certificare) |
| 888 | + .then((res) => { | ||
| 728 | if (res.code == 200) { | 889 | if (res.code == 200) { |
| 729 | this.formData.file = null; | 890 | this.formData.file = null; |
| 730 | this.formData.certificare = ""; | 891 | this.formData.certificare = ""; |
| ... | @@ -732,10 +893,11 @@ export default { | ... | @@ -732,10 +893,11 @@ export default { |
| 732 | } else { | 893 | } else { |
| 733 | this.alertErrorMsg("证书删除失败,请联系管理员!"); | 894 | this.alertErrorMsg("证书删除失败,请联系管理员!"); |
| 734 | } | 895 | } |
| 735 | - }).catch((err) => { | 896 | + }) |
| 897 | + .catch((err) => { | ||
| 736 | console.log(err); | 898 | console.log(err); |
| 737 | this.alertErrorMsg("证书删除失败,请联系管理员!"); | 899 | this.alertErrorMsg("证书删除失败,请联系管理员!"); |
| 738 | - }) | 900 | + }); |
| 739 | } else { | 901 | } else { |
| 740 | this.formData.file = null; | 902 | this.formData.file = null; |
| 741 | this.formData.certificare = ""; | 903 | this.formData.certificare = ""; |
| ... | @@ -767,7 +929,7 @@ export default { | ... | @@ -767,7 +929,7 @@ export default { |
| 767 | //查询用户信息详情 | 929 | //查询用户信息详情 |
| 768 | searchUserData(id) { | 930 | searchUserData(id) { |
| 769 | this.loadings.dialogLoading = true; | 931 | this.loadings.dialogLoading = true; |
| 770 | - getUserDetailData({id: id}) | 932 | + getUserDetailData({ id: id }) |
| 771 | .then((res) => { | 933 | .then((res) => { |
| 772 | if (res.code === "200") { | 934 | if (res.code === "200") { |
| 773 | this.formData = res.data; | 935 | this.formData = res.data; |
| ... | @@ -783,7 +945,7 @@ export default { | ... | @@ -783,7 +945,7 @@ export default { |
| 783 | }, | 945 | }, |
| 784 | //数据保存 | 946 | //数据保存 |
| 785 | submit() { | 947 | submit() { |
| 786 | - this.handlePortConfigJson() | 948 | + this.handlePortConfigJson(); |
| 787 | this.loadings.dialogLoading = true; | 949 | this.loadings.dialogLoading = true; |
| 788 | let obj = {}; | 950 | let obj = {}; |
| 789 | // this.formData.checkboxState = this.checkboxState(); | 951 | // this.formData.checkboxState = this.checkboxState(); |
| ... | @@ -812,24 +974,37 @@ export default { | ... | @@ -812,24 +974,37 @@ export default { |
| 812 | } | 974 | } |
| 813 | }, | 975 | }, |
| 814 | handlePortConfigJson() { | 976 | handlePortConfigJson() { |
| 815 | - this.formData.config = {} | 977 | + this.formData.config = {}; |
| 816 | - this.choosePortCode.forEach(portCode => { | 978 | + this.choosePortCode.forEach((portCode) => { |
| 817 | - this.formData.config[portCode] = JSON.stringify(this.portConfig[portCode]) | 979 | + this.formData.config[portCode] = JSON.stringify( |
| 818 | - }) | 980 | + this.portConfig[portCode] |
| 981 | + ); | ||
| 982 | + }); | ||
| 819 | }, | 983 | }, |
| 820 | addApi(val) { | 984 | addApi(val) { |
| 821 | addCustomerData(val) | 985 | addCustomerData(val) |
| 822 | .then((res) => { | 986 | .then((res) => { |
| 823 | if (res.code === "200") { | 987 | if (res.code === "200") { |
| 824 | if (this.formData.file) { | 988 | if (this.formData.file) { |
| 825 | - this.uploadCertificate(val.ecomEntCode, this.base64ConvertFile(this.formData.file.file, this.formData.file.name)); | 989 | + this.uploadCertificate( |
| 990 | + val.ecomEntCode, | ||
| 991 | + this.base64ConvertFile( | ||
| 992 | + this.formData.file.file, | ||
| 993 | + this.formData.file.name | ||
| 994 | + ) | ||
| 995 | + ); | ||
| 826 | } | 996 | } |
| 827 | if (this.formData.qingdaoFile) { | 997 | if (this.formData.qingdaoFile) { |
| 828 | - this.uploadQingdaoCertificate(val.ecomEntCode, this.base64ConvertFile(this.formData.qingdaoFile.file, this.formData.qingdaoFile.name)); | 998 | + this.uploadQingdaoCertificate( |
| 999 | + val.ecomEntCode, | ||
| 1000 | + this.base64ConvertFile( | ||
| 1001 | + this.formData.qingdaoFile.file, | ||
| 1002 | + this.formData.qingdaoFile.name | ||
| 1003 | + ) | ||
| 1004 | + ); | ||
| 829 | } | 1005 | } |
| 830 | this.msgSuccess("客户添加成功!"); | 1006 | this.msgSuccess("客户添加成功!"); |
| 831 | this.close(); | 1007 | this.close(); |
| 832 | - | ||
| 833 | } else { | 1008 | } else { |
| 834 | this.alertWarningMsg(res.message); | 1009 | this.alertWarningMsg(res.message); |
| 835 | this.loadings.dialogLoading = false; | 1010 | this.loadings.dialogLoading = false; |
| ... | @@ -841,7 +1016,6 @@ export default { | ... | @@ -841,7 +1016,6 @@ export default { |
| 841 | }); | 1016 | }); |
| 842 | }, | 1017 | }, |
| 843 | uploadCertificate(ecomEntCode, file) { | 1018 | uploadCertificate(ecomEntCode, file) { |
| 844 | - | ||
| 845 | uploadCertificate(ecomEntCode, file) | 1019 | uploadCertificate(ecomEntCode, file) |
| 846 | .then((uploadRes) => { | 1020 | .then((uploadRes) => { |
| 847 | if (uploadRes.code === "200") { | 1021 | if (uploadRes.code === "200") { |
| ... | @@ -859,7 +1033,6 @@ export default { | ... | @@ -859,7 +1033,6 @@ export default { |
| 859 | }, | 1033 | }, |
| 860 | 1034 | ||
| 861 | uploadQingdaoCertificate(ecomEntCode, file) { | 1035 | uploadQingdaoCertificate(ecomEntCode, file) { |
| 862 | - | ||
| 863 | uploadQingdaoCertificate(ecomEntCode, file) | 1036 | uploadQingdaoCertificate(ecomEntCode, file) |
| 864 | .then((uploadRes) => { | 1037 | .then((uploadRes) => { |
| 865 | if (uploadRes.code === "200") { | 1038 | if (uploadRes.code === "200") { |
| ... | @@ -883,14 +1056,25 @@ export default { | ... | @@ -883,14 +1056,25 @@ export default { |
| 883 | // this.msgSuccess(res.message); | 1056 | // this.msgSuccess(res.message); |
| 884 | // this.close(); | 1057 | // this.close(); |
| 885 | if (this.formData.file) { | 1058 | if (this.formData.file) { |
| 886 | - this.uploadCertificate(val.ecomEntCode, this.base64ConvertFile(this.formData.file.file, this.formData.file.name)); | 1059 | + this.uploadCertificate( |
| 1060 | + val.ecomEntCode, | ||
| 1061 | + this.base64ConvertFile( | ||
| 1062 | + this.formData.file.file, | ||
| 1063 | + this.formData.file.name | ||
| 1064 | + ) | ||
| 1065 | + ); | ||
| 887 | } | 1066 | } |
| 888 | if (this.formData.qingdaoFile) { | 1067 | if (this.formData.qingdaoFile) { |
| 889 | - this.uploadQingdaoCertificate(val.ecomEntCode, this.base64ConvertFile(this.formData.qingdaoFile.file, this.formData.qingdaoFile.name)); | 1068 | + this.uploadQingdaoCertificate( |
| 1069 | + val.ecomEntCode, | ||
| 1070 | + this.base64ConvertFile( | ||
| 1071 | + this.formData.qingdaoFile.file, | ||
| 1072 | + this.formData.qingdaoFile.name | ||
| 1073 | + ) | ||
| 1074 | + ); | ||
| 890 | } | 1075 | } |
| 891 | this.msgSuccess("客户修改成功!"); | 1076 | this.msgSuccess("客户修改成功!"); |
| 892 | this.close(); | 1077 | this.close(); |
| 893 | - | ||
| 894 | } else { | 1078 | } else { |
| 895 | this.alertWarningMsg(res.message); | 1079 | this.alertWarningMsg(res.message); |
| 896 | this.loadings.dialogLoading = false; | 1080 | this.loadings.dialogLoading = false; |
| ... | @@ -927,19 +1111,26 @@ export default { | ... | @@ -927,19 +1111,26 @@ export default { |
| 927 | certificateSerialNumber: "", | 1111 | certificateSerialNumber: "", |
| 928 | certificateIndexNumber: "", | 1112 | certificateIndexNumber: "", |
| 929 | file: null, | 1113 | file: null, |
| 1114 | + certificateExpirationTime: "", //证书到期时间 | ||
| 1115 | + ebpcode: "", //电商平台代码 | ||
| 1116 | + ebpname: "", //电商平台名称 | ||
| 1117 | + consigneeShipperCode: "", //收发货人代码 | ||
| 1118 | + consigneeShipperName: "", //收发货人名称 | ||
| 1119 | + productionSaleEnterpriseCode: "", //生产销售企业代码 | ||
| 1120 | + productionSaleEnterpriseName: "", //生产销售企业名称 | ||
| 930 | }; | 1121 | }; |
| 931 | - this.choosePortCode = [] | 1122 | + this.choosePortCode = []; |
| 932 | - this.clearPortConfig(this.portConfig) | 1123 | + this.clearPortConfig(this.portConfig); |
| 933 | // this.handleRemove(); | 1124 | // this.handleRemove(); |
| 934 | this.$emit("close"); | 1125 | this.$emit("close"); |
| 935 | }, | 1126 | }, |
| 936 | clearPortConfig(obj) { | 1127 | clearPortConfig(obj) { |
| 937 | for (let key in obj) { | 1128 | for (let key in obj) { |
| 938 | if (obj.hasOwnProperty(key)) { | 1129 | if (obj.hasOwnProperty(key)) { |
| 939 | - if (typeof obj[key] === 'object' && obj[key] !== null) { | 1130 | + if (typeof obj[key] === "object" && obj[key] !== null) { |
| 940 | this.clearPortConfig(obj[key]); // 递归处理嵌套对象 | 1131 | this.clearPortConfig(obj[key]); // 递归处理嵌套对象 |
| 941 | } else { | 1132 | } else { |
| 942 | - obj[key] = ''; // 设置为一个空字符串 | 1133 | + obj[key] = ""; // 设置为一个空字符串 |
| 943 | } | 1134 | } |
| 944 | } | 1135 | } |
| 945 | } | 1136 | } |
| ... | @@ -957,7 +1148,7 @@ export default { | ... | @@ -957,7 +1148,7 @@ export default { |
| 957 | // this.formData.file = null; | 1148 | // this.formData.file = null; |
| 958 | // // this.delCertificate(); //删除证书 | 1149 | // // this.delCertificate(); //删除证书 |
| 959 | // } | 1150 | // } |
| 960 | - } | 1151 | + }, |
| 961 | }, | 1152 | }, |
| 962 | }; | 1153 | }; |
| 963 | </script> | 1154 | </script> | ... | ... |
| ... | @@ -126,7 +126,8 @@ | ... | @@ -126,7 +126,8 @@ |
| 126 | ref="entryTable" | 126 | ref="entryTable" |
| 127 | :data="tableData" | 127 | :data="tableData" |
| 128 | :headerData="headerData" | 128 | :headerData="headerData" |
| 129 | - :maxHeight="tableMaxheight" | 129 | + :height="tableMaxheight + 'px'" |
| 130 | + :maxHeight="tableMaxheight + 'px'" | ||
| 130 | :border="true" | 131 | :border="true" |
| 131 | :pagination="true" | 132 | :pagination="true" |
| 132 | :order="true" | 133 | :order="true" |
| ... | @@ -144,7 +145,12 @@ | ... | @@ -144,7 +145,12 @@ |
| 144 | <template slot="optionColumn"> | 145 | <template slot="optionColumn"> |
| 145 | <el-table-column align="left" label="操作" width="150"> | 146 | <el-table-column align="left" label="操作" width="150"> |
| 146 | <template slot-scope="scope"> | 147 | <template slot-scope="scope"> |
| 147 | - <el-button type="text" @click="downloadFile(scope.row)" :disabled="!scope.row.certificare">下载证书</el-button> | 148 | + <el-button |
| 149 | + type="text" | ||
| 150 | + @click="downloadFile(scope.row)" | ||
| 151 | + :disabled="!scope.row.certificare" | ||
| 152 | + >下载证书</el-button | ||
| 153 | + > | ||
| 148 | <!-- <el-button type="text" @click="downloadQingdaoFile(scope.row)" :disabled="!scope.row.certificare">下载青岛证书</el-button> --> | 154 | <!-- <el-button type="text" @click="downloadQingdaoFile(scope.row)" :disabled="!scope.row.certificare">下载青岛证书</el-button> --> |
| 149 | <el-button type="text" @click="update(scope.row)"> 修改 </el-button> | 155 | <el-button type="text" @click="update(scope.row)"> 修改 </el-button> |
| 150 | </template> | 156 | </template> |
| ... | @@ -163,7 +169,11 @@ | ... | @@ -163,7 +169,11 @@ |
| 163 | </template> | 169 | </template> |
| 164 | 170 | ||
| 165 | <script> | 171 | <script> |
| 166 | -import { getCustomerList,downloadCertificate, downloadQingdaoCertificate } from "@/api/system/customer-ai.js"; | 172 | +import { |
| 173 | + getCustomerList, | ||
| 174 | + downloadCertificate, | ||
| 175 | + downloadQingdaoCertificate, | ||
| 176 | +} from "@/api/system/customer-ai.js"; | ||
| 167 | import { getPortList } from "@/api/system/user.js"; | 177 | import { getPortList } from "@/api/system/user.js"; |
| 168 | import DialogVue from "./dialog.vue"; | 178 | import DialogVue from "./dialog.vue"; |
| 169 | export default { | 179 | export default { |
| ... | @@ -249,8 +259,8 @@ export default { | ... | @@ -249,8 +259,8 @@ export default { |
| 249 | align: "left", | 259 | align: "left", |
| 250 | }, | 260 | }, |
| 251 | ], | 261 | ], |
| 252 | - dict:{ | 262 | + dict: { |
| 253 | - port:[] | 263 | + port: [], |
| 254 | }, | 264 | }, |
| 255 | // dict: { | 265 | // dict: { |
| 256 | // orderRequester: [ | 266 | // orderRequester: [ |
| ... | @@ -261,7 +271,7 @@ export default { | ... | @@ -261,7 +271,7 @@ export default { |
| 261 | loadings: { | 271 | loadings: { |
| 262 | searchLoading: false, | 272 | searchLoading: false, |
| 263 | }, | 273 | }, |
| 264 | - tableMaxheight: null, | 274 | + tableMaxheight: 500, |
| 265 | outerVisible: false, | 275 | outerVisible: false, |
| 266 | dialogTitle: "", | 276 | dialogTitle: "", |
| 267 | editType: "", | 277 | editType: "", |
| ... | @@ -270,18 +280,25 @@ export default { | ... | @@ -270,18 +280,25 @@ export default { |
| 270 | created() { | 280 | created() { |
| 271 | this.searchPortDictData(); | 281 | this.searchPortDictData(); |
| 272 | this.search(0); | 282 | this.search(0); |
| 283 | + this.calculateTableHeight(); | ||
| 273 | }, | 284 | }, |
| 274 | mounted() { | 285 | mounted() { |
| 275 | - this.tableMaxheight = window.innerHeight - 300; | 286 | + window.addEventListener("resize", this.calculateTableHeight); |
| 287 | + }, | ||
| 288 | + beforeDestroy() { | ||
| 289 | + window.removeEventListener("resize", this.calculateTableHeight); | ||
| 276 | }, | 290 | }, |
| 277 | methods: { | 291 | methods: { |
| 292 | + calculateTableHeight() { | ||
| 293 | + this.tableMaxheight = window.innerHeight - 300; | ||
| 294 | + }, | ||
| 278 | //查询 | 295 | //查询 |
| 279 | search(val) { | 296 | search(val) { |
| 280 | this.loadings.searchLoading = true; | 297 | this.loadings.searchLoading = true; |
| 281 | if (val == 0) { | 298 | if (val == 0) { |
| 282 | this.page.pageIndex = 1; | 299 | this.page.pageIndex = 1; |
| 283 | } | 300 | } |
| 284 | - let obj = {...this.sreachFormData}; | 301 | + let obj = { ...this.sreachFormData }; |
| 285 | obj.pageIndex = this.page.pageIndex; | 302 | obj.pageIndex = this.page.pageIndex; |
| 286 | obj.pageSize = this.page.pageSize; | 303 | obj.pageSize = this.page.pageSize; |
| 287 | obj.endCreationTime = ""; | 304 | obj.endCreationTime = ""; |
| ... | @@ -325,21 +342,21 @@ export default { | ... | @@ -325,21 +342,21 @@ export default { |
| 325 | }, | 342 | }, |
| 326 | //下载证书 | 343 | //下载证书 |
| 327 | downloadFile(val) { | 344 | downloadFile(val) { |
| 328 | - downloadCertificate(val.id,val.certificare).then((res)=>{ | 345 | + downloadCertificate(val.id, val.certificare) |
| 329 | - | 346 | + .then((res) => {}) |
| 330 | - }).catch((err)=>{ | 347 | + .catch((err) => { |
| 331 | console.log(err); | 348 | console.log(err); |
| 332 | this.alertErrorMsg("证书下载失败,请联系管理员!"); | 349 | this.alertErrorMsg("证书下载失败,请联系管理员!"); |
| 333 | - }) | 350 | + }); |
| 334 | }, | 351 | }, |
| 335 | //下载青岛证书 | 352 | //下载青岛证书 |
| 336 | downloadQingdaoFile(val) { | 353 | downloadQingdaoFile(val) { |
| 337 | - downloadQingdaoCertificate(val.id,val.certificare).then((res)=>{ | 354 | + downloadQingdaoCertificate(val.id, val.certificare) |
| 338 | - | 355 | + .then((res) => {}) |
| 339 | - }).catch((err)=>{ | 356 | + .catch((err) => { |
| 340 | console.log(err); | 357 | console.log(err); |
| 341 | this.alertErrorMsg("证书下载失败,请联系管理员!"); | 358 | this.alertErrorMsg("证书下载失败,请联系管理员!"); |
| 342 | - }) | 359 | + }); |
| 343 | }, | 360 | }, |
| 344 | addCustomer() { | 361 | addCustomer() { |
| 345 | this.dialogTitle = "新增客户"; | 362 | this.dialogTitle = "新增客户"; |
| ... | @@ -347,11 +364,11 @@ export default { | ... | @@ -347,11 +364,11 @@ export default { |
| 347 | this.outerVisible = true; | 364 | this.outerVisible = true; |
| 348 | }, | 365 | }, |
| 349 | update(val) { | 366 | update(val) { |
| 350 | - let data={ | 367 | + let data = { |
| 351 | ...val, | 368 | ...val, |
| 352 | - file:null, | 369 | + file: null, |
| 353 | - qingdaoFile:null | 370 | + qingdaoFile: null, |
| 354 | - } | 371 | + }; |
| 355 | this.dialogTitle = "修改客户"; | 372 | this.dialogTitle = "修改客户"; |
| 356 | this.editType = "update"; | 373 | this.editType = "update"; |
| 357 | this.outerVisible = true; | 374 | this.outerVisible = true; | ... | ... |
| ... | @@ -4,7 +4,7 @@ | ... | @@ -4,7 +4,7 @@ |
| 4 | title="新增模拟回执管理" | 4 | title="新增模拟回执管理" |
| 5 | :visible.sync="outerVisible" | 5 | :visible.sync="outerVisible" |
| 6 | :show-close="false" | 6 | :show-close="false" |
| 7 | - width="40%" | 7 | + width="45%" |
| 8 | :close-on-click-modal="false" | 8 | :close-on-click-modal="false" |
| 9 | :destroy-on-close="true" | 9 | :destroy-on-close="true" |
| 10 | v-loading="loadings.dialogLoading" | 10 | v-loading="loadings.dialogLoading" |
| ... | @@ -287,7 +287,7 @@ export default { | ... | @@ -287,7 +287,7 @@ export default { |
| 287 | .order-select-warp-ol { | 287 | .order-select-warp-ol { |
| 288 | ::v-deep { | 288 | ::v-deep { |
| 289 | .el-select__input { | 289 | .el-select__input { |
| 290 | - width: 40px !important; | 290 | + width: 35px !important; |
| 291 | padding-top: 0 !important; | 291 | padding-top: 0 !important; |
| 292 | } | 292 | } |
| 293 | } | 293 | } | ... | ... |
| ... | @@ -182,7 +182,7 @@ | ... | @@ -182,7 +182,7 @@ |
| 182 | </el-dropdown-menu> | 182 | </el-dropdown-menu> |
| 183 | </el-dropdown> | 183 | </el-dropdown> |
| 184 | <!-- 运抵单申报按钮 --> | 184 | <!-- 运抵单申报按钮 --> |
| 185 | - <el-button | 185 | + <!-- <el-button |
| 186 | size="small" | 186 | size="small" |
| 187 | type="primary" | 187 | type="primary" |
| 188 | class="dropdown-style-button" | 188 | class="dropdown-style-button" |
| ... | @@ -194,7 +194,7 @@ | ... | @@ -194,7 +194,7 @@ |
| 194 | icon-class="fedexDeclareIcon" | 194 | icon-class="fedexDeclareIcon" |
| 195 | ></svg-icon> | 195 | ></svg-icon> |
| 196 | 运抵单申报 | 196 | 运抵单申报 |
| 197 | - </el-button> | 197 | + </el-button> --> |
| 198 | <!-- 离境单申报按钮 --> | 198 | <!-- 离境单申报按钮 --> |
| 199 | <el-button | 199 | <el-button |
| 200 | size="small" | 200 | size="small" |
| ... | @@ -202,7 +202,11 @@ | ... | @@ -202,7 +202,11 @@ |
| 202 | class="dropdown-style-button" | 202 | class="dropdown-style-button" |
| 203 | :loading="loadings.departureLoading" | 203 | :loading="loadings.departureLoading" |
| 204 | @click=" | 204 | @click=" |
| 205 | - declareData('departureLoading', '离境单申报', 'logisticsDeparture') | 205 | + declareDataTime( |
| 206 | + 'departureLoading', | ||
| 207 | + '离境单申报', | ||
| 208 | + 'logisticsDeparture' | ||
| 209 | + ) | ||
| 206 | " | 210 | " |
| 207 | > | 211 | > |
| 208 | <svg-icon | 212 | <svg-icon |
| ... | @@ -243,9 +247,6 @@ | ... | @@ -243,9 +247,6 @@ |
| 243 | <span style="font-weight: 700; color: #515a6e">订单编号:</span> | 247 | <span style="font-weight: 700; color: #515a6e">订单编号:</span> |
| 244 | {{ selectedLogRow.orderno }} | 248 | {{ selectedLogRow.orderno }} |
| 245 | </div> | 249 | </div> |
| 246 | - <!-- <div slot="buttonLabel"> | ||
| 247 | - {{ selectedLogRow.allLogDataReceiptStatusPopoverType }} | ||
| 248 | - </div> --> | ||
| 249 | </TablePopover> | 250 | </TablePopover> |
| 250 | </section> | 251 | </section> |
| 251 | <Table | 252 | <Table |
| ... | @@ -436,6 +437,11 @@ | ... | @@ -436,6 +437,11 @@ |
| 436 | :showDialog="batchModifyVisible" | 437 | :showDialog="batchModifyVisible" |
| 437 | @cancelBatchModify="cancelBatchModify" | 438 | @cancelBatchModify="cancelBatchModify" |
| 438 | /> | 439 | /> |
| 440 | + <TimeDialog | ||
| 441 | + :timeVisible="timeVisible" | ||
| 442 | + :selected="selected" | ||
| 443 | + @close="dialogClose" | ||
| 444 | + /> | ||
| 439 | </div> | 445 | </div> |
| 440 | </template> | 446 | </template> |
| 441 | 447 | ||
| ... | @@ -458,6 +464,7 @@ import RevokeDialog from "./revokeDialog.vue"; | ... | @@ -458,6 +464,7 @@ import RevokeDialog from "./revokeDialog.vue"; |
| 458 | import TemplateDownloadDialog from "./templateDownloadDialog.vue"; | 464 | import TemplateDownloadDialog from "./templateDownloadDialog.vue"; |
| 459 | import ExportDialog from "./exportDialog.vue"; | 465 | import ExportDialog from "./exportDialog.vue"; |
| 460 | import BatchModify from "./batchModify.vue"; | 466 | import BatchModify from "./batchModify.vue"; |
| 467 | +import TimeDialog from "./time-dialog.vue"; | ||
| 461 | export default { | 468 | export default { |
| 462 | name: "ReportingData", | 469 | name: "ReportingData", |
| 463 | components: { | 470 | components: { |
| ... | @@ -466,6 +473,7 @@ export default { | ... | @@ -466,6 +473,7 @@ export default { |
| 466 | TemplateDownloadDialog, | 473 | TemplateDownloadDialog, |
| 467 | ExportDialog, | 474 | ExportDialog, |
| 468 | BatchModify, | 475 | BatchModify, |
| 476 | + TimeDialog, | ||
| 469 | }, | 477 | }, |
| 470 | data() { | 478 | data() { |
| 471 | return { | 479 | return { |
| ... | @@ -641,6 +649,7 @@ export default { | ... | @@ -641,6 +649,7 @@ export default { |
| 641 | templateDownloadVisible: false, | 649 | templateDownloadVisible: false, |
| 642 | datasExportVisible: false, | 650 | datasExportVisible: false, |
| 643 | batchModifyVisible: false, | 651 | batchModifyVisible: false, |
| 652 | + timeVisible: false, | ||
| 644 | }; | 653 | }; |
| 645 | }, | 654 | }, |
| 646 | created() { | 655 | created() { |
| ... | @@ -669,6 +678,10 @@ export default { | ... | @@ -669,6 +678,10 @@ export default { |
| 669 | }); | 678 | }); |
| 670 | }, | 679 | }, |
| 671 | methods: { | 680 | methods: { |
| 681 | + dialogClose() { | ||
| 682 | + this.timeVisible = false; | ||
| 683 | + this.search(0); | ||
| 684 | + }, | ||
| 672 | calculateTableHeight() { | 685 | calculateTableHeight() { |
| 673 | this.tableMaxheight = window.innerHeight - 300; | 686 | this.tableMaxheight = window.innerHeight - 300; |
| 674 | }, | 687 | }, |
| ... | @@ -826,6 +839,14 @@ export default { | ... | @@ -826,6 +839,14 @@ export default { |
| 826 | this.datasExportVisible = false; | 839 | this.datasExportVisible = false; |
| 827 | this.loadings.exportDeclareLoading = false; | 840 | this.loadings.exportDeclareLoading = false; |
| 828 | }, | 841 | }, |
| 842 | + // 离镜申报 | ||
| 843 | + declareDataTime(loadingKey, dropdownName, dropdownCode) { | ||
| 844 | + if (this.selected.length === 0) { | ||
| 845 | + this.alertWarningMsg("请选择数据!"); | ||
| 846 | + return; | ||
| 847 | + } | ||
| 848 | + this.timeVisible = true; | ||
| 849 | + }, | ||
| 829 | 850 | ||
| 830 | /** | 851 | /** |
| 831 | * 通用申报方法 | 852 | * 通用申报方法 | ... | ... |
src/views/reportingData/time-dialog.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <el-dialog | ||
| 3 | + class="entryDialog classCUploadDialog" | ||
| 4 | + title="离境单申报" | ||
| 5 | + :visible.sync="timeVisible" | ||
| 6 | + :show-close="false" | ||
| 7 | + width="40%" | ||
| 8 | + :close-on-click-modal="false" | ||
| 9 | + :destroy-on-close="true" | ||
| 10 | + v-loading="loadings.dialogLoading" | ||
| 11 | + @close="close" | ||
| 12 | + > | ||
| 13 | + <div class="modelItem"> | ||
| 14 | + <el-form | ||
| 15 | + class="fedexFormStyle" | ||
| 16 | + ref="formData" | ||
| 17 | + :model="formData" | ||
| 18 | + label-position="top" | ||
| 19 | + size="small" | ||
| 20 | + > | ||
| 21 | + <el-row :gutter="5"> | ||
| 22 | + <el-col :span="8"> | ||
| 23 | + <Formitem label="离境时间" prop="leaveTime" type="edit"> | ||
| 24 | + <!-- <el-select | ||
| 25 | + type="text" | ||
| 26 | + id="inputInner-edit-leaveTime" | ||
| 27 | + v-model="formData.leaveTimel-date-picker" | ||
| 28 | + clearable | ||
| 29 | + filterable | ||
| 30 | + placeholder="" | ||
| 31 | + > | ||
| 32 | + <el-option | ||
| 33 | + v-for="item in operatorCode" | ||
| 34 | + :key="item" | ||
| 35 | + :label="item" | ||
| 36 | + :value="item" | ||
| 37 | + ></el-option> | ||
| 38 | + </el-select> --> | ||
| 39 | + <el-date-picker | ||
| 40 | + class="inputInner--leaveTime" | ||
| 41 | + id="inputInner-edit-leaveTime" | ||
| 42 | + v-model="formData.leaveTime" | ||
| 43 | + format="yyyy-MM-dd HH:mm:ss" | ||
| 44 | + type="datetime" | ||
| 45 | + prefix-icon="none" | ||
| 46 | + value-format="yyyy-MM-dd HH:mm:ss" | ||
| 47 | + /> | ||
| 48 | + </Formitem> | ||
| 49 | + </el-col> | ||
| 50 | + </el-row> | ||
| 51 | + </el-form> | ||
| 52 | + </div> | ||
| 53 | + <div class="dialogOption entrySave"> | ||
| 54 | + <el-button | ||
| 55 | + class="entrySaveButton" | ||
| 56 | + :disabled="loadings.submitLoading" | ||
| 57 | + @click="submit" | ||
| 58 | + >确 定</el-button | ||
| 59 | + > | ||
| 60 | + <el-button class="entrySaveButton" @click="close">关 闭</el-button> | ||
| 61 | + </div> | ||
| 62 | + </el-dialog> | ||
| 63 | +</template> | ||
| 64 | + | ||
| 65 | +<script> | ||
| 66 | +import { declareUpload } from "@/api/declareData-api.js"; | ||
| 67 | +export default { | ||
| 68 | + props: { | ||
| 69 | + timeVisible: { | ||
| 70 | + type: Boolean, | ||
| 71 | + default: false, | ||
| 72 | + }, | ||
| 73 | + selected: { | ||
| 74 | + type: Array, | ||
| 75 | + default: () => { | ||
| 76 | + return []; | ||
| 77 | + }, | ||
| 78 | + }, | ||
| 79 | + }, | ||
| 80 | + | ||
| 81 | + data() { | ||
| 82 | + return { | ||
| 83 | + formData: { | ||
| 84 | + leaveTime: "", | ||
| 85 | + }, | ||
| 86 | + | ||
| 87 | + loadings: { | ||
| 88 | + dialogLoading: false, | ||
| 89 | + submitLoading: false, | ||
| 90 | + }, | ||
| 91 | + loadingText: "", | ||
| 92 | + }; | ||
| 93 | + }, | ||
| 94 | + methods: { | ||
| 95 | + //数据保存 | ||
| 96 | + submit() { | ||
| 97 | + let obj = { | ||
| 98 | + ...this.formData, | ||
| 99 | + declareIds: this.selected.map((item) => item.declareId), | ||
| 100 | + type: "logisticsDeparture", | ||
| 101 | + }; | ||
| 102 | + this.$refs.formData.validate((valid) => { | ||
| 103 | + if (valid) { | ||
| 104 | + this.addapi(obj); | ||
| 105 | + } | ||
| 106 | + }); | ||
| 107 | + }, | ||
| 108 | + //新增 | ||
| 109 | + addapi(val) { | ||
| 110 | + this.loadings.dialogLoading = true; | ||
| 111 | + declareUpload(val) | ||
| 112 | + .then((res) => { | ||
| 113 | + if (res.code === "200") { | ||
| 114 | + this.msgSuccess(res.message); | ||
| 115 | + this.close(); | ||
| 116 | + } else { | ||
| 117 | + this.alertWarningMsg(res.message); | ||
| 118 | + this.loadings.dialogLoading = false; | ||
| 119 | + } | ||
| 120 | + }) | ||
| 121 | + .catch((err) => { | ||
| 122 | + console.log(err); | ||
| 123 | + this.loadings.dialogLoading = false; | ||
| 124 | + }); | ||
| 125 | + }, | ||
| 126 | + | ||
| 127 | + close() { | ||
| 128 | + this.formData = { | ||
| 129 | + leaveTime: "", | ||
| 130 | + }; | ||
| 131 | + this.loadings.dialogLoading = false; | ||
| 132 | + this.$emit("close"); | ||
| 133 | + }, | ||
| 134 | + }, | ||
| 135 | +}; | ||
| 136 | +</script> | ||
| 137 | + | ||
| 138 | +<style lang="scss" scoped> | ||
| 139 | +@import "@/assets/styles/variables.scss"; | ||
| 140 | +</style> |
| ... | @@ -168,11 +168,11 @@ export default { | ... | @@ -168,11 +168,11 @@ export default { |
| 168 | // 新增菜单用,可以不麻烦后端--------- | 168 | // 新增菜单用,可以不麻烦后端--------- |
| 169 | addMenuFn() { | 169 | addMenuFn() { |
| 170 | let params = { | 170 | let params = { |
| 171 | - icon: "receipt", | 171 | + icon: "", |
| 172 | - menuName: "模拟回执管理", | 172 | + menuName: "运抵单申报", |
| 173 | order: 1, | 173 | order: 1, |
| 174 | - parentMenuId: 0, | 174 | + parentMenuId: 96, |
| 175 | - physicalUrl: "/receipt", //-management | 175 | + physicalUrl: "/arrival-declare", //-management |
| 176 | url: "", | 176 | url: "", |
| 177 | }; | 177 | }; |
| 178 | addMenu(params).then((res) => { | 178 | addMenu(params).then((res) => { | ... | ... |
| ... | @@ -299,13 +299,4 @@ export default { | ... | @@ -299,13 +299,4 @@ export default { |
| 299 | 299 | ||
| 300 | <style lang="scss" scoped> | 300 | <style lang="scss" scoped> |
| 301 | @import "@/assets/styles/variables.scss"; | 301 | @import "@/assets/styles/variables.scss"; |
| 302 | - | ||
| 303 | -.menuTree { | ||
| 304 | - max-width: 350px; | ||
| 305 | - max-height: 300px; | ||
| 306 | - overflow: auto; | ||
| 307 | - margin: 0 auto; | ||
| 308 | - border: 1px solid #999; | ||
| 309 | - padding: 10px; | ||
| 310 | -} | ||
| 311 | </style> | 302 | </style> | ... | ... |
-
Please register or login to post a comment