Browse Source

添加字段

lex-xin 5 months ago
parent
commit
4a6bd0a723

+ 5 - 0
src/components/editor/index.tsx

@@ -37,6 +37,10 @@ export default defineComponent({
       type: String,
       type: String,
       default: 'gyt'
       default: 'gyt'
     },
     },
+    maxLength: {
+      type: Number,
+      default: null
+    },
     id: {
     id: {
       type: String,
       type: String,
       default: ''
       default: ''
@@ -66,6 +70,7 @@ export default defineComponent({
     const toolbar = shallowRef()
     const toolbar = shallowRef()
     const editorConfig = {
     const editorConfig = {
       placeholder: props.placeholder as any,
       placeholder: props.placeholder as any,
+      maxLength: props.maxLength as any,
       onChange(editor: any) {
       onChange(editor: any) {
         const html = editor.getHtml()
         const html = editor.getHtml()
         if (editor.isEmpty()) {
         if (editor.isEmpty()) {

+ 1 - 1
src/views/educational-manage/component/material-list.tsx

@@ -429,7 +429,7 @@ export default defineComponent({
           preset="dialog"
           preset="dialog"
           showIcon={false}
           showIcon={false}
           title={state.cityType === 'add' ? '添加素材' : '修改素材'}
           title={state.cityType === 'add' ? '添加素材' : '修改素材'}
-          style={{ width: '700px' }}
+          style={{ width: '1000px' }}
           onClose={() => {
           onClose={() => {
             state.isLook = false
             state.isLook = false
           }}
           }}

+ 43 - 1
src/views/educational-manage/model/addMaterial.tsx

@@ -24,6 +24,7 @@ import { materialType } from '../educationalData'
 import UploadFile from '@/components/upload-file'
 import UploadFile from '@/components/upload-file'
 import { lessonType } from '@/views/knowledge-manage/knowledgeTypeData'
 import { lessonType } from '@/views/knowledge-manage/knowledgeTypeData'
 import SelectMusicSheet from './selectMusicSheet'
 import SelectMusicSheet from './selectMusicSheet'
+import Editor from '@/components/editor'
 
 
 export default defineComponent({
 export default defineComponent({
   name: 'addMaterial',
   name: 'addMaterial',
@@ -40,6 +41,8 @@ export default defineComponent({
       materialCategoryId: null, //素材分类
       materialCategoryId: null, //素材分类
       // adviseStudyTimeSecond: null,
       // adviseStudyTimeSecond: null,
       type: materialType.视频,
       type: materialType.视频,
+      phaseGoals: null,
+      checkItem: null,
       materialRefs: [] as any,
       materialRefs: [] as any,
       content: '', // 视频、图片链接或者是曲目编号
       content: '', // 视频、图片链接或者是曲目编号
       courseTypeCode: [], // 课程类型
       courseTypeCode: [], // 课程类型
@@ -124,7 +127,13 @@ export default defineComponent({
           message: '请选择课程类型',
           message: '请选择课程类型',
           trigger: ['blur', 'change']
           trigger: ['blur', 'change']
         }
         }
-      ]
+      ],
+      phaseGoals: [{
+        required: true, message: '请填写阶段目标' , trigger: ['blur', 'change', 'input']
+      }],
+      checkItem: [{
+        required: true, message: '请填写检查事项', trigger: ['blur', 'change', 'input']
+      }]
     }
     }
     // const categoryList = inject('categoryList', { list: [] }).list || []
     // const categoryList = inject('categoryList', { list: [] }).list || []
     const submit = () => {
     const submit = () => {
@@ -307,6 +316,39 @@ export default defineComponent({
                 </NFormItem>
                 </NFormItem>
               )}
               )}
             </NSpace>
             </NSpace>
+
+            <NFormItem label="阶段目标" required labelPlacement="left" path="phaseGoals">
+              <Editor v-model:value={saveModel.phaseGoals}
+                  editorType="simple"
+                  maxLength={1000}
+                  bucketName="news-info"
+                  excludeKeys={[
+                    'emotion',
+                    'insertTable',
+                    'uploadImage',
+                    'uploadVideo',
+                    'bulletedList',
+                    'numberedList',
+                    'blockquote',
+                    'divider'
+                  ]} />
+            </NFormItem>
+            <NFormItem label="检查事项" required labelPlacement="left" path="checkItem">
+            <Editor v-model:value={saveModel.checkItem}
+                  maxLength={1000}
+                  editorType="simple"
+                  bucketName="news-info"
+                  excludeKeys={[
+                    'emotion',
+                    'insertTable',
+                    'uploadImage',
+                    'uploadVideo',
+                    'bulletedList',
+                    'numberedList',
+                    'blockquote',
+                    'divider'
+                  ]} />
+            </NFormItem>
           </NForm>
           </NForm>
           {props.isLook ? (
           {props.isLook ? (
             ''
             ''

+ 1 - 1
src/views/teaching-manage/courseware-manage/components/createCourseware.tsx

@@ -56,7 +56,7 @@ export default defineComponent({
       name: [{ required: true, message: '请填写课件名称', trigger: ['blur', 'change'] }],
       name: [{ required: true, message: '请填写课件名称', trigger: ['blur', 'change'] }],
       courseTypeCode: [{ required: true, message: '请选择课程类型', trigger: ['blur', 'change'] }],
       courseTypeCode: [{ required: true, message: '请选择课程类型', trigger: ['blur', 'change'] }],
       level: [{ required: true, type: 'number', message: '请选择课程级别', trigger: ['blur', 'change'] }]
       level: [{ required: true, type: 'number', message: '请选择课程级别', trigger: ['blur', 'change'] }]
-    }
+    } as any
     // const getDetail = async () => {
     // const getDetail = async () => {
     //   if (!query.id) return
     //   if (!query.id) return
     //   loading.value = true
     //   loading.value = true