| | |
| | | |
| | | <template> |
| | | <div class="app-container"> |
| | | <el-form |
| | | :model="queryParams" |
| | | ref="queryForm" |
| | | :inline="true" |
| | | v-show="showSearch" |
| | | label-width="68px" |
| | | > |
| | | <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px"> |
| | | <el-row> |
| | | <el-col :span="6"> |
| | | <el-form-item label="出差人" prop="travelers"> |
| | | <el-input |
| | | v-model="queryParams.travelers" |
| | | placeholder="请输入出差人" |
| | | clearable |
| | | size="small" |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | <el-input v-model="queryParams.travelers" placeholder="请输入出差人" clearable size="small" |
| | | @keyup.enter.native="handleQuery" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="6"> |
| | | <el-form-item label="报销人" prop="username"> |
| | | <el-input |
| | | v-model="queryParams.username" |
| | | placeholder="请输入报销人" |
| | | clearable |
| | | size="small" |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | <el-input v-model="queryParams.username" placeholder="请输入报销人" clearable size="small" |
| | | @keyup.enter.native="handleQuery" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="6"> |
| | | <el-col :span="6"> |
| | | <el-form-item label="审核状态" prop="recordstatus"> |
| | | <el-input |
| | | v-model="queryParams.recordstatus" |
| | | placeholder="请选择审核状态" |
| | | clearable |
| | | size="small" |
| | | v-if="0" |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | <el-select |
| | | v-model="queryParams.recordstatus" |
| | | placeholder="请选择审核状态" |
| | | clearable |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_recordstatus" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | <el-input v-model="queryParams.recordstatus" placeholder="请选择审核状态" clearable size="small" v-if="0" |
| | | @keyup.enter.native="handleQuery" /> |
| | | <el-select v-model="queryParams.recordstatus" placeholder="请选择审核状态" clearable size="small"> |
| | | <el-option v-for="dict in dict.type.sys_recordstatus" :key="dict.value" :label="dict.label" |
| | | :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | <el-row> |
| | | <el-col :span="8"> |
| | | <el-form-item label="报销日期" prop="createTime"> |
| | | <el-date-picker |
| | | format="yyyy-MM-dd" |
| | | value-format="yyyy-MM-dd" |
| | | v-model="value1" |
| | | type="daterange" |
| | | @blur="onpick" |
| | | range-separator="至" |
| | | start-placeholder="报销开始日期" |
| | | end-placeholder="报销结束日期" |
| | | @keyup.enter.native="handleQuery" |
| | | > |
| | | <el-date-picker format="yyyy-MM-dd" value-format="yyyy-MM-dd" v-model="value1" type="daterange" @blur="onpick" |
| | | range-separator="至" start-placeholder="报销开始日期" end-placeholder="报销结束日期" @keyup.enter.native="handleQuery"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="6"> |
| | | <el-form-item> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-search" |
| | | size="mini" |
| | | @click="handleQuery" |
| | | >搜索</el-button |
| | | > |
| | | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" |
| | | >重置</el-button |
| | | > |
| | | </el-form-item> |
| | | <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> |
| | | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | |
| | | |
| | | </el-form> |
| | | |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="primary" |
| | | plain |
| | | icon="el-icon-plus" |
| | | size="mini" |
| | | @click="handleAdd" |
| | | >新增</el-button |
| | | > |
| | | <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd">新增</el-button> |
| | | <!-- v-hasPermi="['project:funddetail:add']" --> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="warning" |
| | | plain |
| | | icon="el-icon-download" |
| | | size="mini" |
| | | :loading="exportLoading" |
| | | @click="handleExport" |
| | | >导出</el-button |
| | | > |
| | | <el-button type="warning" plain icon="el-icon-download" size="mini" :loading="exportLoading" |
| | | @click="handleExport">导出</el-button> |
| | | </el-col> |
| | | <!-- v-hasPermi="['project:funddetail:export']" --> |
| | | <right-toolbar |
| | | :showSearch.sync="showSearch" |
| | | @queryTable="getList" |
| | | ></right-toolbar> |
| | | <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> |
| | | </el-row> |
| | | |
| | | <el-table |
| | | border |
| | | v-loading="loading" |
| | | :data="reimbursementList" |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table border v-loading="loading" :data="reimbursementList" @selection-change="handleSelectionChange"> |
| | | <!-- <el-table-column type="selection" width="55" align="center" /> --> |
| | | <el-table-column |
| | | label="记录状态" |
| | | align="center" |
| | | prop="recordstatus" |
| | | width="180" |
| | | > |
| | | <el-table-column label="记录状态" align="center" prop="recordstatus" width="180"> |
| | | <template slot-scope="scope"> |
| | | <dict-tag |
| | | :options="dict.type.sys_recordstatus" |
| | | :value="scope.row.recordstatus" |
| | | /> |
| | | <dict-tag :options="dict.type.sys_recordstatus" :value="scope.row.recordstatus" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="报销人类别" |
| | | width="120" |
| | | align="center" |
| | | prop="costtype" |
| | | > |
| | | <el-table-column label="报销人类别" width="120" align="center" prop="costtype"> |
| | | <template slot-scope="scope"> |
| | | <dict-tag |
| | | :options="dict.type.sys_travelexpensebelong" |
| | | :value="scope.row.costtype" |
| | | /> |
| | | <dict-tag :options="dict.type.sys_travelexpensebelong" :value="scope.row.costtype" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="申请时间" |
| | | width="120" |
| | | align="center" |
| | | prop="createTime" |
| | | > |
| | | <el-table-column label="申请时间" width="120" align="center" prop="createTime"> |
| | | <template slot-scope="scope"> |
| | | <span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="报销人" |
| | | width="120" |
| | | align="center" |
| | | prop="username" |
| | | > |
| | | <el-table-column label="报销人" width="120" align="center" prop="username"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="出差人" |
| | | width="180" |
| | | align="center" |
| | | prop="travelers" |
| | | > |
| | | <el-table-column label="出差人" width="180" align="center" prop="travelers"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="报销金额" |
| | | width="120" |
| | | align="center" |
| | | prop="amountrequested" |
| | | > |
| | | <el-table-column label="报销金额" width="120" align="center" prop="amountrequested"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="出差事由" |
| | | align="center" |
| | | width="280" |
| | | prop="reason" |
| | | > |
| | | <el-table-column label="出差事由" align="center" width="280" prop="reason"> |
| | | </el-table-column> |
| | | <el-table-column label="联系电话" width="120" align="center" prop="phone"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="开户银行" |
| | | width="180" |
| | | align="center" |
| | | prop="depositbank" |
| | | > |
| | | <el-table-column label="开户银行" width="180" align="center" prop="depositbank"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="银行卡号" |
| | | width="180" |
| | | align="center" |
| | | prop="bankcardno" |
| | | > |
| | | <el-table-column label="银行卡号" width="180" align="center" prop="bankcardno"> |
| | | </el-table-column> |
| | | <!-- <el-table-column label="报销合计" align="center" prop="financechecher"> |
| | | </el-table-column> --> |
| | | <!-- <el-table-column |
| | | label="财务审核" |
| | | width="120" |
| | | align="center" |
| | | prop="financechecher" |
| | | > |
| | | </el-table-column> --> |
| | | <el-table-column |
| | | label="捐献者" |
| | | width="120" |
| | | align="center" |
| | | prop="donorname" |
| | | > |
| | | <!-- <el-table-column label="报销合计" align="center" prop="financechecher"/>--> |
| | | <!-- <el-table-column label="财务审核" width="120" align="center" prop="financechecher" /> --> |
| | | <el-table-column label="捐献者" width="120" align="center" prop="donorname"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="操作" |
| | | align="center" |
| | | fixed="right" |
| | | class-name="small-padding fixed-width" |
| | | width="270" |
| | | > |
| | | <el-table-column label="操作" align="center" fixed="right" class-name="small-padding fixed-width" width="270"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-upload2" |
| | | @click="handleup(scope.row)" |
| | | >上报</el-button |
| | | > |
| | | <el-button |
| | | v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-edit" |
| | | @click="handleUpdate(scope.row)" |
| | | >修改</el-button |
| | | > |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-edit" |
| | | @click="handleDetail(scope.row)" |
| | | >查看</el-button |
| | | > |
| | | <el-button v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" size="mini" type="text" |
| | | icon="el-icon-upload2" @click="handleup(scope.row)">上报</el-button> |
| | | <el-button v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" size="mini" type="text" |
| | | icon="el-icon-edit" @click="handleUpdate(scope.row)">修改</el-button> |
| | | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleDetail(scope.row)">查看</el-button> |
| | | <!-- v-hasPermi="['project:funddetail:edit']" --> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-download" |
| | | @click="gettable(scope.row)" |
| | | > |
| | | <el-button size="mini" type="text" icon="el-icon-download" @click="gettable(scope.row)"> |
| | | 下载 |
| | | </el-button> |
| | | <!-- v-hasPermi="['project:funddetail:edit']" --> |
| | | <el-button |
| | | v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-delete" |
| | | @click="handleDelete(scope.row)" |
| | | >删除</el-button |
| | | > |
| | | <el-button v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" size="mini" type="text" |
| | | icon="el-icon-delete" @click="handleDelete(scope.row)">删除</el-button> |
| | | <!-- v-hasPermi="['project:funddetail:remove']" --> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <!-- v-hasPermi="['project:donateconsolationfund:edit']" --> |
| | | |
| | | <pagination |
| | | v-show="total > 0" |
| | | :total="total" |
| | | :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" |
| | | /> |
| | | <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" /> |
| | | |
| | | <!-- 添加或修改费用申请明细对话框 --> |
| | | <el-dialog |
| | | :title="title" |
| | | :visible.sync="open" |
| | | :close-on-click-modal="false" |
| | | width="1600px" |
| | | append-to-body |
| | | @close="reset" |
| | | |
| | | > |
| | | <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="1400px" append-to-body |
| | | @close="reset"> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="120px"> |
| | | <el-row> |
| | | <el-col :span="7"> |
| | | <!-- <el-form-item label="备注" prop="reason"> |
| | | <el-input v-model="form.reason" placeholder="专职人员 协调员" /> |
| | | </el-form-item> --><el-form-item label="报销人" prop="username"> |
| | | <el-select |
| | | v-model="form.username" |
| | | clearable |
| | | filterable |
| | | allow-create |
| | | ref="getReportname" |
| | | default-first-option |
| | | placeholder="请选择" |
| | | > |
| | | <el-option |
| | | v-for="item in reporters" |
| | | :key="item.reportNo" |
| | | :label="item.reportName" |
| | | :value="item.reportName" |
| | | > |
| | | <el-row><el-col :span="5"> |
| | | <el-form-item label="申请日期" prop="createTime"> |
| | | <el-date-picker style="width: 100%" v-model="form.createTime" type="date" value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="申请日期"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="经办人" prop="username"> |
| | | <el-select v-model="form.username" clearable filterable allow-create ref="getReportname" |
| | | default-first-option placeholder="请选择"> |
| | | <el-option v-for="item in reporters" :key="item.reportNo" :label="item.reportName" |
| | | :value="item.reportName"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="8"> |
| | | <el-form-item label="捐献编号" prop="donorno"> |
| | | <el-input |
| | | disabled |
| | | v-model="form.donorno" |
| | | placeholder="捐献编号" |
| | | /> |
| | | </el-col><el-col :span="5"> |
| | | <el-form-item label="区域组长" prop="managername"> |
| | | <el-input v-model="form.managername" placeholder="区域组长" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="7"> |
| | | |
| | | <el-col :span="5"> |
| | | <el-form-item label="捐献者" prop="infoid"> |
| | | <el-select |
| | | v-model="form.infoid" |
| | | @change="selectbaseinfo" |
| | | filterable |
| | | placeholder="请选择捐献者" |
| | | > |
| | | <el-option |
| | | v-for="item in baselist" |
| | | :key="item.index" |
| | | :label="item.name" |
| | | :value="item.infoid" |
| | | > |
| | | <el-select v-model="form.infoid" @change="selectbaseinfo" filterable placeholder="请选择捐献者"> |
| | | <el-option v-for="item in baselist" :key="item.index" :label="item.name" :value="item.infoid"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row style="margin-top: 10px"> |
| | | <el-col :span="5"> |
| | | <el-form-item label="报销金额" prop="amountrequested"> |
| | | <el-input :disabled="true" v-model="form.amountrequested" placeholder="报销合计金额" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="10"> |
| | | <el-form-item label="大写金额" prop="bigstrmoney"> |
| | | <el-input :disabled="true" v-model="form.bigstrmoney" placeholder="报销大写金额" /> |
| | | </el-form-item> |
| | | </el-col><el-col :span="5"> |
| | | <el-form-item label="审核状态" prop="flowlevel"> |
| | | <el-select v-model="form.recordstatus" placeholder="请选择审核状态" clearable :disabled="true" size="small"> |
| | | <el-option v-for="dict in dict.type.sys_recordstatus" :key="dict.value" :label="dict.label" |
| | | :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <!-- |
| | | <el-row> |
| | | <el-col :span="7"> |
| | | <el-form-item label="出差人分类" prop="costtype"> |
| | | <el-select |
| | | v-model="form.costtype" |
| | | value-key="value" |
| | | placeholder="请选择出差人分类" |
| | | @change="getTravelers" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_travelexpensebelong" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | ></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item label="出差人" prop="travelers"> |
| | | <el-select |
| | | v-model="form.travelers" |
| | | clearable |
| | | filterable |
| | | allow-create |
| | | ref="getReportname" |
| | | default-first-option |
| | | placeholder="请选择" |
| | | @change="selectedTraveler" |
| | | > |
| | | <el-option |
| | | v-for="item in travelers" |
| | | :key="item.reportNo" |
| | | :label="item.reportName" |
| | | :value="item.reportName" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="7"> |
| | | <el-form-item label="区域组长" prop="managername"> |
| | | <el-input v-model="form.managername" placeholder="区域组长" /> |
| | | </el-form-item> </el-col></el-row |
| | | ><el-row> |
| | | <el-col :span="15"> |
| | | <el-form-item label="出差事由" prop="reason"> |
| | | <el-input v-model="form.reason" placeholder="出差事由" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="7"> |
| | | <el-form-item label="申请日期" prop="createTime"> |
| | | <el-date-picker |
| | | style="width: 100%" |
| | | v-model="form.createTime" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="申请日期" |
| | | > |
| | | </el-date-picker> |
| | | <el-col :span="5"> |
| | | <el-form-item label="报销分类" prop="costtype"> |
| | | <el-select v-model="form.costtype" value-key="value" placeholder="请选择出差人分类" @change="getTravelers"> |
| | | <el-option v-for="dict in dict.type.sys_travelexpensebelong" :key="dict.value" :label="dict.label" |
| | | :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="报销人" prop="travelers"> |
| | | <el-select v-model="form.travelers" clearable filterable allow-create ref="getReportname" |
| | | default-first-option placeholder="请选择" @change="selectedTraveler"> |
| | | <el-option v-for="item in travelers" :key="item.reportNo" :label="item.reportName" |
| | | :value="item.reportName"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="收款银行" prop="depositbank"> |
| | | <el-input v-model="form.depositbank" placeholder="开户银行" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="银行账号" prop="bankcardno"> |
| | | <el-input v-model="form.bankcardno" placeholder="开户银行" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="联系电话" prop="phone"> |
| | | <el-input v-model="form.phone" placeholder="联系电话" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="22"> |
| | | <el-form-item label="备注" prop="remark"> |
| | | <el-input v-model="form.remark" placeholder="备注" /> |
| | | <el-col :span="20"><el-divider></el-divider></el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="5"> |
| | | <el-form-item label="家属费用" prop="donoramount"> |
| | | <el-input :disabled="true" v-model="form.donoramount" placeholder="家属费用" @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | " onchange="if(/[^0-9.]/.test(this.value)){alert('请正确输入整数数字或小数!');this.value='';}" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="15"> |
| | | <el-form-item label="费用说明" prop="donorremark"> |
| | | <el-input :disabled="true" v-model="form.donorremark" placeholder="家属费用说明" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="8"> </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="家属人数" prop="donorrelatives"> |
| | | <el-input v-model="form.donorrelatives" placeholder="家属人数" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="收款人" prop="donorpayee"> |
| | | <el-input v-model="form.donorpayee" placeholder="亲属收款人" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="收款银行" prop="donorbank"> |
| | | <el-input v-model="form.donorbank" placeholder="家属银行" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="银行卡号" prop="donorbankcard"> |
| | | <el-input v-model="form.donorbankcard" placeholder="银行卡号" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <!-- <el-row type="flex" :gutter="10" align="right" class="mb8"> |
| | | --> |
| | | <!-- |
| | | <el-row type="flex" :gutter="10" align="right" class="mb8"> |
| | | <el-col :span="6"> |
| | | <el-button |
| | | type="primary" |
| | |
| | | >新增一行</el-button |
| | | > |
| | | </el-col> |
| | | </el-row> --> |
| | | </el-row> |
| | | --> |
| | | <el-row> |
| | | <el-table :data="applicationDetailArr" border highlight-current-row > |
| | | <el-table-column |
| | | prop="orderno" |
| | | slot="" |
| | | label="序号" |
| | | align="center" |
| | | fixed |
| | | width="80" |
| | | > |
| | | <el-table :data="applicationDetailArr" border highlight-current-row> |
| | | <el-table-column prop="orderno" slot="" label="序号" align="center" fixed width="65"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.orderno" placeholder="序号" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="starttime" |
| | | slot="" |
| | | label="出发日期" |
| | | fixed |
| | | align="center" |
| | | width="150" |
| | | > |
| | | <el-table-column prop="persontype" slot="" label="人员类别" align="center" fixed width="120"> |
| | | <template slot-scope="scope"> |
| | | <el-date-picker |
| | | clearable |
| | | size="small" |
| | | style="width: 100%" |
| | | v-model="scope.row.starttime" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="出发日期" |
| | | @change="getStandard(scope.row)" |
| | | > |
| | | <el-select v-model="form.persontype" value-key="value" placeholder="人员类别" @change="getTravelers"> |
| | | <el-option v-for="dict in dict.type.sys_travelexpensebelong" :key="dict.value" :label="dict.label" |
| | | :value="dict.value"></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="personname" slot="" label="出差人" align="center" fixed width="120"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.personname" placeholder="出差人" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="starttime" slot="" label="开始日期" fixed align="center" width="150"> |
| | | <template slot-scope="scope"> |
| | | <el-date-picker :picker-options="{ |
| | | disabledDate: time => { |
| | | if (scope.row.endtime) { return time.getTime() > new Date(scope.row.endtime.replace(/-/g, '/')) } |
| | | } |
| | | }" clearable size="small" style="width: 100%" v-model="scope.row.starttime" type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" placeholder="开始日期" @blur="getallowance(scope.row)"> |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="departure" |
| | | slot="" |
| | | label="出发地点" |
| | | align="center" |
| | | width="200" |
| | | fixed |
| | | > |
| | | <el-table-column prop="endtime" slot="" label="结束日期" align="center" fixed width="150"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.departure" |
| | | placeholder="出发地点" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="endtime" |
| | | slot="" |
| | | label="到达日期" |
| | | align="center" |
| | | width="150" |
| | | fixed |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-date-picker |
| | | clearable |
| | | size="small" |
| | | style="width: 100%" |
| | | v-model="scope.row.endtime" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="到达日期" |
| | | > |
| | | <el-date-picker :picker-options="{ |
| | | disabledDate: time => { |
| | | if (scope.row.starttime) { return time.getTime() < new Date(scope.row.starttime.replace(/-/g, '/')) } |
| | | } |
| | | }" clearable size="small" style="width: 100%" v-model="scope.row.endtime" type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" placeholder="结束日期" @blur="getallowance(scope.row)"> |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="到达地点" |
| | | prop="destination" |
| | | align="center" |
| | | width="200" |
| | | > |
| | | <el-table-column prop="departure" slot="" label="出发地" align="center" fixed width="100"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.destination" |
| | | placeholder="到达地点" |
| | | /> |
| | | <el-input v-model="scope.row.departure" placeholder="出发地" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="days" label="天数" width="70" align="center"> |
| | | <el-table-column label="到达地" prop="destination" align="center" fixed width="100"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.days" |
| | | @blur="getStandard(scope.row)" |
| | | placeholder="天数" |
| | | /> |
| | | <el-input v-model="scope.row.destination" placeholder="到达地" @blur="getallowance(scope.row)" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="traffictype" |
| | | label="交通工具" |
| | | align="center" |
| | | width="120" |
| | | > |
| | | <el-table-column prop="days" label="天数" width="65" align="center"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.traffictype" |
| | | placeholder="交通工具" |
| | | /> |
| | | <el-input v-model="scope.row.days" @blur="getStandard(scope.row)" placeholder="天数" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="trafficexpense" |
| | | label="交通费" |
| | | align="center" |
| | | width="80" |
| | | > |
| | | <el-table-column prop="traffictype" label="出发交通工具" align="center" width="100"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.trafficexpense" |
| | | placeholder="交通费" |
| | | @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | " |
| | | /> |
| | | <el-select v-model="scope.row.traffictype" placeholder="出发交通工具"> |
| | | <el-option v-for="dict in dict.type.sys_traffictype" :key="dict.value" :label="dict.label" |
| | | :value="dict.label"></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="cityfee" |
| | | label="市内交通费" |
| | | align="center" |
| | | width="100" |
| | | > |
| | | <el-table-column prop="traffictype2" label="返回交通工具" align="center" width="100"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.cityfee" |
| | | placeholder="市内交通费" |
| | | @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | " |
| | | >{{ Number(scope.row.cityfee).toFixed(2) }} |
| | | <el-select v-model="scope.row.traffictype2" placeholder="返回交通工具"> |
| | | <el-option v-for="dict in dict.type.sys_traffictype" :key="dict.value" :label="dict.label" |
| | | :value="dict.label"></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="trafficexpense" label="交通费" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.trafficexpense" placeholder="交通费" @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | <!-- |
| | | <el-table-column prop="cityfee" label="市内交通费" align="center" width="100"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.cityfee" placeholder="市内交通费" @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | ">{{ Number(scope.row.cityfee).toFixed(2) }} |
| | | </el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="hotelexpense" |
| | | label="住宿费" |
| | | align="center" |
| | | width="80" |
| | | > |
| | | --> |
| | | <el-table-column prop="hotelexpense" label="住宿费" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.hotelexpense" |
| | | placeholder="住宿费" |
| | | @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | " |
| | | /> |
| | | <el-input v-model="scope.row.hotelexpense" placeholder="住宿费" @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="otherexpense" |
| | | label="杂费" |
| | | align="center" |
| | | width="80" |
| | | > |
| | | |
| | | <el-table-column prop="foodexpenses" label="餐费报销" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.otherexpense" |
| | | placeholder="杂费" |
| | | @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | " |
| | | /> |
| | | <el-input v-model="scope.row.foodexpenses" placeholder="伙食费报销" @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="foodexpenses" |
| | | label="伙食费报销" |
| | | align="center" |
| | | width="100" |
| | | > |
| | | <el-table-column prop="foodallowance" label="伙食补助" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.foodexpenses" |
| | | placeholder="伙食费报销" |
| | | @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | " |
| | | /> |
| | | <el-input v-model="scope.row.foodallowance" placeholder="伙食费补助" @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="foodallowance" |
| | | label="伙食费补助" |
| | | align="center" |
| | | width="100" |
| | | > |
| | | <el-table-column prop="otherexpense" label="公杂费补助" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.foodallowance" |
| | | placeholder="伙食费补助" |
| | | @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | " |
| | | /> |
| | | <el-input v-model="scope.row.otherexpense" placeholder="杂费" @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="otherfeeamount" |
| | | label="其他费用" |
| | | align="center" |
| | | width="90" |
| | | > |
| | | |
| | | <el-table-column prop="otherfeeamount" label="其他费用" align="center" width="90"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.otherfeeamount" |
| | | placeholder="其他费用" |
| | | @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | " |
| | | /> |
| | | <el-input v-model="scope.row.otherfeeamount" placeholder="其他费用" @blur=" |
| | | (val) => { |
| | | sumTotalFee(); |
| | | } |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="departure" |
| | | slot="" |
| | | label="其他费用说明" |
| | | align="center" |
| | | width="120" |
| | | > |
| | | <el-table-column prop="departure" slot="" label="其他费用说明" align="center" width="120"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.otherfeedesc" |
| | | placeholder="其他费用说明" |
| | | /> |
| | | <el-input v-model="scope.row.otherfeedesc" placeholder="其他费用说明" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="total" |
| | | label="合计" |
| | | align="center" |
| | | width="110" |
| | | > |
| | | |
| | | <el-table-column prop="total" label="合计" align="center" width="110"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.total" placeholder="合计" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | fixed="right" |
| | | label="操作" |
| | | align="center" |
| | | width="120" |
| | | v-if="dialogType == 'edit'" |
| | | > |
| | | <el-table-column fixed="right" label="操作" align="center" width="120" v-if="dialogType == 'edit'"> |
| | | <template slot-scope="scope"> |
| | | <el-button type="text" size="mini" @click="addRow(scope.$index)" |
| | | >新增</el-button |
| | | > |
| | | <el-button |
| | | @click.native.prevent=" |
| | | deleteRow(scope.$index, applicationDetailArr, scope.row) |
| | | " |
| | | type="text" |
| | | size="small" |
| | | > |
| | | <el-button type="text" size="mini" @click="addRow(scope.$index)">新增</el-button> |
| | | <el-button @click.native.prevent=" |
| | | deleteRow(scope.$index, applicationDetailArr, scope.row) |
| | | " type="text" size="small"> |
| | | 删除 |
| | | </el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-row> |
| | | <el-row style="margin-top: 10px"> |
| | | <el-col :span="7"> |
| | | <el-form-item label="报销合计" prop="amountrequested"> |
| | | <el-input v-model="form.amountrequested" placeholder="报销合计" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item label="大写" prop="bigstrmoney"> |
| | | <el-input v-model="form.bigstrmoney" placeholder="领款金额" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="7"> |
| | | <el-form-item label="领款金额" prop="amountrequested"> |
| | | <el-input v-model="form.amountrequested" placeholder="领款金额" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | |
| | | <!-- |
| | | <el-row> |
| | | <el-col :span="7"> |
| | | <el-form-item label="开户银行" prop="depositbank"> |
| | | <el-input v-model="form.depositbank" placeholder="开户银行" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item label="银行账号" prop="bankcardno"> |
| | | <el-input v-model="form.bankcardno" placeholder="开户银行" /> |
| | | <el-form-item label="中心负责人" prop="opochecker"> |
| | | <el-input v-model="form.opochecker" placeholder="中心负责人" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="7"> |
| | | <el-form-item label="联系电话" prop="phone"> |
| | | <el-input v-model="form.phone" placeholder="联系电话" /> |
| | | <el-form-item label="财务副院长" prop="finvicepresident"> |
| | | <el-input v-model="form.finvicepresident" placeholder="财务副院长" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="7"> |
| | | <el-form-item label="业务副院长" prop="busvicepresident"> |
| | | <el-input v-model="form.busvicepresident" placeholder="业务副院长" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-col :span="7"> |
| | | <el-form-item label="中心负责人" prop="opochecker"> |
| | | <el-input v-model="form.opochecker" placeholder="中心负责人" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="8"> |
| | | <el-form-item label="财务副院长" prop="finvicepresident"> |
| | | <el-input |
| | | v-model="form.finvicepresident" |
| | | placeholder="财务副院长" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="7"> |
| | | <el-form-item label="业务副院长" prop="busvicepresident"> |
| | | <el-input |
| | | v-model="form.busvicepresident" |
| | | placeholder="业务副院长" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-row> |
| | | <el-col :span="7"> |
| | | <el-form-item label="办公室主任" prop="officedirector"> |
| | | <el-input |
| | | v-model="form.officedirector" |
| | | placeholder="办公室主任" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item label="财务部主任" prop="financedirector"> |
| | | <el-input |
| | | v-model="form.financedirector" |
| | | placeholder="财务部主任" |
| | | /> |
| | | <el-input v-model="form.officedirector" placeholder="办公室主任" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="7"> |
| | | <el-form-item label="审核状态" prop="flowlevel"> |
| | | <el-select |
| | | v-model="form.recordstatus" |
| | | placeholder="请选择审核状态" |
| | | clearable |
| | | :disabled="true" |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_recordstatus" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | <el-form-item label="财务部主任" prop="financedirector"> |
| | | <el-input v-model="form.financedirector" placeholder="财务部主任" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | --> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <!-- <el-form-item label="文件地址" prop="fileurl"> |
| | | <el-col :span="14"> |
| | | <!-- |
| | | <el-form-item label="文件地址" prop="fileurl"> |
| | | <el-input v-model="form.fileurl" placeholder="请输入文件地址" /> |
| | | </el-form-item> --> |
| | | </el-form-item> |
| | | --> |
| | | <el-form-item label="文件上传" align="left" prop="annexfiles"> |
| | | <!-- <file-upload ref="fileUpload" :fileType=fileType :limit="1" :on-success="handleUploadSuccess"></file-upload> --> |
| | | <el-upload |
| | | size="mini" |
| | | class="upload-demo" |
| | | :action="uploadFileUrl" |
| | | :file-list="fileList" |
| | | multiple |
| | | :limit="5" |
| | | :headers="headers" |
| | | :on-success=" |
| | | <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileList" multiple :limit="5" |
| | | :headers="headers" :on-success=" |
| | | (response, file, fileList) => |
| | | uploadSccess(response, file, fileList) |
| | | " |
| | | :on-preview="downFile" |
| | | :disabled='dialogType == "detail"' |
| | | :on-error="handleUploadError" |
| | | :on-exceed="handleExceed" |
| | | :on-remove="remove" |
| | | accept="image/*,.pdf" |
| | | |
| | | > |
| | | <el-button :disabled='dialogType == "detail"' size="small" type="primary">上传</el-button> |
| | | " :on-preview="downFile" :disabled='dialogType == "detail"' :on-error="handleUploadError" |
| | | :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf"> |
| | | <el-button :disabled='dialogType == "detail"' size="small" type="primary">上传</el-button> |
| | | </el-upload> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | |
| | | <el-row v-if="dialogType == 'detail'"> |
| | | <el-table :data="fundflowList" border> |
| | | <el-table-column |
| | | label="审核人" |
| | | align="center" |
| | | width="120" |
| | | prop="checkusername" |
| | | /> |
| | | <el-table-column |
| | | label="审核日期" |
| | | align="center" |
| | | width="160" |
| | | prop="createTime" |
| | | /> |
| | | <el-table-column |
| | | label="审核结果" |
| | | align="center" |
| | | width="200" |
| | | prop="flowconclusion" |
| | | ><template slot-scope="scope" |
| | | ><span v-if="scope.row.flowconclusion == 1">通过</span |
| | | ><span v-if="scope.row.flowconclusion == 2" |
| | | >不通过</span |
| | | ></template |
| | | > |
| | | <el-table-column label="审核人" align="center" width="120" prop="checkusername" /> |
| | | <el-table-column label="审核日期" align="center" width="160" prop="createTime" /> |
| | | <el-table-column label="审核结果" align="center" width="200" prop="flowconclusion"><template |
| | | slot-scope="scope"><span v-if="scope.row.flowconclusion == 1">通过</span><span |
| | | v-if="scope.row.flowconclusion == 2">不通过</span></template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="审核备注" |
| | | align="center" |
| | | prop="flowcontent" |
| | | /> |
| | | <el-table-column label="审核备注" align="center" prop="flowcontent" /> |
| | | </el-table> |
| | | </el-row> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button |
| | | type="primary" |
| | | @click="submitForm" |
| | | v-if="dialogType == 'edit'" |
| | | >保 存</el-button |
| | | > |
| | | <el-button type="primary" @click="submitForm" v-if="dialogType == 'edit'">保 存</el-button> |
| | | <el-button @click="cancel">取 消</el-button> |
| | | </div> |
| | | </el-dialog> |
| | |
| | | getstandardRMB, |
| | | fundSubmit, |
| | | } from "@/api/project/reimbursement"; |
| | | import { regionDataPlus, CodeToText } from "element-china-area-data"; |
| | | import { |
| | | addReimbursementdetail, |
| | | updateReimbursementdetail, |
| | |
| | | delReimbursementdetailrbid, |
| | | getTravelStandard, |
| | | } from "@/api/project/reimbursementdetail"; |
| | | |
| | | import { listFundflow } from "@/api/project/fundflow"; |
| | | import { getInfoBytheUserNo } from "@/api/project/externalperson"; |
| | | |
| | | import { regionDataPlus, CodeToText } from "element-china-area-data"; |
| | | import Li_area_select from "@/components/Address"; |
| | | import { getUserProfile } from "@/api/system/user"; |
| | | import { |
| | |
| | | listReportname, |
| | | listUser, |
| | | } from "@/api/project/organization"; |
| | | import { listFundflow } from "@/api/project/fundflow"; |
| | | import { getToken } from "@/utils/auth"; |
| | | export default { |
| | | components: { |
| | |
| | | "sys_financeitemtype", |
| | | "sys_recordstatus", |
| | | "sys_travelexpensebelong", |
| | | "sys_traffictype", |
| | | ], |
| | | data() { |
| | | return { |
| | |
| | | { required: true, message: "请选择报销归类", trigger: "blur" }, |
| | | ], |
| | | username: [ |
| | | { required: true, message: "请输入报销人", trigger: "blur" }, |
| | | { required: true, message: "请选择填报人", trigger: "blur" }, |
| | | ], |
| | | travelers: [ |
| | | { required: true, message: "请选择报销人", trigger: "blur" }, |
| | | ], |
| | | reason: [ |
| | | { required: true, message: "请输入出差事由", trigger: "blur" }, |
| | | ], |
| | | }, |
| | | //费用申请单form |
| | |
| | | fundflowList: [], |
| | | showApproveRecordDialog: false, |
| | | dialogType: "edit", |
| | | uploadFileUrl: process.env.VUE_APP_BASE_API + "/common/upload", |
| | | //文件列表 |
| | | |
| | | //上传发票文件路径 |
| | | uploadFileUrl: process.env.VUE_APP_BASE_API + "/common/upload", |
| | | //文件列表 |
| | | fileList: [], |
| | | headers: { |
| | | |
| | | headers: { |
| | | Authorization: "Bearer " + getToken(), |
| | | }, |
| | | }; |
| | |
| | | // console.log("组合的新数组", baseinfolist); |
| | | if (baseinfolist != 0) { |
| | | this.baselist = baseinfolist; |
| | | // console.log("11111111", this.baselist); |
| | | } |
| | | }); |
| | | this.getUsermsg(); |
| | | }, |
| | | methods: { |
| | | handleUploadError() {}, |
| | | handleUploadError() { }, |
| | | remove(file) { |
| | | |
| | | this.fileList.splice(this.fileList.indexOf(file),1) |
| | | |
| | | |
| | | this.fileList.splice(this.fileList.indexOf(file), 1) |
| | | |
| | | }, |
| | | handleExceed() { |
| | | handleExceed() { |
| | | this.$message.error(`上传文件数量不能超过 ${5} 个!`); |
| | | }, |
| | | //文件上传成功回调 |
| | | //文件上传成功回调 |
| | | uploadSccess(response, file, fileList) { |
| | | //获取附件信息位置 |
| | | if (response.code == 200) { |
| | |
| | | } else { |
| | | this.$modal.msgError(response.msg); |
| | | } |
| | | //console.log("上传文件后:" + JSON.stringify(this.fileList)); |
| | | }, |
| | | selectReporters() { |
| | | //专家人员列表 |
| | |
| | | }); |
| | | } |
| | | }); |
| | | }, |
| | | //计算补助 |
| | | getallowance(row) { |
| | | if ( |
| | | row.starttime != "" && |
| | | row.starttime != null && |
| | | row.endtime != "" && |
| | | row.endtime != null |
| | | ) { |
| | | //计算天数 |
| | | row.days = 1 + Math.floor(Math.abs(Date.parse(row.starttime) - Date.parse(row.endtime)) / (1099 * 3699 * 24)) |
| | | |
| | | /*let aDate, oDate1, oDate2, Date_end,Date_start; |
| | | Date_end = row.endtime.split(" "); //将时间以空格划分为两个数组 第一个数组是 2019-05-20 第二个数组是 00:00:00 |
| | | aDate = Date_end[0].split("-"); //获取第一个数组的值 |
| | | oDate1 = new Date(aDate[0], aDate[1], aDate[2]); //将前半个数组以-拆分,每一个是一个数值 |
| | | |
| | | Date_start = row.starttime.split(" "); |
| | | aDate = Date_start[0].split("-"); |
| | | oDate2 = new Date(aDate[0], aDate[1], aDate[2]); |
| | | row.days = 1+parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 / 24); //把相差的毫秒数转换为天数 |
| | | */ |
| | | } else { |
| | | row.days = '' |
| | | }; |
| | | |
| | | //公杂费补助:杭州桐庐,建德,淳安60,杭州其他地区0,非杭州地区80 |
| | | if (row.destination != "") { |
| | | var str = row.destination; |
| | | //验证城市 |
| | | ////if (str.indexOf("桐庐,建德,淳安") !== -1) { }; |
| | | if (str.includes("杭州")) { row.otherexpense = parseInt(row.days) * 0 } |
| | | else if (str.includes("桐庐") || str.includes("建德") || str.includes("淳安")) { row.otherexpense = parseInt(row.days) * 60 } |
| | | else { row.otherexpense = parseInt(row.days) * 80 }; |
| | | } |
| | | |
| | | //伙食费补助:城市(西藏,新疆,青海.120)(其他100) |
| | | row.foodallowance = parseInt(row.days) * 100 |
| | | |
| | | //计算合计 |
| | | this.sumTotalFee(); |
| | | }, |
| | | |
| | | getStandard(row) { |
| | |
| | | } |
| | | return area; |
| | | }, |
| | | |
| | | selectbaseinfo() { |
| | | console.log("infoid", this.form.infoid); |
| | | let list = this.balist; |
| | | list.forEach((item) => { |
| | | if (item.id == this.form.infoid) { |
| | |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | onpick(e) { |
| | | // console.log(e,this.value1) |
| | | }, |
| | | |
| | | gettable(e) { |
| | | const id = e.id; |
| | | getdownload(e.id).then((res) => { |
| | |
| | | // aEle.click(); |
| | | // }); |
| | | }, |
| | | |
| | | /** 查询报销申请列表 */ |
| | | getList() { |
| | | this.loading = true; |
| | |
| | | // 取消按钮 |
| | | cancel() { |
| | | this.open = false; |
| | | |
| | | |
| | | }, |
| | | // 表单重置 |
| | | reset() { |
| | | |
| | | |
| | | this.fileList = [] |
| | | this.form = { |
| | | ceshi: {}, |
| | |
| | | }, |
| | | // 下载文件 |
| | | downFile(item) { |
| | | |
| | | const url = process.env.VUE_APP_BASE_API + item.url |
| | | var a = document.createElement('a'); |
| | | var event = new MouseEvent('click'); |
| | | a.download = item.name; |
| | | a.href = url; |
| | | a.dispatchEvent(event); |
| | | |
| | | |
| | | var a = document.createElement('a'); |
| | | var event = new MouseEvent('click'); |
| | | a.download = item.name; |
| | | a.href = url; |
| | | a.dispatchEvent(event); |
| | | }, |
| | | /** 搜索按钮操作 */ |
| | | handleQuery() { |
| | |
| | | }, |
| | | /** 修改按钮操作 */ |
| | | handleUpdate(row) { |
| | | this.dialogType = "edit"; |
| | | this.dialogType = "edit"; |
| | | this.reset(); |
| | | const id = row.id || this.ids; |
| | | getReimbursement(id).then((response) => { |
| | | this.form = response.data; |
| | | this.fileList = this.form.annexfiles ? this.form.annexfiles.split(",").map(item => ({url: item, name: item } )) : [] |
| | | this.fileList = this.form.annexfiles ? this.form.annexfiles.split(",").map(item => ({ url: item, name: item })) : [] |
| | | this.form.recordstatus = response.data.recordstatus + ""; |
| | | this.open = true; |
| | | this.title = "修改报销申请"; |
| | |
| | | const id = row.id || this.ids; |
| | | getReimbursement(id).then((response) => { |
| | | this.form = response.data; |
| | | this.fileList = this.form.annexfiles ? this.form.annexfiles.split(",").map(item => ({url: item, name: item } )) : [] |
| | | |
| | | this.fileList = this.form.annexfiles ? this.form.annexfiles.split(",").map(item => ({ url: item, name: item })) : [] |
| | | |
| | | this.form.recordstatus = response.data.recordstatus + ""; |
| | | this.open = true; |
| | | this.title = "查看报销申请"; |
| | |
| | | let costtypeindex = belongArr.findIndex( |
| | | (item) => this.form.costtype == item.value |
| | | ); |
| | | let list = this.fileList; |
| | | let list = this.fileList; |
| | | if (list.length > 0) { |
| | | this.form.annexfiles = list.map(item => item.url).join(","); |
| | | } |
| | |
| | | let id = res.data; |
| | | for (let i = 0; i < applicationDetailArr.length; i++) { |
| | | applicationDetailArr[i].rbid = id; |
| | | |
| | | |
| | | addReimbursementdetail(applicationDetailArr[i]); |
| | | } |
| | | console.log("idaaaaaa:", res,id,this.applicationDetailArr); |
| | | }); |
| | | //details新增 |
| | | |
| | | // applicationDetailArr |
| | | }); |
| | | } |
| | | } |
| | |
| | | this.getList(); |
| | | this.$modal.msgSuccess("删除成功"); |
| | | }) |
| | | .catch(() => {}); |
| | | .catch(() => { }); |
| | | }, |
| | | /** 导出按钮操作 */ |
| | | handleExport() { |
| | |
| | | this.$download.name(response.msg); |
| | | this.exportLoading = false; |
| | | }) |
| | | .catch(() => {}); |
| | | .catch(() => { }); |
| | | }, |
| | | |
| | | //新增一行 |
| | |
| | | sumTotalFee() { |
| | | // debugger; |
| | | let allSum = 0; |
| | | //捐献者家属费用 |
| | | if (!isNaN(parseFloat(this.form.donoramount))) { |
| | | allSum += parseFloat(this.form.donoramount); |
| | | } |
| | | |
| | | //报销明细费用 |
| | | try { |
| | | for (let i = 0; i < this.applicationDetailArr.length; i++) { |
| | | let totalFee = 0; |
| | |
| | | allSum += parseFloat(this.applicationDetailArr[i].total); |
| | | } |
| | | } |
| | | |
| | | this.form.amountrequested = allSum.toFixed(2); |
| | | this.form.bigstrmoney = this.convertCurrency(this.form.amountrequested); |
| | | } catch {} |
| | | } catch { } |
| | | }, |
| | | |
| | | getDetailArr(rbid) { |