|
- <template>
- <div class="app-container">
- <van-nav-bar
- left-arrow
- fixed
- placeholder
- @click-left="$router.back(-1)"
- >
- <template #title>
- <p style="font-weight: bold;">查看常用转账申请</p>
- </template>
- <template #right>
- <van-icon name="../../../static/images/icon/icon_flow.png" size="20" @click="goFlow"/>
- </template>
- </van-nav-bar>
- <p class="main_title">基础信息</p>
- <div class="main_box">
- <van-field readonly label="申请时间" v-model="form.applyDate" input-align="right" />
- <van-field readonly label="资金支出类别" v-model="capitalExpenditureType" input-align="right" label-width="auto" />
- <van-field readonly label="支出总金额" v-model="form.expenditureAmount" input-align="right" label-width="auto"/>
- </div>
-
- <div class="main_box" style="margin-top: 10px;">
- <van-field readonly label="付款事由" v-model="form.remark" type="textarea" input-align="right" rows="3" label-width="auto"/>
- </div>
-
- <div class="main_box" style="margin-top: 10px;">
- <van-field readonly label="说明情况" v-model="form.explainSituation" type="textarea" input-align="right" rows="3" label-width="auto"/>
- </div>
-
- <p class="main_title">付款方信息</p>
- <div class="main_box">
- <van-field readonly label="付款方" v-model="form.payer" input-align="right" label-width="auto"/>
- <van-field readonly label="付款方账户" v-model="form.payerAccount" input-align="right" label-width="auto"/>
- </div>
-
- <div class="main_box" v-if="capitalExpenditureOpen" style="margin-bottom: 10px;margin-top: 10px;position:relative;">
- <van-field readonly label="项目名称" v-model="projectForm.projectName" input-align="right" />
- <van-field readonly label="承建单位" v-model="projectForm.projectContractor" input-align="right" label-width="auto"/>
- <van-field readonly label="合同价款(元)" v-model="projectForm.projectAmount" input-align="right" label-width="auto"/>
- <van-field readonly label="工程款类型" v-model="projectFundType" input-align="right" />
- <van-field readonly label="工程发票号" v-model="projectForm.projectBillNum" input-align="right" label-width="auto"/>
- </div>
-
- <p class="main_title">收款方信息</p>
-
- <div class="main_box" style="margin-bottom: 15px;">
- <van-field readonly label="收款账户类型" v-model="form.accountType == 1 ? '公户':'私户'" input-align="right" label-width="auto" />
- </div>
-
- <div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index">
- <div class="main_box" style="margin-bottom: 10px;position:relative;">
- <van-field readonly label="收款方" v-model="item.payee" input-align="right" />
- <van-field readonly label="收款账户" v-model="item.payeeAccount" input-align="right" label-width="auto"/>
- <van-field readonly label="开户银行" v-model="item.bankDeposit" input-align="right" label-width="auto"/>
- <van-field readonly label="收入金额" v-model="item.incomeAmount" input-align="right" label-width="auto"/>
- <van-field readonly label="所属银行" v-model="item.bankTypeText" input-align="right" />
- </div>
- </div>
- <p class="main_title">上传附件</p>
- <div class="main_box" style="padding: 5px 0 0 8px;">
- <van-uploader v-model="fileList" v-if="fileList==null||fileList.length==0" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
- <van-uploader v-model="fileList" v-if="fileList!=null&&fileList.length>0" :deletable="false" :max-count="fileList.length" ></van-uploader>
- </div>
- </div>
- </template>
-
- <script>
- import { getTransfer , queryTransferDetail , listPayee , updateTransfer , getProjectto , listProject , addProjectto , customSubmit} from "@/api/onlineHome/bankAgriculture/paymentApproval";
- import request from '@/utils/request'
- import {
- attachmentList,
- commonAttach,
- systemAttachment
- } from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
- export default {
- name: "approvalDetail",
- data() {
- return {
- showcapital:false,
- showpayee:false,
- showlasj:false,
- showbankType:false,
- showproject:false,
- showFundType:false,
-
- minDate: new Date(),
- maxDate: new Date(2025, 10, 1),
- currentDate: new Date(),
- form:{},
- fileList:[],
- capitalExpenditureType:'',
- payee:'',
- bankType:'',
-
- wfydlxDictionaries:[],
- jglxDictionaries:[],
- sysDictionaries:[],
- capitalExpenditureTypeOptions:[],
- bankTypeDictionaries:[],
- projectList:[],
- projectFundTypeOptions:[],
- projectFundTypeDictionaries:[],
- projectListShow:[],
-
- chargeItme:[],
- chargeItmeShow:[],
-
- payeeList:[],
- // 查询参数
- queryParams: {
- transferType:"",
- orderByColumn: "id",
- isAsc: "desc",
- },
- capitalExpenditureOpen:false,
- projectForm:{
- projectId:null,
- projectName:null,
- projectContractor:null,
- projectAmount:null,
- projectBillNum:null,
- projectFundType:'1',
- outId:null,
- ynType:'1'
- },
- projectFundType:''
- };
- },
- created() {
- let queryParams={
- pageNum: 1,
- pageSize: 100,
- }
- listProject(queryParams).then(response => {
- console.log(response)
- this.projectList = response.rows;
- for (var i = 0; i < response.rows.length; i++) {
- this.projectListShow.push({text: response.rows[i].projectName, value: response.rows[i].id});
- }
- });
- this.getDicts("project_fund_type").then((response) => {
- for (var i = 0; i < response.data.length; i++) {
- this.projectFundTypeOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue});
- }
- this.projectFundTypeDictionaries = response.data;
- });
- this.getDictionaries();
- this.getFileList();
- },
- methods: {
- goFlow(){
- window.location='approvalProcess?id='+this.$route.query.id;
- },
- getDictionaries(){
- getTransfer(this.$route.query.id).then((response) => {
- this.getDicts("capital_expenditure_type").then((res) => {
- for (var i = 0; i < res.data.length; i++) {
- this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
- }
- this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
- });
- if(response.data.capitalExpenditureType==2){
- this.capitalExpenditureOpen = true
- let param={
- 'outId' : response.data.id,
- 'ynType' : '1'
- }
- getProjectto(param).then(res => {
- this.projectFundType = this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType);
- this.projectForm = res.data
- })
- }else{
- this.showproject = false
- }
- this.form = response.data;
- });
- queryTransferDetail(this.$route.query.id).then((response) => {
- this.getDicts("bank_type").then(res => {
- for (var i = 0; i < res.data.length; i++) {
- this.bankTypeDictionaries.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
- }
- for (var j = 0 ; j < response.rows.length ; j++){
- response.rows[j].bankTypeText = this.selectDictLabel(res.data, response.rows[j].bankType);
- }
- this.chargeItme = response.rows;
- });
- this.getPayeeList();
- });
- },
- addChargeItme(index){
- this.chargeItme.splice(index + 1, 0, {
- payeeId: "", //收款方ID
- payee: "", //收款方
- payeeAccount: "", //收款账户
- bankDeposit: "", //开户银行
- incomeAmount: "", //收入金额
- bankType: "", //所属银行
- });
- },
- getPayeeList() {
- //普通转账
- this.queryParams.accountType = this.form.accountType
- this.queryParams.status = "0"
- listPayee(this.queryParams).then((response) => {
- for (var i = 0; i < response.rows.length; i++) {
- this.payeeList.push({text: response.rows[i].payee, value: response.rows[i].id});
- }
- });
- },
- payeeDictLabel(datas, value) {
- var actions = [];
- Object.keys(datas).some((key) => {
- if (datas[key].payeeId == ('' + value)) {
- actions.push(datas[key].payee);
- return true;
- }
- })
- return actions.join('');
- },
- onConfirmCapital(data){
- console.log(data)
- if (data.value != 2){
- this.capitalExpenditureOpen = false;
- this.projectForm = [];
- }else{
- this.capitalExpenditureOpen = true;
- }
- this.capitalExpenditureType = data.text;
- this.form.capitalExpenditureType = data.value;
- this.showcapital = false;
- },
- onConfirmFundType(data){
- console.log(data)
- this.projectForm.projectFundType = data.value;
- this.projectFundType = data.text;
- this.showFundType = false;
- },
- onConfirmProject(data){
- console.log(data)
- this.projectList.map(res => {
- console.log(res)
- if(res.projectName==data.text){
- this.projectForm.projectId = res.id
- this.projectForm.projectName = res.projectName
- this.projectForm.projectContractor = res.projectContractor
- this.projectForm.projectAmount = res.projectAmount
- console.log(this.projectForm)
- }
- })
- this.showproject = false;
- },
- onConfirmPayee(data){
- // this.chargeItme[this.chargeItme.length-1].payeeText = data.text;
- this.chargeItme[this.chargeItme.length-1].payee = data.text;
- this.chargeItme[this.chargeItme.length-1].payeeId = data.value;
- console.log(this.chargeItme)
- this.showpayee = false;
- },
- onConfirmBankType(data){
- console.log(this.chargeItme)
- this.chargeItme[this.chargeItme.length-1].bankTypeText = data.text;
- this.chargeItme[this.chargeItme.length-1].bankType = data.value;
- this.showbankType = false;
- },
- onConfirmLasj(data){
- this.form.applyDate = this.getNowFormatDate(data).substr(0,10);
- this.showlasj = false;
- },
- accountTypeChange(e){
- console.log(e)
- this.payeeList = [];
- this.queryParams.accountType = this.form.accountType
- this.queryParams.status = "0"
- listPayee(this.queryParams).then((response) => {
- for (var i = 0; i < response.rows.length; i++) {
- this.payeeList.push({text: response.rows[i].payee, value: response.rows[i].id});
- }
- });
- },
- goAdd(){
- if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){
- this.$toast.error("付款事由禁止包含|。");
- return;
- }
- if(this.form.capitalExpenditureType==2){
- if(this.projectForm.projectName==""||this.projectForm.projectName==null){
- this.$toast.error('请选择项目名称!');
- return;
- }
- if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){
- this.$toast.error('请输入工程发票号!');
- return;
- }
- }
- this.$set(this.form, "payeeList", this.chargeItme);
- this.$set(this.form, "bankTypeList", this.chargeItme);
- this.$set(this.form, "accountTypeList", this.chargeItme);
- this.$set(this.form, "transferStatusList", this.chargeItme);
- console.log(this.form);
- updateTransfer(this.form).then(response => {
- console.log(response);
- this.projectForm.outId = this.form.id
- this.$set(this.projectForm, "ynType", '1');
- console.log(this.projectForm)
- if(this.form.capitalExpenditureType==2){
- addProjectto(this.projectForm).then(res => {
- customSubmit(this.form.id).then(res => {
- this.$toast.success('提交成功');
- setTimeout(function(){
- history.go(-1)
- },2000)
- })
- })
- }else{
- customSubmit(this.form.id).then(res => {
- this.$toast.success('提交成功');
- setTimeout(function(){
- history.go(-1)
- },2000)
- })
- }
- });
- },
- goUpdate(){
- if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){
- this.$toast.error("付款事由禁止包含|。");
- return;
- }
- if(this.form.capitalExpenditureType==2){
- if(this.projectForm.projectName==""||this.projectForm.projectName==null){
- this.$toast.error('请选择项目名称!');
- return;
- }
- if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){
- this.$toast.error('请输入工程发票号!');
- return;
- }
- }
- this.$set(this.form, "payeeList", this.chargeItme);
- this.$set(this.form, "bankTypeList", this.chargeItme);
- this.$set(this.form, "accountTypeList", this.chargeItme);
- this.$set(this.form, "transferStatusList", this.chargeItme);
- this.projectForm.outId = this.form.id
- updateTransfer(this.form).then((response) => {
- this.projectForm.outId = this.form.id
- this.$set(this.projectForm, "ynType", '1');
- if(this.form.capitalExpenditureType==2){
- addProjectto(this.projectForm).then(res => {
- this.$toast.success('修改成功');
- setTimeout(function(){
- history.go(-1)
- },2000)
- })
- }else{
- this.$toast.success('修改成功');
- setTimeout(function(){
- history.go(-1)
- },2000)
- }
- });
- },
- beforeRead(file) {
- this.uploadFiles.push(file.file);
- },
- deleteFile(file){
- console.log(file)
- this.uploadFiles.map((response,index) => {
- if(file.file == response){
- this.uploadFiles.splice(index,1)
- }
- })
- if(file.id){
- systemAttachment(file.id).then((res) => {
- });
- }
- },
- getFileList(){
- let oData= {
- tableId: this.$route.query.id,
- tableName: "t_yinnong_transfer",
- bizPath: "upload",
- fileType: "0",
- }
- attachmentList(oData).then(res => {
- console.log(res)
- console.log(location.protocol+"//"+location.host+request.defaults.baseURL)
- res.rows.map(r => {
- let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
- this.fileList.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
- console.log(r)
- })
- })
- },
- goBack(){
- window.history.go(-1)
- },
- //删除家庭成员
- deleteChargeItme(index){
- this.chargeItme.splice(index,1)
- },
- },
- }
- </script>
-
- <style scoped lang="scss">
- .app-container {
- padding: 2% 0;
- }
- .main_title{
- font-size: 0.4rem;
- color: #1D6FE9;
- margin: 0.2rem 6%;
- position: relative;
- }
- .main_box{
- width: 96%;
- margin: 0 auto;
- border-radius: 6px;
- box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
- overflow: hidden;
- background-color: #FFF;
- }
- .submitButton{
- width: 80%;
- margin: 0 auto;
- background-color: #1D6FE9;
- }
-
- .addFamily{
- position: absolute;
- top: -2px;
- right: 0;
- border-radius: 50%;
- }
- .deleteFamily{
- position: absolute;
- top: 0rem;
- right: 6%;
- z-index: 9;
- border-radius: 50%;
- }
- </style>
|