Commit 9067d15c authored by zhengke's avatar zhengke

修改

parent bb8347b4
......@@ -12,7 +12,7 @@ export default {
<style>
@import url('~assets/css/font.css');
@import url('//at.alicdn.com/t/font_2077629_1iixntypnch.css');
@import url('//at.alicdn.com/t/font_2077629_49k0c3mis3b.css');
html,
body,
......
......@@ -84,6 +84,55 @@ export function GetOKRRemindList(data) {
})
}
/**
* 修改okr提醒启用
* @param {JSON参数} data
*/
export function SetOKRRemindEnable(data) {
return request({
url: '/OKRPeriod/SetOKRRemindEnable',
method: 'post',
data
})
}
/**
* 设置okr提醒
* @param {JSON参数} data
*/
export function SetOKRRemindInfo(data) {
return request({
url: '/OKRPeriod/SetOKRRemindInfo',
method: 'post',
data
})
}
/**
* 获取okr分数规则列表
* @param {JSON参数} data
*/
export function GetOKRScoreConfigPageList(data) {
return request({
url: '/OKRPeriod/GetOKRScoreConfigPageList',
method: 'post',
data
})
}
/**
* 设置分数规则
* @param {JSON参数} data
*/
export function SetOKRScoreConfigInfo(data) {
return request({
url: '/OKRPeriod/SetOKRScoreConfigInfo',
method: 'post',
data
})
}
......
......@@ -65,12 +65,12 @@
<div class="Notificat_Inner">填写 OKR(仅未填写的)</div>
<div class="Notify_innerTwo" v-if="dataList&&dataList.length>0">
提醒时间:周期开始后第 {{dataList[0].Days}} 个工作日 {{dataList[0].Time}}
<span class="Notify_Edit">修改</span>
<span class="Notify_Edit" @click="updateTime(dataList[0])">修改</span>
</div>
</div>
<div>
<template v-if="dataList&&dataList.length>0">
<q-toggle size="md" color="primary" v-model="dataList[0].Enable" :false-value="2" :true-value="1" />
<q-toggle size="md" color="primary" @input="getEnable(1)" v-model="dataList[0].Enable" :false-value="2" :true-value="1" />
</template>
</div>
</div>
......@@ -79,12 +79,12 @@
<div class="Notificat_Inner">给 OKR 打分(仅未打分的)</div>
<div class="Notify_innerTwo" v-if="dataList&&dataList.length>0">
提醒时间:周期结束前第 {{dataList[1].Days}} 个工作日 {{dataList[1].Time}}
<span class="Notify_Edit">修改</span>
<span class="Notify_Edit" @click="updateTime(dataList[1])">修改</span>
</div>
</div>
<div>
<template v-if="dataList&&dataList.length>0">
<q-toggle size="md" color="primary" v-model="dataList[1].Enable" :false-value="2" :true-value="1" />
<q-toggle size="md" color="primary" @input="getEnable(2)" v-model="dataList[1].Enable" :false-value="2" :true-value="1" />
</template>
</div>
</div>
......@@ -98,12 +98,12 @@
<div class="Notificat_Inner">查看下级 OKR 填写情况(仅有下级未填写的)</div>
<div class="Notify_innerTwo" v-if="dataList&&dataList.length>0">
提醒时间:周期开始后第 {{dataList[2].Days}} 个工作日 {{dataList[2].Time}}
<span class="Notify_Edit">修改</span>
<span class="Notify_Edit" @click="updateTime(dataList[2])">修改</span>
</div>
</div>
<div>
<template v-if="dataList&&dataList.length>0">
<q-toggle size="md" color="primary" v-model="dataList[2].Enable" :false-value="2" :true-value="1" />
<q-toggle size="md" color="primary" @input="getEnable(3)" v-model="dataList[2].Enable" :false-value="2" :true-value="1" />
</template>
</div>
</div>
......@@ -111,38 +111,41 @@
<div style="flex:1">
<div class="Notificat_Inner">查看下级 OKR 打分情况(仅有下级未打分的)</div>
<div class="Notify_innerTwo" v-if="dataList&&dataList.length>0">
提醒时间:周期结束前第 {{dataList[3].Days}} 个工作日 {{dataList[2].Time}}
<span class="Notify_Edit">修改</span>
提醒时间:周期结束前第 {{dataList[3].Days}} 个工作日 {{dataList[3].Time}}
<span class="Notify_Edit" @click="updateTime(dataList[3])">修改</span>
</div>
</div>
<div>
<template v-if="dataList&&dataList.length>0">
<q-toggle size="md" color="primary" v-model="dataList[3].Enable" :false-value="2" :true-value="1" />
<q-toggle size="md" color="primary" @input="getEnable(4)" v-model="dataList[3].Enable" :false-value="2" :true-value="1" />
</template>
</div>
</div>
</div>
</div>
<!-- <ruleseteditForm v-if="isShowsetForm" @close="closeruleset" :save-obj="ruleObj" @success="refreshRule">
</ruleseteditForm> -->
<remindtime-form v-if="isShowsetForm" @close="closeruleset" :save-obj="setObj" @success="refreshRule">
</remindtime-form>
</div>
</div>
</template>
<script>
import {
GetOKRRemindList
GetOKRRemindList,
SetOKRRemindEnable
} from '../../api/okr/index';
// import ruleseteditForm from '../../components/okr/rulesetedit-form';
import remindtimeForm from '../../components/okr/remindtime-form';
export default {
meta: {
title: "提醒设置"
},
// components: {
// ruleseteditForm
// },
components: {
remindtimeForm
},
data() {
return {
dataList: [],
isShowsetForm:false,
setObj:{}
}
},
created() {},
......@@ -159,6 +162,38 @@
}
})
},
//点击切换
getEnable(type){
let msg = {
Type:type
}
SetOKRRemindEnable(msg).then(res => {
if (res.Code == 1) {
this.getList();
this.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
timeout: 2000,
message: '修改成功!',
position: 'top'
})
}
})
},
//关闭弹窗
closeruleset(){
this.isShowsetForm=false;
},
//修改成功回调
refreshRule(){
this.getList();
},
//修改
updateTime(obj){
this.setObj=obj;
this.isShowsetForm=true;
console.log(obj,'objj');
}
}
}
......
<style>
.w400 {
width: 400px !important;
}
/* .el-select-dropdown__item{
min-width: 400px;
} */
.el-picker-panel{
z-index: 9999!important;
}
</style>
<template>
<q-dialog v-model="persistent" persistent content-class="bg-grey-1" transition-show="scale" transition-hide="scale">
<q-card style="max-width:600px;width:600px;" class="remind_Dialog">
<q-card-section>
<div class="text-h6">修改提醒时间</div>
</q-card-section>
<q-card-section class="q-pt-none scroll" style="max-height: 70vh">
<div class="row wrap">
<div class="col-12">
周期结束前第
<q-select class="q-pb-lg" style="width:400px;display:inline-block;" multiple filled stack-label use-input
use-chips option-value="Id" option-label="Name" v-model="daysOne" ref="ManagerId" :options="optionList"
:dense="false" emit-value map-options>
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
未找到相关数据
</q-item-section>
</q-item>
</template>
</q-select>
个工作日
</div>
</div>
<div class="row wrap">
<div class="col-12" style="margin-bottom:50px;">
<span style="margin:0 5px 0 55px;">时间</span>
<el-time-select v-model="msg.Time" class="w400" :picker-options="{
start: '00:00',
step: '00:15',
end: '23:59'
}" placeholder="选择时间">
</el-time-select>
</div>
</div>
</q-card-section>
<q-card-actions align="right" class="bg-white">
<q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="closeRuleForm" />
<q-btn label="保存" color="accent q-px-md" style="font-weight:400 !important" @click="saveRule" />
</q-card-actions>
</q-card>
</q-dialog>
</template>
<script>
import {
SetOKRRemindInfo
} from '../../api/okr/index'
export default {
props: {
saveObj: {
type: Object,
default: null,
}
},
data() {
return {
persistent: true,
msg: {
Id: 0,
Days: '',
Time: '',
Type: 1
},
optionList: [{
Id: 1,
Name: 1
}, {
Id: 2,
Name: 2
}, {
Id: 3,
Name: 3
}, {
Id: 4,
Name: 4
}, {
Id: 5,
Name: 5
}, {
Id: 6,
Name: 6
}, {
Id: 7,
Name: 7
}, {
Id: 8,
Name: 8
}, {
Id: 9,
Name: 9
}, {
Id: 10,
Name: 10
}, {
Id: 11,
Name: 11
}, {
Id: 12,
Name: 12
}, {
Id: 13,
Name: 13
}, {
Id: 14,
Name: 14
}, {
Id: 15,
Name: 15
}, {
Id: 16,
Name: 16
}, {
Id: 17,
Name: 17
}, {
Id: 18,
Name: 18
}, {
Id: 19,
Name: 19
}, {
Id: 20,
Name: 20
}],
daysOne: [],
}
},
computed: {},
mounted() {
console.log(this.saveObj,'saveObj');
this.msg.Id = this.saveObj.Id;
this.daysOne = this.saveObj.Days.split(',');
this.msg.Time = this.saveObj.Time;
this.msg.Type = this.saveObj.Type;
},
methods: {
//取消
closeRuleForm() {
this.$emit('close');
this.persistent = false
},
//保存信息
saveRule() {
if(this.daysOne&&this.daysOne.length>0){
this.msg.Days= this.daysOne.join(',');
}
SetOKRRemindInfo(this.msg).then(res => {
if (res.Code == 1) {
this.$emit('success');
this.closeRuleForm();
}
})
},
},
}
</script>
<style>
.scoreRemind {
display: flex;
justify-content: space-between;
align-items: center;
}
.scoreTitle {
color: #F72E52;
font-size: 12px;
}
.rule_list {
width: 100%;
height: auto;
}
.score_Top {
height: 30px;
background-color: #EEEEEF;
font-size: 12px;
padding: 5px 20px;
}
.score_Tname {
color: #2D2D2D;
font-weight: bold;
}
.score_IconList span {
display: inline-block;
margin-right: 20px;
color: #2961FE;
cursor: pointer;
}
.score_IconList span i {
margin-right: 5px;
}
.score_IconList span:last-child {
margin-right: 0;
}
.rule_InnerList {
min-height: 60px;
padding: 0 20px;
border-bottom: 1px solid #F4F4F4;
}
.rule_Item {
display: inline-block;
margin: 10px 30px 10px 0;
}
.rule_comback {
width: 60px;
height: 20px;
background-color: #EEEEEF;
color: #2D2D2D;
text-align: center;
line-height: 20px;
margin-top: 5px;
font-size: 12px;
}
.score_Num {
display: inline-block;
position: relative;
top: -26px;
}
</style>
<template>
<div class="scoreSetForm">
<div class="scoreRemind" style="margin-bottom:20px;">
<div class="scoreTitle">
<i class="iconfont icon-tishi" style="position:relative;top:1px;"></i>
系统按照OKR规则默认采用0-1(0.1,0.2,0.3.....)的分数制度,若采用新的分数制度,必须满足0-1规则。否则,无法保存规则信息
</div>
<div>
<q-btn color="accent" size="sm" class="q-mr-md" icon="add" label="新增分数规则" @click="addScoreRull(null)" />
</div>
</div>
<div class="rule_list" v-for="(item,index) in dataList" :key="index">
<div class="scoreRemind score_Top">
<div class="score_Tname">{{item.Name}}</div>
<div class="score_IconList">
<span><i class="iconfont icon-dagou"></i>默认</span>
<span><i class="iconfont icon-edit" @click="addScoreRull(item)"></i>编辑</span>
<span><i class="iconfont icon-shanchu"></i>删除</span>
</div>
</div>
<div class="rule_InnerList">
<div class="rule_Item" v-for="(subItem,subIndex) in item.DetailList" :key="subIndex">
<div class="score_Num" :style="{'color':subItem.Color}">分数{{subIndex+1}}</div>
<div style="display:inline-block;">
<div :style="{'color':subItem.Color}">{{subItem.Name}}</div>
<div class="rule_comback">{{subItem.ScoreMin}}-{{subItem.ScoreMax}}</div>
</div>
</div>
</div>
</div>
<scoreset-form v-if="isShowScoreSet" :save-obj="scoreObj" @close="closeScoreForm" @success="refreshPage">
</scoreset-form>
</div>
</template>
<script>
import {
GetOKRScoreConfigPageList
} from '../../api/okr/index';
import scoresetForm from '../../components/okr/scoreset-form';
export default {
meta: {
title: ""
},
components: {
scoresetForm
},
data() {
return {
msg: {
PageIndex: 1,
PageSize: 12,
Name: ''
},
isShowScoreSet: false,
scoreObj: {},
dataList: [],
}
},
mounted() {
this.getList();
},
methods: {
//获取okr配置信息
getList() {
GetOKRScoreConfigPageList(this.msg).then(res => {
console.log(res, '数据');
if (res.Code == 1) {
this.dataList = res.Data.PageData;
}
})
},
//新增分数规则
addScoreRull(obj) {
if(obj){
this.scoreObj=obj;
}else{
this.scoreObj=null;
}
this.isShowScoreSet=true;
},
// //关闭流程设置
closeScoreForm() {
this.isShowScoreSet = false;
},
refreshPage() {
this.getList();
},
}
}
</script>
<style>
.scoreForm_List{
width:100%;
min-height:80px;
background-color: #F7F7F7;
padding:15px;
}
.score_MyNum{
margin-bottom:10px;
}
.addScoreBtn{
width:100%;
height:40px;
border:1px dashed #2961FE;
text-align: center;
line-height: 40px;
margin-top:20px;
color:#2961FE;
cursor: pointer;
}
</style>
<template>
<q-dialog v-model="persistent" persistent content-class="bg-grey-1" transition-show="scale" transition-hide="scale">
<q-card style="width: 700px;max-width:700px;">
<q-card-section>
<div class="text-h6">{{(saveObj&&saveObj.Id>0)?"修改分数规则":"新增分数规则"}}</div>
</q-card-section>
<q-card-section class="q-pt-none scroll" style="max-height: 70vh">
<div class="row wrap">
<div class="col-12">
<q-input filled stack-label maxlength="20" :dense="false" v-model="msg.Name" ref="Name"
class="col-12 q-pb-lg" label="规则名称" :rules="[val => !!val || '请填写规则名称']" />
</div>
<div class="col-12">
<div class="scoreForm_List" v-for="(item,index) in msg.DetailList" :key="index">
<div class="score_MyNum">分数1:</div>
<div>
<el-input style="width:300px;display:inline-block;" v-model="item.Name" placeholder="分数名称"></el-input>
<el-input style="width:100px;display:inline-block;margin-left:20px;" v-model="item.ScoreMin" placeholder="最小分数"></el-input>
<el-input style="width:100px;display:inline-block;margin-left:20px;" v-model="item.ScoreMax" placeholder="最大分数"></el-input>
<el-select :ref="'colorSelect'+index" placeholder="" v-model="item.Color" style="width: 70px;display:inline-block;margin-left:20px;" @change="handleChange(item.Color,index)">
<el-option
v-for="item in colorList"
:key="item"
label=" "
:value="item"
v-html="'<div style=background-color:'+ item+';width:' +'25px'+';height:'+'25px'+';border-radius:'+'50%'+'></div>'">
</el-option>
</el-select>
</div>
</div>
</div>
<div class="addScoreBtn">+新增分数</div>
</div>
</q-card-section>
<q-card-actions align="right" class="bg-white">
<q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="closeScoreForm" />
<q-btn label="保存" color="accent q-px-md" style="font-weight:400 !important" @click="saveScore" />
</q-card-actions>
</q-card>
</q-dialog>
</template>
<script>
import {
SetOKRScoreConfigInfo
} from '../../api/okr/index'
export default {
props: {
saveObj: {
type: Object,
default: null
}
},
data() {
return {
msg:{
Id:0,
Name:'', //规则名称
DetailList:[{
Name:'', //分数名称
ScoreMin:'', //最小分数
ScoreMax:'', //最大分数
Color:'' //颜色
}],
},
myColor:'',
colorList:["#FFC0CB", "#DB7093", "#FF1493", "#DC143C"],
persistent:true
}
},
computed: {},
created() {
// if (this.color && this.color.length > 0) {
// this.myColor = this.color;
// this.setSelectColor(this.color)
// }
},
mounted() {
console.log(this.saveObj,'saveObj');
},
methods: {
//设置颜色选择框中颜色
setSelectColor(color,index) {
//通过操作dom节点改变样式
console.log(color,'color');
this.$nextTick(() => {
console.log(this.$refs.colorSelect0,'colorSelect');
let dom = this.$refs.colorSelect0;
console.log(dom,'domm');
if (dom) {
console.log(dom.$el,'eleleleleelele');
dom = dom.$el.children[0];
let inputDom = dom.querySelectorAll(".el-input__inner");
let icon = dom.querySelectorAll(".el-input__icon");
inputDom[0].style["background-color"] = color;
icon[0].style["color"] = "black";
}
})
},
//关闭天窗
closeScoreForm(){
this.$emit('close');
this.persistent=false;
},
handleChange(val,index) {
this.setSelectColor(val,index);
//触发update事件更新父组件绑定值
this.$emit('update', val);
},
//保存
saveScore(){
}
},
}
</script>
......@@ -13,12 +13,14 @@
<ruleset-form v-if="tabCheck=='first'"></ruleset-form>
<baseset-form v-if="tabCheck=='second'"></baseset-form>
<remind-form v-if="tabCheck=='third'"></remind-form>
<score-form v-if="tabCheck=='fourth'"></score-form>
</div>
</template>
<script>
import rulesetForm from '../../components/okr/ruleset-form';
import basesetForm from '../../components/okr/baseset-form';
import remindForm from '../../components/okr/remind-form';
import scoreForm from '../../components/okr/score-form';
export default {
meta: {
title: "OKR设置"
......@@ -26,7 +28,8 @@
components: {
rulesetForm,
basesetForm,
remindForm
remindForm,
scoreForm
},
data() {
return {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment