Commit 43d69de7 authored by 冯腾骁's avatar 冯腾骁

物流公司渠道

parent b117b54f
let host = window.location.protocol + '//' + window.location.host + '/';
if (window.location.host === 'localhost:8097') host = 'http://finance.winwchain.com/finance-web';
let protocol=window.location.protocol
let currenthost=window.location.host
if (window.location.host === 'localhost:8097') host = `${protocol}//localhost:8090/logistics-config-center-web/`;
// http://sitpurchasing.rubansh.com/
// http://localhost:8192/
export const devtools = true;
......
......@@ -112,7 +112,7 @@ export default {
password: that.financeForm.checkPass
};
that.axios({
url: "finance/login/financeLogin",
url: "logisticsConfig/login/configCenterLogin",
method: "POST",
data: loginData
}).then(res => {
......
<template>
<el-col :span="24" class="mw">
<div class="content-include">
<div class="content-title">发货仓库配置>发货仓库</div>
<div class="content-title">物流配置>物流公司和渠道</div>
<div class="df">
<div class="pct50">
<div class="search-input">
<el-form :inline="true" :model="queryParams" class="demo-form-inline">
<el-form-item label="仓库编码:">
<el-input v-model="queryParams.batchCode" clearable size="mini" placeholder="批次编码"
@change="searchClick" @keyup.enter.native="getPage"/>
<el-form :inline="true" :model="companyParams" class="demo-form-inline">
<el-form-item label="物流公司查询:">
<el-input v-model="companyParams.companyName" clearable size="mini" placeholder="输入物流公司名"
@keyup.enter.native="getCompanyPage"/>
</el-form-item>
<el-form-item label="仓库名字:">
<el-input v-model="queryParams.importAccount" clearable size="mini" placeholder="导入账号"
@change="searchClick" @keyup.enter.native="getPage"/>
</el-form-item>
<el-button type="primary" size="mini" @click="getPage" class="mt7 mr15 r mb10">
<el-button type="primary" size="mini" @click="getCompanyPage" class="mt7 mr15 r mb10">
查询
</el-button>
</el-form>
</div>
<div class="pl15 mt10">
<el-button type="primary" size="mini" class="mb10" @click="importPlatformBill">+ 新建
<el-button type="primary" size="mini" class="mb10" @click="openInsertCompany">+ 物流公司录入
</el-button>
</div>
<el-table ref="multipleTable" :data="importTableData" class="pl15 mb47"
@selection-change="importTableDataSelectionChange" :height="tableMaxHeight">
<el-table ref="multipleTable" :data="companyTableData" class="pl15 mb47"
@selection-change="getChannelPage" :height="tableMaxHeight">
<el-table-column type="selection" align="center"/>
<el-table-column prop="createAccount" label="仓库名称"/>
<el-table-column prop="createDate" label="仓库地址信息"/>
<el-table-column prop="batchCode" label="状态" sortable/>
<el-table-column prop="companyName" label="公司名称"/>
<el-table-column prop="contacts" label="联系人"/>
<el-table-column prop="contactWay" label="联系方式"/>
<el-table-column label="操作">
<template slot-scope="scope">
<span class="poi textButton" @click="searchDetail(scope.row)">编辑</span>
<span class="poi textColor"
@click="fileDownload(scope.row.fileUrl, scope.row.fileName)">删除成功</span>
<span class="poi textColor" @click="delFile(scope.row.id, scope.row.importStatus)">应用</span>
<span class="poi textButton" @click="editCompany(scope.row)">编辑</span>
<span class="poi textButton" @click="removeCompany(scope.row)">删除</span>
</template>
</el-table-column>
</el-table>
<el-col :span="24">
<div>
<el-pagination
@size-change="handleSizeChange1"
@current-change="handleCurrentChange1"
:current-page="companyParams.pageNo"
:page-sizes="[30, 50, 100]"
:page-size="companyParams.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="companyParams.total"
style="float:right;display:inline-block"
/>
</div>
</el-col>
</div>
<div class="pct50">
<div class="search-input">
<el-form :inline="true" :model="queryParams" class="demo-form-inline">
<el-form-item label="仓库编码:">
<el-input v-model="queryParams.batchCode" clearable size="mini" placeholder="批次编码"
@change="searchClick" @keyup.enter.native="getPage"/>
</el-form-item>
<el-form-item label="仓库名字:">
<el-input v-model="queryParams.importAccount" clearable size="mini" placeholder="导入账号"
@change="searchClick" @keyup.enter.native="getPage"/>
<el-form :inline="true" :model="channelParams" class="demo-form-inline">
<el-form-item label="渠道查询:">
<el-input v-model="channelParams.channelName" clearable size="mini" placeholder="输入渠道名称"
@keyup.enter.native="getChannelPage"/>
</el-form-item>
<el-button type="primary" size="mini" @click="getPage" class="mt7 mr15 r mb10">
<el-button type="primary" size="mini" @click="getChannelPage" class="mt7 mr15 r mb10">
查询
</el-button>
</el-form>
</div>
<div class="pl15 mt10">
<el-button type="primary" size="mini" class="mb10" @click="importPlatformBill">+ 新建
<el-button type="primary" size="mini" class="mb10" @click="openInsertChannel">+ 渠道录入
</el-button>
</div>
<el-table ref="multipleTable2" :data="importTableData" class="pl15 mb47"
<el-table ref="multipleTable2" :data="channelTableData" class="pl15 mb47"
@selection-change="importTableDataSelectionChange" :height="tableMaxHeight">
<el-table-column type="index" label="序号">
<!-- <template slot-scope="scope">-->
<!-- <span>{{-->
<!-- (queryParams.pageNo - 1) * queryParams.pageSize + scope.$index + 1-->
<!-- }}</span>-->
<!-- </template>-->
</el-table-column>
<el-table-column type="selection" align="center"/>
<el-table-column prop="createAccount" label="仓库名称"/>
<el-table-column prop="createDate" label="仓库地址信息"/>
<el-table-column prop="timeCode" label="仓库编码"/>
<el-table-column prop="batchCode" label="状态" sortable/>
<el-table-column prop="agentCode" label="更新时间" sortable/>
<el-table-column prop="companyName" label="物流公司"/>
<el-table-column prop="channelName" label="渠道名称"/>
<el-table-column prop="channelCode" label="渠道编码"/>
<el-table-column prop="channelNo" label="渠道号"/>
<el-table-column prop="maxWeight" label="最大重量"/>
<el-table-column prop="isEnabled" label="是否启用"/>
<el-table-column prop="agentCode" label="代理编码"/>
<el-table-column prop="warehouseCode" label="分仓代码"/>
<el-table-column prop="isOnline" label="结账方式"/>
<el-table-column label="操作">
<template slot-scope="scope">
<span class="poi textButton" @click="searchDetail(scope.row)">编辑</span>
<span class="poi textColor"
@click="fileDownload(scope.row.fileUrl, scope.row.fileName)">删除成功</span>
<span class="poi textColor" @click="delFile(scope.row.id, scope.row.importStatus)">应用</span>
<span class="poi textButton" @click="removeChannel(scope.row)">删除</span>
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
<el-col :span="24">
<div class="ceiling-pagination">
<div style="float: top">
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="queryParams.currentPage"
@size-change="handleSizeChange2"
@current-change="handleCurrentChange2"
:current-page="channelParams.pageNo"
:page-sizes="[30, 50, 100]"
:page-size="queryParams.pageSize"
:page-size="channelParams.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="queryParams.total"
:total="channelParams.total"
style="float:right;display:inline-block"
/>
</div>
</el-col>
<el-dialog
:visible="insertChannelVisible"
title="录入渠道"
width="600px"
@close="insertChannelVisible = false"
center>
<el-row>
<el-form label-position="right" label-width="110px" :model="insertChannelParams">
<el-form-item prop="account" label-width="100px" :required="true">
<span slot="label">物流公司:</span>
<el-select size="small" v-model="insertChannelParams.companyId" clearable placeholder="请选择">
<el-option
v-for="item in companyList"
:key="item.id"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="channelName" label-width="100px" :required="true">
<span slot="label">渠道名称:</span>
<el-input v-model="insertChannelParams.channelName" placeholder="请输入" class="pct75" ></el-input>
</el-form-item>
<el-form-item prop="maxWeight" label-width="100px" :required="true">
<span slot="label">最大重量:</span>
<el-input v-model="insertChannelParams.maxWeight" placeholder="请输入" class="pct75" ></el-input>
</el-form-item>
<el-form-item prop="agentCode" label-width="100px" :required="true">
<span slot="label">代理编码:</span>
<el-select size="small" v-model="insertChannelParams.agentCode" clearable placeholder="请选择">
<el-option
v-for="item in companyList"
:key="item.id"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="warehouseCode" label-width="100px" :required="true">
<span slot="label">关联分仓:</span>
<el-select size="small" v-model="insertChannelParams.warehouseCode" clearable placeholder="请选择">
<el-option
v-for="item in companyList"
:key="item.id"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="labelExpired" label-width="100px" :required="true">
<span slot="label">运单过期天数:</span>
<el-select size="small" v-model="insertChannelParams.labelExpired" clearable placeholder="请选择">
<el-option
v-for="item in companyList"
:key="item.id"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="labelSize" label-width="100px" :required="true">
<span slot="label">运单尺寸:</span>
<el-select size="small" v-model="insertChannelParams.labelSize" clearable placeholder="请选择">
<el-option
v-for="item in companyList"
:key="item.id"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="isEnabled" label-width="100px" :required="true">
<span slot="label">是否启用:</span>
<el-select size="small" v-model="insertChannelParams.isEnabled" clearable placeholder="请选择">
<el-option
v-for="item in companyList"
:key="item.id"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="channelType" label-width="100px" :required="true">
<span slot="label">境内境外:</span>
<el-select size="small" v-model="insertChannelParams.channelType" clearable placeholder="请选择">
<el-option
v-for="item in companyList"
:key="item.id"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="account" label-width="100px" :required="true">
<span slot="label">货物类型:</span>
<el-checkbox
v-model="checkAllBizTag"
@change="handleAllAgentChange"
>全选</el-checkbox>
<el-checkbox-group
v-model="insertChannelParams.bizTag"
@change="(val)=>{handleCheckedAgentChange(val)}"
>
<el-checkbox
v-for="item in bizTagList"
:label="item.id"
:key="item.id"
>{{item.name}}</el-checkbox>
</el-checkbox-group>
</el-form-item>
<div class="discuss-buy" @click="insertChannel">确认</div>
</el-form>
</el-row>
</el-dialog>
<el-dialog
:visible="insertCompanyVisible"
title="录入物流公司"
width="600px"
@close="insertCompanyVisible = false"
center>
<el-row>
<el-form label-position="right" label-width="110px" :model="insertCompanyParams">
<el-form-item prop="account" label-width="100px" :required="true">
<span slot="label">公司名称:</span>
<el-input v-model="insertCompanyParams.companyName" placeholder="请输入" class="pct75" ></el-input>
</el-form-item>
<el-form-item prop="account" label-width="100px" :required="true">
<span slot="label">联系人:</span>
<el-input v-model="insertCompanyParams.contacts" placeholder="请输入" class="pct75" ></el-input>
</el-form-item>
<el-form-item prop="account" label-width="100px" :required="true">
<span slot="label">联系方式:</span>
<el-input v-model="insertCompanyParams.contactWay" placeholder="请输入" class="pct75" ></el-input>
</el-form-item>
<div class="discuss-buy" @click="insertCompany">确认</div>
</el-form>
</el-row>
</el-dialog>
</div>
</div>
</div>
</el-col>
</template>
<script>
......@@ -100,34 +250,139 @@ export default {
data() {
return {
table: true,
queryParams: {
batchCode: '',
importAccount: '',
timeCode: '',
authCode: '',
feeType: '',
feeTypeList: [],
fileName: '',
importStatus: '',
importStatusList: [],
syncStatus: '',
syncStatusList: [],
orderId: '',
sourceId: '',
currentPage: 1,
companyParams: {
pageNo: 1,
pageSize: 30,
total: 0,
isPage: true
companyName: '',
},
channelParams: {
pageNo: 1,
pageSize: 30,
total: 0,
tableData: [],
importTableData: [],
importRecordData: [],
importTableDataSelectionLength: 0,
channelName: '',
companyIds:[],
},
insertChannelParams:{
companyId:'',
channelName:'',
maxWeight:'',
agentCode:'',
warehouseCode:'',
labelExpired:'',
labelSize:'',
isEnabled:'',
bizTag:'',
channelType:[],
},
insertCompanyParams:{
companyName:'',
contacts:'',
contactWay:''
},
insertCompanyVisible:false,
insertChannelVisible:false,
checkAllBizTag:false,
bizTagList: [{name: '平台物流', id: 0},
{name: '普货', id: 1},
{name: '带电', id: 2},
{name: '液体', id: 3},
{name: '粉尘', id: 4},
{name: '口罩', id: 5}],
companyList:[{name:'请选择',id:''},{name:'燕文物流',id:'yanwen'},{name:'某物流',id:'mouwuliu'}],
companyTableData:[],
channelTableData:[],
tableMaxHeight: window.innerHeight - 263,
}
},
methods: {
getCompanyPage() {
this.axios({
data: this.companyParams,
url: 'logisticsConfig/logisticsCompany/pageCompany',
method: 'post'
}).then(res => {
if(res.success()){
this.companyTableData = res.module.result;
this.companyParams.total = res.module.total;
}
})
},
getChannelPage(){
this.axios({
data: this.channelParams,
url: 'logisticsConfig/logisticsCompany/pageChannel',
method: 'post'
}).then(res => {
if(res.success()){
this.channelTableData = res.module.result;
this.channelParams.total = res.module.total;
}
})
},
insertCompany(){
this.axios({
data: this.insertCompanyParams,
url: 'logisticsConfig/logisticsCompany/insertCompany',
method: 'post'
}).then(res => {
if(res.success()){
this.$message("录入成功")
this.getCompanyPage();
}
})
},
insertChannel(){
this.axios({
data: this.insertChannelParams,
url: 'logisticsConfig/logisticsCompany/insertChannel',
method: 'post'
}).then(res => {
if(res.success()){
this.$message("录入成功")
this.getChannelPage();
}
})
},
updateCompany(){
this.axios({
data: this.insertChannelParams,
url: 'logisticsConfig/logisticsCompany/updateCompany',
method: 'post'
}).then(res => {
if(res.success()){
this.$message("更新成功")
this.getChannelPage();
}
})
},
updateChannel(){
this.axios({
data: this.insertChannelParams,
url: 'logisticsConfig/logisticsCompany/updateChannel',
method: 'post'
}).then(res => {
if(res.success()){
this.$message("更新成功")
this.getChannelPage();
}
})
},
openInsertCompany(){
this.insertCompanyVisible = true;
},
openInsertChannel(){
this.insertChannelVisible = true;
},
handleAllAgentChange(val) {
this.insertChannelParams.bizTag = val ? this.bizTagList.map(x=>x.id) : [];
this.getChannelPage();
},
handleCheckedAgentChange(value) {
let checkedCount = value.length;
this.checkAllBizTag = checkedCount === this.bizTagList.length;
this.getChannelPage();
},
},
mounted() {
......@@ -135,7 +390,9 @@ export default {
return (() => {
that.tableMaxHeight = window.innerHeight - 263
})();
}
};
this.getCompanyPage();
this.getChannelPage();
},
activated() {
this.tableMaxHeight = window.innerHeight - 263;
......@@ -207,11 +464,21 @@ export default {
.pt0 {
padding-top: 0;
}
.has-choose{
.has-choose {
height: 25px;
border: 1px solid #4E74FC;
background:rgb(224, 244, 255);
background: rgb(224, 244, 255);
border-radius: 4px;
line-height: 25px;
}
.discuss-buy {
padding: 10px;
text-align: center;
color: #FFFFFF;
background: #B70037;
width: 150px;
margin: 20px auto 0px auto;
cursor: pointer;
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment