|
@@ -9,8 +9,17 @@
|
|
<Button type="primary" @click="resetAllSpace()">確定</Button>
|
|
<Button type="primary" @click="resetAllSpace()">確定</Button>
|
|
</div>
|
|
</div>
|
|
</Modal>
|
|
</Modal>
|
|
|
|
+ <!--未存關閉弹窗 -->
|
|
|
|
+ <Modal class="space-auth-modal" v-model="isOpenComfirmClose" :title="'保存提醒'">
|
|
|
|
+ <p>当前空間数据尚未保存。如果關閉,修改的数据将不会保存!</p>
|
|
|
|
+
|
|
|
|
+ <div slot="footer">
|
|
|
|
+ <Button type="text" @click="isOpenComfirmClose = false">取消</Button>
|
|
|
|
+ <Button type="primary" @click="closeAuth()">確定</Button>
|
|
|
|
+ </div>
|
|
|
|
+ </Modal>
|
|
<div class="title">
|
|
<div class="title">
|
|
- 分配教學空間<span @click="closeAuth()"><v-icon class="close-icon" iconClass="close"/></span>
|
|
|
|
|
|
+ 分配教學空間<span @click="beforeCloseAuth()"><v-icon class="close-icon" iconClass="close"/></span>
|
|
<div class="title-btn-group">
|
|
<div class="title-btn-group">
|
|
<div class="assign-btn" @click="isOpenRemove = true">回收空間</div>
|
|
<div class="assign-btn" @click="isOpenRemove = true">回收空間</div>
|
|
<div class="assign-btn" @click="confirmSave()">保存變更</div>
|
|
<div class="assign-btn" @click="confirmSave()">保存變更</div>
|
|
@@ -127,8 +136,10 @@ export default {
|
|
multiAssignValue: '-',
|
|
multiAssignValue: '-',
|
|
color: ['#eb974e', '#fb62bb', '#00f492'],
|
|
color: ['#eb974e', '#fb62bb', '#00f492'],
|
|
isOpenRemove: false,
|
|
isOpenRemove: false,
|
|
|
|
+ isOpenComfirmClose: false,
|
|
|
|
+
|
|
tempTeacherAssignedData: [],
|
|
tempTeacherAssignedData: [],
|
|
- updated: false, //是否保存
|
|
|
|
|
|
+
|
|
previousAdvancedNum: 0,
|
|
previousAdvancedNum: 0,
|
|
previousNormalNum: 0
|
|
previousNormalNum: 0
|
|
}
|
|
}
|
|
@@ -136,6 +147,7 @@ export default {
|
|
mounted() {
|
|
mounted() {
|
|
this.tempTeacherAssignedData = []
|
|
this.tempTeacherAssignedData = []
|
|
},
|
|
},
|
|
|
|
+
|
|
computed: {
|
|
computed: {
|
|
...mapGetters({
|
|
...mapGetters({
|
|
schoolCode: 'user/getLoginSchooCode', // 取得學校簡碼
|
|
schoolCode: 'user/getLoginSchooCode', // 取得學校簡碼
|
|
@@ -197,12 +209,12 @@ export default {
|
|
//等後端回傳後Loading結束才傳給使用者訊息
|
|
//等後端回傳後Loading結束才傳給使用者訊息
|
|
if (val == 1) {
|
|
if (val == 1) {
|
|
this.$Message.success('回收成功')
|
|
this.$Message.success('回收成功')
|
|
- this.updated = true
|
|
|
|
|
|
+
|
|
this.setIsKeyInSpace(false)
|
|
this.setIsKeyInSpace(false)
|
|
}
|
|
}
|
|
if (val == 2) {
|
|
if (val == 2) {
|
|
this.$Message.success('更新成功')
|
|
this.$Message.success('更新成功')
|
|
- this.updated = true
|
|
|
|
|
|
+
|
|
this.setIsKeyInSpace(false)
|
|
this.setIsKeyInSpace(false)
|
|
}
|
|
}
|
|
this.setMsgNum(0)
|
|
this.setMsgNum(0)
|
|
@@ -244,7 +256,7 @@ export default {
|
|
},
|
|
},
|
|
setAllSpace() {
|
|
setAllSpace() {
|
|
if (this.multiAssignValue != '-') {
|
|
if (this.multiAssignValue != '-') {
|
|
- this.updated = false
|
|
|
|
|
|
+ this.setIsKeyInSpace(true)
|
|
if (this.multiAssignValue > this.maxFixedAssignedValue / this.teacherSpaceData.length) {
|
|
if (this.multiAssignValue > this.maxFixedAssignedValue / this.teacherSpaceData.length) {
|
|
this.$Message.error('超出剩餘空間量,套用失敗')
|
|
this.$Message.error('超出剩餘空間量,套用失敗')
|
|
this.multiAssignValue = '-'
|
|
this.multiAssignValue = '-'
|
|
@@ -254,8 +266,6 @@ export default {
|
|
let item = element
|
|
let item = element
|
|
})
|
|
})
|
|
|
|
|
|
-
|
|
|
|
-
|
|
|
|
//前端先做圖表的改變,此時還沒有寫到後端
|
|
//前端先做圖表的改變,此時還沒有寫到後端
|
|
this.setTeacherUsedSpaceNum(this.teacherSpaceData)
|
|
this.setTeacherUsedSpaceNum(this.teacherSpaceData)
|
|
this.updatePieNumData()
|
|
this.updatePieNumData()
|
|
@@ -272,7 +282,7 @@ export default {
|
|
let jobFitNum = 0
|
|
let jobFitNum = 0
|
|
let unchangedUsingSpace = 0
|
|
let unchangedUsingSpace = 0
|
|
if (this.multiAssignValue != '-') {
|
|
if (this.multiAssignValue != '-') {
|
|
- this.updated = false
|
|
|
|
|
|
+ this.setIsKeyInSpace(true)
|
|
//選擇老師
|
|
//選擇老師
|
|
if (this.selectJob == '教師') {
|
|
if (this.selectJob == '教師') {
|
|
this.teacherSpaceData.forEach(element => {
|
|
this.teacherSpaceData.forEach(element => {
|
|
@@ -313,7 +323,6 @@ export default {
|
|
element.size = parseInt(this.multiAssignValue)
|
|
element.size = parseInt(this.multiAssignValue)
|
|
}
|
|
}
|
|
})
|
|
})
|
|
-
|
|
|
|
|
|
|
|
//前端先做圖表的改變,此時還沒有寫到後端
|
|
//前端先做圖表的改變,此時還沒有寫到後端
|
|
this.setTeacherUsedSpaceNum(this.teacherSpaceData)
|
|
this.setTeacherUsedSpaceNum(this.teacherSpaceData)
|
|
@@ -345,7 +354,6 @@ export default {
|
|
element.size = this.multiAssignValue
|
|
element.size = this.multiAssignValue
|
|
}
|
|
}
|
|
})
|
|
})
|
|
-
|
|
|
|
|
|
|
|
//前端先做圖表的改變,此時還沒有寫到後端
|
|
//前端先做圖表的改變,此時還沒有寫到後端
|
|
this.setTeacherUsedSpaceNum(this.teacherSpaceData)
|
|
this.setTeacherUsedSpaceNum(this.teacherSpaceData)
|
|
@@ -365,7 +373,7 @@ export default {
|
|
//套用權限
|
|
//套用權限
|
|
setAdvancedPerMissionSpace(type) {
|
|
setAdvancedPerMissionSpace(type) {
|
|
if (this.multiAssignValue != '-') {
|
|
if (this.multiAssignValue != '-') {
|
|
- this.updated = false
|
|
|
|
|
|
+ this.setIsKeyInSpace(true)
|
|
|
|
|
|
let previousAdvancedNum = 0
|
|
let previousAdvancedNum = 0
|
|
let previousNormalNum = 0
|
|
let previousNormalNum = 0
|
|
@@ -401,8 +409,6 @@ export default {
|
|
}
|
|
}
|
|
})
|
|
})
|
|
|
|
|
|
-
|
|
|
|
-
|
|
|
|
//前端先做圖表的改變,此時還沒有寫到後端
|
|
//前端先做圖表的改變,此時還沒有寫到後端
|
|
this.setTeacherUsedSpaceNum(this.teacherSpaceData)
|
|
this.setTeacherUsedSpaceNum(this.teacherSpaceData)
|
|
this.updatePieNumData()
|
|
this.updatePieNumData()
|
|
@@ -436,17 +442,21 @@ export default {
|
|
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',')
|
|
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',')
|
|
}
|
|
}
|
|
},
|
|
},
|
|
|
|
+ beforeCloseAuth() {
|
|
|
|
+ if (this.isKeyInSpace == true) {
|
|
|
|
+ this.isOpenComfirmClose = true
|
|
|
|
+ } else {
|
|
|
|
+ this.closeAuth()
|
|
|
|
+ }
|
|
|
|
+ },
|
|
closeAuth() {
|
|
closeAuth() {
|
|
this.tempTeacherAssignedData = [] //清空暫存
|
|
this.tempTeacherAssignedData = [] //清空暫存
|
|
this.$emit('closeSpaceAuth')
|
|
this.$emit('closeSpaceAuth')
|
|
this.$emit('reload') //重新整理
|
|
this.$emit('reload') //重新整理
|
|
this.multiAssignValue = '-'
|
|
this.multiAssignValue = '-'
|
|
-
|
|
|
|
- //如果都沒有按保存,或有進行手動輸入,重置為初始值
|
|
|
|
- if (this.updated == false || this.isKeyInSpace == true) {
|
|
|
|
- this.resetTeacherSpaceUIData()
|
|
|
|
- this.updatePieNumData()
|
|
|
|
- }
|
|
|
|
|
|
+ this.resetTeacherSpaceUIData()
|
|
|
|
+ this.updatePieNumData()
|
|
|
|
+ this.isOpenComfirmClose = false
|
|
},
|
|
},
|
|
//回收空間
|
|
//回收空間
|
|
resetAllSpace() {
|
|
resetAllSpace() {
|