|
@@ -1,10 +1,10 @@
|
|
|
<template>
|
|
<template>
|
|
|
<view class="content">
|
|
<view class="content">
|
|
|
|
|
|
|
|
- <view v-for="(item,index) in contractDrafts" :key="index">
|
|
|
|
|
|
|
+ <view v-for="(item,index) in form.contractDrafts" :key="index">
|
|
|
<view class="addtitle flex6">
|
|
<view class="addtitle flex6">
|
|
|
<text class="ty">汇票{{index+1}}</text>
|
|
<text class="ty">汇票{{index+1}}</text>
|
|
|
- <!-- <text class="tde">删除</text> -->
|
|
|
|
|
|
|
+ <text class="tde" @click="deleBill(index)">删除</text>
|
|
|
</view>
|
|
</view>
|
|
|
<view class="listitem">
|
|
<view class="listitem">
|
|
|
<text class="lys">汇票名称</text>
|
|
<text class="lys">汇票名称</text>
|
|
@@ -15,25 +15,29 @@
|
|
|
<view class="listitem">
|
|
<view class="listitem">
|
|
|
<text class="lys">汇票号码</text>
|
|
<text class="lys">汇票号码</text>
|
|
|
<view class="inbox">
|
|
<view class="inbox">
|
|
|
- <input type="text" v-model="item.draftNo" placeholder="请输入汇票的号码" placeholder-style="color:#BEBDBB" />
|
|
|
|
|
|
|
+ <input type="text" v-model="item.draftNo" placeholder="请输入汇票的号码"
|
|
|
|
|
+ placeholder-style="color:#BEBDBB" />
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
<view class="listitem">
|
|
<view class="listitem">
|
|
|
<text class="lys">兑换人</text>
|
|
<text class="lys">兑换人</text>
|
|
|
<view class="chosbox">
|
|
<view class="chosbox">
|
|
|
- <uni-data-select v-model="item.accepter" :localdata="range" @change="changeacPerson" :showas="false"></uni-data-select>
|
|
|
|
|
|
|
+ <uni-data-select v-model="item.acceptor" :localdata="range1" @change="changeacPerson"
|
|
|
|
|
+ :showas="false" :plname="'搜索兑换人名称'"></uni-data-select>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
<view class="listitem">
|
|
<view class="listitem">
|
|
|
<text class="lys">出票人</text>
|
|
<text class="lys">出票人</text>
|
|
|
<view class="chosbox">
|
|
<view class="chosbox">
|
|
|
- <uni-data-select v-model="item.drawersId" :localdata="range" @change="changedrPerson"></uni-data-select>
|
|
|
|
|
|
|
+ <uni-data-select v-model="item.drawers" :localdata="range2" @change="changedrPerson"
|
|
|
|
|
+ :plname="'搜索出票人名称'"></uni-data-select>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
<view class="listitem">
|
|
<view class="listitem">
|
|
|
<text class="lys">金额</text>
|
|
<text class="lys">金额</text>
|
|
|
<view class="inbox">
|
|
<view class="inbox">
|
|
|
- <input type="text" v-model="item.money" placeholder="请输入汇票的金额" placeholder-style="color:#BEBDBB" />
|
|
|
|
|
|
|
+ <input type="digit" v-model="item.money" placeholder="请输入汇票的金额" placeholder-style="color:#BEBDBB"
|
|
|
|
|
+ @blur="getMoney" @input="getMoneyIndex(index)" />
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
<view class="listitem">
|
|
<view class="listitem">
|
|
@@ -74,12 +78,9 @@
|
|
|
</view>
|
|
</view>
|
|
|
<view class="listitem">
|
|
<view class="listitem">
|
|
|
<text class="lys">最高贷款额度</text>
|
|
<text class="lys">最高贷款额度</text>
|
|
|
- <view class="inbox" v-if="form.serviceRate&&form.interestRate">
|
|
|
|
|
- <input type="text" v-model="form.loanLimit" placeholder="请输入最高贷款额度" placeholder-style="color:#BEBDBB"
|
|
|
|
|
- disabled="true" />
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="inbox" v-else>
|
|
|
|
|
- <input type="text" v-model="form.loanLimit" placeholder="请输入最高贷款额度" placeholder-style="color:#BEBDBB"
|
|
|
|
|
|
|
+ <view class="inbox">
|
|
|
|
|
+
|
|
|
|
|
+ <input type="text" v-model="item.loanLimit" placeholder="自动计算得出" placeholder-style="color:#1F242A"
|
|
|
disabled="true" />
|
|
disabled="true" />
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
@@ -87,31 +88,34 @@
|
|
|
<view class="listitem">
|
|
<view class="listitem">
|
|
|
<text class="lys">服务费率</text>
|
|
<text class="lys">服务费率</text>
|
|
|
<view class="inbox">
|
|
<view class="inbox">
|
|
|
- <input type="text" v-model="form.serviceRate" placeholder="输入费率" placeholder-style="color:#BEBDBB"
|
|
|
|
|
- />
|
|
|
|
|
|
|
+ <input type="digit" v-model="item.serviceRate" placeholder="显示对于费率"
|
|
|
|
|
+ placeholder-style="color:#BEBDBB" @blur="getserviceRate"
|
|
|
|
|
+ @input="getserviceRateIndex(index)" />
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
<view class="listitem">
|
|
<view class="listitem">
|
|
|
<text class="lys">服务费</text>
|
|
<text class="lys">服务费</text>
|
|
|
<view class="inbox">
|
|
<view class="inbox">
|
|
|
- <input type="text" v-model="form.serviceMoney" placeholder="自动计算得出" placeholder-style="color:#BEBDBB"
|
|
|
|
|
- disabled="true" />
|
|
|
|
|
|
|
+ <input type="text" v-model="item.serviceMoney" placeholder="自动计算得出"
|
|
|
|
|
+ placeholder-style="color:#BEBDBB" disabled="true" />
|
|
|
</view>
|
|
</view>
|
|
|
|
|
+
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
<view class="flex4">
|
|
<view class="flex4">
|
|
|
<view class="listitem">
|
|
<view class="listitem">
|
|
|
<text class="lys">利率</text>
|
|
<text class="lys">利率</text>
|
|
|
<view class="inbox">
|
|
<view class="inbox">
|
|
|
- <input type="text" v-model="form.interestRate" placeholder="输入利率" placeholder-style="color:#BEBDBB"
|
|
|
|
|
- />
|
|
|
|
|
|
|
+ <input type="digit" v-model="item.interestRate" placeholder="显示对于利率"
|
|
|
|
|
+ placeholder-style="color:#BEBDBB" @blur="getinterestRate"
|
|
|
|
|
+ @input="getinterestRateIndex(index)" />
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
<view class="listitem">
|
|
<view class="listitem">
|
|
|
<text class="lys">利息</text>
|
|
<text class="lys">利息</text>
|
|
|
<view class="inbox">
|
|
<view class="inbox">
|
|
|
- <input type="text" v-model="form.interest" placeholder="自动计算得出" placeholder-style="color:#BEBDBB"
|
|
|
|
|
- disabled="true" />
|
|
|
|
|
|
|
+ <input type="text" v-model="item.interest" placeholder="自动计算得出"
|
|
|
|
|
+ placeholder-style="color:#BEBDBB" disabled="true" />
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
@@ -121,14 +125,13 @@
|
|
|
<text
|
|
<text
|
|
|
style="font-size: 24rpx; color:#D05C39;padding-top: 45rpx;padding-left: 20rpx;">*支持上传pdf、jpg/jpeg、png格式</text>
|
|
style="font-size: 24rpx; color:#D05C39;padding-top: 45rpx;padding-left: 20rpx;">*支持上传pdf、jpg/jpeg、png格式</text>
|
|
|
</view>
|
|
</view>
|
|
|
-
|
|
|
|
|
- <view class="inbox" style="border: none;padding-bottom: 0;">
|
|
|
|
|
- <u-upload :fileList="fileList4" @afterRead="afterRead" @delete="deletePic" name="4" multiple
|
|
|
|
|
- :maxCount="10" width="100" height="100" @click="checkIndex(index)"></u-upload>
|
|
|
|
|
|
|
+
|
|
|
|
|
+ <view class="inbox" style="border: none;padding-bottom: 0;" @click="checkIndex(index)">
|
|
|
|
|
+ <u-upload :fileList="item.picUrling" @afterRead="afterRead" @delete="deletePic" :name="index+4"
|
|
|
|
|
+ multiple :maxCount="10" width="100" height="100"></u-upload>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
-
|
|
|
|
|
<view class="addnewbill" @click="addNewBill">
|
|
<view class="addnewbill" @click="addNewBill">
|
|
|
+ 新增汇票
|
|
+ 新增汇票
|
|
|
</view>
|
|
</view>
|
|
@@ -145,7 +148,10 @@
|
|
|
</template>
|
|
</template>
|
|
|
|
|
|
|
|
<script>
|
|
<script>
|
|
|
-
|
|
|
|
|
|
|
+ let that
|
|
|
|
|
+ import {
|
|
|
|
|
+ mainUrl
|
|
|
|
|
+ } from '@/http/baseUrl.js';
|
|
|
import calllips from "@/componet/calllips/calllips.vue"
|
|
import calllips from "@/componet/calllips/calllips.vue"
|
|
|
export default {
|
|
export default {
|
|
|
components: {
|
|
components: {
|
|
@@ -153,96 +159,97 @@
|
|
|
},
|
|
},
|
|
|
data() {
|
|
data() {
|
|
|
return {
|
|
return {
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
editall: false,
|
|
editall: false,
|
|
|
quan: false,
|
|
quan: false,
|
|
|
dateshow: false,
|
|
dateshow: false,
|
|
|
opdanum: '',
|
|
opdanum: '',
|
|
|
state: '',
|
|
state: '',
|
|
|
- index:0,
|
|
|
|
|
|
|
+ index: 0,
|
|
|
start: Number(new Date()),
|
|
start: Number(new Date()),
|
|
|
- allindex:'',
|
|
|
|
|
fileList1: [],
|
|
fileList1: [],
|
|
|
- contractDrafts:[
|
|
|
|
|
- {
|
|
|
|
|
|
|
+ fileList2: [],
|
|
|
|
|
+ fileList3: [],
|
|
|
|
|
+ fileList4: [],
|
|
|
|
|
+ allindex: 0,
|
|
|
|
|
+ form: {
|
|
|
|
|
+ name: '',
|
|
|
|
|
+ supplierId: '',
|
|
|
|
|
+ invoicePics: [],
|
|
|
|
|
+ pics: [],
|
|
|
|
|
+ tradePics: [],
|
|
|
|
|
+ contractDrafts: [{
|
|
|
name: '',
|
|
name: '',
|
|
|
draftNo: '',
|
|
draftNo: '',
|
|
|
- acceptorId:'',
|
|
|
|
|
- drawersId:'',
|
|
|
|
|
|
|
+ acceptor: '',
|
|
|
|
|
+ acceptorId: '',
|
|
|
|
|
+ drawersId: '',
|
|
|
|
|
+ drawers: '',
|
|
|
money: '',
|
|
money: '',
|
|
|
acceptDate: '',
|
|
acceptDate: '',
|
|
|
issueDate: '',
|
|
issueDate: '',
|
|
|
expireDate: '',
|
|
expireDate: '',
|
|
|
- loanLimit:'',
|
|
|
|
|
|
|
+ loanLimit: '',
|
|
|
expectDiscountDate: '',
|
|
expectDiscountDate: '',
|
|
|
picUrls: [],
|
|
picUrls: [],
|
|
|
- },
|
|
|
|
|
- ],
|
|
|
|
|
- range: [{
|
|
|
|
|
- value: 0,
|
|
|
|
|
- text: "篮球"
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- value: 1,
|
|
|
|
|
- text: "足球"
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- value: 2,
|
|
|
|
|
- text: "游泳"
|
|
|
|
|
- },
|
|
|
|
|
- ],
|
|
|
|
|
|
|
+ picUrling: [],
|
|
|
|
|
+ serviceRate: '',
|
|
|
|
|
+ interestRate: '',
|
|
|
|
|
+ interest: '',
|
|
|
|
|
+ serviceMoney: '',
|
|
|
|
|
+ limitTime: 0,
|
|
|
|
|
+ expectDiscountDateTime: 0,
|
|
|
|
|
+ expectDiscountDate: 0
|
|
|
|
|
+ }, ],
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ range1: [],
|
|
|
|
|
+ range2: [],
|
|
|
|
|
+ myindex: 0,
|
|
|
|
|
+ sindex: 0,
|
|
|
|
|
+ rindex: 0
|
|
|
}
|
|
}
|
|
|
- },
|
|
|
|
|
- computed:{
|
|
|
|
|
-
|
|
|
|
|
},
|
|
},
|
|
|
onLoad() {
|
|
onLoad() {
|
|
|
- that=this
|
|
|
|
|
|
|
+ that = this
|
|
|
|
|
+ if(o.obj){
|
|
|
|
|
+ this.form.contractDrafts=JSON.parse(o.obj)
|
|
|
|
|
+ }
|
|
|
this.init()
|
|
this.init()
|
|
|
this.form.supplierId = uni.getStorageSync('supplierId')
|
|
this.form.supplierId = uni.getStorageSync('supplierId')
|
|
|
|
|
+ // console.log(this.form.supplierId,778)
|
|
|
this.loadTime()
|
|
this.loadTime()
|
|
|
|
|
+
|
|
|
|
|
+ },
|
|
|
|
|
+ onshow(){
|
|
|
|
|
+
|
|
|
},
|
|
},
|
|
|
methods: {
|
|
methods: {
|
|
|
- addNewBill(){
|
|
|
|
|
- let form={
|
|
|
|
|
- name: '',
|
|
|
|
|
- draftNo: '',
|
|
|
|
|
- acceptorId:'',
|
|
|
|
|
- drawersId:'',
|
|
|
|
|
- money: '',
|
|
|
|
|
- acceptDate: '',
|
|
|
|
|
- issueDate: '',
|
|
|
|
|
- expireDate: '',
|
|
|
|
|
- expectDiscountDate: '',
|
|
|
|
|
- picUrls: [],
|
|
|
|
|
- }
|
|
|
|
|
- this.contractDrafts.push(form)
|
|
|
|
|
- },
|
|
|
|
|
- loadTime(){
|
|
|
|
|
|
|
+ loadTime() {
|
|
|
let myDate = new Date()
|
|
let myDate = new Date()
|
|
|
// let wk = Date.parse(new Date());
|
|
// let wk = Date.parse(new Date());
|
|
|
- let wk=myDate.getTime()
|
|
|
|
|
|
|
+ let wk = myDate.getTime()
|
|
|
console.log(wk)
|
|
console.log(wk)
|
|
|
let yy = String(myDate.getFullYear())
|
|
let yy = String(myDate.getFullYear())
|
|
|
// let mm = myDate.getMonth() + 1
|
|
// let mm = myDate.getMonth() + 1
|
|
|
let mm = String(myDate.getMonth() + 1 < 10 ? '0' + (myDate.getMonth() + 1) : myDate.getMonth() + 1)
|
|
let mm = String(myDate.getMonth() + 1 < 10 ? '0' + (myDate.getMonth() + 1) : myDate.getMonth() + 1)
|
|
|
let dd = String(myDate.getDate() < 10 ? '0' + myDate.getDate() : myDate.getDate())
|
|
let dd = String(myDate.getDate() < 10 ? '0' + myDate.getDate() : myDate.getDate())
|
|
|
let nowDate = yy + '-' + mm + '-' + dd
|
|
let nowDate = yy + '-' + mm + '-' + dd
|
|
|
- this.contractDrafts.forEach(item => {
|
|
|
|
|
|
|
+ this.form.contractDrafts.forEach(item => {
|
|
|
item.acceptDate = nowDate
|
|
item.acceptDate = nowDate
|
|
|
item.issueDate = nowDate
|
|
item.issueDate = nowDate
|
|
|
item.expireDate = nowDate
|
|
item.expireDate = nowDate
|
|
|
item.expectDiscountDate = nowDate
|
|
item.expectDiscountDate = nowDate
|
|
|
- item.expectDiscountDateTime=wk
|
|
|
|
|
- item.issueDateTime=wk
|
|
|
|
|
|
|
+ item.expectDiscountDateTime = wk
|
|
|
|
|
+ item.issueDateTime = wk
|
|
|
let nTime = item.expectDiscountDateTime - item.issueDateTime
|
|
let nTime = item.expectDiscountDateTime - item.issueDateTime
|
|
|
- item.limitTime = Math.floor(nTime / 86400000)+1;
|
|
|
|
|
|
|
+ item.limitTime = Math.floor(nTime / 86400000) + 1;
|
|
|
})
|
|
})
|
|
|
},
|
|
},
|
|
|
init() {
|
|
init() {
|
|
|
// 承兑人列表
|
|
// 承兑人列表
|
|
|
uni.$u.http.post('/api/Acceptor/search', {
|
|
uni.$u.http.post('/api/Acceptor/search', {
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
}, {
|
|
}, {
|
|
|
custom: {
|
|
custom: {
|
|
|
auth: true
|
|
auth: true
|
|
@@ -251,7 +258,7 @@
|
|
|
uni.hideLoading()
|
|
uni.hideLoading()
|
|
|
this.range1 = res.result
|
|
this.range1 = res.result
|
|
|
// for(let i in this.range1){
|
|
// for(let i in this.range1){
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// }
|
|
// }
|
|
|
this.range1.forEach((item, index) => {
|
|
this.range1.forEach((item, index) => {
|
|
|
this.range1[index].value = index
|
|
this.range1[index].value = index
|
|
@@ -260,7 +267,7 @@
|
|
|
}).catch((err) => {})
|
|
}).catch((err) => {})
|
|
|
// 出票人列表
|
|
// 出票人列表
|
|
|
uni.$u.http.post('/api/Drawer/search', {
|
|
uni.$u.http.post('/api/Drawer/search', {
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
}, {
|
|
}, {
|
|
|
custom: {
|
|
custom: {
|
|
|
auth: true
|
|
auth: true
|
|
@@ -274,156 +281,140 @@
|
|
|
})
|
|
})
|
|
|
}).catch((err) => {})
|
|
}).catch((err) => {})
|
|
|
},
|
|
},
|
|
|
- checkIndex(index){
|
|
|
|
|
- this.allindex=index
|
|
|
|
|
- },
|
|
|
|
|
- changeacPerson(e){
|
|
|
|
|
- this.accepter=e
|
|
|
|
|
- },
|
|
|
|
|
- changedrPerson(e){
|
|
|
|
|
- this.drawer=e
|
|
|
|
|
|
|
+ deleBill(index){
|
|
|
|
|
+ uni.showModal({
|
|
|
|
|
+ title:"提示",
|
|
|
|
|
+ content:"是否确认删除?",
|
|
|
|
|
+ success:(res)=>{
|
|
|
|
|
+ if (res.confirm) {
|
|
|
|
|
+ that.form.contractDrafts.splice(index,1)
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+
|
|
|
},
|
|
},
|
|
|
- openTime(index,value) {
|
|
|
|
|
- this.dateshow = true
|
|
|
|
|
- this.index=index
|
|
|
|
|
- this.opdanum = value
|
|
|
|
|
|
|
+ getinterestRateIndex(index) {
|
|
|
|
|
+ this.rindex = index
|
|
|
},
|
|
},
|
|
|
- closeDate() {
|
|
|
|
|
- this.dateshow = false
|
|
|
|
|
|
|
+ getinterestRate(event) {
|
|
|
|
|
+ this.form.contractDrafts[this.rindex].interestRate = Number(event.detail.value)
|
|
|
|
|
+ this.getloanLimt(this.rindex)
|
|
|
|
|
+ this.getInterMoney(this.rindex)
|
|
|
|
|
+ this.getSerMoney(this.rindex)
|
|
|
},
|
|
},
|
|
|
- confirm(e) {
|
|
|
|
|
- const timeFormat = uni.$u.timeFormat
|
|
|
|
|
- if (this.opdanum == 1) {
|
|
|
|
|
- this.contractDrafts[this.index].acceptDate = timeFormat(e.value, 'yyyy-mm-dd')
|
|
|
|
|
- } else if (this.opdanum == 2) {
|
|
|
|
|
- this.contractDrafts[this.index].issueDate = timeFormat(e.value, 'yyyy-mm-dd')
|
|
|
|
|
- } else if (this.opdanum == 3) {
|
|
|
|
|
- this.contractDrafts[this.index].expireDate = timeFormat(e.value, 'yyyy-mm-dd')
|
|
|
|
|
- } else if (this.opdanum == 4) {
|
|
|
|
|
- this.contractDrafts[this.index].expectDiscountDate = timeFormat(e.value, 'yyyy-mm-dd')
|
|
|
|
|
- }
|
|
|
|
|
- console.log(this.index,this.opdanum)
|
|
|
|
|
- this.dateshow = false
|
|
|
|
|
|
|
+ getserviceRateIndex(index) {
|
|
|
|
|
+ this.sindex = index
|
|
|
},
|
|
},
|
|
|
- change(e) {
|
|
|
|
|
- console.log("e:", e);
|
|
|
|
|
- },
|
|
|
|
|
- open(e) {
|
|
|
|
|
- // console.log('open', e)
|
|
|
|
|
|
|
+ getserviceRate(event) {
|
|
|
|
|
+ this.form.contractDrafts[this.sindex].serviceRate = Number(event.detail.value)
|
|
|
|
|
+ this.getloanLimt(this.sindex)
|
|
|
|
|
+ this.getInterMoney(this.sindex)
|
|
|
|
|
+ this.getSerMoney(this.sindex)
|
|
|
},
|
|
},
|
|
|
- close(e) {
|
|
|
|
|
- // console.log('close', e)
|
|
|
|
|
|
|
+ getMoneyIndex(index) {
|
|
|
|
|
+ this.myindex = index
|
|
|
},
|
|
},
|
|
|
- change(e) {
|
|
|
|
|
- // console.log('change', e)
|
|
|
|
|
|
|
+ getMoney(event) {
|
|
|
|
|
+ this.form.contractDrafts[this.myindex].money = Number(event.detail.value)
|
|
|
|
|
+ this.getloanLimt(this.myindex)
|
|
|
|
|
+ this.getSerMoney(this.myindex)
|
|
|
|
|
+ this.getInterMoney(this.myindex)
|
|
|
},
|
|
},
|
|
|
- // 删除图片
|
|
|
|
|
- deletePic(event) {
|
|
|
|
|
- this[`fileList${event.name}`].splice(event.index, 1)
|
|
|
|
|
|
|
+ getloanLimt(i) {
|
|
|
|
|
+ if (this.form.contractDrafts[i].money && this.form.contractDrafts[i].serviceRate && this.form
|
|
|
|
|
+ .contractDrafts[i].interestRate) {
|
|
|
|
|
+ this.form.contractDrafts[i].loanLimit = (this.form.contractDrafts[i].money / (this.form.contractDrafts[
|
|
|
|
|
+ i].serviceRate + this.form.contractDrafts[i].interestRate) * this.form.contractDrafts[i]
|
|
|
|
|
+ .limitTime / 360 + 1).toFixed(2)
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
},
|
|
},
|
|
|
- // 新增图片
|
|
|
|
|
- async afterRead(event) {
|
|
|
|
|
- // 当设置 mutiple 为 true 时, file 为数组格式,否则为对象格式
|
|
|
|
|
- let lists = [].concat(event.file)
|
|
|
|
|
- let fileListLen = this[`fileList${event.name}`].length
|
|
|
|
|
- lists.map((item) => {
|
|
|
|
|
- this[`fileList${event.name}`].push({
|
|
|
|
|
- ...item,
|
|
|
|
|
- status: 'uploading',
|
|
|
|
|
- message: '上传中'
|
|
|
|
|
- })
|
|
|
|
|
- })
|
|
|
|
|
- for (let i = 0; i < lists.length; i++) {
|
|
|
|
|
- const result = await this.uploadFilePromise(lists[i].url)
|
|
|
|
|
- let item = this[`fileList${event.name}`][fileListLen]
|
|
|
|
|
- this[`fileList${event.name}`].splice(fileListLen, 1, Object.assign(item, {
|
|
|
|
|
- status: 'success',
|
|
|
|
|
- message: '',
|
|
|
|
|
- url: result
|
|
|
|
|
- }))
|
|
|
|
|
- this[`fileList${event.name}`].forEach(item=>{
|
|
|
|
|
- this.form[this.allindex].picUrls.push(item.url)
|
|
|
|
|
- })
|
|
|
|
|
- fileListLen++
|
|
|
|
|
|
|
+ getSerMoney(i) {
|
|
|
|
|
+ if (this.form.contractDrafts[i].money && this.form.contractDrafts[i].serviceRate && this.form
|
|
|
|
|
+ .contractDrafts[i].interestRate) {
|
|
|
|
|
+ this.form.contractDrafts[i].serviceMoney = ((this.form.contractDrafts[i].money / (this.form
|
|
|
|
|
+ .contractDrafts[i].serviceRate + this.form.contractDrafts[i].interestRate) * this.form
|
|
|
|
|
+ .contractDrafts[i].limitTime / 360 + 1) * this.form.contractDrafts[i].serviceRate * this
|
|
|
|
|
+ .form.contractDrafts[i].limitTime / 360).toFixed(2)
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
},
|
|
},
|
|
|
- uploadFilePromise(url) {
|
|
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
|
|
- let a = uni.uploadFile({
|
|
|
|
|
- url: 'http://192.168.2.21:7001/upload', // 仅为示例,非真实的接口地址
|
|
|
|
|
- filePath: url,
|
|
|
|
|
- name: 'file',
|
|
|
|
|
- formData: {
|
|
|
|
|
- user: 'test'
|
|
|
|
|
- },
|
|
|
|
|
- success: (res) => {
|
|
|
|
|
- setTimeout(() => {
|
|
|
|
|
- resolve(res.data.data)
|
|
|
|
|
- }, 1000)
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
- })
|
|
|
|
|
|
|
+ getInterMoney(i) {
|
|
|
|
|
+ if (this.form.contractDrafts[i].money && this.form.contractDrafts[i].serviceRate && this.form
|
|
|
|
|
+ .contractDrafts[i].interestRate) {
|
|
|
|
|
+ this.form.contractDrafts[i].interest = ((this.form.contractDrafts[i].money / (this.form.contractDrafts[
|
|
|
|
|
+ i].serviceRate + this.form.contractDrafts[i].interestRate) * this.form.contractDrafts[
|
|
|
|
|
+ i].limitTime / 360 + 1) * this.form.contractDrafts[i].interestRate * this.form
|
|
|
|
|
+ .contractDrafts[i].limitTime / 360).toFixed(2)
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
},
|
|
},
|
|
|
upAll() {
|
|
upAll() {
|
|
|
uni.showModal({
|
|
uni.showModal({
|
|
|
title: '提示',
|
|
title: '提示',
|
|
|
- content: '是否上传汇票?',
|
|
|
|
|
- success: function (res) {
|
|
|
|
|
|
|
+ content: '是否上传合同?',
|
|
|
|
|
+ success: function(res) {
|
|
|
if (res.confirm) {
|
|
if (res.confirm) {
|
|
|
-
|
|
|
|
|
- form.forEach(i=>{
|
|
|
|
|
- if(i.name.length==0){
|
|
|
|
|
|
|
+ let form = that.form
|
|
|
|
|
+
|
|
|
|
|
+ form.contractDrafts.forEach(i => {
|
|
|
|
|
+ if (i.name.length == 0) {
|
|
|
that.$toast('请输入汇票名称')
|
|
that.$toast('请输入汇票名称')
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
|
- if(form.draftNo.length==0){
|
|
|
|
|
|
|
+ if (i.draftNo.length == 0) {
|
|
|
that.$toast('请输入汇票号码')
|
|
that.$toast('请输入汇票号码')
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
|
- if(form.acceptor.length==0){
|
|
|
|
|
|
|
+ if (i.acceptor.length == 0) {
|
|
|
that.$toast('请选择承兑人')
|
|
that.$toast('请选择承兑人')
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
|
- if(form.drawers.length==0){
|
|
|
|
|
|
|
+ if (i.drawers.length == 0) {
|
|
|
that.$toast('请选择出票人')
|
|
that.$toast('请选择出票人')
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
|
- if(form.money.length==0){
|
|
|
|
|
|
|
+ if (i.money.length == 0) {
|
|
|
that.$toast('请输入金额')
|
|
that.$toast('请输入金额')
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- if(form.serviceRate.length==0){
|
|
|
|
|
|
|
+ if (i.serviceRate.length == 0) {
|
|
|
that.$toast('请输入服务费率')
|
|
that.$toast('请输入服务费率')
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
|
- if(form.interestRate.length==0){
|
|
|
|
|
|
|
+ if (i.interestRate.length == 0) {
|
|
|
that.$toast('请输入利率')
|
|
that.$toast('请输入利率')
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
|
- if(form.picUrls.length==0){
|
|
|
|
|
|
|
+ if (i.picUrls.length == 0) {
|
|
|
that.$toast('请上传附件')
|
|
that.$toast('请上传附件')
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
})
|
|
})
|
|
|
-
|
|
|
|
|
- that.range2.forEach(item=>{
|
|
|
|
|
- form.contractDrafts.forEach(i=>{
|
|
|
|
|
- if(that.range2[i.drawers].name==item.name){
|
|
|
|
|
- i.drawersId=item.id
|
|
|
|
|
|
|
+ that.range2.forEach(item => {
|
|
|
|
|
+ form.contractDrafts.forEach(i => {
|
|
|
|
|
+ if (that.range2[i.drawers].name == item.name) {
|
|
|
|
|
+ i.drawersId = item.id
|
|
|
}
|
|
}
|
|
|
})
|
|
})
|
|
|
})
|
|
})
|
|
|
- that.range1.forEach(item=>{
|
|
|
|
|
- form.contractDrafts.forEach(i=>{
|
|
|
|
|
- if(that.range1[i.acceptor].name==item.name){
|
|
|
|
|
- i.acceptorId=item.id
|
|
|
|
|
|
|
+ that.range1.forEach(item => {
|
|
|
|
|
+ form.contractDrafts.forEach(i => {
|
|
|
|
|
+ if (that.range1[i.acceptor].name == item.name) {
|
|
|
|
|
+ i.acceptorId = item.id
|
|
|
}
|
|
}
|
|
|
})
|
|
})
|
|
|
})
|
|
})
|
|
|
|
|
+ form.contractDrafts.forEach(item=>{
|
|
|
|
|
+ item.picUrling.forEach(i=>{
|
|
|
|
|
+ item.picUrls.push(i.url)
|
|
|
|
|
+ })
|
|
|
|
|
+ })
|
|
|
uni.showLoading()
|
|
uni.showLoading()
|
|
|
- uni.$u.http.post('/api/Contract',that.form, {
|
|
|
|
|
|
|
+ uni.$u.http.post('/api/Contract/addContractDraft', form.contractDrafts, {
|
|
|
custom: {
|
|
custom: {
|
|
|
auth: true
|
|
auth: true
|
|
|
}
|
|
}
|
|
@@ -435,16 +426,197 @@
|
|
|
that.$toast(err.msg)
|
|
that.$toast(err.msg)
|
|
|
console.log(err)
|
|
console.log(err)
|
|
|
})
|
|
})
|
|
|
- } else if (res.cancel) {
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ } else if (res.cancel) {}
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
|
|
+ },
|
|
|
|
|
+ addNewBill() {
|
|
|
|
|
+ let form = [{
|
|
|
|
|
+ name: '',
|
|
|
|
|
+ draftNo: '',
|
|
|
|
|
+ acceptor: '',
|
|
|
|
|
+ acceptorId: '',
|
|
|
|
|
+ drawersId: '',
|
|
|
|
|
+ drawers: '',
|
|
|
|
|
+ money: '',
|
|
|
|
|
+ acceptDate: '',
|
|
|
|
|
+ issueDate: '',
|
|
|
|
|
+ expireDate: '',
|
|
|
|
|
+ loanLimit: '',
|
|
|
|
|
+ expectDiscountDate: '',
|
|
|
|
|
+ picUrls: [],
|
|
|
|
|
+ picUrling: [],
|
|
|
|
|
+ serviceRate: '',
|
|
|
|
|
+ interestRate: '',
|
|
|
|
|
+ interest: '',
|
|
|
|
|
+ serviceMoney: '',
|
|
|
|
|
+ limitTime: 0,
|
|
|
|
|
+ expectDiscountDateTime: 0,
|
|
|
|
|
+ expectDiscountDate: 0
|
|
|
|
|
+ }]
|
|
|
|
|
+ let myDate = new Date()
|
|
|
|
|
+ // let wk = Date.parse(new Date());
|
|
|
|
|
+ let wk = myDate.getTime()
|
|
|
|
|
+ console.log(wk)
|
|
|
|
|
+ let yy = String(myDate.getFullYear())
|
|
|
|
|
+ // let mm = myDate.getMonth() + 1
|
|
|
|
|
+ let mm = String(myDate.getMonth() + 1 < 10 ? '0' + (myDate.getMonth() + 1) : myDate.getMonth() + 1)
|
|
|
|
|
+ let dd = String(myDate.getDate() < 10 ? '0' + myDate.getDate() : myDate.getDate())
|
|
|
|
|
+ let nowDate = yy + '-' + mm + '-' + dd
|
|
|
|
|
+ form.forEach(item => {
|
|
|
|
|
+ item.acceptDate = nowDate
|
|
|
|
|
+ item.issueDate = nowDate
|
|
|
|
|
+ item.expireDate = nowDate
|
|
|
|
|
+ item.expectDiscountDate = nowDate
|
|
|
|
|
+ item.expectDiscountDateTime = wk
|
|
|
|
|
+ item.issueDateTime = wk
|
|
|
|
|
+ let nTime = item.expectDiscountDateTime - item.issueDateTime
|
|
|
|
|
+ item.limitTime = Math.floor(nTime / 86400000) + 1;
|
|
|
|
|
+ })
|
|
|
|
|
+ this.form.contractDrafts.push(form[0])
|
|
|
|
|
+ },
|
|
|
|
|
+ changeacPerson(e) {
|
|
|
|
|
+ this.acceptor = e
|
|
|
|
|
+ },
|
|
|
|
|
+ changedrPerson(e) {
|
|
|
|
|
+ this.drawers = e
|
|
|
|
|
+ },
|
|
|
|
|
+ openTime(index, value) {
|
|
|
|
|
+ this.dateshow = true
|
|
|
|
|
+ this.index = index
|
|
|
|
|
+ this.opdanum = value
|
|
|
|
|
+ },
|
|
|
|
|
+ closeDate() {
|
|
|
|
|
+ this.dateshow = false
|
|
|
|
|
+ },
|
|
|
|
|
+ confirm(e) {
|
|
|
|
|
+ const timeFormat = uni.$u.timeFormat
|
|
|
|
|
+ let form = this.form.contractDrafts
|
|
|
|
|
+ if (this.opdanum == 1) {
|
|
|
|
|
+ form[this.index].acceptDate = timeFormat(e.value, 'yyyy-mm-dd')
|
|
|
|
|
+ } else if (this.opdanum == 2) {
|
|
|
|
|
+ form[this.index].issueDateTime = e.value
|
|
|
|
|
+ form[this.index].issueDate = timeFormat(e.value, 'yyyy-mm-dd')
|
|
|
|
|
+ } else if (this.opdanum == 3) {
|
|
|
|
|
+ form[this.index].expireDate = timeFormat(e.value, 'yyyy-mm-dd')
|
|
|
|
|
+ } else if (this.opdanum == 4) {
|
|
|
|
|
+ form[this.index].expectDiscountDateTime = e.value
|
|
|
|
|
+ let nTime = form[this.index].expectDiscountDateTime - form[this.index].issueDateTime
|
|
|
|
|
+ form[this.index].limitTime = Math.floor(nTime / 86400000) + 1;
|
|
|
|
|
+ form[this.index].expectDiscountDate = timeFormat(e.value, 'yyyy-mm-dd')
|
|
|
|
|
+ }
|
|
|
|
|
+ // console.log(this.index, this.opdanum)
|
|
|
|
|
+ this.dateshow = false
|
|
|
|
|
+ },
|
|
|
|
|
+ change(e) {
|
|
|
|
|
+ console.log("e:", e);
|
|
|
|
|
+ },
|
|
|
|
|
+ open(e) {
|
|
|
|
|
+ // console.log('open', e)
|
|
|
|
|
+ },
|
|
|
|
|
+ close(e) {
|
|
|
|
|
+ // console.log('close', e)
|
|
|
|
|
+ },
|
|
|
|
|
+ change(e) {
|
|
|
|
|
+ // console.log('change', e)
|
|
|
|
|
+ },
|
|
|
|
|
+ checkIndex(index) {
|
|
|
|
|
+ this.allindex = index
|
|
|
|
|
+ console.log(index)
|
|
|
|
|
+ },
|
|
|
|
|
+ // 删除图片
|
|
|
|
|
+ deletePic(event) {
|
|
|
|
|
+ if (event.name == 4) {
|
|
|
|
|
+ this.form.contractDrafts[this.allindex].picUrling.splice(event.index, 1)
|
|
|
|
|
+ } else {
|
|
|
|
|
+ this[`fileList${event.name}`].splice(event.index, 1)
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ },
|
|
|
|
|
+ // 新增图片
|
|
|
|
|
+ async afterRead(event) {
|
|
|
|
|
+ // 当设置 mutiple 为 true 时, file 为数组格式,否则为对象格式
|
|
|
|
|
+
|
|
|
|
|
+ if (event.name >= 4) {
|
|
|
|
|
+ let lists = [].concat(event.file)
|
|
|
|
|
+ let icurls = this.form.contractDrafts[this.allindex].picUrling
|
|
|
|
|
+ let fileListLen = icurls.length
|
|
|
|
|
+ lists.map((item) => {
|
|
|
|
|
+ icurls.push({
|
|
|
|
|
+ ...item,
|
|
|
|
|
+ status: 'uploading',
|
|
|
|
|
+ message: '上传中'
|
|
|
|
|
+ })
|
|
|
|
|
+ })
|
|
|
|
|
+ for (let i = 0; i < lists.length; i++) {
|
|
|
|
|
+ const result = await this.uploadFilePromise(lists[i].url)
|
|
|
|
|
+ let obj = {
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ console.log(result)
|
|
|
|
|
+ let item = icurls[fileListLen]
|
|
|
|
|
+ icurls.splice(fileListLen, 1, Object.assign(item, {
|
|
|
|
|
+ status: 'success',
|
|
|
|
|
+ message: '',
|
|
|
|
|
+ url: result
|
|
|
|
|
+ }))
|
|
|
|
|
+
|
|
|
|
|
+ fileListLen++
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ } else {
|
|
|
|
|
+ let lists = [].concat(event.file)
|
|
|
|
|
+ let fileListLen = this[`fileList${event.name}`].length
|
|
|
|
|
+ lists.map((item) => {
|
|
|
|
|
+ this[`fileList${event.name}`].push({
|
|
|
|
|
+ ...item,
|
|
|
|
|
+ status: 'uploading',
|
|
|
|
|
+ message: '上传中'
|
|
|
|
|
+ })
|
|
|
|
|
+ })
|
|
|
|
|
+ for (let i = 0; i < lists.length; i++) {
|
|
|
|
|
+ const result = await this.uploadFilePromise(lists[i].url)
|
|
|
|
|
+ let item = this[`fileList${event.name}`][fileListLen]
|
|
|
|
|
+ this[`fileList${event.name}`].splice(fileListLen, 1, Object.assign(item, {
|
|
|
|
|
+ status: 'success',
|
|
|
|
|
+ message: '',
|
|
|
|
|
+ url: result
|
|
|
|
|
+ }))
|
|
|
|
|
+ fileListLen++
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ uploadFilePromise(url) {
|
|
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
|
|
+ let a = uni.uploadFile({
|
|
|
|
|
+ url: mainUrl + '/api/File', // 仅为示例,非真实的接口地址
|
|
|
|
|
+ filePath: url,
|
|
|
|
|
+ name: 'File',
|
|
|
|
|
+ header: {
|
|
|
|
|
+ "User-Agent": "apifox/1.0.0 (https://www.apifox.cn)"
|
|
|
|
|
+ },
|
|
|
|
|
+ formData: {
|
|
|
|
|
+ File: JSON.stringify(url),
|
|
|
|
|
+ },
|
|
|
|
|
+ success: (res) => {
|
|
|
|
|
+ console.log(res)
|
|
|
|
|
+ let request = JSON.parse(res.data)
|
|
|
|
|
+ setTimeout(() => {
|
|
|
|
|
+ resolve(request.data.file)
|
|
|
|
|
+ }, 1000)
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+ })
|
|
|
},
|
|
},
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
</script>
|
|
</script>
|
|
|
|
|
|
|
|
|
|
+
|
|
|
<style lang="scss">
|
|
<style lang="scss">
|
|
|
.content {
|
|
.content {
|
|
|
padding: 0 30rpx;
|
|
padding: 0 30rpx;
|