|
@@ -1,21 +1,21 @@
|
|
|
<template>
|
|
|
-<div>
|
|
|
+ <div>
|
|
|
|
|
|
- <common @asynCallBack="asynCallBack"></common>
|
|
|
- <top-header :pageTitle="pageTitle" :routeName="routeName" ></top-header>
|
|
|
+ <common @asynCallBack="asynCallBack"></common>
|
|
|
+ <top-header :pageTitle="pageTitle" :routeName="routeName"></top-header>
|
|
|
|
|
|
- <div class="mui-content vongi-wordcard">
|
|
|
+ <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" @click="selectType">
|
|
|
- <button class="mui-btn mui-btn-block" type='button' v-text="typeName">请选择</button>
|
|
|
+ <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" @click="selectPerson">
|
|
|
+ <div class="mui-navigate-right" @click="selectPerson">
|
|
|
<button id='' class="mui-btn mui-btn-block" type='button' v-text="approvalPersonName">请选择</button>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -31,7 +31,7 @@
|
|
|
</div>
|
|
|
<div class="mui-input-row">
|
|
|
<label><span class="colorfe616c">*</span>结束日期</label>
|
|
|
- <div class="mui-navigate-right" @click="selectEndTime()">
|
|
|
+ <div class="mui-navigate-right" @click="selectEndTime()">
|
|
|
<button class="mui-btn mui-btn-block" type='button' v-text="tjForm.endTime">请选择</button>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -40,14 +40,14 @@
|
|
|
<div class="mui-content-padded">
|
|
|
<h5><span class="colorfe616c">*</span>请假事由</h5>
|
|
|
<div class="mui-input-row">
|
|
|
- <textarea id="textarea" rows="5" v-model="tjForm.reason" 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" v-for="(item,index) in picList">
|
|
|
+ <div class="mui-col-xs-3 fyy-upphoto-close" v-for="(item,index) in picList">
|
|
|
<img :src="item" />
|
|
|
</div>
|
|
|
<div class="mui-col-xs-3" @click="chooseImage">
|
|
@@ -63,9 +63,9 @@
|
|
|
</button>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <loading :visible="isLoading"></loading>
|
|
|
+ <loading :visible="isLoading"></loading>
|
|
|
|
|
|
-</div>
|
|
|
+ </div>
|
|
|
</template>
|
|
|
|
|
|
|
|
@@ -92,8 +92,8 @@
|
|
|
pageTitle: '请假',
|
|
|
|
|
|
isLoading: false,
|
|
|
- leaveTypeList:[],
|
|
|
- approvedList:[],
|
|
|
+ leaveTypeList: [],
|
|
|
+ approvedList: [],
|
|
|
typeName: '请选择',
|
|
|
approvalPersonName: '请选择',
|
|
|
tjForm: {
|
|
@@ -117,163 +117,163 @@
|
|
|
created() {
|
|
|
|
|
|
},
|
|
|
- methods: {
|
|
|
- //审批类型
|
|
|
- getLeaveTypeList() {
|
|
|
- API_Leave.leaveTypeList().then(response => {
|
|
|
+ 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
|
|
|
+ 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;
|
|
|
+ for (var i in response) {
|
|
|
+ var mod = response[i]
|
|
|
+ mod.text = mod.name
|
|
|
+ mod.value = mod.id;
|
|
|
|
|
|
- this.approvedList.push(mod)
|
|
|
- }
|
|
|
+ this.approvedList.push(mod)
|
|
|
+ }
|
|
|
|
|
|
- this.isLoading = false;
|
|
|
- }).catch(error => {
|
|
|
- this.isLoading = false;
|
|
|
- mui.toast(error);
|
|
|
- })
|
|
|
- },
|
|
|
- //微信选择图片
|
|
|
- chooseImage() {
|
|
|
- WxJsApi.chooseImage().then(res => {
|
|
|
- var localData = res.localData;
|
|
|
+ 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;
|
|
|
+ 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();
|
|
|
+ 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;
|
|
|
+ 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": "datetime",
|
|
|
- "beginYear": 2020,
|
|
|
- "endYear": 2040,
|
|
|
- });
|
|
|
- picker.show(function(rs) {
|
|
|
- _this.tjForm.startTime = rs.text;
|
|
|
- });
|
|
|
- },
|
|
|
- //选择时间
|
|
|
- selectEndTime() {
|
|
|
- var _this = this;
|
|
|
- var picker = new mui.DtPicker({
|
|
|
- "type": "datetime",
|
|
|
- "beginYear": 2020,
|
|
|
- "endYear": 2040,
|
|
|
- "beginDate": _this.tjForm.startTime,
|
|
|
- });
|
|
|
- picker.show(function(rs) {
|
|
|
- _this.tjForm.endTime = rs.text;
|
|
|
- });
|
|
|
- },
|
|
|
- //类型选择
|
|
|
- selectType() {
|
|
|
- var picker = new mui.PopPicker();
|
|
|
+ var picker = new mui.DtPicker({
|
|
|
+ "type": "datetime",
|
|
|
+ "beginYear": 2020,
|
|
|
+ "endYear": 2040,
|
|
|
+ });
|
|
|
+ picker.show(function(rs) {
|
|
|
+ _this.tjForm.startTime = rs.text;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //选择时间
|
|
|
+ selectEndTime() {
|
|
|
+ var _this = this;
|
|
|
+ var picker = new mui.DtPicker({
|
|
|
+ "type": "datetime",
|
|
|
+ "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;
|
|
|
- }
|
|
|
+ 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);
|
|
|
+ },
|
|
|
+ //提交
|
|
|
+ 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: {}
|
|
|
})
|
|
|
- }
|
|
|
- },
|
|
|
- asynCallBack() {
|
|
|
+ }).catch(error => {
|
|
|
+ this.isLoading = false;
|
|
|
+ mui.toast(error);
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ asynCallBack() {
|
|
|
|
|
|
- },
|
|
|
},
|
|
|
+ },
|
|
|
mounted() {
|
|
|
//获取微信配置
|
|
|
WxJsApi.getWxConfig();
|