Commit 492ff3d2 authored by 罗超's avatar 罗超

Merge branch 'master' of http://gitlab.oytour.com/luochao/confucius into master

parents 5eccdf9f cf699c21
......@@ -28,6 +28,10 @@ body,
.q-position-engine {
z-index: 9999;
}
.el-date-picker,
.time-select{
z-index: 999999 !important;
}
.remark-font{
font-size:12px;
font-family: Poppins,Helvetica,sans-serif;
......
......@@ -58,7 +58,7 @@
<q-tab :ripple="false" name="second" label="审批记录" />
</q-tabs>
<div v-if="tabCheck=='first'" style="margin:0 15px;">
 <backinfoForm :seting-obj="dataObj" :showType="showType" @close="closeShenheForm" @success="refreshPage">
 <backinfoForm :seting-obj="setingObj" :showType="showType" @close="closeShenheForm" @success="refreshPage">
</backinfoForm>
</div>
<div v-if="tabCheck=='second'">
......@@ -86,10 +86,7 @@
type: Number,
default: 1
},
Id:{
type: Number,
default: null
}
},
components: {
backinfoForm,
......@@ -100,14 +97,14 @@
persistent: true,
tabCheck: 'first', //默认选第一个
loading: false,
dataObj:{}
}
},
created() {
},
mounted() {
this.dataObj = this.setingObj.DataObj;
x
},
methods: {
refreshPage() {
......
......@@ -56,7 +56,7 @@
}
.backinfoContent .topBaseInfo {
height: 300px;
/* height: 300px; */
overflow: auto;
}
......@@ -91,7 +91,7 @@
<div class="row backInfo_One">
<div class="col-6">
<span class="backInfo_Title">编号:</span>
<span class="backOtherInfo">{{setingObj.BackNum}}</span>
<span class="backOtherInfo">{{setingObj.DataObj.BackNum}}</span>
</div>
<div class="col-6">
<span class="backInfo_Title">申请人:</span>
......@@ -101,12 +101,12 @@
<div class="row backInfo_One">
<div class="col-6">
<span class="backInfo_Title">学员姓名:</span>
<span class="backOtherInfo">{{setingObj.GuestName}}</span>
<span class="backOtherInfo">{{setingObj.DataObj.GuestName}}</span>
</div>
<!-- <div class="col-6">
<div class="col-6">
<span class="backInfo_Title">申请时间:</span>
<span class="backOtherInfo">{{setingObj.CreateTimeStr}}</span>
</div> -->
<span class="backOtherInfo">{{setingObj.CreateTime}}</span>
</div>
</div>
<div class="backinfo_Item">
<span class="role_Line" style="background-color:#F28C1D"></span>教学信息
......@@ -114,21 +114,24 @@
<div class="row backInfo_One">
<div class="col-6">
<span class="backInfo_Title">校区:</span>
<span class="backOtherInfo">{{setingObj.SchoolName}}</span>
<span class="backOtherInfo">{{setingObj.DataObj.SchoolName}}</span>
</div>
<div class="col-6">
<span class="backInfo_Title">班级信息:</span>
<span class="backOtherInfo">{{setingObj.ClassName}}</span>
<span class="backOtherInfo">
{{setingObj.DataObj.ClassName}}
<span style="color:blue;cursor:pointer;" @click="goClassManage(setingObj.DataObj.ClassName)">{{setingObj.DataObj.ClassNo}}</span>
</span>
</div>
</div>
<div class="row backInfo_One">
<div class="col-6">
<span class="backInfo_Title">带班老师:</span>
<span class="backOtherInfo">{{setingObj.TeacherName}}</span>
<span class="backOtherInfo">{{setingObj.DataObj.TeacherName}}</span>
</div>
<div class="col-6">
<span class="backInfo_Title">学习课程:</span>
<span class="backOtherInfo">{{setingObj.CourseName}}</span>
<span class="backOtherInfo">{{setingObj.DataObj.CourseName}}</span>
</div>
</div>
<div class="backinfo_Item">
......@@ -137,7 +140,7 @@
<div class="row backInfo_One">
<div class="col-6">
<span class="backInfo_Title">学习课时:</span>
<span class="backOtherInfo">{{setingObj.FinishHours}} 课时</span>
<span class="backOtherInfo">{{setingObj.DataObj.FinishHours}} 课时</span>
</div>
<div class="col-6">
<span class="backInfo_Title">缺勤次数:</span>
......@@ -156,37 +159,37 @@
<div class="row backInfo_One">
<div class="col-6">
<span class="backInfo_Title">关联单号:</span>
<span class="backOtherInfo" style="color:#2961FE">{{setingObj.OrderId}}</span>
<span class="backOtherInfo" style="color:#2961FE;cursor:pointer" @click="goOrderStatic(setingObj.DataObj.OrderId)">{{setingObj.DataObj.OrderId}}</span>
</div>
<div class="col-6">
<span class="backInfo_Title">关联销售:</span>
<span class="backOtherInfo">{{setingObj.EnterName}}</span>
<span class="backOtherInfo">{{setingObj.DataObj.EnterName}}</span>
</div>
</div>
<div class="row backInfo_One">
<div class="col-6">
<span class="backInfo_Title">预计退费:</span>
<span class="backOtherInfo" style="color:#F72E52">¥{{setingObj.BackMoney}}</span>
<span class="backOtherInfo" style="color:#F72E52">¥{{setingObj.DataObj.BackMoney}}</span>
</div>
</div>
</div>
<div class="replayReason">
<div class="replay_Title">退课原因</div>
<div style="color:#666666;margin-top:5px;">
{{setingObj.ApplyReason}}
{{setingObj.DataObj.ApplyReason}}
</div>
</div>
<template v-if="setingObj.SpecialNode==1">
<span>
<q-input filled stack-label :dense="false" v-model="backBillMsg.BackMoney" class="col-12" label="退课金额"
:rules="[val => !!val || '请填退课金额']" />
/>
</span>
<span>
系统计算课时费为:{{(classPriceObj.ClassHours-classPriceObj.FinishHours)}}(课时)*{{classPriceObj.classHourPrice}}(课单价)={{classPriceObj.backMoney}}元,请你最终确认退款金额
</span>
</template>
<div v-if="showType==2">
<div style="display:flex;justify-content:space-between;align-items:center;">
<div style="display:flex;justify-content:space-between;align-items:center;margin-top:20px;">
<div>审批意见</div>
<div>
<q-radio v-model="backBillMsg.AuditStatus" :val="2" label="通过" />
......@@ -268,7 +271,7 @@
Id: 0,
BackMoney: 0, //实际退款金额
Description: "", //审批意见
AuditStatus: 0, //审核状态
AuditStatus: 2, //审核状态
SpecialNode: 0, //是否特殊节点
RecipientIds: "", //抄送人
},
......@@ -290,7 +293,7 @@
methods: {
getBackBillMoney() {
queryBackBillMoney({
BackId: this.backBillMsg.BackId
BackId: this.setingObj.RelationId
}).then(res => {
if (res.Code == 1) {
this.classPriceObj = res.Data;
......@@ -363,6 +366,18 @@
}
})
return str;
},
//跳转到班级管理
goClassManage(ClassName){
this.OpenNewUrl('/course/classManage',{
'ClassName':ClassName
})
},
//跳转到报名统计
goOrderStatic(OrderId){
this.OpenNewUrl('/sale/orderStatistics',{
'OrderId':OrderId
})
}
},
}
......
......@@ -35,18 +35,19 @@
@input="changeTypeResult" />
</div>
<div class="row items-center">
<div class="text-caption q-my-lg q-px-md text-grey-6 col">变更内容</div>
<div class="text-caption q-my-lg q-px-md text-grey-6 col">变更内容 注意:需要对变更的内容进行打钩</div>
<div class="row items-center">
<div class="text-grey-6">变更范围:</div>
<q-radio size="xs" v-model="msg.SettingType" val="1" label="单个或多个" />
<q-radio size="xs" v-model="msg.SettingType" val="2" label="全局" />
</div>
</div>
<div v-if="msg.SettingType==1" class="row items-center">
<div v-if="msg.SettingType=='1'" class="row items-center">
<div class="col">
<q-table no-data-label="暂无相关数据" flat style="height: 300px;"
class="sticky-column-table sticky-header-column-table" separator="none" :data="currentClass"
:columns="columns" row-key="name">
<q-table no-data-label="暂无相关数据" flat style="max-height: 300px;" :pagination="pages"
class="sticky-column-table sticky-header-column-table" separator="none"
:data="currentClass" :columns="msg.ChangeType==1?columns:columns2"
row-key="ClassPlanId" selection="multiple" :selected.sync="selected">
<template v-slot:body-cell-TimeList="props">
<q-td auto-width :props="props">
......@@ -55,38 +56,91 @@
</div>
</q-td>
</template>
<template v-slot:body-cell-CheckNum="props">
<q-td>
<div v-for="(item,index) in props.row.TimeList" class="lessForm_Class">
<span style="color:green;">{{item.CheckNum}}</span>/<span
style="color:red;">{{item.NoCheckNum}}</span>
</div>
<template v-slot:body-cell-TargetClassDate="props">
<q-td auto-width :props="props" style="border-left:1xp solid #000;">
{{props.row.NewPlan.ClassDate}}
<q-popup-edit v-model="props.row.NewPlan.ClassDate" title="变更日期" persistent buttons label-set="确认"
label-cancel="取消">
<el-date-picker
v-model="props.row.NewPlan.ClassDate"
type="date"
:picker-options="pickerOptions"
:clearable="false"
value-format="yyyy-MM-dd"
placeholder="选择日期">
</el-date-picker>
</q-popup-edit>
</q-td>
</template>
</q-table>
</div>
<div class="col">
<q-table no-data-label="暂无相关数据" flat style="height: 300px;"
class="sticky-column-table sticky-header-column-table" separator="none" :data="currentClass"
:columns="columns2" row-key="name">
<template v-slot:body-cell-TimeList="props">
<template v-slot:body-cell-TargetTimeList="props">
<q-td auto-width :props="props">
<div v-for="(item,index) in props.row.TimeList" class="lessForm_Class">
<div v-for="(item,index) in props.row.NewPlan.TimeList" class="lessForm_Class">
{{index+1}}节课 {{item.StartTime}}-{{item.EndTime}}
</div>
</q-td>
</template>
<template v-slot:body-cell-CheckNum="props">
<q-td>
<div v-for="(item,index) in props.row.TimeList" class="lessForm_Class">
<span style="color:green;">{{item.CheckNum}}</span>/<span
style="color:red;">{{item.NoCheckNum}}</span>
<q-popup-edit :validate="proteinRangeValidation" persistent v-model="props.row.NewPlan.TimeList" title="变更时间" buttons label-set="确认"
label-cancel="取消">
<div v-for="(item,index) in props.row.NewPlan.TimeList" class="q-mb-md row items-center" style="width:430px">
<div class="lessForm_Class col">
{{index+1}}节课
</div>
<div class="row items-center">
<el-time-select
placeholder="起始时间"
v-model="item.StartTime"
style="width:100px"
:picker-options="pickers">
</el-time-select>
<el-time-select
placeholder="结束时间"
v-model="item.EndTime"
style="width:100px;margin-left:12px;"
:picker-options="{
start: '09:00',
step: '00:15',
end: '22:30',
minTime: item.StartTime
}">
</el-time-select>
<q-input filled v-model="item.TimeHour" size="xs" mask="#.#" fill-mask="0.0" label="有效课时" suffix="课时" style="width:100px;margin-left:12px" />
<q-btn v-if="props.row.NewPlan.TimeList.length>1" round color="negative" class="q-ml-md" size="xs" icon="iconfont icon-guanbi1" @click="removeTime(props.row.NewPlan,index)"></q-btn>
</div>
</div>
<q-btn round color="primary" size="xs" icon="iconfont icon-img_haha" @click="addTime(props.row.NewPlan)"></q-btn>
</q-popup-edit>
</q-td>
</template>
<template v-slot:bottom></template>
</q-table>
</div>
</div>
<div v-if="msg.ChangeType==3">
<div class="text-caption q-mb-lg q-px-md text-grey-6 col">目标教室</div>
<div class="row">
<q-select standout="bg-dark text-white" option-value="RoomId" option-label="RoomName"
v-model="msg.TargetRoom" :options="roomList" emit-value map-options
label="教室" class="col-6">
<template v-slot:option="{ itemProps, itemEvents, opt, selected, toggleOption }">
<q-item v-bind="itemProps" v-on="itemEvents">
<q-item-section>
<q-item-label v-html="opt.RoomName"></q-item-label>
</q-item-section>
<q-item-section side>
<q-item-label v-html="opt.SchoolName"></q-item-label>
</q-item-section>
</q-item>
</template>
</q-select>
</div>
</div>
<div v-if="msg.ChangeType==2">
<div class="text-caption q-mb-lg q-px-md text-grey-6 col">目标老师</div>
<div class="row">
<q-select standout="bg-dark text-white" option-value="TId" option-label="TeacherName"
v-model="msg.TargetTeacherId" :options="TeacherList" emit-value map-options
label="老师" class="col-6">
</q-select>
</div>
</div>
</q-scroll-area>
</q-card-section>
......@@ -104,7 +158,9 @@
<script>
import {
getClassDropDownList,
getSchoolDropdown
getSchoolDropdown,
queryClassRoomPage,
getTeacherDropDownList
} from "../../api/school/index";
import {
queryCourseDropdownList,
......@@ -113,10 +169,25 @@
export default {
data() {
return {
TeacherList:[],
pickerOptions: {
disabledDate(time) {
return time.getTime() < Date.now();
}
},
pages:{
rowsPerPage:100000
},
persistent: true,
saveLoading: false,
contentStyle: {},
contentActiveStyle: {},
pickers: {
start: '09:00',
step: '00:15',
end: '22:30'
},
thumbStyle: {
right: '2px',
borderRadius: '5px',
......@@ -129,9 +200,11 @@
SchoolId: -1,
CouseId: 0,
ChangeType: 1,
SettingType: 1
SettingType: "1",
TargetRoom:0,
TargetTeacherId:0
},
selected: [],
classList: [],
schoolList: [],
courseList: [],
......@@ -144,7 +217,7 @@
IsQuerySurplusPlan: 1
},
currentClass: [],
columns: [{
columns2: [{
name: 'RoomName',
label: '教室名称',
field: 'RoomName',
......@@ -168,17 +241,40 @@
align: 'left'
}
],
columns2: [{
columns: [{
name: 'RoomName',
label: '教室名称',
field: 'RoomName',
align: 'left',
}, {
name: 'ClassDate',
label: '目标日期',
label: '上课日期',
field: 'ClassDate',
align: 'left'
},
{
name: 'TeacherName',
label: '老师',
field: 'TeacherName',
align: 'left'
},
{
name: 'TimeList',
label: '目标时间',
label: '上课时间',
field: 'TimeList',
align: 'left'
},
{
name: 'TargetClassDate',
label: '目标日期',
field: 'TargetClassDate',
align: 'left'
},
{
name: 'TargetTimeList',
label: '目标时间',
field: 'TargetTimeList',
align: 'left'
}
],
changeType: [{
......@@ -197,7 +293,8 @@
Id: 4,
Name: "取消上课"
}
]
],
roomList:[]
}
},
mounted() {
......@@ -208,18 +305,86 @@
this.getClass()
this.getSchool()
this.getCourseList()
this.getClassRoomPage()
this.GetTeacherList()
},
methods: {
GetTeacherList() {
getTeacherDropDownList({}).then(res => {
if (res.Code == 1) {
this.TeacherList = res.Data;
var obj = {
TeacherName: '请选择',
TId: 0
}
this.TeacherList.unshift(obj);
}
})
},
getClassRoomPage() {
queryClassRoomPage({
pageIndex: 1,
pageSize: 10000,
RoomName: "",
School_Id: 0, //校区编号
Status: '-1', //状态
}).then(res => {
this.roomList = res.Data.PageData;
var obj = {
RoomName: '请选择',
RoomId: 0,
SchoolName:""
}
this.roomList.push(obj)
})
},
closeSaveForm() {
this.$emit('close')
this.persistent = false
},
save() {
},
proteinRangeValidation(val){
let newList=[]
let errorMsg=""
val.forEach(x=>{
if(x.StartTime&&x.EndTime&&x.TimeHour&&x.StartTime!=""&&x.EndTime!=""&&x.TimeHour!="0.0"){
newList.push({
StartTime:x.StartTime,
EndTime:x.EndTime,
TimeHour:x.TimeHour
});
}else{
errorMsg="存在不完善的数据,请完善数据信息"
}
})
if(errorMsg!=""){
this.$q.notify({
icon: 'iconfont icon-guanbi1',
color: 'negative',
timeout: 2000,
message: errorMsg,
position: 'top'
})
}
console.log(val)
return errorMsg==""
},
removeTime(plan,i){
plan.TimeList.splice(i,1)
},
addTime(plan){
let obj={
EndTime: "",
StartTime: "",
TimeHour: 0
}
plan.TimeList.push(plan)
},
changeClass(val) {
this.currentClass = this.classList.find(x=>{
return x.ClassId==val
this.currentClass = this.classList.find(x => {
return x.ClassId == val
}).PlanList
console.log(this.currentClass)
},
......@@ -237,6 +402,13 @@
this.classList = [];
this.msg.classId = 0
if (res.Code == 1) {
res.Data.forEach(x => {
x.PlanList.forEach(y => {
let newPlan = JSON.parse(JSON.stringify(y))
y.NewPlan = newPlan
})
})
this.classList = res.Data;
var obj = {
ClassName: '请选择',
......
......@@ -24,11 +24,11 @@
label="学员名称/班级名称/老师名称" />
</div>
<div class="col-3">
<q-select @input="resetSearch" filled v-model="msg.AuditStatus" :options="ShowOpts"
<q-select @input="resetSearch" clearable filled v-model="msg.AuditStatus" :options="ShowOpts"
emit-value map-options label="审核状态" />
</div>
<div class="col-3">
<q-select @input="resetSearch" option-value="Id" option-label="Name" filled v-model="msg.ReceiptType" :options="OrderTypeList"
<q-select @input="resetSearch" clearable option-value="Id" option-label="Name" filled v-model="msg.ReceiptType" :options="OrderTypeList"
emit-value map-options label="单据类型" />
</div>
<div class="col-3 Sysuser_Date">
......
......@@ -6,19 +6,30 @@
.Sysuser_Date .el-range-editor.el-input__inner {
background-color: transparent;
}
.ReceipTypeName{
display: inline-block;
padding: 2px 8px;
color: white;
background-color: rgb(233, 82, 82);
line-height: 16px;
border-radius: 4px;
}
</style>
<template>
<div class="page-body">
<div class="page-search row items-center">
<div class="col row wrap q-col-gutter-md">
<div class="col-3">
<q-input @change="resetSearch" clearable standout="bg-primary text-white" v-model="msg.ClassName"
<q-input @change="resetSearch" clearable filled v-model="msg.ClassName"
label="学员名称/班级名称/老师名称" />
</div>
<div class="col-3">
<q-select @input="resetSearch" standout="bg-primary text-white" v-model="msg.AuditStatus" :options="ShowOpts"
emit-value map-options label="流程状态" />
<q-select @input="resetSearch" filled v-model="msg.AuditStatus" :options="ShowOpts"
emit-value map-options label="审核状态" />
</div>
<div class="col-3">
<q-select @input="resetSearch" option-value="Id" option-label="Name" filled v-model="msg.ReceiptType" :options="OrderTypeList"
emit-value map-options label="单据类型" />
</div>
<div class="col-3 Sysuser_Date">
<q-field filled>
......@@ -40,22 +51,9 @@
</q-tabs>
<q-table :pagination="msg" :loading="loading" no-data-label="暂无相关数据" flat class="sticky-tow-column-table"
separator="none" :data="data" :columns="columns" row-key="name">
<template v-slot:body-cell-Status="props">
<template v-slot:body-cell-ReceiptTypeName="props">
<q-td :props="props">
<q-toggle size="sm" color="secondary" :false-value="1" :true-value="0" v-model="props.row.Status"
title="注意:关闭后,分类将无法正常使用." @input="SetDeptStatus(props.row)" />
</q-td>
</template>
<template v-slot:body-cell-School_Id="props">
<q-td :props="props">
{{props.row.School_Id>0? props.row.SchoolName:'总部'}}
</q-td>
</template>
<template v-slot:body-cell-RealityBackMoney="props">
<q-td :props="props">
<template v-if="props.row.AuditStatus==2">
<span style="color:red">{{props.row.RealityBackMoney}}</span>
</template>
<span class="ReceipTypeName">{{props.row.ReceiptTypeName}}</span>
</q-td>
</template>
<template v-slot:bottom>
......@@ -94,8 +92,10 @@
</template>
<script>
import {
queryStudentBackClassPage,
} from '../../api/sale/bill'
GetEducationReceiptPage,
GetEducationReceiptType
} from '../../api/teacher/index'
import backbillForm from '../../components/sale/backbill-form';
import createbackbillForm from '../../components/sale/createbackbill-form';
export default {
......@@ -110,65 +110,40 @@
return {
currentUrl: "",
columns: [{
name: 'AuditStatusName',
label: '状态',
align: 'left',
field: row => row.AuditStatusName
},
{
name: 'GuestName',
label: '学员名称',
field: 'GuestName',
align: 'left'
},
{
name: 'SchoolName',
label: '所属校区',
field: 'SchoolName',
name: 'Id',
label: '单号',
field: 'Id',
align: 'left'
},
{
name: 'ClassName',
label: '所属班级',
field: 'ClassName',
},{
name: 'Title',
label: '标题',
field: 'Title',
align: 'left'
},
{
name: 'TeacherName',
label: '带班老师',
field: 'TeacherName',
name: 'ReceiptTypeName',
label: '单据类型',
field: 'ReceiptTypeName',
align: 'left'
},
{
name: 'FinishHours',
label: '已上课时',
field: 'FinishHours',
name: 'AuditStatusName',
label: '审核状态',
field: 'AuditStatusName',
align: 'left'
},
{
name: 'BackMoney',
label: '预计退费金额',
field: 'BackMoney',
name: 'CreateByName',
label: '创建人',
field: 'CreateByName',
align: 'left'
},
{
name: 'RealityBackMoney',
label: '实际退费金额',
field: 'RealityBackMoney',
name: 'CreateTime',
label: '创建时间',
field: 'CreateTime',
align: 'left'
},
{
name: 'CreateTimeStr',
label: '申请时间',
field: 'CreateTimeStr',
align: 'left',
},
{
name: 'CreateByName',
label: '申请人',
field: 'CreateByName',
align: 'left',
},
{
name: 'optioned',
label: '操作',
......@@ -178,10 +153,7 @@
data: [],
loading: true,
applyDateList: [], //申请日期
ShowOpts: [{
label: '全部',
value: '0'
},
ShowOpts: [
{
label: '审核中',
value: '1'
......@@ -204,10 +176,11 @@
pageSize: 12,
rowsPerPage: 12,
ClassName: "", //学员、班级、老师名称
AuditStatus: "0", //审核状态
QStartTime: "", //开始时间
QEndTime: "", //结束时间
AuditStatus: "", //审核状态
StartTime: "", //开始时间
EndTime: "", //结束时间
Conditon: 1,
ReceiptType:'' //单据类型
},
tabCheck: "1",
pageCount: 0,
......@@ -215,6 +188,8 @@
isShowCreateBillForm: false, //是否显示制单表单
billObj: {}, //单据信息
showType: 1, //1-查看,2-审核
OrderTypeList: [],
}
},
created() {
......@@ -222,6 +197,7 @@
},
mounted() {
this.currentUrl = this.$route.path;
this.getEducationType();
this.getStuBackBill();
},
methods: {
......@@ -252,6 +228,7 @@
this.isShowBillForm = true;
this.showType = type;
this.billObj = item;
},
//重新查询
resetSearch() {
......@@ -270,13 +247,13 @@
this.pageCount = 0;
this.msg.Conditon = this.tabCheck;
if (this.applyDateList && this.applyDateList.length > 0) {
this.msg.QStartTime = this.applyDateList[0];
this.msg.QEndTime = this.applyDateList[1];
this.msg.StartTime = this.applyDateList[0];
this.msg.EndTime = this.applyDateList[1];
} else {
this.msg.QStartTime = '';
this.msg.QEndTime = '';
this.msg.StartTime = '';
this.msg.EndTime = '';
}
queryStudentBackClassPage(this.msg).then(res => {
GetEducationReceiptPage(this.msg).then(res => {
this.loading = false;
this.data = res.Data.PageData;
this.pageCount = res.Data.PageCount;
......@@ -290,6 +267,14 @@
this.billObj = {};
this.getStuBackBill();
},
//获取下拉数据
getEducationType() {
GetEducationReceiptType().then(res => {
if (res.Code == 1) {
this.OrderTypeList = res.Data;
}
}).catch(() => {})
}
},
watch: {
tabCheck: function (val) {
......
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