mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-18 23:36:46 +08:00
所属组织页面调整
This commit is contained in:
@@ -10,8 +10,10 @@ export const updateTeacherFee= (obj) => http.post('/teacher/fee/updateTeacherFee
|
|||||||
//修改讲师费状态(已提交)
|
//修改讲师费状态(已提交)
|
||||||
export const updateStatusSubmit= (obj) => http.post('/teacher/fee/updateStatusSubmit',obj)
|
export const updateStatusSubmit= (obj) => http.post('/teacher/fee/updateStatusSubmit',obj)
|
||||||
//修改讲师费状态(已撤回)
|
//修改讲师费状态(已撤回)
|
||||||
export const updateStatusWithDraw= (obj) => http.post('/teacher/fee/updateStatusWithDraw',obj)
|
export const approveTeacherFee= (obj) => http.post('/teacher/fee/approveTeacherFee',obj)
|
||||||
//获取培训发生组织列表
|
//获取培训发生组织列表
|
||||||
export const getTrainOrg= (obj) => http.post('/teacher/fee/getTrainOrg',obj)
|
export const getTrainOrg= (obj) => http.post('/teacher/fee/getTrainOrg',obj)
|
||||||
//获取讲师级别
|
//获取讲师级别
|
||||||
export const getTeacherLevel= (obj) => http.post('/teacher/fee/getTeacherLevel',obj)
|
export const getTeacherLevel= (obj) => http.post('/teacher/fee/getTeacherLevel',obj)
|
||||||
|
//列表查看讲师费审批(用于讲师费管理查看讲师费详情里面)
|
||||||
|
export const getTeacherFeeApprovalList= (obj) => http.post('/teacher/fee/getTeacherFeeApprovalList',obj)
|
||||||
7
src/api/organization.js
Normal file
7
src/api/organization.js
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
import http from "./config";
|
||||||
|
// 列表分页查看归属组织
|
||||||
|
export const queryTrainOrg = (obj) => http.post('/configuration/queryTrainOrg', obj)
|
||||||
|
// 删除归属组织
|
||||||
|
export const deleteTrainOrg = (obj) => http.post('/configuration/deleteTrainOrg', obj)
|
||||||
|
//列表分页查看讲师体系
|
||||||
|
export const systemList = (obj) => http.get('/configuration/list',{params: obj})
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -45,8 +45,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<div style="width:100%"></div>
|
<div style="width:100%"></div>
|
||||||
<a-form-item class="select" v-if="moreid == 2">
|
<a-form-item class="select" v-if="moreid == 2">
|
||||||
<a-select style="width: 230px ;margin-bottom:20px" v-model:value="searchParam.type" placeholder="录入类型"
|
<a-select style="width: 230px ;margin-bottom:20px" v-model:value="searchParam.entryType" placeholder="录入类型"
|
||||||
:options="OnTheJobStatusList">
|
:options="entryTypeList">
|
||||||
</a-select>
|
</a-select>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item class="select" v-if="moreid == 2">
|
<a-form-item class="select" v-if="moreid == 2">
|
||||||
@@ -309,6 +309,7 @@ export default {
|
|||||||
tableDataTotal: -1,//table列表总条数
|
tableDataTotal: -1,//table列表总条数
|
||||||
formParam: {
|
formParam: {
|
||||||
status: 1,
|
status: 1,
|
||||||
|
entryType:1,
|
||||||
},
|
},
|
||||||
searchParam: {
|
searchParam: {
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
@@ -319,6 +320,7 @@ export default {
|
|||||||
status: null,
|
status: null,
|
||||||
startDate: null,
|
startDate: null,
|
||||||
endDate: null,
|
endDate: null,
|
||||||
|
entryType:null,
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
//修改时间
|
//修改时间
|
||||||
@@ -371,6 +373,10 @@ export default {
|
|||||||
{ value: 0, label: "未开课" },
|
{ value: 0, label: "未开课" },
|
||||||
{ value: 1, label: "已开课" },
|
{ value: 1, label: "已开课" },
|
||||||
])
|
])
|
||||||
|
const entryTypeList= ref([
|
||||||
|
{ value:0 ,label:"系统生成"},
|
||||||
|
{ value:1 ,label:"手动录入"},
|
||||||
|
])
|
||||||
const columns = ref([
|
const columns = ref([
|
||||||
|
|
||||||
// {
|
// {
|
||||||
@@ -422,11 +428,23 @@ export default {
|
|||||||
width: 120,
|
width: 120,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '录入类型(未命名) ',
|
title: '数据来源',
|
||||||
dataIndex: 'name',
|
dataIndex: 'entryType',
|
||||||
key: 'name',
|
key: 'entryType',
|
||||||
elipsis: true, align: "center",
|
elipsis: true, align: "center",
|
||||||
width: 120,
|
width: 120,
|
||||||
|
customRender: (value) => {
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
{value.record.entryType == "1" || value.record.entryType == "2"
|
||||||
|
? {
|
||||||
|
"0": "系统生成",
|
||||||
|
"1": "手动录入",
|
||||||
|
}[value.record.entryType + ""] || ""
|
||||||
|
: "-"}
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '授课/课程日期 ',
|
title: '授课/课程日期 ',
|
||||||
@@ -525,11 +543,15 @@ export default {
|
|||||||
state.searchParam = {
|
state.searchParam = {
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
teacher: null,
|
managerId: null,
|
||||||
name: null,
|
teacherNo: null,
|
||||||
address: null,
|
manager:null,
|
||||||
|
entryType: null,
|
||||||
status: null,
|
status: null,
|
||||||
|
entryType:null,
|
||||||
|
systemId:null,
|
||||||
beginTime: null,
|
beginTime: null,
|
||||||
|
entryType:null
|
||||||
};
|
};
|
||||||
getTableDate();
|
getTableDate();
|
||||||
};
|
};
|
||||||
@@ -653,6 +675,7 @@ export default {
|
|||||||
state.searchParam.type = null
|
state.searchParam.type = null
|
||||||
state.searchParam.status = null
|
state.searchParam.status = null
|
||||||
state.searchParam.tlevelName = null
|
state.searchParam.tlevelName = null
|
||||||
|
state.searchParam.entryType=null
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//表格内查看数据操作
|
//表格内查看数据操作
|
||||||
@@ -692,6 +715,7 @@ export default {
|
|||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
rules,
|
rules,
|
||||||
|
entryTypeList,
|
||||||
searchTimeChange,
|
searchTimeChange,
|
||||||
cancelTeachingDialog,
|
cancelTeachingDialog,
|
||||||
getTeacherExpertiseList,
|
getTeacherExpertiseList,
|
||||||
|
|||||||
@@ -6,8 +6,8 @@
|
|||||||
<a-form layout="inline">
|
<a-form layout="inline">
|
||||||
<a-form-item class="select">
|
<a-form-item class="select">
|
||||||
<div style="width: 276px; height: 40px; border-radius: 8px" >
|
<div style="width: 276px; height: 40px; border-radius: 8px" >
|
||||||
<ProjectManager v-model:value="searchParam.managerId"
|
<ProjectManager v-model:value="searchParam.userNo"
|
||||||
v-model:name="searchParam.manager"
|
v-model:name="searchParam.name"
|
||||||
placeholder="请输入工号/讲师姓名进行检索"
|
placeholder="请输入工号/讲师姓名进行检索"
|
||||||
@onChange="managerChange" mode="multiple"></ProjectManager>
|
@onChange="managerChange" mode="multiple"></ProjectManager>
|
||||||
</div>
|
</div>
|
||||||
@@ -139,8 +139,8 @@
|
|||||||
<a-col :span="24">
|
<a-col :span="24">
|
||||||
<span class="line"></span><span>基本信息</span>
|
<span class="line"></span><span>基本信息</span>
|
||||||
</a-col>
|
</a-col>
|
||||||
<!-- 头像 -->
|
|
||||||
</a-row>
|
</a-row>
|
||||||
|
<!-- 头像 -->
|
||||||
<a-row :gutter="16">
|
<a-row :gutter="16">
|
||||||
<a-col :span="24">
|
<a-col :span="24">
|
||||||
<div class="item_inp" style="background-color: #fff;">
|
<div class="item_inp" style="background-color: #fff;">
|
||||||
@@ -168,8 +168,8 @@
|
|||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<a-form-item label="讲师名称" name="name">
|
<a-form-item label="讲师名称" name="name">
|
||||||
|
|
||||||
<ProjectManager v-model:value="formParam.managerId"
|
<ProjectManager v-model:value="formParam.userNo"
|
||||||
v-model:name="formParam.manager"
|
v-model:name="formParam.name"
|
||||||
placeholder="请输入工号/讲师姓名进行检索"
|
placeholder="请输入工号/讲师姓名进行检索"
|
||||||
@onChange="managerChange" mode="multiple"></ProjectManager>
|
@onChange="managerChange" mode="multiple"></ProjectManager>
|
||||||
|
|
||||||
@@ -262,8 +262,15 @@
|
|||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</a-form>
|
<a-row :gutter="50" style="margin-bottom: 50px;">
|
||||||
<div class="add_content" @click="addContentData">+</div>
|
<a-col :span="2">
|
||||||
|
<a-tag color="blue" style="line-height: 40px; ">管理业务</a-tag>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="20">
|
||||||
|
<div class="add_content" @click="addContentData" >+</div>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
</a-form>
|
||||||
<!-- 交互按钮 -->
|
<!-- 交互按钮 -->
|
||||||
<div
|
<div
|
||||||
:style="{
|
:style="{
|
||||||
@@ -396,10 +403,12 @@ export default {
|
|||||||
tableDataTotal: -1,//table列表总条数
|
tableDataTotal: -1,//table列表总条数
|
||||||
|
|
||||||
formParam: {
|
formParam: {
|
||||||
|
userNo:null,
|
||||||
certStatus: 0,//认证状态
|
certStatus: 0,//认证状态
|
||||||
defaultTeachingTime: '0'
|
defaultTeachingTime: '0'
|
||||||
},
|
},
|
||||||
searchParam: {
|
searchParam: {
|
||||||
|
name:null,
|
||||||
userNo: null,
|
userNo: null,
|
||||||
tsystemName: null,
|
tsystemName: null,
|
||||||
tlevelId: null,
|
tlevelId: null,
|
||||||
@@ -464,8 +473,8 @@ export default {
|
|||||||
let array = [];
|
let array = [];
|
||||||
arr.map((value) => {
|
arr.map((value) => {
|
||||||
let obj = {
|
let obj = {
|
||||||
value: value.id,
|
value: value.kid,
|
||||||
label: value.name,
|
label: value.systemName,
|
||||||
};
|
};
|
||||||
array.push(obj);
|
array.push(obj);
|
||||||
});
|
});
|
||||||
@@ -511,14 +520,14 @@ export default {
|
|||||||
])
|
])
|
||||||
const changetlevel = (val) => {
|
const changetlevel = (val) => {
|
||||||
console.log( "讲师体系id" +val);
|
console.log( "讲师体系id" +val);
|
||||||
getLevel( {id:val}).then((res) => {
|
getLevel( {systemId:val}).then((res) => {
|
||||||
if (res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
let arr = res.data.data;
|
let arr = res.data.data;
|
||||||
let array = [];
|
let array = [];
|
||||||
arr.map((value) => {
|
arr.map((value) => {
|
||||||
let obj = {
|
let obj = {
|
||||||
value: value.id,
|
value: value.levelCode,
|
||||||
label: value.name,
|
label: value.levelName,
|
||||||
};
|
};
|
||||||
array.push(obj);
|
array.push(obj);
|
||||||
});
|
});
|
||||||
@@ -774,6 +783,7 @@ console.log( "讲师体系id" +val);
|
|||||||
//重置
|
//重置
|
||||||
const searchReset = () => {
|
const searchReset = () => {
|
||||||
state.searchParam = {
|
state.searchParam = {
|
||||||
|
name:null,
|
||||||
userNo: null,
|
userNo: null,
|
||||||
tsystemName: null,
|
tsystemName: null,
|
||||||
tlevelId: null,
|
tlevelId: null,
|
||||||
|
|||||||
@@ -45,8 +45,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<div style="width:100%"></div>
|
<div style="width:100%"></div>
|
||||||
<a-form-item class="select" v-if="moreid == 2">
|
<a-form-item class="select" v-if="moreid == 2">
|
||||||
<a-select style="width: 230px ;margin-bottom:20px" v-model:value="searchParam.type" placeholder="录入类型"
|
<a-select style="width: 230px ;margin-bottom:20px" v-model:value="searchParam.entryType" placeholder="录入类型"
|
||||||
:options="OnTheJobStatusList">
|
:options="entryTypeList">
|
||||||
</a-select>
|
</a-select>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item class="select" v-if="moreid == 2">
|
<a-form-item class="select" v-if="moreid == 2">
|
||||||
@@ -55,7 +55,7 @@
|
|||||||
</a-select>
|
</a-select>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item class="select" v-if="moreid == 2">
|
<a-form-item class="select" v-if="moreid == 2">
|
||||||
<a-select style="width: 230px" placeholder="请选择所属组织" v-model:value="searchParam.departId"
|
<a-select style="width: 230px" placeholder="请选择所属组织" v-model:value="searchParam.entryType"
|
||||||
:options="getOrganizationList">
|
:options="getOrganizationList">
|
||||||
</a-select>
|
</a-select>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
@@ -261,7 +261,8 @@
|
|||||||
<a-descriptions-item label="讲师组织" :span="2">{{formParam.departId}}</a-descriptions-item>
|
<a-descriptions-item label="讲师组织" :span="2">{{formParam.departId}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="讲师体系">{{formParam.systemId}}</a-descriptions-item>
|
<a-descriptions-item label="讲师体系">{{formParam.systemId}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="讲师级别">{{formParam.levelId }}</a-descriptions-item>
|
<a-descriptions-item label="讲师级别">{{formParam.levelId }}</a-descriptions-item>
|
||||||
<a-descriptions-item label="录入方式(未命名)">"未命名"</a-descriptions-item>
|
<a-descriptions-item label="录入方式">
|
||||||
|
{{formParam.entryType==0?'系统生成' :formParam.entryType==1 ?'手动录入':''}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="课程类型">{{formParam.type==1?'项目开课' :formParam.type==2 ?'路径开课':formParam.type==3 ?'面授开课':''}}</a-descriptions-item>
|
<a-descriptions-item label="课程类型">{{formParam.type==1?'项目开课' :formParam.type==2 ?'路径开课':formParam.type==3 ?'面授开课':''}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="课程名称">{{formParam.name}}</a-descriptions-item>
|
<a-descriptions-item label="课程名称">{{formParam.name}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="开课状态">{{formParam.status==0?'未开课' :formParam.status==1 ?'已开课':''}}</a-descriptions-item>
|
<a-descriptions-item label="开课状态">{{formParam.status==0?'未开课' :formParam.status==1 ?'已开课':''}}</a-descriptions-item>
|
||||||
@@ -381,13 +382,15 @@ export default {
|
|||||||
startTime: null, //开始时间
|
startTime: null, //开始时间
|
||||||
endTime: null, //结束时间
|
endTime: null, //结束时间
|
||||||
formParam: {
|
formParam: {
|
||||||
status: 1
|
status: 1,
|
||||||
|
entryType:1,
|
||||||
},
|
},
|
||||||
searchParam: {
|
searchParam: {
|
||||||
userNo: null,//工号姓名
|
userNo: null,//工号姓名
|
||||||
teacherNo: null,//课程编号
|
teacherNo: null,//课程编号
|
||||||
tsystemName: null,//讲师体系
|
tsystemName: null,//讲师体系
|
||||||
payrollPlaceName: null,//发薪地
|
payrollPlaceName: null,//发薪地
|
||||||
|
entryType:null,
|
||||||
pageNo: "1",
|
pageNo: "1",
|
||||||
pageSize: "10",
|
pageSize: "10",
|
||||||
startDate: null,
|
startDate: null,
|
||||||
@@ -430,8 +433,8 @@ export default {
|
|||||||
let array = [];
|
let array = [];
|
||||||
arr.map((value) => {
|
arr.map((value) => {
|
||||||
let obj = {
|
let obj = {
|
||||||
value: value.id,
|
value: value.kid,
|
||||||
label: value.name,
|
label: value.systemName,
|
||||||
};
|
};
|
||||||
array.push(obj);
|
array.push(obj);
|
||||||
});
|
});
|
||||||
@@ -471,6 +474,10 @@ export default {
|
|||||||
{ value: 0, label: "未开课" },
|
{ value: 0, label: "未开课" },
|
||||||
{ value: 1, label: "已开课" },
|
{ value: 1, label: "已开课" },
|
||||||
])
|
])
|
||||||
|
const entryTypeList= ref([
|
||||||
|
{ value:0 ,label:"系统生成"},
|
||||||
|
{ value:1 ,label:"手动录入"},
|
||||||
|
])
|
||||||
const columns = ref([
|
const columns = ref([
|
||||||
|
|
||||||
{
|
{
|
||||||
@@ -509,11 +516,23 @@ export default {
|
|||||||
// }
|
// }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '数据来源(未命名) ',
|
title: '数据来源',
|
||||||
dataIndex: 'systemName',
|
dataIndex: 'entryType',
|
||||||
key: 'systemName',
|
key: 'entryType',
|
||||||
elipsis: true, align: "center",
|
elipsis: true, align: "center",
|
||||||
width: 120,
|
width: 120,
|
||||||
|
customRender: (value) => {
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
{value.record.entryType == "1" || value.record.entryType == "2"
|
||||||
|
? {
|
||||||
|
"0": "系统生成",
|
||||||
|
"1": "手动录入",
|
||||||
|
}[value.record.entryType + ""] || ""
|
||||||
|
: "-"}
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '课程名称 ',
|
title: '课程名称 ',
|
||||||
@@ -661,15 +680,16 @@ export default {
|
|||||||
//重置
|
//重置
|
||||||
const searchReset = () => {
|
const searchReset = () => {
|
||||||
state.searchParam = {
|
state.searchParam = {
|
||||||
pageNo: 1,
|
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
name: null,
|
managerId: null,
|
||||||
offcourseId: null,
|
teacherNo: null,
|
||||||
departId: null,
|
manager:null,
|
||||||
systemId: null,
|
entryType: null,
|
||||||
|
status: null,
|
||||||
|
entryType:null,
|
||||||
|
systemId:null,
|
||||||
beginTime: null,
|
beginTime: null,
|
||||||
type: null,
|
entryType:null
|
||||||
status: null
|
|
||||||
};
|
};
|
||||||
getTableDate();
|
getTableDate();
|
||||||
};
|
};
|
||||||
@@ -772,7 +792,8 @@ export default {
|
|||||||
score: null,
|
score: null,
|
||||||
type: null,
|
type: null,
|
||||||
remark: null,
|
remark: null,
|
||||||
offcourseId: null
|
offcourseId: null,
|
||||||
|
entryType:null
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -805,6 +826,7 @@ export default {
|
|||||||
}
|
}
|
||||||
//内部授课详情
|
//内部授课详情
|
||||||
const TeacherSystem = (record) => {
|
const TeacherSystem = (record) => {
|
||||||
|
console.log(record.teacher);
|
||||||
// getTeacherCourseList( state.lookTeacherId).then((res) => {
|
// getTeacherCourseList( state.lookTeacherId).then((res) => {
|
||||||
// console.log("内部授课详情", res.data);
|
// console.log("内部授课详情", res.data);
|
||||||
// state.formParam= res.data.data
|
// state.formParam= res.data.data
|
||||||
@@ -829,6 +851,7 @@ export default {
|
|||||||
score: record.score,
|
score: record.score,
|
||||||
studys: record.studys,
|
studys: record.studys,
|
||||||
remark: record.remark,
|
remark: record.remark,
|
||||||
|
entryType:record.entryType
|
||||||
}
|
}
|
||||||
console.log(state.formParam)
|
console.log(state.formParam)
|
||||||
}
|
}
|
||||||
@@ -910,6 +933,7 @@ export default {
|
|||||||
OnTheJobStatusList,
|
OnTheJobStatusList,
|
||||||
getTeacherExpertiseLista,
|
getTeacherExpertiseLista,
|
||||||
AuthenticationStatusList,
|
AuthenticationStatusList,
|
||||||
|
entryTypeList,
|
||||||
searchSubmit,
|
searchSubmit,
|
||||||
searchReset,
|
searchReset,
|
||||||
columns,
|
columns,
|
||||||
|
|||||||
@@ -117,22 +117,21 @@
|
|||||||
<span>讲师费用详情</span>
|
<span>讲师费用详情</span>
|
||||||
<a-descriptions bordered :column="2" :contentStyle="rowCenter" :labelStyle="rowCenter">
|
<a-descriptions bordered :column="2" :contentStyle="rowCenter" :labelStyle="rowCenter">
|
||||||
<a-descriptions-item label="讲师名称">{{formParam.teacherName}}</a-descriptions-item>
|
<a-descriptions-item label="讲师名称">{{formParam.teacherName}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="讲师工号">{{formParam.teacherId
|
<a-descriptions-item label="讲师工号">{{formParam.teacherNo}}</a-descriptions-item>
|
||||||
}}</a-descriptions-item>
|
<a-descriptions-item label="讲师组织" :span="2">{{formParam.teacherOrg}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="讲师组织" :span="2">{{formParam.departId}}</a-descriptions-item>
|
<a-descriptions-item label="讲师体系">{{formParam.systemName}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="讲师体系">{{formParam.systemId}}</a-descriptions-item>
|
<a-descriptions-item label="讲师级别">{{formParam.levelName }}</a-descriptions-item>
|
||||||
<a-descriptions-item label="讲师级别">{{formParam.levelId }}</a-descriptions-item>
|
|
||||||
<a-descriptions-item label="发薪地">{{formParam.teacherpayrollPlace}}</a-descriptions-item>
|
<a-descriptions-item label="发薪地">{{formParam.teacherpayrollPlace}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="费用类型">"费用类型(未命名)"</a-descriptions-item>
|
<a-descriptions-item label="费用类型">"费用类型(未命名)"</a-descriptions-item>
|
||||||
<a-descriptions-item label="课程类型">{{formParam.type==1?'项目开课' :formParam.type==2 ?'路径开课':formParam.type==3 ?'面授开课':''}}</a-descriptions-item>
|
<a-descriptions-item label="课程类型">{{formParam.courseType==1?'项目开课' :formParam.courseType==2 ?'路径开课':formParam.courseType==3 ?'面授开课':''}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="课程名称">{{formParam.name}}</a-descriptions-item>
|
<a-descriptions-item label="课程名称">{{formParam.courseName}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="授课时长 ">{{formParam.duration}}</a-descriptions-item>
|
<a-descriptions-item label="授课时长 ">{{formParam.teachingTime}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="授课/课程日期 ">{{formParam.teachingDate}}</a-descriptions-item>
|
<a-descriptions-item label="授课/课程日期 ">{{formParam.teachingDate}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="参训人数 ">{{formParam.studys}}</a-descriptions-item>
|
<a-descriptions-item label="参训人数 ">{{formParam.studys}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="评分 ">{{formParam.score}}</a-descriptions-item>
|
<a-descriptions-item label="评分 ">{{formParam.score}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="课酬基准 ">{{formParam.teacherlevelPay}}</a-descriptions-item>
|
<a-descriptions-item label="课酬基准 ">{{formParam.teacherlevelPay}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="计划费用 ">{{formParam.expense}}</a-descriptions-item>
|
<a-descriptions-item label="计划费用 ">{{formParam.expense}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="应发费用 ">"应发费用(未命名)"</a-descriptions-item>
|
<a-descriptions-item label="应发费用 ">{{formParam.payableExpense}}</a-descriptions-item>
|
||||||
|
|
||||||
<a-descriptions-item label="状态">{{formParam.status=="A10"?'待审核' :formParam.status=="A20"?'已提交':formParam.status== "A30" ?'审核中':formParam.status== "E10" ?'审核打回':formParam.status=="S20"?'审核通过':''}}</a-descriptions-item>
|
<a-descriptions-item label="状态">{{formParam.status=="A10"?'待审核' :formParam.status=="A20"?'已提交':formParam.status== "A30" ?'审核中':formParam.status== "E10" ?'审核打回':formParam.status=="S20"?'审核通过':''}}</a-descriptions-item>
|
||||||
<a-descriptions-item label="备注 ">{{formParam.remark}}</a-descriptions-item>
|
<a-descriptions-item label="备注 ">{{formParam.remark}}</a-descriptions-item>
|
||||||
@@ -176,13 +175,13 @@
|
|||||||
</div>
|
</div>
|
||||||
<a-form style="margin-left:20px; margin-top:10px ">
|
<a-form style="margin-left:20px; margin-top:10px ">
|
||||||
<a-form-item label="审批" >
|
<a-form-item label="审批" >
|
||||||
<a-radio-group v-model:value="formParamstatues.shenpi">
|
<a-radio-group v-model:value="formParamstatues.status">
|
||||||
<a-radio value="0">同意</a-radio>
|
<a-radio value="S20">同意</a-radio>
|
||||||
<a-radio value="1">拒绝</a-radio>
|
<a-radio value="E10">拒绝</a-radio>
|
||||||
</a-radio-group>
|
</a-radio-group>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item label="备注">
|
<a-form-item label="备注">
|
||||||
<a-textarea v-model:value="formParam.remark"
|
<a-textarea v-model:value="formParamstatues.remark"
|
||||||
style="width: 90%; height: 100px; border-radius: 8px ;" placeholder="一旦拒绝 备注变为必填" />
|
style="width: 90%; height: 100px; border-radius: 8px ;" placeholder="一旦拒绝 备注变为必填" />
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-form>
|
</a-form>
|
||||||
@@ -214,7 +213,8 @@
|
|||||||
} from '@ant-design/icons-vue';
|
} from '@ant-design/icons-vue';
|
||||||
import ProjectManager from "@/components/project/ProjectManagerNew";
|
import ProjectManager from "@/components/project/ProjectManagerNew";
|
||||||
import {getPayRollPlace} from "../../api/Lecturer";
|
import {getPayRollPlace} from "../../api/Lecturer";
|
||||||
import {getTeacherFeeList,getTeacherFeeDetail,addTeacherFee ,updateTeacherFee,updateStatusSubmit,updateStatusWithDraw,getTrainOrg,getTeacherLevel} from "../../api/lecturerFeeManagement";import { getTeacherExpertise,getTeacherSystemList } from "../../api/Lecturer";
|
import {getTeacherFeeList,getTeacherFeeDetail,getTeacherFeeApprovalList ,updateTeacherFee,updateStatusSubmit,approveTeacherFee,getTrainOrg,getTeacherLevel} from "../../api/lecturerFeeManagement";
|
||||||
|
import { getTeacherExpertise,getTeacherSystemList } from "../../api/Lecturer";
|
||||||
// lecturerFeeManagement
|
// lecturerFeeManagement
|
||||||
// import {getProjSt} from "../../api/indexProjStu";
|
// import {getProjSt} from "../../api/indexProjStu";
|
||||||
// import AddTeacher from "../../components/drawers/project/AddTeacher"
|
// import AddTeacher from "../../components/drawers/project/AddTeacher"
|
||||||
@@ -257,7 +257,9 @@
|
|||||||
defaultTeachingTime:"0",
|
defaultTeachingTime:"0",
|
||||||
},
|
},
|
||||||
formParamstatues:{
|
formParamstatues:{
|
||||||
shenpi:'0'
|
status:'S20',
|
||||||
|
remark: null,
|
||||||
|
kid:null,
|
||||||
},
|
},
|
||||||
searchParam: {
|
searchParam: {
|
||||||
teacherNo:null,
|
teacherNo:null,
|
||||||
@@ -312,8 +314,8 @@
|
|||||||
let array = [];
|
let array = [];
|
||||||
arr.map((value) => {
|
arr.map((value) => {
|
||||||
let obj = {
|
let obj = {
|
||||||
value: value.id,
|
value: value.kid,
|
||||||
label: value.name,
|
label: value.systemName,
|
||||||
};
|
};
|
||||||
array.push(obj);
|
array.push(obj);
|
||||||
});
|
});
|
||||||
@@ -592,8 +594,6 @@
|
|||||||
])
|
])
|
||||||
//列表数据
|
//列表数据
|
||||||
const tableData = ref([
|
const tableData = ref([
|
||||||
|
|
||||||
|
|
||||||
])
|
])
|
||||||
// 搜索
|
// 搜索
|
||||||
const searchSubmit = () => {
|
const searchSubmit = () => {
|
||||||
@@ -643,80 +643,18 @@
|
|||||||
state.teacherdialogtitle = '添加讲师费'
|
state.teacherdialogtitle = '添加讲师费'
|
||||||
|
|
||||||
}
|
}
|
||||||
//修改讲师费信息弹窗
|
|
||||||
const handleModify = (record) => {
|
|
||||||
state.teacherdialog1 = 0
|
|
||||||
state.teachingdialog = true;
|
|
||||||
state.teacherdialogtitle = '修改信息'
|
|
||||||
state.kid= record.kid
|
|
||||||
TeacherSystem()
|
|
||||||
}
|
|
||||||
//保存
|
|
||||||
const createTeacherDialog = () => {
|
|
||||||
state.formParam.teachingDate= state.formParam.teachingDate!==null? dayjs(new Date(state.formParam.teachingDate).getTime()).format("YYYY-MM-DD"): "",
|
|
||||||
console.log(state.formParam);
|
|
||||||
if (state.formParam.kid != undefined) {
|
|
||||||
updateTeacherFee (state.formParam).then(response => {
|
|
||||||
message.success("修改成功");
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
addTeacherFee(state.formParam)
|
|
||||||
.then((res) => {
|
|
||||||
message.success("保存成功");
|
|
||||||
}).catch((err) => {
|
|
||||||
console.log(err);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
state.teachingdialog = false;
|
|
||||||
getTableDate();
|
|
||||||
};
|
|
||||||
//删除弹窗
|
|
||||||
// const deleteModal = (record) => {
|
|
||||||
// state.deleteInTeacherdialog = true
|
|
||||||
// state.delTeacherId = record.id
|
|
||||||
// };
|
|
||||||
//修改状态窗口
|
//修改状态窗口
|
||||||
const handleOperate = (record) => {
|
const handleOperate = (record) => {
|
||||||
state.handleOperate1=null
|
|
||||||
state.handleOperate1 = record.status
|
|
||||||
state.editTeacher = true
|
state.editTeacher = true
|
||||||
state.kid= record.kid
|
state.formParamstatues.kid= record.kid
|
||||||
};
|
};
|
||||||
// //确认删除
|
//提交
|
||||||
// const closeDeleteTeacher=()=>{
|
|
||||||
// //调用删除接口
|
|
||||||
// deleteInTeacher(state.delTeacherId).then((res)=>{
|
|
||||||
// if(res.data.code == 200 ){
|
|
||||||
// // message.success("删除成功");
|
|
||||||
// state.deleteInTeacherdialog = false
|
|
||||||
// getTableDate();
|
|
||||||
// }
|
|
||||||
// })
|
|
||||||
// }
|
|
||||||
//提交撤回状态
|
|
||||||
const closehandleOperate= ()=>{
|
const closehandleOperate= ()=>{
|
||||||
//调用接口
|
approveTeacherFee(state.formParamstatues).then((res) => {
|
||||||
let ids ={
|
message.success("审批成功");
|
||||||
kid : state.kid
|
|
||||||
}
|
|
||||||
console.log( state.handleOperate1)
|
|
||||||
console.log( state.handleOperate1 === 'A10');
|
|
||||||
if ( state.handleOperate1 === 'A10'){
|
|
||||||
updateStatusSubmit(ids).then((res) => {
|
|
||||||
message.success("提交成功");
|
|
||||||
state.editTeacher = false
|
|
||||||
getTableDate();
|
|
||||||
console.log(111);
|
|
||||||
})
|
|
||||||
}
|
|
||||||
else if( state.handleOperate1 === 'A20'){
|
|
||||||
updateStatusWithDraw(ids).then((res) => {
|
|
||||||
message.success("撤回成功");
|
|
||||||
state.editTeacher = false
|
state.editTeacher = false
|
||||||
getTableDate();
|
getTableDate();
|
||||||
})
|
})
|
||||||
}
|
|
||||||
}
|
}
|
||||||
//取消按钮 清空输入的数据
|
//取消按钮 清空输入的数据
|
||||||
const cancelTeachingDialog = () => {
|
const cancelTeachingDialog = () => {
|
||||||
@@ -727,7 +665,6 @@
|
|||||||
}
|
}
|
||||||
state.deleteInTeacherdialog = false
|
state.deleteInTeacherdialog = false
|
||||||
state.editTeacher = false
|
state.editTeacher = false
|
||||||
state.tagsshow= 1
|
|
||||||
};
|
};
|
||||||
|
|
||||||
//清空数据
|
//清空数据
|
||||||
@@ -756,6 +693,7 @@
|
|||||||
state.teachingdialog = true;
|
state.teachingdialog = true;
|
||||||
state.kid= record.kid
|
state.kid= record.kid
|
||||||
TeacherSystem()
|
TeacherSystem()
|
||||||
|
gettableDataExamine( )
|
||||||
}
|
}
|
||||||
|
|
||||||
//详情
|
//详情
|
||||||
@@ -771,6 +709,12 @@
|
|||||||
}
|
}
|
||||||
const tableDataExamine = ref([
|
const tableDataExamine = ref([
|
||||||
])
|
])
|
||||||
|
const gettableDataExamine = () => {
|
||||||
|
getTeacherFeeApprovalList({kid : state.kid})
|
||||||
|
.then((res) => {
|
||||||
|
tableDataExamine.value = res.data.data.records
|
||||||
|
})
|
||||||
|
};
|
||||||
//二级页面
|
//二级页面
|
||||||
const columnsExamine = ref([
|
const columnsExamine = ref([
|
||||||
{
|
{
|
||||||
@@ -817,23 +761,6 @@
|
|||||||
width: 120,
|
width: 120,
|
||||||
},
|
},
|
||||||
])
|
])
|
||||||
const rules = {
|
|
||||||
name: [{ required: true, message: '讲师不能为空' }],
|
|
||||||
user: [{ required: true, message: '讲师工号不能为空' }],
|
|
||||||
departId: [{ required: true, message: '讲师组织不能为空' }],
|
|
||||||
systemId: [{ required: true, message: '讲师体系不能为空' }],
|
|
||||||
levelId: [{ required: true, message: ' 讲师级别 不能为空' }],
|
|
||||||
payrollPlaceId: [{ required: true, message: '讲师发薪地 不能为空' }],
|
|
||||||
courseName: [{ required: true, message: '费用类型不能为空' }],
|
|
||||||
courseName: [{ required: true, message: '课程名称不能为空' }],
|
|
||||||
beginTime: [{ required: true, message: '授课日期不能为空' }],
|
|
||||||
defaultTeachingTime: [{ required: true, message: ' 授课时长不能为空' }],
|
|
||||||
studys: [{ required: true, message: ' 参训人数不能为空' }],
|
|
||||||
score: [{ required: true, message: ' 评分不能为空' }],
|
|
||||||
score: [{ required: true, message: '课酬基准 不能为空' }],
|
|
||||||
expense: [{ required: true, message: '计划费用不能为空' }],
|
|
||||||
|
|
||||||
}
|
|
||||||
//导出功能
|
//导出功能
|
||||||
const handleExport = ()=>{
|
const handleExport = ()=>{
|
||||||
window.open (
|
window.open (
|
||||||
@@ -853,7 +780,8 @@
|
|||||||
}
|
}
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
rules,handleDate,
|
gettableDataExamine,
|
||||||
|
handleDate,
|
||||||
trainOrglist,
|
trainOrglist,
|
||||||
trainOrglista,
|
trainOrglista,
|
||||||
getTeacherExpertiseList,
|
getTeacherExpertiseList,
|
||||||
@@ -879,10 +807,6 @@
|
|||||||
cancelTeachingDialog,
|
cancelTeachingDialog,
|
||||||
handleLook,
|
handleLook,
|
||||||
cancel,
|
cancel,
|
||||||
// deleteModal,
|
|
||||||
handleModify,
|
|
||||||
// closeDeleteTeacher,
|
|
||||||
createTeacherDialog,
|
|
||||||
handleOperate,
|
handleOperate,
|
||||||
closehandleOperate,
|
closehandleOperate,
|
||||||
getTableDate, //list接口数据调用
|
getTableDate, //list接口数据调用
|
||||||
|
|||||||
@@ -437,8 +437,8 @@
|
|||||||
let array = [];
|
let array = [];
|
||||||
arr.map((value) => {
|
arr.map((value) => {
|
||||||
let obj = {
|
let obj = {
|
||||||
value: value.id,
|
value: value.kid,
|
||||||
label: value.name,
|
label: value.systemName,
|
||||||
};
|
};
|
||||||
array.push(obj);
|
array.push(obj);
|
||||||
});
|
});
|
||||||
|
|||||||
732
src/views/lecturer/LecturerSystem.vue
Normal file
732
src/views/lecturer/LecturerSystem.vue
Normal file
@@ -0,0 +1,732 @@
|
|||||||
|
<!-- 讲师体系 -->
|
||||||
|
<template>
|
||||||
|
<!-- 搜索框及按钮 -->
|
||||||
|
<div class="filter" style="min-width: 1380px; margin: 20px;">
|
||||||
|
<a-form layout="inline">
|
||||||
|
<a-form-item class="select">
|
||||||
|
<div style="width: 276px; height: 40px; border-radius: 8px">
|
||||||
|
<ProjectManager v-model:value="searchParam.userNo" v-model:name="searchParam.name" placeholder="请输入工号/讲师姓名进行检索"
|
||||||
|
@onChange="managerChange" mode="multiple"></ProjectManager>
|
||||||
|
</div>
|
||||||
|
</a-form-item>
|
||||||
|
<div style="display: flex; margin-bottom: 20px">
|
||||||
|
<a-button @click="searchSubmit()" type="primary" class="resetbtn">查询 </a-button>
|
||||||
|
<!-- <div class="btn btn1" @click="searchReset" style="background:rgba(64, 158, 255, 0);" > -->
|
||||||
|
<!-- <div class="search"></div> -->
|
||||||
|
<a-button class="resetbtn " @click="searchReset">重置</a-button>
|
||||||
|
</div>
|
||||||
|
</a-form>
|
||||||
|
<div style="width: 100%;"></div>
|
||||||
|
<div style="display: flex; margin-bottom: 20px">
|
||||||
|
<a-button @click="addTeacher()" type="primary" class="resetbtn" style="width: 130px;">
|
||||||
|
<FolderAddOutlined /> 新增讲师体系
|
||||||
|
</a-button>
|
||||||
|
</div>
|
||||||
|
<a-table style="border: 1px solid #f2f6fe" :columns="columns" :data-source="tableData" :loading="tableLoading"
|
||||||
|
@expand="expandTable" :pagination="false">
|
||||||
|
<template #bodyCell="{ record, column }">
|
||||||
|
<template v-if="column.key === 'operation'">
|
||||||
|
<a-space>
|
||||||
|
<a-button type="link" @click="() => handleModify(record, String(record.courseform))">编辑</a-button>
|
||||||
|
<a-button type="link" @click="() => deleteModal(record, String(record.courseform))">删除</a-button>
|
||||||
|
</a-space>
|
||||||
|
</template>
|
||||||
|
</template>
|
||||||
|
</a-table>
|
||||||
|
<!-- 翻页 -->
|
||||||
|
<div class="tableBox ">
|
||||||
|
<div style="float: right;">
|
||||||
|
<a-pagination
|
||||||
|
v-if="tableDataTotal > 10"
|
||||||
|
:showSizeChanger="false"
|
||||||
|
:showQuickJumper="true"
|
||||||
|
:hideOnSinglePage="true"
|
||||||
|
:pageSize="searchParam.pageSize"
|
||||||
|
:current="searchParam.pageNo"
|
||||||
|
:total="tableDataTotal"
|
||||||
|
class="pagination"
|
||||||
|
@change="changePagination"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 删除功能弹窗 -->
|
||||||
|
<div>
|
||||||
|
<a-modal v-model:visible="deleteInTeacherdialog" :footer="null" :closable="close" centered="true">
|
||||||
|
<div class="delete">
|
||||||
|
<div class="del_header"></div>
|
||||||
|
<div class="del_main">
|
||||||
|
<div class="header">
|
||||||
|
<div class="icon1"></div>
|
||||||
|
<span>提示</span>
|
||||||
|
</div>
|
||||||
|
<div class="body">
|
||||||
|
<span>您确定要删除当前组织吗</span>
|
||||||
|
</div>
|
||||||
|
<div class="del_btnbox">
|
||||||
|
<div class="del_btn btn2" @click="cancelTeacherDialog" style="margin-right: 32px">
|
||||||
|
<div class="btnText">取消</div>
|
||||||
|
</div>
|
||||||
|
<div class="del_btn btn2" @click="closeDeleteTeacher">
|
||||||
|
<div class="btnText">确定</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</a-modal>
|
||||||
|
</div>
|
||||||
|
<!-- 抽屉 -->
|
||||||
|
<a-drawer v-model:visible="teacherdialog" placement="right" @closa="cancelTeacherDialog" :maskClosable="true"
|
||||||
|
width="60%" :title="teacherdialogtitle">
|
||||||
|
<a-form :model="formParam" :rules="rules" layout="vertical">
|
||||||
|
<a-row :gutter="16">
|
||||||
|
<a-col :span="24">
|
||||||
|
<span class="line"></span><span>讲师体系基本信息</span>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
<a-row :gutter="16">
|
||||||
|
<a-col :span="12">
|
||||||
|
<a-form-item label="归属组织编号" name="trainorgId">
|
||||||
|
<a-input disabled v-model:value="formParam.trainorgId" class="draitem" placeholder="" allowClear showSearch>
|
||||||
|
</a-input>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="12">
|
||||||
|
<a-form-item label="归属组织名称" name="trainorgName">
|
||||||
|
<a-input v-model:value="formParam.trainorgName" class="draitem" placeholder="" allowClear showSearch>
|
||||||
|
</a-input>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
<!-- 备注 remark -->
|
||||||
|
<a-row :gutter="16">
|
||||||
|
<a-col :span="24">
|
||||||
|
<a-form-item label="备注">
|
||||||
|
<a-textarea v-model:value="formParam.remark" showCount :maxlength="200"
|
||||||
|
style="width: 100%; height: 100px; border-radius: 8px" placeholder="请输入" />
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
<a-row :gutter="16">
|
||||||
|
<a-col :span="24">
|
||||||
|
<span class="line"></span><span>等级信息</span>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
<a-row :gutter="16">
|
||||||
|
<a-col :span="4">
|
||||||
|
<a-form-item label="等级名称" name="sysName">
|
||||||
|
<a-input v-model:value="formParam.sysName" class="draitem" placeholder="" allowClear showSearch>
|
||||||
|
</a-input>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="4">
|
||||||
|
<a-form-item label="等级课时" name="sysTime">
|
||||||
|
<a-input v-model:value="formParam.sysTime " class="draitem"
|
||||||
|
placeholder="" allowClear showSearch>
|
||||||
|
</a-input>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="4">
|
||||||
|
<a-form-item label="排序" name="sysNum">
|
||||||
|
<a-input-number id="inputNumber" v-model:value="formParam.sysNum" :min="1" :max="999" class="draitem" />
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="4">
|
||||||
|
<a-form-item label="等级课酬" name="sysRmb">
|
||||||
|
<a-input v-model:value="formParam.sysRmb" class="draitem"
|
||||||
|
placeholder="" allowClear showSearch>
|
||||||
|
</a-input>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="4">
|
||||||
|
<a-form-item label="上线课时" name ="sysTimeB" >
|
||||||
|
<a-input v-model:value="formParam.sysTimeB" class="draitem"
|
||||||
|
placeholder="" allowClear showSearch>
|
||||||
|
</a-input>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
</a-form>
|
||||||
|
<!-- 交互按钮 -->
|
||||||
|
<div :style="{
|
||||||
|
position: 'absolute',
|
||||||
|
right: 0,
|
||||||
|
bottom: 0,
|
||||||
|
width: '100%',
|
||||||
|
borderTop: '1px solid #e9e9e9',
|
||||||
|
padding: '10px 16px',
|
||||||
|
background: '#fff',
|
||||||
|
textAlign: 'right',
|
||||||
|
zIndex: 1,
|
||||||
|
}">
|
||||||
|
<a-button class="drabtn" @click="cancelTeacherDialog">取消</a-button>
|
||||||
|
<a-button class="drabtn" type="primary" @click="createTeacherDialog" :loading="buttonLoading">保存
|
||||||
|
</a-button>
|
||||||
|
</div>
|
||||||
|
</a-drawer>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script lang="jsx">
|
||||||
|
import { reactive, toRefs, ref, watch } from "vue";
|
||||||
|
import {
|
||||||
|
FolderAddOutlined
|
||||||
|
} from '@ant-design/icons-vue';
|
||||||
|
import ProjectManager from "@/components/project/ProjectManagerNew";
|
||||||
|
import { systemList, deleteTrainOrg } from "../../api/organization";
|
||||||
|
export default {
|
||||||
|
name: "LecturerSystem",
|
||||||
|
components: {
|
||||||
|
ProjectManager,
|
||||||
|
FolderAddOutlined,//图标--新增
|
||||||
|
|
||||||
|
},
|
||||||
|
setup() {
|
||||||
|
const state = reactive({
|
||||||
|
tableLoading: false,
|
||||||
|
deleteInTeacherdialog: false,
|
||||||
|
teacherdialog: false,
|
||||||
|
teacherdialogtitle: null,
|
||||||
|
delId: null,
|
||||||
|
searchParam: {
|
||||||
|
trainorgId: null,
|
||||||
|
userNo: null,
|
||||||
|
trainorgName: null,
|
||||||
|
pageNo: "1",
|
||||||
|
pageSize: "10"
|
||||||
|
},
|
||||||
|
formParam: {
|
||||||
|
trainorgId: null,
|
||||||
|
trainorgName: null,
|
||||||
|
remark: null,
|
||||||
|
sysNum:1
|
||||||
|
}
|
||||||
|
})
|
||||||
|
function managerChange(e, l, d, t, orgName) {
|
||||||
|
console.log(e, l);
|
||||||
|
state.searchParam.trainorgId = d;
|
||||||
|
state.searchParam.name = t;
|
||||||
|
state.searchParam.trainorgName = orgName
|
||||||
|
}
|
||||||
|
const columns = ref([
|
||||||
|
{
|
||||||
|
title: '讲师体系编号 ',
|
||||||
|
dataIndex: 'trainorgId',
|
||||||
|
key: 'trainorgId',
|
||||||
|
elipsis: true,
|
||||||
|
align: "center",
|
||||||
|
width: 200,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '归属组织名称 ',
|
||||||
|
dataIndex: 'trainorgName',
|
||||||
|
key: 'trainorgName',
|
||||||
|
elipsis: true, align: "center",
|
||||||
|
width: 600,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '备注 ',
|
||||||
|
dataIndex: 'remark',
|
||||||
|
key: 'remark',
|
||||||
|
elipsis: true, align: "center",
|
||||||
|
width: 800,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '操作 ',
|
||||||
|
dataIndex: 'operation',
|
||||||
|
key: 'operation',
|
||||||
|
elipsis: true,
|
||||||
|
width: 400,
|
||||||
|
align: "right",
|
||||||
|
scopedSlots: { customRender: "action" },
|
||||||
|
},
|
||||||
|
])
|
||||||
|
//列表数据
|
||||||
|
const tableData = ref([
|
||||||
|
// { trainorgId: "讲师体系编号", trainorgName: "讲师体系名称", remark: "备注" }
|
||||||
|
])
|
||||||
|
// List接口数据
|
||||||
|
const getTableDate = (obj) => {
|
||||||
|
state.tableLoading = true
|
||||||
|
let objA = { ...state.searchParam };
|
||||||
|
systemList(objA).then((res) => {
|
||||||
|
tableData.value = res.data.data.records
|
||||||
|
state.tableDataTotal = Number(res.data.data.total);
|
||||||
|
state.tableLoading = false
|
||||||
|
})
|
||||||
|
};
|
||||||
|
getTableDate()
|
||||||
|
// 搜索
|
||||||
|
const searchSubmit = () => {
|
||||||
|
getTableDate();
|
||||||
|
};
|
||||||
|
//重置
|
||||||
|
const searchReset = () => {
|
||||||
|
state.searchParam = {
|
||||||
|
name: null,
|
||||||
|
userNo: null,
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
};
|
||||||
|
getTableDate();
|
||||||
|
};
|
||||||
|
// // 翻页
|
||||||
|
const changePagination = (page, pageSize) => {
|
||||||
|
state.searchParam.pageNo = page;
|
||||||
|
getTableDate();
|
||||||
|
};
|
||||||
|
//删除弹窗
|
||||||
|
const deleteModal = (record) => {
|
||||||
|
state.deleteInTeacherdialog = true
|
||||||
|
state.delId = record.kid
|
||||||
|
};
|
||||||
|
//确认删除
|
||||||
|
const closeDeleteTeacher = () => {
|
||||||
|
//调用删除接口
|
||||||
|
deleteTrainOrg(state.delTeacherId).then((res) => {
|
||||||
|
if (res.data.code == 200) {
|
||||||
|
// message.success("删除成功");
|
||||||
|
state.deleteInTeacherdialog = false
|
||||||
|
getTableDate();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
//取消按钮 清空输入的数据
|
||||||
|
const cancelTeacherDialog = () => {
|
||||||
|
if (state.teacherdialog = true) {
|
||||||
|
state.teacherdialog = false
|
||||||
|
cancel()
|
||||||
|
}
|
||||||
|
state.deleteInTeacherdialog = false
|
||||||
|
state.editTeacher = false
|
||||||
|
};
|
||||||
|
const addTeacher = () => {
|
||||||
|
state.teacherdialog = true,
|
||||||
|
state.teacherdialogtitle = "新增归属组织"
|
||||||
|
}
|
||||||
|
//修改信息弹窗
|
||||||
|
const handleModify = (record) => {
|
||||||
|
state.teacherdialog = true;
|
||||||
|
state.teacherdialogtitle = '修改归属组织'
|
||||||
|
state.delId = record.kid
|
||||||
|
TeacherSystem()
|
||||||
|
}
|
||||||
|
const cancel = () => {
|
||||||
|
state.formParam = {
|
||||||
|
trainorgId: null,
|
||||||
|
trainorgName: null,
|
||||||
|
remark: null
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//保存
|
||||||
|
const createTeacherDialog = () => {
|
||||||
|
console.log(state.formParam);
|
||||||
|
if (state.formParam.kid != undefined) {
|
||||||
|
updateInTeacher(state.formParam).then(response => {
|
||||||
|
message.success("修改成功");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
insertTeacher(state.formParam)
|
||||||
|
.then((res) => {
|
||||||
|
message.success("保存成功");
|
||||||
|
}).catch((err) => {
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
state.teacherdialog = false;
|
||||||
|
getTableDate();
|
||||||
|
};
|
||||||
|
const rules = {
|
||||||
|
trainorgId: [{ required: true, message: '讲师体系编号不能为空' }],
|
||||||
|
trainorgName: [{ required: true, message: '讲师体系名称不能为空' }],
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
...toRefs(state),
|
||||||
|
rules,
|
||||||
|
managerChange,
|
||||||
|
columns,
|
||||||
|
tableData,
|
||||||
|
getTableDate,
|
||||||
|
searchSubmit,
|
||||||
|
searchReset,
|
||||||
|
deleteModal,
|
||||||
|
cancelTeacherDialog,
|
||||||
|
addTeacher,
|
||||||
|
handleModify,
|
||||||
|
closeDeleteTeacher,
|
||||||
|
changePagination
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.add_content {
|
||||||
|
width: 40px;
|
||||||
|
height: 40px;
|
||||||
|
cursor: pointer;
|
||||||
|
border-radius: 50%;
|
||||||
|
background-color: #4ea6ff;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 40px;
|
||||||
|
color: #ffffff;
|
||||||
|
font-size: 26px;
|
||||||
|
}
|
||||||
|
|
||||||
|
//导出按钮icon
|
||||||
|
.daochu {
|
||||||
|
width: 16px;
|
||||||
|
height: 18px;
|
||||||
|
background-image: url("../../assets/images/coursewareManage/export1.png");
|
||||||
|
}
|
||||||
|
|
||||||
|
//弹窗内详情样式
|
||||||
|
.display1 {
|
||||||
|
display: inline-block;
|
||||||
|
width: 200px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// .display0{
|
||||||
|
// display:inline-block ;
|
||||||
|
// width:200px ;
|
||||||
|
// text-align:center }
|
||||||
|
//弹窗内确认取消按钮布局
|
||||||
|
.del_btnbox {
|
||||||
|
display: flex;
|
||||||
|
margin: 30px auto;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
.del_btn {
|
||||||
|
width: 100px;
|
||||||
|
height: 40px;
|
||||||
|
background: rgba(64, 158, 255, 0);
|
||||||
|
border-radius: 8px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
flex-shrink: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
.btnText {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
line-height: 40px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn1 {
|
||||||
|
border: 1px solid rgba(64, 158, 255, 1);
|
||||||
|
color: #4ea6ff;
|
||||||
|
margin-right: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn2 {
|
||||||
|
background-color: #4ea6ff;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-table-cell-fix-right {
|
||||||
|
width: 300px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-table-tbody>tr>td {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.InsideLecturer {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
.filter {
|
||||||
|
margin-left: 38px;
|
||||||
|
margin-right: 38px;
|
||||||
|
margin-top: 30px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
|
||||||
|
.select {
|
||||||
|
margin-right: 20px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.delete {
|
||||||
|
z-index: 9999;
|
||||||
|
width: 424px;
|
||||||
|
background: #ffffff;
|
||||||
|
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.21);
|
||||||
|
border-radius: 4px;
|
||||||
|
position: absolute;
|
||||||
|
left: 30%;
|
||||||
|
top: 10%;
|
||||||
|
// transform: translate(-50%, -50%);
|
||||||
|
|
||||||
|
.del_header {
|
||||||
|
position: absolute;
|
||||||
|
width: calc(100%);
|
||||||
|
height: 40px;
|
||||||
|
background: linear-gradient(rgba(78, 166, 255, 0.2) 0%,
|
||||||
|
rgba(78, 166, 255, 0) 100%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.del_main {
|
||||||
|
width: 100%;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
.header {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
padding-top: 20px;
|
||||||
|
padding-left: 26px;
|
||||||
|
font-size: 16px;
|
||||||
|
|
||||||
|
.del-icon {
|
||||||
|
width: 16px;
|
||||||
|
height: 16px;
|
||||||
|
margin-right: 10px;
|
||||||
|
background-image: url(@/assets/images/coursewareManage/notice.png);
|
||||||
|
background-size: 100% 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon {
|
||||||
|
width: 16px;
|
||||||
|
height: 16px;
|
||||||
|
margin-right: 10px;
|
||||||
|
background-image: url(@/assets/images/coursewareManage/QR.png);
|
||||||
|
background-size: 100% 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.close_exit {
|
||||||
|
position: absolute;
|
||||||
|
right: 42px;
|
||||||
|
cursor: pointer;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
background-image: url(@/assets/images/coursewareManage/close.png);
|
||||||
|
background-size: 100% 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.body {
|
||||||
|
width: 100%;
|
||||||
|
margin: 34px auto 56px auto;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.del_btnbox {
|
||||||
|
display: flex;
|
||||||
|
margin: 30px auto;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
.del_btn {
|
||||||
|
width: 100px;
|
||||||
|
height: 40px;
|
||||||
|
background: rgba(64, 158, 255, 0);
|
||||||
|
border-radius: 8px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin-right: 14px;
|
||||||
|
flex-shrink: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
.btnText {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
line-height: 40px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn1 {
|
||||||
|
border: 1px solid rgba(64, 158, 255, 1);
|
||||||
|
color: #4ea6ff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn2 {
|
||||||
|
background-color: #4ea6ff;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.CreatePath {
|
||||||
|
.out {
|
||||||
|
z-index: 9999;
|
||||||
|
display: block;
|
||||||
|
position: absolute;
|
||||||
|
top: 90px;
|
||||||
|
width: 1080px !important;
|
||||||
|
height: 650px;
|
||||||
|
overflow: auto;
|
||||||
|
background-color: #fff;
|
||||||
|
|
||||||
|
box-shadow: 0 0 10px rgba(118, 136, 166, 0.21);
|
||||||
|
left: 50%;
|
||||||
|
top: 300px;
|
||||||
|
transform: translate(-50%, -50%);
|
||||||
|
|
||||||
|
.top {
|
||||||
|
width: 100%;
|
||||||
|
height: 68px;
|
||||||
|
|
||||||
|
background: linear-gradient(rgba(78, 166, 255, 0.2) 0%,
|
||||||
|
rgba(78, 166, 255, 0) 100%);
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
.topimg {
|
||||||
|
width: 18px;
|
||||||
|
height: 18px;
|
||||||
|
margin-left: 27px;
|
||||||
|
margin-top: -2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.topc {
|
||||||
|
color: #000000;
|
||||||
|
font-size: 16px;
|
||||||
|
margin-left: 8px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.mid {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
background-color: #fff;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
.d {
|
||||||
|
// margin-top: 8px;
|
||||||
|
// color: #ff4e4e;
|
||||||
|
margin-left: -5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重置样式
|
||||||
|
.resetbtn {
|
||||||
|
width: 100px;
|
||||||
|
height: 40px;
|
||||||
|
border-radius: 8px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin-right: 14px;
|
||||||
|
flex-shrink: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
//展开收起样式
|
||||||
|
.moreidbtn {
|
||||||
|
border: none;
|
||||||
|
color: #4ea6ff;
|
||||||
|
width: 80px
|
||||||
|
}
|
||||||
|
|
||||||
|
//小竖线
|
||||||
|
.line {
|
||||||
|
float: left;
|
||||||
|
width: 3px;
|
||||||
|
height: 25px;
|
||||||
|
background: #4ea6ff;
|
||||||
|
border-radius: 30%;
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
//抽屉功能
|
||||||
|
.drawaer
|
||||||
|
|
||||||
|
/* 改变所有 a-tree-select 输入框的高度 */
|
||||||
|
.ant-tree-select .ant-select-selection {
|
||||||
|
height: 40px;
|
||||||
|
line-height: 40px;
|
||||||
|
/* 确保文字垂直居中 */
|
||||||
|
}
|
||||||
|
|
||||||
|
.draitem {
|
||||||
|
width: 100%;
|
||||||
|
height: 40px !important;
|
||||||
|
border-radius: 8px;
|
||||||
|
line-height: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.drabtn {
|
||||||
|
height: 40px;
|
||||||
|
width: 80px;
|
||||||
|
border-radius: 8px;
|
||||||
|
margin-right: 20px
|
||||||
|
}
|
||||||
|
|
||||||
|
::v-deep .ant-select:not(.ant-select-customize-input) .ant-select-selector {
|
||||||
|
border-radius: 8px;
|
||||||
|
height: 40px;
|
||||||
|
line-height: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-col-12 {
|
||||||
|
height: 80px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item_inp {
|
||||||
|
flex: 1;
|
||||||
|
text-align: center;
|
||||||
|
|
||||||
|
.i_upload_img {
|
||||||
|
width: 100px;
|
||||||
|
height: 100px;
|
||||||
|
border-radius: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.i_upload {
|
||||||
|
width: 100px;
|
||||||
|
height: 100px;
|
||||||
|
border: 1px solid #4ea6ff;
|
||||||
|
border-radius: 50%;
|
||||||
|
text-align: center;
|
||||||
|
align-items: center;
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
.addimg {
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
.heng {
|
||||||
|
position: absolute;
|
||||||
|
top: 50px;
|
||||||
|
left: 25px;
|
||||||
|
width: 50px;
|
||||||
|
border: 1px solid #4ea6ff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.shu {
|
||||||
|
position: absolute;
|
||||||
|
top: 25px;
|
||||||
|
left: 50px;
|
||||||
|
height: 50px;
|
||||||
|
border: 1px solid #4ea6ff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-upload.ant-upload-select-picture-card {
|
||||||
|
border: 0px !important;
|
||||||
|
border-radius: 50% !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-upload.ant-upload-select-picture-card {
|
||||||
|
border: 0px !important;
|
||||||
|
border-radius: 50% !important;
|
||||||
|
}</style>
|
||||||
@@ -82,7 +82,7 @@
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<CostDetails v-model:visible="open">
|
<CostDetails v-model:visible="opendrawer" :teacherNo="teacherNo">
|
||||||
</CostDetails>
|
</CostDetails>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -107,6 +107,7 @@ export default {
|
|||||||
setup() {
|
setup() {
|
||||||
const router=useRouter();
|
const router=useRouter();
|
||||||
const { query: { id }} = useRoute();
|
const { query: { id }} = useRoute();
|
||||||
|
const opendrawer=ref(false)
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
open:true,
|
open:true,
|
||||||
id,
|
id,
|
||||||
@@ -142,6 +143,7 @@ export default {
|
|||||||
teacherNo: null,
|
teacherNo: null,
|
||||||
teachingDate: null
|
teachingDate: null
|
||||||
},
|
},
|
||||||
|
teacherNo:null,
|
||||||
querytableFee: {
|
querytableFee: {
|
||||||
teacherNo: null,
|
teacherNo: null,
|
||||||
teachingDate: null,
|
teachingDate: null,
|
||||||
@@ -312,14 +314,7 @@ export default {
|
|||||||
getOrganizationLista()
|
getOrganizationLista()
|
||||||
//表格内查看数据操作
|
//表格内查看数据操作
|
||||||
const handleLook = (record) => {
|
const handleLook = (record) => {
|
||||||
let id = record.summaryDate
|
opendrawer.value=true
|
||||||
router.push({ path: '/MonthlyStatistics', query: { id } })
|
|
||||||
// state.teacherdialog = true;
|
|
||||||
// state.teacherdialogtitle = '讲师费月度统计详情'
|
|
||||||
// state.summaryDate = record.summaryDate;
|
|
||||||
// state.resbgTxt = record.resbgTxt
|
|
||||||
// state.queryFeeMonthly.summaryDate = record.summaryDate
|
|
||||||
// TeacherSystem()
|
|
||||||
}
|
}
|
||||||
const changePagination = (page, pageSize) => {
|
const changePagination = (page, pageSize) => {
|
||||||
state.searchParam.pageNo = page;
|
state.searchParam.pageNo = page;
|
||||||
|
|||||||
702
src/views/lecturer/Organization.vue
Normal file
702
src/views/lecturer/Organization.vue
Normal file
@@ -0,0 +1,702 @@
|
|||||||
|
<!-- 归属组织 -->
|
||||||
|
<template>
|
||||||
|
<!-- 搜索框及按钮 -->
|
||||||
|
<div class="filter" style="min-width: 1380px; margin: 20px;" >
|
||||||
|
<a-form layout="inline">
|
||||||
|
<a-form-item class="select">
|
||||||
|
<div style="width: 276px; height: 40px; border-radius: 8px" >
|
||||||
|
<ProjectManager v-model:value="searchParam.userNo"
|
||||||
|
v-model:name="searchParam.name"
|
||||||
|
placeholder="请输入工号/讲师姓名进行检索"
|
||||||
|
@onChange="managerChange" mode="multiple"></ProjectManager>
|
||||||
|
</div>
|
||||||
|
</a-form-item>
|
||||||
|
<div style="display: flex; margin-bottom: 20px">
|
||||||
|
<a-button @click="searchSubmit()" type="primary" class="resetbtn">查询 </a-button>
|
||||||
|
<!-- <div class="btn btn1" @click="searchReset" style="background:rgba(64, 158, 255, 0);" > -->
|
||||||
|
<!-- <div class="search"></div> -->
|
||||||
|
<a-button class="resetbtn " @click="searchReset">重置</a-button>
|
||||||
|
</div>
|
||||||
|
</a-form>
|
||||||
|
<div style="width: 100%;"></div>
|
||||||
|
<div style="display: flex; margin-bottom: 20px">
|
||||||
|
<a-button @click="addTeacher()" type="primary" class="resetbtn" style="width: 130px;">
|
||||||
|
<FolderAddOutlined /> 新增归属组织
|
||||||
|
</a-button>
|
||||||
|
</div>
|
||||||
|
<a-table style="border: 1px solid #f2f6fe" :columns="columns" :data-source="tableData" :loading="tableLoading"
|
||||||
|
@expand="expandTable" :pagination="false">
|
||||||
|
<template #bodyCell="{ record, column }">
|
||||||
|
<template v-if="column.key === 'operation'">
|
||||||
|
<a-space >
|
||||||
|
<a-button type="link" @click="() => handleModify(record, String(record.courseform))">编辑</a-button>
|
||||||
|
<a-button type="link" @click="() => deleteModal(record, String(record.courseform))">删除</a-button>
|
||||||
|
</a-space>
|
||||||
|
</template>
|
||||||
|
</template>
|
||||||
|
</a-table>
|
||||||
|
<div class="tableBox ">
|
||||||
|
<div style="float: right;">
|
||||||
|
|
||||||
|
<a-pagination
|
||||||
|
v-if="tableDataTotal > 10"
|
||||||
|
:showSizeChanger="false"
|
||||||
|
:showQuickJumper="true"
|
||||||
|
:hideOnSinglePage="true"
|
||||||
|
:pageSize="searchParam.pageSize"
|
||||||
|
:current="searchParam.pageNo"
|
||||||
|
:total="tableDataTotal"
|
||||||
|
class="pagination"
|
||||||
|
@change="changePagination"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 删除功能弹窗 -->
|
||||||
|
<div>
|
||||||
|
<a-modal v-model:visible="deleteInTeacherdialog" :footer="null" :closable="close"
|
||||||
|
centered="true">
|
||||||
|
<div class="delete">
|
||||||
|
<div class="del_header"></div>
|
||||||
|
<div class="del_main">
|
||||||
|
<div class="header">
|
||||||
|
<div class="icon1"></div>
|
||||||
|
<span>提示</span>
|
||||||
|
</div>
|
||||||
|
<div class="body">
|
||||||
|
<span>您确定要删除当前组织吗</span>
|
||||||
|
</div>
|
||||||
|
<div class="del_btnbox">
|
||||||
|
<div class="del_btn btn2" @click="cancelTeacherDialog" style="margin-right: 32px">
|
||||||
|
<div class="btnText">取消</div>
|
||||||
|
</div>
|
||||||
|
<div class="del_btn btn2" @click="closeDeleteTeacher">
|
||||||
|
<div class="btnText">确定</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</a-modal>
|
||||||
|
</div>
|
||||||
|
<!-- 抽屉 -->
|
||||||
|
<a-drawer v-model:visible="teacherdialog" placement="right" @closa="cancelTeacherDialog" :maskClosable="true"
|
||||||
|
width="60%" :title="teacherdialogtitle">
|
||||||
|
<a-form :model="formParam" :rules="rules" layout="vertical">
|
||||||
|
<a-row :gutter="16">
|
||||||
|
<a-col :span="24">
|
||||||
|
<span class="line"></span><span>讲师体系基本信息</span>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
<a-row :gutter="16">
|
||||||
|
<a-col :span="12">
|
||||||
|
<a-form-item label="归属组织编号" name="trainorgId">
|
||||||
|
<a-input disabled v-model:value="formParam.trainorgId" class="draitem"
|
||||||
|
placeholder="" allowClear showSearch>
|
||||||
|
</a-input>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="12">
|
||||||
|
<a-form-item label="归属组织名称" name="trainorgName">
|
||||||
|
<a-input v-model:value="formParam.trainorgName" class="draitem"
|
||||||
|
placeholder="" allowClear showSearch>
|
||||||
|
</a-input>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
<a-form-item label="选中组织">
|
||||||
|
<a-row :gutter="50" style="margin-bottom: 10px;">
|
||||||
|
<a-col :span="2">
|
||||||
|
<a-tag color="blue" style="line-height: 40px; ">管理业务</a-tag>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="20">
|
||||||
|
<div class="add_content" @click="addContentData" >+</div>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
</a-form-item>
|
||||||
|
<!-- 备注 remark -->
|
||||||
|
<a-row :gutter="16">
|
||||||
|
<a-col :span="24">
|
||||||
|
<a-form-item label="备注">
|
||||||
|
<a-textarea v-model:value="formParam.remark" showCount :maxlength="200"
|
||||||
|
style="width: 100%; height: 100px; border-radius: 8px" placeholder="请输入" />
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
</a-form>
|
||||||
|
<!-- 交互按钮 -->
|
||||||
|
<div
|
||||||
|
:style="{
|
||||||
|
position: 'absolute',
|
||||||
|
right: 0,
|
||||||
|
bottom: 0,
|
||||||
|
width: '100%',
|
||||||
|
borderTop: '1px solid #e9e9e9',
|
||||||
|
padding: '10px 16px',
|
||||||
|
background: '#fff',
|
||||||
|
textAlign: 'right',
|
||||||
|
zIndex: 1,
|
||||||
|
} "
|
||||||
|
>
|
||||||
|
<a-button class="drabtn" @click="cancelTeacherDialog" >取消</a-button>
|
||||||
|
<a-button class="drabtn" type="primary" @click="createTeacherDialog" :loading="buttonLoading">保存
|
||||||
|
</a-button>
|
||||||
|
</div>
|
||||||
|
</a-drawer>
|
||||||
|
<AddContent v-model:showContent="showContent" @AddContentList="AddContentList" />
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script lang="jsx">
|
||||||
|
import { reactive, toRefs, ref, watch } from "vue";
|
||||||
|
import {
|
||||||
|
FolderAddOutlined
|
||||||
|
} from '@ant-design/icons-vue';
|
||||||
|
import ProjectManager from "@/components/project/ProjectManagerNew";
|
||||||
|
import { queryTrainOrg,deleteTrainOrg} from "../../api/organization";
|
||||||
|
import AddContent from "../../components/project/AddContent.vue"
|
||||||
|
export default{
|
||||||
|
name:"organization",
|
||||||
|
components: {
|
||||||
|
ProjectManager,
|
||||||
|
FolderAddOutlined,//图标--新增
|
||||||
|
AddContent
|
||||||
|
|
||||||
|
},
|
||||||
|
setup() {
|
||||||
|
const state = reactive({
|
||||||
|
|
||||||
|
showContent: false,
|
||||||
|
tableLoading:false,
|
||||||
|
deleteInTeacherdialog:false,
|
||||||
|
teacherdialog:false,
|
||||||
|
teacherdialogtitle:null,
|
||||||
|
delId:null,
|
||||||
|
searchParam: {
|
||||||
|
trainorgId: null,
|
||||||
|
userNo:null,
|
||||||
|
trainorgName:null,
|
||||||
|
pageNo: "1",
|
||||||
|
pageSize: "10"
|
||||||
|
},
|
||||||
|
formParam:{
|
||||||
|
trainorgId:null,
|
||||||
|
trainorgName:null,
|
||||||
|
remark:null
|
||||||
|
}
|
||||||
|
})
|
||||||
|
function managerChange(e, l, d, t, orgName) {
|
||||||
|
console.log(e, l);
|
||||||
|
state.searchParam.trainorgId = d;
|
||||||
|
state.searchParam.name = t;
|
||||||
|
state.searchParam.trainorgName=orgName
|
||||||
|
}
|
||||||
|
const columns = ref([
|
||||||
|
{
|
||||||
|
title: '归属组织编号 ',
|
||||||
|
dataIndex: 'trainorgId',
|
||||||
|
key: 'trainorgId',
|
||||||
|
elipsis: true,
|
||||||
|
align: "center",
|
||||||
|
width: 200,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '归属组织名称 ',
|
||||||
|
dataIndex: 'trainorgName',
|
||||||
|
key: 'trainorgName',
|
||||||
|
elipsis: true, align: "center",
|
||||||
|
width: 600,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '备注 ',
|
||||||
|
dataIndex: 'remark',
|
||||||
|
key: 'remark',
|
||||||
|
elipsis: true, align: "center",
|
||||||
|
width: 800,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '操作 ',
|
||||||
|
dataIndex: 'operation',
|
||||||
|
key: 'operation',
|
||||||
|
elipsis: true,
|
||||||
|
width: 400,
|
||||||
|
align: "right",
|
||||||
|
scopedSlots: { customRender: "action" },
|
||||||
|
},
|
||||||
|
])
|
||||||
|
//列表数据
|
||||||
|
const tableData = ref([
|
||||||
|
])
|
||||||
|
// List接口数据
|
||||||
|
const getTableDate = (obj) => {
|
||||||
|
state.tableLoading = true
|
||||||
|
let objA = { ...state.searchParam };
|
||||||
|
queryTrainOrg(objA)
|
||||||
|
.then((res) => {
|
||||||
|
tableData.value = res.data.data.records
|
||||||
|
state.tableDataTotal = Number(res.data.data.total);
|
||||||
|
state.tableLoading = false
|
||||||
|
})
|
||||||
|
};
|
||||||
|
getTableDate()
|
||||||
|
// 搜索
|
||||||
|
const searchSubmit = () => {
|
||||||
|
getTableDate();
|
||||||
|
};
|
||||||
|
//重置
|
||||||
|
const searchReset = () => {
|
||||||
|
state.searchParam = {
|
||||||
|
name:null,
|
||||||
|
userNo: null,
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
};
|
||||||
|
getTableDate();
|
||||||
|
};
|
||||||
|
// // 翻页
|
||||||
|
const changePagination = (page, pageSize) => {
|
||||||
|
state.searchParam.pageNo = page;
|
||||||
|
getTableDate();
|
||||||
|
};
|
||||||
|
//删除弹窗
|
||||||
|
const deleteModal = (record) => {
|
||||||
|
state.deleteInTeacherdialog = true
|
||||||
|
state.delId = record.kid
|
||||||
|
};
|
||||||
|
//确认删除
|
||||||
|
const closeDeleteTeacher = () => {
|
||||||
|
//调用删除接口
|
||||||
|
deleteTrainOrg(state.delTeacherId).then((res) => {
|
||||||
|
if (res.data.code == 200) {
|
||||||
|
// message.success("删除成功");
|
||||||
|
state.deleteInTeacherdialog = false
|
||||||
|
getTableDate();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
//取消按钮 清空输入的数据
|
||||||
|
const cancelTeacherDialog = () => {
|
||||||
|
if (state.teacherdialog = true) {
|
||||||
|
state.teacherdialog = false
|
||||||
|
cancel()
|
||||||
|
}
|
||||||
|
state.deleteInTeacherdialog = false
|
||||||
|
state.editTeacher = false
|
||||||
|
};
|
||||||
|
const addTeacher=()=>{
|
||||||
|
state.teacherdialog=true ,
|
||||||
|
state.teacherdialogtitle="新增归属组织"
|
||||||
|
}
|
||||||
|
const addContentData = () => {
|
||||||
|
state.showContent = true
|
||||||
|
}
|
||||||
|
//修改信息弹窗
|
||||||
|
const handleModify = (record) => {
|
||||||
|
state.teacherdialog = true;
|
||||||
|
state.teacherdialogtitle = '修改归属组织'
|
||||||
|
state.delId= record.kid
|
||||||
|
TeacherSystem()
|
||||||
|
}
|
||||||
|
const cancel=()=>{
|
||||||
|
state.formParam={
|
||||||
|
trainorgId:null,
|
||||||
|
trainorgName:null,
|
||||||
|
remark:null
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//保存
|
||||||
|
const createTeacherDialog = () => {
|
||||||
|
console.log(state.formParam);
|
||||||
|
if (state.formParam.kid != undefined) {
|
||||||
|
updateInTeacher(state.formParam).then(response => {
|
||||||
|
message.success("修改成功");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
insertTeacher(state.formParam)
|
||||||
|
.then((res) => {
|
||||||
|
message.success("保存成功");
|
||||||
|
}).catch((err) => {
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
state.teacherdialog = false;
|
||||||
|
getTableDate();
|
||||||
|
};
|
||||||
|
const rules = {
|
||||||
|
trainorgId: [{ required: true, message: '归属组织编号不能为空' }],
|
||||||
|
trainorgName: [{ required: true, message: '归属组织名称不能为空' }],
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
return{
|
||||||
|
...toRefs(state),
|
||||||
|
rules,
|
||||||
|
managerChange,
|
||||||
|
columns,
|
||||||
|
tableData,
|
||||||
|
getTableDate,
|
||||||
|
searchSubmit,
|
||||||
|
searchReset,
|
||||||
|
deleteModal,
|
||||||
|
cancelTeacherDialog,
|
||||||
|
addTeacher,
|
||||||
|
addContentData,
|
||||||
|
handleModify,
|
||||||
|
closeDeleteTeacher,
|
||||||
|
changePagination
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
|
||||||
|
.add_content{
|
||||||
|
width: 40px;
|
||||||
|
height: 40px;
|
||||||
|
cursor: pointer;
|
||||||
|
border-radius: 50%;
|
||||||
|
background-color: #4ea6ff;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 40px;
|
||||||
|
color: #ffffff;
|
||||||
|
font-size: 26px;
|
||||||
|
}
|
||||||
|
//导出按钮icon
|
||||||
|
.daochu {
|
||||||
|
width: 16px;
|
||||||
|
height: 18px;
|
||||||
|
background-image: url("../../assets/images/coursewareManage/export1.png");
|
||||||
|
}
|
||||||
|
|
||||||
|
//弹窗内详情样式
|
||||||
|
.display1 {
|
||||||
|
display: inline-block;
|
||||||
|
width: 200px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// .display0{
|
||||||
|
// display:inline-block ;
|
||||||
|
// width:200px ;
|
||||||
|
// text-align:center }
|
||||||
|
//弹窗内确认取消按钮布局
|
||||||
|
.del_btnbox {
|
||||||
|
display: flex;
|
||||||
|
margin: 30px auto;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
.del_btn {
|
||||||
|
width: 100px;
|
||||||
|
height: 40px;
|
||||||
|
background: rgba(64, 158, 255, 0);
|
||||||
|
border-radius: 8px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
flex-shrink: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
.btnText {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
line-height: 40px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn1 {
|
||||||
|
border: 1px solid rgba(64, 158, 255, 1);
|
||||||
|
color: #4ea6ff;
|
||||||
|
margin-right: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn2 {
|
||||||
|
background-color: #4ea6ff;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-table-cell-fix-right {
|
||||||
|
width: 300px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-table-tbody>tr>td {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.InsideLecturer { width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
position: relative;
|
||||||
|
.filter {
|
||||||
|
margin-left: 38px;
|
||||||
|
margin-right: 38px;
|
||||||
|
margin-top: 30px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
.select {
|
||||||
|
margin-right: 20px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
}}
|
||||||
|
|
||||||
|
.delete {
|
||||||
|
z-index: 9999;
|
||||||
|
width: 424px;
|
||||||
|
background: #ffffff;
|
||||||
|
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.21);
|
||||||
|
border-radius: 4px;
|
||||||
|
position: absolute;
|
||||||
|
left: 30%;
|
||||||
|
top: 10%;
|
||||||
|
// transform: translate(-50%, -50%);
|
||||||
|
|
||||||
|
.del_header {
|
||||||
|
position: absolute;
|
||||||
|
width: calc(100%);
|
||||||
|
height: 40px;
|
||||||
|
background: linear-gradient(rgba(78, 166, 255, 0.2) 0%,
|
||||||
|
rgba(78, 166, 255, 0) 100%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.del_main {
|
||||||
|
width: 100%;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
.header {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
padding-top: 20px;
|
||||||
|
padding-left: 26px;
|
||||||
|
font-size: 16px;
|
||||||
|
|
||||||
|
.del-icon {
|
||||||
|
width: 16px;
|
||||||
|
height: 16px;
|
||||||
|
margin-right: 10px;
|
||||||
|
background-image: url(@/assets/images/coursewareManage/notice.png);
|
||||||
|
background-size: 100% 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon {
|
||||||
|
width: 16px;
|
||||||
|
height: 16px;
|
||||||
|
margin-right: 10px;
|
||||||
|
background-image: url(@/assets/images/coursewareManage/QR.png);
|
||||||
|
background-size: 100% 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.close_exit {
|
||||||
|
position: absolute;
|
||||||
|
right: 42px;
|
||||||
|
cursor: pointer;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
background-image: url(@/assets/images/coursewareManage/close.png);
|
||||||
|
background-size: 100% 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.body {
|
||||||
|
width: 100%;
|
||||||
|
margin: 34px auto 56px auto;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.del_btnbox {
|
||||||
|
display: flex;
|
||||||
|
margin: 30px auto;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
.del_btn {
|
||||||
|
width: 100px;
|
||||||
|
height: 40px;
|
||||||
|
background: rgba(64, 158, 255, 0);
|
||||||
|
border-radius: 8px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin-right: 14px;
|
||||||
|
flex-shrink: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
.btnText {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
line-height: 40px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn1 {
|
||||||
|
border: 1px solid rgba(64, 158, 255, 1);
|
||||||
|
color: #4ea6ff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn2 {
|
||||||
|
background-color: #4ea6ff;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.CreatePath {
|
||||||
|
.out {
|
||||||
|
z-index: 9999;
|
||||||
|
display: block;
|
||||||
|
position: absolute;
|
||||||
|
top: 90px;
|
||||||
|
width: 1080px !important;
|
||||||
|
height: 650px;
|
||||||
|
overflow: auto;
|
||||||
|
background-color: #fff;
|
||||||
|
|
||||||
|
box-shadow: 0 0 10px rgba(118, 136, 166, 0.21);
|
||||||
|
left: 50%;
|
||||||
|
top: 300px;
|
||||||
|
transform: translate(-50%, -50%);
|
||||||
|
|
||||||
|
.top {
|
||||||
|
width: 100%;
|
||||||
|
height: 68px;
|
||||||
|
|
||||||
|
background: linear-gradient(rgba(78, 166, 255, 0.2) 0%,
|
||||||
|
rgba(78, 166, 255, 0) 100%);
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
.topimg {
|
||||||
|
width: 18px;
|
||||||
|
height: 18px;
|
||||||
|
margin-left: 27px;
|
||||||
|
margin-top: -2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.topc {
|
||||||
|
color: #000000;
|
||||||
|
font-size: 16px;
|
||||||
|
margin-left: 8px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.mid {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
background-color: #fff;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
.d {
|
||||||
|
// margin-top: 8px;
|
||||||
|
// color: #ff4e4e;
|
||||||
|
margin-left: -5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重置样式
|
||||||
|
.resetbtn {
|
||||||
|
width: 100px;
|
||||||
|
height: 40px;
|
||||||
|
border-radius: 8px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin-right: 14px;
|
||||||
|
flex-shrink: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
//展开收起样式
|
||||||
|
.moreidbtn {
|
||||||
|
border: none;
|
||||||
|
color: #4ea6ff;
|
||||||
|
width: 80px
|
||||||
|
}
|
||||||
|
|
||||||
|
//小竖线
|
||||||
|
.line{
|
||||||
|
float:left; width: 3px; height: 25px; background: #4ea6ff;border-radius: 30%; margin-right: 5px;
|
||||||
|
}
|
||||||
|
//抽屉功能
|
||||||
|
.drawaer
|
||||||
|
/* 改变所有 a-tree-select 输入框的高度 */
|
||||||
|
.ant-tree-select .ant-select-selection {
|
||||||
|
height: 40px;
|
||||||
|
line-height: 40px;
|
||||||
|
/* 确保文字垂直居中 */
|
||||||
|
}
|
||||||
|
.draitem{
|
||||||
|
width: 100%;
|
||||||
|
height: 40px !important;
|
||||||
|
border-radius: 8px;
|
||||||
|
line-height: 40px;
|
||||||
|
}
|
||||||
|
.drabtn{
|
||||||
|
height:40px;
|
||||||
|
width:80px;
|
||||||
|
border-radius:8px;
|
||||||
|
margin-right:20px
|
||||||
|
}
|
||||||
|
::v-deep .ant-select:not(.ant-select-customize-input) .ant-select-selector{
|
||||||
|
border-radius:8px;
|
||||||
|
height:40px;
|
||||||
|
line-height: 40px;
|
||||||
|
}
|
||||||
|
.ant-col-12{
|
||||||
|
height:80px;
|
||||||
|
}
|
||||||
|
.item_inp {
|
||||||
|
flex: 1;
|
||||||
|
text-align: center ;
|
||||||
|
.i_upload_img {
|
||||||
|
width: 100px;
|
||||||
|
height: 100px;
|
||||||
|
border-radius: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.i_upload {
|
||||||
|
width: 100px;
|
||||||
|
height: 100px;
|
||||||
|
border: 1px solid #4ea6ff;
|
||||||
|
border-radius:50%;
|
||||||
|
text-align: center;
|
||||||
|
align-items: center;
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
.addimg {
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
.heng {
|
||||||
|
position: absolute;
|
||||||
|
top: 50px;
|
||||||
|
left: 25px;
|
||||||
|
width: 50px;
|
||||||
|
border: 1px solid #4ea6ff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.shu {
|
||||||
|
position: absolute;
|
||||||
|
top: 25px;
|
||||||
|
left: 50px;
|
||||||
|
height: 50px;
|
||||||
|
border: 1px solid #4ea6ff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-upload.ant-upload-select-picture-card {
|
||||||
|
border: 0px !important;
|
||||||
|
border-radius: 50%!important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.ant-upload.ant-upload-select-picture-card {
|
||||||
|
border: 0px !important;
|
||||||
|
border-radius: 50%!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
Reference in New Issue
Block a user