Bladeren bron

1.5.3版本上线

347617796@qq.com 4 jaren geleden
bovenliggende
commit
6e8181ca7e

+ 3 - 1
src/assets/css/reset.css

@@ -19,7 +19,9 @@ legend { color:#000; }
 fieldset, img { border:0; }
 button, input, select, textarea { font-size:100%; }
 table { border-collapse:collapse; border-spacing:0; }
-
+.el-form-item__content{
+	line-height:36px !important;
+}
 
 /* 盒子模型 */
 .flex-box {

+ 82 - 56
src/components/examinePopup.vue

@@ -113,60 +113,56 @@
 
 		<el-dialog title="审批通过" :visible.sync="adoptShow" width="571px" :before-close="adoptClose">
 			<el-form :model="adoptForm" ref="adoptForm" label-width="80px" v-loading="determinedBy">
-				<el-form-item label="指定规则" v-if="!detail_info.rule_id && !detail_info.item_id && detail_info.source_type != 4">
-					<el-switch v-model="adoptForm.ruleOrItem"></el-switch>
-				</el-form-item>
-				<el-form-item
-					label="分类"
-					v-if="detail_info.source_type != 4"
-					v-show="(detail_info.rule_id && !detail_info.item_id) || !adoptForm.ruleOrItem"
-					prop="rule_id"
-					:rules="[{ required: true, message: '请选择规则分类', trigger: 'blur' }]"
-				>
-					<el-cascader
-						:disabled="!!detail_info.rule_id || !!detail_info.item_id"
-						class="date-picker-width"
-						v-model="adoptForm.rule_id"
-						:options="ruleTrees"
-						:props="{ value: 'id', label: 'name', children: 'child' }"
-						@change="ruleChange"
-						ref="rule"
-						clearable
-						filterable
-						change-on-select
-						placeholder="请选择规则分类"
-					></el-cascader>
-				</el-form-item>
-				<el-form-item label="规则内容" v-if="(!!detail_info.rule_id && detail_info.item_name) || (!!detail_info.item_id && detail_info.item_name)">
-					<span>{{ detail_info.item_name }}</span>
-				</el-form-item>
-				<el-form-item
-					label="规则"
-					v-if="detail_info.source_type != 4"
-					v-show="(detail_info.rule_id && detail_info.item) || adoptForm.ruleOrItem"
-					prop="item_id"
-					:rules="[{ required: true, message: '请选择规则细则', trigger: 'blur' }]"
-				>
-					<el-cascader
-						:disabled="!!detail_info.rule_id || !!detail_info.item_id"
-						class="date-picker-width"
-						:popper-class="'itemClass'"
-						v-model="adoptForm.item_id"
-						:options="item_list"
-						:props="{
-							value: 'id',
-							label: 'name',
-							children: 'child',
-							emitPath: 'false'
-						}"
-						:show-all-levels="false"
-						ref="ruleItem"
-						filterable
-						clearable
-						@change="cascaderItemIdChange"
-						placeholder="请选择规则细则"
-					></el-cascader>
-				</el-form-item>
+				<template v-if="detail_info.source_type != 4">
+					<el-form-item label="指定规则" v-if="!detail_info.rule_id && !detail_info.item_id">
+						<el-switch v-model="adoptForm.ruleOrItem"></el-switch>
+					</el-form-item>
+					<el-form-item
+						label="分类"
+						v-show="(detail_info.rule_id && !detail_info.item_id) || !adoptForm.ruleOrItem"
+						prop="rule_id"
+						:rules="[{ required: true, message: '请选择规则分类', trigger: 'blur' }]"
+					>
+						<el-cascader
+							:disabled="guol(detail_info)"
+							class="date-picker-width"
+							v-model="adoptForm.rule_id"
+							:options="ruleTrees"
+							:props="{ value: 'id', label: 'name', children: 'child' }"
+							@change="ruleChange"
+							ref="rule"
+							clearable
+							filterable
+							change-on-select
+							placeholder="请选择规则分类"
+						></el-cascader>
+					</el-form-item>
+					<el-form-item label="规则内容" v-if="(detail_info.rule_id && detail_info.item_name) || (detail_info.item_id && detail_info.item_name)">
+						<span>{{ detail_info.item_name }}</span>
+					</el-form-item>
+					<el-form-item
+						label="规则"
+						v-show="(detail_info.rule_id && detail_info.item) || adoptForm.ruleOrItem"
+						prop="item_id"
+						:rules="[{ required: true, message: '请选择规则细则', trigger: 'blur' }]"
+					>
+						<el-cascader
+							:disabled="guol(detail_info)"
+							:popper-class="'itemClass'"
+							v-model="adoptForm.item_id"
+							:options="item_list"
+							:props="{value: 'id',label: 'name',children: 'child'}"
+							ref="ruleItem"
+							clearable
+							filterable
+							:show-all-levels="false"
+							@change="cascaderItemIdChange"
+							placeholder="请选择规则细则"
+						></el-cascader>
+					</el-form-item>
+					
+					
+				</template>
 				<el-form-item label="规则积分" v-show="detail_info.item_id">
 					{{
 						detail_info.item_range_type == 1
@@ -313,7 +309,8 @@ export default {
 			manager: '',
 			employee_not_select: [],
 			manager_selected: { dept: [], employee: [] },
-			show_employee_selector: false
+			show_employee_selector: false,
+			flatteningIntegralRules:{}
 		};
 	},
 	props: {
@@ -363,6 +360,13 @@ export default {
 		this.employee_lists = this.$getUserData().employee_detail.superior_list;
 	},
 	methods: {
+		guol(data){
+			if(data.rule_id || data.item_id){
+				return true
+			}else{
+				return false
+			}
+		},
 		submitApproval(name) {
 			this.$refs[name].confirm(); //调用组件的confirm();
 		},
@@ -372,7 +376,15 @@ export default {
 		},
 		cascaderItemIdChange(val) {
 			if(val.length>0){
-				let datas = this.$refs['ruleItem'].getCheckedNodes()[0].data;
+				let datas = null;
+				this.flatteningIntegralRules.forEach(element => {
+					if (element.id == val[val.length - 1]) {
+						datas = { ...element };
+					}
+				});
+				console.log(datas);
+				// return
+				// let datas = this.$refs['ruleItem'].getCheckedNodes()[0].data;
 				if (datas.range_type == 1) {
 					this.forbiddenInputNum = true;
 				} else {
@@ -441,6 +453,19 @@ export default {
 				this.$refs.ruleItem.dropDownVisible = false;
 			});
 		},
+		getItemDetail(arr) {
+			let result = [];
+			for (const item of arr) {
+				var res = JSON.parse(JSON.stringify(item)); // 先克隆一份数据作为第一层级的填充
+				delete res['child'];
+				result.push(res);
+				if (item.child instanceof Array && item.child.length > 0) {
+					// 如果当前child为数组并且长度大于0,才可进入getItemDetail()方法
+					result = result.concat(this.getItemDetail(item.child));
+				}
+			}
+			return result;
+		},
 		// 获取规则细则树
 		getRuleItemTree() {
 			let self = this;
@@ -451,6 +476,7 @@ export default {
 			this.$axios('get', '/api/integral/rule/trees', params, 'v2').then(res => {
 				if (res.data.code == 1) {
 					self.item_list = res.data.data.tree;
+					this.flatteningIntegralRules = this.getItemDetail(self.item_list);
 				} else {
 					self.$message.error(res.data.data.msg);
 				}

+ 12 - 4
src/views/common/below/rewardTask.vue

@@ -1,7 +1,7 @@
 <template>
 	<div>
 		<!-- 悬赏任务弹窗 -->
-		<el-dialog :title="showTitle" :visible.sync="dialogVisible" :close-on-click-modal="false" :before-close="closeDialog" width="600px">
+		<el-dialog :title="showTitle" :visible.sync="dialogVisible" :close-on-click-modal="false" :before-close="closeDialog" width="600px" top="5%">
 			<div v-loading="forTheTaskLoading">
 				<el-form :model="formData" ref="formData" label-width="80px">
 					<el-form-item
@@ -9,7 +9,15 @@
 						prop="task_name"
 						:rules="[{ required: true, message: '请填写任务内容', trigger: 'blur' }, { min: 3, max: 20, message: '长度在 3 到 20 个字符', trigger: 'blur' }]"
 					>
-						<el-input type="textarea" rows="2" v-model="formData.task_name" placeholder="请输入任务内容(限20字)" class="reward_textarea"></el-input>
+						<el-input
+							type="textarea"
+							rows="3"
+							maxlength="20"
+							show-word-limit
+							v-model="formData.task_name"
+							placeholder="请输入任务内容(限20字)"
+							class="reward_textarea"
+						></el-input>
 					</el-form-item>
 
 					<el-form-item label="任务积分" prop="base_point" :rules="[{ required: true, message: '请填写任务积分', trigger: 'blur' }]">
@@ -73,8 +81,8 @@
 						</el-select>
 					</el-form-item>
 
-					<el-form-item label="任务备注" prop="task_remark" :rules="[{ max: 100, message: '长度不能超过 100 个字', trigger: 'blur' }]">
-						<el-input type="textarea" :rows="5" v-model="formData.task_remark" placeholder="请输入任务内容(限100字)"></el-input>
+					<el-form-item label="任务备注" prop="task_remark" :rules="[{ max: 300, message: '长度不能超过 300 个字', trigger: 'blur' }]">
+						<el-input type="textarea" :rows="5" v-model="formData.task_remark" maxlength="300" show-word-limit placeholder="请输入任务内容(限300字)"></el-input>
 					</el-form-item>
 					<el-form-item label="重复周期" prop="task_cycle">
 						<el-select v-model="formData.task_cycle" placeholder="请选择重复周期">

+ 4 - 4
src/views/common/below/rewardTaskAmend.vue

@@ -1,7 +1,7 @@
 <template>
 	<div>
 		<!-- 悬赏任务弹窗 -->
-		<el-dialog :title="showTitle" :visible.sync="dialogVisible" :close-on-click-modal="false" :before-close="closeDialog" width="600px">
+		<el-dialog :title="showTitle" :visible.sync="dialogVisible" :close-on-click-modal="false" :before-close="closeDialog" width="600px" top="5%">
 			<div v-loading="forTheTaskLoading">
 				<el-form :model="formData" ref="formData" label-width="80px">
 					<el-form-item
@@ -9,7 +9,7 @@
 						prop="task_name"
 						:rules="[{ required: true, message: '请填写任务内容', trigger: 'blur' }, { min: 3, max: 20, message: '长度在 3 到 20 个字符', trigger: 'blur' }]"
 					>
-						<el-input type="textarea" rows="2" v-model="formData.task_name" placeholder="请输入任务内容(限20字)" class="reward_textarea"></el-input>
+						<el-input type="textarea" rows="3" maxlength="20" show-word-limit v-model="formData.task_name" placeholder="请输入任务内容(限20字)" class="reward_textarea"></el-input>
 					</el-form-item>
 					<el-form-item label="任务积分" prop="base_point" :rules="[{ required: true, message: '请填写任务积分', trigger: 'blur' }]">
 						<el-input-number v-model="formData.base_point" :min="1"></el-input-number>
@@ -74,8 +74,8 @@
 						</el-select>
 					</el-form-item>
 
-					<el-form-item label="任务描述" prop="task_remark" :rules="[{ max: 100, message: '长度不能超过 100 个字', trigger: 'blur' }]">
-						<el-input type="textarea" :rows="5" v-model="formData.task_remark" placeholder="请输入任务内容(限100字)"></el-input>
+					<el-form-item label="任务描述" prop="task_remark" :rules="[{ max: 300, message: '长度不能超过 300 个字', trigger: 'blur' }]">
+						<el-input type="textarea" :rows="5" v-model="formData.task_remark" maxlength="300" show-word-limit placeholder="请输入任务内容(限300字)"></el-input>
 					</el-form-item>
 					<el-form-item label="谁可以看" prop="dept_ids">
 						<el-cascader

+ 3 - 3
src/views/common/below/temporaryTask.vue

@@ -1,7 +1,7 @@
 <template>
 	<div>
 		<!-- 临时任务弹窗 -->
-		<el-dialog :title="showTitle" :visible.sync="dialogVisible" :close-on-click-modal="false" :before-close="closeDialog" width="600px">
+		<el-dialog :title="showTitle" :visible.sync="dialogVisible" :close-on-click-modal="false" :before-close="closeDialog" width="600px" top="5%">
 			<div>
 				<el-form :model="formData" ref="formData" label-width="80px" v-loading="taskload">
 					<el-form-item
@@ -9,7 +9,7 @@
 						prop="task_name"
 						:rules="[{ required: true, message: '请填写任务内容', trigger: 'blur' }, { min: 3, max: 20, message: '长度在 3 到 20 个字符', trigger: 'blur' }]"
 					>
-						<el-input type="textarea" rows="2" v-model="formData.task_name" placeholder="请输入任务内容(限20字)"></el-input>
+						<el-input type="textarea" rows="3" maxlength="20" show-word-limit v-model="formData.task_name" placeholder="请输入任务内容(限20字)"></el-input>
 					</el-form-item>
 
 					<el-form-item label="任务积分" prop="base_point" :rules="[{ required: true, message: '请填写任务积分', trigger: 'change' }]">
@@ -100,7 +100,7 @@
 					</el-form-item>
 
 					<el-form-item label="任务备注" prop="task_remark" :rules="[{ max: 300, message: '长度不能超过 300 个字', trigger: 'blur' }]">
-						<el-input type="textarea" :rows="5" v-model="formData.task_remark" placeholder="请输入任务内容(限300字)"></el-input>
+						<el-input type="textarea" :rows="5" maxlength="300" show-word-limit v-model="formData.task_remark" placeholder="请输入任务内容(限300字)"></el-input>
 					</el-form-item>
 					<el-form-item label="重复周期" prop="task_cycle">
 						<el-select v-model="formData.task_cycle" placeholder="请选择重复周期">

+ 3 - 3
src/views/common/below/temporaryTaskAmend.vue

@@ -1,7 +1,7 @@
 <template>
 	<div>
 		<!-- 临时任务弹窗 -->
-		<el-dialog :title="showTitle" :visible.sync="dialogVisible" :close-on-click-modal="false" :before-close="closeDialog" width="600px">
+		<el-dialog :title="showTitle" :visible.sync="dialogVisible" :close-on-click-modal="false" :before-close="closeDialog" width="600px" top="5%">
 			<div>
 				<el-form :model="formData" ref="formData" label-width="80px" v-loading="taskload">
 					<el-form-item
@@ -9,7 +9,7 @@
 						prop="task_name"
 						:rules="[{ required: true, message: '请填写任务内容', trigger: 'blur' }, { min: 3, max: 20, message: '长度在 3 到 20 个字符', trigger: 'blur' }]"
 					>
-						<el-input type="textarea" rows="2" v-model="formData.task_name" placeholder="请输入任务内容(限20字)"></el-input>
+						<el-input type="textarea" rows="3" maxlength="20" show-word-limit v-model="formData.task_name" placeholder="请输入任务内容(限20字)"></el-input>
 					</el-form-item>
 
 					<el-form-item label="任务积分" prop="base_point" :rules="[{ required: true, message: '请填写任务积分', trigger: 'change' }]">
@@ -97,7 +97,7 @@
 					</el-form-item>
 
 					<el-form-item label="任务描述" prop="task_remark" :rules="[{ max: 300, message: '长度不能超过 300 个字', trigger: 'blur' }]">
-						<el-input type="textarea" :rows="5" v-model="formData.task_remark" placeholder="请输入任务内容(限300字)"></el-input>
+						<el-input type="textarea" :rows="5" maxlength="300" show-word-limit v-model="formData.task_remark" placeholder="请输入任务内容(限300字)"></el-input>
 					</el-form-item>
 
 					<div style="margin-left: 80px; margin-bottom: 8px;">以天为单位,每逾期一天扣分</div>

+ 2 - 2
src/views/ranking/dept_rank.vue

@@ -69,7 +69,7 @@
 						v-model="rule_id"
 						:options="rule_trees"
 						:props="props2"
-						ref="rule"
+						ref="rule_id"
 						clearable
 						placeholder="请选择规则分类"
 					></el-cascader>
@@ -330,12 +330,12 @@ export default {
 				this.formData.rule_id='';
 				return false
 			}
-			
 			if(val.length==1){
 				this.formData.rule_id=(val).toString()
 			}else{
 				this.formData.rule_id=(val[val.length-1]).toString()
 			}
+			this.$refs.rule_id.dropDownVisible = false;
 		}
 	},
 	components: { season },

+ 3 - 1
src/views/set/log.vue

@@ -37,7 +37,9 @@
 					</template>
 				</el-table-column>
 				<template slot="empty">
-					<noData></noData>
+					<noData :isSolt="true">
+						<div>您当前没有日志模板,去添加<span style="cursor: pointer;margin-left: 10px;" @click="add()" class="blue">添加</span></div>
+					</noData>
 				</template>
 			</el-table>
 		</div>