md
This commit is contained in:
parent
4beb6e4bf1
commit
16370fefcb
562
src/views/emis/emisCustomerAddress/recipientAddress.vue
Normal file
562
src/views/emis/emisCustomerAddress/recipientAddress.vue
Normal file
@ -0,0 +1,562 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<SearchForm :model="queryParams" ref="queryForm" size="small" :maxShow="3" label-width="68px" v-show="showSearch" @search="handleQuery" @reset="resetQuery">
|
||||
|
||||
<el-form-item label="" prop="customerCode">
|
||||
<el-input
|
||||
v-model="queryParams.customerCode"
|
||||
:placeholder="$t('客户编码')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="shortName">
|
||||
<el-input
|
||||
v-model="queryParams.shortName"
|
||||
:placeholder="$t('客户名称')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="alias">
|
||||
<el-input
|
||||
v-model="queryParams.alias"
|
||||
:placeholder="$t('地址别名')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="addressType">
|
||||
<el-input
|
||||
v-model="queryParams.addressType"
|
||||
:placeholder="$t('地址类型')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="country">
|
||||
<el-input
|
||||
v-model="queryParams.country"
|
||||
:placeholder="$t('国家')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="name">
|
||||
<el-input
|
||||
v-model="queryParams.name"
|
||||
:placeholder="$t('姓名')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="phone">
|
||||
<el-input
|
||||
v-model="queryParams.phone"
|
||||
:placeholder="$t('电话')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="province">
|
||||
<el-input
|
||||
v-model="queryParams.province"
|
||||
:placeholder="$t('省')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="city">
|
||||
<el-input
|
||||
v-model="queryParams.city"
|
||||
:placeholder="$t('市')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="county">
|
||||
<el-input
|
||||
v-model="queryParams.county"
|
||||
:placeholder="$t('区')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="town">
|
||||
<el-input
|
||||
v-model="queryParams.town"
|
||||
:placeholder="$t('城镇')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="address">
|
||||
<el-input
|
||||
v-model="queryParams.address"
|
||||
:placeholder="$t('地址')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="postCode">
|
||||
<el-input
|
||||
v-model="queryParams.postCode"
|
||||
:placeholder="$t('邮编')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="email">
|
||||
<el-input
|
||||
v-model="queryParams.email"
|
||||
:placeholder="$t('email')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="company">
|
||||
<el-input
|
||||
v-model="queryParams.company"
|
||||
:placeholder="$t('公司')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="blDefaultFlag">
|
||||
<el-input
|
||||
v-model="queryParams.blDefaultFlag"
|
||||
:placeholder="$t('是否默认')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="orderNum">
|
||||
<el-input
|
||||
v-model="queryParams.orderNum"
|
||||
:placeholder="$t('排序')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="blSiteDefaultFlag">
|
||||
<el-input
|
||||
v-model="queryParams.blSiteDefaultFlag"
|
||||
:placeholder="$t('使用站点是否默认')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="useSite">
|
||||
<el-input
|
||||
v-model="queryParams.useSite"
|
||||
:placeholder="$t('使用站点名称')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="useSiteCode">
|
||||
<el-input
|
||||
v-model="queryParams.useSiteCode"
|
||||
:placeholder="$t('使用站点代码')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="delFlag">
|
||||
<el-input
|
||||
v-model="queryParams.delFlag"
|
||||
:placeholder="$t('删除标志(0代表存在')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="remark">
|
||||
<el-input
|
||||
v-model="queryParams.remark"
|
||||
:placeholder="$t('备注')"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
</SearchForm>
|
||||
|
||||
|
||||
<XdTable v-loading="loading"
|
||||
border stripe
|
||||
size="small"
|
||||
:data="emisCustomerAddressList"
|
||||
:showSearch.sync="showSearch"
|
||||
:queryParams="queryParams"
|
||||
:total="total"
|
||||
@queryTable="getList"
|
||||
@selection-change="handleSelectionChange"
|
||||
@sort-change="handleSortChange"
|
||||
>
|
||||
|
||||
<div slot="toolbar">
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="primary"
|
||||
plain
|
||||
icon="el-icon-plus"
|
||||
size="mini"
|
||||
@click="handleAdd"
|
||||
v-hasPermi="['emis:emisCustomerAddress:add']"
|
||||
>新增</el-button>
|
||||
</el-col>
|
||||
<!--
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="success"
|
||||
plain
|
||||
icon="el-icon-edit"
|
||||
size="mini"
|
||||
:disabled="single"
|
||||
@click="handleUpdate"
|
||||
v-hasPermi="['emis:emisCustomerAddress:edit']"
|
||||
>修改</el-button>
|
||||
</el-col> -->
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="danger"
|
||||
plain
|
||||
icon="el-icon-delete"
|
||||
size="mini"
|
||||
:disabled="multiple"
|
||||
@click="handleDelete"
|
||||
v-hasPermi="['emis:emisCustomerAddress:remove']"
|
||||
>删除</el-button>
|
||||
</el-col>
|
||||
<!-- <el-col :span="1.5">
|
||||
<el-button
|
||||
type="warning"
|
||||
plain
|
||||
icon="el-icon-download"
|
||||
size="mini"
|
||||
@click="handleExport"
|
||||
v-hasPermi="['emis:emisCustomerAddress:export']"
|
||||
>导出</el-button>
|
||||
</el-col> -->
|
||||
</el-row>
|
||||
</div>
|
||||
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<!--
|
||||
<el-table-column label="序号" align="center" min-width="60">
|
||||
<template slot-scope="scope">
|
||||
<span v-text="getIndex(scope.$index)"> </span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column label="xxx" align="left" prop="xxx" min-width="180">
|
||||
<template slot-scope="scope">
|
||||
<div class="link-type" @click="handleView(scope.row)">{{scope.row.orderSn}}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column label="结算状态" align="center" prop="settleStatus" :sort-orders="['descending','ascending']" sortable="custom" min-width="80">
|
||||
<template slot-scope="scope">
|
||||
<div v-if="scope.row.settleStatus == 0" style="color:red;">
|
||||
<span class="el-tag el-tag--info">未结算</span>
|
||||
</div>
|
||||
<div v-if="scope.row.settleStatus == 10" style="color:red;">
|
||||
<span class="el-tag">待确认</span>
|
||||
</div>
|
||||
<div v-if="scope.row.settleStatus == 11" style="color:green;">
|
||||
<span class="el-tag el-tag--success el-tag--light">已确认</span>
|
||||
</div>
|
||||
<div v-if="scope.row.settleStatus == 20" >
|
||||
<span class="el-tag el-tag--warning el-tag--light">待打款</span>
|
||||
</div>
|
||||
<div v-if="scope.row.settleStatus == 21" style="color:green;">
|
||||
<span class="el-tag el-tag--success el-tag--light">已打款</span>
|
||||
</div>
|
||||
<div v-if="scope.row.settleStatus == 40" style="color:red;">
|
||||
<span class="el-tag el-tag--danger">已拒绝</span>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
-->
|
||||
|
||||
<el-table-column :label="$t('客户编码')" align="center" prop="customerCode" min-width="100" />
|
||||
<el-table-column :label="$t('客户名称')" align="center" prop="shortName" min-width="100" />
|
||||
<el-table-column :label="$t('地址别名')" align="center" prop="alias" min-width="100" />
|
||||
<el-table-column :label="$t('地址类型')" align="center" prop="addressType" min-width="100" />
|
||||
<el-table-column :label="$t('国家')" align="center" prop="country" min-width="100" />
|
||||
<el-table-column :label="$t('姓名')" align="center" prop="name" min-width="100" />
|
||||
<el-table-column :label="$t('电话')" align="center" prop="phone" min-width="100" />
|
||||
<el-table-column :label="$t('省')" align="center" prop="province" min-width="100" />
|
||||
<el-table-column :label="$t('市')" align="center" prop="city" min-width="100" />
|
||||
<el-table-column :label="$t('区')" align="center" prop="county" min-width="100" />
|
||||
<el-table-column :label="$t('城镇')" align="center" prop="town" min-width="100" />
|
||||
<el-table-column :label="$t('地址')" align="center" prop="address" min-width="100" />
|
||||
<el-table-column :label="$t('邮编')" align="center" prop="postCode" min-width="100" />
|
||||
<el-table-column :label="$t('email')" align="center" prop="email" min-width="100" />
|
||||
<el-table-column :label="$t('公司')" align="center" prop="company" min-width="100" />
|
||||
<el-table-column :label="$t('是否默认')" align="center" prop="blDefaultFlag" min-width="100" />
|
||||
<el-table-column :label="$t('排序')" align="center" prop="orderNum" min-width="100" />
|
||||
<el-table-column :label="$t('使用站点是否默认')" align="center" prop="blSiteDefaultFlag" min-width="100" />
|
||||
<el-table-column :label="$t('使用站点名称')" align="center" prop="useSite" min-width="100" />
|
||||
<el-table-column :label="$t('使用站点代码')" align="center" prop="useSiteCode" min-width="100" />
|
||||
<el-table-column :label="$t('删除标志(0代表存在')" align="center" prop="delFlag" min-width="100" />
|
||||
<el-table-column :label="$t('备注')" align="center" prop="remark" min-width="100" />
|
||||
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-edit"
|
||||
@click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['emis:emisCustomerAddress:edit']"
|
||||
>修改</el-button>
|
||||
<!--
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-delete"
|
||||
@click="handleDelete(scope.row)"
|
||||
v-hasPermi="['emis:emisCustomerAddress:remove']"
|
||||
>删除</el-button> -->
|
||||
</template>
|
||||
</el-table-column>
|
||||
</XdTable>
|
||||
|
||||
<el-dialog :title="titleForm" :visible.sync="openForm" width="50%" :destroy-on-close="true" v-dialogDrag append-to-body>
|
||||
<emisCustomerAddressForm :id="currentId" @on-changed="handleFormChanged" @on-cancel="cancelForm"></EmisCustomerAddressForm>
|
||||
</el-dialog>
|
||||
|
||||
|
||||
<!--
|
||||
<el-dialog :title="titleView" :visible.sync="openView" width="60%" :close-on-click-modal="false" v-dialogDrag append-to-body>
|
||||
<emisCustomerAddressView :id="id" ></EmisCustomerAddressView>
|
||||
</el-dialog>
|
||||
-->
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { listEmisCustomerAddress, getEmisCustomerAddress, delEmisCustomerAddress, addEmisCustomerAddress, updateEmisCustomerAddress } from "@/api/emis/emisCustomerAddress";
|
||||
import elDateSimplePicker from '@/components/DatePickerAdv/elDateSimplePicker';
|
||||
// import emisCustomerAddressView from '@/views/emis/emisCustomerAddress/emisCustomerAddressView';
|
||||
import emisCustomerAddressForm from '@/views/emis/emisCustomerAddress/emisCustomerAddressForm';
|
||||
|
||||
export default {
|
||||
name: "emisCustomerAddress",
|
||||
components: { elDateSimplePicker,emisCustomerAddressForm },
|
||||
dicts: [
|
||||
],
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 选中数组
|
||||
ids: [],
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 创建时间搜索
|
||||
dateTimeRange:[],
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 客户收寄件地址表格数据
|
||||
emisCustomerAddressList: [],
|
||||
|
||||
currentId:null,
|
||||
openForm: false,
|
||||
titleForm: "",
|
||||
|
||||
// 弹出展示层
|
||||
id:null,
|
||||
titleView:"",
|
||||
openView: false,
|
||||
// 更新网点时间范围
|
||||
daterangeCreateTime: [],
|
||||
// 更新网点时间范围
|
||||
daterangeUpdateTime: [],
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 20,
|
||||
customerCode: null,
|
||||
shortName: null,
|
||||
alias: null,
|
||||
addressType: null,
|
||||
country: null,
|
||||
name: null,
|
||||
phone: null,
|
||||
province: null,
|
||||
city: null,
|
||||
county: null,
|
||||
town: null,
|
||||
address: null,
|
||||
postCode: null,
|
||||
email: null,
|
||||
company: null,
|
||||
blDefaultFlag: null,
|
||||
orderNum: null,
|
||||
blSiteDefaultFlag: null,
|
||||
useSite: null,
|
||||
useSiteCode: null,
|
||||
delFlag: null,
|
||||
remark: null,
|
||||
},
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
},
|
||||
methods: {
|
||||
/** 查询客户收寄件地址列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
this.queryParams.params = {};
|
||||
if (null != this.daterangeCreateTime && '' != this.daterangeCreateTime) {
|
||||
this.queryParams.params["beginCreateTime"] = this.daterangeCreateTime[0];
|
||||
this.queryParams.params["endCreateTime"] = this.daterangeCreateTime[1];
|
||||
}
|
||||
if (null != this.daterangeUpdateTime && '' != this.daterangeUpdateTime) {
|
||||
this.queryParams.params["beginUpdateTime"] = this.daterangeUpdateTime[0];
|
||||
this.queryParams.params["endUpdateTime"] = this.daterangeUpdateTime[1];
|
||||
}
|
||||
listEmisCustomerAddress(this.addDateRange(this.queryParams, this.dateTimeRange)).then(response => {
|
||||
this.emisCustomerAddressList = response.rows;
|
||||
this.total = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
},
|
||||
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
/** 重置按钮操作 */
|
||||
resetQuery() {
|
||||
this.resetForm("queryForm");
|
||||
this.handleQuery();
|
||||
},
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
this.ids = selection.map(item => item.id)
|
||||
this.single = selection.length!==1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
// 排序 查询字段是表格中字段名字 动态取值排序顺序
|
||||
handleSortChange(column) {
|
||||
this.queryParams.orderByColumn = column.prop;
|
||||
this.queryParams.isAsc = column.order;
|
||||
this.getList();
|
||||
},
|
||||
/** 新增按钮操作 */
|
||||
handleAdd(row) {
|
||||
this.currentId=null;
|
||||
this.openForm= true;
|
||||
this.titleForm = "新增";
|
||||
},
|
||||
handleShowMoreInput(){
|
||||
this.moreInputVisible = !this.moreInputVisible;
|
||||
},
|
||||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.currentId= row.id;
|
||||
this.openForm = true;
|
||||
this.titleForm = "修改";
|
||||
},
|
||||
handleView(row) {
|
||||
this.id=row.id;
|
||||
this.titleView="查看";
|
||||
this.openView=true;
|
||||
// this.router.push({ path: '/emis/emisCustomerAddress/viewDetail', query: { id: row.id }})
|
||||
},
|
||||
handleFormChanged(){
|
||||
this.openForm = false;
|
||||
this.getList();
|
||||
},
|
||||
cancelForm(){
|
||||
this.openForm = false;
|
||||
},
|
||||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
const ids = row.id || this.ids;
|
||||
this.$modal.confirm('是否确认删除').then(function() {
|
||||
return delEmisCustomerAddress(ids);
|
||||
}).then(() => {
|
||||
this.getList();
|
||||
this.$modal.msgSuccess("删除成功");
|
||||
}).catch(() => {});
|
||||
},
|
||||
/** 导出按钮操作 */
|
||||
handleExport() {
|
||||
// this.download('emis/emisCustomerAddress/export', {
|
||||
// ...this.queryParams
|
||||
// }, `emisCustomerAddress_${new Date().getTime()}.xlsx`)
|
||||
const loadingInstance = this.$loading({
|
||||
text: '正在导出...'
|
||||
})
|
||||
var qParam = {...this.queryParams};
|
||||
qParam.pageNum=1;
|
||||
qParam.pageSize=5000;
|
||||
|
||||
listEmisCustomerAddress(this.addDateRange(qParam, this.dateTimeRange)).then(response => {
|
||||
this.downloadLoading = false
|
||||
if (response.code === 200) {
|
||||
const curList = response.rows
|
||||
import('@/vendor/Export2Excel').then(excel => {
|
||||
const tHeader = ['id','客户user_id','客户编码','客户名称','地址别名','地址类型','国家','姓名','电话','省','市','区','城镇','地址','邮编','email','公司','是否默认','排序','使用站点是否默认','使用站点名称','使用站点代码','删除标志(0代表存在','创建者','创建时间','更新者','update_time','备注','创建网点','更新网点',];
|
||||
const filterVal = ['id','userId','customerCode','shortName','alias','addressType','country','name','phone','province','city','county','town','address','postCode','email','company','blDefaultFlag','orderNum','blSiteDefaultFlag','useSite','useSiteCode','delFlag','createBy','createTime','updateBy','updateTime','remark','createSite','updateSite',];
|
||||
const data = this.formatJson(filterVal, curList, response.rows)
|
||||
excel.export_json_to_excel({
|
||||
header: tHeader,
|
||||
data,
|
||||
filename: '客户收寄件地址',
|
||||
autoWidth: true
|
||||
})
|
||||
loadingInstance.close()
|
||||
})
|
||||
}
|
||||
});
|
||||
},
|
||||
formatJson(filterVal, jsonData, resData) {
|
||||
let index = 0
|
||||
return jsonData.map(v => filterVal.map(j => {
|
||||
if (j === 'index') {
|
||||
return ++index
|
||||
}
|
||||
if (j === 'status') {
|
||||
var statusStr='xxx'
|
||||
if(v[j] == 10){
|
||||
statusStr='xxx'
|
||||
}
|
||||
return statusStr;
|
||||
}
|
||||
return v[j]
|
||||
}))
|
||||
},
|
||||
/** 列索引函数 */
|
||||
getIndex($index) {
|
||||
return (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1
|
||||
},
|
||||
/** 时间搜索响应函数 */
|
||||
dateTimeChange(value){
|
||||
this.dateTimeRange=value;
|
||||
},
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.el-divider{
|
||||
margin-top: 0px;
|
||||
background: 0 0;
|
||||
border-top: 1px solid #E6EBF5;
|
||||
}
|
||||
.el-divider__text {
|
||||
color: #0955ee;
|
||||
cursor: pointer;
|
||||
}
|
||||
</style>
|
||||
Loading…
Reference in New Issue
Block a user