|
@@ -23,6 +23,7 @@ import request from '@/helpers/request'
|
|
|
import requestOrigin from 'umi-request'
|
|
|
import UploadIcon from './images/music-icon.png'
|
|
|
import btnBg from './images/btn-bg.png'
|
|
|
+import iconBrid from './images/icon-brid.png'
|
|
|
import iconTitleUpload from './images/icon-title-upload.png'
|
|
|
import iconTitleUpdate from './images/icon-title-update.png'
|
|
|
import ColUpload from '@/components/col-upload'
|
|
@@ -72,7 +73,7 @@ export default defineComponent({
|
|
|
playSpeed: '' as any,
|
|
|
// hasBeat: 0,
|
|
|
musicCover: '',
|
|
|
- paymentType: 'CHARGE',
|
|
|
+ paymentType: 'FREE',
|
|
|
// showFingering: 1,
|
|
|
// canEvaluate: 1,
|
|
|
// notation: 1,
|
|
@@ -112,6 +113,10 @@ export default defineComponent({
|
|
|
}
|
|
|
},
|
|
|
async mounted() {
|
|
|
+ const isCatchTip = localStorage.getItem('isCatchTip')
|
|
|
+ if (!isCatchTip) {
|
|
|
+ this.messageTipStatus = true
|
|
|
+ }
|
|
|
// 获取基础数据
|
|
|
request
|
|
|
.get('/api-teacher/sysConfig/queryByParamNameList', {
|
|
@@ -385,12 +390,12 @@ export default defineComponent({
|
|
|
},
|
|
|
onFormatter2(val: any) {
|
|
|
const num = verifiyNumberInteger(val)
|
|
|
- if (num && Number(num) > 270) {
|
|
|
- return '270'
|
|
|
- }
|
|
|
- if (num && Number(num) < 45) {
|
|
|
- return '45'
|
|
|
- }
|
|
|
+ // if (num && Number(num) > 270) {
|
|
|
+ // return '270'
|
|
|
+ // }
|
|
|
+ // if (num && Number(num) < 45) {
|
|
|
+ // return '45'
|
|
|
+ // }
|
|
|
return num
|
|
|
},
|
|
|
fileName(name = '') {
|
|
@@ -485,6 +490,9 @@ export default defineComponent({
|
|
|
border={false}
|
|
|
/>
|
|
|
|
|
|
+ <div class={styles.bridSection}>
|
|
|
+ <img src={iconBrid} class={styles.iconBrid} />
|
|
|
+ </div>
|
|
|
<CellGroup class={[styles.area, styles.topArea]} border={false}>
|
|
|
<div
|
|
|
class={styles.uploadMessage}
|
|
@@ -503,7 +511,7 @@ export default defineComponent({
|
|
|
/>
|
|
|
|
|
|
<div class={styles['section-title']}></div>
|
|
|
- <Field required label="播放类型" center inputAlign="right">
|
|
|
+ <Field required label="播放模式" center inputAlign="right">
|
|
|
{{
|
|
|
input: () => (
|
|
|
<RadioGroup
|
|
@@ -646,7 +654,7 @@ export default defineComponent({
|
|
|
name="xmlFileUrl"
|
|
|
class={styles.fieldTypeBottom}
|
|
|
modelValue={this.xmlFileUrl}
|
|
|
- rules={[{ required: true, message: '请选择XML/MusicXML文件' }]}
|
|
|
+ rules={[{ required: true, message: '请选择XML文件' }]}
|
|
|
>
|
|
|
{{
|
|
|
label: () => (
|
|
@@ -654,9 +662,7 @@ export default defineComponent({
|
|
|
<span>
|
|
|
<i>*</i>上传XML
|
|
|
</span>
|
|
|
- <span class={styles.titleTip}>
|
|
|
- 仅支持XML/MusicXML格式文件
|
|
|
- </span>
|
|
|
+ <span class={styles.titleTip}>仅支持XML格式文件</span>
|
|
|
</div>
|
|
|
),
|
|
|
input: () =>
|
|
@@ -790,7 +796,7 @@ export default defineComponent({
|
|
|
|
|
|
<Field
|
|
|
label="曲目名称"
|
|
|
- clearable
|
|
|
+ required
|
|
|
name="name"
|
|
|
modelValue={this.name}
|
|
|
rules={[{ required: true, message: '请输入曲目名称' }]}
|
|
@@ -804,7 +810,7 @@ export default defineComponent({
|
|
|
|
|
|
<Field
|
|
|
label="音乐人"
|
|
|
- clearable
|
|
|
+ required
|
|
|
name="composer"
|
|
|
modelValue={this.composer}
|
|
|
rules={[{ required: true, message: '请输入音乐人' }]}
|
|
@@ -855,20 +861,28 @@ export default defineComponent({
|
|
|
<Field
|
|
|
required
|
|
|
label="曲目速度"
|
|
|
- center
|
|
|
name="playSpeed"
|
|
|
inputAlign="right"
|
|
|
rules={[{ required: true, message: '请输入曲目速度' }]}
|
|
|
errorMessageAlign="right"
|
|
|
v-model={this.playSpeed}
|
|
|
+ placeholder="请输入曲目速度,范围45-270"
|
|
|
// class={styles.inputControl}
|
|
|
formatter={this.onFormatter2}
|
|
|
+ onBlur={() => {
|
|
|
+ if (this.playSpeed && Number(this.playSpeed) > 270) {
|
|
|
+ this.playSpeed = '270'
|
|
|
+ }
|
|
|
+ if (this.playSpeed && Number(this.playSpeed) < 45) {
|
|
|
+ this.playSpeed = '45'
|
|
|
+ }
|
|
|
+ }}
|
|
|
autocomplete="off"
|
|
|
></Field>
|
|
|
|
|
|
<Field
|
|
|
label="曲目标签"
|
|
|
- placeholder=""
|
|
|
+ placeholder="请选择曲目标签"
|
|
|
inputAlign="right"
|
|
|
isLink
|
|
|
required
|
|
@@ -959,8 +973,18 @@ export default defineComponent({
|
|
|
/>
|
|
|
|
|
|
<div class={styles.rule}>
|
|
|
- <p>扣除手续费后该曲目预计收入为:</p>
|
|
|
<p>
|
|
|
+ 扣除手续费后该曲目预计收入为:
|
|
|
+ <span>
|
|
|
+ {(
|
|
|
+ ((parseFloat(this.musicPrice || '0') || 0) *
|
|
|
+ (100 - this.music_sheet_service_fee)) /
|
|
|
+ 100
|
|
|
+ ).toFixed(2)}
|
|
|
+ <span>元/人</span>
|
|
|
+ </span>
|
|
|
+ </p>
|
|
|
+ {/* <p>
|
|
|
每人:
|
|
|
<span>
|
|
|
{(
|
|
@@ -970,7 +994,7 @@ export default defineComponent({
|
|
|
).toFixed(2)}
|
|
|
</span>
|
|
|
元/人
|
|
|
- </p>
|
|
|
+ </p> */}
|
|
|
|
|
|
<p>
|
|
|
您的乐谱收入在学员购买后{this.music_account_period}
|
|
@@ -981,19 +1005,19 @@ export default defineComponent({
|
|
|
)}
|
|
|
</CellGroup>
|
|
|
|
|
|
- <ColSticky position="bottom" background="transparent">
|
|
|
- <div class={styles['button-area']}>
|
|
|
- <Button
|
|
|
- type="primary"
|
|
|
- block
|
|
|
- round
|
|
|
- native-type="submit"
|
|
|
- disabled={this.submitLoading}
|
|
|
- >
|
|
|
- <img src={btnBg} />
|
|
|
- </Button>
|
|
|
- </div>
|
|
|
- </ColSticky>
|
|
|
+ {/* <ColSticky position="bottom" background="transparent"> */}
|
|
|
+ <div class={[styles['button-area']]}>
|
|
|
+ <Button
|
|
|
+ type="primary"
|
|
|
+ block
|
|
|
+ round
|
|
|
+ native-type="submit"
|
|
|
+ disabled={this.submitLoading}
|
|
|
+ >
|
|
|
+ <img src={btnBg} />
|
|
|
+ </Button>
|
|
|
+ </div>
|
|
|
+ {/* </ColSticky> */}
|
|
|
{/* <Popup
|
|
|
show={this.showPicker}
|
|
|
round
|
|
@@ -1023,7 +1047,7 @@ export default defineComponent({
|
|
|
round
|
|
|
closeable
|
|
|
position="bottom"
|
|
|
- style={{ height: '60%' }}
|
|
|
+ style={{ height: '35%' }}
|
|
|
teleport="body"
|
|
|
onUpdate:show={val => (this.tagVisibility = val)}
|
|
|
>
|
|
@@ -1043,6 +1067,9 @@ export default defineComponent({
|
|
|
type={this.messageTipType}
|
|
|
show={this.messageTipStatus}
|
|
|
onConfirm={() => {
|
|
|
+ if (this.messageTipType === 'upload') {
|
|
|
+ localStorage.setItem('isCatchTip', '1')
|
|
|
+ }
|
|
|
this.messageTipStatus = false
|
|
|
}}
|
|
|
/>
|