哥哥玩剑魂呢 3 years ago
parent
commit
10d202ff11

+ 1 - 1
src/api/axios.js

@@ -9,7 +9,7 @@ import qs from 'qs'
 const service = axios.create({
 	baseURL: process.env.VUE_APP_BASE_API, 
 	// baseURL:'https://ding.insys.g107.com/',
-	timeout: 2000,
+	timeout: 20000,
 	headers: {
 		'Content-Type': 'application/x-www-form-urlencoded',
 	},

+ 2 - 22
src/components/applicationIntegrationPopup.vue

@@ -32,8 +32,7 @@
 								</span>
 							</el-dialog>
 						</el-form-item>
-
-						<!-- <el-form-item label="指定规则"><el-switch v-model="item.rule_switch" @change="switchChange(index, item.rule_switch)"></el-switch></el-form-item>
+						<el-form-item label="指定规则"><el-switch v-model="item.rule_switch" @change="switchChange(index, item.rule_switch)" :disabled="ruleOnoff"></el-switch></el-form-item>
 						<el-form-item
 							label="选择规则"
 							v-if="item.rule_switch"
@@ -51,28 +50,9 @@
 								clearable
 								:props="{ children: 'child', label: 'name', value: 'id' }"
 							></el-cascader>
-						</el-form-item> -->
-						<el-form-item label="指定规则"><el-switch v-model="ruleOnoff" disabled></el-switch></el-form-item>
-						<el-form-item
-							label="选择规则"
-							v-if="ruleOnoff"
-							:prop="'items.' + index + '.rule_item_list_value'"
-							:rules="[{ required: true, message: '请选择规则', trigger: 'change' }]"
-						>
-							<el-cascader
-								v-model="item.rule_item_list_value"
-								ref="ruleItem"
-								:popper-class="'itemClass'"
-								:options="rule_item_list"
-								@change="ruleItemChange"
-								:show-all-levels="false"
-								filterable
-								clearable
-								:props="{ children: 'child', label: 'name', value: 'id' }"
-							></el-cascader>
 						</el-form-item>
 
-						<el-form-item v-if="ruleOnoff && item.rule_id">
+						<el-form-item v-if="item.rule_switch && item.rule_id">
 							<div style="line-height: 24px;" v-show="item.rule_item_details.range_type == 1">
 								{{ item.rule_item_details.min_point }}
 								<span class="blue">{{ $getTypsName(item.rule_item_details.pt_id) }}</span>

+ 2 - 42
src/components/bonusPointsPopup.vue

@@ -18,8 +18,8 @@
 							<span style="line-height: 36px;">录入明细({{ index + 1 }})</span>
 							<el-button type="text" class="fr" v-show="index > 0 || dialogData.items.length > 1" @click="delItem(index)">删除</el-button>
 						</div>
-						<!-- <el-form-item label="指定规则">
-							<el-switch @change="switchChange(index, item.rule_switch)" v-model="item.rule_switch"></el-switch>
+						<el-form-item label="指定规则">
+							<el-switch :disabled="ruleOnoff"  @change="switchChange(index, item.rule_switch)" v-model="item.rule_switch"></el-switch>
 						</el-form-item>
 						<el-form-item
 							class="test_cascader_id"
@@ -57,46 +57,6 @@
 								:show-all-levels="false"
 								:props="{ children: 'child', label: 'name', value: 'id' }"
 							></el-cascader>
-						</el-form-item> -->
-						<el-form-item label="指定规则">
-							<el-switch disabled v-model="ruleOnoff"></el-switch>
-						</el-form-item>
-						<el-form-item
-							class="test_cascader_id"
-							label="选择分类"
-							v-if="!ruleOnoff"
-							:prop="'items.' + index + '.rule_list_value'"
-							:rules="[{ required: true, message: '请选择规则分类', trigger: 'blur' }]"
-						>
-							<el-cascader
-								v-model="item.rule_list_value"
-								ref="ruleCascader"
-								:popper-class="'ruleClass'"
-								filterable
-								clearable
-								:options="rule_list"
-								@change="ruleChange"
-								:props="{ children: 'child', label: 'name', value: 'id', checkStrictly: true }"
-							></el-cascader>
-						</el-form-item>
-
-						<el-form-item
-							label="选择规则"
-							v-if="ruleOnoff"
-							:prop="'items.' + index + '.rule_item_list_value'"
-							:rules="[{ required: true, message: '请选择规则', trigger: 'blur' }]"
-						>
-							<el-cascader
-								v-model="item.rule_item_list_value"
-								ref="ruleItem"
-								:popper-class="'itemClass'"
-								filterable
-								clearable
-								:options="rule_item_list"
-								@change="ruleItemChange"
-								:show-all-levels="false"
-								:props="{ children: 'child', label: 'name', value: 'id' }"
-							></el-cascader>
 						</el-form-item>
 
 						<el-form-item>

+ 19 - 0
src/views/abPoint/award_punish.vue

@@ -209,6 +209,25 @@
 					</el-col>
 				</el-row>
 
+
+				<div v-show="detail_info.rule_id">
+					<p class="row_title">规则依据</p>
+					<el-row :gutter="10">
+						<el-col :span="4">规则分类</el-col>
+						<el-col :span="19">{{ detail_info.rule_name }}</el-col>
+					</el-row>
+					<el-row v-if="detail_info.item_name">
+						<el-col :span="4">积分规则</el-col>
+						<el-col :span="19">{{ detail_info.item_name }}</el-col>
+					</el-row>
+					<el-row v-if="detail_info.item_id > 0">
+						<el-col :span="4">积分</el-col>
+						<el-col :span="19" v-show="detail_info.item_min_point == detail_info.item_max_point">{{ detail_info.item_min_point }}</el-col>
+						<el-col :span="19" v-show="detail_info.item_min_point != detail_info.item_max_point">
+							{{ detail_info.item_min_point }} ~ {{ detail_info.item_max_point }}
+						</el-col>
+					</el-row>
+				</div>
 				<div v-show="detail_info.process">
 					<Steps :process="detail_info.process"></Steps>
 				</div>

+ 7 - 4
src/views/ranking/dept_rank.vue

@@ -366,19 +366,22 @@ export default {
 						}
 					}
 				],
-				//限制只能选一年的范围
                 onPick: (obj) => {
-                    this.pickerMinDate = new Date(obj.minDate).getTime();
+					if(!this.dialogVisible){
+                   	  	this.pickerMinDate = new Date(obj.minDate).getTime();
+					}
                 },
 				disabledDate : time => {
-                    if (this.pickerMinDate) {
-                        const day1 =  366 * 24 * 3600 * 1000
+                    if (this.pickerMinDate && !this.dialogVisible) {
+                        const day1 =  30 * 24 * 3600 * 1000//限制只能选一个月的范围区间
                         let maxTime = this.pickerMinDate + day1
                         let minTime = this.pickerMinDate - day1
                         return time.getTime() > maxTime || time.getTime()<minTime
                     }
 				}
 			},
+			pickerDisabledDate: {
+			},
 		};
 	},
 	watch: {

+ 74 - 28
src/views/ranking/individual_statistics.vue

@@ -3,7 +3,7 @@
 		<el-row style="min-width:1160px;">
 			<div class="flex-box-ce">
 				<div>
-					<el-select v-model="select_employee_id" filterable placeholder="请输入或选择人员">
+					<el-select v-model="select_employee_id" @change="selectEmployeeChange" filterable placeholder="请输入或选择人员">
 						<el-option v-for="item in employee_map" :key="item.id" :label="item.name" :value="item.id"></el-option>
 					</el-select>
 				</div>
@@ -277,7 +277,7 @@ export default {
 			monthORyear: '2',
 
 			//选择人员
-			select_employee_id: this.$getUserData().name,
+			select_employee_id: '',
 			employee_map: '', //获取人员列表
 
 			dept_list: '',
@@ -360,14 +360,30 @@ export default {
 			this.monthlyIntegral();
 		},
 
-		select_employee_id(val) {
-			this.formData.employee_id = val;
-			this.executiveFunction(true);
-		}
+		// select_employee_id(val) {
+		// 	this.formData.employee_id = val;
+		// 	this.executiveFunction(true);
+		// }
 	},
 	mounted() {
 		window.addEventListener('resize', this.selfAdaption);
-		this.getEmployee();
+		this.getEmployee().then(res =>{
+			// if (this.$getUserData()) {
+			// 	this.personnel = this.$getUserData();
+			// 	let dept_li = this.personnel.employee_detail.dept_list;
+			// 	let dept_ = '';
+			// 	for (let i in dept_li) {
+			// 		dept_ += dept_li[i].dept_name + ' ';
+			// 	}
+			// 	this.dept_list = dept_;
+			// } else {
+			// 	this.personnelDetails(); //获取人员详情
+			// }
+			this.formData.month = this.$moment().format('YYYY-MM');
+			this.executiveFunction();
+		}).catch((err) =>{
+			console.log(err)
+		});
 		// if(JSON.parse(localStorage.getItem("SET_EMPLOYEE_MAP"))){
 		//   this.employee_map = JSON.parse(localStorage.getItem("SET_EMPLOYEE_MAP"))
 		// }else{
@@ -388,36 +404,66 @@ export default {
 		// } else {
 		//   this.personnelDetails(); //获取人员详情
 		// }
-		if (this.$getUserData()) {
-			this.personnel = this.$getUserData();
-			let dept_li = this.personnel.employee_detail.dept_list;
-			let dept_ = '';
-			for (let i in dept_li) {
-				dept_ += dept_li[i].dept_name + ' ';
-			}
-			this.dept_list = dept_;
-		} else {
-			this.personnelDetails(); //获取人员详情
-		}
-		this.formData.month = this.$moment().format('YYYY-MM');
-		this.executiveFunction();
 	},
 	methods: {
+		selectEmployeeChange(val){
+			console.log(val)
+			this.formData.employee_id = val;
+			this.executiveFunction(true);
+		},
 		getType(id) {
 			return this.$getTyps(id).name;
 		},
 
 		//获取员工列表
 		getEmployee() {
-			this.$axios('get', '/api/employee/index', { dept_id: 0, keywords: '', page: 1, page_size: 3000, is_official: 1 })
-				.then(res => {
-					let list = res.data.data.list;
-					this.employee_map = list;
-					// for(let i in list){
+			return new Promise((resolve, reject) =>{
+				this.personnelMessage = true;
+				this.$axios('get', '/api/employee/index', { dept_id: 0, keywords: '', page: 1, page_size: 3000, is_official: 1 })
+					.then(res => {
+						let list = res.data.data.list;
+						this.employee_map = list.filter(x => x.is_creator != 1)
+						if(this.employee_map.length == 0){
+							reject('err')
+							return
+						}
+						if(this.$getUserData().is_creator == 1){
+							this.select_employee_id = this.employee_map[0].id
+							let employee = this.employee_map[0]
+							this.formData.employee_id = employee.id
+							this.personnel = employee
+							let dept_li = this.personnel.employee_detail.dept_list;
+							let dept_ = '';
+							for (let i in dept_li) {
+								dept_ += dept_li[i].dept_name + ' ';
+							}
+							this.dept_list = dept_;
+						}else{
+							if (this.$getUserData()) {
+								this.select_employee_id = this.$getUserData().name
+								this.personnel = this.$getUserData();
+								let dept_li = this.personnel.employee_detail.dept_list;
+								let dept_ = '';
+								for (let i in dept_li) {
+									dept_ += dept_li[i].dept_name + ' ';
+								}
+								this.dept_list = dept_;
+							} else {
+								this.personnelDetails(); //获取人员详情
+							}
+						}
+						// this.employee_map = list;
+						// for(let i in list){
 
-					// }
-				})
-				.finally(err => {});
+						// }
+
+						
+					})
+					.finally(err => {
+						this.personnelMessage = false;
+						resolve('res')
+					});
+			})
 		},
 
 		//echarts自适应

+ 8 - 0
src/views/set/framework.vue

@@ -412,6 +412,12 @@ export default {
 			})
 		},
 		dirSup_confirm(date){
+			console.log(date)
+			if(date.employee.length == 0) {
+				this.$message.warning('请选择上级')
+				this.scope_loading = false
+				return
+			}
 			let data = {
 				employee_ids: [this.newId],
 				superior_id: date.employee[0].id
@@ -531,6 +537,8 @@ export default {
 				let arr = []
 				arr.push(this.dirSupervisor)
 				this.selected_dirSup.employee = arr
+			}else{
+				this.selected_dirSup.employee = []
 			}
 			this.dirSupScope_show = true
 		},