浏览代码

Merge branch 'develop' into test

zouxuan 1 年之前
父节点
当前提交
3dd4b8cba9

+ 76 - 43
src/views/music-library/music-sheet/modal/music-operation.tsx

@@ -388,6 +388,7 @@ export default defineComponent({
         } catch (error) {
         }
         state.partListNames = getPartListNames(res?.target?.result as any) as any
+        parseInstrumentAndSubject(res?.target?.result as any)
         // 这里是如果没有当前音轨就重新写
         for (let j = 0; j < state.partListNames.length; j++) {
           if (!forms.musicSheetSoundList[j]) {
@@ -418,6 +419,36 @@ export default defineComponent({
       xmlRead.readAsText(file)
     }
 
+    const parseInstrumentAndSubject = (xml: any) => {
+      if (!xml) return
+      const xmlParse = new DOMParser().parseFromString(xml, 'text/xml')
+      // 乐器
+      const instrumentCodeList: any = [];
+      const instrumentEle = xmlParse.getElementsByTagName('virtual-instrument');
+      for (let index = 0; index < instrumentEle.length; index++) {
+        const note = instrumentEle[index]
+        const instrumentCode = note.getElementsByTagName('virtual-name')?.[0]?.textContent || '';
+        if (instrumentCode && !instrumentCodeList.includes(instrumentCode)) {
+          instrumentCodeList.push(instrumentCode);
+        }
+      }
+      const codeIdMap = new Map<string, string>();
+      state.instrumentData.forEach((data: any) => {
+        codeIdMap.set(data.code, data.id + '');
+      })
+      forms.musicalInstrumentIdList = [];
+      instrumentCodeList.forEach((code: string) => {
+        if (codeIdMap.has(code)) {
+          forms.musicalInstrumentIdList.push(codeIdMap.get(code));
+        }
+      })
+
+      // 声部
+      if (forms.musicalInstrumentIdList.length > 0) {
+        showBackSubject(forms.musicalInstrumentIdList);
+      }
+    }
+
     // 获取xml中所有轨道 乐器
     const getPartListNames = (xml: any) => {
       if (!xml) return []
@@ -447,30 +478,30 @@ export default defineComponent({
       }
 
       // 乐器
-      const instrumentCodeList: any = [];
-      const instrumentEle = xmlParse.getElementsByTagName('virtual-instrument');
-      for (let index = 0; index < instrumentEle.length; index++) {
-        const note = instrumentEle[index]
-        const instrumentCode = note.getElementsByTagName('virtual-name')?.[0]?.textContent || '';
-        if (instrumentCode && !instrumentCodeList.includes(instrumentCode)) {
-          instrumentCodeList.push(instrumentCode);
-        }
-      }
-      const codeIdMap = new Map<string, string>();
-      state.instrumentData.forEach((data: any) => {
-        codeIdMap.set(data.code, data.id + '');
-      })
-      forms.musicalInstrumentIdList = [];
-      instrumentCodeList.forEach((code: string) => {
-        if (codeIdMap.has(code)) {
-          forms.musicalInstrumentIdList.push(codeIdMap.get(code));
-        }
-      })
-
-      // 声部
-      if (forms.musicalInstrumentIdList.length > 0) {
-        showBackSubject(forms.musicalInstrumentIdList);
-      }
+      // const instrumentCodeList: any = [];
+      // const instrumentEle = xmlParse.getElementsByTagName('virtual-instrument');
+      // for (let index = 0; index < instrumentEle.length; index++) {
+      //   const note = instrumentEle[index]
+      //   const instrumentCode = note.getElementsByTagName('virtual-name')?.[0]?.textContent || '';
+      //   if (instrumentCode && !instrumentCodeList.includes(instrumentCode)) {
+      //     instrumentCodeList.push(instrumentCode);
+      //   }
+      // }
+      // const codeIdMap = new Map<string, string>();
+      // state.instrumentData.forEach((data: any) => {
+      //   codeIdMap.set(data.code, data.id + '');
+      // })
+      // forms.musicalInstrumentIdList = [];
+      // instrumentCodeList.forEach((code: string) => {
+      //   if (codeIdMap.has(code)) {
+      //     forms.musicalInstrumentIdList.push(codeIdMap.get(code));
+      //   }
+      // })
+      //
+      // // 声部
+      // if (forms.musicalInstrumentIdList.length > 0) {
+      //   showBackSubject(forms.musicalInstrumentIdList);
+      // }
       return partListNames
     }
 
@@ -480,11 +511,16 @@ export default defineComponent({
       const partListNames = deepClone(_names) || []
       partListNames.forEach((item: any) => {
         const index = forms.musicSheetSoundList.findIndex((ground: any) => item.value == ground.track)
-        if (index > -1 && track != item.value) {
-          item.disabled = true
-        } else {
+        if (index > -1 && track == item.value) {
           item.disabled = false
+        } else {
+          item.disabled = true
         }
+        // if (index > -1 && track != item.value) {
+        //   item.disabled = true
+        // } else {
+        //   item.disabled = false
+        // }
       })
       return partListNames || []
     }
@@ -661,11 +697,6 @@ export default defineComponent({
           forms.sourceType = data.sourceType
           forms.musicSheetExtend = data.musicSheetExtend
 
-          // 初始化音轨和原音
-          forms.musicSheetSoundList = data.musicSheetSoundList || []
-          forms.musicSheetSoundList.forEach((next: any) => {
-            forms.multiTracksSelection.push(next.track)
-          })
 
           // 获取渐变 和 是否多声部
           try {
@@ -679,14 +710,13 @@ export default defineComponent({
               gradualData.list = getGradualLengthByXml(res?.data as any).filter(
                   (item: any) => item.length === 2
               )
-              // state.partListNames = getPartListNames(res?.data as any) as any
-              //
-              // state.partListNames.forEach((item: any) => {
-              //   const tracks = forms.musicSheetSoundList.map((item: any) => item.track);
-              //   if (tracks.indexOf(item.label) <= -1) {
-              //     forms.musicSheetSoundList.push({audioFileUrl: '', track: item.label})
-              //   }
-              // })
+              state.partListNames = getPartListNames(res?.data as any) as any
+
+              // 初始化音轨和原音
+              forms.musicSheetSoundList = data.musicSheetSoundList || []
+              forms.musicSheetSoundList.forEach((next: any) => {
+                forms.multiTracksSelection.push(next.track)
+              })
             }
           })
 
@@ -723,7 +753,8 @@ export default defineComponent({
                   rule={[
                     {
                       required: true,
-                      message: '请输入曲目名称'
+                      message: '请输入曲目名称',
+                      trigger: ['input', 'blur']
                     }
                   ]}
               >
@@ -740,7 +771,8 @@ export default defineComponent({
                   rule={[
                     {
                       required: true,
-                      message: '请输入音乐人'
+                      message: '请输入音乐人',
+                      trigger: ['input', 'blur']
                     }
                   ]}
               >
@@ -928,7 +960,8 @@ export default defineComponent({
                            rule={[
                              {
                                required: true,
-                               message: '请选择曲目分类'
+                               message: '请选择曲目分类',
+                               trigger: ['input', 'blur']
                              }
                            ]}
               >

+ 1 - 3
src/views/music-library/music-sheet/modal/musicSheetOwnerDialog.tsx

@@ -1,10 +1,8 @@
-import {NButton, NDataTable, NFormItem, NInput, NSelect, NSpace, useDialog, useMessage} from 'naive-ui'
+import {NButton, NDataTable, NFormItem, NInput, NSelect, NSpace, useMessage} from 'naive-ui'
 import {defineComponent, onMounted, PropType, reactive, ref} from 'vue'
 import {musicSheetApplicationOwnerList} from '../../api'
 import SaveForm from "@components/save-form";
 import Pagination from "@components/pagination";
-import {clientType} from "@/utils/constant";
-import {getMapValueByKey} from "@/utils/objectUtil";
 import deepClone from "@/utils/deep.clone";
 
 export default defineComponent({

+ 8 - 1
src/views/music-library/music-sheet/modal/use-project.tsx

@@ -352,6 +352,7 @@ export default defineComponent({
                                     {
                                       required: gymFileRequire.value,
                                       message: '请选择曲目分类',
+                                      trigger: ['input', 'blur']
                                     }
                                   ]}
                               >
@@ -375,6 +376,7 @@ export default defineComponent({
                                     {
                                       required: gymFileRequire.value,
                                       message: '请选择收费类型',
+                                      trigger: ['input', 'blur']
                                     }
                                   ]}
                               >
@@ -410,6 +412,7 @@ export default defineComponent({
                                     {
                                       required: gytFileRequire.value,
                                       message: '请选择分类',
+                                      trigger: ['input', 'blur']
                                     }
                                   ]}
                               >
@@ -465,6 +468,7 @@ export default defineComponent({
                                     {
                                       required: klxFileRequire.value,
                                       message: '请选择曲目标签',
+                                      trigger: ['input', 'blur']
                                     }
                                   ]}
                               >
@@ -510,6 +514,7 @@ export default defineComponent({
                                     {
                                       required: klxFileRequire.value,
                                       message: '请输入曲目价格',
+                                      trigger: ['input', 'blur']
                                     }
                                   ]}
                               >
@@ -552,6 +557,7 @@ export default defineComponent({
                                     {
                                       required: klxFileRequire.value,
                                       message: '请选择是否精品乐谱',
+                                      trigger: ['input', 'blur']
                                     }
                                   ]}
                               >
@@ -595,7 +601,8 @@ export default defineComponent({
                                   rule={[
                                     {
                                       required: ktFileRequire.value,
-                                      message: '请选择乐谱教材'
+                                      message: '请选择乐谱教材',
+                                      trigger: ['input', 'blur']
                                     }
                                   ]}
                               >

+ 7 - 4
src/views/system-manage/param-settings/component/project-setting.tsx

@@ -1,4 +1,4 @@
-import {NButton, NForm, NFormItemGi, NGrid, NIcon, NInput, NTooltip, useMessage} from 'naive-ui'
+import {NButton, NForm, NFormItemGi, NGrid, NIcon, NInput, NInputNumber, NTooltip, useMessage} from 'naive-ui'
 import {defineComponent, onMounted, reactive, ref} from 'vue'
 import {sysParamConfigQueryByParamName, sysParamConfigUpdate} from "@views/system-manage/param-settings/api";
 import {HelpCircleOutline} from "@vicons/ionicons5";
@@ -73,11 +73,14 @@ export default defineComponent({
                     }
                   ]}
               >
-                <NInput
-                    v-model:value={forms.paramValue}
+                <NInputNumber
+                    style={{ width: '210px' }}
                     placeholder="请输入评测频率"
+                    v-model:value={forms.paramValue}
                     clearable
-                    style="width:200px"
+                    showButton={false}
+                    min={1}
+                    max={999}
                 />
                 <NTooltip style={"padding-left: 10px"}>
                   {{

+ 8 - 4
src/views/system-manage/subject-manage/instrument/modal/instrument-save.tsx

@@ -74,7 +74,8 @@ export default defineComponent({
                 rule={[
                   {
                     required: true,
-                    message: '请输入乐器名称'
+                    message: '请输入乐器名称',
+                    trigger: ['input', 'blur']
                   }
                 ]}
             >
@@ -92,7 +93,8 @@ export default defineComponent({
                 rule={[
                   {
                     required: true,
-                    message: '请选择是否支持转简谱'
+                    message: '请选择是否支持转简谱',
+                    trigger: ['input', 'blur']
                   }
                 ]}
             >
@@ -121,7 +123,8 @@ export default defineComponent({
                     rule={[
                       {
                         required: true,
-                        message: '请选择默认谱面'
+                        message: '请选择默认谱面',
+                        trigger: ['input', 'blur']
                       }
                     ]}
                 >
@@ -139,7 +142,8 @@ export default defineComponent({
                 rule={[
                   {
                     required: true,
-                    message: '请输入乐器编码'
+                    message: '请输入乐器编码',
+                    trigger: ['input', 'blur']
                   }
                 ]}
             >

+ 2 - 1
src/views/system-manage/subject-manage/subject-categorize/modal/categorize-save.tsx

@@ -70,7 +70,8 @@ export default defineComponent({
                 rule={[
                   {
                     required: true,
-                    message: '请输入分类名称'
+                    message: '请输入分类名称',
+                    trigger: ['input', 'blur']
                   }
                 ]}
             >

+ 6 - 3
src/views/system-manage/subject-manage/subject/modal/subject-save.tsx

@@ -147,7 +147,8 @@ export default defineComponent({
                 rule={[
                   {
                     required: true,
-                    message: '请输入声部名称'
+                    message: '请输入声部名称',
+                    trigger: ['input', 'blur']
                   }
                 ]}
             >
@@ -165,7 +166,8 @@ export default defineComponent({
                 rule={[
                   {
                     required: true,
-                    message: '请输入声部编码'
+                    message: '请输入声部编码',
+                    trigger: ['input', 'blur']
                   }
                 ]}
             >
@@ -183,7 +185,8 @@ export default defineComponent({
                 rule={[
                   {
                     required: true,
-                    message: '请输入声部图片'
+                    message: '请上传声部图片',
+                    trigger: ['input', 'blur']
                   }
                 ]}
             >

+ 4 - 2
src/views/system-manage/system-apply/apply-operation.tsx

@@ -186,7 +186,8 @@ export default defineComponent({
             rule={[
               {
                 required: true,
-                message: '请输入应用名称'
+                message: '请输入应用名称',
+                trigger: ['input', 'blur']
               }
             ]}
           >
@@ -220,7 +221,8 @@ export default defineComponent({
             rule={[
               {
                 required: true,
-                message: '请输入权限客户端'
+                message: '请输入权限客户端',
+                trigger: ['input', 'blur']
               }
             ]}
           >