Selaa lähdekoodia

Merge branch 'dev-mata-ldz' of xiongzhu/raex_back into master

lidongze 2 vuotta sitten
vanhempi
commit
08a7e96763

+ 1 - 0
src/main/java/com/izouma/nineth/enums/MetaResourcesType.java

@@ -4,6 +4,7 @@ public enum MetaResourcesType {
     PARTY_ONE("党建一楼"),
     PARTY_TWO("党建二楼"),
     METAVERSE("元宇宙"),
+    COURSE("选课"),
     PARTY_THREE("党建三楼");
 
     private final String description;

+ 4 - 0
src/main/java/com/izouma/nineth/repo/MetaResourcesRepo.java

@@ -2,6 +2,7 @@ package com.izouma.nineth.repo;
 
 import com.izouma.nineth.domain.MetaResources;
 import com.izouma.nineth.dto.MetaRestResult;
+import com.izouma.nineth.enums.MetaResourcesType;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
 import org.springframework.data.jpa.repository.Modifying;
@@ -9,6 +10,7 @@ import org.springframework.data.jpa.repository.Query;
 
 import javax.naming.Name;
 import javax.transaction.Transactional;
+import java.util.List;
 
 public interface MetaResourcesRepo extends JpaRepository<MetaResources, Long>, JpaSpecificationExecutor<MetaResources> {
     @Query("update MetaResources t set t.del = true where t.id = ?1")
@@ -17,4 +19,6 @@ public interface MetaResourcesRepo extends JpaRepository<MetaResources, Long>, J
     void softDelete(Long id);
 
     MetaResources findByNameAndDel(String name, boolean del);
+
+    List<MetaResources> findByTypeAndDel(MetaResourcesType type, boolean del);
 }

+ 10 - 0
src/main/java/com/izouma/nineth/web/MetaResourcesController.java

@@ -5,6 +5,7 @@ import com.izouma.nineth.domain.MetaResourcesLikeRecord;
 import com.izouma.nineth.dto.MetaResourcesLikeDTO;
 import com.izouma.nineth.dto.MetaRestResult;
 import com.izouma.nineth.dto.PageQuery;
+import com.izouma.nineth.enums.MetaResourcesType;
 import com.izouma.nineth.exception.BusinessException;
 import com.izouma.nineth.repo.MetaResourcesLikeRecordRepo;
 import com.izouma.nineth.repo.MetaResourcesRepo;
@@ -123,5 +124,14 @@ public class MetaResourcesController extends BaseController {
         }
         return MetaRestResult.returnSuccess(metaResourcesLikeDTO);
     }
+
+    @GetMapping("/getValue/{type}")
+    public MetaRestResult<List<MetaResources>> getValue(@PathVariable MetaResourcesType type) {
+        List<MetaResources> metaResources = metaResourcesRepo.findByTypeAndDel(type,false);
+        if (Objects.isNull(metaResources)) {
+            return MetaRestResult.returnError("当前类型不存在!");
+        }
+        return MetaRestResult.returnSuccess(metaResources);
+    }
 }
 

+ 121 - 93
src/main/vue/src/views/MetaResourcesEdit.vue

@@ -6,16 +6,36 @@
         </page-title>
         <div class="edit-view__content-wrapper">
             <div class="edit-view__content-section">
-                <el-form :model="formData" :rules="rules" ref="form" label-width="82px" label-position="right" size="small"
-                    style="max-width: 500px;">
+                <el-form
+                    :model="formData"
+                    :rules="rules"
+                    ref="form"
+                    label-width="82px"
+                    label-position="right"
+                    size="small"
+                    style="max-width: 500px;"
+                >
                     <el-form-item prop="name" label="文件名称">
                         <el-input v-model="formData.name"></el-input>
                     </el-form-item>
                     <el-form-item prop="type" label="类型">
                         <el-select v-model="formData.type" clearable filterable placeholder="请选择">
-                            <el-option v-for="item in typeOptions" :key="item.value" :label="item.label"
-                                :value="item.value">
-                            </el-option>
+                            <template v-if="$store.state.userInfo.id === '8266668'">
+                                <el-option
+                                    v-for="item in typeOptionsExceptMeta"
+                                    :key="item.value"
+                                    :label="item.label"
+                                    :value="item.value"
+                                ></el-option>
+                            </template>
+                            <template v-if="$store.state.userInfo.id != '8266668'">
+                                <el-option
+                                    v-for="item in typeOptions"
+                                    :key="item.value"
+                                    :label="item.label"
+                                    :value="item.value"
+                                ></el-option>
+                            </template>
                         </el-select>
                     </el-form-item>
                     <el-form-item prop="value" label="文件">
@@ -34,99 +54,107 @@
 </template>
 <script>
 export default {
-	name: 'MetaResourcesEdit',
-	created() {
-		if (this.$route.query.id) {
-			this.$http
-				.get('metaResources/get/' + this.$route.query.id)
-				.then(res => {
-					this.formData = res;
-				})
-				.catch(e => {
-					console.log(e);
-					this.$message.error(e.error);
-				});
-		}
-	},
-	data() {
-		return {
-			saving: false,
+    name: 'MetaResourcesEdit',
+    created() {
+        if (this.$route.query.id) {
+            this.$http
+                .get('metaResources/get/' + this.$route.query.id)
+                .then(res => {
+                    this.formData = res;
+                })
+                .catch(e => {
+                    console.log(e);
+                    this.$message.error(e.error);
+                });
+        }
+    },
+    data() {
+        return {
+            saving: false,
             type: '',
-			typeOptions: [{ label: '党建一楼', value: 'PARTY_ONE' },
-			{ label: '党建二楼', value: 'PARTY_TWO' },
-			{ label: '党建三楼', value: 'PARTY_THREE' },
-            { label: '元宇宙', value: 'METAVERSE' }
-		],
-			formData: {},
-			rules: {
-				name: [
-					{
-						required: true,
-						message: '请输入名称',
-						trigger: 'blur'
-					}
-				],
-				type: [
-                    { 
-                        required: true, 
+            typeOptions: [
+                { label: '党建一楼', value: 'PARTY_ONE' },
+                { label: '党建二楼', value: 'PARTY_TWO' },
+                { label: '党建三楼', value: 'PARTY_THREE' },
+                { label: '元宇宙', value: 'METAVERSE' },
+                { label: '选课', value: 'COURSE' }
+            ],
+            typeOptionsExceptMeta: [
+                { label: '党建一楼', value: 'PARTY_ONE' },
+                { label: '党建二楼', value: 'PARTY_TWO' },
+                { label: '党建三楼', value: 'PARTY_THREE' },
+                { label: '选课', value: 'COURSE' }
+            ],
+            formData: {},
+            rules: {
+                name: [
+                    {
+                        required: true,
+                        message: '请输入名称',
+                        trigger: 'blur'
+                    }
+                ],
+                type: [
+                    {
+                        required: true,
                         message: '请选择类型',
                         trigger: 'blur'
-                     }
+                    }
                 ],
-				value: [
-					{
-						required: true,
-						message: '请上传文件',
-						trigger: 'blur'
-					}
-				]
-			}
-		};
-	},
-	methods: {
-		onSave() {
-			this.$refs.form.validate(valid => {
-				if (valid) {
-					this.submit();
-				} else {
-					return false;
-				}
-			});
-		},
-		submit() {
-			let data = { ...this.formData };
+                value: [
+                    {
+                        required: true,
+                        message: '请上传文件',
+                        trigger: 'blur'
+                    }
+                ]
+            }
+        };
+    },
+    methods: {
+        onSave() {
+            this.$refs.form.validate(valid => {
+                if (valid) {
+                    this.submit();
+                } else {
+                    return false;
+                }
+            });
+        },
+        submit() {
+            let data = { ...this.formData };
 
-			this.saving = true;
-			this.$http
-				.post('/metaResources/save', data, { body: 'json' })
-				.then(res => {
-					this.saving = false;
-					this.$message.success('成功');
-					this.$router.go(-1);
-				})
-				.catch(e => {
-					console.log(e);
-					this.saving = false;
-					this.$message.error(e.error);
-				});
-		},
-		onDelete() {
-			this.$confirm('删除将无法恢复,确认要删除么?', '警告', { type: 'error' })
-				.then(() => {
-					return this.$http.post(`/metaResources/del/${this.formData.id}`);
-				})
-				.then(() => {
-					this.$message.success('删除成功');
-					this.$router.go(-1);
-				})
-				.catch(e => {
-					if (e !== 'cancel') {
-						console.log(e);
-						this.$message.error((e || {}).error || '删除失败');
-					}
-				});
-		}
-	}
+            this.saving = true;
+            this.$http
+                .post('/metaResources/save', data, { body: 'json' })
+                .then(res => {
+                    this.saving = false;
+                    this.$message.success('成功');
+                    this.$router.go(-1);
+                })
+                .catch(e => {
+                    console.log(e);
+                    this.saving = false;
+                    this.$message.error(e.error);
+                });
+        },
+        onDelete() {
+            this.$confirm('删除将无法恢复,确认要删除么?', '警告', { type: 'error' })
+                .then(() => {
+                    return this.$http.post(`/metaResources/del/${this.formData.id}`);
+                })
+                .then(() => {
+                    this.$message.success('删除成功');
+                    this.$router.go(-1);
+                })
+                .catch(e => {
+                    if (e !== 'cancel') {
+                        console.log(e);
+                        this.$message.error((e || {}).error || '删除失败');
+                    }
+                });
+        }
+    }
 };
 </script>
 <style lang="less" scoped></style>

+ 17 - 15
src/main/vue/src/views/MetaResourcesList.vue

@@ -23,20 +23,20 @@
         <div class="filters-container">
             <el-select v-model="type" clearable placeholder="请选择类型" @change="getData">
                 <template v-if="$store.state.userInfo.id === '8266668'">
-                <el-option
-                    v-for="item in typeOptionsExceptMeta"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                ></el-option>
+                    <el-option
+                        v-for="item in typeOptionsExceptMeta"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value"
+                    ></el-option>
                 </template>
                 <template v-if="$store.state.userInfo.id != '8266668'">
-                <el-option
-                    v-for="item in typeOptions"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                ></el-option>
+                    <el-option
+                        v-for="item in typeOptions"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value"
+                    ></el-option>
                 </template>
             </el-select>
             <el-input
@@ -96,19 +96,21 @@ export default {
     mixins: [pageableTable],
     data() {
         return {
-            type: '',
+            type: 'PARTY_ONE',
             multipleMode: false,
             search: '',
             typeOptions: [
                 { label: '党建一楼', value: 'PARTY_ONE' },
                 { label: '党建二楼', value: 'PARTY_TWO' },
                 { label: '党建三楼', value: 'PARTY_THREE' },
-                { label: '元宇宙', value: 'METAVERSE' }
+                { label: '元宇宙', value: 'METAVERSE' },
+                { label: '选课', value: 'COURSE' }
             ],
             typeOptionsExceptMeta: [
                 { label: '党建一楼', value: 'PARTY_ONE' },
                 { label: '党建二楼', value: 'PARTY_TWO' },
-                { label: '党建三楼', value: 'PARTY_THREE' }
+                { label: '党建三楼', value: 'PARTY_THREE' },
+                { label: '选课', value: 'COURSE' }
             ],
             url: '/metaResources/all',
             downloading: false