1 |
- var I=Object.defineProperty,O=Object.defineProperties;var k=Object.getOwnPropertyDescriptors;var _=Object.getOwnPropertySymbols;var H=Object.prototype.hasOwnProperty,V=Object.prototype.propertyIsEnumerable;var F=(t,e,a)=>e in t?I(t,e,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[e]=a,b=(t,e)=>{for(var a in e||(e={}))H.call(e,a)&&F(t,a,e[a]);if(_)for(var a of _(e))V.call(e,a)&&F(t,a,e[a]);return t},w=(t,e)=>O(t,k(e));import{C as P}from"./index.b42087f4.js";import{d as N,a$ as p,c as s,a as l,b3 as S,b4 as h,O as j,b as y,b1 as M,a_ as B,F as D,aY as L,aZ as f,ax as A,N as T,aO as J}from"./index.1d0cc84f.js";import{v as $}from"./toolsValidate.add49407.js";import{c as q,i as U}from"./isSameOrBefore.aa5d7801.js";import{E as g,a as C}from"./index2.ba9e0a49.js";import{E as R,a as v}from"./index2.71359404.js";import"./index2.6b7eb987.js";const z="_timer_16ax5_1",G="_tips_16ax5_5",K="_tipsTitle_16ax5_11",W="_tipsTime_16ax5_17",Y="_timerContainer_16ax5_26",Z="_tag_16ax5_34",Q="_active_16ax5_45",X="_select_16ax5_49";var c={timer:z,tips:G,tipsTitle:K,tipsTime:W,timerContainer:Y,tag:Z,active:Q,select:X};p.extend(q);p.extend(U);var tt=N({name:"practice-timer",props:{timerObject:{type:Object,default:{}},onClose:{type:Function,default:()=>{}},onChoice:{type:Function,default:t=>{}},courseMinutes:{type:Number,default:25},freeMinutes:{type:Number,default:5},startSetting:{type:String,default:"08:00"},endSetting:{type:String,default:"18:00"}},data(){return{timerList:[],list:[],weekList:["\u5468\u4E00","\u5468\u4E8C","\u5468\u4E09","\u5468\u56DB","\u5468\u4E94","\u5468\u516D","\u5468\u65E5"],weekType:["monday","tuesday","wednesday","thursday","friday","saturday","sunday"]}},mounted(){this.list=this.timerInit(this.startSetting,this.endSetting,this.courseMinutes+this.freeMinutes||30),console.log(this.endSetting)},methods:{timerInit(t,e,a){let i=p(t,"HH:mm");const r=p(e,"HH:mm"),u=[];for(;i.add(a,"minute").isSameOrBefore(p(r));){const o={startTime:i.format("HH:mm"),endTime:i.add(a,"minute").format("HH:mm"),status:!1};u.push(o),i=i.add(a,"minute")}const n=[];return u.forEach(o=>{const m=[];for(let E=0;E<7;E++)m.push(b({},o));n.push(m)}),this._initData(n)},_initData(t){const e=this.weekType,a=this.timerObject;return t.forEach(i=>{i.forEach((r,u)=>{const n=a[e[u]],d=p(r.startTime,"HH:mm").format("HH:mm:ss");(n==null?void 0:n.some(m=>m.startTime===d))&&(r.status=!0)})}),t},btnStatus(t,e){if(e==="row")return this.list.every(a=>a[t].status);if(e=="col")return this.list[t].every(a=>a.status)},choice(t,e,a){e==="row"&&this.list.forEach((i,r)=>{const u=!a;i[t].status=u}),e=="col"&&this.list[t].forEach((i,r)=>{const u=!a;i.status=u})},onSubmit(){const t=this.list,e={monday:[],tuesday:[],wednesday:[],thursday:[],friday:[],saturday:[],sunday:[]},a=this.weekType;let i=!1;t.forEach((r,u)=>{r.forEach((n,d)=>{n.status&&(i=!0,e[a[d]].push({startTime:p(n.startTime,"HH:mm").format("HH:mm:ss"),endTime:p(n.endTime,"HH:mm").subtract(this.freeMinutes,"minute").format("HH:mm:ss")}))})}),this.onChoice&&this.onChoice(e,i)}},render(){return s("div",{class:c.timer},[s("div",{class:c.tips},[s("div",{class:c.tipsTitle},[l("\u8BF7\u9009\u62E9\u966A\u7EC3\u5F00\u59CB\u65F6\u95F4")]),s("div",{class:c.tipsTime},[l("\u966A\u7EC3\u8BFE\u5355\u8BFE\u65F6\u65F6\u957F\u4E3A "),s("span",null,[this.courseMinutes]),l(" \u5206\u949F")])]),s("div",{class:[c.timerContainer,"mb12"]},[s(S,{gutter:5},{default:()=>[s(h,{span:3,class:[c.tag]},null),this.weekList.map(t=>s(h,{span:3},{default:()=>[s("span",{class:c.tag},[t])]}))]}),s(S,{gutter:5,class:"pt-1"},{default:()=>[s(h,{span:3,class:[c.tag]},null),this.weekList.map((t,e)=>s(h,{span:3},{default:()=>[s("span",{class:[c.tag,"cursor-pointer",this.btnStatus(e,"row")&&c.active],onClick:()=>this.choice(e,"row",this.btnStatus(e,"row"))},[l("\u5168\u9009")])]}))]}),s("div",{class:"h-72 overflow-auto"},[this.list.map((t,e)=>s(S,{gutter:5,class:"pt-1"},{default:()=>[s(h,{span:3},{default:()=>[s("span",{class:[c.tag,"cursor-pointer",this.btnStatus(e,"col")&&c.active],onClick:()=>this.choice(e,"col",this.btnStatus(e,"col"))},[l("\u5168\u9009")])]}),t.map(a=>s(h,{span:3},{default:()=>[s("span",{class:[c.tag,"cursor-pointer",a.status&&c.select],style:{color:"#333333"},onClick:()=>a.status=!a.status},[a.startTime])]}))]}))])]),s("div",{class:"text-center pt-3 pb-5"},[s(j,{class:"!w-40 !h-[38px]",onClick:()=>{this.onClose()}},{default:()=>[l("\u53D6\u6D88")]}),s(j,{type:"primary",class:"!w-40 !h-[38px]",onClick:this.onSubmit},{default:()=>[l("\u4FDD\u5B58\u8BBE\u7F6E")]})])])}});const et="_setting_ioswx_1";var st={setting:et};function x(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!A(t)}var mt=N({name:"practice-setting",data(){return{subjectList:[],chargeTypeArr:{0:"\u5426",1:"\u662F"},classTimeStatus:!1,subjectStatus:!1,timerStatus:!1,timeSetting:{courseMinutes:25,freeMinutes:5,startSetting:"08:00",endSetting:"18:00"},timerObject:{},form:{enableFlag:1,courseMinutes:null,freeMinutes:0,subjectIdTemp:"",subjectId:[],subjectPrice:[],skipHolidayFlag:1,setting:"\u672A\u8BBE\u7F6E"},minutes:[],rate:0}},async mounted(){try{((await y.get("/api-website/sysConfig/queryByParamNameList",{params:{paramNames:"practice_times_setting,practice_service_fee,course_start_setting,course_end_setting"}})).data||[]).forEach(u=>{if(u.paramName==="practice_times_setting"){let n=u.paramValue?JSON.parse(u.paramValue):[],d=[];n.forEach(o=>{d.push(w(b({},o),{name:o.courseMinutes}))}),this.minutes=[...d]}u.paramName==="practice_service_fee"&&(this.rate=u.paramValue),u.paramName==="course_start_setting"&&(this.timeSetting.startSetting=u.paramValue),u.paramName==="course_end_setting"&&(this.timeSetting.endSetting=u.paramValue)});let a=await y.post("/api-website/teacher/querySubject");this.subjectList=a.data||[];const r=(await y.post("/api-website/teacherFreeTime/getDetail",{data:{defaultFlag:1}})).data;if(r){this.timeSetting.courseMinutes=r.courseMinutes,this.timeSetting.freeMinutes=r.freeMinutes,this.timerObject={monday:r.monday?JSON.parse(r.monday):[],tuesday:r.tuesday?JSON.parse(r.tuesday):[],wednesday:r.wednesday?JSON.parse(r.wednesday):[],thursday:r.thursday?JSON.parse(r.thursday):[],friday:r.friday?JSON.parse(r.friday):[],saturday:r.saturday?JSON.parse(r.saturday):[],sunday:r.sunday?JSON.parse(r.sunday):[]};let u=[],n=[];(r.subjectPrice||[]).forEach(m=>{u.push(m.subjectId),n.push({subjectId:m.subjectId,subjectPrice:m.subjectPrice,subjectName:m.subjectName})});const o=this.timerObject;this.form={enableFlag:r.enableFlag?1:0,courseMinutes:r.courseMinutes,freeMinutes:r.freeMinutes,subjectIdTemp:u.join(","),subjectId:u,subjectPrice:n,skipHolidayFlag:r.skipHolidayFlag?1:0,setting:o.monday.length>0||o.tuesday.length>0||o.wednesday.length>0||o.thursday.length>0||o.friday.length>0||o.saturday.length>0||o.sunday.length>0?"\u5DF2\u8BBE\u7F6E":"\u672A\u8BBE\u7F6E"}}}catch{}},methods:{onSelect(t){this.form.courseMinutes!==t.courseMinutes&&(this.timerObject={},this.form.setting="\u672A\u8BBE\u7F6E"),this.form.courseMinutes=t.courseMinutes,this.form.freeMinutes=t.freeMinutes},async onTimer(){try{const t=this.form;if(!t.courseMinutes){M.error("\u8BF7\u9009\u62E9\u5355\u8BFE\u65F6\u65F6\u957F");return}this.timeSetting.courseMinutes=Number(t.courseMinutes),this.timeSetting.freeMinutes=Number(t.freeMinutes),this.timerStatus=!0}catch{}},onChoiceTimer(t,e){this.form.setting=e?"\u5DF2\u8BBE\u7F6E":"",this.timerObject=t,this.timerStatus=!1},onChoice(t){const e=t||[];this.form.subjectId=e,this.form.subjectIdTemp=e.join(",")||"";let a=[...this.form.subjectPrice];e.forEach(r=>{a.findIndex(n=>n.subjectId===r)===-1&&a.push({subjectId:r,subjectPrice:null,subjectName:""})});const i=[];a.forEach(r=>{e.some(n=>n===r.subjectId)&&i.push(r)}),this.form.subjectPrice=i,this.subjectStatus=!1},getSubjectName(t){const e=this.subjectList.find(a=>a.id===t);return e?e.name:""},onFormatter(t){t.target.value=$(t.target.value)},async onSubmit(){this.$refs.form.validate(async t=>{if(t)try{const e=this.form;e.subjectPrice.forEach(a=>{a.subjectName=this.getSubjectName(a.subjectId)}),e.setting=e.setting==="\u672A\u8BBE\u7F6E"?"":e.setting,await y.post("/api-website/teacherFreeTime/upSet",{data:b(b({},e),this.timerObject)}),M.success("\u8BBE\u7F6E\u6210\u529F"),setTimeout(()=>{postMessage({api:"back",content:{}})},500)}catch{}else return this.$nextTick(()=>{document.getElementsByClassName("is-error")[0].scrollIntoView({block:"center",behavior:"smooth"})}),!1})}},render(){var a;let t,e;return s("div",{class:st.setting},[s("div",{class:"text-base text-[#666] leading-none px-6 py-5 border-b border-b-[#E5E5E5]"},[l("\u966A\u7EC3\u8BFE\u8BBE\u7F6E")]),(a=B.user.data)!=null&&a.entryFlag?s(D,null,[s(L,{labelPosition:"left",labelWidth:"180px",size:"large",model:this.form,ref:"form",class:"px-44 py-5"},{default:()=>[s(f,{label:"\u662F\u5426\u5F00\u542F\u966A\u7EC3",prop:"enableFlag",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u662F\u5426\u5F00\u542F\u966A\u7EC3"}]},{default:()=>[s(g,{class:"w-full",modelValue:this.form.enableFlag,"onUpdate:modelValue":i=>this.form.enableFlag=i},{default:()=>[s(g.Option,{value:1,label:"\u662F"},{default:()=>[l("\u662F")]}),s(g.Option,{value:0,label:"\u5426"},{default:()=>[l("\u5426")]})]})]}),s(f,{label:"\u53EF\u6559\u6388\u58F0\u90E8",prop:"subjectId",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u53EF\u6559\u6388\u58F0\u90E8",trigger:"change"}]},{default:()=>[s(g,{multiple:!0,filterable:!0,placeholder:"\u8BF7\u9009\u62E9\u53EF\u6559\u6388\u58F0\u90E8",class:"w-full",multipleLimit:5,modelValue:this.form.subjectId,"onUpdate:modelValue":i=>this.form.subjectId=i,onChange:this.onChoice},x(t=this.subjectList.map(i=>s(C,{key:i.id,value:i.id,label:i.name},null)))?t:{default:()=>[t]})]}),s(f,{label:"\u5355\u8BFE\u65F6\u957F",prop:"courseMinutes",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u5355\u8BFE\u65F6\u957F",trigger:"change"}]},{default:()=>[s(g,{class:"w-full",placeholder:"\u8BF7\u9009\u62E9\u5355\u8BFE\u65F6\u65F6\u957F",modelValue:this.form.courseMinutes,"onUpdate:modelValue":i=>this.form.courseMinutes=i},x(e=this.minutes.map(i=>s(C,{key:i.courseMinutes,value:i.courseMinutes},{default:()=>[i.name]})))?e:{default:()=>[e]})]}),this.form.subjectPrice.map((i,r)=>s(f,{label:`${this.getSubjectName(i.subjectId)}\u966A\u7EC3\u4EF7\u683C`,prop:`subjectPrice.${r}.subjectPrice`,rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u58F0\u90E8\u966A\u7EC3\u4EF7\u683C"}]},{default:()=>[s(T,{onKeyup:this.onFormatter,type:"text",placeholder:"\u8BF7\u8F93\u5165\u966A\u7EC3\u4EF7\u683C",modelValue:i.subjectPrice,"onUpdate:modelValue":u=>i.subjectPrice=u},{append:()=>s("span",{class:"text-base text-[#333]"},[l("\u5143")])})]})),s(f,{label:"\u662F\u5426\u8DF3\u8FC7\u8282\u5047\u65E5"},{default:()=>[s(R,{modelValue:this.form.skipHolidayFlag,"onUpdate:modelValue":i=>this.form.skipHolidayFlag=i},{default:()=>[s(v,{label:1,class:"mr-3 w-24"},{default:()=>[l("\u662F")]}),s(v,{label:0,class:"w-24"},{default:()=>[l("\u5426")]})]})]}),s(f,{label:"\u966A\u7EC3\u65F6\u95F4\u6BB5"},{default:()=>[s("div",{onClick:this.onTimer,class:"w-full"},[s(T,{readonly:!0,class:"cursor-pointer",modelValue:this.form.setting,"onUpdate:modelValue":i=>this.form.setting=i,placeholder:"\u8BF7\u9009\u62E9\u966A\u7EC3\u65F6\u95F4\u6BB5",suffixIcon:"ArrowDown"},null)])]})]}),s("div",{class:"border-t border-t-[#E5E5E5] text-center pt-6 pb-7"},[s(j,{class:"!w-40 !h-[38px]",onClick:()=>{this.form={enableFlag:1,courseMinutes:null,freeMinutes:0,subjectIdTemp:"",subjectId:[],subjectPrice:[],skipHolidayFlag:1,setting:"\u672A\u8BBE\u7F6E"},this.$refs.form.resetFields()}},{default:()=>[l("\u91CD\u7F6E")]}),s(j,{type:"primary",class:"!w-40 !h-[38px]",onClick:this.onSubmit},{default:()=>[l("\u4FDD\u5B58\u8BBE\u7F6E")]})])]):s(P,{type:"teacherCert",message:"\u60A8\u8FD8\u672A\u5B8C\u6210\u8FBE\u4EBA\u8BA4\u8BC1\uFF0C\u8BA4\u8BC1\u540E\u624D\u53EF\u8BBE\u7F6E\u966A\u7EC3\u8BFE\u54E6~",buttonVisibility:!0,buttonText:"\u53BB\u8BA4\u8BC1",onDetail:()=>{this.$router.push("/teacherAuth")}},null),s(J,{modelValue:this.timerStatus,"onUpdate:modelValue":i=>this.timerStatus=i,showClose:!0},{default:()=>[s(tt,{onChoice:this.onChoiceTimer,onClose:()=>{this.timerStatus=!1},timerObject:this.timerObject,courseMinutes:Number(this.timeSetting.courseMinutes),freeMinutes:Number(this.timeSetting.freeMinutes),startSetting:this.timeSetting.startSetting,endSetting:this.timeSetting.endSetting},null)]})])}});export{mt as default};
|