index.f5ca5629.js 12 KB

1
  1. import{d as S,a as t,a7 as k,B as h,b as n,T as N,a8 as C,m as u,x as f,E as T,v as y,w as j,y as v,S as q,P as F,a9 as A}from"./vendor.415f94b5.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.f61578bb.js";/* empty css */import{C as g,a as o}from"./index.9c53aaf8.js";import{S as B}from"./index.d3edcef1.js";/* empty css *//* empty css *//* empty css *//* empty css */import{r as b,p as x,e as P}from"./index.b3da22a8.js";import{S as D}from"./select-tag.496d52a3.js";import{t as p}from"./teacherState.8e15c744.js";/* empty css *//* empty css */import"./index.43b9f675.js";import"./index.926ca9c5.js";const U={2:"\u662F",0:"\u5426"},V={0:"\u5426",1:"\u662F"},E={0:"\u5426",1:"\u662F"},M=e=>{var s,r;const i={speed:0,title:"",composer:""},a=new DOMParser().parseFromString(e,"text/xml");i.title=((s=a.getElementsByTagName("work-title")[0])==null?void 0:s.textContent)||"",i.composer=((r=a.getElementsByTagName("creator")[0])==null?void 0:r.textContent)||"";const c=a.getElementsByTagName("measure");for(const d of Array.from(c)){const m=d.getElementsByTagName("per-minute");if(m.length&&m[m.length-1]){i.speed=parseFloat(m[m.length-1].textContent||"0");break}}return i};var w=S({name:"Upload",props:{accept:{type:String},formatFile:{type:Function,default:e=>e},"onUpdate:modelValue":{type:Function,default:e=>{}}},data(){return{list:[],uploading:!1}},methods:{async beforeRead(e){return console.log("beforeRead",e),!0},async upload(e){this.uploading=!0;const i=new FormData;i.append("file",e);try{const a=await b.post("/api-teacher/uploadFile",{data:i});this.$emit("update:modelValue",a.data.url)}catch{}this.uploading=!1}},render(){return t(k,{accept:this.accept,maxCount:1,modelValue:this.list,beforeDelete:this.beforeRead,"onUpdate:modelValue":async e=>{e[0]&&(await this.upload(e[0].file),this.formatFile(e[0].file)),this.list=e},onDelete:()=>{this.list=[],this.$emit("update:modelValue",null)}},{default:()=>[t(h,{loading:this.uploading},{default:()=>[n("\u4E0A\u4F20\u6587\u4EF6")]})]})}});const I="_container_dsk0r_1",R="_area_dsk0r_6",O="_rule_dsk0r_14",X="_radio_dsk0r_30",z="_tags_dsk0r_58",J="_file_dsk0r_63",G="_delbtn_dsk0r_74",H="_upbtn_dsk0r_79";var l={container:I,area:R,"clear-px":"_clear-px_dsk0r_10",rule:O,"button-area":"_button-area_dsk0r_25","radio-group":"_radio-group_dsk0r_30",radio:X,tags:z,file:J,delbtn:G,upbtn:H},L="./assets/upload.4b2c151a.svg";function _(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!v(e)}var ge=S({name:"MusicUpload",data(){return{xmlFileUrl:"",xmlFileLoading:!1,midiUrl:"",midiLoading:!1,musicSheetName:"",composer:"",speed:"",chargeType:0,showFingering:1,canEvaluate:1,musicPrice:"",selectTagVisible:!1,subJectVisible:!1,tags:[],tagsNames:[],formated:{},tagVisibility:!1,subjectListNames:{},selectedSubjectList:null,vlewSubjectList:null,submitLoading:!1,showPicker:!1,music_sheet_service_fee:0}},watch:{formated(){this.mergeXmlData(this.formated)},chargeType(){this.chargeType===0&&(this.musicPrice="")}},computed:{choiceSubjectIds(){let e=p.teacherCert.subjectId?p.teacherCert.subjectId.split(","):[];return e=e.map(i=>Number(i)),e},subjectList(){return p.subjectList||[]},choiceSubject(){let e=[];return this.subjectList.forEach(i=>{i.subjects&&i.subjects.forEach(a=>{this.choiceSubjectIds.includes(a.id)&&e.push(a)})}),e}},async mounted(){b.get("/api-teacher/sysConfig/queryByParamName",{params:{paramName:"music_sheet_service_fee"}}).then(e=>this.music_sheet_service_fee=e.data.paramValue),b.get("/api-teacher/subject/subjectSelect").then(e=>{p.subjectList=e.data||[],this.subjectListNames=this.getSubjectListNames(p.subjectList)})},methods:{async submit(e){var i;this.submitLoading=!0;try{await b.post("/api-teacher/music/sheet/create",{data:{audioType:"MIDI",sourceType:"TEACHER",showFingering:this.showFingering,musicTag:this.tags.join(","),musicSubject:(i=this.selectedSubjectList)==null?void 0:i.label,musicSheetName:this.musicSheetName,midiUrl:this.midiUrl,xmlFileUrl:this.xmlFileUrl,canEvaluate:this.canEvaluate,chargeType:this.chargeType===0?"FREE":"CHARGE",composer:this.composer,musicPrice:this.musicPrice}})}catch{}this.submitLoading=!1,N("\u4E0A\u4F20\u6210\u529F"),setTimeout(()=>{x({api:"back"})},800),console.log(e)},getSubjectListNames(e){const i={};for(const a of e)if(i[a.id]=a.name,a.subjects)for(const c of a.subjects)i[c.id]=c.name;return i},failed(){console.log("failed",this.musicSheetName)},mergeXmlData(e){this.formated=e,this.musicSheetName||(this.musicSheetName=e.title),this.composer||(this.composer=e.composer),!this.speed&&e.speed&&(this.speed=""+e.speed)},readerFile(e){const i=new FileReader;i.onload=()=>{const a=i.result;this.formated=M(a)},i.readAsText(e)},onChoice(e){this.subJectVisible=!1,this.selectedSubjectList=[e]},onComfirm(e,i){this.tagsNames=i,this.tagVisibility=!1;const a=Object.values(e).flat().filter(Boolean);console.log(a),this.tags=a},naiveXMLFile(){this.xmlFileLoading=!0,x({api:"chooseFile",content:{type:"xml"}},e=>{this.xmlFileUrl=(e==null?void 0:e.fileUrl)||this.this.xmlFileUrl||"",this.xmlFileLoading=!1})},naiveMidFile(){this.midiLoading=!0,x({api:"chooseFile",content:{type:"midi"}},e=>{this.midiUrl=(e==null?void 0:e.fileUrl)||this.midiUrl||"",this.midiLoading=!1})},fileName(e=""){return e.split("/").pop()}},render(){let e,i,a;const c=P();return t(C,{onSubmit:this.submit,onFailed:this.failed},{default:()=>[t("div",{class:l.container},[t(g,{class:l.area},{default:()=>[t(o,{border:!1,required:!0,title:"MusicXML\u6587\u4EF6"},{default:()=>[t(u,{name:"xmlFileUrl",modelValue:this.xmlFileUrl,rules:[{required:!0,message:"\u8BF7\u9009\u62E9MusicXML\u6587\u4EF6"}]},{input:()=>c.isApp?t(h,{icon:L,class:l.upbtn,onClick:this.naiveXMLFile,loading:this.xmlFileLoading},{default:()=>[this.xmlFileUrl?this.fileName(this.xmlFileUrl):"\u4E0A\u4F20\u6587\u4EF6"]}):t(w,{"onUpdate:modelValue":s=>this.xmlFileUrl=s,accept:".xml",formatFile:this.readerFile},null)})]}),t(o,{border:!1,required:!0,title:"MIDI\u6587\u4EF6"},{default:()=>[t(u,{name:"midiUrl",modelValue:this.midiUrl,rules:[{required:!0,message:"\u8BF7\u9009\u62E9MIDI\u6587\u4EF6"}]},{input:()=>c.isApp?t(h,{icon:L,class:l.upbtn,onClick:this.naiveMidFile,loading:this.midiLoading},{default:()=>[this.midiUrl?this.fileName(this.midiUrl):"\u4E0A\u4F20\u6587\u4EF6"]}):t(w,{"onUpdate:modelValue":s=>this.midiUrl=s,accept:".mid"},null)})]})]}),t(g,{class:l.area},{default:()=>[t(o,{required:!0,title:"\u66F2\u76EE\u540D\u79F0"},{default:()=>[t(u,{clearable:!0,name:"musicSheetName",modelValue:this.musicSheetName,rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u66F2\u76EE\u540D\u79F0"}],class:l["clear-px"],placeholder:"\u8BF7\u8F93\u5165\u66F2\u76EE\u540D\u79F0","onUpdate:modelValue":s=>this.musicSheetName=s},null)]}),t(o,{required:!0,title:"\u4F5C\u66F2\u4EBA"},{default:()=>[t(u,{clearable:!0,class:l["clear-px"],placeholder:"\u8BF7\u8F93\u5165\u4F5C\u66F2\u4EBA\u59D3\u540D",name:"composer",modelValue:this.composer,rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u4F5C\u66F2\u4EBA\u59D3\u540D"}],"onUpdate:modelValue":s=>this.composer=s},null)]}),t(o,{required:!0,title:"\u66F2\u76EE\u58F0\u90E8"},{default:()=>{var s;return[t(u,{"is-link":!0,readonly:!0,class:l["clear-px"],placeholder:"\u8BF7\u9009\u62E9\u66F2\u76EE\u58F0\u90E8",name:"vlewSubjectList",modelValue:(s=this.vlewSubjectList)==null?void 0:s.value,rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u66F2\u76EE\u58F0\u90E8"}],onClick:()=>this.showPicker=!0},null)]}})]}),t(g,{class:l.area},{default:()=>[t(o,{border:!1,required:!0,title:"\u66F2\u76EE\u6807\u7B7E"},{default:()=>[t(u,{name:"tags",modelValue:this.tags.length?1:void 0,rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u66F2\u76EE\u6807\u7B7E"}]},{input:()=>this.tags.length>0?this.tags.map(s=>t(f,{type:"primary",size:"large",class:l.tags},{default:()=>[this.tagsNames[s]]})):t(T,{style:{width:"100%"},description:"\u8BF7\u9009\u62E9\u66F2\u76EE\u6807\u7B7E",imageSize:0},null)})],right:()=>t(h,{class:l.select,round:!0,type:"primary",size:"small",onClick:()=>this.tagVisibility=!0},{default:()=>[n("\u9009\u62E9")]})})]}),t(g,{class:l.area},{default:()=>[t(o,{required:!0,title:"\u9ED8\u8BA4\u901F\u5EA6"},{default:()=>[t(u,{clearable:!0,name:"playSpeed",modelValue:this.speed,rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u9ED8\u8BA4\u901F\u5EA6"}],"onUpdate:modelValue":s=>this.speed=s,class:l["clear-px"],placeholder:"\u8BF7\u8F93\u5165\u9ED8\u8BA4\u901F\u5EA6"},null)]}),t(o,{required:!0,title:"\u662F\u5426\u8BC4\u6D4B"},{default:()=>[t(y,{class:l["radio-group"],modelValue:this.canEvaluate,"onUpdate:modelValue":s=>this.canEvaluate=s},_(e=Object.keys(V).map(s=>{const r=s===String(this.canEvaluate),d=r?"primary":"default";return t(j,{class:l.radio,name:s},{default:()=>[t(f,{size:"large",plain:r,type:d},{default:()=>[V[s]]})]})}))?e:{default:()=>[e]})]}),t(o,{required:!0,title:"\u6307\u6CD5\u5C55\u793A"},{default:()=>[t(y,{class:l["radio-group"],modelValue:this.showFingering,"onUpdate:modelValue":s=>this.showFingering=s},_(i=Object.keys(E).map(s=>{const r=s===String(this.showFingering),d=r?"primary":"default";return t(j,{class:l.radio,name:s},{default:()=>[t(f,{size:"large",plain:r,type:d},{default:()=>[E[s]]})]})}))?i:{default:()=>[i]})]}),t(o,{required:!0,title:"\u662F\u5426\u6536\u8D39"},{default:()=>[t(y,{class:l["radio-group"],modelValue:this.chargeType,"onUpdate:modelValue":s=>this.chargeType=s},_(a=Object.keys(U).map(s=>{const r=s===String(this.chargeType),d=r?"primary":"default";return t(j,{class:l.radio,name:s},{default:()=>[t(f,{size:"large",plain:r,type:d},{default:()=>[U[s]]})]})}))?a:{default:()=>[a]})]}),this.chargeType===2&&t(o,{required:!0,title:"\u6536\u8D39\u4EF7\u683C"},{default:()=>[t(u,{clearable:!0,class:l["clear-px"],placeholder:"\u8BF7\u8F93\u5165\u6536\u8D39\u4EF7\u683C",modelValue:this.musicPrice,rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u6536\u8D39\u4EF7\u683C"}],"onUpdate:modelValue":s=>this.musicPrice=s},{button:()=>"\u5143"})]})]}),this.chargeType===2&&t("div",{class:l.rule},[t("p",null,[n("\u6263\u9664\u624B\u7EED\u8D39\u540E\u8BE5\u66F2\u76EE\u9884\u8BA1\u6536\u5165\u4E3A\uFF1A")]),t("p",null,[n("\u6BCF\u4EBA\uFF1A"),t("span",null,[(parseFloat(this.musicPrice||"0")||0)*(100-this.music_sheet_service_fee)/100]),n("\u5143/\u4EBA")]),t("p",null,[n("\u60A8\u7684\u4E50\u8C31\u6536\u5165\u5C06\u5728\u5B66\u5458\u8D2D\u4E70\u540E\u7ED3\u7B97\u5230\u60A8\u7684\u8D26\u6237\u4E2D")])])]),t(q,{offsetBottom:0,position:"bottom"},{default:()=>[t("div",{class:l["button-area"]},[t(h,{type:"primary",block:!0,round:!0,"native-type":"submit",loading:this.submitLoading},{default:()=>[n("\u786E\u8BA4")]})])]}),t(F,{show:this.showPicker,round:!0,position:"bottom",teleport:"body","onUpdate:show":s=>this.showPicker=s},{default:()=>[t(A,{columnsFieldNames:{text:"value"},columns:Object.entries(this.subjectListNames).map(([s,r])=>({label:s,value:r})),onCancel:()=>this.showPicker=!1,onConfirm:s=>{this.selectedSubjectList=s,this.vlewSubjectList=s,this.showPicker=!1}},null)]}),t(F,{show:this.subJectVisible,round:!0,closeable:!0,position:"bottom",style:{height:"60%"},teleport:"body","onUpdate:show":s=>this.subJectVisible=s},{default:()=>[t(B,{subjectList:this.subjectList,choiceSubjectIds:this.choiceSubjectIds,onChoice:this.onChoice,selectType:"Radio"},null)]}),t(F,{show:this.tagVisibility,round:!0,closeable:!0,position:"bottom",style:{height:"60%"},teleport:"body","onUpdate:show":s=>this.tagVisibility=s},{default:()=>[t(D,{onComfirm:this.onComfirm,onCancel:()=>{},rowSingle:!0,needAllButton:!1},null)]})]})}});export{ge as default};