Compare commits
13 Commits
219e4abdc0
...
f3619817f9
Author | SHA1 | Date |
---|---|---|
朱浩 | f3619817f9 | |
yangws | c64fbe49e9 | |
yangws | 3c2dbb722a | |
yangws | acbd36ca88 | |
yangws | 1e52abc170 | |
yangws | 1a1f20d175 | |
朱浩 | 1aded1d50a | |
lyc | 22f35a6638 | |
lyc | bf783cf940 | |
lyc | b255e48be5 | |
lyc | 41b0660559 | |
朱浩 | 0964cc0965 | |
yangws | f6bf811ee5 |
|
@ -146,7 +146,7 @@ export default async function ({ app, shell, BrowserWindow, ipcMain }) {
|
||||||
//使用默认应用打开本地文件
|
//使用默认应用打开本地文件
|
||||||
ipcMain.on('open-path-app', (e, destination) => {
|
ipcMain.on('open-path-app', (e, destination) => {
|
||||||
let path = appRootFilePath + destination
|
let path = appRootFilePath + destination
|
||||||
shell.openExternal(path).catch((error) => {
|
shell.openPath(path).catch((error) => {
|
||||||
console.log(error)
|
console.log(error)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
|
@ -28,6 +28,7 @@ function createLoginWindow() {
|
||||||
icon: join(__dirname, '../../resources/logo2.ico'),
|
icon: join(__dirname, '../../resources/logo2.ico'),
|
||||||
...(process.platform === 'linux' ? { icon } : {}),
|
...(process.platform === 'linux' ? { icon } : {}),
|
||||||
webPreferences: {
|
webPreferences: {
|
||||||
|
defaultEncoding: 'utf-8',
|
||||||
preload: join(__dirname, '../preload/index.js'),
|
preload: join(__dirname, '../preload/index.js'),
|
||||||
sandbox: false,
|
sandbox: false,
|
||||||
nodeIntegration: true,
|
nodeIntegration: true,
|
||||||
|
@ -67,6 +68,7 @@ function createMainWindow() {
|
||||||
icon: join(__dirname, '../../resources/logo2.ico'),
|
icon: join(__dirname, '../../resources/logo2.ico'),
|
||||||
...(process.platform === 'linux' ? { icon } : {}),
|
...(process.platform === 'linux' ? { icon } : {}),
|
||||||
webPreferences: {
|
webPreferences: {
|
||||||
|
defaultEncoding: 'utf-8',
|
||||||
preload: join(__dirname, '../preload/index.js'),
|
preload: join(__dirname, '../preload/index.js'),
|
||||||
sandbox: false,
|
sandbox: false,
|
||||||
// nodeIntegration: true,
|
// nodeIntegration: true,
|
||||||
|
@ -115,6 +117,7 @@ async function createLinkWin(data) {
|
||||||
autoHideMenuBar: true,
|
autoHideMenuBar: true,
|
||||||
...(process.platform === 'linux' ? { icon } : {}),
|
...(process.platform === 'linux' ? { icon } : {}),
|
||||||
webPreferences: {
|
webPreferences: {
|
||||||
|
defaultEncoding: 'utf-8',
|
||||||
sandbox: false,
|
sandbox: false,
|
||||||
nodeIntegration: true,
|
nodeIntegration: true,
|
||||||
worldSafeExecuteJavaScript: true,
|
worldSafeExecuteJavaScript: true,
|
||||||
|
@ -143,6 +146,8 @@ async function createLinkWin(data) {
|
||||||
|
|
||||||
// 初始化完成
|
// 初始化完成
|
||||||
app.on('ready', () => {
|
app.on('ready', () => {
|
||||||
|
process.env.LANG = 'en_US.UTF-8'
|
||||||
|
process.env['ELECTRON_DISABLE_SANDBOX'] = true;
|
||||||
// 设置应用程序用户模型标识符
|
// 设置应用程序用户模型标识符
|
||||||
electronApp.setAppUserModelId('com.electron')
|
electronApp.setAppUserModelId('com.electron')
|
||||||
|
|
||||||
|
|
|
@ -42,7 +42,7 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { onMounted, ref, nextTick, toRaw, reactive,watch } from 'vue';
|
import { onMounted, ref, nextTick, toRaw, reactive } from 'vue';
|
||||||
import useUserStore from '@/store/modules/user'
|
import useUserStore from '@/store/modules/user'
|
||||||
import { listEvaluation } from '@/api/subject'
|
import { listEvaluation } from '@/api/subject'
|
||||||
|
|
||||||
|
@ -258,7 +258,7 @@ const transData = (data) => {
|
||||||
const getSubject = async () => {
|
const getSubject = async () => {
|
||||||
|
|
||||||
const { rows } = await listEvaluation({ itemkey: "version", pageSize: 500 })
|
const { rows } = await listEvaluation({ itemkey: "version", pageSize: 500 })
|
||||||
subjectList.value = rows.filter(item => item.edustage == edustage && item.edusubject == edusubject)
|
subjectList.value = rows.filter(item => item.edustage == edustage && item.edusubject == edusubject && isHaveUnit(item.id))
|
||||||
localStorage.setItem('subjectList', JSON.stringify(subjectList.value))
|
localStorage.setItem('subjectList', JSON.stringify(subjectList.value))
|
||||||
|
|
||||||
// 默认第一个
|
// 默认第一个
|
||||||
|
@ -270,11 +270,11 @@ const getSubject = async () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// const isHaveUnit = (id) => {
|
const isHaveUnit = (id) => {
|
||||||
// return evaluationList.value.some(item => {
|
return evaluationList.value.some(item => {
|
||||||
// return item.rootid == id
|
return item.rootid == id
|
||||||
// })
|
})
|
||||||
// }
|
}
|
||||||
|
|
||||||
|
|
||||||
const handleNodeClick = (data, node) => {
|
const handleNodeClick = (data, node) => {
|
||||||
|
@ -305,9 +305,6 @@ const handleNodeClick = (data, node) => {
|
||||||
currentNode.data = curData
|
currentNode.data = curData
|
||||||
emit('nodeClick', curData)
|
emit('nodeClick', curData)
|
||||||
}
|
}
|
||||||
watch(() => userStore.edusubject, () => {
|
|
||||||
console.log(userStore.edusubject,'userStore.edusubject')
|
|
||||||
})
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
getSubjectContent()
|
getSubjectContent()
|
||||||
})
|
})
|
||||||
|
|
|
@ -168,7 +168,7 @@ export default {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
emits: { 'on-move': null, 'on-delete': null, 'on-set': null, 'on-delhomework': null },
|
emits: { 'on-move': null, 'on-delete': null, 'on-set': null, 'on-delhomework': null,'on-filearg': null },
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
listenList: [],
|
listenList: [],
|
||||||
|
@ -230,6 +230,7 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
openFileWin(items) {
|
openFileWin(items) {
|
||||||
|
if (!items||!items.fileSuffix) return;
|
||||||
getPrepareById(items.id).then((item) => {
|
getPrepareById(items.id).then((item) => {
|
||||||
Object.assign(items, item)
|
Object.assign(items, item)
|
||||||
asyncLocalFile(items).then(() => {
|
asyncLocalFile(items).then(() => {
|
||||||
|
@ -266,15 +267,18 @@ export default {
|
||||||
},
|
},
|
||||||
// 文件资源打开web AIX 布置作业
|
// 文件资源打开web AIX 布置作业
|
||||||
openFileLink(item){
|
openFileLink(item){
|
||||||
|
let unitId = item.levelSecondId ? item.levelSecondId : item.levelFirstId
|
||||||
// key 对应的 linkConfig.js 外部链接配置
|
// key 对应的 linkConfig.js 外部链接配置
|
||||||
let key = 'filehomework'
|
let key = 'filehomework'
|
||||||
let configObj = outLink()[key]
|
let configObj = outLink()[key]
|
||||||
// 通知主进程
|
// 通知主进程
|
||||||
ipcRenderer.send('openWindow', {
|
ipcRenderer.send('openWindow', {
|
||||||
key,
|
key,
|
||||||
fullPath: configObj.fullPath + `&fileShowName=${item.fileShowName}&fileFullPath=${item.fileFullPath}`,
|
fullPath: configObj.fullPath + `&fileShowName=${item.fileShowName}&fileFullPath=${item.fileFullPath}&unitId=${unitId}`,
|
||||||
cookieData: { ...configObj.data }
|
cookieData: { ...configObj.data }
|
||||||
})
|
})
|
||||||
|
|
||||||
|
this.$emit('on-filearg', item)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
|
|
|
@ -79,6 +79,7 @@
|
||||||
@on-delete="deleteTalk"
|
@on-delete="deleteTalk"
|
||||||
@on-set="openSet"
|
@on-set="openSet"
|
||||||
@on-delhomework="delhomework"
|
@on-delhomework="delhomework"
|
||||||
|
@on-filearg="isOpenHomework = true"
|
||||||
>
|
>
|
||||||
<el-checkbox v-if="!item.uniquekey" label="" :value="item" />
|
<el-checkbox v-if="!item.uniquekey" label="" :value="item" />
|
||||||
</file-list-item>
|
</file-list-item>
|
||||||
|
@ -91,6 +92,7 @@
|
||||||
@on-delete="deleteTalk"
|
@on-delete="deleteTalk"
|
||||||
@on-set="openSet"
|
@on-set="openSet"
|
||||||
@on-delhomework="delhomework"
|
@on-delhomework="delhomework"
|
||||||
|
|
||||||
>
|
>
|
||||||
<el-checkbox v-if="!item.uniquekey" label="" :value="item" />
|
<el-checkbox v-if="!item.uniquekey" label="" :value="item" />
|
||||||
</file-list-item>
|
</file-list-item>
|
||||||
|
@ -145,7 +147,7 @@ import FileOperBatch from '@/views/prepare/container/file-oper-batch.vue'
|
||||||
import SetHomework from './container/set-homework.vue'
|
import SetHomework from './container/set-homework.vue'
|
||||||
import outLink from '@/utils/linkConfig'
|
import outLink from '@/utils/linkConfig'
|
||||||
import { createWindow } from '@/utils/tool'
|
import { createWindow } from '@/utils/tool'
|
||||||
import { uniqBy, cloneDeep } from 'lodash'
|
import { cloneDeep } from 'lodash'
|
||||||
import { delClasswork, addEntpcourse } from '@/api/teaching/classwork'
|
import { delClasswork, addEntpcourse } from '@/api/teaching/classwork'
|
||||||
import { getSelfReserv, startClass } from '@/api/classManage'
|
import { getSelfReserv, startClass } from '@/api/classManage'
|
||||||
const toolStore = useToolState()
|
const toolStore = useToolState()
|
||||||
|
@ -227,8 +229,8 @@ export default {
|
||||||
const curWin = Remote.getCurrentWindow()
|
const curWin = Remote.getCurrentWindow()
|
||||||
curWin.on('focus', ()=>{
|
curWin.on('focus', ()=>{
|
||||||
if(!this.isOpenHomework) return
|
if(!this.isOpenHomework) return
|
||||||
console.log(100)
|
|
||||||
this.initHomeWork()
|
this.initHomeWork()
|
||||||
|
this.asyncAllFile()
|
||||||
this.isOpenHomework = false
|
this.isOpenHomework = false
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -414,6 +416,7 @@ export default {
|
||||||
this.curBookImg = data.textBook.curBookImg
|
this.curBookImg = data.textBook.curBookImg
|
||||||
this.curBookPath = data.textBook.curBookPath
|
this.curBookPath = data.textBook.curBookPath
|
||||||
this.checkFileList = []
|
this.checkFileList = []
|
||||||
|
this.currentWorkList = []
|
||||||
let cata = parseCataByNode(data.node)
|
let cata = parseCataByNode(data.node)
|
||||||
this.currentNode = data.node
|
this.currentNode = data.node
|
||||||
this.uploadData.levelFirstId = cata[0]
|
this.uploadData.levelFirstId = cata[0]
|
||||||
|
@ -475,10 +478,21 @@ export default {
|
||||||
}
|
}
|
||||||
// key 对应的 linkConfig.js 外部链接配置
|
// key 对应的 linkConfig.js 外部链接配置
|
||||||
let configObj = outLink()[key]
|
let configObj = outLink()[key]
|
||||||
|
let fullPath = configObj.fullPath
|
||||||
|
//打开作业 高考 url增加unitId 章节ID
|
||||||
|
if(key != 'standard' && key != 'aiModel'){
|
||||||
|
let unitId = this.uploadData.levelSecondId ? this.uploadData.levelSecondId : this.uploadData.levelFirstId
|
||||||
|
if(key == 'gk'){
|
||||||
|
fullPath += `?unitId=${unitId}`
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
fullPath += `&unitId=${unitId}`
|
||||||
|
}
|
||||||
|
}
|
||||||
// 通知主进程
|
// 通知主进程
|
||||||
ipcRenderer.send('openWindow', {
|
ipcRenderer.send('openWindow', {
|
||||||
key,
|
key,
|
||||||
fullPath: configObj.fullPath,
|
fullPath: fullPath,
|
||||||
cookieData: { ...configObj.data }
|
cookieData: { ...configObj.data }
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
@ -551,10 +565,8 @@ export default {
|
||||||
res.rows[i].entpcourseworklistarray = []
|
res.rows[i].entpcourseworklistarray = []
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 去重
|
|
||||||
let ary = uniqBy([...list], 'id')
|
|
||||||
// 深度克隆
|
// 深度克隆
|
||||||
this.currentWorkList = cloneDeep(ary)
|
this.currentWorkList = cloneDeep(list)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getWeekday1(date) {
|
getWeekday1(date) {
|
||||||
|
|
|
@ -15,6 +15,15 @@
|
||||||
<el-radio value="1">女</el-radio>
|
<el-radio value="1">女</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item label="学段">
|
||||||
|
<el-radio-group v-model="user.edustage" @change="semeterChange">
|
||||||
|
<template v-for="(item,index) in semesterList" :key="index">
|
||||||
|
<el-radio :value="item.title">
|
||||||
|
{{item.title }}
|
||||||
|
</el-radio>
|
||||||
|
</template>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
<el-form-item label="任教学科">
|
<el-form-item label="任教学科">
|
||||||
<el-radio-group v-model="user.edusubject">
|
<el-radio-group v-model="user.edusubject">
|
||||||
<template v-for="(item,index) in subjectList" :key="index">
|
<template v-for="(item,index) in subjectList" :key="index">
|
||||||
|
@ -32,7 +41,7 @@
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { ref, getCurrentInstance } from 'vue'
|
import { ref, getCurrentInstance } from 'vue'
|
||||||
import { updateUserProfile } from '@/api/system/user'
|
import {updateUserInfo } from '@/api/system/user'
|
||||||
import { listEvaluation } from '@/api/subject/index'
|
import { listEvaluation } from '@/api/subject/index'
|
||||||
import useUserStore from '@/store/modules/user'
|
import useUserStore from '@/store/modules/user'
|
||||||
import {ElMessage} from 'element-plus'
|
import {ElMessage} from 'element-plus'
|
||||||
|
@ -46,6 +55,26 @@ const props = defineProps({
|
||||||
const { proxy } = getCurrentInstance()
|
const { proxy } = getCurrentInstance()
|
||||||
const userStore = useUserStore()
|
const userStore = useUserStore()
|
||||||
|
|
||||||
|
//选择学段
|
||||||
|
const semesterList = ref([
|
||||||
|
{
|
||||||
|
id:1,
|
||||||
|
title:'幼儿园'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:2,
|
||||||
|
title:'小学'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:3,
|
||||||
|
title:'初中'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:4,
|
||||||
|
title:'高中'
|
||||||
|
},
|
||||||
|
])
|
||||||
|
|
||||||
const rules = ref({
|
const rules = ref({
|
||||||
nickName: [{ required: true, message: '用户昵称不能为空', trigger: 'blur' }],
|
nickName: [{ required: true, message: '用户昵称不能为空', trigger: 'blur' }],
|
||||||
email: [
|
email: [
|
||||||
|
@ -97,9 +126,10 @@ setTimeout(() => {
|
||||||
function submit() {
|
function submit() {
|
||||||
proxy.$refs.userRef.validate((valid) => {
|
proxy.$refs.userRef.validate((valid) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
console.log(props.user)
|
props.user.avatar = userStore.user.avatar
|
||||||
updateUserProfile(props.user).then((response) => {
|
updateUserInfo(props.user).then((response) => {
|
||||||
if(response.code == 200){
|
if(response.code == 200){
|
||||||
|
userStore.login({username:props.user.phonenumber,password:props.user.plainpwd}).then(() => {
|
||||||
userStore.getInfo().then(res => {
|
userStore.getInfo().then(res => {
|
||||||
if(res.code === 200){
|
if(res.code === 200){
|
||||||
ElMessage.success('修改成功')
|
ElMessage.success('修改成功')
|
||||||
|
@ -107,6 +137,7 @@ function submit() {
|
||||||
ElMessage.error(response.msg)
|
ElMessage.error(response.msg)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
})
|
||||||
}else{
|
}else{
|
||||||
ElMessage.error(response.msg)
|
ElMessage.error(response.msg)
|
||||||
}
|
}
|
||||||
|
@ -114,4 +145,9 @@ function submit() {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
const semeterChange = (item) => {
|
||||||
|
if(item === '幼儿园'){
|
||||||
|
props.user.edusubject = ''
|
||||||
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
Loading…
Reference in New Issue