1 |
- webpackJsonp([147],{QgpJ:function(e,t){},db2V:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=i("mvHQ"),r=i.n(a),s=(i("MY4N"),i("0zAV")),n=(i("81cA"),i("uGb/")),l=(i("OWWB"),i("1fWZ")),o=(i("i0mo"),i("Hkar")),c=(i("PEgo"),i("HNZ3")),d=(i("nI2B"),i("qWG/")),m=(i("iQ6B"),i("H6W6")),h=(i("n90r"),i("dJne")),u=(i("k3b4"),i("+2ln")),_=i("7+uW"),p=i("by0O"),f=i("CC1l"),v=i("dh1c"),k=i("PqZn"),b=i("vLgD");_.a.use(s.a).use(n.a).use(l.a).use(o.a).use(c.a).use(d.a).use(m.a).use(h.a).use(u.a);var y={name:"addTarget",components:{EmployeeSelector:f.a,TargetSearch:v.a,AddKr:k.a},data:function(){return{isNeed:!this.$getCache("isAndroid"),getScopeArr:Object(p.f)(),belongArr:Object(p.b)(),columns:Object(p.c)(!1),cycleTypeArr:Object(p.a)(),isShowbelong:!1,isShowVisible:!1,isShowSelectTarget:!1,pullonThePanel:!1,selectUser:!1,isShowAddKr:!1,selected_user:{dept:[],employee:[]},selectDept:!1,selected_dept:{dept:[],employee:[]},ownerUser:this.$userInfo(),specialUsers:[],addOkrParameter:{obj_name:"",obj_owner_id:this.$userInfo().id,kr:"",cycle_type:1,cycle_name:this.$moment().format("M")+"月",dateId:1,visible_type:1,belong_type:4,belong_name:"个人",dept_id:0,special_employee_ids:"",special_dept_ids:"",year:this.$moment().format("YYYY"),quarter:"",half_year:"",month:"",start_time:"",end_time:"",kr_id:"",o_id:""},selectUserIndex:1,targetName:"",visibleName:"全公司",krs:[],sumWeight:0,userId:0,krName:"",weight:100,krIndex:0,monthDateVal:[this.$moment().startOf("year").format("YYYY-MM-DD"),this.$moment().endOf("year").format("YYYY-MM-DD")],selectPftiTheEcho:[0,0],selectDeptAll:!1,selected_dept_all:{dept:[],employee:[]}}},methods:{openPanel:function(){var e=this;this.pullonThePanel=!0,this.$nextTick(function(){e.theEchoVanPicker()})},theEchoVanPicker:function(){this.$refs.van_picker.setIndexes(this.selectPftiTheEcho)},sava_btn:function(){var e=this;if(!this.addOkrParameter.obj_name)return this.$toast("目标不能为空"),!1;var t=!1;if(this.krs.some(function(i){if(!i.name)return e.$toast("KR关键成果不能为空"),t=!0,!0}),t)return!1;if(100!=this.sumWeight)return this.$toast("KR权重之和必须为100%"),!1;if(4==this.addOkrParameter.visible_type&&0==this.addOkrParameter.special_employee_ids.length)return this.$toast("请选择指定成员"),!1;var i=[];this.krs.forEach(function(e){var t={name:e.name,owner_id:e.owner_id,weight:100*e.weight};i.push(t)});var a={obj_name:this.addOkrParameter.obj_name,obj_owner_id:this.addOkrParameter.obj_owner_id,kr:r()(i),cycle_type:this.addOkrParameter.cycle_type,visible_type:this.addOkrParameter.visible_type,belong_type:this.addOkrParameter.belong_type,dept_id:this.addOkrParameter.dept_id,special_employee_ids:this.addOkrParameter.special_employee_ids,special_dept_ids:this.addOkrParameter.special_dept_ids,start_time:this.monthDateVal[0],end_time:this.monthDateVal[1],year:this.addOkrParameter.year};this.addOkrParameter.kr_id&&(a.kr_id=this.addOkrParameter.kr_id),this.addOkrParameter.o_id&&(a.o_id=this.addOkrParameter.o_id),1==this.addOkrParameter.cycle_type&&(a.quarter=0),2==this.addOkrParameter.cycle_type&&(a.quarter=this.addOkrParameter.dateId),3==this.addOkrParameter.cycle_type&&(a.half_year=this.addOkrParameter.dateId),4==this.addOkrParameter.cycle_type&&(a.month=this.addOkrParameter.dateId),Object(b.a)("POST","/api/okr/obj/create",a).then(function(t){e.$toast("目标创建成功"),setTimeout(function(){e.$keep_alive_update("update_target_list",{}),e.$route_back()},500)})},confirmAddkr:function(e){var t=this.krs.map(function(e){return Number(e.weight)}),i=Math.floor(100/(this.krs.length+1)*100)/100;this.isAllEqual(t)&&Number(e.weight)==i&&this.krs.forEach(function(e){e.weight=i}),""===this.krIndex?this.krs.push(JSON.parse(r()(e))):this.krs[this.krIndex]=JSON.parse(r()(e)),this.getKrWeight()},getKrWeight:function(){var e=0;this.krs.forEach(function(t){e+=Number(t.weight)}),this.sumWeight=Math.round(e)},openDetail:function(e,t,i){if(1==e)this.krIndex=i,this.userId=t.owner_id,this.krName=t.name,this.weight=t.weight;else{var a=0,r=this.krs.map(function(e){return a+=Number(e.weight),Number(e.weight)}),s=Math.floor(100/(this.krs.length+1)*100)/100;this.isAllEqual(r)?this.weight=s:this.weight=100-a>0?100-a:0,this.userId=0,this.krName="",this.krIndex=""}this.isShowAddKr=!0},deleteKr:function(e){var t=this;this.krs.splice(e,1),this.$nextTick(function(){var e=t.krs.map(function(e){return Number(e.weight)});if(t.isAllEqual(e)){var i=(100/t.krs.length).toFixed(2);t.krs.forEach(function(e){e.weight=i})}t.getKrWeight()})},isAllEqual:function(e){return!(e.length>0)||!e.some(function(t,i){return t!==e[0]})},confirmTarget:function(e){e.type?(this.targetName=e.item.name,1==e.type?this.addOkrParameter.o_id=e.item.id:this.addOkrParameter.kr_id=e.item.id):(this.targetName="",this.addOkrParameter.kr_id="",this.addOkrParameter.o_id="")},openSelectUser:function(e){1==e?this.selected_user.employee=this.ownerUser.id?[this.ownerUser]:[]:2==e&&(this.selected_user.employee=this.specialUsers),this.selectUserIndex=e,this.selectUser=!0},onConfirm:function(e,t){var i=this.columns[t[0]],a=this.cycleTypeArr[t[1]];if(this.addOkrParameter.year=i.value,this.addOkrParameter.cycle_type=a.cycle_type,this.addOkrParameter.dateId=a.id,this.addOkrParameter.cycle_name=a.name,this.selectPftiTheEcho=t,a.cycle_type){var r="",s="";if(1==a.cycle_type&&(r=i.value+"-01-01",s=i.value+"-12-31"),3==a.cycle_type){i.value;r=i.value+"-"+(1==a.id?"01-01":"07-01"),s=i.value+"-"+(1==a.id?"06-30":"12-31")}if(2==a.cycle_type){var n=i.value+"-",l=1==a.id?"01-01":2==a.id?"04-01":3==a.id?"07-01":4==a.id?"10-01":"";r=n+l,s=this.$moment(this.$moment().format(n+l)).endOf("quarter").format("YYYY-MM-DD")}4==a.cycle_type&&(r=this.$moment(a.id+"/"+i.value,"MM/YYYY").add(0,"M").format("YYYY-MM-DD"),s=this.$moment(a.id+"/"+i.value,"MM/YYYY").endOf("M").add(0,"M").format("YYYY-MM-DD")),this.monthDateVal=[r,s]}this.pullonThePanel=!1},onCancel:function(){this.pullonThePanel=!1},confirmUser:function(e){var t=e.employee;if(1==this.selectUserIndex)this.addOkrParameter.obj_owner_id=t[0].id,this.ownerUser=t[0];else if(2==this.selectUserIndex){var i="",a=t.map(function(e){return i=i+e.name+",",e.id});this.visibleName=i,this.addOkrParameter.special_employee_ids=r()(a),this.specialUsers=t,this.addOkrParameter.visible_type=4}},confirmDeptAll:function(e){var t="",i=e.dept.map(function(e){return t=t+e.dept_name+",",e.dept_id});this.visibleName=t,this.addOkrParameter.special_dept_ids=r()(i),this.selected_dept_all=e,this.addOkrParameter.visible_type=5},confirmDept:function(e){var t=e.dept[0];this.addOkrParameter.belong_type=2,this.addOkrParameter.belong_name=t.dept_name,this.addOkrParameter.dept_id=t.dept_id},activeVisible:function(e){4==e.value?this.openSelectUser(2):5==e.value?this.selectDeptAll=!0:(this.addOkrParameter.visible_type=e.value,this.visibleName=e.name)},activebelong:function(e){1!=e.value&&4!=e.value||(this.addOkrParameter.belong_type=e.value,this.addOkrParameter.belong_name=e.name),2==e.value&&(this.selectDept=!0)}},created:function(){var e=this.$moment().format("M")+6;this.selectPftiTheEcho=[this.addOkrParameter.year-2020,e]},mounted:function(){}},g={render:function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticStyle:{height:"100%"}},[i("van-nav-bar",{attrs:{title:"创建目标","left-text":"返回","left-arrow":""},on:{"click-left":e.$route_back}}),e._v(" "),i("div",{staticClass:"scroller"},[i("scroller",{attrs:{isNeed:e.isNeed}},[i("div",{staticStyle:{"margin-bottom":"0.2rem","background-color":"#fff"}},[i("div",[i("van-field",{attrs:{rows:"3",title:"目标",type:"textarea",maxlength:"100",placeholder:"书写建议:方向性动词+动作对象 示例:拿下华北地区的咖啡直销市场","show-word-limit":""},model:{value:e.addOkrParameter.obj_name,callback:function(t){e.$set(e.addOkrParameter,"obj_name",t)},expression:"addOkrParameter.obj_name"}})],1),e._v(" "),i("van-cell",{attrs:{title:"目标类型","is-link":"",value:e.addOkrParameter.belong_name},on:{click:function(t){e.isShowbelong=!0}}}),e._v(" "),i("van-cell",{attrs:{title:"目标周期","is-link":"",value:e.addOkrParameter.year+"年"+e.addOkrParameter.cycle_name},on:{click:e.openPanel}}),e._v(" "),i("van-cell",{attrs:{title:"负责人","is-link":""},on:{click:function(t){return e.openSelectUser(1)}}},[i("div",[e._v(e._s(e.ownerUser.name))])]),e._v(" "),i("van-cell",{attrs:{title:"对齐目标","is-link":""},on:{click:function(t){e.isShowSelectTarget=!0}}},[e.targetName?i("span",[e._v(e._s(e.targetName))]):i("span",{staticClass:"input-ccc"},[e._v("选择对齐上级目标")])]),e._v(" "),i("van-cell",{attrs:{title:"可见范围","is-link":"",value:e.visibleName},on:{click:function(t){e.isShowVisible=!0}}})],1),e._v(" "),i("div",{staticClass:"o-detail",staticStyle:{"margin-bottom":"0.2rem"}},[i("div",{},[e._v("关键成果"),i("span",{staticClass:"fontColorC",staticStyle:{"font-size":"0.28rem"}},[e._v("(总权重:"+e._s(e.sumWeight)+"%)")])]),e._v(" "),e.krs.length>0?e._l(e.krs,function(t,a){return i("div",{key:a,staticStyle:{"margin-top":"0.2rem","border-bottom":"1px solid #f1f1f1","padding-bottom":"0.2rem"},on:{click:function(i){return e.openDetail(1,t,a)}}},[i("div",{staticClass:"flex-box-ce",staticStyle:{"margin-bottom":"0.14rem"}},[i("div",{staticClass:"blue",staticStyle:{"font-size":"0.26rem","font-weight":"600","margin-right":"0.1rem"}},[e._v("KR"+e._s(a+1))]),e._v(" "),i("div",{staticClass:"flex-1 font-flex-word",staticStyle:{"padding-right":"0.2rem","font-size":"0.28rem"}},[e._v(e._s(t.name))]),e._v(" "),i("van-icon",{attrs:{name:"delete"},on:{click:function(t){return t.stopPropagation(),e.deleteKr(a)}}})],1),e._v(" "),i("div",{staticClass:"flex-box-ce fontColorC",staticStyle:{"font-size":"0.26rem"}},[i("span",{staticStyle:{"border-right":"1px solid #f1f1f1","padding-right":"5px","margin-right":"5px"}},[e._v(e._s(t.owner_name))]),e._v(" "),i("span",[e._v("权重:"+e._s(t.weight)+"%")])])])}):i("div",{staticClass:"fontColorD",staticStyle:{"text-align":"center",margin:"0.2rem 0","font-size":"0.28rem"}},[e._v("暂无KR")]),e._v(" "),i("div",{staticClass:"blue",staticStyle:{"text-align":"center","margin-top":"0.2rem","font-size":"0.3rem"},on:{click:function(t){return e.openDetail(2)}}},[e._v("+添加关键成果")])],2),e._v(" "),i("div",{staticStyle:{padding:"0.32rem"}},[i("van-button",{attrs:{type:"info",block:""},on:{click:e.sava_btn}},[e._v("确定")])],1),e._v(" "),i("div",{staticStyle:{height:"1rem"}})])],1),e._v(" "),i("AddKr",{attrs:{userId:e.userId,name:e.krName,weight:Number(e.weight),visible:e.isShowAddKr},on:{"update:visible":function(t){e.isShowAddKr=t},confirm:e.confirmAddkr}}),e._v(" "),i("TargetSearch",{attrs:{visible:e.isShowSelectTarget},on:{"update:visible":function(t){e.isShowSelectTarget=t},confirm:e.confirmTarget}}),e._v(" "),i("van-action-sheet",{attrs:{actions:e.belongArr,"cancel-text":"取消","close-on-click-action":""},on:{select:e.activebelong},model:{value:e.isShowbelong,callback:function(t){e.isShowbelong=t},expression:"isShowbelong"}}),e._v(" "),i("van-action-sheet",{attrs:{actions:e.getScopeArr,"cancel-text":"取消","close-on-click-action":""},on:{select:e.activeVisible},model:{value:e.isShowVisible,callback:function(t){e.isShowVisible=t},expression:"isShowVisible"}}),e._v(" "),i("van-action-sheet",{attrs:{closeable:!1},model:{value:e.pullonThePanel,callback:function(t){e.pullonThePanel=t},expression:"pullonThePanel"}},[i("div",{staticClass:"content"},[i("van-picker",{ref:"van_picker",attrs:{"show-toolbar":"",columns:e.columns,"value-key":"name","confirm-button-text":"完成"},on:{cancel:e.onCancel,confirm:e.onConfirm}})],1)]),e._v(" "),i("EmployeeSelector",{key:"selected_user",attrs:{isRequired:!0,title:"选择人员",visible:e.selectUser,can_select_dept:!1,multi:1!=e.selectUserIndex,selected:e.selected_user},on:{"update:visible":function(t){e.selectUser=t},confirm:e.confirmUser,"update:selected":function(t){e.selected_user=t}}}),e._v(" "),i("EmployeeSelector",{key:"selected_dept",attrs:{isRequired:!0,title:"选择部门",close_clear_data:!1,can_select_employee:!1,dept_multi:!1,visible:e.selectDept,selected:e.selected_dept,append_body:!0,isShowDepts:!0},on:{confirm:e.confirmDept,"update:visible":function(t){e.selectDept=t},"update:selected":function(t){e.selected_dept=t}}}),e._v(" "),i("EmployeeSelector",{key:"selected_dept_all",attrs:{isRequired:!0,title:"选择部门",close_clear_data:!1,can_select_employee:!1,visible:e.selectDeptAll,selected:e.selected_dept_all,append_body:!0,isShowDepts:!0},on:{confirm:e.confirmDeptAll,"update:visible":function(t){e.selectDeptAll=t},"update:selected":function(t){e.selected_dept_all=t}}})],1)},staticRenderFns:[]};var P=i("VU/8")(y,g,!1,function(e){i("QgpJ")},"data-v-4d38be2e",null);t.default=P.exports}});
|