1 |
- import{a as z,i as T,r as i,f as te,q as ae,aj as B,c as D,o as W,b as m,S as _,K as h,P as E,Q as g,R as V,a9 as G,J as ne,F as oe,Y as se}from"./vue.YrNK8sx4.js";import{g as M,c as N,k as ie,D as k,w as re}from"./index.DyOs_NCX.js";import{a as q,g as le}from"./api.5gppMgun.js";import{createCrudOptions as de}from"./crud.DClkjC5D.js";import{h as ce}from"./columnPermission.DsCrZOdr.js";import{_ as fe}from"./index.vue_vue_type_script_setup_true_lang.ByrcPXwk.js";import{_ as ue}from"./_plugin-vue_export-helper.DlAUqK2U.js";var A={exports:{}};(function(u,$){(function(n,o){u.exports=o()})(N,function(){return function(n,o){o.prototype.isLeapYear=function(){return this.$y%4==0&&this.$y%100!=0||this.$y%400==0}}})})(A);var pe=A.exports;const me=M(pe);var H={exports:{}};(function(u,$){(function(n,o){u.exports=o()})(N,function(){var n="day";return function(o,C,l){var Y=function(t){return t.add(4-t.isoWeekday(),n)},d=C.prototype;d.isoWeekYear=function(){return Y(this).year()},d.isoWeek=function(t){if(!this.$utils().u(t))return this.add(7*(t-this.isoWeek()),n);var a,c,r,v,b=Y(this),L=(a=this.isoWeekYear(),c=this.$u,r=(c?l.utc:l)().year(a).startOf("year"),v=4-r.isoWeekday(),r.isoWeekday()>4&&(v+=7),r.add(v,n));return b.diff(L,"week")+1},d.isoWeekday=function(t){return this.$utils().u(t)?this.day()||7:this.day(this.day()%7?t:t-7)};var y=d.startOf;d.startOf=function(t,a){var c=this.$utils(),r=!!c.u(a)||a;return c.p(t)==="isoweek"?r?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):y.bind(this)(t,a)}}})})(H);var _e=H.exports;const he=M(_e);var J={exports:{}};(function(u,$){(function(n,o){u.exports=o()})(N,function(){return function(n,o){o.prototype.isoWeeksInYear=function(){var C=this.isLeapYear(),l=this.endOf("y").day();return l===4||C&&l===5?53:52}}})})(J);var ke=J.exports;const ye=M(ke),ve={class:"schedule-wrapper"},be={class:"header"},xe={class:"header-bar"},we={class:"week-display"},We=["onClick"],ge=z({name:"timetablemanage"}),$e=z({...ge,setup(u){const $=T("isEmbedded",!1),n=T("onCourseSelected",()=>{}),{crudBinding:o,crudRef:C,crudExpose:l,crudOptions:Y,resetCrudOptions:d}=ie({createCrudOptions:de});k.extend(re),k.extend(he),k.extend(me),k.extend(ye);const y=i(k().isoWeek()),t=i(k().isoWeeksInYear()),a=i(0),c=["#e3f2fd","#e8f5e9","#fff3e0","#fce4ec","#ede7f6","#f3e5f5","#fbe9e7"],r=i([]),v=te(()=>y.value+a.value),b=i();function L(e){b.value.open(e)}i([]),i(!1);function K(e){return{1:"09:00:00",2:"14:00:00",3:"19:00:00"}[e]||"09:00"}function Q(e){const s=(e==null?void 0:e.id)||"",x=(e==null?void 0:e.classdetail)||"",O=(e==null?void 0:e.teacher_name)||"",I=(e==null?void 0:e.classroom)||"",p=(e==null?void 0:e.time_label)||"",w=(e==null?void 0:e.class_date)||"",R=K(e==null?void 0:e.time),f=`${w} ${R}`,P=`${x} - ${O} - ${I} - ${p}`;if($&&typeof n=="function")try{n({course_id:s,course_Name:P,expected_start_time:f})}catch(ee){console.warn("onCourseSelected failed:",ee)}else b.value.open(e)}function U(){y.value+a.value<t.value&&(a.value++,S())}function X(){a.value--,S()}const Z={backgroundColor:"#f5f5f5",fontWeight:"bold",color:"#333",textAlign:"center"},j=i([]),F=i([]);async function S(){const e=await q(a.value);r.value=e.data.time_labels,F.value=e.data.week_labels_with_date,j.value=await le(e)}return ae(async()=>{const e=await ce(q,Y);d(e),l.doRefresh(),await S()}),(e,s)=>{const x=B("el-button"),O=B("el-table-column"),I=B("el-table");return W(),D("div",null,[m("div",ve,[m("div",be,[m("div",xe,[_(x,{type:"primary",icon:"el-icon-arrow-left",onClick:X,circle:""},{default:h(()=>s[1]||(s[1]=[E("<")])),_:1}),m("span",we,g(v.value)+" 周",1),_(x,{type:"primary",icon:"el-icon-arrow-right",onClick:U,circle:"",disabled:y.value+a.value>=t.value},{default:h(()=>s[2]||(s[2]=[E(">")])),_:1},8,["disabled"])]),m("div",null,[_(x,{type:"success",icon:"el-icon-plus",onClick:s[0]||(s[0]=p=>L())},{default:h(()=>s[3]||(s[3]=[E("添加课程")])),_:1})])]),_(I,{data:j.value,style:{width:"100%","background-color":"white"},"header-cell-style":Z},{default:h(()=>[_(O,{label:"时间段",width:"100"},{default:h(p=>[E(g(p.row.timeLabel),1)]),_:1}),(W(!0),D(V,null,G(F.value,(p,w)=>(W(),ne(O,{key:w,label:p,"min-width":"160"},{default:h(R=>[m("div",{style:oe({backgroundColor:c[w],padding:"6px",borderRadius:"4px",whiteSpace:"pre-line",minHeight:"40px"})},[(W(!0),D(V,null,G(R.row[`day${w+1}`],f=>(W(),D("div",{key:f.id,style:{"margin-bottom":"4px",cursor:"pointer"},onClick:se(P=>Q(f),["stop"])},g(f.classdetail)+" 老师:("+g(f.teacher_name)+") 教室:"+g(f.classroom),9,We))),128))],4)]),_:2},1032,["label"]))),128))]),_:1},8,["data"])]),_(fe,{ref_key:"dialogRef",ref:b,onSaved:S},null,512)])}}}),Ie=ue($e,[["__scopeId","data-v-7f12f413"]]);export{Ie as default};
|