Commit 3239c60a by 罗承锋

更新销售订单,修改宽带整合

parent 3f8534cd
...@@ -4,6 +4,10 @@ const prefix = '/manager/ciop/'; ...@@ -4,6 +4,10 @@ const prefix = '/manager/ciop/';
//订单 //订单
let orderList = (params) => postAction(prefix + "order/list" , params); let orderList = (params) => postAction(prefix + "order/list" , params);
let download = (params) => postAction(prefix + "order/download" , params); let download = (params) => postAction(prefix + "order/download" , params);
// 宽带订单
let broadBandList = (params) => postAction(prefix + "order/broadBandOrder", params);
//返回订单历史状态 //返回订单历史状态
let selectOrderHis = (params) => postAction(prefix +"order/selectOrderHis" , params); let selectOrderHis = (params) => postAction(prefix +"order/selectOrderHis" , params);
let reviewStudentIdCard = (params) => postAction(prefix +"order/reviewStudentIdCard" , params); let reviewStudentIdCard = (params) => postAction(prefix +"order/reviewStudentIdCard" , params);
...@@ -20,6 +24,7 @@ let reportDownload = (params) => downFilePost(prefix + "order/outputHhrOrder",pa ...@@ -20,6 +24,7 @@ let reportDownload = (params) => downFilePost(prefix + "order/outputHhrOrder",pa
export { export {
orderList, orderList,
broadBandList,
download, download,
selectOrderHis, selectOrderHis,
abnormal, abnormal,
......
...@@ -9,10 +9,16 @@ let getSchoolList = (params) => postAction(prefix + "/newUser/getSchoolNames" , ...@@ -9,10 +9,16 @@ let getSchoolList = (params) => postAction(prefix + "/newUser/getSchoolNames" ,
let getList = (params) => postAction(prefix + "/salesList/list" , params); let getList = (params) => postAction(prefix + "/salesList/list" , params);
// 删除 // 删除
let deleteOrder = (params) => postAction(prefix + "/salesList/deleteOrder" , params); let deleteOrder = (params) => postAction(prefix + "/salesList/deleteOrder" , params);
let customRemark = (params) => postAction(prefix + "/salesList/customRemark" , params);
// 下载放号上传模板 // 下载放号上传模板
let downloadTemplateFH = (params) => downFilePost(prefix + "/salesList/downloadTemplateFH" , params); let downloadTemplateFH = (params) => downFilePost(prefix + "/salesList/downloadTemplateFH" , params);
// 下载充值审核模板 // 下载充值审核模板
let downloadTemplateCZ = (params) => downFilePost(prefix + "/salesList/downloadTemplateCZ" , params); let downloadTemplateCZ = (params) => downFilePost(prefix + "/salesList/downloadTemplateCZ" , params);
// 下载批量导入模板
let downloadTemplatePL =(params) => downFilePost(prefix + "/salesList/downloadTemplatePL" , params);
// 下载锁定导入模板
let downloadTemplateSD = (params) => downFilePost(prefix + "/salesList/downloadTemplateSD" , params);
// 下载导入结果清单 // 下载导入结果清单
...@@ -23,5 +29,5 @@ let exportList = (params) => downFilePost(prefix + "/salesList/exportOrderList" ...@@ -23,5 +29,5 @@ let exportList = (params) => downFilePost(prefix + "/salesList/exportOrderList"
export { export {
getList,deleteOrder,getSubstList,getSchoolList,downloadTemplateFH,downloadTemplateCZ, getList,deleteOrder,getSubstList,getSchoolList,downloadTemplateFH,downloadTemplateCZ,
downloadResult,exportList downloadResult,exportList,customRemark,downloadTemplatePL, downloadTemplateSD
} }
...@@ -5,53 +5,126 @@ ...@@ -5,53 +5,126 @@
<!-- 搜索区域 --> <!-- 搜索区域 -->
<a-form layout="inline"> <a-form layout="inline">
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :md="5" :sm="12"> <a-col :md="6" :sm="12" style="height:35px">
<a-form-item label="时间选择:"> <a-form-item label="订单创建时间:">
<a-range-picker @change="onChange" /> <a-range-picker @change="onChange" format="YYYY-MM-DD HH:mm:ss"/>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="4" :sm="12"> <a-col :md="6" :sm="12" style="height:35px">
<a-form-item label="订单编号:"> <a-form-item label="订单完成时间:">
<a-input placeholder="订单编号" v-model="queryParam.orderseq"></a-input> <a-range-picker @change="onSuccessChange" format="YYYY-MM-DD HH:mm:ss"/>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="4" :sm="12"> <a-col :md="4" :sm="6" style="height:35px">
<a-form-item label="客户类型:">
<a-select v-model="queryParam.userType" style="width: 120px">
<a-select-option value="">全部客户</a-select-option>
<a-select-option value="3">融合办理</a-select-option>
<a-select-option value="5">单宽业务</a-select-option>
<a-select-option value="9">毕业生融合</a-select-option>
<!-- <a-select-option value="3">融合办理</a-select-option>-->
<a-select-option value="10">单宽进融</a-select-option>
<!-- <a-select-option value="5">单宽业务</a-select-option>-->
</a-select>
</a-form-item>
</a-col>
<a-col :md="4" :sm="12" style="height:35px">
<a-form-item label="智能平台:">
<a-input placeholder="智能平台" v-model="queryParam.orderId"></a-input>
</a-form-item>
</a-col>
<a-col :md="4" :sm="6" style="height:35px">
<a-form-item label="县份:">
<a-select v-model="queryParam.hehuorenArea" style="width: 120px">
<a-select-option value="">请选择</a-select-option>
<a-select-option value="本部">本部</a-select-option>
<a-select-option value="白云">白云</a-select-option>
<a-select-option value="海珠">海珠</a-select-option>
<a-select-option value="荔湾">荔湾</a-select-option>
<a-select-option value="东山">东山</a-select-option>
<a-select-option value="花都">花都</a-select-option>
<a-select-option value="天河">天河</a-select-option>
<a-select-option value="黄埔">黄埔</a-select-option>
<a-select-option value="番禺">番禺</a-select-option>
<a-select-option value="增城">增城</a-select-option>
<a-select-option value="从化">从化</a-select-option>
<a-select-option value="南沙">南沙</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col :md="4" :sm="12" style="height:35px">
<a-form-item label="客户姓名:"> <a-form-item label="客户姓名:">
<a-input placeholder="客户姓名" v-model="queryParam.ordername"></a-input> <a-input placeholder="客户姓名" v-model="queryParam.customerName"></a-input>
</a-form-item>
</a-col>
<a-col :md="4" :sm="12" style="height:35px">
<a-form-item label="办理号码:">
<a-input placeholder="办理号码" v-model="queryParam.businessNumber"></a-input>
</a-form-item>
</a-col>
<a-col :md="4" :sm="12" style="height:35px">
<a-form-item label="联系号码:">
<a-input placeholder="联系号码" v-model="queryParam.contactNumber"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="4" :sm="12"> <a-col :md="4" :sm="12" style="height:35px">
<a-form-item label="学校名称:"> <a-form-item label="合伙人姓名:">
<a-input placeholder="学校名称" v-model="queryParam.orderUniversityName" ></a-input> <a-input placeholder="合伙人姓名" v-model="queryParam.hehuorenName"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="3" :sm="6"> <a-col :md="4" :sm="12" style="height:35px">
<a-form-item label="合伙人学校:">
<a-input placeholder="合伙人学校" v-model="queryParam.hehuorenSchool"></a-input>
</a-form-item>
</a-col>
<a-col :md="3" :sm="6" style="height:35px">
<a-form-item label="状态:"> <a-form-item label="状态:">
<a-select v-model="queryParam.status"> <a-select v-model="queryParam.orderStatus">
<a-select-option value="">请选择</a-select-option> <a-select-option value="">请选择</a-select-option>
<a-select-option value="1">待提交</a-select-option> <a-select-option value="待处理">待处理</a-select-option>
<a-select-option value="4">归档</a-select-option> <a-select-option value="待选号">待选号</a-select-option>
<a-select-option value="5">作废</a-select-option> <a-select-option value="待识别">待识别</a-select-option>
<a-select-option value="3">受理成功</a-select-option> <a-select-option value="待活体">待活体</a-select-option>
<a-select-option value="9">已收费</a-select-option> <a-select-option value="审核中">审核中</a-select-option>
<a-select-option value="10">受理异常</a-select-option> <a-select-option value="待审核">待配送</a-select-option>
<a-select-option value="2">待受理</a-select-option> <a-select-option value="待审核">待审核</a-select-option>
<a-select-option value="100">未支付</a-select-option> <a-select-option value="待受理">待受理</a-select-option>
<a-select-option value="已发货">已发货</a-select-option>
<a-select-option value="已完成">已完成</a-select-option>
<a-select-option value="异常单">异常单</a-select-option>
<a-select-option value="待派奖">待派奖</a-select-option>
<a-select-option value="已派奖">已派奖</a-select-option>
<a-select-option value="重新下单">重新下单</a-select-option>
</a-select> </a-select>
</a-form-item> </a-form-item>
</a-col> </a-col>
<span class="table-page-search-submitButtons" style="float: left; overflow: hidden;">
<a-col :md="4" :sm="24"> <a-col :md="3" :sm="6" style="float:right;height:35px">
<a-button @click="search()" type="primary">查询</a-button> <a-button @click="search()" type="primary">查询</a-button>
<a-button v-show="!callback" @click="handleSubmit" style="margin-left: 10px">导出</a-button> <a-button @click="handleSubmit" style="margin-left: 10px">导出</a-button>
<a-button v-show="callback" style="margin-left: 10px">导出中<a-spin style="margin-left: 5px" size="small"/></a-button>
</a-col> </a-col>
</span>
</a-row> </a-row>
</a-form> </a-form>
</div> </div>
<a-modal
title="置为异常单"
:visible="setAbnormal"
@ok="setAbnormalOk"
@cancel="setAbnormalCancel"
html-type="submit"
width="1024px"
>
<a-row :gutter="24" style="text-align: right">
<a-col :md="6" :sm="12">
<p>置为异常单原因:</p>
</a-col>
<a-col :md="12" :sm="12">
<a-input type="hidden" placeholder="获取id" v-model="setAbnormalStr.orderId"></a-input>
<a-input placeholder="置为异常单原因" v-model="setAbnormalStr.errorMsg"></a-input>
</a-col>
</a-row>
</a-modal>
<!--列表--> <!--列表-->
<s-table :columns="columns" :data="rowdata" bordered ref="table" size="small" class="flex-filling" :locale="emptyText"> <s-table :columns="columns" :data="rowdata" bordered ref="table" size="small" class="flex-filling" :locale="emptyText">
<!--拦截器--> <!--拦截器-->
...@@ -81,6 +154,8 @@ ...@@ -81,6 +154,8 @@
<template slot="operation" slot-scope="text, record"> <template slot="operation" slot-scope="text, record">
<span> <span>
<a @click="showDrawer(record)">查看</a> <a @click="showDrawer(record)">查看</a>
<a-divider type="vertical"/>
<a @click="abnormal(record.id)">设为异常单</a>
</span> </span>
</template> </template>
</s-table> </s-table>
...@@ -212,6 +287,10 @@ ...@@ -212,6 +287,10 @@
<script> <script>
import STable from '@/components/table'; import STable from '@/components/table';
import {orderViewList,download} from "@/api/school-center/productAPI" import {orderViewList,download} from "@/api/school-center/productAPI"
import {
abnormal,
broadBandList,
} from "../../../api/school-center/orderAPI";
import {cloneObject,exportFile} from '@/utils/util'; import {cloneObject,exportFile} from '@/utils/util';
import moment from 'moment'; import moment from 'moment';
export default { export default {
...@@ -225,6 +304,11 @@ ...@@ -225,6 +304,11 @@
callback:false, callback:false,
Formtable: this.$form.createForm(this), Formtable: this.$form.createForm(this),
visible: false, visible: false,
setAbnormal:false,
setAbnormalStr: {
orderId:"",
errorMsg: "",
},
pStyle: { pStyle: {
fontSize: '16px', fontSize: '16px',
color: 'rgba(0,0,0,0.85)', color: 'rgba(0,0,0,0.85)',
...@@ -241,24 +325,49 @@ ...@@ -241,24 +325,49 @@
orderseq :'', orderseq :'',
orderUniversityName :'', orderUniversityName :'',
status :'', status :'',
ordername :'' ordername :'',
hehuorenArea: '',
orderStatus:'',
userType:''
}, },
orderInfo:{}, orderInfo:{},
columns: [ columns: [
{dataIndex: 'orderseq', width: 200, title: '订单号码 '}, {dataIndex: 'orderId', width: 200, title: '智能平台'},
{dataIndex: 'productname', width: 200, title: '产品名称'}, {dataIndex: 'customerName', width: 100, title: '客户名称'},
{dataIndex: 'orderSetMeal', width: 80, title: '套餐 '}, {dataIndex: 'contactNumber', width: 120, title: '联系电话'},
{dataIndex: 'orderUniversityName', width: 200, title: '学校'}, {dataIndex: 'orderSetMeal', width: 120, title: '办理套餐'},
{dataIndex: 'ordername', width: 80, title: '姓名 '}, {dataIndex: 'orderStatus', width: 80, title: '订单状态'},
{dataIndex: 'orderdate', width: 150, title: '提交时间 ' ,scopedSlots: {customRender: 'productLastUpdateTime'}}, {dataIndex: 'orderNumber', width: 200, title: '订单编号'},
{dataIndex: 'status', width: 50, title: '状态 ', scopedSlots: {customRender: 'productState'}}, {dataIndex: 'orderUniversityName', width: 200, title: '客户学校'},
{dataIndex: 'orderRegion', width: 70, title: '县分'}, {dataIndex: 'orderRegion', width: 100, title: '客户县分'},
{dataIndex: 'orderCustomerType', width: 80, title: '用户类别 '}, {dataIndex: 'ipay', width: 100, title: '支付平台',
customRender: function(text, record, index) {
if (text == 0) {
return "翼支付网厅";
}else if (text == 1) {
return "支付宝";
}else if(text == 2) {
return "微信";
}else {
return "";
}
}
},
{dataIndex: 'orderReqtranSeq', width: 240, title: '穗易付订单号'},
{dataIndex: 'uptranseq', width: 240, title: '支付平台流水号'},
{dataIndex: 'orderDate', width: 200, title: '创建时间',
customRender: function(text, record, index) {
if (text == null) {
return "";
}
return moment(text).format("YYYY-MM-DD HH:mm:ss");
}
},
/* {dataIndex: 'productIntroduction', width: 200, title: '产品情况 ', scopedSlots: {customRender: 'text'}}, /* {dataIndex: 'productIntroduction', width: 200, title: '产品情况 ', scopedSlots: {customRender: 'text'}},
{dataIndex: 'productSetMealIntroduction', width: 200, title: '资费介绍 ', scopedSlots: {customRender: 'text'}},*/ {dataIndex: 'productSetMealIntroduction', width: 200, title: '资费介绍 ', scopedSlots: {customRender: 'text'}},*/
{ {
dataIndex: 'operation', dataIndex: 'operation',
width: 50, width: 140,
title: '操作', title: '操作',
scopedSlots: {customRender: 'operation'}, scopedSlots: {customRender: 'operation'},
fixed: "right" fixed: "right"
...@@ -271,7 +380,7 @@ ...@@ -271,7 +380,7 @@
} }
let obj = cloneObject(this.queryParam) let obj = cloneObject(this.queryParam)
//表示 //表示
return orderViewList(Object.assign(params,obj)).then(res => { return broadBandList(Object.assign(params,obj)).then(res => {
let data = {} let data = {}
if (res.state !== 'success') { if (res.state !== 'success') {
this.$message.error("查询失败!", 5); this.$message.error("查询失败!", 5);
...@@ -362,12 +471,22 @@ ...@@ -362,12 +471,22 @@
}, },
//时间事件 //时间事件
onChange(date, dateString) { onChange(date, dateString) {
if(dateString.length==0){ if (dateString.length == 0) {
this.queryParam.startTime='' this.queryParam.createTimeStart = "";
this.queryParam.endTime='' this.queryParam.createTimeEnd = "";
}else { } else {
this.queryParam.startTime=dateString[0] this.queryParam.createTimeStart = dateString[0];
this.queryParam.endTime=dateString[1] this.queryParam.createTimeEnd = dateString[1];
}
},
onSuccessChange(date, dateString) {
if (dateString.length == 0) {
this.queryParam.successTimeStart = "";
this.queryParam.successTimeEnd = "";
} else {
this.queryParam.successTimeStart = dateString[0];
this.queryParam.successTimeEnd = dateString[1];
} }
}, },
handleSubmit() { handleSubmit() {
...@@ -378,7 +497,39 @@ ...@@ -378,7 +497,39 @@
}, },
downloadstatu(){ downloadstatu(){
this.callback=false; this.callback=false;
},
abnormal(orderId) {
this.setAbnormal = true;
this.setAbnormalStr.orderId = orderId;
},
setAbnormalOk(){
if(this.setAbnormalStr.errorMsg.length<3){
this.$notification.error({
message: "请输入不小于三个字的操作结果",
description: "",
duration: 4
});
}else{
let setAbnormalStr = this.setAbnormalStr;
abnormal(setAbnormalStr).then(res => {
if (res.state == "success") {
this.search();
this.$message.success(res.data, 5);
} else {
this.$message.error(res.msg, 5);
}
this.setAbnormalClear();
});
} }
},
setAbnormalCancel(){
this.setAbnormalClear();
},
setAbnormalClear(){
this.setAbnormalStr.orderId = "";
this.setAbnormalStr.errorMsg = "";
this.setAbnormal = false;
},
} }
} }
</script> </script>
......
<template> <template>
<div class="flex-container"> <div class="flex-container">
<!-- 查询区域 --> <!-- 查询区域 -->
<div class="table-page-search-wrapper"> <div class="table-page-search-wrapper" v-show="searchShow">
<!-- 搜索区域 --> <!-- 搜索区域 -->
<a-form layout="inline"> <a-form layout="inline">
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :md="4" :sm="8"> <a-col :md="6" :sm="6">
<a-form-item label="电信激活号码:"> <a-form-item label="激活号码:">
<a-input placeholder="" v-model="queryParam.title"></a-input> <a-input placeholder="" v-model="queryParam.orderPhone"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="6" :sm="6">
<a-col :md="3" :sm="6"> <a-form-item label="销售人:">
<a-form-item label="放号人:">
<a-input placeholder="" v-model="queryParam.name"></a-input> <a-input placeholder="" v-model="queryParam.name"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="4" :sm="4">
<a-form-item label="销售县分">
<a-select v-model="queryParam.salesSubst" @change="getSchool">
<a-select-option key="">--全部--</a-select-option>
<a-select-option v-for="d in subNames" :key="d.value" :value="d.value">{{d.text}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col :md="8" :sm="8">
<a-form-item label="销售学校">
<a-select v-model="queryParam.salesSchool">
<a-select-option key="">--全部--</a-select-option>
<a-select-option v-for="d in schoolNames" :key="d.value" :value="d.value">{{d.text}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col :md="4" :sm="8"> <a-col :md="6" :sm="6">
<a-form-item label="放号账号:"> <a-form-item label="激活时间:">
<a-range-picker @change="onChangeActivateTime" />
</a-form-item>
</a-col>
<a-col :md="6" :sm="6">
<a-form-item label="上传时间:">
<a-range-picker @change="onChangeCreateTime" />
</a-form-item>
</a-col>
<a-col :md="6" :sm="6">
<a-form-item label="销售账号:">
<a-input placeholder="" v-model="queryParam.account"></a-input> <a-input placeholder="" v-model="queryParam.account"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="4" :sm="8"> <a-col :md="6" :sm="6">
<a-form-item :labelCol="{span: 5}" :wrapperCol="{span: 18, offset: 1}" label="审核状态"> <a-form-item :labelCol="{span: 5}" :wrapperCol="{span: 18, offset: 1}" label="审核状态">
<a-select placeholder="请选择" v-model="queryParam.status"> <a-select placeholder="请选择" v-model="queryParam.status">
<a-select-option key="">请选择</a-select-option> <a-select-option key="">请选择</a-select-option>
...@@ -35,8 +63,16 @@ ...@@ -35,8 +63,16 @@
</a-select> </a-select>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="6" :sm="6">
<a-col :md="4" :sm="8"> <a-form-item :labelCol="{span: 5}" :wrapperCol="{span: 18, offset: 1}" label="销售时段">
<a-select placeholder="请选择" v-model="queryParam.preType">
<a-select-option key="">请选择</a-select-option>
<a-select-option key="前置">前置</a-select-option>
<a-select-option key="开学">开学</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col :md="6" :sm="6">
<a-form-item :labelCol="{span: 5}" :wrapperCol="{span: 18, offset: 1}" label="订单类型"> <a-form-item :labelCol="{span: 5}" :wrapperCol="{span: 18, offset: 1}" label="订单类型">
<a-select placeholder="请选择" v-model="queryParam.orderType"> <a-select placeholder="请选择" v-model="queryParam.orderType">
<a-select-option key="">请选择</a-select-option> <a-select-option key="">请选择</a-select-option>
...@@ -51,9 +87,17 @@ ...@@ -51,9 +87,17 @@
</a-select> </a-select>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="6" :sm="6">
<a-form-item :labelCol="{span: 5}" :wrapperCol="{span: 18, offset: 1}" label="审核锁定">
<a-select placeholder="请选择" v-model="queryParam.lockState">
<a-select-option key="">全部</a-select-option>
<a-select-option key="是"></a-select-option>
<a-select-option key="否"></a-select-option>
</a-select>
</a-form-item>
</a-col>
<span class="table-page-search-submitButtons" style="overflow: hidden;"> <a-col :md="6" :sm="6">
<a-col :md="6" :sm="24">
<a-button @click="search()" type="primary">查询</a-button> <a-button @click="search()" type="primary">查询</a-button>
<a-divider type="vertical"/> <a-divider type="vertical"/>
...@@ -67,7 +111,10 @@ ...@@ -67,7 +111,10 @@
<a-icon type="arrow-up" />充值审核 <a-icon type="arrow-up" />充值审核
</a-menu-item> </a-menu-item>
<a-menu-item key="3"> <a-menu-item key="3">
<a-icon type="arrow-up" />累计充值导入 <a-icon type="arrow-up" />批量修改导入
</a-menu-item>
<a-menu-item key="4">
<a-icon type="arrow-up" />锁定导入
</a-menu-item> </a-menu-item>
</a-menu> </a-menu>
<a-button style="margin-left: 8px"> <a-button style="margin-left: 8px">
...@@ -77,22 +124,28 @@ ...@@ -77,22 +124,28 @@
</a-dropdown> </a-dropdown>
</a-col> </a-col>
</span>
</a-row> </a-row>
</a-form> </a-form>
</div> </div>
<div class="table-page-search-wrapper show-search-button">
<a-button size="small" type="link" @click="changeSearchShow">
<span v-if="searchShow">
收起<a-icon type='up'/>
</span>
<span v-else>
展开<a-icon type='down'/>
</span>
</a-button>
</div>
<!--列表--> <!--列表-->
<s-table :locale="emptyText" :columns="columns" :data="rowdata" bordered ref="table" size="small" class="flex-filling"> <s-table :locale="emptyText" :columns="columns" :data="rowdata" :pageSize="pageSize" bordered ref="table" size="small" class="flex-filling">
<template slot="imageUrl" slot-scope="text"> <template slot="imageUrl" slot-scope="text">
<img style="width: 20%" :src="apis + text" @click="imgClick(text)"> <img style="width: 20%" :src="apis + text" @click="imgClick(text)">
</template> </template>
<template slot="operation" slot-scope="text,record"> <template slot="operation" slot-scope="text,record">
<!-- <a @click="modifyfunction(record)">编辑</a>--> <!-- <a @click="modifyfunction(record)">编辑</a>-->
<!--<a-divider type="vertical"/>--> <!--<a-divider type="vertical"/>-->
<a-popconfirm title="是否要删除此行?" @confirm="deleteOrder(record.id)"> <a @click="showModal(record)">备注</a>
<a>删除</a>
</a-popconfirm>
<!--<a-divider type="vertical"/>--> <!--<a-divider type="vertical"/>-->
</template> </template>
<template slot="orderTypeScope" slot-scope="text"> <template slot="orderTypeScope" slot-scope="text">
...@@ -114,6 +167,11 @@ ...@@ -114,6 +167,11 @@
</template> </template>
</s-table> </s-table>
<a-modal v-model="visible" title="备注" ok-text="确认" cancel-text="取消" @ok="hideModal">
<span>备注内容:</span>
<a-input v-model="customRemark"></a-input>
</a-modal>
<a-modal <a-modal
title="批量导入" title="批量导入"
:visible="modifyvisible" :visible="modifyvisible"
...@@ -149,6 +207,14 @@ ...@@ -149,6 +207,14 @@
模板下载: 模板下载:
<a-button type="primary" @click="downloadTemplateCZ">充值审核模板</a-button> <a-button type="primary" @click="downloadTemplateCZ">充值审核模板</a-button>
</p> </p>
<p v-show="PLTemplate">
模板下载:
<a-button type="primary" @click="downloadTemplatePL">批量修改模板</a-button>
</p>
<p v-show="SDTemplate">
模板下载:
<a-button type="primary" @click="downloadTemplateSD">锁定导入模板</a-button>
</p>
<!-- <p v-show="LJTemplate">--> <!-- <p v-show="LJTemplate">-->
<!-- 模板下载:--> <!-- 模板下载:-->
<!-- <a-button type="primary" @click="downloadTemplateLJ">累计审核模板</a-button>--> <!-- <a-button type="primary" @click="downloadTemplateLJ">累计审核模板</a-button>-->
...@@ -165,11 +231,12 @@ ...@@ -165,11 +231,12 @@
import { import {
getList, getList,
deleteOrder,getSubstList,getSchoolList, deleteOrder,getSubstList,getSchoolList,
downloadTemplateFH,downloadTemplateCZ, downloadTemplateFH,downloadTemplateCZ,downloadTemplatePL, downloadTemplateSD,
downloadResult,exportList downloadResult,exportList,customRemark
} from "@/api/school-center/salesListAPI" } from "@/api/school-center/salesListAPI"
import {cloneObject,exportFile} from '@/utils/util'; import {cloneObject,exportFile} from '@/utils/util';
import ImportBtn from "../../../components/sysmanage/ImportBtn"; import ImportBtn from "../../../components/sysmanage/ImportBtn";
import {getSchoolNames, initSubstName} from "../../../api/school-center/louZhang/louZhangManagerAPI";
export default { export default {
name: "salesList", name: "salesList",
...@@ -178,18 +245,24 @@ ...@@ -178,18 +245,24 @@
}, },
data: function () { data: function () {
return { return {
pageSize: 200,
searchShow: true,
emptyText: {emptyText: '暂无数据'}, emptyText: {emptyText: '暂无数据'},
previewVisible: false, previewVisible: false,
previewImage: '', previewImage: '',
fileList: [ fileList: [],
],
apis:'', apis:'',
fileid:{}, fileid:{},
visible: false,
customRemark: '',
customId: 0,
brackgroundurl:"manager/ciop/school/schoolManagement/qrcodeUpload", brackgroundurl:"manager/ciop/school/schoolManagement/qrcodeUpload",
// form // form
Formtable: this.$form.createForm(this, {name: 'Formtable'}), Formtable: this.$form.createForm(this, {name: 'Formtable'}),
FHTemplate: false, FHTemplate: false,
CZTemplate: false, CZTemplate: false,
PLTemplate: false,
SDTemplate: false,
importUrl: "", importUrl: "",
importTile: "", importTile: "",
modifyvisible: false, modifyvisible: false,
...@@ -208,6 +281,8 @@ ...@@ -208,6 +281,8 @@
packageName:[], packageName:[],
chosePages:[], chosePages:[],
products:[], products:[],
schoolNames: [],
subNames: [],
//输入框列表 //输入框列表
queryParam: { queryParam: {
orderPhone: '', orderPhone: '',
...@@ -215,35 +290,40 @@ ...@@ -215,35 +290,40 @@
account: '', account: '',
status: '', status: '',
orderType: '', orderType: '',
salesSubst: '',
salesSchool: '',
createTimeStart: '', createTimeStart: '',
createTimeEnd: '', createTimeEnd: '',
activateTimeStart: '', activateTimeStart: '',
activateTimeEnd: '', activateTimeEnd: '',
preType: '',
lockState: ''
}, },
columns: [ columns: [
{dataIndex: 'salesSchool', width: 200, title: '销售学校', align: "center"}, {dataIndex: 'salesSchool', width: 200, title: '销售学校', align: "center"},
{dataIndex: 'salesSubst', width: 200, title: '销售县分', align: "center"}, {dataIndex: 'salesSubst', width: 80, title: '销售县分', align: "center"},
{dataIndex: 'orderPhone', width: 200, title: '电信激活号码', align: "center"}, {dataIndex: 'orderPhone', width: 120, title: '电信激活号码', align: "center"},
{dataIndex: 'name', width: 200, title: '放号人', align: "center"}, {dataIndex: 'name', width: 80, title: '放号人', align: "center"},
{dataIndex: 'account', width: 200, title: '放号人账号', align: "center"}, {dataIndex: 'account', width: 120, title: '放号人账号', align: "center"},
{dataIndex: 'createTime', width: 200, title: '上传时间', align: "center", {dataIndex: 'createTime', width: 160, title: '上传时间', align: "center",
customRender: (text, row, index) => { customRender: (text, row, index) => {
return moment(text).format("YYYY-MM-DD HH:mm:ss"); return moment(text).format("YYYY-MM-DD HH:mm:ss");
} }
}, },
{ {
dataIndex: 'orderType', width: 200, title: '订单类型', align: "center", dataIndex: 'orderType', width: 80, title: '订单类型', align: "center",
scopedSlots: {customRender: "orderTypeScope"} scopedSlots: {customRender: "orderTypeScope"}
}, },
{dataIndex: "preType", width:200, title:'销售时段', align : "center"}, {dataIndex: "preType", width:80, title:'销售时段', align : "center"},
{dataIndex: "lockState", width:80, title:'是否锁定', align : "center"},
{dataIndex: 'networkName', width: 200, title: '所属网点', align: "center"}, {dataIndex: 'networkName', width: 200, title: '所属网点', align: "center"},
{dataIndex: 'networkCode', width: 200, title: '网点编码', align: "center"}, {dataIndex: 'networkCode', width: 130, title: '网点编码', align: "center"},
{ {
dataIndex: 'status', width: 200, title: '审核状态', align: "center", dataIndex: 'status', width: 120, title: '审核状态', align: "center",
scopedSlots: {customRender: "statusScope"} scopedSlots: {customRender: "statusScope"}
}, },
{dataIndex: 'remark', width: 200, title: '审核备注', align: "center"}, {dataIndex: 'remark', width: 240, title: '审核备注', align: "center",ellipsis:true},
{dataIndex: 'auditTime', width: 200, title: '审核时间', align: "center", {dataIndex: 'auditTime', width: 160, title: '审核时间', align: "center",
customRender: (text, row, index) => { customRender: (text, row, index) => {
if (text == null) { if (text == null) {
return ""; return "";
...@@ -251,7 +331,7 @@ ...@@ -251,7 +331,7 @@
return moment(text).format("YYYY-MM-DD HH:mm:ss"); return moment(text).format("YYYY-MM-DD HH:mm:ss");
} }
}, },
{dataIndex: 'activateTime', width: 200, title: '激活时间', align: "center", {dataIndex: 'activateTime', width: 160, title: '激活时间', align: "center",
customRender: (text, row, index) => { customRender: (text, row, index) => {
if (text == null) { if (text == null) {
return ""; return "";
...@@ -259,24 +339,22 @@ ...@@ -259,24 +339,22 @@
return moment(text).format("YYYY-MM-DD HH:mm:ss"); return moment(text).format("YYYY-MM-DD HH:mm:ss");
} }
}, },
{dataIndex: 'recentlyAmount', width: 200, title: '最近充值', align: "center"}, {dataIndex: 'recentlyAmount', width: 80, title: '最近充值', align: "center"},
{dataIndex: 'recentlyBonus', width: 200, title: '最近充值激励', align: "center"}, {dataIndex: 'recentlyBonus', width: 120, title: '最近充值激励', align: "center"},
{dataIndex: 'capitalBonus', width: 200, title: '本金佣金', align: "center"}, {dataIndex: 'allBonus', width: 120, title: '应发总激励', align: "center"},
{dataIndex: 'monthAmount', width: 200, title: '累计充值金额', align: "center"}, {dataIndex: 'nonSendBonus', width: 80, title: '未发激励', align: "center"},
{dataIndex: 'monthBonus', width: 200, title: '累计充值激励', align: "center"}, {dataIndex: 'sendBonus', width: 80, title: '已发激励', align: "center"},
{dataIndex: 'allBonus', width: 200, title: '应发总激励', align: "center"},
{dataIndex: 'nonSendBonus', width: 200, title: '未发激励', align: "center"},
{dataIndex: 'sendBonus', width: 200, title: '已发激励', align: "center"},
{dataIndex: 'oldCombo', width: 200, title: '原套餐', align: "center"}, {dataIndex: 'oldCombo', width: 200, title: '原套餐', align: "center"},
{dataIndex: 'upgradeCombo', width: 200, title: '升级套餐', align: "center"}, {dataIndex: 'upgradeCombo', width: 200, title: '升级套餐', align: "center"},
{dataIndex: 'customRemark', width: 120, title: '备注', align: "center"},
{ {
dataIndex: 'operation', dataIndex: 'operation',
width: 120, width: 120,
title: '操作', title: '操作',
align: "center", align: "center",
scopedSlots: {customRender: 'operation'}, scopedSlots: {customRender: 'operation'},
fixed: "right" },
}] ]
, ,
rowdata: parameter => { rowdata: parameter => {
const env = process.env.NODE_ENV; //获取当前环境 const env = process.env.NODE_ENV; //获取当前环境
...@@ -291,6 +369,8 @@ ...@@ -291,6 +369,8 @@
//表示 //表示
let obj = cloneObject(this.queryParam) let obj = cloneObject(this.queryParam)
return getList(Object.assign(params, obj)).then(res => { return getList(Object.assign(params, obj)).then(res => {
console.log("列表数据");
console.log(res);
let data = {} let data = {}
if (res.state !== 'success') { if (res.state !== 'success') {
this.emptyText.emptyText = '查询失败!' this.emptyText.emptyText = '查询失败!'
...@@ -307,7 +387,6 @@ ...@@ -307,7 +387,6 @@
if (res.data.records.length==0){ if (res.data.records.length==0){
return data return data
} }
data = { data = {
data: res.data.records, data: res.data.records,
pageSize: parameter.pageSize, pageSize: parameter.pageSize,
...@@ -321,6 +400,41 @@ ...@@ -321,6 +400,41 @@
} }
}, },
methods:{ methods:{
showModal(record) {
if (record == undefined || record == null) {
this.customRemark = "";
this.customId = 0;
}else{
this.customId = record.id;
this.customRemark = record.customRemark;
}
this.visible = true;
},
hideModal() {
this.visible = false;
let params = {};
params.id = this.customId;
params.customRemark = this.customRemark;
customRemark(params).then(res => {
if(res.state == "success"){
this.$message.success(res.data ? res.data : '更新成功', 5)
this.search();
return null;
}else{
this.$message.error(res.data ? res.data : '更新失败', 5)
}
})
},
changeSearchShow() {
this.searchShow = this.searchShow ? false : true;
this.$refs.table.setHeight();
this.$nextTick(() =>{
setTimeout(()=>{ //为防止表头高度变化,延迟300s
this.$refs.table.setHeight();
},100)
})
},
search() { search() {
this.$refs.table.refresh({search: true}) this.$refs.table.refresh({search: true})
}, },
...@@ -331,6 +445,12 @@ ...@@ -331,6 +445,12 @@
if (e.key == "2") { if (e.key == "2") {
this.handleSubmit2(); this.handleSubmit2();
} }
if (e.key == "3") {
this.handleSubmit3();
}
if (e.key == "4") {
this.handleSubmit4();
}
}, },
handleSubmit1() { handleSubmit1() {
this.importTile = "放号上传"; this.importTile = "放号上传";
...@@ -344,12 +464,30 @@ ...@@ -344,12 +464,30 @@
this.importUrl = "manager/ciop/salesList/importRechargeData"; this.importUrl = "manager/ciop/salesList/importRechargeData";
this.modifyvisible = true; this.modifyvisible = true;
}, },
handleSubmit3() {
this.importTile = "批量修改";
this.PLTemplate = true;
this.importUrl = "manager/ciop/salesList/importBatchUpdate";
this.modifyvisible = true;
},
handleSubmit4() {
this.importTile = "审核锁定";
this.SDTemplate = true;
this.importUrl = "manager/ciop/salesList/importAuditLock";
this.modifyvisible = true;
},
downloadTemplateFH: function() { downloadTemplateFH: function() {
exportFile(downloadTemplateFH(), "放号上传清单.xlsx"); exportFile(downloadTemplateFH(), "放号上传清单.xlsx");
}, },
downloadTemplateCZ: function() { downloadTemplateCZ: function() {
exportFile(downloadTemplateCZ(), "充值审核清单.xlsx"); exportFile(downloadTemplateCZ(), "充值审核清单.xlsx");
}, },
downloadTemplatePL: function () {
exportFile(downloadTemplatePL(), "批量修改清单.xlsx");
},
downloadTemplateSD: function () {
exportFile(downloadTemplateSD(), "锁定导入清单.xlsx");
},
// downloadTemplateLJ: function() { // downloadTemplateLJ: function() {
// exportFile(downloadMoBanKD(), "累计充值审核清单.xlsx"); // exportFile(downloadMoBanKD(), "累计充值审核清单.xlsx");
// }, // },
...@@ -365,6 +503,8 @@ ...@@ -365,6 +503,8 @@
this.importTile = ""; this.importTile = "";
this.FHTemplate = false; this.FHTemplate = false;
this.CZTemplate = false; this.CZTemplate = false;
this.PLTemplate = false;
this.SDTemplate = false;
this.importUrl = ""; this.importUrl = "";
}, },
// 执行上传 // 执行上传
...@@ -379,7 +519,7 @@ ...@@ -379,7 +519,7 @@
this.$message.error(response.msg ? response.msg : "上传文件出错!", 5); this.$message.error(response.msg ? response.msg : "上传文件出错!", 5);
return false; return false;
} }
this.$message.success("上传成功!" + response.data.msg, 5); this.$message.success("上传成功!" + response.data, 5);
if(response.data.msg.indexOf("返回导入结果清单") > -1){ if(response.data.msg.indexOf("返回导入结果清单") > -1){
exportFile(downloadResult({"key": response.data.key}), "导入结果清单.xlsx"); exportFile(downloadResult({"key": response.data.key}), "导入结果清单.xlsx");
} }
...@@ -402,18 +542,71 @@ ...@@ -402,18 +542,71 @@
}) })
}, },
exportList(){ exportList(){
exportFile(exportList(this.queryParam),'销售清单.xlsx'); exportFile(exportList(this.queryParam),'销售清单.xlsx');
},
getSchool() {
this.schoolNames = [];
this.queryParam.salesSchool = '';
getSchoolNames({"substName": this.queryParam.salesSubst}).then((res) => {
if (res.state == "success") {
const result = res.data
result.forEach((r) => {
if (r.schoolName === 'null')
return;
this.schoolNames.push({
value: r.schoolName,
text: r.schoolName
})
})
} }
})
},
initSubstName() {
initSubstName().then((res) => {
if (res.state == "success") {
const result = res.data
result.forEach((r) => {
if (r.subName === 'null')
return;
this.subNames.push({
value: r.subName,
text: r.subName
})
})
}
})
},
onChangeActivateTime(date, dateString) {
console.log("入网时间");
console.log(dateString);
this.queryParam.activateTimeStart = dateString[0];
this.queryParam.activateTimeEnd = dateString[1];
},
onChangeCreateTime(date, dateString) {
console.log("上传时间");
console.log(dateString);
this.queryParam.createTimeStart = dateString[0];
this.queryParam.createTimeEnd = dateString[1];
}
},
mounted() {
this.initSubstName();
this.getSchool();
} }
} }
</script> </script>
<style scoped> <style scoped>
.show-search-button {
text-align: right;
margin: 0px 0px 10px 0px;
}
.ant-table-small > .ant-table-content > .ant-table-scroll > .ant-table-header > table > .ant-table-thead > tr > th{
padding:10px 0px;
}
.ant-table-small > .ant-table-content > .ant-table-scroll > .ant-table-body > table > .ant-table-tbody > tr > td{
padding:0px;
}
</style> </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