dootask/public/js/build/project.b753a052.js
2024-04-09 19:34:19 +08:00

2 lines
104 KiB
JavaScript
Vendored

import{m as h,a as g}from"./vuex.cc7cb26e.js";import{D as E}from"./vuedraggable.c8fae132.js";import{T as M,P as O}from"./ProjectLog.9fb78c38.js";import{l as k}from"./le5le-store.b40f9152.js";import{n as d,T as F,U as W,g as z}from"./app.02ce95bc.js";import{D as R}from"./index.9f38661c.js";import{U}from"./tip.5ab23358.js";import{D as B}from"./DialogWrapper.ccf43410.js";import{l as V}from"./longpress.5305f240.js";import"./@traptitech.363dce05.js";import"./katex.0b94f27c.js";import"./sortablejs.8b819437.js";import"./@micro-zoe.c2e1472d.js";import"./jquery.d6394978.js";import"./localforage.31d1be72.js";import"./markdown-it.f3afa976.js";import"./entities.797c3e49.js";import"./uc.micro.39573202.js";import"./mdurl.2f66c031.js";import"./linkify-it.3ecfda1e.js";import"./punycode.87a5269f.js";import"./highlight.js.24fdca15.js";import"./markdown-it-link-attributes.e1d5d151.js";import"./vue.eaf71fac.js";import"./axios.6ec123f8.js";import"./openpgp_hi.15f91b1d.js";import"./vue-router.2d566cd7.js";import"./vue-clipboard2.4402036c.js";import"./clipboard.d74ec60d.js";import"./view-design-hi.76cbd75d.js";import"./vue-resize-observer.5fb00380.js";import"./element-sea.b954f5d6.js";import"./deepmerge.cecf392e.js";import"./resize-observer-polyfill.e60103ad.js";import"./throttle-debounce.7c3948b2.js";import"./babel-helper-vue-jsx-merge-props.5ed215c3.js";import"./normalize-wheel.2a034b9f.js";import"./async-validator.289edf0d.js";import"./babel-runtime.4773988a.js";import"./core-js.314b4a1d.js";import"./quill.39606372.js";import"./quill-mention-hi.3bd68010.js";import"./vue-jsonp.be27271b.js";import"./vue-virtual-scroll-list-hi.f3f58d09.js";import"./ImgUpload.3217ea9d.js";import"./details.c704fbf7.js";var H=function(){var t=this,e=t.$createElement,s=t._self._c||e;return t.rowMode?s("Row",{staticClass:"task-add-row"},[s("Col",{class:["row-add",t.active?"active":""],attrs:{span:"12"}},[s("div",{staticClass:"add-input",on:{mouseenter:function(a){t.mouseEnter=!0},mouseleave:function(a){t.mouseEnter=!1}}},[s("Input",{ref:"input",attrs:{type:"textarea",rows:1,autosize:{minRows:1,maxRows:3},maxlength:255,placeholder:t.$L(t.typeName+"\u63CF\u8FF0\uFF0C\u56DE\u8F66\u521B\u5EFA"),enterkeyhint:"done"},on:{"on-focus":function(a){t.onFocus=!0},"on-blur":function(a){t.onFocus=!1},"on-keydown":t.onKeydown},model:{value:t.addData.name,callback:function(a){t.$set(t.addData,"name",a)},expression:"addData.name"}}),t.parentId==0?s("div",{staticClass:"priority"},[s("ul",t._l(t.taskPriority,function(a,o){return s("li",{key:o},[t.active?s("ETooltip",{attrs:{disabled:t.$isEEUiApp||t.windowTouch,content:t.taskPriorityContent(a)}},[s("i",{staticClass:"taskfont",style:{color:a.color},domProps:{innerHTML:t._s(t.addData.p_name==a.name?"&#xe61d;":"&#xe61c;")},on:{click:function(i){return t.choosePriority(a)}}})]):t._e()],1)}),0),s("Icon",{attrs:{type:"md-settings"},on:{click:t.onPriority}})],1):t._e()],1),s("div",{staticClass:"add-btn",on:{click:t.openAdd}},[s("Icon",{staticClass:"add-icon",attrs:{type:"md-add"}}),t._v(t._s(t.$L("\u6DFB\u52A0"+t.typeName))+" ")],1)]),s("Col",{attrs:{span:"3"}}),s("Col",{attrs:{span:"3"}}),s("Col",{attrs:{span:"3"}}),s("Col",{attrs:{span:"3"}})],1):s("div",{class:["task-add-simple",t.active?"active":""],on:{mouseenter:function(a){t.mouseEnter=!0},mouseleave:function(a){t.mouseEnter=!1}}},[s("Input",{ref:"input",attrs:{type:"textarea",rows:2,autosize:{minRows:2,maxRows:3},maxlength:255,placeholder:t.$L(t.typeName+"\u63CF\u8FF0\uFF0C\u56DE\u8F66\u521B\u5EFA"),enterkeyhint:"done"},on:{"on-focus":function(a){t.onFocus=!0},"on-blur":function(a){t.onFocus=!1},"on-keydown":t.onKeydown},model:{value:t.addData.name,callback:function(a){t.$set(t.addData,"name",a)},expression:"addData.name"}}),s("div",{staticClass:"add-placeholder",on:{click:t.openAdd}},[s("Icon",{attrs:{type:"md-add"}}),t._v(t._s(t.$L("\u6DFB\u52A0"+t.typeName))+" ")],1),s("div",{staticClass:"priority"},[s("ul",t._l(t.taskPriority,function(a,o){return s("li",{key:o},[t.active?s("ETooltip",{attrs:{disabled:t.$isEEUiApp||t.windowTouch,content:t.taskPriorityContent(a)}},[s("i",{staticClass:"taskfont",style:{color:a.color},domProps:{innerHTML:t._s(t.addData.p_name==a.name?"&#xe61d;":"&#xe61c;")},on:{click:function(i){return t.choosePriority(a)}}})]):t._e()],1)}),0),s("Icon",{attrs:{type:"md-settings"},on:{click:t.onPriority}})],1)],1)},K=[];const G={name:"TaskAddSimple",props:{parentId:{type:Number,default:0},projectId:{type:Number,default:0},columnId:{type:Number,default:0},addTop:{type:Boolean,default:!1},autoActive:{type:Boolean,default:!1},rowMode:{type:Boolean,default:!1}},data(){return{addData:{name:"",owner:0,column_id:0,times:[],subtasks:[],p_level:0,p_name:"",p_color:"",visibility_appoint:1,visibility_appointor:[]},active:!1,onFocus:!1,mouseEnter:!1}},mounted(){this.autoActive&&this.$nextTick(this.openAdd)},computed:{...h(["taskPriority"]),typeName(){return this.parentId>0?"\u5B50\u4EFB\u52A1":"\u4EFB\u52A1"}},watch:{active(t){t||this.$emit("on-close")},mouseEnter(){this.chackClose()},onFocus(){this.chackClose()}},methods:{getData(){return this.parentId>0?{task_id:this.parentId,name:this.addData.name}:(this.addData.project_id=this.projectId||this.$store.state.projectId,this.addData.column_id=this.columnId||"",this.addData.owner=[this.userId],this.addData.top=this.addTop?1:0,$A.cloneJSON(this.addData))},openAdd(){this.active=!0,this.defaultPriority(),this.$nextTick(()=>{this.$refs.input.focus()})},chackClose(){this.mouseEnter||this.onFocus||this.addData.name||(this.active=!1)},onPriority(){this.$emit("on-priority",this.getData()),this.active=!1},onKeydown(t){if(t.keyCode===13){if(t.shiftKey)return;t.preventDefault(),this.onAdd()}},onAdd(){if(!this.addData.name){$A.messageWarning("\u8BF7\u8F93\u5165\u4EFB\u52A1\u63CF\u8FF0");return}this.loadIng++;let t=this.parentId>0?"taskAddSub":"taskAdd";this.$store.dispatch(t,this.getData()).then(({msg:e})=>{$A.messageSuccess(e),this.loadIng--,this.active=!1,this.addData={name:"",owner:0,column_id:0,times:[],subtasks:[],p_level:0,p_name:"",p_color:"",visibility_appoint:1,visibility_appointor:[]}}).catch(({msg:e})=>{$A.modalError(e),this.loadIng--})},taskPriorityContent(t){let e=$A.runNum(t.days);return e<=0?t.name+" ("+this.$L("\u65E0\u65F6\u95F4\u9650\u5236")+")":t.name+" ("+e+this.$L("\u5929")+")"},choosePriority(t){if($A.runNum(t.days)>0){let e=new Date,s=new Date(new Date().setDate(e.getDate()+$A.runNum(t.days)));this.$set(this.addData,"times",$A.date2string([e,s]))}else this.$set(this.addData,"times",[]);this.$set(this.addData,"p_level",t.priority),this.$set(this.addData,"p_name",t.name),this.$set(this.addData,"p_color",t.color),this.$nextTick(()=>{this.$refs.input.focus()})},defaultPriority(){this.taskPriority.length!==0&&(this.addData.p_name||this.choosePriority(this.taskPriority[0]))}}},w={};var Y=d(G,H,K,!1,X,null,null,null);function X(t){for(let e in w)this[e]=w[e]}var N=function(){return Y.exports}(),J=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"task-rows"},[t._l(t.list,function(a,o){return s("div",{key:o},[s("Row",{staticClass:"task-row",style:a.color?{backgroundColor:a.color,borderBottomColor:a.color}:{}},[a.p_name?s("em",{staticClass:"priority-color",style:{backgroundColor:a.p_color}}):t._e(),s("Col",{class:["row-name",a.complete_at?"complete":""],attrs:{span:"12"}},[a.sub_num>0&&a.sub_top!==!0||a.parent_id===0&&t.fastAddTask?s("Icon",{class:["sub-icon",t.taskOpen[a.id]?"active":""],attrs:{type:"ios-arrow-forward"},on:{click:function(i){return t.getSublist(a)}}}):t._e(),s("TaskMenu",{ref:`taskMenu_${a.id}`,refInFor:!0,attrs:{task:a}}),s("div",{staticClass:"item-title",on:{click:function(i){return t.openTask(a)}}},[a.flow_item_name?s("span",{class:a.flow_item_status,on:{click:function(i){return i.stopPropagation(),t.openMenu(i,a)}}},[t._v(t._s(a.flow_item_name))]):t._e(),a.sub_top===!0?s("span",[t._v(t._s(t.$L("\u5B50\u4EFB\u52A1")))]):t._e(),a.sub_my&&a.sub_my.length>0?s("span",[t._v("+"+t._s(a.sub_my.length))]):t._e(),t._v(" "+t._s(a.name)+" ")]),s("div",{staticClass:"item-icons",on:{click:function(i){return t.openTask(a)}}},[a.desc?s("div",{staticClass:"item-icon"},[s("i",{staticClass:"taskfont"},[t._v("\uE71A")])]):t._e(),a.file_num>0?s("div",{staticClass:"item-icon"},[s("i",{staticClass:"taskfont"},[t._v("\uE71C")]),s("em",[t._v(t._s(a.file_num))])]):t._e(),a.msg_num>0?s("div",{staticClass:"item-icon"},[s("i",{staticClass:"taskfont"},[t._v("\uE71E")]),s("em",[t._v(t._s(a.msg_num))])]):t._e(),a.sub_num>0?s("div",{staticClass:"item-icon",on:{click:function(i){return i.stopPropagation(),t.getSublist(a)}}},[s("i",{staticClass:"taskfont"},[t._v("\uE71F")]),s("em",[t._v(t._s(a.sub_complete)+"/"+t._s(a.sub_num))])]):t._e()])],1),s("Col",{staticClass:"row-column",attrs:{span:"3"}},[s("EDropdown",{attrs:{trigger:"click",size:"small",placement:"bottom",disabled:a.sub_top===!0},on:{command:function(i){return t.dropTask(a,i)}}},[s("div",{staticClass:"task-column"},[t._v(t._s(t.columnName(a.column_id)))]),s("EDropdownMenu",{attrs:{slot:"dropdown"},slot:"dropdown"},t._l(t.columnList(a.project_id),function(i){return s("EDropdownItem",{key:i.id,attrs:{command:"column::"+i.id}},[t._v(" "+t._s(i.name)+" ")])}),1)],1)],1),s("Col",{staticClass:"row-priority",attrs:{span:"3"}},[s("EDropdown",{attrs:{trigger:"click",size:"small",placement:"bottom",disabled:a.sub_top===!0},on:{command:function(i){return t.dropTask(a,i)}}},[s("TaskPriority",{attrs:{backgroundColor:a.p_color}},[t._v(t._s(a.p_name))]),s("EDropdownMenu",{attrs:{slot:"dropdown"},slot:"dropdown"},t._l(t.taskPriority,function(i,r){return s("EDropdownItem",{key:r,attrs:{command:"priority::"+r}},[s("i",{staticClass:"taskfont",style:{color:i.color},domProps:{innerHTML:t._s(i.p_name==i.name?"&#xe61d;":"&#xe61c;")}}),t._v(" "+t._s(i.name)+" ")])}),1)],1)],1),s("Col",{staticClass:"row-user",attrs:{span:"3"}},[s("ul",{on:{click:function(i){return t.openTask(a)}}},[t._l(t.ownerUser(a.task_user),function(i,r){return r<3?s("li",{key:r},[s("UserAvatar",{attrs:{userid:i.userid,size:"32",borderWitdh:2,borderColor:a.color,showName:t.ownerUser(a.task_user).length===1}})],1):t._e()}),t.ownerUser(a.task_user).length===0?s("li",{staticClass:"no-owner"},[s("Button",{attrs:{type:"primary",size:"small"},on:{click:function(i){return i.stopPropagation(),t.openTask(a,!0)}}},[t._v(t._s(t.$L("\u9886\u53D6\u4EFB\u52A1")))])],1):t._e()],2)]),s("Col",{staticClass:"row-time",attrs:{span:"3"}},[!a.complete_at&&a.end_at?s("ETooltip",{class:["task-time",a.today?"today":"",a.overdue?"overdue":""],attrs:{disabled:t.$isEEUiApp||t.windowTouch,"open-delay":600,content:a.end_at}},[s("div",{on:{click:function(i){return t.openTask(a)}}},[t._v(t._s(t.expiresFormat(a.end_at)))])]):t.showCompleteAt&&a.complete_at?s("div",{attrs:{title:a.complete_at}},[t._v(t._s(t.completeAtFormat(a.complete_at)))]):t._e()],1)],1),t.taskOpen[a.id]===!0?s("TaskRow",{attrs:{list:t.subTask(a.id),"parent-id":a.id,"fast-add-task":a.parent_id===0&&t.fastAddTask,"open-key":t.openKey},on:{command:t.dropTask}}):t._e()],1)}),t.fastAddTask||t.parentId>0?s("TaskAddSimple",{attrs:{"parent-id":t.parentId,"row-mode":""},on:{"on-priority":t.onPriority}}):t._e()],2)},q=[];const Q={name:"TaskRow",components:{TaskMenu:F,TaskAddSimple:N,TaskPriority:M},props:{list:{type:Array,default:()=>[]},parentId:{type:Number,default:0},fastAddTask:{type:Boolean,default:!1},openKey:{type:String,default:"default"},showCompleteAt:{type:Boolean,default:!1}},data(){return{nowTime:$A.Time(),nowInterval:null,taskLoad:{},taskOpen:{}}},mounted(){this.nowInterval=setInterval(()=>{this.nowTime=$A.Time()},1e3)},destroyed(){clearInterval(this.nowInterval)},computed:{...h(["cacheTasks","taskPriority","cacheColumns"]),subTask(){return function(t){return this.cacheTasks.filter(e=>e.archived_at?!1:e.parent_id==t).sort((e,s)=>e.id-s.id)}}},methods:{columnName(t){const e=this.cacheColumns.find(({id:s})=>s==t);return e?e.name:""},dropTask(t,e){const s=this.$refs[`taskMenu_${t.id}`];if(!!s){if($A.leftExists(e,"column::")){s[0].updateTask({column_id:$A.leftDelete(e,"column::")});return}if($A.leftExists(e,"priority::")){let a=this.taskPriority[parseInt($A.leftDelete(e,"priority::"))];a&&s[0].updateTask({p_level:a.priority,p_name:a.name,p_color:a.color})}}},onPriority(t){this.$emit("on-priority",t)},getSublist(t){if(t.sub_top===!0){this.openTask(t);return}if(this.taskOpen[t.id]===!0){this.$set(this.taskOpen,t.id,!1);return}this.taskLoad[t.id]!==!0&&(this.$set(this.taskLoad,t.id,!0),this.$store.dispatch("getTaskForParent",t.id).then(()=>{this.$set(this.taskLoad,t.id,!1),this.$set(this.taskOpen,t.id,!0)}).catch(({msg:e})=>{$A.modalError(e),this.$set(this.taskLoad,t.id,!1)}))},columnList(t){return this.cacheColumns.filter(({project_id:e})=>e==t)},openTask(t,e){this.$store.dispatch("openTask",t),e===!0&&setTimeout(()=>{k.Store.set("receiveTask",!0)},300)},openMenu(t,e){const s=this.$refs[`taskMenu_${e.id}`];s&&s[0].handleClick(t)},ownerUser(t){return t.filter(({owner:e})=>e==1).sort((e,s)=>e.id-s.id)},expiresFormat(t){return $A.countDownFormat(t,this.nowTime)},completeAtFormat(t){let e=$A.Date(t,!0);return $A.formatDate("Y")===$A.formatDate("Y",e)?$A.formatDate("m-d H:i",e):$A.formatDate("Y-m-d",e)}}},y={};var Z=d(Q,J,q,!1,tt,null,null,null);function tt(t){for(let e in y)this[e]=y[e]}var et=function(){return Z.exports}(),st=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"task-archived"},[s("div",{staticClass:"archived-title"},[t._v(" "+t._s(t.$L("\u5F52\u6863\u7684\u4EFB\u52A1"))+" "),s("div",{staticClass:"title-icon"},[t.loadIng>0?s("Loading"):t._e()],1)]),s("div",{staticClass:"search-container lr"},[s("ul",[s("li",[s("div",{staticClass:"search-label"},[t._v(" "+t._s(t.$L("\u5173\u952E\u8BCD"))+" ")]),s("div",{staticClass:"search-content"},[s("Input",{attrs:{placeholder:t.$L("ID\u3001\u4EFB\u52A1\u540D..."),clearable:""},model:{value:t.keys.name,callback:function(a){t.$set(t.keys,"name",a)},expression:"keys.name"}})],1)]),s("li",{staticClass:"search-button"},[s("Tooltip",{attrs:{theme:"light",placement:"right","transfer-class-name":"search-button-clear",transfer:""}},[s("Button",{attrs:{loading:t.loadIng>0,type:"primary",icon:"ios-search"},on:{click:t.onSearch}},[t._v(t._s(t.$L("\u641C\u7D22")))]),s("div",{attrs:{slot:"content"},slot:"content"},[t.keyIs?s("Button",{attrs:{type:"text"},on:{click:function(a){t.keyIs=!1}}},[t._v(t._s(t.$L("\u53D6\u6D88\u7B5B\u9009")))]):s("Button",{attrs:{loading:t.loadIng>0,type:"text"},on:{click:t.getLists}},[t._v(t._s(t.$L("\u5237\u65B0")))])],1)],1)],1)])]),s("div",{staticClass:"table-page-box"},[s("Table",{attrs:{columns:t.columns,data:t.list,loading:t.loadIng>0,"no-data-text":t.$L(t.noText),stripe:""}}),s("Page",{attrs:{total:t.total,current:t.page,"page-size":t.pageSize,disabled:t.loadIng>0,simple:t.windowPortrait,"page-size-opts":[10,20,30,50,100],"show-elevator":"","show-sizer":"","show-total":""},on:{"on-change":t.setPage,"on-page-size-change":t.setPageSize}})],1)])},at=[];const ot={name:"TaskArchived",props:{projectId:{type:Number,default:0}},data(){return{loadIng:0,keys:{},keyIs:!1,columns:[{title:"ID",key:"id",width:80,render:(t,{row:e,column:s})=>t("TableAction",{props:{column:s,align:"left"}},[t("div",e.id)])},{title:this.$L("\u4EFB\u52A1\u540D\u79F0"),key:"name",minWidth:200,render:(t,{row:e})=>t("AutoTip",{on:{"on-click":()=>{this.$store.dispatch("openTask",e)}}},e.name)},{title:this.$L("\u5B8C\u6210\u65F6\u95F4"),key:"complete_at",width:168,render:(t,{row:e})=>t("div",{style:{color:e.complete_at?"":"#f00"}},e.complete_at||this.$L("\u672A\u5B8C\u6210"))},{title:this.$L("\u5F52\u6863\u65F6\u95F4"),key:"archived_at",width:168},{title:this.$L("\u5F52\u6863\u4EBA\u5458"),key:"archived_userid",minWidth:100,render:(t,{row:e})=>e.archived_userid?t("UserAvatar",{props:{userid:e.archived_userid,size:24,showName:!0}}):t("Tag",this.$L("\u7CFB\u7EDF\u81EA\u52A8"))},{title:this.$L("\u64CD\u4F5C"),align:"center",width:100,render:(t,e)=>{if(this.cacheTasks.find(a=>a.id==e.row.id&&!a.archived_at))return t("div",{style:{color:"#888"}},this.$L("\u5DF2\u8FD8\u539F"));const s=[t("span",{style:{fontSize:"13px",cursor:"pointer",color:"#84C56A"},on:{click:()=>{this.$store.dispatch("openTask",e.row)}}},this.$L("\u67E5\u770B")),t("Poptip",{props:{title:e.row.__restorePoptipTitle,confirm:!0,transfer:!0,placement:"left",okText:this.$L("\u786E\u5B9A"),cancelText:this.$L("\u53D6\u6D88"),value:e.row.__restorePoptipShow,width:220},style:{marginLeft:"6px",fontSize:"13px",cursor:"pointer",color:"#84C56A"},on:{"on-ok":()=>{this.recovery(e.row)},"on-popper-hide":()=>{e.row.__restorePoptipLoadIng=!1,e.row.__restorePoptipTitle=this.$L("\u4F60\u786E\u5B9A\u8981\u8FD8\u539F\u5F52\u6863\u5417\uFF1F"),e.row.__restorePoptipShow=!1}}},[t("span",{on:{click:a=>{a.stopPropagation(),e.row.__restorePoptipLoadIng=!0,this.$store.dispatch("call",{url:"project/column/one",data:{column_id:e.row.column_id,deleted:"all"}}).then(({data:o})=>{o.deleted_at&&(e.row.__restorePoptipTitle=this.$L("\u68C0\u6D4B\u5230\u6240\u5C5E\u7684\u4EFB\u52A1\u5217\u8868\u5DF2\u88AB\u5220\u9664\uFF0C\u8BE5\u64CD\u4F5C\u5C06\u4F1A\u8FD8\u539F\u4EFB\u52A1\u5217\u8868\uFF0C\u4F60\u786E\u5B9A\u8981\u8FD8\u539F\u5F52\u6863\u5417\uFF1F")),e.row.__restorePoptipShow=!0}).catch(({msg:o})=>{$A.modalError({content:o})}).finally(o=>{e.row.__restorePoptipLoadIng=!1})}}},[e.row.__restorePoptipLoadIng?t("Loading",{style:{width:"26px",height:"15px"}}):this.$L("\u8FD8\u539F")])]),t("Poptip",{props:{title:this.$L("\u4F60\u786E\u5B9A\u8981\u5220\u9664\u4EFB\u52A1\u5417\uFF1F"),confirm:!0,transfer:!0,placement:"left",okText:this.$L("\u786E\u5B9A"),cancelText:this.$L("\u53D6\u6D88")},style:{marginLeft:"6px",fontSize:"13px",cursor:"pointer",color:"#f00"},on:{"on-ok":()=>{this.delete(e.row)}}},this.$L("\u5220\u9664"))];return t("TableAction",{props:{column:e.column}},s)}}],list:[],page:1,pageSize:20,total:0,noText:""}},mounted(){},computed:{...h(["cacheTasks"])},watch:{projectId:{handler(){this.getLists()},immediate:!0},keyIs(t){t||(this.keys={},this.setPage(1))}},methods:{onSearch(){this.page=1,this.getLists()},getLists(){!this.projectId||(this.loadIng++,this.keyIs=$A.objImplode(this.keys)!="",this.$store.dispatch("call",{url:"project/task/lists",data:{keys:this.keys,project_id:this.projectId,parent_id:-1,archived:"yes",sorts:{archived_at:"desc"},page:Math.max(this.page,1),pagesize:Math.max($A.runNum(this.pageSize),10)}}).then(({data:t})=>{this.page=t.current_page,this.total=t.total,this.list=t.data.map(e=>(e.__restorePoptipLoadIng=!1,e.__restorePoptipTitle=this.$L("\u4F60\u786E\u5B9A\u8981\u8FD8\u539F\u5F52\u6863\u5417\uFF1F"),e.__restorePoptipShow=!1,e)),this.noText="\u6CA1\u6709\u76F8\u5173\u7684\u6570\u636E"}).catch(()=>{this.noText="\u6570\u636E\u52A0\u8F7D\u5931\u8D25"}).finally(t=>{this.loadIng--}))},setPage(t){this.page=t,this.getLists()},setPageSize(t){this.page=1,this.pageSize=t,this.getLists()},recovery(t){this.list=this.list.filter(({id:e})=>e!=t.id),this.loadIng++,this.$store.dispatch("archivedTask",{task_id:t.id,type:"recovery"}).then(({msg:e})=>{$A.messageSuccess(e),this.loadIng--,this.getLists(),this.$store.dispatch("openTask",t)}).catch(({msg:e})=>{$A.modalError(e),this.loadIng--,this.getLists()})},delete(t){this.list=this.list.filter(({id:e})=>e!=t.id),this.loadIng++,this.$store.dispatch("removeTask",{task_id:t.id}).then(({msg:e})=>{$A.messageSuccess(e),this.loadIng--,this.getLists()}).catch(({msg:e})=>{$A.modalError(e),this.loadIng--,this.getLists()})}}},b={};var it=d(ot,st,at,!1,rt,null,null,null);function rt(t){for(let e in b)this[e]=b[e]}var nt=function(){return it.exports}(),lt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"project-workflow"},[s("div",{staticClass:"workflow-title"},[t._v(" "+t._s(t.$L("\u5DE5\u4F5C\u6D41\u8BBE\u7F6E"))+" "),s("div",{staticClass:"title-icon"},[t.loadIng>0?s("Loading"):s("Icon",{attrs:{type:"ios-refresh"},on:{click:t.getData}})],1)]),t.list.length>0?s("div",{staticClass:"workflow-content"},[s("Collapse",{attrs:{accordion:""},model:{value:t.openIndex,callback:function(a){t.openIndex=a},expression:"openIndex"}},t._l(t.list,function(a){return s("Panel",{key:a.id,attrs:{name:"index_"+a.id}},[s("div",{staticClass:"workflow-item"},[s("div",{staticClass:"workflow-name"},[t._v(t._s(a.name))]),s("div",{staticClass:"workflow-status"},t._l(a.project_flow_item,function(o){return s("div",{class:o.status},[t._v(t._s(o.name))])}),0),s("div",{staticClass:"workflow-save",on:{click:function(o){o.stopPropagation()}}},[t.contrast(a.project_flow_item,a.project_flow_bak)?[s("Button",{attrs:{loading:t.loadIng>0,type:"primary"},on:{click:function(o){return t.onSave(a)}}},[t._v(t._s(t.$L("\u4FDD\u5B58")))]),a.id>0?s("Button",{attrs:{disabled:t.loadIng>0,type:"primary",ghost:""},on:{click:function(o){return t.onReduction(a,o)}}},[t._v(t._s(t.$L("\u8FD8\u539F")))]):t._e()]:t._e(),s("Button",{attrs:{disabled:t.loadIng>0,type:"error",ghost:""},on:{click:function(o){return t.onDelete(a)}}},[t._v(t._s(t.$L("\u5220\u9664")))])],2)]),s("div",{staticClass:"taskflow-config",attrs:{slot:"content"},slot:"content"},[s("div",{staticClass:"taskflow-config-table"},[s("div",{staticClass:"taskflow-config-table-left-container"},[s("div",{staticClass:"taskflow-config-table-column-header left-header"},[t._v(t._s(t.$L("\u914D\u7F6E\u9879")))]),s("div",{ref:`overlay_${a.id}`,refInFor:!0,staticClass:"taskflow-config-table-column-body"},[s("div",{staticClass:"taskflow-config-table-block"},[s("div",{staticClass:"taskflow-config-table-block-title"},[t._v(t._s(t.$L("\u8BBE\u7F6E\u72B6\u6001\u4E3A")))]),s("div",{staticClass:"taskflow-config-table-block-item"},[s("div",[s("div",{staticClass:"title"},[t._v(t._s(t.$L("\u5F00\u59CB\u72B6\u6001")))]),s("div",{staticClass:"subtitle"},[t._v(t._s(t.$L("\u65B0\u5EFA\u4EFB\u52A1\u9ED8\u8BA4\u72B6\u6001")))])])]),s("div",{staticClass:"taskflow-config-table-block-item"},[s("div",[s("div",{staticClass:"title"},[t._v(t._s(t.$L("\u8FDB\u884C\u4E2D")))]),s("div",{staticClass:"subtitle"},[t._v(t._s(t.$L("\u53EF\u8BBE\u7F6E\u591A\u4E2A\u72B6\u6001\u4E3A\u8FDB\u884C\u4E2D")))])])]),s("div",{staticClass:"taskflow-config-table-block-item"},[s("div",[s("div",{staticClass:"title"},[t._v(t._s(t.$L("\u9A8C\u6536/\u6D4B\u8BD5")))]),s("div",{staticClass:"subtitle"},[t._v(t._s(t.$L("\u53EA\u80FD\u8BBE\u7F6E\u5355\u4E2A\u72B6\u6001\u4E3A\u9A8C\u6536/\u6D4B\u8BD5")))])])]),s("div",{staticClass:"taskflow-config-table-block-item"},[s("div",[s("div",{staticClass:"title"},[t._v(t._s(t.$L("\u7ED3\u675F\u72B6\u6001")))]),s("div",{staticClass:"subtitle"},[t._v(t._s(t.$L("\u8BE5\u72B6\u6001\u4E0B\u4EFB\u52A1\u81EA\u52A8\u6807\u8BB0\u5B8C\u6210")))])])])]),s("div",{staticClass:"taskflow-config-table-block hr"},[s("div",{staticClass:"taskflow-config-table-block-title"},[t._v(t._s(t.$L("\u53EF\u6D41\u8F6C\u5230")))]),t._l(a.project_flow_item,function(o){return s("div",{staticClass:"taskflow-config-table-block-item"},[s("span",{staticClass:"transform-status-name"},[t._v(t._s(o.name))])])})],2)])]),s("div",{staticClass:"taskflow-config-table-right-container"},[s("Draggable",{staticClass:"taskflow-config-table-list-wrapper",attrs:{list:a.project_flow_item,animation:150,disabled:t.$isEEUiApp||t.windowTouch,tag:"div",draggable:".column-border"},on:{sort:function(o){}}},[t._l(a.project_flow_item,function(o){return s("div",{staticClass:"taskflow-config-table-status-column column-border",class:o.status},[s("div",{staticClass:"taskflow-config-table-status-item taskflow-config-table-column-header"},[s("div",{staticClass:"status-label-with-menu",class:o.status},[s("div",{staticClass:"name"},[t._v(t._s(t.$L(o.name)))]),s("EDropdown",{staticClass:"more",class:{opacity:o.userids.length>0||o.columnid>0},attrs:{trigger:"click"},on:{command:function(i){return t.onMore(i,o)}}},[s("div",{staticClass:"more-icon"},[s("Badge",{attrs:{dot:o.userids.length>0||o.columnid>0}},[s("Icon",{attrs:{type:"ios-more"}})],1)],1),s("EDropdownMenu",{staticClass:"taskflow-config-more-dropdown-menu",attrs:{slot:"dropdown"},slot:"dropdown"},[o.userids.length>0?s("EDropdownItem",{attrs:{command:"user"}},[s("div",{staticClass:"users"},t._l(o.userids,function(i,r){return s("UserAvatar",{key:r,attrs:{userid:i,size:28,borderWitdh:1,showName:o.userids.length===1}})}),1)]):t._e(),s("EDropdownItem",{attrs:{command:"user"}},[s("div",{staticClass:"item"},[s("Icon",{attrs:{type:"md-settings"}}),s("Badge",{attrs:{dot:o.userids.length>0||o.columnid>0}},[t._v(" "+t._s(t.$L("\u72B6\u6001\u8BBE\u7F6E"))+" ")])],1)]),s("EDropdownItem",{attrs:{command:"name"}},[s("div",{staticClass:"item"},[s("Icon",{attrs:{type:"md-create"}}),t._v(t._s(t.$L("\u4FEE\u6539\u540D\u79F0"))+" ")],1)]),s("EDropdownItem",{attrs:{command:"remove"}},[s("div",{staticClass:"item delete"},[s("Icon",{attrs:{type:"md-trash"}}),t._v(t._s(t.$L("\u5220\u9664"))+" ")],1)])],1)],1)],1)]),s("div",{ref:`overlay_${a.id}`,refInFor:!0,staticClass:"taskflow-config-table-column-body"},[s("div",{staticClass:"taskflow-config-table-block"},[s("div",{staticClass:"taskflow-config-table-block-title"}),s("RadioGroup",{model:{value:o.status,callback:function(i){t.$set(o,"status",i)},expression:"item.status"}},[s("Radio",{attrs:{label:"start"}},[s("span")]),s("Radio",{attrs:{label:"progress"}},[s("span")]),s("Radio",{attrs:{label:"test"}},[s("span")]),s("Radio",{attrs:{label:"end"}},[s("span")])],1)],1),s("div",{staticClass:"taskflow-config-table-block"},[s("div",{staticClass:"taskflow-config-table-block-title"}),s("CheckboxGroup",{on:{"on-change":function(i){return t.onTurns(o)}},model:{value:o.turns,callback:function(i){t.$set(o,"turns",i)},expression:"item.turns"}},t._l(a.project_flow_item,function(i){return s("Checkbox",{key:i.id,attrs:{label:i.id,disabled:i.id==o.id}},[s("span")])}),1)],1)])])}),s("div",{staticClass:"taskflow-config-table-status-column addnew",on:{click:function(o){return t.onAdd(a)}}},[t._v(t._s(t.$L("\u6DFB\u52A0\u72B6\u6001")))])],2)],1)])])])}),1)],1):t.loadIng==0?s("div",{staticClass:"workflow-no"},[t._v(" "+t._s(t.$L("\u5F53\u524D\u9879\u76EE\u8FD8\u6CA1\u6709\u521B\u5EFA\u5DE5\u4F5C\u6D41"))+" "),s("Button",{attrs:{type:"primary"},on:{click:t.onCreate}},[t._v(t._s(t.$L("\u521B\u5EFA\u5DE5\u4F5C\u6D41")))])],1):t._e(),s("Modal",{attrs:{styles:{width:"90%",maxWidth:"640px"},title:`${t.$L("\u72B6\u6001\u8BBE\u7F6E")} (${t.settingData.name})`,"mask-closable":!1},model:{value:t.userShow,callback:function(a){t.userShow=a},expression:"userShow"}},[s("Form",{attrs:{model:t.settingData,"label-width":"auto"},nativeOn:{submit:function(a){a.preventDefault()}}},[s("div",{staticClass:"workflow-setting-box"},[s("h3",[t._v(t._s(t.$L("\u72B6\u6001\u8D1F\u8D23\u4EBA")))]),s("div",{staticClass:"form-box"},[s("FormItem",{attrs:{prop:"userids",label:t.$L("\u72B6\u6001\u8D1F\u8D23\u4EBA")}},[s("UserSelect",{attrs:{"project-id":t.projectId,"multiple-max":5,title:t.$L("\u9009\u62E9\u72B6\u6001\u8D1F\u8D23\u4EBA")},model:{value:t.settingData.userids,callback:function(a){t.$set(t.settingData,"userids",a)},expression:"settingData.userids"}})],1),s("FormItem",{attrs:{prop:"usertype",label:t.$L("\u6D41\u8F6C\u6A21\u5F0F")}},[s("RadioGroup",{model:{value:t.settingData.usertype,callback:function(a){t.$set(t.settingData,"usertype",a)},expression:"settingData.usertype"}},[s("Radio",{attrs:{label:"add"}},[t._v(t._s(t.$L("\u6DFB\u52A0\u6A21\u5F0F")))]),s("Radio",{attrs:{label:"replace"}},[t._v(t._s(t.$L("\u6D41\u8F6C\u6A21\u5F0F")))]),s("Radio",{attrs:{label:"merge"}},[t._v(t._s(t.$L("\u5254\u9664\u6A21\u5F0F")))])],1),t.settingData.usertype=="replace"?s("div",{staticClass:"form-tip"},[t._v(t._s(t.$L(`\u6D41\u8F6C\u5230\u3010${t.settingData.name}\u3011\u65F6\u6539\u53D8\u4EFB\u52A1\u8D1F\u8D23\u4EBA\u4E3A\u72B6\u6001\u8D1F\u8D23\u4EBA\uFF0C\u539F\u672C\u7684\u4EFB\u52A1\u8D1F\u8D23\u4EBA\u79FB\u81F3\u534F\u52A9\u4EBA\u5458\u3002`)))]):t.settingData.usertype=="merge"?s("div",{staticClass:"form-tip"},[t._v(t._s(t.$L(`\u6D41\u8F6C\u5230\u3010${t.settingData.name}\u3011\u65F6\u6539\u53D8\u4EFB\u52A1\u8D1F\u8D23\u4EBA\u4E3A\u72B6\u6001\u8D1F\u8D23\u4EBA\uFF08\u5E76\u4FDD\u7559\u64CD\u4F5C\u72B6\u6001\u7684\u4EBA\u5458\uFF09\uFF0C\u539F\u672C\u7684\u4EFB\u52A1\u8D1F\u8D23\u4EBA\u79FB\u81F3\u534F\u52A9\u4EBA\u5458\u3002`)))]):s("div",{staticClass:"form-tip"},[t._v(t._s(t.$L(`\u6D41\u8F6C\u5230\u3010${t.settingData.name}\u3011\u65F6\u6DFB\u52A0\u72B6\u6001\u8D1F\u8D23\u4EBA\u81F3\u4EFB\u52A1\u8D1F\u8D23\u4EBA\u3002`)))])],1),s("FormItem",{attrs:{prop:"userlimit",label:t.$L("\u9650\u5236\u8D1F\u8D23\u4EBA")}},[s("iSwitch",{attrs:{"true-value":1,"false-value":0},model:{value:t.settingData.userlimit,callback:function(a){t.$set(t.settingData,"userlimit",a)},expression:"settingData.userlimit"}}),t.settingData.userlimit===1?s("div",{staticClass:"form-tip"},[t._v(t._s(t.$L(`\u6D41\u8F6C\u5230\u3010${t.settingData.name}\u3011\u65F6\uFF0C[\u4EFB\u52A1\u8D1F\u8D23\u4EBA] \u548C [\u9879\u76EE\u7BA1\u7406\u5458] \u53EF\u4EE5\u4FEE\u6539\u72B6\u6001\u3002`)))]):s("div",{staticClass:"form-tip"},[t._v(t._s(t.$L(`\u6D41\u8F6C\u5230\u3010${t.settingData.name}\u3011\u65F6\uFF0C[\u4EFB\u52A1\u8D1F\u8D23\u4EBA] \u548C [\u9879\u76EE\u7BA1\u7406\u5458] \u53EF\u4EE5\u4FEE\u6539\u72B6\u6001\u3002`)))])],1)],1)]),s("div",{staticClass:"workflow-setting-box"},[s("h3",[t._v(t._s(t.$L("\u5173\u8054\u5217\u8868")))]),s("div",{staticClass:"form-box"},[s("FormItem",{attrs:{prop:"usertype",label:t.$L("\u5173\u8054\u5217\u8868")}},[s("Select",{attrs:{placeholder:t.$L("\u9009\u62E9\u5173\u8054\u5217\u8868"),transfer:""},model:{value:t.settingData.columnid,callback:function(a){t.$set(t.settingData,"columnid",a)},expression:"settingData.columnid"}},t._l(t.columnList,function(a,o){return s("Option",{key:o,attrs:{value:a.id}},[t._v(t._s(a.name))])}),1),s("div",{staticClass:"form-tip"},[t._v(" "+t._s(t.$L(`\u6D41\u8F6C\u5230\u3010${t.settingData.name}\u3011\u65F6\u81EA\u52A8\u5C06\u4EFB\u52A1\u79FB\u52A8\u81F3\u5173\u8054\u5217\u8868\u3002`))+" "),t.settingData.columnid?s("a",{attrs:{href:"javascript:void(0)"},on:{click:function(a){t.settingData.columnid=0}}},[t._v(t._s(t.$L("\u53D6\u6D88\u5173\u8054")))]):t._e()])],1)],1)])]),s("div",{staticClass:"adaption",attrs:{slot:"footer"},slot:"footer"},[s("Button",{attrs:{type:"default"},on:{click:function(a){t.userShow=!1}}},[t._v(t._s(t.$L("\u53D6\u6D88")))]),s("Button",{attrs:{type:"primary"},on:{click:t.onUser}},[t._v(t._s(t.$L("\u4FDD\u5B58")))])],1)],1)],1)},ct=[];const dt={name:"ProjectWorkflow",components:{UserSelect:W,Draggable:E},props:{projectId:{type:Number,default:0}},data(){return{loadIng:0,list:[],openIndex:"",userShow:!1,settingData:{}}},mounted(){},computed:{...h(["cacheColumns"]),columnList({projectId:t,cacheColumns:e}){return e.filter(({project_id:s})=>s==t).sort((s,a)=>s.sort!=a.sort?s.sort-a.sort:s.id-a.id).map(s=>({id:s.id,name:s.name}))}},watch:{projectId:{handler(t){t&&this.getData()},immediate:!0}},methods:{getData(){this.loadIng++,this.$store.dispatch("call",{url:"project/flow/list",data:{project_id:this.projectId}}).then(({data:t})=>{this.list=t.map(e=>(e.project_flow_bak=JSON.stringify(e.project_flow_item),e)),this.openIndex=this.list.length===1?"index_"+this.list[0].id:"",this.$nextTick(this.syncScroller)}).catch(({msg:t})=>{$A.modalError(t)}).finally(t=>{this.loadIng--})},syncScroller(){this.list.some(t=>{this.$refs[`overlay_${t.id}`]&&this.$refs[`overlay_${t.id}`].some(e=>{Object.keys(e.attributes).includes("sync-scroller")||(e.setAttribute("sync-scroller",!0),e.addEventListener("scroll",({target:s})=>{let a=s.scrollTop,o=s.scrollLeft;this.$nextTick(()=>{this.$refs[`overlay_${t.id}`].some(i=>{i!=e&&i.scrollTo(o,a)})})}))})})},contrast(t,e){return JSON.stringify(t)!=e},existDiff(){return!!this.list.find(t=>this.contrast(t.project_flow_item,t.project_flow_bak))},onCreate(){let t=-1*$A.randNum(1e3,1e4);this.list.push({id:t,name:"Default",project_flow_item:[{id:-10,name:"\u5F85\u5904\u7406",status:"start",turns:[-10,-11,-12,-13,-14],userids:[],usertype:"add",userlimit:0,columnid:0},{id:-11,name:"\u8FDB\u884C\u4E2D",status:"progress",turns:[-10,-11,-12,-13,-14],userids:[],usertype:"add",userlimit:0,columnid:0},{id:-12,name:"\u5F85\u6D4B\u8BD5",status:"test",turns:[-10,-11,-12,-13,-14],userids:[],usertype:"add",userlimit:0,columnid:0},{id:-13,name:"\u5DF2\u5B8C\u6210",status:"end",turns:[-10,-11,-12,-13,-14],userids:[],usertype:"add",userlimit:0,columnid:0},{id:-14,name:"\u5DF2\u53D6\u6D88",status:"end",turns:[-10,-11,-12,-13,-14],userids:[],usertype:"add",userlimit:0,columnid:0}]}),this.openIndex="index_"+t,this.$nextTick(this.syncScroller)},onDelete(t){$A.modalConfirm({title:"\u5220\u9664\u5DE5\u4F5C\u6D41",content:"\u4F60\u786E\u5B9A\u8981\u5220\u9664\u5DE5\u4F5C\u6D41\u5417\uFF1F",loading:!0,onOk:()=>{if(t.id>0)return new Promise((s,a)=>{this.loadIng++,this.$store.dispatch("call",{url:"project/flow/delete",data:{project_id:this.projectId}}).then(({msg:o})=>{s(o);let i=this.list.findIndex(({id:r})=>r==t.id);i>-1&&this.list.splice(i,1)}).catch(({msg:o})=>{a(o)}).finally(o=>{this.loadIng--})});const e=this.list.findIndex(({id:s})=>s==t.id);e>-1&&this.list.splice(e,1)}})},onMore(t,e){switch(t){case"user":this.$set(this.settingData,"id",e.id),this.$set(this.settingData,"name",e.name),this.$set(this.settingData,"userids",e.userids),this.$set(this.settingData,"usertype",e.usertype),this.$set(this.settingData,"userlimit",e.userlimit),this.$set(this.settingData,"columnid",e.columnid),this.userShow=!0;break;case"name":this.onName(e);break;case"remove":this.onRemove(e);break}},onUser(){this.userShow=!1,this.list.some(t=>{let e=t.project_flow_item.find(s=>s.id==this.settingData.id);e&&(this.$set(e,"userids",this.settingData.userids),this.$set(e,"usertype",this.settingData.usertype),this.$set(e,"userlimit",this.settingData.userlimit),this.$set(e,"columnid",this.settingData.columnid))})},onName(t){$A.modalInput({value:t.name,title:"\u4FEE\u6539\u540D\u79F0",placeholder:"\u8BF7\u8F93\u5165\u6D41\u7A0B\u540D\u79F0",onOk:e=>{if(!e)return"\u8BF7\u8F93\u5165\u6D41\u7A0B\u540D\u79F0";this.$set(t,"name",e)}})},onRemove(t){this.list.some(e=>{let s=e.project_flow_item.findIndex(({id:a})=>a==t.id);s>-1&&e.project_flow_item.splice(s,1)})},onTurns(t){this.$set(t,"turns",t.turns.sort())},onAdd(t){$A.modalInput({title:"\u6DFB\u52A0\u72B6\u6001",placeholder:"\u8BF7\u8F93\u5165\u72B6\u6001\u540D\u79F0",onOk:e=>{if(!e)return"\u8BF7\u8F93\u5165\u72B6\u6001\u540D\u79F0";const s=$A.randNum(1e5,999999)*-1,a=t.project_flow_item.map(({id:o})=>o);t.project_flow_item.push({id:s,name:e,status:"end",turns:a,userids:[],usertype:"add",userlimit:0,columnid:0}),t.project_flow_item.some(o=>{o.turns.push(s)})}})},onReduction(t){this.$set(t,"project_flow_item",JSON.parse(t.project_flow_bak))},onSave(t){let e=0;t.project_flow_item.some(s=>{s.sort=e++}),this.loadIng++,this.$store.dispatch("call",{url:"project/flow/save",data:{project_id:this.projectId,flows:t.project_flow_item},method:"post"}).then(({data:s,msg:a})=>{$.messageSuccess(a),s.project_flow_bak=JSON.stringify(s.project_flow_item);let o=this.list.findIndex(({id:i})=>i==t.id);o>-1?this.list.splice(o,1,s):this.list.push(s),this.openIndex="index_"+s.id,this.$nextTick(this.syncScroller)}).catch(({msg:s})=>{$A.modalError(s)}).finally(s=>{this.loadIng--})},saveAll(){this.list.some(t=>{this.contrast(t.project_flow_item,t.project_flow_bak)&&this.onSave(t)})}}},C={};var ut=d(dt,lt,ct,!1,pt,null,null,null);function pt(t){for(let e in C)this[e]=C[e]}var ht=function(){return ut.exports}(),mt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"project-permission"},[s("div",{staticClass:"permission-title"},[t._v(" "+t._s(t.$L("\u6743\u9650\u8BBE\u7F6E"))+" "),s("div",{staticClass:"title-icon"},[t.loadIng>0?s("Loading"):s("Icon",{attrs:{type:"ios-refresh"},on:{click:function(a){return t.getData()}}})],1)]),s("div",{staticClass:"permission-content"},[s("Form",{attrs:{model:t.formData,"label-width":"90","label-position":"right"}},[s("div",{staticClass:"project-permission-title"},[t._v(t._s(t.$L("\u4EFB\u52A1\u5217\u6743\u9650"))+":")]),s("FormItem",{attrs:{label:t.$L("\u6DFB\u52A0\u5217")}},[s("CheckboxGroup",{model:{value:t.formData.task_list_add,callback:function(a){t.$set(t.formData,"task_list_add",a)},expression:"formData.task_list_add"}},[s("Checkbox",{attrs:{label:1,disabled:""}},[t._v(t._s(t.$L("\u9879\u76EE\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:2}},[t._v(t._s(t.$L("\u9879\u76EE\u6210\u5458")))])],1)],1),s("FormItem",{attrs:{label:t.$L("\u4FEE\u6539\u5217")}},[s("CheckboxGroup",{model:{value:t.formData.task_list_update,callback:function(a){t.$set(t.formData,"task_list_update",a)},expression:"formData.task_list_update"}},[s("Checkbox",{attrs:{label:1,disabled:""}},[t._v(t._s(t.$L("\u9879\u76EE\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:2}},[t._v(t._s(t.$L("\u9879\u76EE\u6210\u5458")))])],1)],1),s("FormItem",{attrs:{label:t.$L("\u5220\u9664\u5217")}},[s("CheckboxGroup",{model:{value:t.formData.task_list_remove,callback:function(a){t.$set(t.formData,"task_list_remove",a)},expression:"formData.task_list_remove"}},[s("Checkbox",{attrs:{label:1,disabled:""}},[t._v(t._s(t.$L("\u9879\u76EE\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:2}},[t._v(t._s(t.$L("\u9879\u76EE\u6210\u5458")))])],1)],1),s("FormItem",{attrs:{label:t.$L("\u6392\u5E8F\u5217")}},[s("CheckboxGroup",{model:{value:t.formData.task_list_sort,callback:function(a){t.$set(t.formData,"task_list_sort",a)},expression:"formData.task_list_sort"}},[s("Checkbox",{attrs:{label:1,disabled:""}},[t._v(t._s(t.$L("\u9879\u76EE\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:2}},[t._v(t._s(t.$L("\u9879\u76EE\u6210\u5458")))])],1)],1),s("div",{staticClass:"project-permission-title"},[t._v(t._s(t.$L("\u4EFB\u52A1\u6743\u9650"))+":")]),s("FormItem",{attrs:{label:t.$L("\u6DFB\u52A0\u4EFB\u52A1")}},[s("CheckboxGroup",{model:{value:t.formData.task_add,callback:function(a){t.$set(t.formData,"task_add",a)},expression:"formData.task_add"}},[s("Checkbox",{attrs:{label:1,disabled:""}},[t._v(t._s(t.$L("\u9879\u76EE\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:2}},[t._v(t._s(t.$L("\u9879\u76EE\u6210\u5458")))])],1)],1),s("FormItem",{attrs:{label:t.$L("\u4FEE\u6539\u4EFB\u52A1")}},[s("CheckboxGroup",{model:{value:t.formData.task_update,callback:function(a){t.$set(t.formData,"task_update",a)},expression:"formData.task_update"}},[s("Checkbox",{attrs:{label:1,disabled:""}},[t._v(t._s(t.$L("\u9879\u76EE\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:3}},[t._v(t._s(t.$L("\u4EFB\u52A1\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:4}},[t._v(t._s(t.$L("\u4EFB\u52A1\u534F\u52A9\u4EBA")))]),s("Checkbox",{attrs:{label:2}},[t._v(t._s(t.$L("\u9879\u76EE\u6210\u5458")))])],1)],1),s("FormItem",{attrs:{label:t.$L("\u4FEE\u6539\u72B6\u6001")}},[s("CheckboxGroup",{model:{value:t.formData.task_status,callback:function(a){t.$set(t.formData,"task_status",a)},expression:"formData.task_status"}},[s("Checkbox",{attrs:{label:1,disabled:""}},[t._v(t._s(t.$L("\u9879\u76EE\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:3}},[t._v(t._s(t.$L("\u4EFB\u52A1\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:4}},[t._v(t._s(t.$L("\u4EFB\u52A1\u534F\u52A9\u4EBA")))]),s("Checkbox",{attrs:{label:2}},[t._v(t._s(t.$L("\u9879\u76EE\u6210\u5458")))])],1)],1),s("FormItem",{attrs:{label:t.$L("\u5F52\u6863\u4EFB\u52A1")}},[s("CheckboxGroup",{model:{value:t.formData.task_archived,callback:function(a){t.$set(t.formData,"task_archived",a)},expression:"formData.task_archived"}},[s("Checkbox",{attrs:{label:1,disabled:""}},[t._v(t._s(t.$L("\u9879\u76EE\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:3}},[t._v(t._s(t.$L("\u4EFB\u52A1\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:4}},[t._v(t._s(t.$L("\u4EFB\u52A1\u534F\u52A9\u4EBA")))]),s("Checkbox",{attrs:{label:2}},[t._v(t._s(t.$L("\u9879\u76EE\u6210\u5458")))])],1)],1),s("FormItem",{attrs:{label:t.$L("\u5220\u9664\u4EFB\u52A1")}},[s("CheckboxGroup",{model:{value:t.formData.task_remove,callback:function(a){t.$set(t.formData,"task_remove",a)},expression:"formData.task_remove"}},[s("Checkbox",{attrs:{label:1,disabled:""}},[t._v(t._s(t.$L("\u9879\u76EE\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:3}},[t._v(t._s(t.$L("\u4EFB\u52A1\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:4}},[t._v(t._s(t.$L("\u4EFB\u52A1\u534F\u52A9\u4EBA")))]),s("Checkbox",{attrs:{label:2}},[t._v(t._s(t.$L("\u9879\u76EE\u6210\u5458")))])],1)],1),s("FormItem",{attrs:{label:t.$L("\u79FB\u52A8\u4EFB\u52A1")}},[s("CheckboxGroup",{model:{value:t.formData.task_move,callback:function(a){t.$set(t.formData,"task_move",a)},expression:"formData.task_move"}},[s("Checkbox",{attrs:{label:1,disabled:""}},[t._v(t._s(t.$L("\u9879\u76EE\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:3}},[t._v(t._s(t.$L("\u4EFB\u52A1\u8D1F\u8D23\u4EBA")))]),s("Checkbox",{attrs:{label:4}},[t._v(t._s(t.$L("\u4EFB\u52A1\u534F\u52A9\u4EBA")))]),s("Checkbox",{attrs:{label:2}},[t._v(t._s(t.$L("\u9879\u76EE\u6210\u5458")))])],1)],1)],1)],1),s("div",{staticClass:"project-permission-footer",attrs:{slot:"footer"},slot:"footer"},[s("Button",{attrs:{type:"primary",loading:t.loadIng>0},on:{click:t.updateData}},[t._v(t._s(t.$L("\u4FEE\u6539")))]),s("Button",{attrs:{type:"default"},on:{click:t.onClose}},[t._v(t._s(t.$L("\u53D6\u6D88")))])],1)])},ft=[];const _t={name:"ProjectPermission",props:{projectId:{type:Number,default:0}},data(){return{loadIng:0,formData:{project_task_list:[],task_add:[],task_update:[],task_status:[],task_archived:[],task_remove:[],task_move:[]}}},mounted(){},watch:{projectId:{handler(t){t&&this.getData()},immediate:!0}},methods:{getData(){this.loadIng++,this.$store.dispatch("call",{url:"project/permission",data:{project_id:this.projectId}}).then(({data:t})=>{this.formData=t.permissions}).catch(({msg:t})=>{$A.modalError(t)}).finally(t=>{this.loadIng--})},updateData(){this.loadIng++,this.$store.dispatch("call",{url:"project/permission/update",method:"post",data:{project_id:this.projectId,...this.formData}}).then(({data:t})=>{this.formData=t.permissions,this.$Message.success(this.$L("\u4FEE\u6539\u6210\u529F"))}).catch(({msg:t})=>{$A.modalError(t)}).finally(t=>{this.loadIng--})},onClose(){this.$emit("close")}}},D={};var vt=d(_t,mt,ft,!1,$t,null,null,null);function $t(t){for(let e in D)this[e]=D[e]}var kt=function(){return vt.exports}(),gt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"task-deleted"},[s("div",{staticClass:"deleted-title"},[t._v(" "+t._s(t.$L("\u5220\u9664\u7684\u4EFB\u52A1"))+" "),s("div",{staticClass:"title-icon"},[t.loadIng>0?s("Loading"):t._e()],1)]),s("div",{staticClass:"search-container lr"},[s("ul",[s("li",[s("div",{staticClass:"search-label"},[t._v(" "+t._s(t.$L("\u5173\u952E\u8BCD"))+" ")]),s("div",{staticClass:"search-content"},[s("Input",{attrs:{placeholder:t.$L("ID\u3001\u4EFB\u52A1\u540D..."),clearable:""},model:{value:t.keys.name,callback:function(a){t.$set(t.keys,"name",a)},expression:"keys.name"}})],1)]),s("li",{staticClass:"search-button"},[s("Tooltip",{attrs:{theme:"light",placement:"right","transfer-class-name":"search-button-clear",transfer:""}},[s("Button",{attrs:{loading:t.loadIng>0,type:"primary",icon:"ios-search"},on:{click:t.onSearch}},[t._v(t._s(t.$L("\u641C\u7D22")))]),s("div",{attrs:{slot:"content"},slot:"content"},[t.keyIs?s("Button",{attrs:{type:"text"},on:{click:function(a){t.keyIs=!1}}},[t._v(t._s(t.$L("\u53D6\u6D88\u7B5B\u9009")))]):s("Button",{attrs:{loading:t.loadIng>0,type:"text"},on:{click:t.getLists}},[t._v(t._s(t.$L("\u5237\u65B0")))])],1)],1)],1)])]),s("div",{staticClass:"table-page-box"},[s("Table",{attrs:{columns:t.columns,data:t.list,loading:t.loadIng>0,"no-data-text":t.$L(t.noText),stripe:""}}),s("Page",{attrs:{total:t.total,current:t.page,"page-size":t.pageSize,disabled:t.loadIng>0,simple:t.windowPortrait,"page-size-opts":[10,20,30,50,100],"show-elevator":"","show-sizer":"","show-total":""},on:{"on-change":t.setPage,"on-page-size-change":t.setPageSize}})],1)])},wt=[];const yt={name:"TaskDeleted",props:{projectId:{type:Number,default:0}},data(){return{loadIng:0,keys:{},keyIs:!1,columns:[{title:"ID",key:"id",width:80,render:(t,{row:e,column:s})=>t("TableAction",{props:{column:s,align:"left"}},[t("div",e.id)])},{title:this.$L("\u4EFB\u52A1\u540D\u79F0"),key:"name",minWidth:200,render:(t,{row:e})=>t("AutoTip",e.name)},{title:this.$L("\u521B\u5EFA\u65F6\u95F4"),key:"created_at",width:168},{title:this.$L("\u5220\u9664\u65F6\u95F4"),key:"deleted_at",width:168},{title:this.$L("\u5220\u9664\u4EBA\u5458"),key:"deleted_userid",minWidth:100,render:(t,{row:e})=>e.deleted_userid?t("UserAvatar",{props:{userid:e.deleted_userid,size:24,showName:!0}}):t("span","-")},{title:this.$L("\u64CD\u4F5C"),align:"center",width:100,render:(t,e)=>{const s=[t("Poptip",{props:{title:this.$L("\u4F60\u786E\u5B9A\u8981\u8FD8\u539F\u5220\u9664\u5417\uFF1F"),confirm:!0,transfer:!0,placement:"left",okText:this.$L("\u786E\u5B9A"),cancelText:this.$L("\u53D6\u6D88")},style:{fontSize:"13px",cursor:"pointer",color:"#84C56A"},on:{"on-ok":()=>{this.recovery(e.row)}}},this.$L("\u8FD8\u539F"))];return t("TableAction",{props:{column:e.column}},s)}}],list:[],page:1,pageSize:20,total:0,noText:""}},mounted(){},computed:{...h(["cacheTasks"])},watch:{projectId:{handler(){this.getLists()},immediate:!0},keyIs(t){t||(this.keys={},this.setPage(1))}},methods:{onSearch(){this.page=1,this.getLists()},getLists(){!this.projectId||(this.loadIng++,this.keyIs=$A.objImplode(this.keys)!="",this.$store.dispatch("call",{url:"project/task/lists",data:{keys:this.keys,project_id:this.projectId,parent_id:-1,deleted:"yes",sorts:{deleted_at:"desc"},page:Math.max(this.page,1),pagesize:Math.max($A.runNum(this.pageSize),10)}}).then(({data:t})=>{this.page=t.current_page,this.total=t.total,this.list=t.data,this.noText="\u6CA1\u6709\u76F8\u5173\u7684\u6570\u636E"}).catch(()=>{this.noText="\u6570\u636E\u52A0\u8F7D\u5931\u8D25"}).finally(t=>{this.loadIng--}))},setPage(t){this.page=t,this.getLists()},setPageSize(t){this.page=1,this.pageSize=t,this.getLists()},recovery(t){this.list=this.list.filter(({id:e})=>e!=t.id),this.loadIng++,this.$store.dispatch("removeTask",{task_id:t.id,type:"recovery"}).then(({msg:e})=>{$A.messageSuccess(e),this.loadIng--,this.getLists(),this.$store.dispatch("openTask",t)}).catch(({msg:e})=>{$A.modalError(e),this.loadIng--,this.getLists()})}}},L={};var bt=d(yt,gt,wt,!1,Ct,null,null,null);function Ct(t){for(let e in L)this[e]=L[e]}var Dt=function(){return bt.exports}(),Lt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"common-gantt"},[s("div",{staticClass:"gantt-left",style:{width:t.menuWidth+"px"}},[s("div",{staticClass:"gantt-title"},[s("div",{staticClass:"gantt-title-text"},[t._v(t._s(t.$L("\u4EFB\u52A1\u540D\u79F0")))])]),s("ul",{ref:"ganttItem",staticClass:"gantt-item",on:{scroll:t.itemScrollListener,mouseenter:function(a){t.mouseType="item"}}},t._l(t.lists,function(a,o){return s("li",{key:o},[a.overdue?s("div",{staticClass:"item-overdue",on:{click:function(i){return t.clickItem(a)}}},[t._v(t._s(t.$L("\u5DF2\u8D85\u671F")))]):t._e(),s("div",{staticClass:"item-title",class:{complete:a.complete,overdue:a.overdue},on:{click:function(i){return t.clickItem(a)}}},[t._v(t._s(a.label))]),s("Icon",{staticClass:"item-icon",attrs:{type:"ios-locate-outline"},on:{click:function(i){return t.scrollPosition(o)}}})],1)}),0)]),s("div",{ref:"ganttRight",staticClass:"gantt-right"},[s("div",{staticClass:"gantt-chart"},[s("ul",{staticClass:"gantt-month"},t._l(t.monthNum,function(a,o){return s("li",{key:o,style:t.monthStyle(o)},[s("div",{staticClass:"month-format"},[t._v(t._s(t.monthFormat(o)))])])}),0),s("ul",{staticClass:"gantt-date",on:{mousedown:t.dateMouseDown}},t._l(t.dateNum,function(a,o){return s("li",{key:o,style:t.dateStyle(o)},[s("div",{staticClass:"date-format"},[s("div",{staticClass:"format-day"},[t._v(t._s(t.dateFormat(o,"day")))]),t.dateWidth>46?s("div",{staticClass:"format-week"},[t._v(t._s(t.dateFormat(o,"week")))]):t._e()])])}),0),s("ul",{ref:"ganttTimeline",staticClass:"gantt-timeline",on:{scroll:t.timelineScrollListener,mouseenter:function(a){t.mouseType="timeline"}}},t._l(t.lists,function(a,o){return s("li",{key:o},[s("div",{staticClass:"timeline-item",style:t.itemStyle(a),on:{mousedown:function(i){return t.itemMouseDown(i,a)}}},[s("div",{staticClass:"timeline-title",attrs:{title:a.label}},[t._v(t._s(a.label))]),s("div",{staticClass:"timeline-resizer"})])])}),0)])])])},jt=[];const Tt={name:"GanttView",props:{lists:{type:Array},menuWidth:{type:Number,default:300},itemWidth:{type:Number,default:100}},data(){return{mouseType:"",mouseWidth:0,mouseScaleWidth:0,dateWidth:100,ganttWidth:0,mouseItem:null,mouseBak:{},dateMove:null}},mounted(){this.dateWidth=this.itemWidth,this.$refs.ganttRight.addEventListener("mousewheel",this.handleScroll,!1),document.addEventListener("mousemove",this.itemMouseMove),document.addEventListener("mouseup",this.itemMouseUp),window.addEventListener("resize",this.handleResize,!1),this.handleResize()},beforeDestroy(){this.$refs.ganttRight.removeEventListener("mousewheel",this.handleScroll,!1),document.removeEventListener("mousemove",this.itemMouseMove),document.removeEventListener("mouseup",this.itemMouseUp),window.removeEventListener("resize",this.handleResize,!1)},watch:{itemWidth(t){this.dateWidth=t}},computed:{monthNum(){const{ganttWidth:t,dateWidth:e}=this;return Math.floor(t/e/30)+2},monthStyle(){const{mouseWidth:t,dateWidth:e}=this;return function(s){let a=t==0?0:t/e,o=new Date,i=new Date(o.getFullYear(),o.getMonth(),o.getDate(),0,0,0),r=new Date(i.getTime()+a*864e5),n=new Date(r.getFullYear(),r.getMonth()+1,0,23,59,59),l=(n-r)/1e3/60/60/24,c=e*l;return s>0&&(n=new Date(r.getFullYear(),r.getMonth()+1+s,0),c=n.getDate()*e),{width:c+"px"}}},monthFormat(){const{mouseWidth:t,dateWidth:e}=this;return function(s){let a=t==0?0:t/e,o=new Date,i=new Date(o.getFullYear(),o.getMonth(),o.getDate(),0,0,0),r=new Date(i.getTime()+a*864e5);return s>0&&(r=new Date(r.getFullYear(),r.getMonth()+1+s,0)),$A.formatDate("Y-m",r)}},dateNum(){const{ganttWidth:t,dateWidth:e}=this;return Math.floor(t/e)+2},dateStyle(){const{mouseWidth:t,dateWidth:e}=this;return function(s){const a={};let o=t==0?0:t/e,i=Math.floor(o)+s;o==Math.floor(o)&&i--;let r=t==0?s-1:i,n=new Date(new Date().getTime()+r*864e5);[0,6].indexOf(n.getDay())!==-1&&(a.backgroundColor="#f9fafb");let l=e;return s==0&&(l=Math.abs((t%l-l)%l)),a.width=l+"px",a}},dateFormat(){const{mouseWidth:t,dateWidth:e}=this;return function(s,a){let o=t==0?0:t/e,i=Math.floor(o)+s;o==Math.floor(o)&&i--;let r=t==0?s-1:i,n=new Date(new Date().getTime()+r*864e5);return a=="day"?n.getDate():a=="week"?this.$L(`\u661F\u671F${"\u65E5\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D".charAt(n.getDay())}`):n}},itemStyle(){const{mouseWidth:t,dateWidth:e,ganttWidth:s}=this;return function(a){const{start:o,end:i}=a.time,{style:r,moveX:n,moveW:l}=a;let c=new Date,u=new Date(c.getFullYear(),c.getMonth(),c.getDate(),0,0,0).getTime(),f=(o-u)/1e3/60/60/24,v=(i-u)/1e3/60/60/24,p=e*f+t*-1,m=e*(v-f);typeof n=="number"&&(p+=n),typeof l=="number"&&(m+=l);const _={left:Math.min(Math.max(p,m*-1.2),s*1.2).toFixed(2)+"px",width:m.toFixed(2)+"px"};return p<0&&Math.abs(p)<m&&(_.paddingLeft=Math.abs(p).toFixed(2)+"px"),p+m>s&&p<s&&(_.paddingRight=Math.abs(p+m-s).toFixed(2)+"px"),typeof r=="object"?Object.assign(_,r):_}}},methods:{itemScrollListener(t){this.mouseType!="timeline"&&(this.$refs.ganttTimeline.scrollTop=t.target.scrollTop)},timelineScrollListener(t){this.mouseType!="item"&&(this.$refs.ganttItem.scrollTop=t.target.scrollTop)},handleScroll(t){if(t.preventDefault(),t.ctrlKey){this.dateWidth=Math.min(600,Math.max(24,this.dateWidth-Math.floor(t.deltaY))),this.mouseWidth=this.ganttWidth/2*((this.dateWidth-100)/100)+this.dateWidth/100*this.mouseScaleWidth;return}if(t.deltaY!=0){const e=this.$refs.ganttTimeline;let s=e.scrollTop+t.deltaY;s<0?s=0:s>e.scrollHeight-e.clientHeight&&(s=e.scrollHeight-e.clientHeight),e.scrollTop!=s&&(this.mouseType="timeline",e.scrollTop=s)}t.deltaX!=0&&(this.mouseWidth+=t.deltaX,this.mouseScaleWidth+=t.deltaX*(100/this.dateWidth))},handleResize(){this.ganttWidth=this.$refs.ganttTimeline.clientWidth},dateMouseDown(t){t.preventDefault(),this.mouseItem=null,this.dateMove={clientX:t.clientX}},itemMouseDown(t,e){t.preventDefault();let s="moveX";t.target.className=="timeline-resizer"&&(s="moveW"),typeof e[s]!="number"&&this.$set(e,s,0),this.mouseBak={type:s,clientX:t.clientX,value:e[s]},this.mouseItem=e,this.dateMove=null},itemMouseMove(t){if(this.mouseItem!=null){t.preventDefault();const e=this.mouseBak.value+(t.clientX-this.mouseBak.clientX);if(this.mouseBak.type==="moveW"){const s=864e5/this.dateWidth,{start:a,end:o}=this.mouseItem.time;let i=e*s;if(o+i-a<=0)return}this.$set(this.mouseItem,this.mouseBak.type,e)}else if(this.dateMove!=null){t.preventDefault();let e=(this.dateMove.clientX-t.clientX)*5;this.dateMove.clientX=t.clientX,this.mouseWidth+=e,this.mouseScaleWidth+=e*(100/this.dateWidth)}},itemMouseUp(t){if(this.mouseItem!=null){const{start:e,end:s}=this.mouseItem.time;let a=!1,o=864e5/this.dateWidth;if(typeof this.mouseItem.moveX=="number"&&this.mouseItem.moveX!=0){let i=this.mouseItem.moveX*o;this.$set(this.mouseItem.time,"start",e+i),this.$set(this.mouseItem.time,"end",s+i),this.$set(this.mouseItem,"moveX",0),a=!0}if(typeof this.mouseItem.moveW=="number"&&this.mouseItem.moveW!=0){let i=this.mouseItem.moveW*o;this.$set(this.mouseItem.time,"end",s+i),this.$set(this.mouseItem,"moveW",0),a=!0}a?this.$emit("on-change",this.mouseItem):t.target.className=="timeline-title"&&this.clickItem(this.mouseItem),this.mouseItem=null}else this.dateMove!=null&&(this.dateMove=null)},scrollPosition(t){let e=new Date,s=new Date(e.getFullYear(),e.getMonth(),e.getDate(),0,0,0),a=864e5/this.dateWidth,o=(this.lists[t].time.start-s)/a-this.dateWidth-this.mouseWidth;this.mouseWidth+=o,this.mouseScaleWidth+=o*(100/this.dateWidth)},clickItem(t){this.$emit("on-click",t)}}},j={};var It=d(Tt,Lt,jt,!1,xt,null,null,null);function xt(t){for(let e in j)this[e]=j[e]}var St=function(){return It.exports}(),At=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"project-gstc-gantt"},[s("GanttView",{attrs:{lists:t.lists,menuWidth:t.menuWidth,itemWidth:80},on:{"on-change":t.onChange,"on-click":t.onClick}}),s("Dropdown",{staticClass:"project-gstc-dropdown-filtr",style:t.dropStyle,attrs:{trigger:"click"},on:{"on-click":t.onSwitchColumn}},[s("Icon",{staticClass:"project-gstc-dropdown-icon",class:{filtr:t.filtrProjectId>0},attrs:{type:"md-funnel"}}),s("DropdownMenu",{attrs:{slot:"list"},slot:"list"},[s("DropdownItem",{class:{"dropdown-active":t.filtrProjectId==0},attrs:{name:0}},[t._v(t._s(t.$L("\u5168\u90E8")))]),t._l(t.projectColumn,function(a,o){return s("DropdownItem",{key:o,class:{"dropdown-active":t.filtrProjectId==a.id},attrs:{name:a.id}},[t._v(" "+t._s(a.name)+" "),a.tasks?s("span",[t._v("("+t._s(t.filtrLength(a.tasks))+")")]):t._e()])})],2)],1),s("div",{staticClass:"project-gstc-edit",class:{info:t.editShowInfo,visible:t.editData&&t.editData.length>0}},[s("div",{staticClass:"project-gstc-edit-info"},[s("Table",{attrs:{size:"small","max-height":"600",columns:t.editColumns,data:t.editData}}),s("div",{staticClass:"project-gstc-edit-btns"},[s("Button",{attrs:{loading:t.editLoad>0,size:"small",type:"text"},on:{click:function(a){return t.editSubmit(!1)}}},[t._v(t._s(t.$L("\u53D6\u6D88")))]),s("Button",{attrs:{loading:t.editLoad>0,size:"small",type:"primary"},on:{click:function(a){return t.editSubmit(!0)}}},[t._v(t._s(t.$L("\u4FDD\u5B58")))]),s("Icon",{staticClass:"zoom",attrs:{type:"md-arrow-dropright"},on:{click:function(a){t.editShowInfo=!1}}})],1)],1),s("div",{staticClass:"project-gstc-edit-small"},[s("div",{staticClass:"project-gstc-edit-text",on:{click:function(a){t.editShowInfo=!0}}},[t._v(t._s(t.$L("\u672A\u4FDD\u5B58\u8BA1\u5212\u65F6\u95F4"))+": "),t.editData?s("span",[t._v(t._s(t.editData.length))]):t._e()]),s("Button",{attrs:{loading:t.editLoad>0,size:"small",type:"text"},on:{click:function(a){return t.editSubmit(!1)}}},[t._v(t._s(t.$L("\u53D6\u6D88")))]),s("Button",{attrs:{loading:t.editLoad>0,size:"small",type:"primary"},on:{click:function(a){return t.editSubmit(!0)}}},[t._v(t._s(t.$L("\u4FDD\u5B58")))])],1)])],1)},Pt=[];const Et={name:"ProjectGantt",components:{GanttView:St},props:{projectColumn:{default:[]},flowInfo:{default:{}}},data(){return{lists:[],filtrProjectId:0,editColumns:[{title:this.$L("\u4EFB\u52A1\u540D\u79F0"),key:"label",minWidth:150,ellipsis:!0},{title:this.$L("\u539F\u8BA1\u5212\u65F6\u95F4"),minWidth:135,align:"center",render:(t,{row:e})=>e.notime===!0?t("span","-"):t("div",{style:{}},[t("div",$A.formatDate("Y-m-d H:i",Math.round(e.baktime.start/1e3))),t("div",$A.formatDate("Y-m-d H:i",Math.round(e.baktime.end/1e3)))])},{title:this.$L("\u65B0\u8BA1\u5212\u65F6\u95F4"),minWidth:135,align:"center",render:(t,{row:e})=>t("div",{style:{}},[t("div",$A.formatDate("Y-m-d H:i",Math.round(e.newTime.start/1e3))),t("div",$A.formatDate("Y-m-d H:i",Math.round(e.newTime.end/1e3)))])}],editData:[],editLoad:0,editShowInfo:!1}},mounted(){this.initData()},computed:{...h(["taskPriority"]),...g(["projectData"]),menuWidth(){return this.windowWidth<1440?180:260},dropStyle(){return this.windowWidth<1440?{left:"142px"}:{}},completedTask(){return this.projectData.cacheParameter.completedTask}},watch:{projectColumn:{handler(){this.initData()},deep:!0},flowInfo:{handler(){this.initData()},deep:!0},completedTask(){this.initData()}},methods:{initData(){this.lists=[],this.projectColumn&&this.projectColumn.some(this.checkAdd)},flowTask(t){return $A.leftExists(this.flowInfo.value,"user:")&&!t.task_user.find(({userid:e,owner:s})=>e===this.flowInfo.userid&&s)?!0:this.flowInfo.value>0&&t.flow_item_id!==this.flowInfo.value},filtrLength(t){return t.filter(e=>!(e.complete_at&&!this.completedTask||this.flowTask(e))).length},checkAdd(t){this.filtrProjectId>0&&t.id!=this.filtrProjectId||t.tasks&&t.tasks.some(e=>{let s=!e.start_at||!e.end_at,a=this.getTimeObj(e),o=a.start,i=a.end;if(e.complete_at&&!this.completedTask||this.flowTask(e))return!1;let r="#058ce4";this.taskPriority.some(u=>{if(u.priority===e.p_level)return r=u.color,!0});let n={start:o,end:i},l=$A.cloneJSON(n),c=this.editData.find(({id:u})=>u==e.id);c&&(n=$A.cloneJSON(c.newTime)),this.lists.push({id:e.id,label:e.name,complete:e.complete_at,overdue:e.overdue,time:n,notime:s,baktime:l,style:{background:r}})})},onChange(t){const{time:e,baktime:s}=t;if(Math.abs(s.end-e.end)>1e3||Math.abs(s.start-e.start)>1e3){let a=this.editData.find(({id:o})=>o==t.id);a?a.newTime=e:this.editData.push({id:t.id,label:t.label,notime:t.notime,baktime:t.baktime,newTime:e})}},onClick(t){this.$store.dispatch("openTask",t)},editSubmit(t){this.editData&&this.editData.forEach(e=>{let s=this.lists.find(({id:a})=>a==e.id);if(t){this.editLoad++;let a=$A.formatDate("Y-m-d H:i",Math.round(e.newTime.start/1e3)),o=$A.formatDate("Y-m-d H:i",Math.round(e.newTime.end/1e3)),i={task_id:e.id,times:[a,o]};this.$store.dispatch("taskUpdate",i).then(({msg:r})=>{this.editLoad--,this.editLoad===0&&$A.messageSuccess(r),s&&this.$set(s,"baktime",$A.cloneJSON(s.time))}).catch(({msg:r})=>{this.editLoad--,this.editLoad===0&&$A.modalError(r),s&&this.$set(s,"time",$A.cloneJSON(s.baktime))})}else s&&this.$set(s,"time",$A.cloneJSON(s.baktime))}),this.editData=[]},getTimeObj(t){let e=$A.Time(t.start_at)||$A.Time(t.created_at),s=$A.Time(t.end_at)||$A.Time(t.created_at)+86400;return s==e&&(s=Math.round(new Date($A.formatDate("Y-m-d 23:59:59",s)).getTime()/1e3)),s=Math.max(s,e+60),e*=1e3,s*=1e3,{start:e,end:s}},onSwitchColumn(t){this.filtrProjectId=$A.runNum(t),this.initData()}}},T={};var Mt=d(Et,At,Pt,!1,Ft,null,null,null);function Ft(t){for(let e in T)this[e]=T[e]}var Wt=function(){return Mt.exports}(),Nt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"markdown-preview-nostyle",domProps:{innerHTML:t._s(t.html)}})},Ot=[];const zt={name:"markdown-preview-nostyle",props:{initialValue:{type:String,default:""}},data(){return{html:""}},mounted(){this.translateMarkdown()},methods:{translateMarkdown(){this.html=z(this.initialValue,{sanitize:!1}).replace(/href="/gi,'target="_blank" href="')}},watch:{initialValue(){this.translateMarkdown()}}},I={};var Rt=d(zt,Nt,Ot,!1,Ut,null,null,null);function Ut(t){for(let e in I)this[e]=I[e]}var Bt=function(){return Rt.exports}(),Vt=function(){var t=this,e=this,s=e.$createElement,a=e._self._c||s;return a("div",{staticClass:"project-panel",class:[e.tabTypeActive]},[a("PageTitle",{attrs:{title:e.projectData.name}}),a("div",{staticClass:"project-titbox"},[a("div",{staticClass:"project-title"},[a("div",{staticClass:"project-back",on:{click:e.onBack}},[a("i",{staticClass:"taskfont"},[e._v("\uE676")])]),a("h1",{on:{click:e.showName}},[e._v(e._s(e.projectData.name))]),e.loading?a("div",{staticClass:"project-load"},[a("Loading")],1):e._e()]),a("ul",{staticClass:"project-icons"},[a("li",{staticClass:"project-avatar",class:{"cursor-default":e.projectData.owner_userid!==e.userId},on:{click:function(o){return e.projectDropdown("user")}}},[a("ul",[a("li",[a("UserAvatarTip",{attrs:{userid:e.projectData.owner_userid,size:36,borderWitdh:2,openDelay:0}},[a("p",[e._v(e._s(e.$L("\u9879\u76EE\u8D1F\u8D23\u4EBA")))])]),(e.windowWidth<=980||e.projectData.cacheParameter.chat)&&e.projectUser.length>0?a("Badge",{attrs:{type:"normal","overflow-count":999,count:e.projectData.project_user.length}}):e._e()],1),e._l(e.projectUser,function(o){return!(e.windowWidth<=980||e.projectData.cacheParameter.chat)&&e.projectUser.length>0?[o.userid===-1?a("li",{staticClass:"more"},[a("ETooltip",{attrs:{disabled:e.$isEEUiApp||e.windowTouch,content:e.$L("\u5171"+e.projectData.project_user.length+"\u4E2A\u6210\u5458")}},[a("Icon",{attrs:{type:"ios-more"}})],1)],1):a("li",[a("UserAvatarTip",{attrs:{userid:o.userid,size:36,borderWitdh:2,openDelay:0}})],1)]:e._e()})],2)]),a("li",{staticClass:"project-icon",on:{click:function(o){return e.addTaskOpen(0)}}},[a("ETooltip",{attrs:{disabled:e.$isEEUiApp||e.windowTouch,content:e.$L("\u6DFB\u52A0\u4EFB\u52A1")}},[a("Icon",{staticClass:"menu-icon",attrs:{type:"md-add"}})],1)],1),a("li",{class:["project-icon",e.searchText!=""?"active":""]},[a("Tooltip",{attrs:{always:e.searchText!="",theme:"light",rawIndex:10},on:{"on-popper-show":e.searchFocus}},[a("Icon",{staticClass:"menu-icon",attrs:{type:"ios-search"},on:{click:e.searchFocus}}),a("div",{attrs:{slot:"content"},slot:"content"},[a("Input",{ref:"searchInput",staticClass:"search-input",attrs:{placeholder:e.$L("ID\u3001\u540D\u79F0\u3001\u63CF\u8FF0..."),clearable:""},model:{value:e.searchText,callback:function(o){e.searchText=o},expression:"searchText"}})],1)],1)],1),a("li",{class:["project-icon",e.windowLandscape&&e.projectData.cacheParameter.chat?"active":""],on:{click:function(o){return e.toggleParameter("chat")}}},[a("Icon",{staticClass:"menu-icon",attrs:{type:"ios-chatbubbles"}}),a("Badge",{staticClass:"menu-badge",attrs:{"overflow-count":999,count:e.msgUnread}})],1),a("li",{staticClass:"project-icon"},[a("EDropdown",{attrs:{trigger:"click",transfer:""},on:{command:e.projectDropdown}},[a("Icon",{staticClass:"menu-icon",attrs:{type:"ios-more"}}),e.projectData.owner_userid===e.userId?a("EDropdownMenu",{attrs:{slot:"dropdown"},slot:"dropdown"},[a("EDropdownItem",{attrs:{command:"setting"}},[e._v(e._s(e.$L("\u9879\u76EE\u8BBE\u7F6E")))]),a("EDropdownItem",{attrs:{command:"permissions"}},[e._v(e._s(e.$L("\u6743\u9650\u8BBE\u7F6E")))]),a("EDropdownItem",{attrs:{command:"workflow"}},[e._v(e._s(e.$L("\u5DE5\u4F5C\u6D41\u8BBE\u7F6E")))]),a("EDropdownItem",{attrs:{command:"user",divided:""}},[e._v(e._s(e.$L("\u6210\u5458\u7BA1\u7406")))]),a("EDropdownItem",{attrs:{command:"invite"}},[e._v(e._s(e.$L("\u9080\u8BF7\u94FE\u63A5")))]),a("EDropdownItem",{attrs:{command:"log",divided:""}},[e._v(e._s(e.$L("\u9879\u76EE\u52A8\u6001")))]),a("EDropdownItem",{attrs:{command:"archived_task"}},[e._v(e._s(e.$L("\u5DF2\u5F52\u6863\u4EFB\u52A1")))]),a("EDropdownItem",{attrs:{command:"deleted_task"}},[e._v(e._s(e.$L("\u5DF2\u5220\u9664\u4EFB\u52A1")))]),a("EDropdownItem",{attrs:{command:"transfer",divided:""}},[e._v(e._s(e.$L("\u79FB\u4EA4\u9879\u76EE")))]),a("EDropdownItem",{attrs:{command:"archived"}},[e._v(e._s(e.$L("\u5F52\u6863\u9879\u76EE")))]),a("EDropdownItem",{staticStyle:{color:"#f40"},attrs:{command:"delete"}},[e._v(e._s(e.$L("\u5220\u9664\u9879\u76EE")))])],1):a("EDropdownMenu",{attrs:{slot:"dropdown"},slot:"dropdown"},[a("EDropdownItem",{attrs:{command:"log"}},[e._v(e._s(e.$L("\u9879\u76EE\u52A8\u6001")))]),a("EDropdownItem",{attrs:{command:"archived_task"}},[e._v(e._s(e.$L("\u5DF2\u5F52\u6863\u4EFB\u52A1")))]),a("EDropdownItem",{attrs:{command:"deleted_task"}},[e._v(e._s(e.$L("\u5DF2\u5220\u9664\u4EFB\u52A1")))]),a("EDropdownItem",{staticStyle:{color:"#f40"},attrs:{command:"exit",divided:""}},[e._v(e._s(e.$L("\u9000\u51FA\u9879\u76EE")))])],1)],1)],1)])]),a("div",{staticClass:"project-subbox"},[a("div",{staticClass:"project-subtitle",on:{click:e.showDesc}},[a("MarkdownPreviewNostyle",{ref:"descPreview",attrs:{initialValue:e.projectData.desc}})],1),a("div",{staticClass:"project-switch"},[e.completedCount>0?a("div",{staticClass:"project-checkbox"},[a("Checkbox",{attrs:{value:e.projectData.cacheParameter.completedTask},on:{"on-change":e.toggleCompleted}},[e._v(e._s(e.$L("\u663E\u793A\u5DF2\u5B8C\u6210")))])],1):e._e(),a("div",{staticClass:"project-select"},[a("Cascader",{ref:"flow",attrs:{data:e.flowData,"transfer-class-name":"project-panel-flow-cascader",transfer:""},on:{"on-change":e.flowChange}},[a("span",{class:`project-flow ${e.flowInfo.status||""}`},[e._v(e._s(e.flowTitle))])])],1),a("div",{staticClass:"project-switch-button"},[a("div",{staticClass:"slider",style:e.tabTypeStyle}),a("div",{class:{active:e.tabTypeActive==="column"},on:{click:function(o){return e.tabTypeChange("column")}}},[a("i",{staticClass:"taskfont"},[e._v("\uE60C")])]),a("div",{class:{active:e.tabTypeActive==="table"},on:{click:function(o){return e.tabTypeChange("table")}}},[a("i",{staticClass:"taskfont"},[e._v("\uE66A")])]),a("div",{class:{active:e.tabTypeActive==="gantt"},on:{click:function(o){return e.tabTypeChange("gantt")}}},[a("i",{staticClass:"taskfont"},[e._v("\uE797")])])])])]),e.tabTypeActive==="column"?a("div",{staticClass:"project-column"},[a("Draggable",{staticClass:"column-list",attrs:{list:e.columnList,animation:150,disabled:e.sortDisabled||e.$isEEUiApp||e.windowTouch,tag:"ul",draggable:".column-item"},on:{sort:function(o){return e.sortUpdate(!0)}}},[e._l(e.columnList,function(o){return a("li",{staticClass:"column-item"},[a("div",{class:["column-head",o.color?"custom-color":""],style:o.color?{backgroundColor:o.color}:{}},[a("div",{staticClass:"column-head-title"},[a("AutoTip",[e._v(e._s(o.name))]),a("em",[e._v("("+e._s(e.panelTask(o.tasks).length)+")")])],1),a("div",{staticClass:"column-head-icon"},[e.columnLoad[o.id]===!0?a("div",{staticClass:"loading"},[a("Loading")],1):a("EDropdown",{attrs:{trigger:"click",size:"small"},on:{command:function(i){return e.dropColumn(o,i)}}},[a("Icon",{attrs:{type:"ios-more"}}),a("EDropdownMenu",{staticClass:"project-panel-more-dropdown-menu",attrs:{slot:"dropdown"},slot:"dropdown"},[a("EDropdownItem",{attrs:{command:"title"}},[a("div",{staticClass:"item"},[a("Icon",{attrs:{type:"md-create"}}),e._v(e._s(e.$L("\u4FEE\u6539"))+" ")],1)]),a("EDropdownItem",{attrs:{command:"remove"}},[a("div",{staticClass:"item"},[a("Icon",{attrs:{type:"md-trash"}}),e._v(e._s(e.$L("\u5220\u9664"))+" ")],1)]),e._l(e.$store.state.columnColorList,function(i,r){return a("EDropdownItem",{key:r,attrs:{divided:r==0,command:i}},[a("div",{staticClass:"item"},[a("i",{staticClass:"taskfont",style:{color:i.color||"#ddd"},domProps:{innerHTML:e._s(i.color==o.color?"&#xe61d;":"&#xe61c;")}}),e._v(e._s(e.$L(i.name))+" ")])])})],2)],1),a("Icon",{staticClass:"last",attrs:{type:"md-add"},on:{click:function(i){return e.addTopShow(o.id,!0)}}})],1)]),a("Scrollbar",{staticClass:"column-task"},[e.columnTopShow[o.id]?a("div",{staticClass:"task-item additem"},[a("TaskAddSimple",{attrs:{"column-id":o.id,"project-id":e.projectId,"add-top":!0,"auto-active":""},on:{"on-close":function(i){return e.addTopShow(o.id,!1)},"on-priority":e.addTaskOpen}})],1):e._e(),a("Draggable",{staticClass:"task-list",attrs:{list:o.tasks,animation:150,disabled:e.sortDisabled||e.$isEEUiApp||e.windowTouch,draggable:".task-draggable",filter:".complete",group:"task"},on:{sort:e.sortUpdate,remove:e.sortUpdate}},[e._l(o.tasks,function(i){return a("div",{class:["task-item task-draggable",i.complete_at?"complete":"",e.taskIsHidden(i)?"hidden":""],style:i.color?{backgroundColor:i.color}:{},on:{click:function(r){return e.openTask(i)}}},[a("div",{class:["task-head",i.desc?"has-desc":""]},[a("div",{staticClass:"task-title"},[i.flow_item_name?a("span",{class:i.flow_item_status,on:{click:function(r){return r.stopPropagation(),e.openMenu(r,i)}}},[e._v(e._s(i.flow_item_name))]):e._e(),a("pre",[e._v(e._s(i.name))])]),a("div",{staticClass:"task-menu",on:{click:function(r){r.stopPropagation()}}},[a("TaskMenu",{ref:`taskMenu_${i.id}`,refInFor:!0,attrs:{task:i,icon:"ios-more"}})],1)]),i.complete_at?e._e():[i.desc?a("div",{staticClass:"task-desc"},[a("pre",{domProps:{innerHTML:e._s(i.desc)}})]):e._e(),i.task_tag.length>0?a("div",{staticClass:"task-tags"},e._l(i.task_tag,function(r,n){return a("Tag",{key:n,attrs:{color:r.color}},[e._v(e._s(r.name))])}),1):e._e(),a("div",{staticClass:"task-users"},[a("ul",[e._l(e.ownerUser(i.task_user),function(r,n){return a("li",{key:n},[a("UserAvatar",{attrs:{userid:r.userid,size:"32",borderWitdh:2,borderColor:i.color}})],1)}),e.ownerUser(i.task_user).length===0?a("li",{staticClass:"no-owner"},[a("Button",{attrs:{type:"primary",size:"small",ghost:""},on:{click:function(r){return r.stopPropagation(),e.openTask(i,!0)}}},[e._v(e._s(e.$L("\u9886\u53D6\u4EFB\u52A1")))])],1):e._e()],2),i.file_num>0?a("div",{staticClass:"task-icon"},[e._v(e._s(i.file_num)),a("Icon",{attrs:{type:"ios-link-outline"}})],1):e._e(),i.msg_num>0?a("div",{staticClass:"task-icon"},[e._v(e._s(i.msg_num)),a("Icon",{attrs:{type:"ios-chatbubbles-outline"}})],1):e._e()]),a("div",{staticClass:"task-progress"},[i.sub_num>0?a("div",{staticClass:"task-sub-num"},[e._v(e._s(i.sub_complete)+"/"+e._s(i.sub_num))]):e._e(),a("Progress",{attrs:{percent:i.percent,"stroke-width":6}}),i.end_at?a("ETooltip",{class:["task-time",i.today?"today":"",i.overdue?"overdue":""],attrs:{disabled:e.$isEEUiApp||e.windowTouch,"open-delay":600,content:i.end_at}},[i.complete_at?e._e():a("div",[a("i",{staticClass:"taskfont"},[e._v("\uE71D")]),e._v(e._s(e.expiresFormat(i.end_at)))])]):e._e()],1),i.p_name?a("em",{staticClass:"priority-color",style:{backgroundColor:i.p_color}}):e._e()]],2)}),a("div",{staticClass:"task-item additem"},[a("TaskAddSimple",{attrs:{"column-id":o.id,"project-id":e.projectId},on:{"on-priority":e.addTaskOpen}})],1)],2)],1)],1)}),a("li",{class:["add-column",e.addColumnShow?"show-input":""]},[a("div",{staticClass:"add-column-text",on:{click:e.addColumnOpen}},[a("Icon",{attrs:{type:"md-add"}}),e._v(e._s(e.$L("\u6DFB\u52A0\u5217\u8868"))+" ")],1),a("div",{staticClass:"add-column-input"},[a("Input",{ref:"addColumnName",attrs:{placeholder:e.$L("\u5217\u8868\u540D\u79F0\uFF0C\u56DE\u8F66\u521B\u5EFA"),clearable:""},on:{"on-blur":e.addColumnBlur,"on-enter":e.addColumnSubmit,"on-clear":function(o){e.addColumnShow=!1}},model:{value:e.addColumnName,callback:function(o){e.addColumnName=o},expression:"addColumnName"}})],1)])],2)],1):e.tabTypeActive==="table"?a("Scrollbar",{staticClass:"project-table",attrs:{"enable-x":""}},[a("div",{staticClass:"project-table-head"},[a("Row",{staticClass:"task-row"},[a("Col",{attrs:{span:"12"}},[a("span",{staticClass:"head-title"},[e._v("# "+e._s(e.$L("\u4EFB\u52A1\u540D\u79F0")))])]),a("Col",{attrs:{span:"3"}},[a("span",{staticClass:"head-title"},[e._v(e._s(e.$L("\u5217\u8868")))])]),a("Col",{attrs:{span:"3"}},[a("div",{staticClass:"sort",on:{click:function(o){return e.onSort("level")}}},[a("span",{staticClass:"head-title"},[e._v(e._s(e.$L("\u4F18\u5148\u7EA7")))]),a("div",{staticClass:"task-sort"},[a("Icon",{class:{on:e.sortField=="level"&&e.sortType=="asc"},attrs:{type:"md-arrow-dropup"}}),a("Icon",{class:{on:e.sortField=="level"&&e.sortType=="desc"},attrs:{type:"md-arrow-dropdown"}})],1)])]),a("Col",{attrs:{span:"3"}},[e._v(e._s(e.$L("\u8D1F\u8D23\u4EBA")))]),a("Col",{attrs:{span:"3"}},[a("div",{staticClass:"sort",on:{click:function(o){return e.onSort("end_at")}}},[a("span",{staticClass:"head-title"},[e._v(e._s(e.$L("\u5230\u671F\u65F6\u95F4")))]),a("div",{staticClass:"task-sort"},[a("Icon",{class:{on:e.sortField=="end_at"&&e.sortType=="asc"},attrs:{type:"md-arrow-dropup"}}),a("Icon",{class:{on:e.sortField=="end_at"&&e.sortType=="desc"},attrs:{type:"md-arrow-dropdown"}})],1)])])],1)],1),a("div",{class:["project-table-body",e.projectData.cacheParameter.showMy?"":"project-table-hide"]},[a("Row",{staticClass:"task-row"},[a("Col",{staticClass:"row-title",attrs:{span:"12"}},[a("i",{staticClass:"taskfont",on:{click:function(o){return e.toggleParameter("showMy")}}},[e._v("\uE689")]),a("div",{staticClass:"row-h1"},[e._v(e._s(e.$L("\u6211\u7684\u4EFB\u52A1")))]),a("div",{staticClass:"row-num"},[e._v("("+e._s(e.myList.length)+")")])]),a("Col",{attrs:{span:"3"}}),a("Col",{attrs:{span:"3"}}),a("Col",{attrs:{span:"3"}}),a("Col",{attrs:{span:"3"}})],1),e.projectData.cacheParameter.showMy?a("TaskRow",{attrs:{list:e.transforTasks(e.myList),"open-key":"my","fast-add-task":""},on:{"on-priority":e.addTaskOpen}}):e._e()],1),e.helpList.length?a("div",{class:["project-table-body",e.projectData.cacheParameter.showHelp?"":"project-table-hide"]},[a("Row",{staticClass:"task-row"},[a("Col",{staticClass:"row-title",attrs:{span:"12"}},[a("i",{staticClass:"taskfont",on:{click:function(o){return e.toggleParameter("showHelp")}}},[e._v("\uE689")]),a("div",{staticClass:"row-h1"},[e._v(e._s(e.$L("\u534F\u52A9\u7684\u4EFB\u52A1")))]),a("div",{staticClass:"row-num"},[e._v("("+e._s(e.helpList.length)+")")])]),a("Col",{attrs:{span:"3"}}),a("Col",{attrs:{span:"3"}}),a("Col",{attrs:{span:"3"}}),a("Col",{attrs:{span:"3"}})],1),e.projectData.cacheParameter.showHelp?a("TaskRow",{attrs:{list:e.helpList,"open-key":"help"},on:{"on-priority":e.addTaskOpen}}):e._e()],1):e._e(),e.projectData.task_num>0?a("div",{class:["project-table-body",e.projectData.cacheParameter.showUndone?"":"project-table-hide"]},[a("Row",{staticClass:"task-row"},[a("Col",{staticClass:"row-title",attrs:{span:"12"}},[a("i",{staticClass:"taskfont",on:{click:function(o){return e.toggleParameter("showUndone")}}},[e._v("\uE689")]),a("div",{staticClass:"row-h1"},[e._v(e._s(e.$L("\u672A\u5B8C\u6210\u4EFB\u52A1")))]),a("div",{staticClass:"row-num"},[e._v("("+e._s(e.unList.length)+")")])]),a("Col",{attrs:{span:"3"}}),a("Col",{attrs:{span:"3"}}),a("Col",{attrs:{span:"3"}}),a("Col",{attrs:{span:"3"}})],1),e.projectData.cacheParameter.showUndone?a("TaskRow",{attrs:{list:e.unList,"open-key":"undone"},on:{"on-priority":e.addTaskOpen}}):e._e()],1):e._e(),e.projectData.task_num>0?a("div",{class:["project-table-body",e.projectData.cacheParameter.showCompleted?"":"project-table-hide"]},[a("Row",{staticClass:"task-row"},[a("Col",{staticClass:"row-title",attrs:{span:"12"}},[a("i",{staticClass:"taskfont",on:{click:function(o){return e.toggleParameter("showCompleted")}}},[e._v("\uE689")]),a("div",{staticClass:"row-h1"},[e._v(e._s(e.$L("\u5DF2\u5B8C\u6210\u4EFB\u52A1")))]),a("div",{staticClass:"row-num"},[e._v("("+e._s(e.completedList.length)+")")])]),a("Col",{attrs:{span:"3"}}),a("Col",{attrs:{span:"3"}}),a("Col",{attrs:{span:"3"}}),a("Col",{attrs:{span:"3"}},[e._v(e._s(e.projectData.task_num>0&&e.projectData.cacheParameter.showCompleted?e.$L("\u5B8C\u6210\u65F6\u95F4"):""))])],1),e.projectData.cacheParameter.showCompleted?a("TaskRow",{attrs:{list:e.completedList,"open-key":"completed",showCompleteAt:""},on:{"on-priority":e.addTaskOpen}}):e._e()],1):e._e()]):e.tabTypeActive==="gantt"?a("div",{staticClass:"project-gantt"},[a("ProjectGantt",{attrs:{projectColumn:e.columnList,flowInfo:e.flowInfo}})],1):e._e(),a("Modal",{attrs:{title:e.$L("\u9879\u76EE\u8BBE\u7F6E"),"mask-closable":!1},model:{value:e.settingShow,callback:function(o){e.settingShow=o},expression:"settingShow"}},[a("Form",{attrs:{model:e.settingData,"label-width":"auto"},nativeOn:{submit:function(o){o.preventDefault()}}},[a("FormItem",{attrs:{prop:"name",label:e.$L("\u9879\u76EE\u540D\u79F0")}},[a("Input",{ref:"projectName",attrs:{type:"text",maxlength:32,placeholder:e.$L("\u5FC5\u586B")},model:{value:e.settingData.name,callback:function(o){e.$set(e.settingData,"name",o)},expression:"settingData.name"}})],1),a("FormItem",{attrs:{prop:"desc",label:e.$L("\u9879\u76EE\u4ECB\u7ECD")}},[a("Input",{ref:"projectDesc",attrs:{type:"textarea",autosize:{minRows:3,maxRows:5},maxlength:255,placeholder:`${e.$L("\u9009\u586B")} (${e.$L("\u652F\u6301 Markdown \u683C\u5F0F")})`},model:{value:e.settingData.desc,callback:function(o){e.$set(e.settingData,"desc",o)},expression:"settingData.desc"}})],1)],1),a("div",{staticClass:"adaption",attrs:{slot:"footer"},slot:"footer"},[a("Button",{attrs:{type:"default"},on:{click:function(o){e.settingShow=!1}}},[e._v(e._s(e.$L("\u53D6\u6D88")))]),a("Button",{attrs:{type:"primary",loading:e.settingLoad>0},on:{click:e.onSetting}},[e._v(e._s(e.$L("\u4FEE\u6539")))])],1)],1),a("DrawerOverlay",{attrs:{placement:"right",size:650},model:{value:e.permissionShow,callback:function(o){e.permissionShow=o},expression:"permissionShow"}},[e.permissionShow?a("ProjectPermission",{ref:"permission",attrs:{"project-id":e.projectId},on:{close:function(){t.permissionShow=!1}}}):e._e()],1),a("Modal",{attrs:{title:e.$L("\u6210\u5458\u7BA1\u7406"),"mask-closable":!1},model:{value:e.userShow,callback:function(o){e.userShow=o},expression:"userShow"}},[a("Form",{attrs:{model:e.userData,"label-width":"auto"},nativeOn:{submit:function(o){o.preventDefault()}}},[a("FormItem",{attrs:{prop:"userids",label:e.$L("\u9879\u76EE\u6210\u5458")}},[a("UserSelect",{attrs:{uncancelable:e.userData.uncancelable,"multiple-max":100,title:e.$L("\u9009\u62E9\u9879\u76EE\u6210\u5458")},model:{value:e.userData.userids,callback:function(o){e.$set(e.userData,"userids",o)},expression:"userData.userids"}})],1)],1),a("div",{staticClass:"adaption",attrs:{slot:"footer"},slot:"footer"},[a("Button",{attrs:{type:"default"},on:{click:function(o){e.userShow=!1}}},[e._v(e._s(e.$L("\u53D6\u6D88")))]),e.userWaitRemove.length>0?a("Poptip",{staticStyle:{"margin-left":"8px"},attrs:{confirm:"",placement:"bottom","ok-text":e.$L("\u786E\u5B9A"),"cancel-text":e.$L("\u53D6\u6D88"),transfer:""},on:{"on-ok":e.onUser}},[a("div",{attrs:{slot:"title"},slot:"title"},[a("p",[a("strong",[e._v(e._s(e.$L("\u79FB\u9664\u6210\u5458\u8D1F\u8D23\u7684\u4EFB\u52A1\u5C06\u53D8\u6210\u65E0\u8D1F\u8D23\u4EBA\uFF0C")))])]),a("p",[e._v(e._s(e.$L("\u6CE8\u610F\u6B64\u64CD\u4F5C\u4E0D\u53EF\u9006\uFF01")))]),a("ul",{staticClass:"project-panel-wait-remove"},[a("li",[e._v(e._s(e.$L("\u5373\u5C06\u79FB\u9664"))+"\uFF1A")]),e._l(e.userWaitRemove,function(o){return a("li",{key:o},[a("UserAvatar",{attrs:{userid:o,size:20,showName:""}})],1)})],2)]),a("Button",{attrs:{type:"primary",loading:e.userLoad>0}},[e._v(e._s(e.$L("\u4FDD\u5B58")))])],1):a("Button",{attrs:{type:"primary",loading:e.userLoad>0},on:{click:e.onUser}},[e._v(e._s(e.$L("\u4FDD\u5B58")))])],1)],1),a("Modal",{attrs:{title:e.$L("\u9080\u8BF7\u94FE\u63A5"),"mask-closable":!1},model:{value:e.inviteShow,callback:function(o){e.inviteShow=o},expression:"inviteShow"}},[a("Form",{attrs:{model:e.inviteData,"label-width":"auto"},nativeOn:{submit:function(o){o.preventDefault()}}},[a("FormItem",{attrs:{label:e.$L("\u94FE\u63A5\u5730\u5740")}},[a("Input",{ref:"inviteInput",attrs:{type:"textarea",rows:3,readonly:""},on:{"on-focus":e.inviteFocus},model:{value:e.inviteData.url,callback:function(o){e.$set(e.inviteData,"url",o)},expression:"inviteData.url"}}),a("div",{staticClass:"form-tip"},[e._v(" "+e._s(e.$L("\u53EF\u901A\u8FC7\u6B64\u94FE\u63A5\u76F4\u63A5\u52A0\u5165\u9879\u76EE\u3002"))+" "),a("Poptip",{attrs:{confirm:"",placement:"bottom","ok-text":e.$L("\u786E\u5B9A"),"cancel-text":e.$L("\u53D6\u6D88"),transfer:""},on:{"on-ok":function(o){return e.inviteGet(!0)}}},[a("div",{attrs:{slot:"title"},slot:"title"},[a("p",[a("strong",[e._v(e._s(e.$L("\u6CE8\u610F\uFF1A\u5237\u65B0\u5C06\u5BFC\u81F4\u539F\u6765\u7684\u9080\u8BF7\u94FE\u63A5\u5931\u6548\uFF01")))])])]),a("a",{attrs:{href:"javascript:void(0)"}},[e._v(e._s(e.$L("\u5237\u65B0\u94FE\u63A5")))])])],1)],1)],1),a("div",{staticClass:"adaption",attrs:{slot:"footer"},slot:"footer"},[a("Button",{attrs:{type:"default"},on:{click:function(o){e.inviteShow=!1}}},[e._v(e._s(e.$L("\u53D6\u6D88")))]),a("Button",{attrs:{type:"primary",loading:e.inviteLoad>0},on:{click:e.inviteCopy}},[e._v(e._s(e.$L("\u590D\u5236")))])],1)],1),a("Modal",{attrs:{title:e.$L("\u79FB\u4EA4\u9879\u76EE"),"mask-closable":!1},model:{value:e.transferShow,callback:function(o){e.transferShow=o},expression:"transferShow"}},[a("Form",{attrs:{model:e.transferData,"label-width":"auto"},nativeOn:{submit:function(o){o.preventDefault()}}},[a("FormItem",{attrs:{prop:"owner_userid",label:e.$L("\u65B0\u9879\u76EE\u8D1F\u8D23\u4EBA")}},[a("UserSelect",{attrs:{"multiple-max":1,title:e.$L("\u9009\u62E9\u9879\u76EE\u8D1F\u8D23\u4EBA")},model:{value:e.transferData.owner_userid,callback:function(o){e.$set(e.transferData,"owner_userid",o)},expression:"transferData.owner_userid"}})],1)],1),a("div",{staticClass:"adaption",attrs:{slot:"footer"},slot:"footer"},[a("Button",{attrs:{type:"default"},on:{click:function(o){e.transferShow=!1}}},[e._v(e._s(e.$L("\u53D6\u6D88")))]),a("Button",{attrs:{type:"primary",loading:e.transferLoad>0},on:{click:e.onTransfer}},[e._v(e._s(e.$L("\u79FB\u4EA4")))])],1)],1),a("DrawerOverlay",{attrs:{placement:"right",beforeClose:e.workflowBeforeClose,size:1280},model:{value:e.workflowShow,callback:function(o){e.workflowShow=o},expression:"workflowShow"}},[e.workflowShow?a("ProjectWorkflow",{ref:"workflow",attrs:{"project-id":e.projectId}}):e._e()],1),a("DrawerOverlay",{attrs:{placement:"right",size:720},model:{value:e.logShow,callback:function(o){e.logShow=o},expression:"logShow"}},[e.logShow?a("ProjectLog",{attrs:{"project-id":e.projectId}}):e._e()],1),a("DrawerOverlay",{attrs:{placement:"right",size:1e3},model:{value:e.archivedTaskShow,callback:function(o){e.archivedTaskShow=o},expression:"archivedTaskShow"}},[e.archivedTaskShow?a("TaskArchived",{attrs:{"project-id":e.projectId}}):e._e()],1),a("DrawerOverlay",{attrs:{placement:"right",size:1e3},model:{value:e.deletedTaskShow,callback:function(o){e.deletedTaskShow=o},expression:"deletedTaskShow"}},[e.deletedTaskShow?a("TaskDeleted",{attrs:{"project-id":e.projectId}}):e._e()],1)],1)},Ht=[];const Kt={name:"ProjectPanel",components:{UserAvatarTip:U,UserSelect:W,MarkdownPreviewNostyle:Bt,TaskMenu:F,ProjectWorkflow:ht,ProjectPermission:kt,DrawerOverlay:R,ProjectLog:O,TaskArchived:nt,TaskRow:et,Draggable:E,TaskAddSimple:N,TaskPriority:M,TaskDeleted:Dt,ProjectGantt:Wt},data(){return{loading:!1,nowTime:$A.Time(),nowInterval:null,columnLoad:{},columnTopShow:{},sortField:"end_at",sortType:"desc",searchText:"",addColumnShow:!1,addColumnName:"",sortData:[],sortDisabled:!1,settingShow:!1,settingData:{},settingLoad:0,permissionShow:!1,permissionShowData:{},permissionShowLoad:0,userShow:!1,userData:{},userLoad:0,inviteShow:!1,inviteData:{},inviteLoad:0,transferShow:!1,transferData:{},transferLoad:0,workflowShow:!1,logShow:!1,archivedTaskShow:!1,deletedTaskShow:!1,flowInfo:{},flowList:[]}},mounted(){this.nowInterval=setInterval(()=>{this.nowTime=$A.Time()},1e3)},destroyed(){clearInterval(this.nowInterval)},computed:{...h(["cacheDialogs","projectId","projectLoad","cacheTasks","cacheColumns","taskCompleteTemps","cacheUserBasic"]),...g(["projectData","transforTasks"]),tabTypeActive(){return this.projectData.cacheParameter.menuType},tabTypeStyle(){const t={};switch(this.tabTypeActive){case"column":t.left="0";break;case"table":t.left="33.33%";break;case"gantt":t.left="66.66%";break;default:t.display="none"}return t},userWaitRemove(){const{userids:t,useridbak:e}=this.userData;if(!t)return[];let s=[];return e.some(a=>{t.includes(a)||s.push(a)}),s},msgUnread(){const{cacheDialogs:t,projectData:e}=this,s=t.find(({id:a})=>a===e.dialog_id);return $A.getDialogNum(s)},panelTask(){const{searchText:t,flowInfo:e}=this;return function(s){return this.projectData.cacheParameter.completedTask||(s=s.filter(({complete_at:a})=>!a)),$A.leftExists(e.value,"user:")?s=s.filter(({task_user:a})=>a.find(({userid:o,owner:i})=>o===e.userid&&i)):e.value>0?s=s.filter(({flow_item_id:a})=>a===e.value):e.value==-1&&(s=s.filter(({start_at:a})=>!a)),t&&(s=s.filter(({id:a,name:o,desc:i})=>a==t||$A.strExists(`${o} ${i}`,t))),s}},projectUser(){const{projectData:t,windowWidth:e}=this;if(!t.project_user)return[];let s=e>1200?8:3,a=t.project_user.filter(({userid:i})=>i!=t.owner_userid);if(a.length<=s)return a;let o=a.slice(0,s-1);return o.push({userid:-1}),o.push(a[a.length-1]),o},allTask(){const{cacheTasks:t,projectId:e}=this;return t.filter(s=>s.archived_at||!s.created_at?!1:s.project_id==e)},columnList(){const{projectId:t,cacheColumns:e,allTask:s}=this,a=e.filter(({project_id:o})=>o==t).sort((o,i)=>o.sort!=i.sort?o.sort-i.sort:o.id-i.id);return a.forEach(o=>{o.tasks=this.transforTasks(s.filter(i=>i.column_id==o.id)).sort((i,r)=>i.complete_at||r.complete_at?$A.Date(i.complete_at)-$A.Date(r.complete_at):i.sort!=r.sort?i.sort-r.sort:i.id-r.id)}),a},myList(){const{allTask:t,taskCompleteTemps:e,sortField:s,sortType:a}=this;let o=t.filter(i=>this.myFilter(i));if(e.length>0){let i=t.filter(r=>e.includes(r.id)&&this.myFilter(r,!1));i.length>0&&(o=$A.cloneJSON(o),o.push(...i))}return o.sort((i,r)=>{if(a=="asc"&&([i,r]=[r,i]),s=="level")return i.p_level-r.p_level;if(s=="end_at")return i.end_at==r.end_at?i.p_level-r.p_level:$A.Date(i.end_at||"2099-12-31 23:59:59")-$A.Date(r.end_at||"2099-12-31 23:59:59")})},helpList(){const{allTask:t,taskCompleteTemps:e,sortField:s,sortType:a}=this;let o=t.filter(i=>this.helpFilter(i));if(e.length>0){let i=t.filter(r=>e.includes(r.id)&&this.helpFilter(r,!1));i.length>0&&(o=$A.cloneJSON(o),o.push(...i))}return o.sort((i,r)=>{if(a=="asc"&&([i,r]=[r,i]),s=="level")return i.p_level-r.p_level;if(s=="end_at")return i.end_at==r.end_at?i.p_level-r.p_level:$A.Date(i.end_at||"2099-12-31 23:59:59")-$A.Date(r.end_at||"2099-12-31 23:59:59")})},unList(){const{allTask:t,searchText:e,sortField:s,sortType:a}=this;return t.filter(i=>i.parent_id>0||this.flowTask(i)||e&&i.id!=e&&!$A.strExists(i.name,e)&&!$A.strExists(i.desc,e)?!1:!i.complete_at).sort((i,r)=>{if(a=="asc"&&([i,r]=[r,i]),s=="level")return i.p_level-r.p_level;if(s=="end_at")return i.end_at==r.end_at?i.p_level-r.p_level:$A.Date(i.end_at||"2099-12-31 23:59:59")-$A.Date(r.end_at||"2099-12-31 23:59:59")})},completedList(){const{allTask:t,searchText:e}=this;return t.filter(a=>a.parent_id>0||this.flowTask(a)||e&&a.id!=e&&!$A.strExists(a.name,e)&&!$A.strExists(a.desc,e)?!1:a.complete_at).sort((a,o)=>{let i=$A.Date(a.complete_at);return $A.Date(o.complete_at)-i})},completedCount(){const{allTask:t}=this;return t.filter(e=>e.parent_id>0?!1:e.complete_at).length},flowTitle(){const{flowInfo:t,flowData:e,allTask:s}=this;if(t.value==-1)return t.label;if(t.value){const a=e.find(o=>o.value===t.value);return a?a.label:t.label}return`${this.$L("\u5168\u90E8")} (${s.length})`},flowData(){const{flowList:t,allTask:e,cacheUserBasic:s}=this,a=[{value:0,label:`${this.$L("\u5168\u90E8")} (${e.length})`,children:[]}];a.push({value:-1,label:`${this.$L("\u672A\u8BA1\u5212")} (${e.filter(({start_at:r,complete_at:n})=>!r&&!n).length})`,children:[]});const o=t.map(r=>({value:r.id,label:r.name,status:r.status,children:r.project_flow_item.map(n=>{const l=e.filter(({flow_item_id:c})=>c==n.id).length;return{value:n.id,label:`${n.name} (${l})`,status:n.status,class:n.status}})}));o.length===1?a.push(...o[0].children):o.length>0&&a.push(...o);const{project_user:i}=this.projectData;if($A.isArray(i)){let r=i.map((n,l)=>{const c=s.find(({userid:f})=>f===n.userid)||{},u=e.filter(({task_user:f,complete_at:v})=>!this.projectData.cacheParameter.completedTask&&v?!1:f.find(({userid:p,owner:m})=>p===n.userid&&m)).length;return{value:`user:${c.userid}`,label:`${c.nickname} (${u})`,userid:c.userid||0,length:u}}).filter(({userid:n,length:l})=>n>0&&l>0);r.length>0&&(r.sort((n,l)=>n.userid==this.userId?-1:1),r=r.map((n,l)=>(n.class=`user-${l}`,n)),a.push(...r))}return a}},watch:{projectData(){this.sortData=this.getSort()},projectLoad(t){this._loadTimeout&&clearTimeout(this._loadTimeout),t>0?this._loadTimeout=setTimeout(()=>{this.loading=!0},1e3):this.loading=!1},projectId:{handler(t){t>0&&this.getFlowData()},immediate:!0}},methods:{showName(){this.windowLandscape||$A.modalInfo({language:!1,title:this.$L("\u9879\u76EE\u540D\u79F0"),content:this.projectData.name})},showDesc(){this.windowLandscape||$A.modalInfo({language:!1,title:this.$L("\u9879\u76EE\u63CF\u8FF0"),content:this.$refs.descPreview.$el.innerHTML})},searchFocus(){this.$nextTick(()=>{this.$refs.searchInput.focus({cursor:"end"})})},getSort(){const t=[];return this.columnList.forEach(e=>{t.push({id:e.id,task:e.tasks.map(({id:s})=>s)})}),t},sortUpdate(t){const e=this.sortData,s=this.getSort();if(JSON.stringify(e)===JSON.stringify(s))return;this.sortData=s;const a={project_id:this.projectId,sort:this.sortData,only_column:t===!0?1:0};this.sortDisabled=!0,this.$store.dispatch("call",{url:"project/sort",data:a,method:"post"}).then(({msg:o})=>{$A.messageSuccess(o),this.sortDisabled=!1;let i,r=[];a.only_column?(i=-1,a.sort.forEach(n=>{i++,r.push({id:n.id,sort:i})}),this.$store.dispatch("saveColumn",r)):(a.sort.forEach(n=>{i=-1,r.push(...n.task.map(l=>(i++,r.push(...this.allTask.filter(c=>c.parent_id==l).map(({id:c})=>({id:c,sort:i,column_id:n.id}))),{id:l,sort:i,column_id:n.id})))}),this.$store.dispatch("saveTask",r))}).catch(({msg:o})=>{$A.modalError(o),this.sortDisabled=!1,this.$store.dispatch("getTaskForProject",this.projectId).catch(()=>{})})},addTopShow(t,e){this.$set(this.columnTopShow,t,e)},addTaskOpen(t){k.Store.set("addTask",t)},addColumnOpen(){this.addColumnShow=!0,this.$nextTick(()=>{this.$refs.addColumnName.focus()})},addColumnBlur(){this.addColumnName===""&&(this.addColumnShow=!1)},addColumnSubmit(){let t=this.addColumnName.trim();t!==""&&this.$store.dispatch("call",{url:"project/column/add",data:{project_id:this.projectId,name:t}}).then(({data:e,msg:s})=>{$A.messageSuccess(s),this.addColumnName="",this.$store.dispatch("saveColumn",e)}).catch(({msg:e})=>{$A.modalError(e)})},dropColumn(t,e){e==="title"?this.titleColumn(t):e==="remove"?this.removeColumn(t):e.name&&this.updateColumn(t,{color:e.color}).catch(s=>{$A.modalError(s)})},titleColumn(t){$A.modalInput({value:t.name,title:"\u4FEE\u6539\u5217\u8868",placeholder:"\u8F93\u5165\u5217\u8868\u540D\u79F0",onOk:e=>e?this.updateColumn(t,{name:e}):"\u5217\u8868\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A"})},updateColumn(t,e){return new Promise((s,a)=>{if(this.columnLoad[t.id]===!0){s();return}this.$set(this.columnLoad,t.id,!0),Object.keys(e).forEach(o=>this.$set(t,o,e[o])),this.$store.dispatch("call",{url:"project/column/update",data:Object.assign(e,{column_id:t.id})}).then(({data:o})=>{this.$set(this.columnLoad,t.id,!1),this.$store.dispatch("saveColumn",o),s()}).catch(({msg:o})=>{this.$set(this.columnLoad,t.id,!1),this.$store.dispatch("getColumns",this.projectId).catch(()=>{}),a(o)})})},removeColumn(t){$A.modalConfirm({title:"\u5220\u9664\u5217\u8868",content:"\u4F60\u786E\u5B9A\u8981\u5220\u9664\u5217\u8868\u3010"+t.name+"\u3011\u53CA\u5217\u8868\u5185\u7684\u4EFB\u52A1\u5417\uFF1F",loading:!0,onOk:()=>{if(this.columnLoad[t.id]!==!0)return this.$set(this.columnLoad,t.id,!0),new Promise((e,s)=>{this.$store.dispatch("removeColumn",t.id).then(({msg:a})=>{e(a)}).catch(({msg:a})=>{s(a)}).finally(a=>{this.$set(this.columnLoad,t.id,!1)})})}})},onSort(t){this.sortField=t,this.sortType=this.sortType=="desc"?"asc":"desc"},onSetting(){this.settingLoad++,this.$store.dispatch("call",{url:"project/update",data:Object.assign(this.settingData,{project_id:this.projectId})}).then(({data:t,msg:e})=>{$A.messageSuccess(e),this.settingShow=!1,this.$store.dispatch("saveProject",t)}).catch(({msg:t})=>{$A.modalError(t)}).finally(t=>{this.settingLoad--})},onUser(){this.userLoad++,this.$store.dispatch("call",{url:"project/user",data:{project_id:this.projectId,userid:this.userData.userids}}).then(({msg:t})=>{$A.messageSuccess(t),this.userShow=!1,this.$store.dispatch("getProjectOne",this.projectId).catch(()=>{}),this.$store.dispatch("getTaskForProject",this.projectId).catch(()=>{})}).catch(({msg:t})=>{$A.modalError(t)}).finally(t=>{this.userLoad--})},onTransfer(){this.transferLoad++,this.$store.dispatch("call",{url:"project/transfer",data:{project_id:this.projectId,owner_userid:this.transferData.owner_userid[0]}}).then(({msg:t})=>{$A.messageSuccess(t),this.transferShow=!1,this.$store.dispatch("getProjectOne",this.projectId).catch(()=>{}),this.$store.dispatch("getTaskForProject",this.projectId).catch(()=>{})}).catch(({msg:t})=>{$A.modalError(t)}).finally(t=>{this.transferLoad--})},onArchived(){$A.modalConfirm({title:"\u5F52\u6863\u9879\u76EE",content:"\u4F60\u786E\u5B9A\u8981\u5F52\u6863\u9879\u76EE\u3010"+this.projectData.name+"\u3011\u5417\uFF1F",loading:!0,onOk:()=>new Promise((t,e)=>{this.$store.dispatch("archivedProject",this.projectId).then(({msg:s})=>{t(s)}).catch(({msg:s})=>{e(s)})})})},onDelete(){$A.modalConfirm({title:"\u5220\u9664\u9879\u76EE",content:"\u4F60\u786E\u5B9A\u8981\u5220\u9664\u9879\u76EE\u3010"+this.projectData.name+"\u3011\u5417\uFF1F",loading:!0,onOk:()=>new Promise((t,e)=>{this.$store.dispatch("removeProject",this.projectId).then(({msg:s})=>{t(s)}).catch(({msg:s})=>{e(s)})})})},onExit(){$A.modalConfirm({title:"\u9000\u51FA\u9879\u76EE",content:"\u4F60\u786E\u5B9A\u8981\u9000\u51FA\u9879\u76EE\u3010"+this.projectData.name+"\u3011\u5417\uFF1F",loading:!0,onOk:()=>new Promise((t,e)=>{this.$store.dispatch("exitProject",this.projectId).then(({msg:s})=>{t(s)}).catch(({msg:s})=>{e(s)})})})},projectDropdown(t){switch(t){case"setting":this.$set(this.settingData,"name",this.projectData.name),this.$set(this.settingData,"desc",this.projectData.desc),this.settingShow=!0,this.$nextTick(()=>{this.$refs.projectName.focus(),setTimeout(this.$refs.projectDesc.resizeTextarea,0)});break;case"permissions":this.permissionShow=!0;break;case"user":if(this.projectData.owner_userid!==this.userId)return;const e=this.projectData.project_user.map(({userid:s})=>s);this.$set(this.userData,"userids",e),this.$set(this.userData,"useridbak",e),this.$set(this.userData,"uncancelable",[this.projectData.owner_userid]),this.userShow=!0;break;case"invite":this.inviteData={},this.inviteShow=!0,this.inviteGet();break;case"workflow":this.workflowShow=!0;break;case"log":this.logShow=!0;break;case"archived_task":this.archivedTaskShow=!0;break;case"deleted_task":this.deletedTaskShow=!0;break;case"transfer":this.$set(this.transferData,"owner_userid",[]),this.transferShow=!0;break;case"archived":this.onArchived();break;case"delete":this.onDelete();break;case"exit":this.onExit();break}},openTask(t,e){this.$store.dispatch("openTask",t),e===!0&&setTimeout(()=>{k.Store.set("receiveTask",!0)},300)},openMenu(t,e){const s=this.$refs[`taskMenu_${e.id}`];s&&s[0].handleClick(t)},taskIsHidden(t){const{id:e,name:s,desc:a,complete_at:o}=t,{searchText:i}=this;return!!(!this.projectData.cacheParameter.completedTask&&o||this.flowTask(t)||i&&e!=i&&!$A.strExists(`${s} ${a}`,i))},ownerUser(t){return t.filter(({owner:e})=>e==1).sort((e,s)=>e.id-s.id)},inviteGet(t){this.inviteLoad++,this.$store.dispatch("call",{url:"project/invite",data:{project_id:this.projectId,refresh:t===!0?"yes":"no"}}).then(({data:e})=>{this.inviteData=e,this.inviteCopy()}).catch(({msg:e})=>{$A.modalError(e)}).finally(e=>{this.inviteLoad--})},getFlowData(){this.flowInfo={},this.$store.dispatch("call",{url:"project/flow/list",data:{project_id:this.projectId}}).then(({data:t})=>{var e;this.flowList=t,(e=this.$refs.flow)==null||e.clearSelect()}).catch(()=>{this.flowList=[]})},flowChange(t,e){this.flowInfo=e.pop()||{}},inviteCopy(){!this.inviteData.url||(this.inviteFocus(),this.copyText(this.inviteData.url))},inviteFocus(){this.$nextTick(t=>{this.$refs.inviteInput.focus({cursor:"all"})})},toggleCompleted(){this.toggleParameter("completedTask")},workflowBeforeClose(){return new Promise(t=>{if(!this.$refs.workflow){t();return}if(!this.$refs.workflow.existDiff()){t();return}$A.modalConfirm({content:"\u8BBE\u7F6E\u5C1A\u672A\u4FDD\u5B58\uFF0C\u662F\u5426\u653E\u5F03\u4FEE\u6539\uFF1F",cancelText:"\u53D6\u6D88",okText:"\u653E\u5F03",onOk:()=>{t()}})})},myFilter(t,e=!0){return!this.projectData.cacheParameter.completedTask&&e===!0&&t.complete_at||this.flowTask(t)||this.searchText&&t.id!=this.searchText&&!$A.strExists(t.name,this.searchText)&&!$A.strExists(t.desc,this.searchText)?!1:t.owner==1},helpFilter(t,e=!0){return t.parent_id>0||!this.projectData.cacheParameter.completedTask&&e===!0&&t.complete_at||this.flowTask(t)||this.searchText&&t.id!=this.searchText&&!$A.strExists(t.name,this.searchText)&&!$A.strExists(t.desc,this.searchText)?!1:t.task_user&&t.task_user.find(({userid:s,owner:a})=>s==this.userId&&a==0)},flowTask(t){return $A.leftExists(this.flowInfo.value,"user:")&&!t.task_user.find(({userid:e,owner:s})=>e===this.flowInfo.userid&&s)||this.flowInfo.value>0&&t.flow_item_id!==this.flowInfo.value?!0:!!(this.flowInfo.value==-1&&t.start_at)},expiresFormat(t){return $A.countDownFormat(t,this.nowTime)},tabTypeChange(t){switch(t){case"column":this.toggleParameter({project_id:this.projectId,key:"menuType",value:"column"});break;case"table":this.toggleParameter({project_id:this.projectId,key:"menuType",value:"table"});break;case"gantt":this.toggleParameter({project_id:this.projectId,key:"menuType",value:"gantt"});break}},toggleParameter(t){if(t==="completedTask")this.$store.dispatch("forgetTaskCompleteTemp",!0);else if(t==="chat"&&this.windowPortrait){this.$store.dispatch("openDialog",this.projectData.dialog_id);return}this.$store.dispatch("toggleProjectParameter",t)},onBack(){const{name:t,params:e}=this.$store.state.routeHistoryLast;t===this.$route.name&&/^\d+$/.test(e.projectId)?this.goForward({name:this.$route.name,params:{projectId:"all"}}):this.goBack()}}},x={};var Gt=d(Kt,Vt,Ht,!1,Yt,null,null,null);function Yt(t){for(let e in x)this[e]=x[e]}var Xt=function(){return Gt.exports}(),Jt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return t.dialogShow?s("DialogWrapper",{staticClass:"project-dialog",attrs:{"dialog-id":t.projectData.dialog_id}},[s("template",{slot:"head"},[s("div",{staticClass:"dialog-user"},[s("div",{staticClass:"member-head"},[s("div",{staticClass:"member-title"},[t._v(t._s(t.$L("\u9879\u76EE\u6210\u5458"))),s("span",{on:{click:function(a){t.memberShowAll=!t.memberShowAll}}},[t._v("("+t._s(t.projectData.project_user.length)+")")])]),s("div",{staticClass:"member-close",on:{click:t.onClose}},[s("Icon",{attrs:{type:"ios-close"}})],1)]),s("ul",{class:["member-list",t.memberShowAll?"member-all":""]},t._l(t.projectData.project_user,function(a){return s("li",[s("UserAvatar",{attrs:{userid:a.userid,size:36}})],1)}),0)]),s("div",{staticClass:"nav-wrapper"},[s("div",{staticClass:"dialog-title"},[s("h2",[t._v(t._s(t.$L("\u7FA4\u804A")))])])])])],2):t._e()},qt=[];const Qt={name:"ProjectDialog",components:{DialogWrapper:B},data(){return{loadIng:!1,memberShowAll:!1}},computed:{...g(["projectData"]),dialogShow(){return this.windowLandscape&&this.projectData.dialog_id&&this.projectData.cacheParameter.chat}},methods:{onClose(){this.$store.dispatch("toggleProjectParameter","chat")}}},S={};var Zt=d(Qt,Jt,qt,!1,te,null,null,null);function te(t){for(let e in S)this[e]=S[e]}var ee=function(){return Zt.exports}(),se=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"project-list"},[s("PageTitle",{attrs:{title:t.$L("\u9879\u76EE")}}),s("div",{staticClass:"list-search"},[s("div",{staticClass:"search-wrapper"},[s("div",{staticClass:"search-pre"},[t.loadProjects>0?s("Loading"):s("Icon",{attrs:{type:"ios-search"}})],1),s("Input",{attrs:{placeholder:t.$L(t.loadProjects>0?"\u66F4\u65B0\u4E2D...":"\u641C\u7D22"),clearable:""},model:{value:t.projectKeyValue,callback:function(a){t.projectKeyValue=a},expression:"projectKeyValue"}})],1)]),s("ul",{on:{touchstart:t.onTouchStart,scroll:t.onScroll}},[t.projectLists.length===0?[t.projectKeyLoading>0?s("li",{staticClass:"loading"},[s("Loading")],1):s("li",{staticClass:"nothing"},[t._v(" "+t._s(t.$L(t.projectKeyValue?`\u6CA1\u6709\u4EFB\u4F55\u4E0E"${t.projectKeyValue}"\u76F8\u5173\u7684\u7ED3\u679C`:"\u6CA1\u6709\u4EFB\u4F55\u9879\u76EE"))+" ")])]:t._e(),t._l(t.projectLists,function(a,o){return s("li",{directives:[{name:"longpress",rawName:"v-longpress",value:t.handleLongpress,expression:"handleLongpress"}],key:o,class:{operate:a.id==t.operateItem.id&&t.operateVisible},attrs:{"data-id":a.id},on:{click:function(i){return t.toggleRoute("project",{projectId:a.id})}}},[s("div",{staticClass:"project-item"},[s("div",{staticClass:"item-left"},[s("div",{staticClass:"project-h1"},[s("div",{staticClass:"project-name"},[t._v(t._s(a.name))]),a.top_at?s("div",{staticClass:"icon-top"}):t._e(),a.task_my_num-a.task_my_complete>0?s("div",{staticClass:"num"},[t._v(t._s(a.task_my_num-a.task_my_complete))]):t._e()]),s("div",{staticClass:"project-h2"},[t._v(" "+t._s(a.desc)+" ")])]),a.task_num>0?s("div",{staticClass:"item-right",on:{click:function(i){return i.stopPropagation(),t.modalPercent(a)}}},[s("iCircle",{attrs:{type:"circle","trail-color":"rgba(132, 197, 106, 0.2)","trail-width":7,"stroke-color":a.task_percent===100?"rgba(132, 197, 106, 0)":"#84C56A","stroke-width":7,percent:a.task_percent,size:44}},[a.task_percent===100?s("Icon",{attrs:{type:"ios-checkmark"}}):s("span",{staticClass:"percent-text"},[t._v(t._s(a.task_percent)+"%")])],1)],1):t._e()])])})],2),s("div",{directives:[{name:"show",rawName:"v-show",value:t.operateVisible,expression:"operateVisible"}],staticClass:"operate-position",style:t.operateStyles},[s("Dropdown",{attrs:{trigger:"custom",placement:t.windowLandscape?"bottom":"top",visible:t.operateVisible,transfer:""},on:{"on-clickoutside":function(a){t.operateVisible=!1}}},[s("div",{style:{userSelect:t.operateVisible?"none":"auto",height:t.operateStyles.height}}),s("DropdownMenu",{attrs:{slot:"list"},slot:"list"},[s("DropdownItem",{nativeOn:{click:function(a){return t.handleTopClick.apply(null,arguments)}}},[t._v(" "+t._s(t.$L(t.operateItem.top_at?"\u53D6\u6D88\u7F6E\u9876":"\u7F6E\u9876\u8BE5\u9879\u76EE"))+" ")])],1)],1)],1)],1)},ae=[];const oe={name:"ProjectList",directives:{longpress:V},data(){return{projectKeyValue:"",projectKeyLoading:0,operateStyles:{},operateVisible:!1,operateItem:{}}},computed:{...h(["cacheProjects","loadProjects"]),projectLists(){const{projectKeyValue:t,cacheProjects:e}=this,s=$A.cloneJSON(e).sort((a,o)=>a.top_at||o.top_at?$A.Date(o.top_at)-$A.Date(a.top_at):o.id-a.id);return t?s.filter(a=>$A.strExists(`${a.name} ${a.desc}`,t)):s}},watch:{projectKeyValue(t){if(t!=""){if($A.loadVConsole(t)){this.projectKeyValue="";return}this.projectKeyLoading++,setTimeout(()=>{this.projectKeyValue==t&&this.searchProject(),this.projectKeyLoading--},600)}}},methods:{searchProject(){this.projectKeyLoading++,this.$store.dispatch("getProjects",{keys:{name:this.projectKeyValue}}).finally(t=>{this.projectKeyLoading--})},toggleRoute(t,e){this.operateVisible||this.goForward({name:"manage-"+t,params:e||{}})},onTouchStart(t){const e=document.activeElement;e&&e.blur()},onScroll(t){this.operateVisible=!1},modalPercent(t){if(this.operateVisible)return;let e=`<p><strong>${this.$L("\u603B\u8FDB\u5EA6")}</strong></p>`;e+=`<p>${this.$L("\u603B\u6570\u91CF")}: ${t.task_num}</p>`,e+=`<p>${this.$L("\u5DF2\u5B8C\u6210")}: ${t.task_complete}</p>`,e+=`<p style="margin-top:12px"><strong>${this.$L("\u6211\u7684\u4EFB\u52A1")}</strong></p>`,e+=`<p>${this.$L("\u603B\u6570\u91CF")}: ${t.task_my_num}</p>`,e+=`<p>${this.$L("\u5DF2\u5B8C\u6210")}: ${t.task_my_complete}</p>`,$A.modalInfo({language:!1,title:`${t.name} ${this.$L("\u9879\u76EE\u8FDB\u5EA6")}`,content:e})},handleLongpress(t,e){const s=$A.getAttr(e,"data-id"),a=this.projectLists.find(o=>o.id==s);!a||(this.operateVisible=!1,this.operateItem=$A.isJson(a)?a:{},this.$nextTick(()=>{const o=e.getBoundingClientRect();this.operateStyles={left:`${t.clientX}px`,top:`${o.top+this.windowScrollY}px`,height:o.height+"px"},this.operateVisible=!0}))},handleTopClick(){this.$store.dispatch("call",{url:"project/top",data:{project_id:this.operateItem.id}}).then(({data:t})=>{this.$store.dispatch("saveProject",t)}).catch(({msg:t})=>{$A.modalError(t)})}}},A={};var ie=d(oe,se,ae,!1,re,null,null,null);function re(t){for(let e in A)this[e]=A[e]}var ne=function(){return ie.exports}(),le=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"page-project"},[t.projectId>0?[s("ProjectPanel"),s("ProjectDialog")]:t._e(),t.windowPortrait?s("ProjectList",{directives:[{name:"show",rawName:"v-show",value:t.projectId===0,expression:"projectId === 0"}]}):t._e()],2)},ce=[];const de={components:{ProjectList:ne,ProjectDialog:ee,ProjectPanel:Xt},deactivated(){this.$store.dispatch("forgetTaskCompleteTemp",!0)},computed:{...h(["cacheProjects","wsOpenNum"]),projectId(){const{projectId:t}=this.$route.params;return parseInt(/^\d+$/.test(t)?t:0)}},watch:{projectId:{handler(){this.getProjectData()},immediate:!0},wsOpenNum(t){t<=1||(this.wsOpenTimeout&&clearTimeout(this.wsOpenTimeout),this.wsOpenTimeout=setTimeout(()=>{this.$route.name=="manage-project"&&this.getProjectData()},5e3))}},methods:{getProjectData(){if(this.projectId<=0)return;const t=this.projectId;this.$nextTick(()=>{this.$store.state.projectId=t,this.$store.dispatch("getProjectOne",t).then(()=>{this.$store.dispatch("getColumns",t).catch(()=>{}),this.$store.dispatch("getTaskForProject",t).catch(()=>{})}).catch(({msg:e})=>{t===this.projectId&&$A.modalWarning({content:e,onOk:()=>{const s=this.cacheProjects.find(({id:a})=>a);s?$A.goForward({name:"manage-project",params:{projectId:s.id}}):$A.goForward({name:"manage-dashboard"})}})}),this.$store.dispatch("forgetTaskCompleteTemp",!0)})}}},P={};var ue=d(de,le,ce,!1,pe,null,null,null);function pe(t){for(let e in P)this[e]=P[e]}var is=function(){return ue.exports}();export{is as default};