Commit 35d0524a authored by zhengke's avatar zhengke
parents a4f494ae d301834a
<template>
<q-dialog v-model="dialog" maximized full-height seamless position="right" >
<q-card style="margin-top:61px;width:900px" class="no-border-radius classinfo_Dialog">
<div class="drawerTop row" >
<div class="drawerTop2 row" >
<div class="drawerTop-d">
</div>
......@@ -106,10 +106,9 @@
</q-td>
</template>
<template v-slot:bottom>
<q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary" :max="pageCount"
<q-pagination class="full-width justify-end" v-model="msg.PageIndex" color="primary" :max="pageCount"
:input="true" @input="changePage" />
</template>
</q-table>
</div>
<div v-if="tab==3" style="padding: 10px 20px">
......@@ -131,36 +130,176 @@
<span>总经理备注</span>
</div>
</div>
<div class="q-px-lg q-pb-md">
<q-timeline color="secondary" >
<q-timeline-entry
v-for="(x,j) in data2" :index="j"
:key="j"
:title="x.CreateByName"
:subtitle="x.CreateTime"
<div class="q-px-lg q-pb-md" style="padding-bottom: 50px;">
<el-timeline>
<el-timeline-item
v-for="(activity, index) in data2"
:key="index"
:color="activity.color"
size="large"
>
<div>
<span>{{x.Content}}</span>
<div class="row" style="font-size: 14px;color: #111111">
<span>{{activity.CreateByName}}</span>
<span style="margin-left: 10px">{{activity.CreateTime}}</span>
</div>
<div style="width: 100%;padding: 15px;line-height: 20px;background: #F0F5FB;border-radius: 4px;font-size: 12px;color: #333333">
{{activity.Content}}
</div>
</div>
</el-timeline-item>
</el-timeline>
<q-pagination class="full-width justify-end" v-model="msg2.PageIndex" color="primary" :max="pageCount2"
:input="true" @input="changePage2" />
</div>
</div>
<div v-if="tab==4" style="padding:0 20px">
<div class="row " style="align-items: center;margin-bottom: 20px;" >
<div style="width: 3px;height: 15px;background: #3FC4FF;margin-right: 10px"></div>收款单
</div>
<q-table :pagination="msg" :loading="floading" no-data-label="暂无相关数据" flat class="sticky-tow-column-table"
:hide-pagination="true"
:data="dataList" :columns="columnsf" row-key="name">
<template v-slot:body-cell-FrID="props">
<q-td :props="props" @click="goUrl('FinancialDocumentsDetail',props.row)">
<span style="font-size: 14px;color: #2961FE;font-weight: bold;cursor: pointer;">{{props.row.FrID}}</span>
</q-td>
</template>
<template v-slot:body-cell-CostTypeList="props">
<q-td :props="props" v-for="(s,si) in props.row.CostTypeList">
<span style="background-color: rgba(64,158,255,.1);display: inline-block;padding: 0 5px;height: 22px;line-height: 20px;font-size: 12px;color: #646464;border-radius: 4px;box-sizing: border-box;border: 1px solid rgba(64,158,255,.2);white-space: nowrap;margin-bottom: 4px;margin-right: 4px;">{{s}}</span>
</q-td>
</template>
<template v-slot:body-cell-TradeWayList="props">
<q-td :props="props" class="row" style="align-items: center;height: auto">
<div v-if="props.row.TradeWayList&&props.row.TradeWayList.length>0" class="my-table-details">
<div v-for="(tw,twIn) in props.row.TradeWayList" style="line-height: normal !important;padding: 5px 10px;background-color: #EEEEEE;border-radius: 4px;width:210px;display: flex;flex-direction: column;align-items: center">
<p><span style="font-weight: bold;color:#333333">{{tw.Alias}}</span><span class="_bank_name" style="height:20px;;display: inline-block;background-color: #333333;color: white;padding: 2px 4px;border-radius: 4px;margin-left:10px;margin-letf:10px">{{props.row.TradeWayList[0].TypeName}}</span><span style="height:20px;display: inline-block;background-color: #333333;color: white;padding: 2px 4px;border-radius: 4px;margin-left:10px;" :style="{'background-color':tw.AccountType=='私'?'#2AAEF2':'#FF9C01'}">{{tw.AccountType==""?'无':tw.AccountType}}</span> </p>
<p style="color:#333333">{{tw.BankNo}}</p>
</div>
</div>
</q-td>
</template>
<template v-slot:body-cell-zhaungt="props">
<q-td :props="props" >
<i v-if="props.row.Status==1" class="iconfont icon-daiqueren" style="color: #4BCA81"></i>
<i v-if="props.row.Status==4" class="iconfont icon-yiquxiao" style="color: #4BCA81"></i>
<i v-if="props.row.Status==2" class="iconfont icon-yiqueren" style="color: #959595"></i>
<i v-if="props.row.Status==3" class="iconfont icon-shenhebohui" style="color: #E95252"></i>
<i v-if="props.row.Status==0" class="iconfont icon-zancun" style="color: #FF9C01"></i>
<span style="cursor: pointer;" @click="Financial_post_GetFinancLogList(props.row.FrID)">{{props.row.StatusStr}}</span>
<q-popup-proxy >
<q-banner>
<div style="height: auto;max-height: 220px;background-color: #FFFFFF;width: 230px">
<div class="changLog">
<p class="_log_t">流程日志</p>
<ul style="padding-left: 20px;max-height: 180px;overflow: auto;" v-if="GetFinancLogList" v-loading='LogLoading'>
<li style="border-left: 1px solid #E9E9E9;position: relative;padding-bottom: 10px;padding-left: 20px;padding-top: 10px;" v-for="(log,li) in GetFinancLogList">
<span style="background-color: #47BF8C;width: 7px;height: 7px;border-radius: 50%;display: inline-block;position: absolute;left: -4px;top: 19px;"></span>
<p class="row" style="justify-content: space-between"> <span class="_color_blue">{{log.EmName}}</span> <span class="fr changLog_time">{{log.UpdateDate}}</span> </p>
<p class="_dtel">{{log.StartValue}}</p>
</li>
</ul>
<ul v-else>
<li>暂无修改日志</li>
</ul>
</div>
</div>
</q-banner>
</q-popup-proxy>
</q-td>
</template>
</q-table>
<!-- 付款单-->
<div class="row " style="align-items: center;margin: 20px 0;" >
<div style="width: 3px;height: 15px;background: #3FC4FF;margin-right: 10px"></div>付款单
</div>
<q-table :pagination="msg" :loading="floading" no-data-label="暂无相关数据" flat class="sticky-tow-column-table"
:hide-pagination="true"
:data="dataListP" :columns="columnsf" row-key="name">
<template v-slot:body-cell-FrID="props">
<q-td :props="props" @click="goUrl('FinancialDocumentsDetail',props.row)">
<span style="font-size: 14px;color: #2961FE;font-weight: bold;cursor: pointer;">{{props.row.FrID}}</span>
</q-td>
</template>
<template v-slot:body-cell-CostTypeList="props">
<q-td :props="props" v-for="(s,si) in props.row.CostTypeList">
<span style="background-color: rgba(64,158,255,.1);display: inline-block;padding: 0 5px;height: 22px;line-height: 20px;font-size: 12px;color: #646464;border-radius: 4px;box-sizing: border-box;border: 1px solid rgba(64,158,255,.2);white-space: nowrap;margin-bottom: 4px;margin-right: 4px;">{{s}}</span>
</q-td>
</template>
<template v-slot:body-cell-TradeWayList="props">
<q-td :props="props" class="row" style="align-items: center;height: auto">
<div v-if="props.row.TradeWayList&&props.row.TradeWayList.length>0" class="my-table-details">
<div v-for="(tw,twIn) in props.row.TradeWayList" style="line-height: normal !important;padding: 5px 10px;background-color: #EEEEEE;border-radius: 4px;width:210px;display: flex;flex-direction: column;align-items: center">
<p><span style="font-weight: bold;color:#333333">{{tw.Alias}}</span><span class="_bank_name" style="height:20px;;display: inline-block;background-color: #333333;color: white;padding: 2px 4px;border-radius: 4px;margin-left:10px;margin-letf:10px">{{props.row.TradeWayList[0].TypeName}}</span><span style="height:20px;display: inline-block;background-color: #333333;color: white;padding: 2px 4px;border-radius: 4px;margin-left:10px;" :style="{'background-color':tw.AccountType=='私'?'#2AAEF2':'#FF9C01'}">{{tw.AccountType==""?'无':tw.AccountType}}</span> </p>
<p style="color:#333333">{{tw.BankNo}}</p>
</div>
</q-timeline-entry>
</q-timeline>
</div>
</q-td>
</template>
<template v-slot:body-cell-zhaungt="props">
<q-td :props="props" >
<i v-if="props.row.Status==1" class="iconfont icon-daiqueren" style="color: #4BCA81"></i>
<i v-if="props.row.Status==4" class="iconfont icon-yiquxiao" style="color: #4BCA81"></i>
<i v-if="props.row.Status==2" class="iconfont icon-yiqueren" style="color: #959595"></i>
<i v-if="props.row.Status==3" class="iconfont icon-shenhebohui" style="color: #E95252"></i>
<i v-if="props.row.Status==0" class="iconfont icon-zancun" style="color: #FF9C01"></i>
<span style="cursor: pointer;" @click="Financial_post_GetFinancLogList(props.row.FrID)">{{props.row.StatusStr}}</span>
<q-popup-proxy >
<q-banner>
<div style="height: auto;max-height: 220px;background-color: #FFFFFF;width: 230px">
<div class="changLog">
<p class="_log_t">流程日志</p>
<ul style="padding-left: 20px;max-height: 180px;overflow: auto;" v-if="GetFinancLogList" v-loading='LogLoading'>
<li style="border-left: 1px solid #E9E9E9;position: relative;padding-bottom: 10px;padding-left: 20px;padding-top: 10px;" v-for="(log,li) in GetFinancLogList">
<span style="background-color: #47BF8C;width: 7px;height: 7px;border-radius: 50%;display: inline-block;position: absolute;left: -4px;top: 19px;"></span>
<p class="row" style="justify-content: space-between"> <span class="_color_blue">{{log.EmName}}</span> <span class="fr changLog_time">{{log.UpdateDate}}</span> </p>
<p class="_dtel">{{log.StartValue}}</p>
</li>
</ul>
<ul v-else>
<li>暂无修改日志</li>
</ul>
</div>
</div>
</q-banner>
</q-popup-proxy>
</q-td>
</template>
</q-table>
</div>
<div v-if="tab==5" style="padding: 10px 20px">
<div class="q-px-lg q-pb-md">
<q-timeline color="secondary" >
<q-timeline-entry
v-for="(x,j) in data3" :index="j"
:key="j"
:title="x.CreateByName"
:subtitle="x.CreateTime"
<div class="q-px-lg q-pb-md" style="padding-bottom: 50px;">
<el-timeline>
<el-timeline-item
v-for="(activity, index) in data3"
:key="index"
size="large"
>
<div>
<span>{{x.LogContent}}</span>
<div class="row" style="font-size: 14px;color: #111111">
<span>{{activity.CreateByName}}</span>
<span style="margin-left: 10px">{{activity.CreateTime}}</span>
</div>
<div style="width: 100%;padding: 15px;line-height: 20px;background: #F0F5FB;border-radius: 4px;font-size: 12px;color: #333333">
{{activity.LogContent}}
</div>
</div>
</q-timeline-entry>
</q-timeline>
</el-timeline-item>
</el-timeline>
<q-pagination class="full-width justify-end" v-model="msg3.PageIndex" color="primary" :max="pageCount3"
:input="true" @input="changePage3" />
</div>
</div>
</q-card>
......@@ -241,9 +380,63 @@
align: 'left'
},
],
columnsf:[
{
name: 'FrID',
label: '单号',
align: 'left',
},
{
name: 'CostTypeList',
label: '费用类型',
align: 'left',
},
{
name: 'TradeWayList',
label: '交易方式',
align: 'left',
},
{
name: 'Money',
field: 'Money',
label: '应收',
align: 'left',
},
{
name: 'PayMoney',
field: 'PayMoney',
label: '实收',
align: 'left',
},
{
name: 'Fee',
field: 'Fee',
label: '手续费',
align: 'left',
},
{
name: 'TradeDate',
field: 'TradeDate',
label: '交易日期',
align: 'left',
},
{
name: 'EmName',
field: 'EmName',
label: '制单人员',
align: 'left',
},
{
name: 'zhaungt',
label: '当前状态',
align: 'left',
},
],
msg:{
pageIndex: 1,
pageSize: 12,
PageIndex: 1,
PageSize: 12,
OrderId: 0,
ClassId: 0,
GuestName: '',
......@@ -253,18 +446,30 @@
data2:[],
pageCount2:0,
msg2:{
pageIndex: 1,
pageSize: 12,
PageIndex: 1,
PageSize: 6,
OrderId:0,
},
loading2:false,
data3:[],
pageCount3:0,
msg3:{
pageIndex: 1,
pageSize: 12,
PageIndex: 1,
PageSize: 6,
SourceId:0,
},
financiaMsg:{
pageIndex: 1,
pageSize: 999,
TCID:0,
OrderID:0,
Type:1,
},
dataList:[],
dataListP:[],
floading:false,
LogLoading:false,
GetFinancLogList:[]
}
},
created(){
......@@ -275,17 +480,42 @@
this.getRolelist()
this.getRemarkList()
this.OrderLogList()
this.getfinanciaALLPageList(1)//财务单据
},
methods:{
Financial_post_GetFinancLogList: function(id){ // 获取单据日志
this.LogLoading = true;
this.apipost('Financial_post_GetFinancLogList',{ID: id, Type: 2}, res => {
if (res.data.resultCode == 1) {
let data = res.data.data;
data.forEach(x=>{
x.UpdateDate = this.$commonUtils.formatMsgTime(x.UpdateDate)
})
this.LogLoading = false;
this.GetFinancLogList = data;
}
},null)
},
closeSaveForm(){
this.$emit('close')
this.dialog = false
},
//翻页
changePage(val) {
this.msg.pageIndex = val;
this.msg.PageIndex = val;
this.getRolelist()
},
//翻页
changePage2(val) {
this.msg2.PageIndex = val;
this.getRemarkList()
},
//翻页
changePage3(val) {
this.msg3.PageIndex = val;
this.OrderLogList()
},
getRolelist() {//名单
this.loading = true
getOrderGuestPageList(this.msg).then(res => {
......@@ -324,17 +554,48 @@
}).catch(() => {
})
},
getfinanciaALLPageList(Type){
this.floading= true
this.financiaMsg.TCID = this.saveObj.ClassId
this.financiaMsg.OrderID = this.saveObj.OrderId
this.financiaMsg.Type = Type
this.apipost('Financial_post_GetALLPageList',this.financiaMsg,res=>{
if(res.data.resultCode===1){
let data = res.data.data.pageData.list;
if (Type===1) {
this.dataList = data;
this.getfinanciaALLPageList(2)
} else {
this.dataListP = data;
this.floading= false
}
}else{
this.floading= false
this.$message.error(res.data.message);
}
},err=>{})
},
goUrl(path, rowData,) {
this.$router.push({
path:'/financial/financalDocument/'+ path,
query: {
"id": rowData.FrID,
blank: 'y',
tab: '单据详情'
}
})
},
}
}
</script>
<style scoped>
.drawerTop{
.classinfo_Dialog .drawerTop2{
padding: 10px 20px;
align-items: center;
}
.drawerTop-d{
.classinfo_Dialog .drawerTop-d{
width: 34px;
height: 34px;
border-radius: 50%;
......@@ -346,28 +607,32 @@
color: #2860FB;
font-weight: bold;
}
.drawerTop-t{
.classinfo_Dialog .drawerTop-t{
margin-left: 10px;
display: flex;
flex-direction: column;
justify-content: space-between;
}
.two-left{
.classinfo_Dialog .two-left{
width: 70px;
display: inline-block;
font-size: 12px;
color: #999999;
}
.two-r{
.classinfo_Dialog .two-r{
font-size: 12px;
color: #111111;
}
.qtabs{
.classinfo_Dialog .qtabs{
border-bottom: 1px solid #E2E2E2;
}
.tis {align-items: center}
.tis .tis-k{width: 12px;height: 12px;border-radius: 50%;margin-right: 8px}
.tis span{font-size: 14px;color: #2D2D2D;font-weight: 600;margin-right: 20px}
.classinfo_Dialog .tis {align-items: center}
.classinfo_Dialog .tis .tis-k{width: 12px;height: 12px;border-radius: 50%;margin-right: 8px}
.classinfo_Dialog .tis span{font-size: 14px;color: #2D2D2D;font-weight: 600;margin-right: 20px}
.classinfo_Dialog .my-table-details{max-width: 230px;white-space: normal;margin-bottom: 5px;}
.classinfo_Dialog .my-table-details p{margin: 0}
.classinfo_Dialog .q-px-lg{padding: 0}
</style>
<template>
<div>
<div class="classorder">
<table class="enrollTotalSearchTable" border="0" cellspacing="0" cellpadding="0" style="">
<tr>
<th width="12%">单号</th>
......@@ -24,8 +24,7 @@
@click="goOrderdetails(item)">{{item.OrderId}}</div>
<div>{{item.EnterName}}</div>
<div style="margin-top: 10px">{{item.CreateTime}}</div>
<div style="margin-top: 30px;margin-bottom: 10px">班级</div>
<div style="font-weight: bold;color:#2961FE;">{{item.ClassName}}</div>
</td>
<td style="border:none">{{item.GuestNum}}</td>
<td style="border:none">{{item.Class_Price.toFixed(2)}}</td>
......@@ -202,7 +201,29 @@
</div>
</div>
<div class="col">
<div>收款单据:</div>
<div class="row" style="justify-content: space-between">
<span>收款单据:</span>
<q-btn flat size="xs" icon="edit" style="font-weight:400;color: #02C499" label="修改" @click="chanceType(item,1)"/>
</div>
<div class="row wrap" >
<div class="finance row" v-for="(x,j) in item.FinanceList" :index="j" :style="{
background:x.ColorState==1 ? 'rgba(41, 97, 254, 0.2)':(x.ColorState==2 ? 'rgba(2, 196, 153, 0.2)':(x.ColorState==3 ? 'rgba(242, 140, 29, 0.2)':'rgba(63, 196, 255, 0.2)')),
color: x.ColorState==1 ? '#2961FE':(x.ColorState==2 ? '#02C499':(x.ColorState==3 ? '#F28C1D':'#3FC4FF'))}">
<span>{{x.FrID}}</span>
</div>
</div>
<div class="row" style="justify-content: space-between">
<span>付款单据:</span>
<q-btn flat size="xs" icon="edit" style="font-weight:400;color: #02C499" label="修改" @click="chanceType(item,2)"/>
</div>
<div class="row wrap" >
<div class="finance row" v-for="(x,j) in item.RefundFinanceList" :index="j" :style="{
background:x.ColorState==1 ? 'rgba(41, 97, 254, 0.2)':(x.ColorState==2 ? 'rgba(2, 196, 153, 0.2)':(x.ColorState==3 ? 'rgba(242, 140, 29, 0.2)':'rgba(63, 196, 255, 0.2)')),
color: x.ColorState==1 ? '#2961FE':(x.ColorState==2 ? '#02C499':(x.ColorState==3 ? '#F28C1D':'#3FC4FF'))}">
<span>{{x.FrID}}</span>
</div>
</div>
</div>
</div>
</td>
......@@ -223,8 +244,6 @@
@click="goOrderdetails(item)">{{item.OrderId}}</div>
<div>{{item.EnterName}}</div>
<div style="margin-top: 10px">{{item.CreateTime}}</div>
<div style="margin-top: 30px;margin-bottom: 10px">班级</div>
<div style="font-weight: bold;color:#2961FE;">{{item.ClassName}}</div>
</td>
<td style="border:none">{{item.GuestNum}}</td>
<td style="border:none">{{item.Class_Price.toFixed(2)}}</td>
......@@ -401,7 +420,29 @@
</div>
</div>
<div class="col">
<div>收款单据:</div>
<div class="row" style="justify-content: space-between">
<span>收款单据:</span>
<q-btn flat size="xs" icon="edit" style="font-weight:400;color: #02C499" label="修改" @click="chanceType(item,1)"/>
</div>
<div class="row wrap" >
<div class="finance row" v-for="(x,j) in item.FinanceList" :index="j" :style="{
background:x.ColorState==1 ? 'rgba(41, 97, 254, 0.2)':(x.ColorState==2 ? 'rgba(2, 196, 153, 0.2)':(x.ColorState==3 ? 'rgba(242, 140, 29, 0.2)':'rgba(63, 196, 255, 0.2)')),
color: x.ColorState==1 ? '#2961FE':(x.ColorState==2 ? '#02C499':(x.ColorState==3 ? '#F28C1D':'#3FC4FF'))}">
<span>{{x.FrID}}</span>
</div>
</div>
<div class="row" style="justify-content: space-between">
<span>付款单据:</span>
<q-btn flat size="xs" icon="edit" style="font-weight:400;color: #02C499" label="修改" @click="chanceType(item,2)"/>
</div>
<div class="row wrap" >
<div class="finance row" v-for="(x,j) in item.RefundFinanceList" :index="j" :style="{
background:x.ColorState==1 ? 'rgba(41, 97, 254, 0.2)':(x.ColorState==2 ? 'rgba(2, 196, 153, 0.2)':(x.ColorState==3 ? 'rgba(242, 140, 29, 0.2)':'rgba(63, 196, 255, 0.2)')),
color: x.ColorState==1 ? '#2961FE':(x.ColorState==2 ? '#02C499':(x.ColorState==3 ? '#F28C1D':'#3FC4FF'))}">
<span>{{x.FrID}}</span>
</div>
</div>
</div>
</div>
</td>
......@@ -537,6 +578,185 @@
});
},
chanceType(obj,type){
let TCIDARR=[]
TCIDARR.push(obj.ClassId)
let orderObj = {
OrderID:obj.OrderId,
OrderSource:17,
Obj: {},
SourceID:0,
TCIDList: TCIDARR
}
this.$router.push({
path: '/financial/financalDocument/ChoiceAddFinancialDocuments',
query:{
"Type":type,
"companyID":this.getLocalStorage().School_Id,
"path": "",
'blank':'y',
'orderObj':JSON.stringify(orderObj),
'tradeWay':obj.tradeWay,
}
});
},
}
}
</script>
<style >
li{
list-style-type:none ;
}
.classorder ul{padding: 0px}
.classorder .price-popup{border-radius: 4px;}
.classorder .el-range-editor .el-range-input {
background: none;
}
.classorder .el-range-editor.el-input__inner {
background-color: transparent;
}
.classorder .q-mb-md{
margin-bottom: 0;
}
.classorder .stics{padding:10px 20px;background: #DDDEE0;border-radius: 4px;font-size: 14px;color: #000000;font-weight: bold}
.classorder .stics .stics-name{color: #2D2D2D;font-weight: 600;margin-right: 10px}
.classorder .tis {margin:10px 0;align-items: center}
.classorder .tis .tis-k{width: 10px;height: 10px;margin-right: 8px}
.classorder .tis span{font-size: 14px;color: #2D2D2D;font-weight: 600;margin-right: 20px}
.classorder table {
padding: 10px 0 ;
width: 100%;
background-color: #ededed;
border-collapse: collapse;
border: 1px solid #d2d2d2;
font-size: 12px;
}
.classorder table th {
background-color: #ededed;
height: 34px;
text-indent: 15px;
}
.classorder table td {
background-color: #ffffff;
padding: 9px 15px;
color: #333333;
border: 1px solid rgba(138, 138, 138, 0.09);
text-align: center;
}
.classorder table ._color_666 {
color: #666666;
}
.classorder table tr._color_666 th {
padding: 9px 15px;
}
.classorder table th {
background-color: #ededed;
height: 34px;
text-indent: 15px;
}
.classorder table td {
background-color: #ffffff;
padding: 9px 15px;
color: #333333;
/*border: 1px solid #d2d2d2;*/
}
.classorder table ._color_666 {
color: #666666;
}
.classorder table tr._color_666 th {
padding: 9px 15px;
}
.classorder .enrollTotalSearchTable {
width: 100%;
font-size: 14px;
color: #333;
border-bottom: 1px solid #cccccc;
border-right: 1px solid #cccccc;
border-collapse: collapse;
}
.classorder .enrollTotalSearchTable tr {
/* border-bottom: 2px solid #333; */
}
.classorder .enrollTotalSearchTable tr th {
background: #bdbdbd;
height: 30px;
font-size: 12px;
text-align: center;
border-top: 1px solid #cccccc;
border-left: 1px solid #cccccc;
}
.classorder .enrollTotalSearchTable tr {
background: #fff;
text-align: left;
}
.classorder .enrollTotalSearchTable tbody tr:last-child {
border-bottom: 2px solid #333;
}
.classorder .enrollTotalSearchTable tr:first-child td:first-child {
border-bottom: 2px solid #333;
}
.classorder .enrollTotalSearchTable tr td {
height: 66px;
padding: 10px;
/*border-top: 1px solid #cccccc;*/
/*border-left: 1px solid #cccccc;*/
}
.classorder .enrollTotalSearchTable tr td>img {
width: 32px;
height: 32px;
border-radius: 16px;
vertical-align: middle;
margin-right: 5px;
}
.classorder .enrollTotalSearchTable tr td p {
line-height: 20px;
}
.classorder .remarks{
font-size: 14px;
color: #2D2D2D;
}
.classorder .remarks-b{
width: 100%;
height: 94px;
background: #F0F5FB;
margin-top: 20px;
padding: 15px;
font-size: 12px;
color: #999999;
position: relative;
overflow: hidden;
display:-webkit-box;
line-height: 20px;
-webkit-line-clamp:4;
-webkit-box-orient:vertical ;
}
.classorder .remarks-b-b{
text-align: right;position: absolute;right: 0px;bottom: 0px
}
.classorder .on-left{
margin-right: 5px;
}
.classorder .finance{
padding: 1px 10px;
align-items: center;
justify-content: center;
border-radius: 4px;
margin: 5px 3px 3px 0;
}
</style>
......@@ -72,6 +72,30 @@
<img src="../../assets/images/administration/gou.png" alt="" style="width: 16px;height: 12px" v-if="j.select==true">
</span>
</div>
<div v-if="item.ClassStyle==2" class="row wrap" style="width: 454px;">
<div v-for="(j,k) in item.month" style="width: 45.4px;height: 30px;line-height: 30px;text-align: center;font-size: 12px;color: #2D2D2D;margin-top: 10px;!important">
<div :style="{'width': '45.4px','height': '30px',background:j.select==true?'rgba(41, 97, 254, 0.2)':'#FFF'}">
{{j.name}}
</div>
</div>
</div>
<div v-if="item.ClassStyle==3">
<el-calendar v-model="elvalue" id="calendar" style="width: 454px;">
<!-- 这里使用的是 2.5 slot 语法,对于新项目请使用 2.6 slot 语法-->
<template slot="dateCell" slot-scope="{date, data}" class="row" style="height: 45px">
<!--自定义内容-->
<div class="calendar-day" >{{ data.day.split('-').slice(2).join('-') }}</div>
<div v-for="x in item.ClassPlanList">
<div v-if="x.ClassDate == data.day" style="align-items: center;justify-content: center;margin-top: 10px" class="row">
<img src="../../assets/images/administration/gou.png" alt="" style="width: 16px;height: 12px" >
</div>
</div>
</template>
</el-calendar>
</div>
<div style="color:#2D2D2D;font-size: 14px;font-weight: bold;">课程安排</div>
<div style="width: 454px;height: 40px;background: #EEEEEF;font-size: 12px;color: #2D2D2D;font-weight: 600;margin-top: 20px;display: flex;align-items: center">
<div style="width: 50%;padding-left: 20px">
......@@ -236,6 +260,7 @@
SourceEnumList:[],
ClassList: [], //关联课程下拉数据
TeacherList: [], //关联教师下拉数据
elvalue:new Date(),
}
},
created() {
......@@ -351,8 +376,25 @@
})
})
x.weeks = weekList
}else if(x.ClassStyle==2){
let data = [];
for(let i = 0;i<31;i++){
let obj ={
name:i+1,
select:false
};
x.ClassPlanList.forEach(j=>{
if(j.WeekDay == i+1){
obj.select=true
}
})
data.push(obj)
}
x.month = data;
}
})
}).catch(() => {
......@@ -482,4 +524,22 @@
.japaneseTrain .q-mb-md{
margin-bottom: 0;
}
.japaneseTrain .month-item{
display: inline-block;
width: 45.5px;
height: 45.4px;
line-height: 45.4px;
text-align: center;
font-size: 12px;
color: #2D2D2D;
}
.japaneseTrain .el-calendar{
width: 454px;
}
.japaneseTrain .el-calendar-table .el-calendar-day{
height: 0;
}
.japaneseTrain #calendar{
width: 454px;
}
</style>
......@@ -122,11 +122,11 @@
<tbody v-for="(item,index) in data.List" :key="index">
<tr>
<td :rowspan="3" style="text-align: left">
<div style="font-size: 18px;color: #2961FE;margin-bottom: 20px;font-weight: bold" @click="goOrderdetails(item)">{{item.OrderId}}</div>
<div style="font-size: 18px;color: #2961FE;margin-bottom: 20px;font-weight: bold;cursor: pointer;" @click="goOrderdetails(item)">{{item.OrderId}}</div>
<div>{{item.EnterName}}</div>
<div style="margin-top: 10px">{{item.CreateTime}}</div>
<div style="margin-top: 30px;margin-bottom: 10px">班级</div>
<div style="font-weight: bold;color:#2961FE;">{{item.ClassName}}</div>
<div style="font-weight: bold;color:#2961FE;cursor: pointer;" @click="getClassInfo(item)">{{item.ClassName}}</div>
</td>
<td style="border:none">{{item.GuestNum}}人</td>
<td style="border:none">{{item.Class_Price.toFixed(2)}}</td>
......@@ -298,18 +298,25 @@
<span>收款单据:</span>
<q-btn flat size="xs" icon="edit" style="font-weight:400;color: #02C499" label="修改" @click="chanceType(item,1)"/>
</div>
<div class="row wrap">
<div class="finance row" style="background: rgba(41, 97, 254, 0.2);color: #2961FE">
<span>124</span>
</div>
<div class="finance row" style="background: rgba(41, 97, 254, 0.2);color: #2961FE">
<span>124</span>
<div class="row wrap" >
<div class="finance row" v-for="(x,j) in item.FinanceList" :index="j" :style="{
background:x.ColorState==1 ? 'rgba(41, 97, 254, 0.2)':(x.ColorState==2 ? 'rgba(2, 196, 153, 0.2)':(x.ColorState==3 ? 'rgba(242, 140, 29, 0.2)':'rgba(63, 196, 255, 0.2)')),
color: x.ColorState==1 ? '#2961FE':(x.ColorState==2 ? '#02C499':(x.ColorState==3 ? '#F28C1D':'#3FC4FF'))}">
<span>{{x.FrID}}</span>
</div>
</div>
<div class="row" style="justify-content: space-between">
<span>付款单据:</span>
<q-btn flat size="xs" icon="edit" style="font-weight:400;color: #02C499" label="修改" @click="chanceType(item,2)"/>
</div>
<div class="row wrap" >
<div class="finance row" v-for="(x,j) in item.RefundFinanceList" :index="j" :style="{
background:x.ColorState==1 ? 'rgba(41, 97, 254, 0.2)':(x.ColorState==2 ? 'rgba(2, 196, 153, 0.2)':(x.ColorState==3 ? 'rgba(242, 140, 29, 0.2)':'rgba(63, 196, 255, 0.2)')),
color: x.ColorState==1 ? '#2961FE':(x.ColorState==2 ? '#02C499':(x.ColorState==3 ? '#F28C1D':'#3FC4FF'))}">
<span>{{x.FrID}}</span>
</div>
</div>
</div>
</div>
</td>
......@@ -398,6 +405,8 @@
</div>
</q-dialog>
<myOrder-form v-if="isShowmyorderForm" :save-obj="myorderObjOption" @close="closeMOSaveForm"></myOrder-form>
<classinfo-form v-if="isShowClassInfo" :seting-obj="classObjOption" @close="closeClass" @success="refreshClass"></classinfo-form>
</div>
</template>
<script>
......@@ -418,10 +427,13 @@
queryCourseDropdownList,
} from '../../api/course/index'
import myOrderForm from '../../components/sale/myOrder-form'
import classinfoForm from '../../components/course/classinfo-form';
export default {
components: {
myOrderForm
myOrderForm,
classinfoForm
},
data() {
return {
......@@ -466,7 +478,9 @@
UPrice:false,
UnitPrice:0,//用于可以输入单价的验证
isShowmyorderForm:false,
myorderObjOption:{}
myorderObjOption:{},
classObjOption: null,
isShowClassInfo: false, //是否显示课程信息
}
},
created() {
......@@ -571,15 +585,15 @@
this.apipost('sellorder_post_GetOrderFinanceListForEdu',{OrderIds:msg},res=>{
if(res.data.resultCode===1){
this.loading = false;
let data = res.data.data;
this.data.List.forEach(x=>{
res.data.data.forEach(j=>{
data.forEach(j=>{
if(x.OrderId == j.OrderId){
x.FinanceList = j.FinanceList
x.RefundFinanceList = j.RefundFinanceList
}
})
})
console.log()
}else{
this.loading = false;
this.$message.error(res.data.message);
......@@ -807,9 +821,9 @@
TCIDARR.push(obj.ClassId)
let orderObj = {
OrderID:obj.OrderId,
OrderSource:8,
OrderSource:17,
Obj: {},
SourceID:17,
SourceID:0,
TCIDList: TCIDARR
}
this.$router.push({
......@@ -824,7 +838,19 @@
}
});
}
},
getClassInfo(obj) {//打开班级详情组件
this.classObjOption = obj;
this.isShowClassInfo = true;
},
//关闭班级信息弹窗
closeClass() {
this.isShowClassInfo = false
},
//刷新
refreshClass() {
},
}
}
......@@ -983,6 +1009,6 @@
align-items: center;
justify-content: center;
border-radius: 4px;
margin-right: 5px;
margin: 5px 3px 3px 0;
}
</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