This commit is contained in:
lVAL 2020-12-31 13:39:16 +08:00
commit d85c30a905
15 changed files with 185 additions and 37 deletions

View File

@ -47,3 +47,99 @@ export function setCompanyManager(companyId, data) {
data data
}); });
} }
/** 获取单位所有部门 */
export function getAllDept(companyId) {
return request({
url: `/api/company/${companyId}/dept`,
method: 'get'
});
}
/** 获取单位的部门树结构 */
export function getAllDeptTree(companyId) {
return request({
url: `/api/company/${companyId}/dept/tree`,
method: 'get'
});
}
/** 获取部门及其子部门 */
export function getDeptAndChild(companyId, deptId) {
return request({
url: `/api/company/${companyId}/dept/${deptId}`,
method: 'get'
});
}
/** 获取部门及其子树 */
export function getDeptTree(companyId, deptId) {
return request({
url: `/api/company/${companyId}/dept/${deptId}/tree`,
method: 'get'
});
}
/** 获取单位所属的职位信息 */
export function getCompanyPosition(companyId) {
return request({
url: `/api/company/${companyId}/position`,
method: 'get'
});
}
/** 分页获取单位的成员信息 */
export function getCompanyMemberPaging(companyId) {
return request({
url: `/api/company/${companyId}/refUserInfo`,
method: 'get'
});
}
/** 更新单位成员信息 */
export function putCompanyMember(companyId, data) {
return request({
url: `/api/company/${companyId}/refUserInfo`,
method: 'put',
data
});
}
/** 导入单位成员信息 */
export function importCompanyMember(companyId, data) {
return request({
url: `/api/company/${companyId}/refUserInfo/import`,
method: 'post',
data
});
}
/** 删除单位成员信息 */
export function deleteCompanyMember(companyId, memberId) {
return request({
url: `/api/company/${companyId}/refUserInfo/${memberId}`,
method: 'delete'
});
}
/** 查询职位信息 */
export function getPositionInfo(positionId) {
return request({
url: `/api/company/position/${positionId}`,
method: 'get'
});
}
/** 更新职位信息 */
export function updatePositionInfo(positionId, data) {
return request({
url: `/api/company/position/${positionId}`,
method: 'put',
data
});
}
/** 删除职位信息 */
export function deletePositionInfo(positionId) {
return request({
url: `/api/company/position/${positionId}`,
method: 'delete'
});
}
/** 添加职位信息 */
export function addPositionInfo(data) {
return request({
url: `/api/company/position`,
method: 'post',
data
});
}
/** 查询部门信息 */

View File

@ -183,6 +183,7 @@ export default {
examSystem: 'Examination System', examSystem: 'Examination System',
runPlanSystem: 'The run plan system', runPlanSystem: 'The run plan system',
personalDetails: 'information', personalDetails: 'information',
organization: 'organization',
trainingPlatformEntrance: 'Training platform entrance', trainingPlatformEntrance: 'Training platform entrance',
designPlatformEntrance: 'Design platform entrance', designPlatformEntrance: 'Design platform entrance',
connect: 'connect', connect: 'connect',

View File

@ -183,6 +183,7 @@ export default {
examSystem: '考试系统', examSystem: '考试系统',
runPlanSystem: '运行图系统', runPlanSystem: '运行图系统',
personalDetails: '个人信息', personalDetails: '个人信息',
organization: '单位组织',
trainingPlatformEntrance: '实训平台入口', trainingPlatformEntrance: '实训平台入口',
designPlatformEntrance: '设计平台入口', designPlatformEntrance: '设计平台入口',
connect: '连接', connect: '连接',

View File

@ -10,22 +10,28 @@
<el-dropdown-item> <el-dropdown-item>
<span style="display:block;" @click="handleDetail">{{ $t('global.personalDetails') }}</span> <span style="display:block;" @click="handleDetail">{{ $t('global.personalDetails') }}</span>
</el-dropdown-item> </el-dropdown-item>
<!--<el-dropdown-item>-->
<!--<span style="display:block;" @click="handleOrganization">{{ $t('global.organization') }}</span>-->
<!--</el-dropdown-item>-->
<el-dropdown-item> <el-dropdown-item>
<span style="display:block;" @click="logout">{{ $t('global.exit') }}</span> <span style="display:block;" @click="logout">{{ $t('global.exit') }}</span>
</el-dropdown-item> </el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
<user-info ref="userInfo" /> <user-info ref="userInfo" />
<organization ref="organization" />
</el-dropdown> </el-dropdown>
</template> </template>
<script> <script>
import userInfo from './userInfo'; import userInfo from './userInfo';
import organization from './organization';
import { UrlConfig } from '@/scripts/ConstDic'; import { UrlConfig } from '@/scripts/ConstDic';
export default { export default {
name: 'Logout', name: 'Logout',
components: { components: {
userInfo userInfo,
organization
}, },
data() { data() {
return { return {
@ -49,6 +55,9 @@ export default {
}, },
handleDetail() { handleDetail() {
this.$refs.userInfo.doShow(); this.$refs.userInfo.doShow();
},
handleOrganization() {
this.$refs.organization.doShow();
} }
} }
}; };

View File

@ -0,0 +1,41 @@
<template>
<el-dialog
title="单位组织"
:visible.sync="dialogVisible"
width="30%"
:before-close="handleClose"
>
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="部门管理" name="first">部门管理</el-tab-pane>
<el-tab-pane label="职位管理" name="second">职位管理</el-tab-pane>
<el-tab-pane label="成员管理" name="third">成员管理</el-tab-pane>
</el-tabs>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="dialogVisible = false"> </el-button>
</span>
</el-dialog>
</template>
<script>
export default {
name: 'Organization',
data() {
return {
dialogVisible: false
};
},
methods: {
doShow() {
this.dialogVisible = true;
},
handleClose() {
this.dialogVisible = false;
}
}
};
</script>
<style scoped>
</style>

View File

@ -2,10 +2,10 @@ export function getBaseUrl() {
let BASE_API; let BASE_API;
if (process.env.NODE_ENV === 'development') { if (process.env.NODE_ENV === 'development') {
// BASE_API = 'https://api.joylink.club/jlcloud'; // BASE_API = 'https://api.joylink.club/jlcloud';
// BASE_API = 'https://test.joylink.club/jlcloud'; BASE_API = 'https://test.joylink.club/jlcloud';
// BASE_API = 'http://192.168.8.107:9000'; // 袁琪 // BASE_API = 'http://192.168.8.107:9000'; // 袁琪
// BASE_API = 'http://192.168.8.129:9000'; // 旭强 // BASE_API = 'http://192.168.8.129:9000'; // 旭强
BASE_API = 'http://192.168.8.119:9000'; // 张赛 // BASE_API = 'http://192.168.8.119:9000'; // 张赛
// BASE_API = 'http://192.168.8.110:9000'; // 杜康 // BASE_API = 'http://192.168.8.110:9000'; // 杜康
// BASE_API = 'http://b29z135112.zicp.vip'; // BASE_API = 'http://b29z135112.zicp.vip';
// BASE_API = 'http://2925963m2a.zicp.vip'; // 杜康 // BASE_API = 'http://2925963m2a.zicp.vip'; // 杜康

View File

@ -50,14 +50,14 @@ export default {
}, },
mounted() { mounted() {
this.lessonList = []; this.lessonList = [];
getPublishLessonListByMapId({mapId:this.$route.params.mapId}).then(response => {
this.lessonList = response.data.map(elem => { return { code: elem.id, name: elem.name }; });
}).catch(error => {
this.$messageBox(`${this.$t('error.refreshFailed')}, ${error.message}`);
});
}, },
methods: { methods: {
doShow(node) { doShow(node) {
getPublishLessonListByMapId({mapId:this.$route.params.mapId}).then(response => {
this.lessonList = response.data.map(elem => { return { code: elem.id, name: elem.name }; });
}).catch(error => {
this.$messageBox(`${this.$t('error.refreshFailed')}, ${error.message}`);
});
this.dialogShow = true; this.dialogShow = true;
}, },
doClose() { doClose() {

View File

@ -24,6 +24,7 @@
value-format="timestamp" value-format="timestamp"
:disabled="isEdit" :disabled="isEdit"
:picker-options="pickerOptions" :picker-options="pickerOptions"
@change="handle"
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -37,8 +38,8 @@
style="width: 100%;" style="width: 100%;"
value-format="timestamp" value-format="timestamp"
:disabled="true" :disabled="true"
:picker-options="pickerOptions"
/> />
<!-- :picker-options="pickerOptions" -->
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
@ -123,6 +124,7 @@ export default {
pickerOptions: { pickerOptions: {
disabledDate(time) { disabledDate(time) {
return time.getTime() < new Date(new Date().toLocaleDateString()).getTime(); return time.getTime() < new Date(new Date().toLocaleDateString()).getTime();
// return time.getTime() < Date.now() - 1 * 24 * 3600 * 1000;
} }
}, },
formDetail: { formDetail: {
@ -217,6 +219,12 @@ export default {
passMark: data.passMark passMark: data.passMark
}; };
}, },
handle() {
var startAt = new Date(this.form.startDate) * 1000 / 1000;
if (startAt < Date.now()) {
this.form.startDate = new Date().getTime();
}
},
getClassList() { getClassList() {
if (this.isClassShow) { if (this.isClassShow) {
this.classList = []; this.classList = [];
@ -255,34 +263,26 @@ export default {
}); });
}, },
submitForm() { submitForm() {
this.submit('definition');
},
submit(type) {
this.$refs['form'].validate((valid) => { this.$refs['form'].validate((valid) => {
if (valid) { if (valid) {
if (this.form.startDate) { const form = Object.assign({}, this.form);
this.form.startDate = this.getDate(this.form.startDate); if (form.startDate) {
form.startDate = this.getDate(form.startDate);
} }
if (this.form.endDate) { if (form.endDate) {
this.form.endDate = this.getDate(this.form.endDate); form.endDate = this.getDate(form.endDate);
} }
this.form['trial'] = this.trial; form['trial'] = this.trial;
this.$store.dispatch('exam/setCourseDetail', this.form); this.$store.dispatch('exam/setCourseDetail', form);
this.$emit('definition', this.form); this.$emit(type, form);
} }
}); });
}, },
createQuickly() { createQuickly() {
this.$refs['form'].validate((valid) => { this.submit('createQuickly');
if (valid) {
if (this.form.startDate) {
this.form.startDate = this.getDate(this.form.startDate);
}
if (this.form.endDate) {
this.form.endDate = this.getDate(this.form.endDate);
}
this.form['trial'] = this.trial;
this.$store.dispatch('exam/setCourseDetail', this.form);
this.$emit('createQuickly', this.form);
}
});
}, },
getDate(date) { getDate(date) {
const now = new Date(date); const now = new Date(date);

View File

@ -149,6 +149,7 @@ export default {
this.$store.dispatch('exam/setRuleList', []); // this.$store.dispatch('exam/setRuleList', []); //
const path = `${this.$route.path.match(/(\/.*)\/examRule/)[1]}${UrlConfig.examRuleManage}`; const path = `${this.$route.path.match(/(\/.*)\/examRule/)[1]}${UrlConfig.examRuleManage}`;
const lessonId = this.$route.params.lessonId; const lessonId = this.$route.params.lessonId;
this.$store.dispatch('exam/setCourseDetail', {});
if (parseInt(lessonId)) { if (parseInt(lessonId)) {
this.$router.replace({ path: `${path}`, query: { mapId: this.$route.query.mapId, lessonId: lessonId, noPreLogout: this.$route.query.noPreLogout } }); this.$router.replace({ path: `${path}`, query: { mapId: this.$route.query.mapId, lessonId: lessonId, noPreLogout: this.$route.query.noPreLogout } });
} else { } else {

View File

@ -141,8 +141,8 @@ export default {
name: this.course.name, // name: this.course.name, //
passingPoint: Number(this.course.passMark), // passingPoint: Number(this.course.passMark), //
remarks: this.course.desc, // remarks: this.course.desc, //
endTime: this.course.endTime, endTime: this.course.endDate,
startTime: this.course.startTime, startTime: this.course.startDate,
type: this.course.type, // type: this.course.type, //
trial: this.course.trial == 2 // trial: this.course.trial == 2 //
}; };

View File

@ -76,7 +76,8 @@ export default {
title: this.$t('publish.examTime'), title: this.$t('publish.examTime'),
prop: 'startTime', prop: 'startTime',
type: 'formatter', type: 'formatter',
format: 'yyyy-MM-dd hh:ss' format: 'yyyy-MM-dd hh:ss',
width:'200px'
}, },
{ {
title: this.$t('publish.fullMark'), title: this.$t('publish.fullMark'),

View File

@ -26,6 +26,7 @@ export default {
{ label: '运行图数据', value: 'RUN_PLAN' }, { label: '运行图数据', value: 'RUN_PLAN' },
{ label: '3d数据', value: 'MAP_3D_DATA' }, { label: '3d数据', value: 'MAP_3D_DATA' },
{ label: 'ibp数据', value: 'ibp' }, { label: 'ibp数据', value: 'ibp' },
{ label: 'iscs数据', value: 'iscs' },
{ label: '指令定义', value: 'COMMAND_DEFINITION' }, { label: '指令定义', value: 'COMMAND_DEFINITION' },
{ label: '剧本数据', value: 'script' }, { label: '剧本数据', value: 'script' },
{ label: '线路配置', value: 'REAL_LINE_CONFIG', selected: true } { label: '线路配置', value: 'REAL_LINE_CONFIG', selected: true }
@ -57,6 +58,7 @@ export default {
runPlan: this.checkList.includes('RUN_PLAN'), runPlan: this.checkList.includes('RUN_PLAN'),
map3dData: this.checkList.includes('MAP_3D_DATA'), map3dData: this.checkList.includes('MAP_3D_DATA'),
ibp: this.checkList.includes('ibp'), ibp: this.checkList.includes('ibp'),
iscs: this.checkList.includes('iscs'),
script:this.checkList.includes('script'), script:this.checkList.includes('script'),
commandDefinition: this.checkList.includes('COMMAND_DEFINITION'), commandDefinition: this.checkList.includes('COMMAND_DEFINITION'),
realLineConfig: this.checkList.includes('REAL_LINE_CONFIG') realLineConfig: this.checkList.includes('REAL_LINE_CONFIG')

View File

@ -54,7 +54,6 @@ import { getSessionStorage, setSessionStorage } from '@/utils/auth';
import { trainingNotifyNew } from '@/api/simulation'; import { trainingNotifyNew } from '@/api/simulation';
import { getPublishMapInfo } from '@/api/jmap/map'; import { getPublishMapInfo } from '@/api/jmap/map';
import { launchFullscreen } from '@/utils/screen'; import { launchFullscreen } from '@/utils/screen';
import localStore from 'storejs';
export default { export default {
name: 'LessonDetail', name: 'LessonDetail',
@ -230,7 +229,6 @@ export default {
backLessonList() { backLessonList() {
this.disabled = true; this.disabled = true;
setTimeout(() => { setTimeout(() => {
localStore.remove('teachDetail' + this.$route.params.subSystem);
this.$router.push({ path: `${UrlConfig.trainingPlatform.teachHome}/${this.$route.params.subSystem}`}); this.$router.push({ path: `${UrlConfig.trainingPlatform.teachHome}/${this.$route.params.subSystem}`});
}, 100); }, 100);
}, },

View File

@ -86,7 +86,6 @@ export default {
} }
}, },
goLesson(row) { goLesson(row) {
localStore.set('teachDetail' + this.$route.params.subSystem, `${UrlConfig.trainingPlatform.teachDetail}/${this.$route.params.subSystem}?lessonId=${row.id}&mapId=${row.mapId}&prdType=${row.prdType}`);
this.$router.push({ path: `${UrlConfig.trainingPlatform.teachDetail}/${this.$route.params.subSystem}`, query: {lessonId: row.id, mapId: row.mapId, prdType: row.prdType}}); this.$router.push({ path: `${UrlConfig.trainingPlatform.teachDetail}/${this.$route.params.subSystem}`, query: {lessonId: row.id, mapId: row.mapId, prdType: row.prdType}});
}, },
handleDelete(row) { handleDelete(row) {

View File

@ -113,8 +113,7 @@ export default {
break; break;
case 'Lesson': case 'Lesson':
this.setLocalRoute(`${UrlConfig.trainingPlatform.teachHome}/${obj.id}`); this.setLocalRoute(`${UrlConfig.trainingPlatform.teachHome}/${obj.id}`);
router = localStore.get('teachDetail' + obj.id); router = { path: `${UrlConfig.trainingPlatform.teachHome}/${obj.id}`};
if (!router) { router = { path: `${UrlConfig.trainingPlatform.teachHome}/${obj.id}`}; }
this.toNextPage(isReplace, router); this.toNextPage(isReplace, router);
break; break;
case 'Simulation': case 'Simulation':