123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212 |
- import {NAlert, NButton, NForm, NFormItemGi, NGrid, NInput, NInputGroup, useMessage} from 'naive-ui'
- import {defineComponent, onMounted, reactive, ref} from 'vue'
- import {sysParamConfigQueryByParamNameList, sysParamConfigUpdate} from '@views/system-manage/param-settings/api'
- export default defineComponent({
- name: 'project-param-setting',
- setup() {
- const forms = reactive({}) as any
- const formsRef = ref()
- const btnLoading = ref(false)
- const message = useMessage()
- onMounted(async () => {
- const {data} = await sysParamConfigQueryByParamNameList("" +
- "not_played_note_percent" +
- ",played_note_high_low_percent" +
- ",played_note_fast_slow_percent" +
- ",played_note_duration_less_percent" +
- ",evaluation_level_score_less" +
- ",evaluation_level_score_less_beginner" +
- ",not_proficient_section_score" as any)
- if (data) {
- data.forEach((row: any) => {
- forms[row.paramName] = row.paramValue
- })
- } else {
- message.error('加载配置参数失败')
- }
- })
- const onSubmit = async () => {
- const configs = [] as any
- Object.keys(forms).forEach((item) => {
- configs.push({
- "paramName": item,
- "paramValue": forms[item],
- })
- })
- const param = {
- group: 'OTHER',
- configs: configs
- }
- btnLoading.value = true
- try {
- const res = (await sysParamConfigUpdate(param)) as any
- if (res && res.code == '200') {
- message.success('保存成功')
- }
- } catch (err) {
- }
- btnLoading.value = false
- }
- return () => (
- <>
- <NForm labelPlacement="left" model={forms} requireMarkPlacement="left" ref={formsRef}>
- <NAlert
- title="云教练配置"
- showIcon={false}
- bordered={false}
- style="margin-bottom: 12px;"
- />
- <h3>1、异常情况提示配置</h3>
- <NGrid cols={1} style={"padding-left: 13px"}>
- <NFormItemGi
- style={"margin-top:10px"}
- label="设备问题:未演奏音符达到"
- path="not_played_note_percent"
- rule={[
- {
- required: true,
- pattern: /^\d+$/,
- message: '请输入',
- trigger: ['blur', 'input']
- }
- ]}
- >
- <NInputGroup style={"width: 140px !important;margin-right: 14px"}>
- <NInput v-model:value={forms['not_played_note_percent']}>
- {{suffix: () => '%'}}
- </NInput>
- </NInputGroup>
- </NFormItemGi>
- <NFormItemGi
- label="音准问题:满足音符偏高/偏低达到"
- path="played_note_high_low_percent"
- rule={[
- {
- required: true,
- pattern: /^\d+$/,
- message: '请输入',
- trigger: ['blur', 'input']
- }
- ]}
- >
- <NInputGroup style={"width: 140px !important;margin-right: 14px"}>
- <NInput v-model:value={forms['played_note_high_low_percent']}>
- {{suffix: () => '%'}}
- </NInput>
- </NInputGroup>
- 时提示
- </NFormItemGi>
- <NFormItemGi
- label="节奏问题:演奏音符偏快/偏慢达到"
- path="played_note_fast_slow_percent"
- rule={[
- {
- required: true,
- pattern: /^\d+$/,
- message: '请输入',
- trigger: ['blur', 'input']
- }
- ]}
- >
- <NInputGroup style={"width: 140px !important;margin-right: 14px"}>
- <NInput v-model:value={forms['played_note_fast_slow_percent']}>
- {{suffix: () => '%'}}
- </NInput>
- </NInputGroup>
- 时提示
- </NFormItemGi>
- <NFormItemGi
- label="完整性问题:演奏音符时值不足达到"
- path="played_note_duration_less_percent"
- rule={[
- {
- required: true,
- pattern: /^\d+$/,
- message: '请输入',
- trigger: ['blur', 'input']
- }
- ]}
- >
- <NInputGroup style={"width: 140px !important;margin-right: 14px"}>
- <NInput v-model:value={forms['played_note_duration_less_percent']}>
- {{suffix: () => '%'}}
- </NInput>
- </NInputGroup>
- 时提示
- </NFormItemGi>
- <NFormItemGi
- label="评测难度:评测级别为进阶、大师时,评测维度分数都低于"
- path="evaluation_level_score_less"
- rule={[
- {
- required: true,
- pattern: /^\d+$/,
- message: '请输入',
- trigger: ['blur', 'input']
- }
- ]}
- >
- <NInputGroup style={"width: 140px !important;margin-right: 14px"}>
- <NInput v-model:value={forms['evaluation_level_score_less']}>
- {{suffix: () => '分'}}
- </NInput>
- </NInputGroup>
- 时提示
- </NFormItemGi>
- <NFormItemGi
- label="评测难度:评测级别为入门时,评测维度分数都低于"
- path="evaluation_level_score_less_beginner"
- rule={[
- {
- required: true,
- pattern: /^\d+$/,
- message: '请输入',
- trigger: ['blur', 'input']
- }
- ]}
- >
- <NInputGroup style={"width: 140px !important;margin-right: 14px"}>
- <NInput v-model:value={forms['evaluation_level_score_less_beginner']}>
- {{suffix: () => '分'}}
- </NInput>
- </NInputGroup>
- 时提示
- </NFormItemGi>
- <NFormItemGi
- label="不熟练小节:评测分值不低于"
- path="not_proficient_section_score"
- rule={[
- {
- required: true,
- pattern: /^\d+$/,
- message: '请输入',
- trigger: ['blur', 'input']
- }
- ]}
- >
- <NInputGroup style={"width: 140px !important;margin-right: 14px"}>
- <NInput v-model:value={forms['not_proficient_section_score']}>
- {{suffix: () => '分'}}
- </NInput>
- </NInputGroup>
- </NFormItemGi>
- </NGrid>
- </NForm>
- <NButton
- type="primary"
- onClick={onSubmit}
- loading={btnLoading.value}
- // v-auth="sysParamConfig/update1750838255892299777"
- >
- 保存设置
- </NButton>
- </>
- )
- }
- })
|