Commit 6e67911a authored by 罗超's avatar 罗超
parents 48c451d2 beebf311
...@@ -12,7 +12,7 @@ export default { ...@@ -12,7 +12,7 @@ export default {
<style> <style>
@import url('~assets/css/font.css'); @import url('~assets/css/font.css');
@import url('//at.alicdn.com/t/font_2077629_lvmqshn6xor.css'); @import url('//at.alicdn.com/t/font_2077629_pdphpdntjxl.css');
html, html,
body, body,
......
...@@ -10,3 +10,94 @@ export function getTemplateList(data) { ...@@ -10,3 +10,94 @@ export function getTemplateList(data) {
}); });
} }
/**
* 获取审批启用和停用
*/
export function setTemplate(data) {
return request({
url: '/WorkFlowManagement/SetTemplate',
method: 'post',
data
});
}
/**
*
*/
export function getDefaultCondition(data) {
return request({
url: '/WorkFlowManagement/GetDefaultCondition',
method: 'post',
data
});
}
/**
*
*/
export function getOtherConditionList(data) {
return request({
url: '/WorkFlowManagement/GetOtherConditionList',
method: 'post',
data
});
}
/**
*请假类型
*/
export function getAskForLeaveType(data) {
return request({
url: '/WorkFlowManagement/GetAskForLeaveType',
method: 'post',
data
});
}
/**
*条件审批保存
*/
export function setOtherCondition(data) {
return request({
url: '/WorkFlowManagement/SetOtherCondition',
method: 'post',
data
});
}
/**
*条件审批删除
*/
export function delOtherCondition(data) {
return request({
url: '/WorkFlowManagement/DelOtherCondition',
method: 'post',
data
});
}
/**
*审核的保存
*/
export function setDefaultCondition(data) {
return request({
url: '/WorkFlowManagement/SetDefaultCondition',
method: 'post',
data
});
}
/**
*获取分段流程详情
*/
export function getConditionAndAuditInfo(data) {
return request({
url: '/WorkFlowManagement/GetConditionAndAuditInfo',
method: 'post',
data
});
}
...@@ -76,3 +76,14 @@ export function BatchResetUserPassword(data) ...@@ -76,3 +76,14 @@ export function BatchResetUserPassword(data)
data data
}) })
} }
/**
* 获取部门Id
*/
export function getEmployeeAddrBook(data)
{
return request({
url: '/User/GetEmployeeAddrBook',
method: 'post',
data
})
}
This diff is collapsed.
<style>
.classinfo_Dialog .drawerTop {
width: 100%;
height: 50px;
display: flex;
justify-content: space-between;
background-color: #F0F5FB;
padding: 5px 10px;
align-items: center;
}
.classinfo_Dialog .classFirst {
color: #000000;
font-weight: bold;
}
.classinfo_Dialog .className {
margin-left: 10px;
}
.classinfo_Dialog .classStatus {
padding: 3px 8px;
background-color: #c8d7fc;
color: #2961FE;
font-size: 12px;
border-radius: 2px;
margin-left: 20px;
}
.classinfo_Dialog .normalName {
color: #999999;
}
.classinfo_Dialog .normalInner {
color: #111111;
}
</style>
<template>
<q-dialog v-model="persistent" maximized full-height seamless position="right" @hide="closeShenheForm">
<q-card style="margin-top:61px;width:800px" class="no-border-radius classinfo_Dialog">
<div class="drawerTop">
<div style="display:flex;align-items:center;">
<q-avatar size="md" style="background:#d4dfff;color:#2961FE;font-weight:bold;">
{{setingObj.ClassName.substring(0,1)}}
</q-avatar>
<div class="className">
<div class="classFirst">{{setingObj.ClassName}}</div>
<div style="color:#666666;font-size:12px;">{{setingObj.CourseName}}</div>
</div>
<div class="classStatus">{{setingObj.ClassStatusStr}}</div>
</div>
</div>
<div style="margin:20px;font-size:12px;">
<div class="row wrap ">
<div class="col-6">
<span class="normalName">老师名称:</span>
<span class="normalInner">{{setingObj.TeacherName}}</span>
</div>
<div class="col-6">
<span class="normalName">开班时间:</span>
<span class="normalInner">
<template v-if="setingObj.NewPlanDateTime">
{{setingObj.NewPlanDateTime}}
</template>
<template v-else>
{{setingObj.OpenTime}}
</template>
</span>
</div>
</div>
<div class="row wrap" style="margin-top:20px;">
<div class="col-6" style="display:flex;align-items:center;">
<span class="normalName">课程进度:</span>
<q-linear-progress rounded size="20px" :value="setingObj.CompleteProgress/100"
style="background-color:#EEEEEF;color:#3FC4FF;display:inline-block;width:44%" />
</div>
</div>
</div>
<q-tabs style="margin-bottom:20px;" v-model="tabCheck" narrow-indicator dense align="left" class="text-primary">
<q-tab :ripple="false" name="first" label="学员信息" />
<q-tab :ripple="false" name="second" label="上课计划" />
<q-tab :ripple="false" name="third" label="上课记录" />
<q-tab :ripple="false" name="fourth" label="班级日志" />
<q-tab :ripple="false" name="fifth" label="待定" />
</q-tabs>
<div v-if="tabCheck=='first'">
<div style="text-align:right;">
<q-btn outline color="black" label="退课" size="12px" style="margin-right:20px;" />
<q-btn color="primary" class="q-mr-md" size="12px" icon="add" label="邀请新学员" />
</div>
<q-table :pagination="stuMsg" :loading="loading" no-data-label="暂无相关数据" flat selection="multiple"
:selected.sync="selected" class="sticky-right-column-table sticky-tow-column-table" separator="none"
title="员工管理" :data="studentList" :columns="columns" row-key="Id">
</q-table>
</div>
</q-card>
<div class="dialog-out-close" @click="closeShenheForm"
style="height:40px !important;border-top-left-radius: 4px !important;border-bottom-left-radius: 4px !important;">
<q-icon name="iconfont icon-jujue1" size="26px" />
</div>
</q-dialog>
</template>
<script>
export default {
props: {
setingObj: {
type: Object,
default: null
}
},
components: {
},
data() {
return {
persistent: true,
tabCheck: 'first', //默认选第一个
columns: [{
name: 'EmployeeName',
required: true,
label: '姓名',
align: 'left',
},
{
name: 'Sex',
label: '性别',
field: 'Sex',
align: 'left',
},
{
name: 'age',
label: '年龄',
field: 'age',
align: 'left',
},
{
name: 'classHour',
label: '上课课时',
field: 'classHour',
align: 'left',
},
{
name: 'joinTime',
label: '加入时间',
field: 'joinTime',
align: 'left'
},
{
name: 'Tel',
label: '联系电话',
align: 'left',
field: 'Tel'
},
{
name: 'OrderNum',
label: '关联订单',
field: 'OrderNum',
align: 'left'
},
{
name: 'courses',
label: '续费课程',
field: 'courses',
align: 'left'
}
],
loading: false,
stuMsg: {
},
studentList: [], //学员信息数据
selected: [], //选中
}
},
mounted() {
console.log("aaa", this.setingObj);
},
methods: {
closeShenheForm() {
this.persistent = false;
this.$emit('close');
}
},
}
</script>
<style>
</style>
<template> <template>
<q-dialog v-model="persistent" persistent transition-show="scale" transition-hide="scale"> <q-dialog v-model="persistent" persistent content-class="bg-grey-1" transition-show="scale" transition-hide="scale">
<q-card style="width: 800px;max-width:900px;"> <q-card style="width: 800px;max-width:900px;">
<q-card-section> <q-card-section>
<div class="text-h6">{{objOption.CourseId==0?'新增课程信息':'修改课程信息'}}</div> <div class="text-h6">{{objOption.CourseId==0?'新增课程信息':'修改课程信息'}}</div>
......
...@@ -62,9 +62,6 @@ ...@@ -62,9 +62,6 @@
<span class="drawer_Span" v-if="setingObj.type==3">调岗</span> <span class="drawer_Span" v-if="setingObj.type==3">调岗</span>
<span class="drawer_Span" v-if="setingObj.type==4">调部门</span> <span class="drawer_Span" v-if="setingObj.type==4">调部门</span>
</div> </div>
<div>
<i class="iconfont icon-guanbi" @click="closeShenheForm"></i>
</div>
</div> </div>
<div style="margin:20px;"> <div style="margin:20px;">
<div class="EmpLine_title"> <div class="EmpLine_title">
...@@ -77,7 +74,7 @@ ...@@ -77,7 +74,7 @@
<img :src="item.UserIcon" /> <img :src="item.UserIcon" />
</q-avatar> </q-avatar>
<q-avatar size="md" color="teal-10" text-color="white" v-if="!item.UserIcon"> <q-avatar size="md" color="teal-10" text-color="white" v-if="!item.UserIcon">
{{item.EmployeeName}}</q-avatar> {{GetFirst(item.EmployeeName)}}</q-avatar>
<div style="margin-top:6px;">{{item.EmployeeName}}</div> <div style="margin-top:6px;">{{item.EmployeeName}}</div>
</div> </div>
</div> </div>
...@@ -304,6 +301,11 @@ ...@@ -304,6 +301,11 @@
} }
}) })
} }
},
GetFirst(val) {
if (val) {
return val.substr(0, 1);
}
} }
}, },
} }
......
<template> <template>
<q-dialog v-model="persistent" persistent transition-show="scale" transition-hide="scale"> <q-dialog v-model="persistent" persistent content-class="bg-grey-1" transition-show="scale" transition-hide="scale">
<q-card style="width: 800px;max-width:900px;"> <q-card style="width: 800px;max-width:900px;">
<q-card-section> <q-card-section>
<div class="text-h6">{{objOption.MenuId==0?'新增部门信息':'修改部门信息'}}</div> <div class="text-h6">{{objOption.MenuId==0?'新增部门信息':'修改部门信息'}}</div>
......
<template> <template>
<q-dialog v-model="persistent" persistent transition-show="scale" transition-hide="scale"> <q-dialog v-model="persistent" content-class="bg-grey-1" persistent transition-show="scale" transition-hide="scale">
<q-card style="width: 800px;max-width:900px;"> <q-card style="width: 800px;max-width:900px;">
<q-card-section> <q-card-section>
<div class="text-h6">{{objOption.MenuId==0?'新增菜单信息':'修改菜单信息'}}</div> <div class="text-h6">{{objOption.MenuId==0?'新增菜单信息':'修改菜单信息'}}</div>
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
</style> </style>
<template> <template>
<q-dialog v-model="persistent" persistent transition-show="scale" transition-hide="scale"> <q-dialog v-model="persistent" content-class="bg-grey-1" persistent transition-show="scale" transition-hide="scale">
<q-card style="width: 800px;max-width:900px;" class="post-form"> <q-card style="width: 800px;max-width:900px;" class="post-form">
<q-card-section> <q-card-section>
<div class="text-h6">{{objOption.MenuId==0?'新增岗位信息':'修改岗位信息'}}</div> <div class="text-h6">{{objOption.MenuId==0?'新增岗位信息':'修改岗位信息'}}</div>
......
<template> <template>
<div> <div class="appProval">
<div class="query-box appProval"> <div class="query-box ">
<ul> <ul>
<li><span><em>所属公司</em> <li><span><em>所属校区</em>
<el-select :disabled="IsParentCompany!=1" v-model="QueryMsg.BranchId" @change="getList()" > <el-select :disabled="IsParentCompany!=1" v-model="QueryMsg.BranchId" @change="getList()" >
<el-option <el-option
v-for="item in companyList" v-for="item in companyList"
...@@ -12,47 +12,47 @@ ...@@ -12,47 +12,47 @@
</el-option> </el-option>
</el-select> </el-select>
</span></li> </span></li>
<li> <li></li>
<!-- <input type="button" class="hollowFixedBtn" value="查询" @click="getList()"/> -->
</li>
</ul> </ul>
</div> </div>
<div class="flexOne"> <div class="flexOne">
<div class="approval_title">出勤休假(4)</div> <div class="approval_title">出勤休假(4)</div>
<div class="approval_list" v-loading='loading'> <div class="approval_list" v-loading='loading'>
<div class="approval_item" v-for="(item,index) in dataList"> <div class="row">
<img :src="item.Icon" width="86" style="float: left;margin: 17px 20px 0 0;" /> <div class="approval_item col shadow-1" v-for="(item,index) in dataList" :style="{'margin-right':dataList.length!=index+1?'40px':'0' }">
<div class="approval_desDiv"> <img :src="item.Icon" width="86" style="" />
<p class="tit">{{item.Name}}</p> <span class="tit">{{item.Name}}</span>
<p class="updateP">全部可见</p>
<div style="width: 36px;height: 2px;background: #E2E2E2;margin: 8px;"></div>
<p class="des" v-html="item.describe"></p> <p class="des" v-html="item.describe"></p>
<p class="des" v-html="item.describe2"></p>
<p class="tim">{{item.UpdateTime}}</p> <p class="tim">{{item.UpdateTime}}</p>
<div class="row" style="margin-top: 50px;justify-content: space-around;width: 100%" v-if='item.Status==1'>
<q-btn color="primary" label="审批流程" style="padding: 0 20px" @click="workflow(item.Id)"></q-btn>
<q-btn outline style="color: #2961FE;padding: 0 10px" label="停用" @click="updateTempStatus(item.Id,item.TemplateType,item.Status)"></q-btn>
</div> </div>
<div class="approval_fwDiv"> <div class="row" style="margin-top: 50px;justify-content: center;" v-if='item.Status==2'>
<p>可见范围</p> <q-btn outline style="color: #2961FE;padding: 0 10px" label="启用" @click="updateTempStatus(item.Id,item.TemplateType,item.Status)"></q-btn>
<p class="updateP">全部可见</p>
</div> </div>
<div class="approval_doDiv">
<p>
<button v-if='item.Status==1' class="normalBtn" @click="goUrl('ApprovalProcess',item.Id)">审批流程</button> &nbsp;&nbsp;
<button v-if='item.Status==1' @click="updateTempStatus(item.Id,item.TemplateType,item.Status)" class="hollowFixedBtn">{{$t('fnc.tingyong')}}</button>
<button v-if='item.Status==2' @click="updateTempStatus(item.Id,item.TemplateType,item.Status)" class="hollowFixedBtn">{{$t('fnc.qiyong')}}</button>
</p>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import { import {
getTemplateList getTemplateList,
setTemplate
} from '../../api/administration/administration'; } from '../../api/administration/administration';
import { import {
getSchoolDropdown //校区下拉 getSchoolDropdown //校区下拉
} from '../../api/school/index' } from '../../api/school/index'
export default { export default {
data() { data() {
return { return {
loading:true, loading:true,
...@@ -63,30 +63,33 @@ ...@@ -63,30 +63,33 @@
//返回数据 //返回数据
dataList: [], dataList: [],
companyList: [], companyList: [],
IsParentCompany:2 IsParentCompany:2,
drawer:false,
SpId:0
} }
}, },
methods: { methods: {
workflow(Id){
this.$router.push({
path: '/administration/ApprovalProcess?Id='+Id+'&Bid='+this.QueryMsg.BranchId
});
},
getList() { getList() {
let describe = ['适用于请假申请,<br/>精确扣减出勤时间,并同步考勤报表', '适用于出差申请,<br/>精确汇总至考勤报表', '适用于外出申请,<br/>精确汇总至考勤报表', '当员工考勤出现缺卡时,可发起补卡审批,<br/>审批通过后考勤报表中的缺卡记录改为正常'] let describe = ['适用于请假申请', '适用于出差申请', '适用于外出申请', '当员工考勤出现缺卡时,可发起补卡审批']
// this.apipost('WorkFlow_get_GetTemplateList', {BranchId:this.QueryMsg.BranchId}, res => { let describe2 = ['精确扣减出勤时间,并同步考勤报表', '精确汇总至考勤报表', '精确汇总至考勤报表', '审批通过后考勤报表中的缺卡记录改为正常']
// if(res.data.resultCode == 1) {
// this.loading=false;
// this.dataList = res.data.data[0].List;
// this.dataList.forEach((item, index) => {
// item.describe = describe[index]
// })
//
// }
// }, err => {})
getTemplateList({BranchId:this.QueryMsg.BranchId}).then(res => { getTemplateList({BranchId:this.QueryMsg.BranchId}).then(res => {
if(res.Code == 1) { if(res.Code == 1) {
this.loading=false;
this.dataList = res.Data[0].List; this.dataList = res.Data[0].List;
this.dataList.forEach((item, index) => { this.dataList.forEach((item, index) => {
item.describe = describe[index] item.describe = describe[index]
item.describe2 = describe2[index]
}) })
} }
}).catch(() => { }).catch(() => {
}) })
}, },
getCompanyList() { getCompanyList() {
...@@ -114,19 +117,21 @@ ...@@ -114,19 +117,21 @@
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
this.apipost('WorkFlow_post_SetTemplate', { setTemplate({
Id: id, Id: id,
TemplateType: type, TemplateType: type,
Status: 2, Status: 2,
BranchId:this.QueryMsg.BranchId BranchId:this.QueryMsg.BranchId
}, res => { }).then(res => {
if(res.data.resultCode == 1) { if(res.Code == 1) {
this.$message.success("已经停用") this.$message.success("已经停用")
this.getList() this.getList()
} else { }else {
this.$message.error("操作失败") this.$message.error("操作失败")
} }
}, err => {}) }).catch(() => {
})
}).catch(() => { }).catch(() => {
this.$message.info('已取消停用') this.$message.info('已取消停用')
}); });
...@@ -137,19 +142,21 @@ ...@@ -137,19 +142,21 @@
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
this.apipost('WorkFlow_post_SetTemplate', { setTemplate({
Id: id, Id: id,
TemplateType: type, TemplateType: type,
Status: 1, Status: 1,
BranchId:this.QueryMsg.BranchId BranchId:this.QueryMsg.BranchId
}, res => { }).then(res => {
if(res.data.resultCode == 1) { if(res.Code == 1) {
this.$message.success("启用成功") this.$message.success("启用成功")
this.getList() this.getList()
} else { } else {
this.$message.error("操作失败") this.$message.error("操作失败")
} }
}, err => {}) }).catch(() => {
})
}).catch(() => { }).catch(() => {
this.$message.info('已取消启用') this.$message.info('已取消启用')
...@@ -183,7 +190,11 @@ ...@@ -183,7 +190,11 @@
border-left: 3px solid #E95252; border-left: 3px solid #E95252;
margin: 30px 0; margin: 30px 0;
} }
.appProval{
background: white;
height: 90%;
padding: 0 20px;
}
.appProval .el-input__inner{ .appProval .el-input__inner{
height: 34px!important; height: 34px!important;
} }
...@@ -197,58 +208,58 @@ ...@@ -197,58 +208,58 @@
} }
.approval_item { .approval_item {
height: 160px; background: white;
padding: 20px; /*border: 1px solid rgba(2, 44, 66, 0.15);*/
background: #fff; border-radius: 4px;
overflow: auto; padding: 40px;
border-radius: 8px; display: flex;
margin-bottom: 10px; flex-direction: column;
align-items: center;
} }
.approval_item p.tit { .approval_item .tit {
font-size: 18px; font-size: 32px;
color: #333; color: #111111;
font-weight: bold;
margin-top: 30px;
} }
.approval_item p.des { .approval_item .des {
font-size: 14px; font-size: 14px;
color: #666; color: #999999;
line-height: 22px; line-height: 22px;
} }
.approval_item p.tim { .approval_item .tim {
font-size: 14px; font-size: 12px;
color: #999; color: #A6A6A6;
line-height: 22px; line-height: 22px;
} }
.approval_fwDiv {
float: left;
width: 520px;
height: 120px;
padding: 50px 0;
border-right: 1px dotted #DCDFE6;
}
.approval_fwDiv>p {
text-align: center;
font-size: 16px;
color: #333;
}
.approval_fwDiv>p.updateP { .approval_item .updateP {
font-size: 14px; font-size: 14px;
color: #666; color: #999999;
line-height: 24px; line-height: 24px;
} }
.approval_doDiv { .appProval .drawerTop {
float: left; width: 100%;
width: 500px; height: 50px;
display: flex;
flex-direction: row;
justify-content: space-between;
background-color: #F0F5FB;
padding: 5px 10px;
align-items: center;
} }
.el-drawer__body {
.approval_doDiv>p { overflow: auto;
text-align: center; }
line-height: 120px; /*2.隐藏滚动条,太丑了*/
.el-drawer__container ::-webkit-scrollbar{
display: none;
} }
</style> </style>
This diff is collapsed.
...@@ -131,7 +131,7 @@ ...@@ -131,7 +131,7 @@
<div class="text-caption q-mb-lg q-px-md text-grey-6">基本资料</div> <div class="text-caption q-mb-lg q-px-md text-grey-6">基本资料</div>
<q-card-section class="q-pt-none"> <q-card-section class="q-pt-none">
<div class="row wrap"> <div class="row wrap">
<q-input clearable class="col-6 q-pb-lg q-pr-lg" standout="bg-primary text-white" v-model="addMsg.From" label="公文来源(FR)" :rules="[val => !!val || '公文来源(FR)']"/> <q-input clearable filled class="col-6 q-pb-lg q-pr-lg" standout="bg-primary text-white" v-model="addMsg.From" label="公文来源(FR)" :rules="[val => !!val || '公文来源(FR)']"/>
<selectTree class="col-6 q-pb-lg q-pr-lg" :treeData='DeptList' :defaultArray="returnString" nodeKey="DeptId" :multiple="true" :defaultExpandAll="true" <selectTree class="col-6 q-pb-lg q-pr-lg" :treeData='DeptList' :defaultArray="returnString" nodeKey="DeptId" :multiple="true" :defaultExpandAll="true"
labelKey="DeptName" childrenKey="ChildList" tipText="To" @getChild="getChild" labelKey="DeptName" childrenKey="ChildList" tipText="To" @getChild="getChild"
classStr="col-6 q-pr-lg q-pb-lg"></selectTree> classStr="col-6 q-pr-lg q-pb-lg"></selectTree>
...@@ -148,7 +148,7 @@ ...@@ -148,7 +148,7 @@
</template> </template>
</q-select> </q-select>
<q-input clearable class="col-6 q-pb-lg q-pr-lg" standout="bg-primary text-white" disable v-model="nNumber" label="编号" v-if="nNumber!=null "/> <q-input clearable class="col-6 q-pb-lg q-pr-lg" standout="bg-primary text-white" disable v-model="nNumber" label="编号" v-if="nNumber!=null "/>
<q-input clearable class="col-12 q-pb-lg q-pr-lg" standout="bg-primary text-white" v-model="addMsg.Title" label="标题" :rules="[val => !!val || '标题']"/> <q-input clearable filled class="col-12 q-pb-lg q-pr-lg" standout="bg-primary text-white" v-model="addMsg.Title" label="标题" :rules="[val => !!val || '标题']"/>
<div class="text-caption q-my-md q-px-xs text-grey-6">公告内容</div> <div class="text-caption q-my-md q-px-xs text-grey-6">公告内容</div>
<ext-editor :defaultMsg="addMsg.Content" classStr="col-12" @getEditValue="getEditValue"></ext-editor> <ext-editor :defaultMsg="addMsg.Content" classStr="col-12" @getEditValue="getEditValue"></ext-editor>
<el-upload <el-upload
......
This diff is collapsed.
This diff is collapsed.
...@@ -30,9 +30,34 @@ ...@@ -30,9 +30,34 @@
<div class="page-content"> <div class="page-content">
<q-table :pagination="msg" :loading="loading" no-data-label="暂无相关数据" flat class="sticky-tow-column-table" <q-table :pagination="msg" :loading="loading" no-data-label="暂无相关数据" flat class="sticky-tow-column-table"
separator="none" title="班级信息" :data="data" :columns="columns" row-key="name"> separator="none" title="班级信息" :data="data" :columns="columns" row-key="name">
<template v-slot:body-cell-ClassName="props">
<q-td auto-width :props="props">
<q-avatar size="md" style="background:#d4dfff;color:#2961FE;font-weight:bold;" v-if="props.row.ClassName">
{{GetFirst(props.row.ClassName)}}</q-avatar>
<span style="color:#2961FE;margin-left:10px;cursor:pointer;" @click="getClassInfo(props.row)" title="点击查看详情">{{props.row.ClassName}}</span>
</q-td>
</template>
<template v-slot:body-cell-TeacherName="props">
<q-td auto-width :props="props">
<span style="color:#3FC4FF;">{{props.row.TeacherName}}</span>
</q-td>
</template>
<template v-slot:body-cell-ClassPersion="props"> <template v-slot:body-cell-ClassPersion="props">
<q-td auto-width :props="props"> <q-td auto-width :props="props">
预招 {{props.row.ClassPersion}} 当前 {{props.row.OrderStudentCount}} <i class="iconfont icon-ren-" style="color:#2961FE;"></i>预招 <span
style="color:#2961FE;">{{props.row.ClassPersion}} </span>
<i class="iconfont icon-ren-" style="color:#3FC4FF;margin-left:30px;"></i>当前 <span
style="color:#3FC4FF">{{props.row.OrderStudentCount}}</span>
<q-linear-progress rounded size="20px"
:value="getProgress(props.row.OrderStudentCount,props.row.ClassPersion)" color="warning"
class="q-mt-sm" />
</q-td>
</template>
<template v-slot:body-cell-CompleteProgress="props">
<q-td auto-width :props="props">
已进行{{props.row.CompleteProgress}}%
<q-linear-progress rounded size="20px" :value="getProgress2(props.row.CompleteProgress,100)" style="background-color:#EEEEEF;color:#3FC4FF"
class="q-mt-sm" />
</q-td> </q-td>
</template> </template>
<template v-slot:bottom> <template v-slot:bottom>
...@@ -43,12 +68,15 @@ ...@@ -43,12 +68,15 @@
<q-td :props="props"> <q-td :props="props">
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="订单中心"></q-btn> <q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="订单中心"></q-btn>
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="收支明细"></q-btn> <q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="收支明细"></q-btn>
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="编辑" @click="EditCourse(props.row)" /> <q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="编辑"
@click="EditCourse(props.row)" />
</q-td> </q-td>
</template> </template>
</q-table> </q-table>
<class-form v-if="isShowClassForm" :save-obj="classObjOption" @close="closeClassSaveForm" @success="refreshPage"> <class-form v-if="isShowClassForm" :save-obj="classObjOption" @close="closeClassSaveForm" @success="refreshPage">
</class-form> </class-form>
<classinfo-form v-if="isShowClassInfo" :seting-obj="classObjOption" @close="closeClass" @success="refreshClass">
</classinfo-form>
</div> </div>
</div> </div>
</template> </template>
...@@ -56,18 +84,21 @@ ...@@ -56,18 +84,21 @@
import { import {
queryClassPage, queryClassPage,
queryClassStatusList, queryClassStatusList,
} from '../../api/course/class' } from '../../api/course/class';
//获取校区列表 //获取校区列表
import { import {
getSchoolDropdown getSchoolDropdown
} from '../../api/school/index' } from '../../api/school/index';
import classForm from '../../components/course/class-form' import classForm from '../../components/course/class-form';
import classinfoForm from '../../components/course/classinfo-form';
export default { export default {
meta: { meta: {
title: "班级管理" title: "班级管理"
}, },
components: { components: {
classForm classForm,
classinfoForm
}, },
data() { data() {
return { return {
...@@ -143,6 +174,7 @@ ...@@ -143,6 +174,7 @@
schoolList: [], schoolList: [],
pageCount: 0, pageCount: 0,
classObjOption: null, classObjOption: null,
isShowClassInfo:false, //是否显示课程信息
} }
}, },
created() { created() {
...@@ -180,7 +212,7 @@ ...@@ -180,7 +212,7 @@
//翻页 //翻页
changePage(val) { changePage(val) {
this.msg.pageIndex = val; this.msg.pageIndex = val;
this.getcourselist() this.getList()
}, },
//获取菜单分页列表 //获取菜单分页列表
getList() { getList() {
...@@ -196,7 +228,7 @@ ...@@ -196,7 +228,7 @@
//刷新页面 //刷新页面
refreshPage() { refreshPage() {
this.isShowClassForm = false; this.isShowClassForm = false;
this.getcourselist(); this.getList();
}, },
//新增修改菜单 //新增修改菜单
EditCourse(obj) { EditCourse(obj) {
...@@ -210,6 +242,37 @@ ...@@ -210,6 +242,37 @@
//关闭弹窗 //关闭弹窗
closeClassSaveForm() { closeClassSaveForm() {
this.isShowClassForm = false this.isShowClassForm = false
},
GetFirst(val) {
if (val) {
return val.substr(0, 1);
}
},
//获取进度条
getProgress(s1, s2) {
if (s1 && s2) {
return (s1 / s2).toFixed(2);
}
},
//获取进度2
getProgress2(num,total) {
if (num == 0 || total == 0){
return 0;
}
return (Math.round(num / total * 100) / 100.00);
},
//关闭班级信息弹窗
closeClass(){
this.isShowClassInfo = false
},
//刷新
refreshClass(){
},
//点击班级名称
getClassInfo(obj){
this.classObjOption=obj;
this.isShowClassInfo=true;
} }
} }
} }
......
...@@ -97,7 +97,7 @@ ...@@ -97,7 +97,7 @@
<img :src="props.value" /> <img :src="props.value" />
</q-avatar> </q-avatar>
<q-avatar size="md" color="teal-10" text-color="white" v-if="!props.value"> <q-avatar size="md" color="teal-10" text-color="white" v-if="!props.value">
{{props.row.EmployeeName}}</q-avatar> {{GetFirst(props.row.EmployeeName)}}</q-avatar>
</q-td> </q-td>
</template> </template>
<template v-slot:body-cell-EmployeeName="props"> <template v-slot:body-cell-EmployeeName="props">
...@@ -591,6 +591,11 @@ ...@@ -591,6 +591,11 @@
this.setObj.selected = []; this.setObj.selected = [];
this.setObj.selected.push(obj); this.setObj.selected.push(obj);
this.isShowEmployeeSet = true; this.isShowEmployeeSet = true;
},
GetFirst(val) {
if (val) {
return val.substr(0, 1);
}
} }
}, },
} }
......
This diff is collapsed.
...@@ -19,12 +19,10 @@ ...@@ -19,12 +19,10 @@
<q-table :pagination="msg" :loading="loading" no-data-label="暂无相关数据" flat class="sticky-tow-column-table" <q-table :pagination="msg" :loading="loading" no-data-label="暂无相关数据" flat class="sticky-tow-column-table"
separator="none" title="角色信息" :data="data" :columns="columns" row-key="name"> separator="none" title="角色信息" :data="data" :columns="columns" row-key="name">
<template v-slot:body-cell-Status="props"> <template v-slot:body-cell-Status="props">
<q-td :props="props">
<q-td :props="props"> <q-td :props="props">
<q-toggle size="md" color="primary" :false-value="1" :true-value="0" v-model="props.row.Status" <q-toggle size="md" color="primary" :false-value="1" :true-value="0" v-model="props.row.Status"
title="注意:关闭后,分类将无法正常使用." @input="DeleteRole(props.row)" /> title="注意:关闭后,分类将无法正常使用." @input="DeleteRole(props.row)" />
</q-td> </q-td>
</q-td>
</template> </template>
<template v-slot:bottom> <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"
......
...@@ -316,6 +316,21 @@ const routes = [{ ...@@ -316,6 +316,21 @@ const routes = [{
component: () => component: () =>
import("pages/administration/Approval.vue") import("pages/administration/Approval.vue")
}, },
{
path: "/administration/ApprovalProcess", //审批流程详情
component: () =>
import("pages/administration/ApprovalProcess.vue")
},
{
path: "/administration/processDesign", //分条件审批
component: () =>
import("pages/administration/processDesign.vue")
},
{
path: "/administration/updateProcessDesign", //分条件审批
component: () =>
import("pages/administration/updateProcessDesign.vue")
},
{ {
path: "/test", //API测试 path: "/test", //API测试
component: () => component: () =>
......
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