1 |
- import{T as _}from"./index-cf39d3ed.js";import{T as L,S as x}from"./index-b9c80e50.js";import{N as I,h as T,f as D}from"./catchData-d802f15b.js";import{e as E}from"./contants-b6f97632.js";import{d as b,b as j,e as B,c0 as c,q as C,f as i,j as p,k as u,c1 as w,bX as F,B as v,z as y,c2 as A}from"./index-620dcdd2.js";import{T as N}from"./index-f13cee59.js";const G="_trainSettings_mxj5t_1",k="_trainBtnGroup_mxj5t_1",Y="_searchGroup_mxj5t_9",$="_datetime_mxj5t_13",P="_trainList_mxj5t_43",U="_listSection_mxj5t_48",O="_emptySection_mxj5t_51",V="_list_mxj5t_48",q="_trainEditModal_mxj5t_69",K="_selectMusicModal_mxj5t_72",r={trainSettings:G,trainBtnGroup:k,searchGroup:Y,datetime:$,trainList:P,listSection:U,emptySection:O,list:V,trainEditModal:q,selectMusicModal:K},J=b({name:"train-settings",props:{detailId:{type:String,default:""},subjectId:{type:String,default:""},classGroupId:{type:String,default:""}},emits:["close","confirm"],setup(l,{emit:d}){const m=j(),t=B({type:"add",btnLoading:!1,loadingStatus:!1,editStatus:!1,editItem:{},selectMusicStatus:!1,trainList:[],currentTime:c(c().format("YYYY-MM-DD")).valueOf(),expireDate:c().add(7,"day").format("YYYY-MM-DD")}),S=async()=>{t.loadingStatus=!0;try{const{data:e}=await T({coursewareKnowledgeDetailId:l.detailId,subjectId:l.subjectId,pag:1,rows:99}),a=e.rows||[],s=[];a.forEach(n=>{const o=g(n.trainingType,n.trainingConfigJson);s.push({typeList:o||[],...n})}),t.trainList=s||[]}catch(e){}t.loadingStatus=!1},g=(e,a)=>{let s=[];return e==="EVALUATION"?s=[`${E[a.evaluateDifficult]}`,"全部小节",`速度${a.evaluateSpeed}`,`${a.trainingTimes}分钟`]:s=[`${a.practiceChapterBegin}-${a.practiceChapterEnd}小节`,`速度${a.practiceSpeed}`,`${a.trainingTimes}分钟`],s},h=async e=>{var n;let a="init",s=null;try{const o=await A.get(e.xmlFileUrl,{mode:"cors"});s=(n=new DOMParser().parseFromString(o,"text/xml").getElementsByTagName("part")[0])==null?void 0:n.getElementsByTagName("measure"),a="success"}catch(o){a="error"}a=="success"?e.practiceChapterMax=s.length:e.practiceChapterMax=0,e.coursewareKnowledgeDetailId=l.detailId,e.subjectId=l.subjectId,t.editItem=e,t.editStatus=!0},M=async()=>{if(t.trainList.length<=0){m.error("训练内容不能为空");return}t.btnLoading=!0;try{const e=t.trainList||[],a=[];e.forEach(n=>{a.push({trainingType:n.trainingType,musicId:n.musicId,trainingConfigJsonObject:n.trainingConfigJson})});const s={lessonTrainingDetails:a,expireDate:t.expireDate+" 23:59:59",classGroupId:l.classGroupId};await D(s),m.success("布置成功"),d("close"),d("confirm")}catch(e){}t.btnLoading=!1};return C(()=>{l.detailId&&l.subjectId&&S()}),()=>i("div",{class:r.trainSettings},[i("div",{class:r.searchGroup},[i(p,{onClick:()=>{t.selectMusicStatus=!0,t.type="add"}},{default:()=>[u("添加训练")]}),i("div",{class:r.datetime},[i("label",null,[u("截止时间:")]),i(w,{style:{width:"200px"},placeholder:"请选择截止日期","formatted-value":t.expireDate,"onUpdate:formatted-value":e=>t.expireDate=e,type:"date",clearable:!0,valueFormat:"yyyy-MM-dd",isDateDisabled:e=>e<t.currentTime},null)])]),i(I,{class:r.trainList},{default:()=>[i(F,{show:t.loadingStatus},{default:()=>[i("div",{class:[r.listSection,!t.loadingStatus&&t.trainList.length<=0?r.emptySection:""]},[t.trainList.length>0&&i("div",{class:r.list},[t.trainList.map(e=>i(_,{item:e,type:"homework",onEdit:a=>{const{trainingConfigJson:s,id:n,musicId:o,...f}=a;t.editItem={...f,id:o,trainId:n,...s},console.log(t.editItem),t.type="update",t.editStatus=!0},onDelete:()=>{const a=t.trainList.findIndex(s=>s.id===e.id);t.trainList.splice(a,1)}},null))]),!t.loadingStatus&&t.trainList.length<=0&&i(N,{description:"暂无训练"},null)])]})]}),i(v,{class:r.trainBtnGroup},{default:()=>[i(p,{strong:!0,type:"default",round:!0,onClick:()=>d("close")},{default:()=>[u("取消布置")]}),i(p,{strong:!0,type:"primary",round:!0,disabled:t.trainList.length<=0,onClick:M},{default:()=>[u("立即布置")]})]}),i(y,{show:t.editStatus,"onUpdate:show":e=>t.editStatus=e,class:["modalTitle background",r.trainEditModal],preset:"card",title:"训练设置"},{default:()=>[i(L,{item:t.editItem,type:"homework",onClose:()=>t.editStatus=!1,onConfirm:e=>{const a=g(e.trainingType,e.trainingConfigJson);t.type==="update"?t.trainList.forEach(s=>{s.id===e.id&&(s.trainingType=e.trainingType,s.typeList=a)}):t.trainList.push({...e,id:+new Date,musicName:t.editItem.title,typeList:a}),t.editItem={}}},null)]}),i(y,{show:t.selectMusicStatus,"onUpdate:show":e=>t.selectMusicStatus=e,class:["modalTitle",r.selectMusicModal],preset:"card",title:"选择曲目"},{default:()=>[i(x,{onAdd:e=>{t.selectMusicStatus=!1,h(e)}},null)]})])}});export{J as T};
|