个人周报填报页面增加分页,个人周报填报详情页面更改

This commit is contained in:
zty 2024-07-05 11:02:00 +08:00
parent f4121f89b2
commit 97e0580ca2
2 changed files with 477 additions and 517 deletions

View File

@ -85,8 +85,11 @@
if (userId === '0') { if (userId === '0') {
this.isSuper = true; this.isSuper = true;
} }
// this.pageLoading = true; let projectWeeklyFindReq={
Api.ProjectManagements.getWeekly().then(result=>{ pageNo:this.pageNo,
pageSize:this.pageSize
}
Api.ProjectManagements.getWeekly(projectWeeklyFindReq).then(result=>{
this.tableRowsData = []; this.tableRowsData = [];
this.pageLoading = false; this.pageLoading = false;
console.log("周报填报列表",result) console.log("周报填报列表",result)
@ -101,6 +104,8 @@
thisWeek: dataList[i].thisWeek, thisWeek: dataList[i].thisWeek,
nextWeek: dataList[i].nextWeek nextWeek: dataList[i].nextWeek
}) })
// this.pageNo=result.data.pages
this.tableTotalPage=result.data.total
} }
console.log("tableRowsData",this.tableRowsData) console.log("tableRowsData",this.tableRowsData)
} }
@ -174,7 +179,7 @@
}, },
tableSingleCheck (index){ tableSingleCheck (index){
this.$router.push({ this.$router.push({
name: "ExpenseClaimApplyCheck", name: "ExpenseClaimApplyEdit",
params: {id: this.tableRowsData[index].id} params: {id: this.tableRowsData[index].id}
}) })
}, },

View File

@ -2,7 +2,7 @@
<div id="content-container" :class="{'expand-right': expandRight}"> <div id="content-container" :class="{'expand-right': expandRight}">
<!--Page Title--> <!--Page Title-->
<div id="page-title"> <div id="page-title">
<h1 class="page-header text-overflow">财务报销</h1> <h1 class="page-header text-overflow">个人周报填报</h1>
</div> </div>
<!--End page title--> <!--End page title-->
@ -17,221 +17,149 @@
<!--Page content--> <!--Page content-->
<div class="page-content"> <div class="page-content">
<div class="panel"> <div class="panel">
<div class="panel-body" style="padding-bottom: 0px" v-if="isVerify&&isNotVerifyReady">
<verify-button
:taskId="taskId"
:rewriteAgree="rewriteAgreeVerify"
:rewriteReject="rewriteRejectVerify"
:rewriteDestroy="rewriteDestroyVerify"
@agreeFlowVerify="agreeFlowVerify"
@rejectFlowVerify="rejectFlowVerify"
@destroyFlowVerify="destroyFlowVerify"
>
</verify-button>
</div>
<div class="panel-body"> <div class="panel-body">
<el-form :model="formModel" label-width="100px" ref="formName"> <el-form :model="formModel" label-width="100px" ref="formName">
<el-form-item> <el-form-item label="姓名" prop="projectNo" :disabled="true">
<el-steps :active="formModel.activie" finish-status="success"> <el-input
<el-step title="初始状态"></el-step> class="form-input"
<el-step title="审批中"></el-step> placeholder="请输入内容"
<el-step title="审批完成"></el-step> v-model="formModel.userName"
</el-steps>
</el-form-item>
<el-form-item label="部门" prop="deptId" :rules="[
{required: true, message: '部门不能为空'}]">
<el-select class="form-input" filterable placeholder="请选择" v-model="formModel.deptId" :disabled="true">
<el-option
v-for="subItem in orgOptions"
:key="subItem.model"
:label="subItem.label"
:value="subItem.model"
> >
</el-option> </el-input>
</el-select>
</el-form-item> </el-form-item>
<el-form-item label="姓名" prop="userInfoId" :rules="[ <!-- <el-form-item label="姓名" prop="userId">-->
{required: true, message: '姓名不能为空'}]"> <!-- <el-select class="form-input" filterable placeholder="请选择" :disabled="true"-->
<el-select class="form-input" filterable placeholder="请选择" :disabled="true" v-model="formModel.userInfoId"> <!-- v-model="formModel.userInfoId">-->
<el-option
v-for="subItem in userInfoOption"
:key="subItem.model"
:label="subItem.label"
:value="subItem.model"
>
</el-option>
</el-select>
</el-form-item>
<!--<el-form-item label="职位">-->
<!--<el-select class="form-input" v-model="model[item.model]" filterable placeholder="请选择">-->
<!-- <el-option--> <!-- <el-option-->
<!--v-for="subItem in item.externalValue.options"--> <!-- v-for="subItem in userInfoOption"-->
<!-- :key="subItem.model"--> <!-- :key="subItem.model"-->
<!-- :label="subItem.label"--> <!-- :label="subItem.label"-->
<!-- :value="subItem.model"--> <!-- :value="subItem.model"-->
<!--&gt;--> <!-- >-->
<!-- </el-option>--> <!-- </el-option>-->
<!-- </el-select>--> <!-- </el-select>-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<el-form-item label="报销类别" prop="reimburseCategory" :rules="[ <el-form-item label="项目编号" prop="projectNo">
{required: true, message: '报销类别不能为空'}]">
<el-select class="form-input" filterable placeholder="请选择" v-model="formModel.reimburseCategory" :disabled="!canEditReimburseCategory">
<el-option
v-for="subItem in reimburseCategoryData"
:key="subItem.model"
:label="subItem.label"
:value="subItem.model"
:disabled="subItem.disabled"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="证明人" prop="witness" :rules="[
{required: true, message: '证明人不能为空'}]" v-if="formModel.reimburseCategory !== 'medical'">
<el-select class="form-input" filterable placeholder="请选择" :disabled="!isEdit" v-model="formModel.witness">
<el-option
v-for="subItem in formWitnessData"
:key="subItem.model"
:label="subItem.label"
:value="subItem.model"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="预算种类" prop="selectBudgetCategoryId" :rules="[
{required: true, message: '预算种类不能为空'}]">
<el-cascader
:options="budgetCategory"
v-model="formModel.selectBudgetCategoryId"
class="form-input"
:disabled="!canEditBudgetCategory"
></el-cascader>
</el-form-item>
<el-form-item label="报销事由" prop="reason" :rules="[
{required: true, message: '报销事由不能为空'}]">
<el-input <el-input
class="form-input" class="form-input"
placeholder="请输入内容" placeholder="请输入内容"
v-model="formModel.reason" v-model="formModel.projectNo"
:disabled="!isEdit"
> >
</el-input> </el-input>
</el-form-item> </el-form-item>
<!-- :rules="[-->
<!-- {projectName: true, message: '项目名称不能为空'}]"-->
<el-form-item label="项目名称" prop="projectName">
<el-input
class="form-input"
placeholder="请输入内容"
v-model="formModel.projectName"
>
</el-input>
</el-form-item>
<!-- <el-form-item label="证明人" prop="witness" :rules="[-->
<!-- {required: true, message: '证明人不能为空'}]" v-if="formModel.reimburseCategory !== 'medical'">-->
<!-- <el-select class="form-input" filterable placeholder="请选择" v-model="formModel.witness">-->
<!-- <el-option-->
<!-- v-for="subItem in formWitnessData"-->
<!-- :key="subItem.model"-->
<!-- :label="subItem.label"-->
<!-- :value="subItem.model"-->
<!-- :disabled="subItem.disabled"-->
<!-- >-->
<!-- </el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="预算种类" prop="selectBudgetCategoryId" :rules="[-->
<!-- {required: true, message: '预算种类不能为空'}]">-->
<!-- <el-cascader-->
<!-- :options="budgetCategory"-->
<!-- v-model="formModel.selectBudgetCategoryId"-->
<!-- class="form-input"-->
<!-- ></el-cascader>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="报销事由" prop="reason" :rules="[-->
<!-- {required: true, message: '报销事由不能为空'}]">-->
<!-- <el-input-->
<!-- class="form-input"-->
<!-- placeholder="请输入内容"-->
<!-- v-model="formModel.reason"-->
<!-- >-->
<!-- </el-input>-->
<!-- </el-form-item>-->
<!--明细--> <!--明细-->
<div> <!-- <div class="form-item-border" v-for="(item, index) in formModel.reimburseDetail" @click="reimburseClick(index)">-->
<div class="form-item-border" v-for="(item, index) in formModel.reimburseDetail" @click="reimburseClick(index)"> <!-- :rules="[-->
<el-form-item label="发生时间" :prop="'reimburseDetail.' + index + '.time'" :rules="[ <!-- {required: true, message: '工作量不能为空'}, { type: 'number', message: '工作量必须为数字值'}]"-->
{required: true, message: '发生时间不能为空'}]"> <el-form-item label="工作量(人日)" prop="workload">
<el-date-picker
v-model="item.time"
class="form-input"
value-format="YYYY-MM"
placeholder="选择日期"
:disabled="!isEdit"
>
</el-date-picker>
</el-form-item>
<el-form-item label="费用金额" :prop="'reimburseDetail.' + index + '.money'" :rules="[
{required: true, message: '费用金额不能为空'}, { type: 'number', message: '费用金额必须为数字值'}]">
<el-input <el-input
class="form-input" class="form-input"
placeholder="请输入内容" placeholder="请输入内容"
v-model.number="item.money" v-model.number="formModel.workload"
@change="moneyChange" @change="moneyChange"
:disabled="!isEdit"
> >
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="费用说明"> <el-form-item label="本周进展" prop="thisWeek">
<el-input <el-input
class="form-input" class="form-input"
placeholder="请输入内容" placeholder="请输入内容"
v-model="item.moneyDetail" v-model="formModel.thisWeek"
:disabled="!isEdit"
> >
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="是否有发票"> <el-form-item label="下周计划" prop="nextWeek">
<el-radio v-model="item.hasBill" :label=true :disabled="!isEdit"></el-radio>
<el-radio v-model="item.hasBill" :label=false :disabled="!isEdit"></el-radio>
</el-form-item>
<el-form-item label="附件">
<el-upload
name="file"
class="upload-demo"
:action="actionUrl"
:on-remove="handleFileRemove"
:multiple="false"
:file-list="item.fileList"
:on-success="handleFileSuccess"
v-if="isEdit"
>
<el-button size="small" type="primary" v-if="isEdit">点击上传</el-button>
</el-upload>
<div v-if="!isEdit">
<div v-for="(item, index) in item.fileList">
<span>{{item.name}}</span>
<a :href="baseUrl+item.url" class="download">下载</a>
<!--<a v-for="(item, index) in item.personContractList" :href="baseUrl+item.url">{{item.name}}</a>-->
</div>
</div>
</el-form-item>
<el-button type="default" @click="deleteFile(index)" v-if="isEdit"><i class="fa fa-trash-o"></i>删除报销明细</el-button>
</div>
<el-button type="default" @click="addFile()" class="btn-add-form" v-if="isEdit"><i class="fa fa-plus"></i>增加报销明细</el-button>
<el-form-item label="总金额">
<el-input <el-input
class="form-input" class="form-input"
placeholder="请输入内容" placeholder="请输入内容"
v-model="formModel.total" v-model="formModel.nextWeek"
:disabled="true"
> >
</el-input> </el-input>
</el-form-item> </el-form-item>
<!-- </div>-->
<el-form-item> <el-form-item>
<div style="float: right"> <div style="float: right">
<el-button @click="save('formName')" type="primary" v-if="isEdit" :disabled="!isSave">保存</el-button> <el-button @click="cancel()" type="default">取消</el-button>
<el-button @click="save('formName')" type="primary" :disabled="!isSave">保存</el-button>
</div> </div>
</el-form-item> </el-form-item>
</div>
</el-form> </el-form>
</div> </div>
</div> </div>
<flow-record-table
:checkOrVerify="checkOrVerify"
:flowId="flowId"
>
</flow-record-table>
</div> </div>
<!--End Page content--> <!--End Page content-->
</div> </div>
</template> </template>
<script> <script>
import routerData from '../../../../router.json'
import DataForm from '../../../components/form/DataForm.vue' import DataForm from '../../../components/form/DataForm.vue'
import DataTable from '../../../components/DataTable.vue' import DataTable from '../../../components/DataTable.vue'
import Api from '../../../server/index.js' import Api from '../../../server/index.js'
import app from '../../../assets/js/common/app.js' import app from '../../../assets/js/common/app.js'
import {getItem} from '../../../config/mUtils.js' import {baseUrl} from '../../../config/env.js'
import {baseUrl} from '../../../config/env.js';
import verifyButton from '../../../components/verifyButton.vue' import verifyButton from '../../../components/verifyButton.vue'
import FlowRecordTable from '../../../components/FlowRecordTable.vue' import FlowRecordTable from '../../../components/FlowRecordTable.vue'
export default { export default {
beforeRouteEnter (to, from, next) { beforeRouteEnter (to, from, next) {
next(function (vm) { next(function (vm) {
global.getMenuIndex(vm); global.getMenuIndex(vm)
}) })
}, },
data () { data () {
return { return {
ext: {},
thisWeek: '',
nextWeek: '',
userId: '',
workload: '',
projectName: '',
money: '',
projectNo: '',
expandRight: false, expandRight: false,
app: app, app: app,
reimburseId: '', reimburseId: '',
@ -278,70 +206,94 @@
} }
}, },
created () { created () {
this.taskId = this.$route.params.taskId; this.taskId = this.$route.params.taskId
if (this.$route.name === 'ExpenseClaimApplyEdit') { if (this.$route.name === 'ExpenseClaimApplyEdit') {
this.isEdit = true; this.isEdit = true
this.flowId = this.$route.params.id; this.flowId = this.$route.params.id
this.checkOrVerify = true; this.checkOrVerify = true
} else if (this.$route.name === 'ExpenseClaimApplyVerify') { } else if (this.$route.name === 'ExpenseClaimApplyVerify') {
this.isVerify = true; this.isVerify = true
this.flowId = this.$route.params.verifyId; this.flowId = this.$route.params.verifyId
this.checkOrVerify = false; this.checkOrVerify = false
this.isNotVerifyReady = this.$route.query.isNotVerifyReady === 'Y'; this.isNotVerifyReady = this.$route.query.isNotVerifyReady === 'Y'
} else if (this.$route.name === 'ExpenseClaimApplyArchive') { } else if (this.$route.name === 'ExpenseClaimApplyArchive') {
this.flowId = this.$route.params.id; this.flowId = this.$route.params.id
this.checkOrVerify = true; this.checkOrVerify = true
} else { } else {
this.flowId = this.$route.params.id; this.flowId = this.$route.params.id
this.checkOrVerify = true; this.checkOrVerify = true
} }
this.init(); this.init()
this.getBudgetCategory(); this.getBudgetCategory()
this.getAllPeople(); this.getAllPeople()
}, },
methods: { methods: {
init () { init () {
this.reimburseId = this.$route.params.id; this.reimburseId = this.$route.params.id
Api.FinanceManagement.getReimburseDetail(this.reimburseId).then(result => { this.getWeekly()
console.log("====",result); // Api.FinanceManagement.getReimburseDetail(this.reimburseId).then(result => {
// console.log("====",result);
// if (result.status === 0) {
// this.userInfoOption.push({
// label: result.data.userInfo.userInfoName,
// model: result.data.userInfo.userInfoId
// });
// let orgName = '';
// if (result.data.userInfo.dept.length) {
// for (let i=0; i<result.data.userInfo.dept.length; i++) {
// orgName += result.data.userInfo.dept[i].orgName;
// if (i<result.data.userInfo.dept.length-1) {
// orgName += '>'
// }
// }
// this.orgOptions.push({
// label: orgName,
// model: result.data.userInfo.dept[result.data.userInfo.dept.length-1].id
// });
// this.formModel.deptId = result.data.userInfo.dept[result.data.userInfo.dept.length-1].id;
// }
// if (result.data.activitiStatus == '0' || result.data.activitiStatus == '1' || result.data.activitiStatus == '3') {
// this.formModel.activie = 2;
// }
// if (result.data.activitiStatus == '2' || result.data.activitiStatus == '4') {
// this.formModel.activie = 3;
// }
// this.formModel.userInfoId = result.data.userInfo.userInfoId;
// this.formModel.reimburseCategory = result.data.ext.reimburseCategory;
// this.formModel.reason = result.data.ext.reason;
// this.formModel.total = result.data.ext.total;
// this.formModel.witness = result.data.ext.witness;
// this.formModel.selectBudgetCategoryId = [];
// for(let i=0; i<result.data.budgetCategory.length; i++) {
// this.formModel.selectBudgetCategoryId.push(result.data.budgetCategory[i].id);
// }
// this.formModel.reimburseDetail = result.data.ext.detail;
// this.judgeEditAuth(result.data.isEdit);
// } else {
// this.$message.error(`${result.msg}`);
// }
// })
},
getWeekly () {
Api.ProjectManagements.getWeekly().then(result => {
this.tableRowsData = []
this.pageLoading = false
if (result.status === 0) { if (result.status === 0) {
this.userInfoOption.push({ console.log("获取信息",result)
label: result.data.userInfo.userInfoName, let dataList = result.data.ls[0]
model: result.data.userInfo.userInfoId console.log("result.data.ls[0]",result.data.ls[0])
}); this.formModel.userInfoId = dataList.userName
let orgName = ''; // for (let i = 0; i < dataList.length; i++) {
if (result.data.userInfo.dept.length) { // this.tableRowsData.push({
for (let i=0; i<result.data.userInfo.dept.length; i++) { // projectNo: dataList[i].projectNo,
orgName += result.data.userInfo.dept[i].orgName; // projectName: dataList[i].projectName,
if (i<result.data.userInfo.dept.length-1) { // userName: dataList[i].userName,
orgName += '>' // workload: dataList[i].workload,
} // thisWeek: dataList[i].thisWeek,
} // nextWeek: dataList[i].nextWeek
this.orgOptions.push({ // })
label: orgName, // }
model: result.data.userInfo.dept[result.data.userInfo.dept.length-1].id console.log('tableRowsData', this.tableRowsData)
});
this.formModel.deptId = result.data.userInfo.dept[result.data.userInfo.dept.length-1].id;
}
if (result.data.activitiStatus == '0' || result.data.activitiStatus == '1' || result.data.activitiStatus == '3') {
this.formModel.activie = 2;
}
if (result.data.activitiStatus == '2' || result.data.activitiStatus == '4') {
this.formModel.activie = 3;
}
this.formModel.userInfoId = result.data.userInfo.userInfoId;
this.formModel.reimburseCategory = result.data.ext.reimburseCategory;
this.formModel.reason = result.data.ext.reason;
this.formModel.total = result.data.ext.total;
this.formModel.witness = result.data.ext.witness;
this.formModel.selectBudgetCategoryId = [];
for(let i=0; i<result.data.budgetCategory.length; i++) {
this.formModel.selectBudgetCategoryId.push(result.data.budgetCategory[i].id);
}
this.formModel.reimburseDetail = result.data.ext.detail;
this.judgeEditAuth(result.data.isEdit);
} else {
this.$message.error(`${result.msg}`);
} }
}) })
}, },
@ -349,14 +301,14 @@
judgeEditAuth (canEdit) { judgeEditAuth (canEdit) {
if (this.isNotVerifyReady === true) { if (this.isNotVerifyReady === true) {
if (this.$route.name === 'ExpenseClaimApplyVerify') { if (this.$route.name === 'ExpenseClaimApplyVerify') {
this.canEditBudgetCategory = canEdit; this.canEditBudgetCategory = canEdit
this.rewriteAgreeVerify = canEdit; this.rewriteAgreeVerify = canEdit
this.rewriteRejectVerify = canEdit; this.rewriteRejectVerify = canEdit
this.rewriteDestroyVerify = canEdit; this.rewriteDestroyVerify = canEdit
if (this.formModel.reimburseCategory !== 'medical') { if (this.formModel.reimburseCategory !== 'medical') {
this.canEditReimburseCategory = canEdit; this.canEditReimburseCategory = canEdit
// //
let destData = []; let destData = []
this.reimburseCategoryData.forEach((category, index) => { this.reimburseCategoryData.forEach((category, index) => {
destData.push( destData.push(
{ {
@ -365,21 +317,21 @@
disabled: category.model === 'medical', disabled: category.model === 'medical',
} }
) )
}); })
this.reimburseCategoryData = destData; this.reimburseCategoryData = destData
} }
this.isEdit = false; this.isEdit = false
} else { } else {
this.isEdit = canEdit; this.isEdit = canEdit
} }
} }
}, },
getBudgetCategory () { getBudgetCategory () {
Api.Common.getBudgetCategory().then(result => { Api.Common.getBudgetCategory().then(result => {
if (result.status === 0) { if (result.status === 0) {
this.budgetCategory = this.assembleOrgData(result.data); this.budgetCategory = this.assembleOrgData(result.data)
} else { } else {
this.$message.error(`${result.msg}`); this.$message.error(`${result.msg}`)
} }
}) })
}, },
@ -388,7 +340,7 @@
Api.PersonnelManagement.personListNew(1, 10000).then((result) => { Api.PersonnelManagement.personListNew(1, 10000).then((result) => {
if (result.status === 0) { if (result.status === 0) {
for (let i = 0; i < result.data.ls.length; i++) { for (let i = 0; i < result.data.ls.length; i++) {
let people = result.data.ls[i]; let people = result.data.ls[i]
this.formWitnessData.push({ this.formWitnessData.push({
model: people.id, model: people.id,
label: people.personName, label: people.personName,
@ -398,24 +350,24 @@
} else { } else {
this.$message.error(`${result.msg}`) this.$message.error(`${result.msg}`)
} }
}); })
}, },
// //
assembleOrgData (source) { assembleOrgData (source) {
let dest = []; let dest = []
for (let i = 0; i < source.length; i++) { for (let i = 0; i < source.length; i++) {
let org = { let org = {
value: source[i].id, value: source[i].id,
parentId: source[i].parentId, parentId: source[i].parentId,
label: source[i].name, label: source[i].name,
depth: source[i].depth depth: source[i].depth
}; }
if (source[i].childList && source[i].childList.length > 0) { if (source[i].childList && source[i].childList.length > 0) {
org['children'] = this.assembleOrgData(source[i].childList); org['children'] = this.assembleOrgData(source[i].childList)
} }
dest.push(org); dest.push(org)
} }
return dest; return dest
}, },
addFile () { addFile () {
this.formModel.reimburseDetail.push({ this.formModel.reimburseDetail.push({
@ -428,16 +380,16 @@
}, },
deleteFile (index) { deleteFile (index) {
if (this.formModel.reimburseDetail.length === 1) { if (this.formModel.reimburseDetail.length === 1) {
this.$message.warning('报销明细不能为空!'); this.$message.warning('报销明细不能为空!')
return false; return false
} }
this.formModel.reimburseDetail.splice(index, 1); this.formModel.reimburseDetail.splice(index, 1)
}, },
// //
handleFileRemove (file, fileList) { handleFileRemove (file, fileList) {
console.log(fileList); console.log(fileList)
setTimeout(() => { setTimeout(() => {
this.formModel.reimburseDetail[this.reimburseIndex].fileList = []; this.formModel.reimburseDetail[this.reimburseIndex].fileList = []
for (let i = 0; i < fileList.length; i++) { for (let i = 0; i < fileList.length; i++) {
this.formModel.reimburseDetail[this.reimburseIndex].fileList.push({ this.formModel.reimburseDetail[this.reimburseIndex].fileList.push({
@ -454,30 +406,33 @@
url: file.response.data.url url: file.response.data.url
}) })
} else { } else {
this.$message.error(`${res.msg}`); this.$message.error(`${res.msg}`)
} }
console.log(this.formModel.reimburseDetail[this.reimburseIndex].fileList) console.log(this.formModel.reimburseDetail[this.reimburseIndex].fileList)
}, },
reimburseClick (index) { reimburseClick (index) {
this.reimburseIndex = index; this.reimburseIndex = index
console.log(index) console.log(index)
}, },
// //
agreeFlowVerify (comment) { agreeFlowVerify (comment) {
this.save('formName', 'commit', comment); this.save('formName', 'commit', comment)
}, },
// //
rejectFlowVerify (comment) { rejectFlowVerify (comment) {
this.save('formName', 'back', comment); this.save('formName', 'back', comment)
}, },
// //
destroyFlowVerify (comment) { destroyFlowVerify (comment) {
this.save('formName', 'end', comment); this.save('formName', 'end', comment)
},
cancel () {
this.$router.go(-1)
}, },
save (formName, operation, comment) { save (formName, operation, comment) {
this.$refs[formName].validate((valid) => { this.$refs[formName].validate((valid) => {
if (valid) { if (valid) {
let detail = []; let detail = []
for (let i = 0; i < this.formModel.reimburseDetail.length; i++) { for (let i = 0; i < this.formModel.reimburseDetail.length; i++) {
detail.push({ detail.push({
time: this.formModel.reimburseDetail[i].time ? moment(this.formModel.reimburseDetail[i].time).format('YYYY-MM-DD') : '', time: this.formModel.reimburseDetail[i].time ? moment(this.formModel.reimburseDetail[i].time).format('YYYY-MM-DD') : '',
@ -496,58 +451,58 @@
total: this.formModel.total, total: this.formModel.total,
witness: this.formModel.witness // witness: this.formModel.witness //
} }
};
if(operation) {
data['activitiFrom'] = operation;
data['comment'] = comment;
data['taskId'] = this.taskId;
} }
this.isSave = false; if (operation) {
data['activitiFrom'] = operation
data['comment'] = comment
data['taskId'] = this.taskId
}
this.isSave = false
Api.FinanceManagement.editReimburse(this.reimburseId, data).then(result => { Api.FinanceManagement.editReimburse(this.reimburseId, data).then(result => {
this.isSave = true; this.isSave = true
if (result.status === 0) { if (result.status === 0) {
if (operation) { if (operation) {
let message = ''; let message = ''
switch (operation) { switch (operation) {
case 'commit': case 'commit':
message = '审核同意成功!'; message = '审核同意成功!'
break; break
case 'back': case 'back':
message = '审核驳回成功!'; message = '审核驳回成功!'
break; break
case 'end': case 'end':
message = '审核作废成功!'; message = '审核作废成功!'
break; break
default: default:
break; break
} }
this.$message.info(message); this.$message.info(message)
this.$router.push({name: 'FlowVerify'}); this.$router.push({name: 'FlowVerify'})
} else { } else {
this.$message.info('修改成功!'); this.$message.info('修改成功!')
this.$router.push({name: 'ExpenseClaimApply'}); this.$router.push({name: 'ExpenseClaimApply'})
} }
} else { } else {
this.$message.error(`${result.msg}`); this.$message.error(`${result.msg}`)
} }
}); })
console.log(data); console.log(data)
} else { } else {
console.log('error submit!!'); console.log('error submit!!')
return false; return false
} }
}); })
}, },
moneyChange () { moneyChange () {
let total = 0; let total = 0
for (let i = 0; i < this.formModel.reimburseDetail.length; i++) { for (let i = 0; i < this.formModel.reimburseDetail.length; i++) {
if (this.formModel.reimburseDetail[i].money === '' || !this.formModel.reimburseDetail[i].money) { if (this.formModel.reimburseDetail[i].money === '' || !this.formModel.reimburseDetail[i].money) {
total += 0; total += 0
} else { } else {
total += Number(this.formModel.reimburseDetail[i].money); total += Number(this.formModel.reimburseDetail[i].money)
} }
} }
this.formModel.total = total.toFixed(2); this.formModel.total = total.toFixed(2)
} }
}, },
components: { components: {