zhengkaixin 4 gadi atpakaļ
vecāks
revīzija
834b77b876

+ 8 - 0
README.md

@@ -13,16 +13,24 @@ yarn install
 ### 本地开发环境启动,其中[project]为不同应用场景标识
 ```
 yarn jserve [project]
+yarn jserve business
+yarn jserve factory
+yarn jserve persion
+
 ```
 
 ### 生成环境打包,其中[project]为不同应用场景标识
 ```
 yarn jbuild [project]
+
 ```
 
 ### 测试环境打包,其中[project]为不同应用场景标识
 ```
 yarn jtest [project]
+yarn jtest business
+yarn jtest factory
+yarn jtest persion
 ```
 
 ### 更多配置

+ 76 - 0
src/projects/business/apis/Master/leave.js

@@ -0,0 +1,76 @@
+import request from '@/utils/request'
+import Qs from 'qs';
+
+/**
+ * 请假相关页面
+ * @param params
+ */
+
+
+
+//获取请假列表(个人)
+export function pageList(params) {
+    return request({
+        url: '/mobile/requestForLeave/pageList',
+        data: Qs.stringify(params),
+        method: 'post',
+    })
+}
+
+//请假类型列表
+export function leaveTypeList(params) {
+    return request({
+        url: '/mobile/requestForLeave/leaveTypeList',
+        data: Qs.stringify(params),
+        method: 'post',
+    })
+}
+//审批人列表
+export function approvedList(params) {
+    return request({
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+        url: '/mobile/requestForLeave/approvedList',
+        data:params,
+        method: 'post',
+    })
+}
+//获取请假详情
+export function detail(params) {
+    return request({
+        url: '/mobile/requestForLeave/detail',
+        data: Qs.stringify(params),
+        method: 'post',
+    })
+}
+
+//提交请假
+export function save(params) {
+
+    return request.post('/mobile/requestForLeave/save', params,{
+        headers: {
+            "Content-Type": "application/json"
+        }
+
+    });
+}
+
+//获取请假列表(管理)
+export function approvedPageList(params) {
+    return request({
+        url: '/mobile/requestForLeave/approvedPageList',
+        data: Qs.stringify(params),
+        method: 'post',
+    })
+}
+
+//请假   审批
+export function approved(params) {
+    return request({
+        url: '/mobile/requestForLeave/approved',
+        data: Qs.stringify(params),
+        method: 'post',
+    })
+}
+

+ 244 - 19
src/projects/business/views/Master/Attendance/LeaveForm.vue

@@ -1,22 +1,22 @@
 <template>
 <div>
-    <header class="mui-bar mui-bar-nav">
-			<h1 class="mui-title">请假</h1>
-			<a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
-		</header>
-		<div class="mui-content vongi-wordcard">
+
+	<common @asynCallBack="asynCallBack"></common>
+	<top-header :pageTitle="pageTitle"  ></top-header>
+
+	<div class="mui-content vongi-wordcard">
 			<div class="mui-content-padded">
 				<form class="mui-input-group">
 					<div class="mui-input-row">
 						<label><span class="colorfe616c">*</span>请假类型</label>
-						<div class="mui-navigate-right">
-							<button id='showUserPicker' class="mui-btn mui-btn-block" type='button'>请选择</button>
+						<div class="mui-navigate-right" @click="selectType">
+							<button   class="mui-btn mui-btn-block" type='button' v-text="typeName">请选择</button>
 						</div>
 					</div>
 					<div class="mui-input-row">
 						<label><span class="colorfe616c">*</span>审批人</label>
-						<div class="mui-navigate-right">
-							<button id='showUserPicker' class="mui-btn mui-btn-block" type='button'>请选择</button>
+						<div class="mui-navigate-right"  @click="selectPerson">
+							<button id='' class="mui-btn mui-btn-block" type='button' v-text="approvalPersonName">请选择</button>
 						</div>
 					</div>
 				</form>
@@ -25,14 +25,14 @@
 				<form class="mui-input-group">
 					<div class="mui-input-row">
 						<label><span class="colorfe616c">*</span>开始日期</label>
-						<div class="mui-navigate-right">
-							<button class="mui-btn mui-btn-block" type='button'>2020-04-28 08:00</button>
+						<div class="mui-navigate-right" @click="selectStartTime()">
+							<button class="mui-btn mui-btn-block" type='button' v-text="tjForm.startTime">请选择</button>
 						</div>
 					</div>
 					<div class="mui-input-row">
 						<label><span class="colorfe616c">*</span>结束日期</label>
-						<div class="mui-navigate-right">
-							<button class="mui-btn mui-btn-block" type='button'>请选择</button>
+						<div class="mui-navigate-right"  @click="selectEndTime()">
+							<button class="mui-btn mui-btn-block" type='button' v-text="tjForm.endTime">请选择</button>
 						</div>
 					</div>
 				</form>
@@ -40,24 +40,25 @@
 			<div class="mui-content-padded">
 				<h5><span class="colorfe616c">*</span>请假事由</h5>
 				<div class="mui-input-row">
-					<textarea id="textarea" rows="5" placeholder="请输入"></textarea>
+					<textarea id="textarea" rows="5"  v-model="tjForm.reason" placeholder="请输入"></textarea>
 				</div>
 			</div>
+
 			<div class="mui-content-padded">
 				<h5>上传照片</h5>
 				<div class="fyy-upphoto">
-					<div class="mui-col-xs-3 fyy-upphoto-close">
-						<img src="~$project/assets/img/zhaop.jpg" />
-                        <a class="mui-icon mui-icon-closeempty"></a>
+					<div class="mui-col-xs-3" v-for="(item,index) in picList">
+						<img :src="item" />
 					</div>
-					<div class="mui-col-xs-3">
+					<div class="mui-col-xs-3" @click="chooseImage">
 						<a><span class="mui-icon mui-icon-plusempty"></span></a>
 					</div>
 				</div>
 			</div>
+
 			<div class="mui-content-padded mui-h6">注:1、病假须上传医院证明。2、请假事由中须写明请假去向。</div>
 			<div class="vongi-btn">
-				<button class="mui-btn mui-btn-primary " type="submit">
+				<button class="mui-btn mui-btn-primary " type="submit" @click="submit()">
 					提交
 				</button>
 			</div>
@@ -65,9 +66,233 @@
 </div>
 </template>
 
+
 <script>
+	require('$project/assets/js/mui.picker.min.js');
+	import * as API_Leave from '@/apis/Master/leave'
+	import Common from '$project/components/Common.vue'
+	import Loading from '$project/components/Loading.vue'
+	import TopHeader from '$project/components/TopHeader.vue'
+	import {
+		mapGetters,
+		mapMutations
+	} from 'vuex'
+	import * as WxJsApi from '$project/utils/wxJsApi'
+	export default {
+		name: 'MasterAttendanceLeaveForm',
+		components: {
+			Common,
+			Loading,
+			TopHeader
+		},
+		data() {
+			return {
+				pageTitle: '请假',
+
+				isLoading: false,
+				leaveTypeList:[],
+				approvedList:[],
+				typeName: '请选择',
+				approvalPersonName: '请选择',
+				tjForm: {
+					startTime: '请选择',
+					endTime: '请选择',
+					leaveType: '',
+
+					imageUrl: '',
+					reason: '',
+					personId: '',
+
+					approvedId: '',
+					remark: '',
+
+				},
+				picList: [],
+
+			}
+		},
+		created() {
+
+		},
+			methods: {
+				//审批类型
+				getLeaveTypeList() {
+					API_Leave.leaveTypeList().then(response => {
+
+						for(var i in response){
+							var mod=response[i]
+							mod.text=mod.name
+							this.leaveTypeList.push(mod)
+						}
+					}).catch(error => {
+						mui.toast(error);
+					})
+				},
+				//获取审核人列表
+				getPsersonList() {
+					this.isLoading = true;
+					API_Leave.approvedList().then(response => {
+
+						for(var i in response){
+							var mod=response[i]
+							mod.text=mod.name
+							mod.value=mod.id;
+
+							this.approvedList.push(mod)
+						}
+
+						this.isLoading = false;
+					}).catch(error => {
+						this.isLoading = false;
+						mui.toast(error);
+					})
+				},
+				//微信选择图片
+				chooseImage() {
+					WxJsApi.chooseImage().then(res => {
+						var localData = res.localData;
+
+						if (localData.indexOf('data:image') != 0) {
+							//判断是否有这样的头部
+							localData = 'data:image/jpeg;base64,' + localData
+						}
+						localData = localData.replace(/\r|\n/g, '').replace('data:image/jgp', 'data:image/jpeg')
+						this.imgBase64 = localData;
+						//显示裁剪图片
+						//_this.showCropper(field);
+						this.uploadpic();
+					}).catch(error => {
+						mui.toast(error);
+					})
+				},
+				//上传图片
+				uploadpic() {
+					this.isLoading = true;
+					WxJsApi.uploadPic(this.imgBase64).then(response => {
+						this.isLoading = false;
+
+						this.picList.push(response);
+					}).catch(error => {
+						this.isLoading = false;
+						mui.toast(error);
+					})
+				},
+				//选择审核人
+				selectPerson() {
+					var _this = this;
+					var picker = new mui.PopPicker();
+
+					picker.setData(_this.approvedList);
+					picker.show(function(selectItems) {
+						_this.tjForm.approvedId = selectItems[0].value;
+						_this.approvalPersonName = selectItems[0].text;
+					})
+				},
+				//选择时间
+				selectStartTime() {
+					var _this = this;
+					var startTime= _this.tjForm.startTime=='请选择'? new Date():_this.tjForm.startTime;
+
+					var picker = new mui.DtPicker({
+						"type": "date",
+						"beginYear": 2020,
+						"endYear": 2040,
+					});
+					picker.show(function(rs) {
+						_this.tjForm.startTime = rs.text;
+					});
+				},
+				//选择时间
+				selectEndTime() {
+					var _this = this;
+					var picker = new mui.DtPicker({
+						"type": "date",
+						"beginYear": 2020,
+						"endYear": 2040,
+						"beginDate": _this.tjForm.startTime,
+					});
+					picker.show(function(rs) {
+						_this.tjForm.endTime = rs.text;
+					});
+				},
+				//类型选择
+				selectType() {
+					var picker = new mui.PopPicker();
+
+					picker.setData(this.leaveTypeList);
+					var _this = this;
+					picker.show(function(selectItems) {
+						_this.tjForm.leaveType = selectItems[0].value;
+						_this.typeName = selectItems[0].text;
+					})
+				},
+				//表单检测
+				checkFrom() {
+					if (!this.tjForm.leaveType) {
+						mui.toast('请选择请假类型');
+						return false;
+					} else if (!this.tjForm.approvedId) {
+						mui.toast('请选择审批人');
+						return false;
+					} else if (!this.tjForm.startTime) {
+						mui.toast('请选择开始日期');
+						return false;
+					}else if (!this.tjForm.endTime) {
+						mui.toast('请选择结束日期');
+						return false;
+					}else if (!this.tjForm.reason) {
+						mui.toast('请输入请假理由');
+						return false;
+					} else {
+						return true;
+					}
+
+
+				},
+				//提交
+				submit() {
+					if (this.checkFrom()) {
+						this.tjForm.imageUrl = this.picList.join(',');
+						this.isLoading = true;
+						API_Leave.save(this.tjForm).then(response => {
+							this.isLoading = false;
+							mui.toast("提交成功!");
+							this.$router.push({
+								name: 'MasterAttendanceLeaveList',
+								query: {}
+							})
+						}).catch(error => {
+							this.isLoading = false;
+							mui.toast(error);
+						})
+					}
+				},
+				asynCallBack() {
+
+				},
+			},
+		mounted() {
+			//获取微信配置
+			WxJsApi.getWxConfig();
+
+			this.getLeaveTypeList();
+
+			this.getPsersonList();
+		},
+		destroyed() {},
+		computed: {
+
+			...mapGetters({
+				openId: 'wx_openid',
+				token: 'token',
+			})
+		}
+	}
 </script>
 
 <style scoped src="$project/assets/css/xpwyfyy.css"></style>
+<style src="$project/assets/css/iconfont.css"></style>
+<style src="$project/assets/css/mui.picker.min.css"></style>
+
 <style>
 </style>

+ 106 - 18
src/projects/business/views/Master/Attendance/LeaveInfo.vue

@@ -1,46 +1,50 @@
 <template>
 <div>
-    <header class="mui-bar mui-bar-nav">
-				<a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
-				<h1 class="mui-title">请假</h1>
-			</header>
-			<div class="mui-content vongi-qingjiadt">
+	<common @asynCallBack="asynCallBack"></common>
+	<top-header :pageTitle="pageTitle"  ></top-header>
+
+	<div class="mui-content vongi-qingjiadt">
 				<div class="vongi-qingjiadt-head flew-sp">
 					<div class="flew-items">
 						<div class="flew"><img src="~$project/assets/img/03.jpg" width="50" /></div>
-						<h4>郭麒麟 申请请假 事假</h4>
+						<h4 v-text="detail.name+' 申请请假 '+detail.leaveTypeN">郭麒麟 申请请假 事假</h4>
 					</div>
-					<button class="mui-btn  mui-btn-success mui-btn-outlined">已批准</button>
+					<button class="mui-btn   mui-btn-outlined" :class="statusColor[detail.status]" v-text="status[detail.status]">已批准</button>
 					<!-- <div class="examine-refuse">已拒绝</div> -->
 				</div>
 				<form class="mui-input-group">
 					<div class="mui-input-row">
 						<label>身份证号</label>
-						<span>420400200002020101</span>
+						<span v-text="detail.idCard">420400200002020101</span>
 					</div>
 					<div class="mui-input-row">
 						<label>工号</label>
-						<span>0201022121001</span>
+						<span v-text="detail.jobNumber">0201022121001</span>
 					</div>
 					<div class="mui-input-row">
 						<label>部门</label>
-						<span>信息工程中心</span>
+						<span v-text="detail.department">信息工程中心</span>
 					</div>
 					<div class="mui-input-row">
 						<label>请假时间</label>
-						<span>自2020年4月28日8时 至 4月30日17时</span>
+						<span >自{{detail.startTime}} 至 {{detail.endTime}}</span>
 					</div>
 					<div class="mui-input-row">
 						<label>请假事由</label>
-						<span>家中有事,需要会老家一趟家中有事,需要会老家一趟家中有事,需要会老家一趟家中有事,需要会老家一趟。</span>
+						<span v-text="detail.reason">家中有事,需要会老家一趟家中有事,需要会老家一趟家中有事,需要会老家一趟家中有事,需要会老家一趟。</span>
 					</div>
 					<div class="mui-input-row">
 						<label>上传图片</label>
-						<span class="vongi-qingjiadt-photo"><img src="~$project/assets/img/02.jpg"/></span>
+						<span class="vongi-qingjiadt-photo">
+							<template v-for="(item,index) in picList">
+									<img :src="item" v-image-preview />
+
+							</template>
+						</span>
 					</div>
 					<div class="mui-input-row">
 						<label>申请时间</label>
-						<span>2020-04-27 12:00:00</span>
+						<span v-text="detail.createTime">2020-04-27 12:00:00</span>
 					</div>
 				</form>
 				<div class="mui-content-padded">
@@ -49,19 +53,19 @@
 				<form class="mui-input-group">
 					<div class="mui-input-row">
 						<label>审批人</label>
-						<span>王后雄</span>
+						<span>{{detail.approvedName}}</span>
 					</div>
 					<div class="mui-input-row">
 						<label>审核意见</label>
-						<span>同意</span>
+						<span>{{detail.approvalOpinions}}</span>
 					</div>
 					<div class="mui-input-row">
 						<label>意见说明</label>
-						<span>注意安全</span>
+						<span>{{detail.approvalExplain}}</span>
 					</div>
 					<div class="mui-input-row">
 						<label>审核时间</label>
-						<span>2020-04-28 10:00:00</span>
+						<span>{{detail.approvedTime}}</span>
 					</div>
 				</form>
 
@@ -70,6 +74,90 @@
 </template>
 
 <script>
+	import * as API_Leave from '@/apis/Master/leave'
+	import Common from '$project/components/Common.vue'
+	import Loading from '$project/components/Loading.vue'
+	import TopHeader from '$project/components/TopHeader.vue'
+	import isReachBottom from '$project/utils/isReachBottom'
+	import {
+		mapGetters,
+		mapMutations
+	} from 'vuex'
+	export default {
+		name: 'MasterAttendanceLeaveInfo',
+		components: {
+			Common,
+			Loading,
+			TopHeader
+		},
+		data() {
+			return {
+				pageTitle: '请假详情',
+
+				isLoading: false,
+				id:this.$route.query.id,
+				detail:{},
+				status: ['待审核', '已批准', '已拒绝'],
+				statusColor: ['', 'mui-btn-success', 'mui-btn-danger'],
+
+
+
+			}
+		},
+		created() {
+
+		},
+		methods: {
+			//info
+			getDetail() {
+				this.isLoading = true;
+				API_Leave.detail({
+					id:this.id
+				}).then(response => {
+					this.detail=response;
+					this.isLoading = false;
+				}).catch(error => {
+					this.isLoading = false;
+					mui.toast(error);
+				})
+			},
+
+
+
+			asynCallBack() {
+
+			},
+		},
+		mounted() {
+			this.getDetail();
+
+		},
+		destroyed() {
+		},
+		computed: {
+			computed: {
+				picList: {
+					// getter
+					get: function() {
+						if (this.detail && this.detail.imageUrl) {
+							return this.detail.imageUrl.split(',');
+						} else {
+							return [];
+						}
+					},
+					// setter
+					set: function(newValue) {
+						console.log(newValue)
+					}
+				},
+				...mapGetters({
+					openId: 'wx_openid',
+					token: 'token',
+				})
+			}
+		},
+
+	}
 </script>
 
 <style scoped src="$project/assets/css/xpwyfyy.css"></style>

+ 131 - 17
src/projects/business/views/Master/Attendance/LeaveList.vue

@@ -1,34 +1,148 @@
 <template>
 <div>
-    <header class="mui-bar mui-bar-nav">
-			<h1 class="mui-title">请假记录</h1>
-			<a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
-		</header>
-		<div class="mui-content">
+
+	<common @asynCallBack="asynCallBack"></common>
+	<top-header :pageTitle="pageTitle"  ></top-header>
+
+	<div class="mui-content">
 			<div class="mui-content-padded vongi-work">
 				<ul class="mui-table-view vongi-qingjia">
-					<li class="mui-table-view-cell">
-						<h4>郭麒麟的病假申请<span>12:00</span></h4>
-						<button type="button" class="mui-btn  mui-btn-outlined">待审核</button>
-					</li>
-					<li class="mui-table-view-cell">
-						<h4>郭麒麟的病假申请<span>12:00</span></h4>
-						<button type="button" class="mui-btn  mui-btn-success mui-btn-outlined">已批准</button>
-					</li>
-					<li class="mui-table-view-cell">
-						<h4>郭麒麟的病假申请<span>12:00</span></h4>
-						<button type="button" class="mui-btn  mui-btn-danger mui-btn-outlined">已拒绝</button>
+					<li class="mui-table-view-cell" v-for="mod in recordList" @click="detail(mod.id)">
+						<h4 >
+							{{mod.title}}
+							<span v-text="mod.createTime">12:00</span>
+						</h4>
+						<button type="button" class="mui-btn  mui-btn-outlined" :class="statusColor[mod.status]" v-text="status[mod.status]">
+							 </button>
 					</li>
+
 				</ul>
 			</div>
 			<div class="fyy-footer">
-				<div class="bindfyy-btn"><button type="submit" class="mui-btn mui-btn-primary ">写请假条</button></div>
+				<div class="bindfyy-btn"><button type="submit" class="mui-btn mui-btn-primary " @click="save()">写请假条</button></div>
 			</div>
 		</div>
 </div>
 </template>
 
+
 <script>
+	import * as API_Leave from '@/apis/Master/leave'
+	import Common from '$project/components/Common.vue'
+	import Loading from '$project/components/Loading.vue'
+	import TopHeader from '$project/components/TopHeader.vue'
+	import isReachBottom from '$project/utils/isReachBottom'
+	import {
+		mapGetters,
+		mapMutations
+	} from 'vuex'
+	export default {
+		name: 'MasterAttendanceLeaveList',
+		components: {
+			Common,
+			Loading,
+			TopHeader
+		},
+		data() {
+			return {
+				pageTitle: '请假记录',
+
+				isLoading: false,
+
+				listForm: {
+					pageIndex: 1,
+					pageSize: 20,
+				//	token: '',
+					totalPage: 1,
+					result: 0,
+				},
+				recordList: [],
+				status: ['待审核', '已批准', '已拒绝'],
+				statusColor: ['', 'mui-btn-success', 'mui-btn-danger'],
+
+
+			}
+		},
+		created() {
+			//this.listForm.openId = this.openId;
+			//this.listForm.result = this.$route.query.result != null ? this.$route.query.result : 0;
+		},
+		methods: {
+			//info
+			detail(id) {
+				this.$router.push({
+					name: 'MasterAttendanceLeaveInfo',
+					query: {
+						id: id
+					}
+				})
+			},
+			save() {
+				this.$router.push({
+					name: 'MasterAttendanceLeaveForm',
+					query: {
+
+					}
+				})
+			},
+			//获取列表
+			getList() {
+				this.isLoading = true;
+				API_Leave.pageList(this.listForm).then(response => {
+					if (response) {
+						if (this.listForm.pageIndex == 1) {
+							this.recordList = response.data;
+							this.listForm.pageIndex = response.pageNumber;
+							this.listForm.totalPage = response.totalPage;
+						} else {
+							this.recordList = [
+								...this.recordList,
+								...response.data
+							];
+						}
+					}
+					this.listForm.pageIndex++;
+					this.isLoading = false;
+				}).catch(error => {
+					this.isLoading = false;
+					mui.toast(error);
+				})
+			},
+			//下拉事件
+			handleScrool() {
+				if (isReachBottom()) {
+					console.log('到达底部')
+					if (this.listForm.pageIndex <= this.listForm.totalPage && this.isLoading == false) {
+						this.getList();
+					} else {
+						return;
+					}
+				}
+			},
+
+			asynCallBack() {
+
+			},
+		},
+		mounted() {
+			this.getList();
+			//监控下拉加载事件
+			var _this = this;
+			window.addEventListener('scroll', _this.handleScrool);
+		},
+		destroyed() {
+			//销毁监听事件
+			var _this = this;
+			window.removeEventListener('scroll', _this.handleScrool);
+		},
+		computed: {
+			...mapGetters({
+				openId: 'wx_openid',
+				token: 'token',
+			})
+		},
+
+	}
 </script>
 
 <style scoped src="$project/assets/css/xpwyfyy.css"></style>

+ 180 - 0
src/projects/business/views/Master/Attendance/VerifyLeaveList.vue

@@ -1,8 +1,188 @@
 <template>
+    <div>
+
+        <common @asynCallBack="asynCallBack"></common>
+        <top-header :pageTitle="pageTitle"></top-header>
+
+        <div class="mui-content vongi-wordcard-sp">
+            <div id="slider" class="mui-slider mui-fullscreen">
+                <div id="sliderSegmentedControl" class="mui-scroll-wrapper mui-slider-indicator mui-segmented-control mui-segmented-control-inverted">
+                    <div class="mui-scroll">
+                        <a class="mui-control-item mui-active" >
+                            <span class="fyy-badge">待处理<span class="mui-badge">5</span></span>
+                        </a>
+                        <a class="mui-control-item" href="#item2mobile">
+                            已处理
+                        </a>
+                    </div>
+                </div>
+                <div class="mui-slider-group">
+                    <div id="item1mobile" class="mui-slider-item mui-control-content mui-active">
+                        <div id="scroll1" class="mui-scroll-wrapper">
+                            <div class="mui-scroll">
+                                <form class="mui-input-group fyy-checkbox">
+                                    <div class="mui-input-row mui-checkbox mui-left" v-for="mod in recordList">
+                                        <label @click="detail(mod.id)" >
+                                            <router-link class="mui-navigate-right" :to="{name: 'MasterAttendanceLeaveInfo', params: {data:iten}}">
+
+
+                                                <div class="mui-media-object mui-pull-left" >
+                                                    <img :src="mod.picUrl"></div>
+                                                <div class="mui-media-body" >
+                                                    {{mod.name}}
+                                                    <p class='mui-ellipsis'><span class="colorfe616c">{{mod.typeN}}</span>请假申请</p>
+                                                </div>
+                                            </router-link>
+                                        </label>
+                                        <input name="checkbox" v-model="selectIndex" :value="mod.id" type="checkbox"  >
+                                    </div>
+
+                                </form>
+                                <div class="fyy-bindfyy-btn">
+                                    <form class="mui-input-group">
+                                        <div class="mui-input-row mui-checkbox mui-left">
+                                            <label>全选</label>
+                                            <input name="checkbox" value="Item 1" type="checkbox">
+                                        </div>
+                                    </form>
+                                    <button type="button" class="mui-btn mui-btn-danger">拒绝</button>
+                                    <button type="button" class="mui-btn mui-btn-success">同意</button>
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+
+
+                </div>
+            </div>
+
+        </div>
+        <loading :visible="isLoading"></loading>
+
+    </div>
 </template>
 
+
 <script>
+    import * as API_Leave from '@/apis/Master/leave'
+    import Common from '$project/components/Common.vue'
+    import Loading from '$project/components/Loading.vue'
+    import TopHeader from '$project/components/TopHeader.vue'
+    import isReachBottom from '$project/utils/isReachBottom'
+    import {
+        mapGetters,
+        mapMutations
+    } from 'vuex'
+    export default {
+        name: 'MasterAttendanceVerifyLeaveList',
+        components: {
+            Common,
+            Loading,
+            TopHeader
+        },
+        data() {
+            return {
+                pageTitle: '请假申请审核列表',
+
+                isLoading: false,
+
+                listForm: {
+                    pageIndex: 1,
+                    pageSize: 20,
+                    type: '0',
+                    totalPage: 1,
+                    result: 0,
+                },
+                recordList: [],
+                status: ['待审核', '已批准', '已拒绝'],
+                statusColor: ['', 'mui-btn-success', 'mui-btn-danger'],
+                selectIndex:[],
+
+            }
+        },
+        created() {
+            //this.listForm.openId = this.openId;
+            //this.listForm.result = this.$route.query.result != null ? this.$route.query.result : 0;
+        },
+        methods: {
+            //info
+            detail(id) {
+                this.$router.push({
+                    name: 'MasterAttendanceLeaveInfo',
+                    query: {
+                        id: id
+                    }
+                })
+            },
+            save() {
+                this.$router.push({
+                    name: 'MasterAttendanceLeaveForm',
+                    query: {
+
+                    }
+                })
+            },
+            //获取列表
+            getList() {
+                this.isLoading = true;
+                API_Leave.approvedPageList(this.listForm).then(response => {
+                    if (response) {
+                        if (this.listForm.pageIndex == 1) {
+                            this.recordList = response.data;
+                            this.listForm.pageIndex = response.pageNumber;
+                            this.listForm.totalPage = response.totalPage;
+                        } else {
+                            this.recordList = [
+                                ...this.recordList,
+                                ...response.data
+                            ];
+                        }
+                    }
+                    this.listForm.pageIndex++;
+                    this.isLoading = false;
+                }).catch(error => {
+                    this.isLoading = false;
+                    mui.toast(error);
+                })
+            },
+            //下拉事件
+            handleScrool() {
+                if (isReachBottom()) {
+                    console.log('到达底部')
+                    if (this.listForm.pageIndex <= this.listForm.totalPage && this.isLoading == false) {
+                        this.getList();
+                    } else {
+                        return;
+                    }
+                }
+            },
+
+            asynCallBack() {
+
+            },
+        },
+        mounted() {
+            this.getList();
+            //监控下拉加载事件
+            var _this = this;
+            window.addEventListener('scroll', _this.handleScrool);
+        },
+        destroyed() {
+            //销毁监听事件
+            var _this = this;
+            window.removeEventListener('scroll', _this.handleScrool);
+        },
+        computed: {
+            ...mapGetters({
+                openId: 'wx_openid',
+                token: 'token',
+            })
+        },
+
+    }
 </script>
 
+<style scoped src="$project/assets/css/xpwyfyy.css"></style>
+<style scoped src="$project/assets/css/iconfont.css"></style>
 <style>
 </style>

+ 1 - 1
src/projects/home/utils/request.js

@@ -26,7 +26,7 @@ service.interceptors.request.use(config => {
 	// if (process.env.NODE_ENV == 'devlopment') {
 	// 	var Authorization = process.env.VUE_APP_AUTH;
 	// } else {
-	var Authorization = getToken() ? getToken() : '';
+	var Authorization =  'Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMDAxNSIsImV4cCI6MTYwMTM3NzQyNH0.lmtjaZH3VAreGTS9zPosBHPRQ3_DC2esuY1AV1pI1rM';
 	// }
 
 	// 获取token