瀏覽代碼

钉钉PC第三期1

347617796@qq.com 4 年之前
父節點
當前提交
15deee60cc
共有 4 個文件被更改,包括 123 次插入59 次删除
  1. 3 3
      src/main.js
  2. 37 1
      src/views/abPoint/apply_list.vue
  3. 69 4
      src/views/abPoint/award_punish.vue
  4. 14 51
      src/views/set/rule.vue

+ 3 - 3
src/main.js

@@ -19,9 +19,9 @@ import { getToken, setToken,getUserData,setUserData,getTyps,setTyps,getIsCreator
 import userImage from '@/components/UserImage'
 Vue.component('userImage', userImage)
 Vue.use(ElementUI);
-if (process.env.NODE_ENV === 'development') {
-  new VConsole()
-}
+// if (process.env.NODE_ENV === 'development') {
+//   new VConsole()
+// }
 
 Vue.prototype.$echarts = echarts
 Vue.prototype.$dd=dd;

+ 37 - 1
src/views/abPoint/apply_list.vue

@@ -215,6 +215,9 @@
 						</el-steps>
 					</div>
 				</div>
+				<div class="btn_danger flex-box flex-center-center" v-if="detail_info.applyor_id==userId&&detail_info.status==0&&detail_info.source_type==2">
+				  <el-button type="danger" class="danger" @click="revocation" :loading="cx_loading">撤销</el-button>
+				</div>
 			</div>
 		</el-drawer>
 
@@ -247,7 +250,10 @@ export default {
 			detail_info: {},
 
 			dialogVisible: false,
-			itemIndex: 0
+			itemIndex: 0,
+			selectId:'',
+			userId:'',
+			cx_loading:false
 		};
 	},
 	components: {
@@ -265,9 +271,32 @@ export default {
 		}
 	},
 	mounted() {
+		this.userId=this.$getUserData().id
 		this.get_list();
 	},
 	methods: {
+		// 撤销奖扣
+		revocation(){
+			var that=this;
+			this.$confirm('撤销此项数据将不可恢复,是否撤销?', '提示', {
+				  confirmButtonText: '确定',
+				  cancelButtonText: '取消',
+				  type: 'warning'
+				}).then(() => {
+					let data = {review_id: that.selectId};
+					that.cx_loading = true;
+					that.$axios('post', '/api/integral/review/destroy', data).then(res => {
+						if (res.data.code == 1) {
+							that.get_list()
+						} else {
+							that.$message.error(res.data.data.msg);
+						}
+					}).finally(() => {
+						that.cx_loading = false;
+						that.detailShow = false;
+					});
+				})
+		},
 		handleCurrentChange(val) {
 			this.formData.page = val;
 			this.get_list();
@@ -297,6 +326,7 @@ export default {
 				});
 		},
 		openDetail(item) {
+			this.selectId=item.id
 			let data = {
 				review_id: item.id
 			};
@@ -319,6 +349,12 @@ export default {
 </script>
 
 <style scoped lang="scss">
+	.btn_danger{
+		 margin-top: 20px;
+	}
+	.btn_danger .danger{
+		width: 120px;
+	}
 .box {
 	background-color: #ffffff;
 	padding: 20px;

+ 69 - 4
src/views/abPoint/award_punish.vue

@@ -185,6 +185,9 @@
 						</el-steps>
 					</div>
 				</div>
+				<div class="btn_danger flex-box flex-center-center" v-if="detail_info.process.length==1&&(detail_info.event_type==3||detail_info.event_type==4)">
+				  <el-button type="danger" class="danger" @click="revocation" :loading="cx_loading">撤销</el-button>
+				</div>
 			</div>
 		</el-drawer>
 
@@ -254,6 +257,9 @@
 						</el-steps>
 					</div>
 				</div>
+				<div class="btn_danger flex-box flex-center-center" v-if="detail_info.applyor_id==userId&&detail_info.status==0&&detail_info.source_type==3">
+				  <el-button type="danger" class="danger" @click="revocation2" :loading="cx_loading">撤销</el-button>
+				</div>
 			</div>
 		</el-drawer>
 
@@ -325,12 +331,16 @@ export default {
 
 			drawer: false,
 			detail_loading: false,
-			detail_info: {},
+			detail_info: {
+				process:[]
+			},
 			detailShow: false,
 
 			employee_name: JSON.parse(localStorage.getItem('SET_EMPLOYEE_MAP')),
 			fileList: [],
 			userId:'',
+			cx_loading:false,
+			selectId:'',//打开详情ID
 		};
 	},
 	components: {
@@ -357,6 +367,55 @@ export default {
 		}
 	},
 	methods: {
+		// 撤销待审批
+		revocation2(){
+			var that=this;
+			this.$confirm('撤销此项数据将不可恢复,是否撤销?', '提示', {
+				  confirmButtonText: '确定',
+				  cancelButtonText: '取消',
+				  type: 'warning'
+				}).then(() => {
+					let data = {
+						review_id: that.selectId,
+					};
+					that.cx_loading = true;
+					that.$axios('post', '/api/integral/review/destroy', data).then(res => {
+						if (res.data.code == 1) {
+							that.getData()
+						} else {
+							that.$message.error(res.data.data.msg);
+						}
+					}).finally(() => {
+						that.detailShow = false;
+						that.cx_loading = false;
+					});
+				})
+		},
+		// 撤销奖扣
+		revocation(){
+			var that=this;
+			this.$confirm('撤销此项数据将不可恢复,是否撤销?', '提示', {
+				  confirmButtonText: '确定',
+				  cancelButtonText: '取消',
+				  type: 'warning'
+				}).then(() => {
+					let data = {
+						target_id: that.selectId,
+						type:1
+					};
+					that.cx_loading = true;
+					that.$axios('post', '/api/integral/review/prize/destroy', data).then(res => {
+						if (res.data.code == 1) {
+							that.getData()
+						} else {
+							that.$message.error(res.data.data.msg);
+						}
+					}).finally(() => {
+						that.cx_loading = false;
+						that.drawer = false;
+					});
+				})
+		},
 		getEmployeeName(id) {
 			for (const key in this.employee_name) {
 				if (this.employee_name[key].id == id) {
@@ -366,6 +425,7 @@ export default {
 		},
 		open_detail1(item) {
 			this.detailShow = true;
+			this.selectId=item.id
 			let data = {
 				review_id: item.id
 			};
@@ -383,9 +443,8 @@ export default {
 		},
 		open_detail(item) {
 			this.drawer = true;
-			let data = {
-				event_id: item.id
-			};
+			let data = {event_id: item.id};
+			this.selectId=item.id
 			this.detail_loading = true;
 			this.$axios('get', '/api/integral/statistics/integral/info', data).then(res => {
 				if (res.data.code == 1) {
@@ -475,6 +534,12 @@ export default {
 </script>
 
 <style scoped lang="scss">
+ .btn_danger{
+	 margin-top: 20px;
+ }
+ .btn_danger .danger{
+ 	width: 120px;
+ }
 .box {
 	background-color: #ffffff;
 	padding: 20px;

+ 14 - 51
src/views/set/rule.vue

@@ -21,6 +21,7 @@
 						<el-button size="small" @click="del_item" type="danger" plain>批量删除</el-button>
 						<el-button size="small" @click="add_rule" type="primary">添加规则</el-button>
 						<el-button size="small" type="success" @click="import_rules_show = true" plain>导入规则</el-button>
+						<el-button size="small" type="success" @click="derivedRule" plain>导出规则</el-button>
 					</div>
 					<el-table stripe ref="multipleTable" :data="item_list" tooltip-effect="dark" @selection-change="handleSelectionChange" @row-click="editDetails" align="center">
 						<el-table-column type="selection" width="55"></el-table-column>
@@ -57,16 +58,6 @@
 				</div>
 			</div>
 		</div>
-		<!-- <el-dialog
-			width="280px"
-			@close="closeCode"
-			:visible.sync="innerVisible"
-			append-to-body>
-			<div class="paycode">
-				<div id="qrcode" ref="qrcode"></div>
-				<div @click.stop="downloadE">下载保存此二维码</div>
-			</div>
-		</el-dialog> -->
 		<el-dialog @close="closeCode" :visible.sync="innerVisible" width="444px" append-to-body>
 			<div style="border-radius: 15px;border: 1px solid #f1f1f1;padding: 10px; width: 346px;box-sizing: border-box;margin: 0 auto;">
 				<div id="qrcode" ref="qrcode"></div>
@@ -387,6 +378,11 @@ export default {
 		// },1000);
 	},
 	methods: {
+		//导出规则按钮
+		derivedRule(){
+		  let userData=this.$getUserData();
+		  window.open(process.env.VUE_APP_BASE_API+'/api/download/rule_item/item?employee_id='+userData.id)
+		},
 		downloadE() {
 			let rule_remark = '';
 			if (this.ruleDetails.remark.length > 10) {
@@ -567,7 +563,7 @@ export default {
 								.then(res => {
 									if (res.data.code == 1) {
 										self.$message.success(res.data.msg);
-										self.getData();
+										self.getData(true);
 										self.rule_close(form);
 									}
 								})
@@ -589,7 +585,7 @@ export default {
 							.then(res => {
 								if (res.data.code == 1) {
 									self.$message.success(res.data.msg);
-									self.getData();
+									self.getData(true);
 									self.rule_close(form);
 								}
 							})
@@ -608,8 +604,6 @@ export default {
 			let self = this;
 			self.$refs[form].validate(valid => {
 				if (valid) {
-					// self.rules_detail_form.min_point=self.rules_detail_form.min_point2;
-					// self.rules_detail_form.max_point=self.rules_detail_form.max_point2;
 					if (self.integral_select_name1 != '1' && self.rules_detail_form.min_point >= 0) {
 						self.rules_detail_form.min_point = '-' + self.rules_detail_form.min_point;
 					}
@@ -627,17 +621,7 @@ export default {
 						self.rules_detail_form.rule_id = self.rules_detail_form.rule_id[self.rules_detail_form.rule_id.length - 1];
 					}
 					if (parseFloat(self.rules_detail_form.min_point) > parseFloat(self.rules_detail_form.max_point)) {
-						this.$confirm(
-							'填写的规则积分是' +
-								self.rules_detail_form.min_point +
-								' ~ ' +
-								self.rules_detail_form.max_point +
-								',应该是 ' +
-								self.rules_detail_form.max_point +
-								' ~ ' +
-								self.rules_detail_form.min_point +
-								'吧?',
-							'提示',
+						this.$confirm('填写的规则积分是' +self.rules_detail_form.min_point +' ~ ' +self.rules_detail_form.max_point +',应该是 ' +self.rules_detail_form.max_point +' ~ ' +self.rules_detail_form.min_point +'吧?','提示',
 							{
 								confirmButtonText: '确定',
 								cancelButtonText: '取消',
@@ -660,7 +644,7 @@ export default {
 								.then(res => {
 									if (res.data.code == 1) {
 										self.$message.success(res.data.msg);
-										self.getData();
+										self.getData(true);
 										self.rule_close(form);
 									}
 								})
@@ -684,7 +668,7 @@ export default {
 							.then(res => {
 								if (res.data.code == 1) {
 									self.$message.success(res.data.msg);
-									self.getData();
+									self.getData(true);
 									self.rule_close(form);
 								}
 							})
@@ -775,8 +759,8 @@ export default {
 				this.$axios('post', '/api/integral/rule/items/destroy', data).then(res => {
 					if (res.data.code == 1) {
 						this.$message.success(res.data.msg);
-						this.getData();
-						this.handleNodeClick(this.selectItem);
+						this.getData(true);
+						// this.handleNodeClick(this.selectItem);
 					}
 				});
 			});
@@ -884,14 +868,7 @@ export default {
 					that.item_list = list;
 					that.all_item_list = list;
 					
-					// for(let i in item_list){
-					// 	item_list[i].forEach(arr=>{
-					// 		this.item_lists.push(arr)
-					// 	})
-					// }
-					// this.traverse(res.data.data.rule_tree)
-					// console.log(this.item_lists)
-
+					// console.log(this.selectItem)
 					if (is) {
 						that.handleNodeClick(that.selectItem);
 					} else {
@@ -902,20 +879,6 @@ export default {
 					this.rule_loading = false;
 				});
 		},
-		// traverse(rule_tree){
-		// 	// debugger
-		// 	rule_tree.forEach(item=>{
-		// 		if(item.child){
-		// 			for(let i in this.item_lists){
-		// 				if(this.item_lists[i].rule_id == item.id){
-		// 					this.item_lists[i].ruleName = item.name
-		// 					// break
-		// 				}
-		// 			}
-		// 			this.traverse(item.child)
-		// 		}
-		// 	})
-		// },
 		//编辑分组
 		edit_class() {
 			this.class_show = true;