Commit 342ded1f by 黄森林

pc端订单管理完成

parent a5fd5afe
......@@ -6,6 +6,7 @@ let orderList = (params) => postAction(prefix + "order/list" , params);
let download = (params) => downFilePost(prefix + "order/download" , params);
//返回订单历史状态
let selectOrderHis = (params) => postAction(prefix +"order/selectOrderHis" , params);
let reviewStudentIdCard = (params) => postAction(prefix +"order/reviewStudentIdCard" , params);
let abnormal = (params) => postAction(prefix +"order/abnormal" , params);
let downloadMoBan = (params) => downFilePost(prefix + "order/downloadMoBan" , params);
let downloadMoBanKD = (params) => downFilePost(prefix + "order/downloadMoBanKD" , params);
......@@ -23,5 +24,6 @@ export {
downloadMoBan,
downloadMoBanKD,
reportList,
reviewStudentIdCard,
reportDownload
}
......@@ -58,22 +58,31 @@
<a-form-item label="状态:">
<a-select v-model="queryParam.orderStatus" style="width: 120px" >
<a-select-option value="">请选择</a-select-option>
<a-select-option value="1">待提交</a-select-option>
<a-select-option value="4">归档</a-select-option>
<a-select-option value="5">作废</a-select-option>
<a-select-option value="3">受理成功</a-select-option>
<a-select-option value="9">已收费</a-select-option>
<a-select-option value="10">受理异常</a-select-option>
<a-select-option value="2">待受理</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-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="6" :sm="12">
<a-button @click="search()" type="primary">查询</a-button>
<a-button v-show="!callback" @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-button @click="handleSubmit1" style="margin-left: 10px">批量处理</a-button>
<a-button @click="handleSubmit2" style="margin-left: 10px">快递</a-button>
<a-button @click="handleSubmit1" type="primary" style="margin-left: 5px">批量处理</a-button>
<a-button @click="handleSubmit2" type="primary" style="margin-left: 5px">快递</a-button>
</a-col>
</a-row>
</a-form>
</div>
......@@ -110,131 +119,159 @@
<a @click="showDrawer(record)">查看</a>
<a-divider type="vertical"/>
<a @click="abnormal(record.id)">设为异常单</a>
<a-divider v-if="record.orderStatus === '待审核' " type="vertical"/>
<a v-show="record.orderStatus === '待审核'" @click="reviewStudentIdCard(record)">审核学生证</a>
</span>
</template>
</s-table>
<!----抽屉-->
<a-drawer width="1024" placement="right" :closable="false" @close="onClose" :visible="visible">
<a-drawer width="1280" placement="right" :closable="false" @close="onClose" :visible="visible">
<a-form :form="orderInfo">
<a-tabs type="card">
<a-tab-pane tab="订单基本信息" key="1" activeKey>
<p :style="pStyle">基础信息</p>
<a-divider orientation="left">基础信息</a-divider>
<a-row>
<a-col :span="12">
<a-col :span="6">
<p>客户名称:{{orderInfo.customerName}}</p>
</a-col>
<a-col :span="12">
<a-col :span="6">
<p>卡品:{{orderInfo.kapin}}</p>
</a-col>
</a-row>
<a-row>
<a-col :span="12">
<a-col :span="6">
<p>用户学校:{{orderInfo.userSchool}}</p>
</a-col>
<a-col :span="12">
<a-col :span="6">
<p>小白卡单号:{{orderInfo.xbOrderId}}</p>
</a-col>
</a-row>
<a-row>
<a-col :span="12">
<a-col :span="6">
<p>订单完成时间:{{orderInfo.successTime | dayjs}}</p>
</a-col>
<a-col :span="12">
<a-col :span="6">
<p>学号:{{orderInfo.studentNumber}}</p>
</a-col>
</a-row>
<a-row>
<a-col :span="12">
<a-col :span="6">
<p>班级:{{orderInfo.classNumber}}</p>
</a-col>
<a-col :span="12">
<a-col :span="6">
<p>父母名字:{{orderInfo.parentName}}</p>
</a-col>
</a-row>
<a-row>
<a-col :span="12">
<a-col :span="6">
<p>联系电话:{{orderInfo.contactNumber}}</p>
</a-col>
<a-col :span="12">
<a-col :span="6">
<p>身份证号:{{orderInfo.idCard}}</p>
</a-col>
</a-row>
<a-row>
<a-col :span="12">
<a-col :span="6">
<p>办理号码:{{orderInfo.businessNumber}}</p>
</a-col>
<a-col :span="12">
<a-col :span="6">
<p>创建时间:{{orderInfo.createTime | dayjs}}</p>
</a-col>
</a-row>
<a-row>
<a-col :span="12">
<a-col :span="6">
<p>地址:{{orderInfo.address}}</p>
</a-col>
<a-col :span="12">
<a-col :span="6">
<p>省市县:{{orderInfo.site}}</p>
</a-col>
</a-row>
<a-row>
<a-col :span="12">
<p>备注:{{orderInfo.remarks}}</p>
<a-col :span="6">
<p>资费:{{orderInfo.expenses}}</p>
</a-col>
<a-col :span="12">
<p>错误原因:{{orderInfo.checkFail}}</p>
<a-col :span="6">
<p>办理标识:{{orderInfo.identifying}}</p>
</a-col>
</a-row>
<a-row>
<a-col :span="12">
<p>资费:{{orderInfo.expenses}}</p>
<p>备注:{{orderInfo.remarks}}</p>
</a-col>
<a-col :span="12">
<p>办理标识:{{orderInfo.identifying}}</p>
<p>错误原因:{{orderInfo.checkFail}}</p>
</a-col>
</a-row>
<a-row>
<a-col :span="12">
<a-col :span="6">
<p>宽带账号:{{orderInfo.netNumber}}</p>
</a-col>
<a-col :span="12">
<a-col :span="6">
<p>宽带密码:{{orderInfo.netPassword}}</p>
</a-col>
</a-row>
<a-row>
<a-col :span="12">
<a-col :span="6">
<p>奖品账号:{{orderInfo.giftAccount}}</p>
</a-col>
<a-col :span="12">
<a-col :span="6">
<p>奖品密码:{{orderInfo.giftPassword}}</p>
</a-col>
</a-row>
<a-row>
<a-col :span="12">
<a-col :span="6">
<p>学生证审核状态:{{orderInfo.studentCardCheckStatus}}</p>
</a-col>
<a-col :span="12">
<a-col :span="6">
<p>宽带订单id:{{orderInfo.kdOrderId}}</p>
</a-col>
</a-row>
<a-row>
<a-col :span="12">
<a-col :span="6">
<p>智能平台订单号:{{orderInfo.orderId}}</p>
</a-col>
<a-col :span="12">
<a-col :span="6">
<p>智能平台订单状态:{{orderInfo.thStatus}}</p>
</a-col>
</a-row>
<a-divider orientation="left">附件</a-divider>
<div v-show="!imgShow">无附件</div>
<div v-show="imgShow" style="margin-bottom: 50px">
<a-carousel arrows dotsClass="slick-dots slick-thumb">
<a slot="customPaging" slot-scope="props">
<img :src="getImgUrl(props.i)" />
</a>
<div @click="pictureSize" v-for="item in certificatePhoto.length">
<img :style="imgStype" :src="certificatePhoto[item - 1]" />
</div>
</a-carousel>
</div>
<a-divider orientation="left">受理信息</a-divider>
<a-row>
<a-col :span="6">
<p>客户名称 :{{orderInfo.customerName}}</p>
</a-col>
<a-col :span="6">
<p>联系电话 :{{orderInfo.contactNumber}}</p>
</a-col>
<a-col :span="6">
<p>现有套餐 :{{orderInfo.nowPackage}}</p>
</a-col>
<a-col :span="6">
<p>升级套餐 :{{orderInfo.businessPackage}}</p>
</a-col>
</a-row>
<a-row>
<a-col :span="12">
<p>附件:</p>
<a-col :span="6">
<p>受理人:{{orderInfo.acceptName}}</p>
</a-col>
<a-col :span="6">
<p>受理结果 :{{orderInfo.acceptResult}}</p>
</a-col>
<a-col :span="6">
<p>受理意见 :{{orderInfo.acceptComment}}</p>
</a-col>
<a-col :span="6">
<p>受理时间 :{{orderInfo.acceptDate | dayjs}}</p>
</a-col>
</a-row>
</a-tab-pane>
<a-tab-pane tab="流程跟踪" key="3">
<a-tab-pane tab="操作日志" key="3">
<a-list :grid="{ column: 4 }" :dataSource="title">
<a-list-item slot="renderItem" slot-scope="item, index">
<a-card :title="item.title" :bordered="false">
......@@ -252,6 +289,7 @@
</a-list-item>
</a-list>
</a-tab-pane>
</a-tabs>
</a-form>
</a-drawer>
......@@ -284,16 +322,43 @@
</a-col>
</a-row>
</a-modal>
<a-modal title="学生证审核" :visible="review" @ok="reviewOk" @cancel="reviewCancel" html-type="submit" width="1024px">
<div align="center">
<img :src="reviewStudentImg">
</div>
<a-row :gutter="24" style="text-align: right">
<a-col :md="6" :sm="12" >
<p>审核状态:</p>
</a-col>
<a-col :md="6" :sm="12" >
<a-radio-group :options="options" v-model="reviewStudent.studentCardCheckStatus" />
</a-col>
</a-row>
<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 placeholder="审核不通过原因" v-model="reviewStudent.checkFail"></a-input>
</a-col>
</a-row>
</a-modal>
</div>
</template>
<script>
import STable from '@/components/table';
import {orderList,download,abnormal,selectOrderHis,downloadMoBan,downloadMoBanKD} from "@/api/school-center/orderAPI"
import {orderList,download,abnormal,selectOrderHis,downloadMoBan,downloadMoBanKD,reviewStudentIdCard} from "@/api/school-center/orderAPI"
import {cloneObject,exportFile} from '@/utils/util';
import moment from 'moment';
import ConstantActivity from '@/constant/ConstantActivity';
import ImportBtn from "../../../components/sysmanage/ImportBtn";
const options = [
{ label: '审核通过', value: '1' },
{ label: '审核不通过', value: '0' }
];
export default {
name: "orderView",
components: {
......@@ -302,6 +367,19 @@
},
data(){
return {
reviewStudentImg:'',
reviewStudent:{
id:'',
checkFail:'',
studentCardCheckStatus:''
},
options,
review:false,
imgShow:false,
imgStype:{width: "300px",heigth: "300px"},
baseUrl:'https://raw.githubusercontent.com/vueComponent/ant-design-vue/master/components/vc-slick/assets/img/react-slick/',
certificatePhoto:[],
childrenDrawer: false,
YRYMmoBan:false,
KDmoBan:false,
importUrl:'',
......@@ -352,7 +430,7 @@
},
{
dataIndex: 'operation',
width: 100,
width: 250,
title: '操作',
scopedSlots: {customRender: 'operation'},
fixed: "right"
......@@ -390,6 +468,64 @@
},
methods:{
moment,
reviewStudentIdCard(res){
this.reviewStudentImg=res.studenCard
/*this.reviewStudentImg =this.baseUrl+'abstract0'+1+'.jpg'*/
this.reviewStudent.studentCardCheckStatus=res.studentCardCheckStatus
this.reviewStudent.checkFail=res.checkFail
this.reviewStudent.id=res.id
this.review=true
},
reviewOk(){
if(this.reviewStudent.studentCardCheckStatus == '0'){
if(this.reviewStudent.checkFail == '' || this.reviewStudent.checkFail == undefined){
this.$notification.error({message:'审核不通过必须填写不通过原因!', description: '', duration: 4})
}
}else {
if(this.reviewStudent.checkFail != '' && this.reviewStudent.checkFail != undefined){
this.$notification.error({message:'审核通过无须填写不通过原因!', description: '', duration: 4})
}
}
if(this.reviewStudent.checkFail == '' || this.reviewStudent.checkFail == undefined){
this.reviewStudent.checkFail == ''
}
let obj = cloneObject(this.reviewStudent)
reviewStudentIdCard(Object.assign(obj)).then(res => {
if(res.state == 'success'){
this.$notification.success({message:'审核成功!', description: '', duration: 4})
this.search()
}else {
this.$notification.error({message:'审核失败!', description: '', duration: 4})
}
})
this.reviewClear()
},
reviewCancel(){
this.reviewClear()
},
reviewClear(){
this.reviewStudentImg=''
this.reviewStudent.id=''
this.reviewStudent.studentCardCheckStatus=''
this.reviewStudent.checkFail=''
this.review=false
},
pictureSize(){
if(this.imgStype.width=='700px'){
this.imgStype={width: "300px",heigth: "300px"}
}else {
this.imgStype={width: "700px",heigth: "500px"}
}
},
getImgUrl(i) {
return this.certificatePhoto[i];
},
showChildrenDrawer() {
this.childrenDrawer = true;
},
onChildrenDrawerClose() {
this.childrenDrawer = false;
},
downloadMoBan: function () {
exportFile(downloadMoBan(), "一人一码受理单.xlsx");
},
......@@ -418,6 +554,7 @@
this.importTile=''
this.YRYMmoBan=false
this.KDmoBan=false
this.importUrl=''
},
createfunctionOk(){
this.modifyvisible=false;
......@@ -439,7 +576,14 @@
this.$refs.table.refresh({search: true})
},
onClose() {
this.certificatePhoto=[]
this.orderInfo={
acceptResult:'',
nowPackage:'',
businessPackage:'',
acceptName:'',
acceptComment:'',
acceptDate:'',
customerName:'',
kapin:'',
userSchool:'',
......@@ -472,7 +616,26 @@
this.visible = false;
},
showDrawer(data){
this.certificatePhoto.push(data.idCardz)
this.certificatePhoto.push(data.idCardf)
this.certificatePhoto.push(data.idCardzs)
this.certificatePhoto.push(data.studenCard)
/* this.certificatePhoto.push('http://yrym.winsun-aly.com/gdtel-xyzx-hhr/images/yrym-ruanyan-logo.png')
this.certificatePhoto.push('http://yrym.winsun-aly.com/gdtel-xyzx-hhr/images/yrym-ruanyan-logo.png')
this.certificatePhoto.push('http://yrym.winsun-aly.com/gdtel-xyzx-hhr/images/yrym-ruanyan-logo.png')
this.certificatePhoto.push('http://yrym.winsun-aly.com/gdtel-xyzx-hhr/images/yrym-ruanyan-logo.png')*/
if(this.certificatePhoto[0]==null && this.certificatePhoto[1]==null &&this.certificatePhoto[2]==null &&this.certificatePhoto[3]==null ){
this.imgShow=false
}else {
this.imgShow=true
}
this.orderInfo={
acceptResult:data.acceptResult,
nowPackage:data.nowPackage,
businessPackage:data.businessPackage,
acceptName:data.acceptName,
acceptComment:data.acceptComment,
acceptDate:data.acceptDate,
customerName:data.customerName,
kapin:data.kapin,
userSchool:data.userSchool,
......@@ -541,6 +704,7 @@
abnormal(orderId){
abnormal({orderId}).then(res => {
if (res.state=="success") {
this.search()
this.$message.success( res.data, 5);
}else {
this.$message.error( res.data, 5);
......@@ -553,5 +717,29 @@
</script>
<style scoped>
.ant-carousel >>> .slick-dots {
height: auto;
}
.ant-carousel >>> .slick-slide img {
border: 5px solid #fff;
display: block;
margin: auto;
max-width: 80%;
}
.ant-carousel >>> .slick-thumb {
bottom: -45px;
}
.ant-carousel >>> .slick-thumb li {
width: 60px;
height: 45px;
}
.ant-carousel >>> .slick-thumb li img {
width: 100%;
height: 100%;
filter: grayscale(100%);
}
.ant-carousel >>> .slick-thumb li.slick-active img {
filter: grayscale(0%);
}
</style>
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
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