Browse Source

完善欠款提车

master
yunuo970428 2 years ago
parent
commit
6227d28b40
  1. 79
      anrui-buscenter/anrui-buscenter-ui/src/api/tesheshenpi/qiankuantiche.js
  2. 84
      anrui-buscenter/anrui-buscenter-ui/src/router/index.js
  3. 273
      anrui-buscenter/anrui-buscenter-ui/src/views/teshushenpi/qiankuanticheguanli/jiansuocheliang.vue
  4. 365
      anrui-buscenter/anrui-buscenter-ui/src/views/teshushenpi/qiankuanticheguanli/qiankuantichefuhe.vue
  5. 96
      anrui-buscenter/anrui-buscenter-ui/src/views/teshushenpi/qiankuanticheguanli/qiankuanticheshenqing.vue
  6. 14
      anrui-buscenter/anrui-buscenter-ui/src/views/teshushenpi/qiankuanticheguanli/qiankuanticheshenqingInfo.vue
  7. 240
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/jiansuocheliang.vue
  8. 502
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheByDivisionDaiBanInfo.vue
  9. 548
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheDaiBanByFileAndQiTaInfo.vue
  10. 622
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheDaiBanByFileInfo.vue
  11. 502
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheDaiBanInfo.vue
  12. 774
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheEdit.vue
  13. 402
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheInfo.vue
  14. 374
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheYiBanInfo.vue
  15. 478
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuantichefuhe.vue
  16. 329
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuantichefuheInfo.vue
  17. 182
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/relation/selectVehicle.vue

79
anrui-buscenter/anrui-buscenter-ui/src/api/tesheshenpi/qiankuantiche.js

@ -96,7 +96,7 @@ export function delBySids(data) {
// 提交 // 提交
export function submit(data) { export function submit(data) {
return request({ return request({
url: '/buscenter/v1/busarrearscarryvehicleapply/submitArrearsCarryVehicle', url: '/buscenter/v1/busarrearscarryvehicleapply/submitAdvanceArrearsInfo',
method: 'post', method: 'post',
data: data, data: data,
headers: { headers: {
@ -105,3 +105,80 @@ export function submit(data) {
}) })
} }
// 流程审批(同意)
export function complete(params) {
return request({
url: '/buscenter/v1/busarrearscarryvehicleapply/complete',
method: 'post',
data: params
})
}
// 流程审批(同意)-- 跨事业部
export function initiatorToAnswerInfo(params) {
return request({
url: '/buscenter/v1/busarrearscarryvehicleapply/initiatorToAnswerInfo',
method: 'post',
data: params
})
}
// 流程审批(同意)--销售内情修改附件
export function completeBy(params) {
return request({
url: '/buscenter/v1/busarrearscarryvehicleapply/completeBy',
method: 'post',
data: params
})
}
// 流程审批(驳回)
export function reject(params) {
return request({
url: '/buscenter/v1/busarrearscarryvehicleapply/reject',
method: 'post',
data: params
})
}
// 流程审批(终止)
export function breakProcess(params) {
return request({
url: '/buscenter/v1/busarrearscarryvehicleapply/breakProcess',
method: 'post',
data: params
})
}
// 流程审批(撤回)
export function revokeProcess(params) {
return request({
url: '/buscenter/v1/busarrearscarryvehicleapply/revokeProcess',
method: 'post',
data: params
})
}
// 审批流程(同意)获取下一环节
export function getNextNodesForSubmit(data) {
return request({
url: '/buscenter/v1/busarrearscarryvehicleapply/getNextNodesForSubmit',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
}
// 审批流程(驳回)获取上一环节
export function getPreviousNodesForReject(data) {
return request({
url: '/buscenter/v1/busarrearscarryvehicleapply/getPreviousNodesForReject',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
}

84
anrui-buscenter/anrui-buscenter-ui/src/router/index.js

@ -83,27 +83,7 @@ export const constantRoutes = [
component: () => component: () =>
import('@/views/teshushenpi/qiankuanticheguanli/qiankuanticheguanli.vue'), import('@/views/teshushenpi/qiankuanticheguanli/qiankuanticheguanli.vue'),
name: 'qiankuanticheguanli', name: 'qiankuanticheguanli',
meta: { meta: { title: '欠款提车', noCache: true }
title: '欠款提车'
}
},
{
path: '/teshushenpi/qiankuanticheguanli',
component: () =>
import('@/views/teshushenpi/qiankuanticheguanli/jiansuocheliang.vue'),
name: 'jiansuocheliang',
meta: {
title: '检索车辆'
}
},
{
path: '/teshushenpi/qiankuanticheguanli',
component: () =>
import('@/views/teshushenpi/qiankuanticheguanli/qiankuanticheshenqing.vue'),
name: 'qiankuanticheshenqing',
meta: {
title: '欠款提车申请'
}
} }
] ]
}, },
@ -375,29 +355,7 @@ export const constantRoutes = [
component: () => component: () =>
import('@/views/discountpackagehandover/discountpackagetobehandover.vue'), import('@/views/discountpackagehandover/discountpackagetobehandover.vue'),
name: 'YouHuiBaoDaiJiaoJie', name: 'YouHuiBaoDaiJiaoJie',
meta: { meta: { title: '优惠包交接', noCache: true }
title: '优惠包交接'
}
}
]
},
// 优惠包
{
path: '/discountpackagehandover',
component: Layout,
redirect: '/discountpackagehandover',
meta: {
title: '优惠包交接'
},
children: [
{
path: '/discountpackagehandover',
component: () =>
import('@/views/discountpackagehandover/discountpackagetobehandover.vue'),
name: 'YouHuiBaoDaiJiaoJie',
meta: {
title: '优惠包交接'
}
} }
] ]
}, },
@ -447,12 +405,12 @@ export const constantRoutes = [
}, },
// 特殊审批 // 特殊审批
// 欠款提车申请详情 // 欠款提车申请已办详情
{ {
path: '/teshushenpiFlow/qiankuanticheguanli/qiankuanticheInfo', path: '/teshushenpiFlow/qiankuanticheguanli/qiankuanticheYiBanInfo',
component: () => component: () =>
import('@/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheInfo.vue'), import('@/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheYiBanInfo.vue'),
name: 'qiankuanticheInfo' name: 'qiankuanticheYiBanInfo'
}, },
// 欠款提车编辑 // 欠款提车编辑
{ {
@ -461,19 +419,33 @@ export const constantRoutes = [
import('@/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheEdit.vue'), import('@/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheEdit.vue'),
name: 'qiankuanticheEdit' name: 'qiankuanticheEdit'
}, },
// 欠款提车复核 // 欠款提车待办
{
path: '/teshushenpiFlow/qiankuanticheguanli/qiankuanticheDaiBanInfo',
component: () =>
import('@/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheDaiBanInfo.vue'),
name: 'qiankuanticheDaiBanInfo'
},
// 欠款提车待办-- 修改附件信息(销售内勤--车辆买卖合同、总经理担保书、欠款提车担保承诺书必须上传)
{
path: '/teshushenpiFlow/qiankuanticheguanli/qiankuanticheDaiBanByFileInfo',
component: () =>
import('@/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheDaiBanByFileInfo.vue'),
name: 'qiankuanticheDaiBanByFileInfo'
},
// 欠款提车待办-- 修改附件信息(销售经理--其他附件(信审截图)必须上传)
{ {
path: '/teshushenpiFlow/qiankuanticheguanli/qiankuantichefuhe', path: '/teshushenpiFlow/qiankuanticheguanli/qiankuanticheDaiBanByFileAndQiTaInfo',
component: () => component: () =>
import('@/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuantichefuhe.vue'), import('@/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheDaiBanByFileAndQiTaInfo.vue'),
name: 'qiankuantichefuhe' name: 'qiankuanticheDaiBanByFileAndQiTaInfo'
}, },
// 欠款提车复核详情 // 欠款提车待办-- 跨事业部
{ {
path: '/teshushenpiFlow/qiankuanticheguanli/qiankuantichefuheInfo', path: '/teshushenpiFlow/qiankuanticheguanli/qiankuanticheByDivisionDaiBanInfo',
component: () => component: () =>
import('@/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuantichefuheInfo.vue'), import('@/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheByDivisionDaiBanInfo.vue'),
name: 'qiankuantichefuheInfo' name: 'qiankuanticheByDivisionDaiBanInfo'
}, },
// 合同管理 // 合同管理

273
anrui-buscenter/anrui-buscenter-ui/src/views/teshushenpi/qiankuanticheguanli/jiansuocheliang.vue

@ -1,273 +0,0 @@
<template>
<div class="app-container">
<div v-show="viewState == 2">
<div class="tab-header webtop">
<div>检索车辆信息</div>
<div>
<el-button type="primary" size="small" @click="AddUpdateReturn">确认</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="webcon">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{searchxianshitit}}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">
<el-form-item label="客户名称:">
<el-input v-model="listQuery.params.customerName" placeholder="" clearable class="filter-item"/>
</el-form-item>
<el-form-item label="合同编号:">
<el-input v-model="listQuery.params.contractNo" placeholder="" clearable class="filter-item"/>
</el-form-item>
<el-form-item label="车架号:">
<el-input v-model="listQuery.params.VINNo" placeholder="" clearable class="filter-item"/>
</el-form-item>
<div class="searchbtns">
<el-button type="primary" @click="handleFilter">查询</el-button>
<el-button type="primary" @click="handresetting">重置</el-button>
</div>
</el-form>
</div>
</div>
<div>
<div class="listtop">
<div class="tit">车辆列表</div>
<pageye v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50px" type="selection" align="center" />
<el-table-column width="80px" label="编号" type="index" :index="indexMethod" align="center"/>
<el-table-column label="合同编号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.contractNo }}</span>
</template>
</el-table-column>
<el-table-column label="客户名称" align="center">
<template slot-scope="scope">
<span>{{ scope.row.customerName }}</span>
</template>
</el-table-column>
<el-table-column label="车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.VINNo }}</span>
</template>
</el-table-column>
</el-table>
</div>
</div>
<div class="pages">
<div class="tit" />
<!-- 翻页 -->
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
</div>
</div>
<!--详情部分组件-->
<!-- <qiankuanticheshenqing v-show="viewState==3" ref="divadd" @back="backState" @doback="resetState"/> -->
</div>
</template>
<script>
import {
getArrearsVehicleList,
arrearsVehicleApply
} from '@/api/tesheshenpi/qiankuantiche'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
// import qiankuanticheshenqing from './qiankuanticheshenqing.vue'
export default {
name: 'jiansuocheliang',
components: {
Pagination,
pageye,
getArrearsVehicleList,
arrearsVehicleApply,
// qiankuanticheshenqing,
},
data() {
return {
isSearchShow: false,
searchxianshitit: '隐藏查询条件',
btndisabled: false,
viewState: 2,
tableKey: 0,
showbackState: 30,
sids: [],
list: [],
datalist: [],
number: '',
listLoading: false,
listQuery: {
current: 1,
size: 10,
params: {
contractNo: '',
customerName: '',
VINNo: ''
},
total: 1
},
stateId: '',
YongHuid: [],
temp: {} //
}
},
created() {
//
this.init()
//
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
init() {
this.getList()
},
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
//
handleReturn() {
this.$emit('doback', this.showbackState)
},
//
getList() {
this.listLoading = true
getArrearsVehicleList(this.listQuery).then((response) => {
this.listLoading = false
if (response.code === '200') {
this.listQuery.total = response.data.total
this.list = response.data.records
}
})
},
//
handleFilter() {
this.getList()
},
//
handresetting() {
this.listQuery = {
current: 1,
size: 10,
params: {
contractNo: '',
customerName: '',
VINNo: ''
},
total: 0
}
this.getList()
},
//
handleSelectionChange(row) {
this.sids = []
const aa = []
row.forEach((element) => {
aa.push({
vinNo: element.VINNo,
contractNo: element.contractNo,
customerName: element.customerName,
customerSid: element.customerSid,
vehicleSid: element.vehicleSid,
modelName: element.modelName,
modelSid: element.modelSid,
dealMoney: element.dealMoney,
applyDate: element.applyDate,
arrearsVehicleSid: ''
})
})
this.sids = aa
},
//
showback(val) {
this.showbackState = val
},
// --
show(val, contractNo) {
this.number = contractNo
if (contractNo !== '') {
this.getList()
}
if (val.length > 0) {
val.forEach((element) => {
this.datalist.push({
vinNo: element.vinNo
})
})
}
},
//
AddUpdateReturn() {
if (this.sids.length > 0) {
if (this.number !== '') {
this.sids.forEach((e) => {
if (e.contractNo !== this.number) {
this.$notify({
title: '提示',
message: '所选车辆合同编号不一致,请重新选择!',
type: 'success',
duration: 2000
})
return
}
})
for (var i = 0; i < this.datalist.length; i++) {
for (var j = 0; j < this.sids.length; j++) {
if (this.datalist[i].vinNo === this.sids[j].vinNo) {
this.$notify({
title: '提示',
message: '所选车架号已存在,请取消后重新选择!',
type: 'success',
duration: 2000
})
return
}
}
}
this.$emit('return', this.sids, 1)
} else {
arrearsVehicleApply(this.sids).then((res) => {
if (res.code === '200') {
this.$emit('return', this.sids, 2)
}
})
}
} else {
this.$notify({
title: '提示',
message: '请选择至少一条记录进行删除操作!',
type: 'error',
duration: 2000
})
}
}
}
}
</script>
<style scoped>
.listtop {
display: flex;
justify-content: space-between;
align-items: center;
border: 1px solid #dfe4ed;
height: 40px;
}
.tit {
margin-bottom: -10px;
}
.pagination {
margin-bottom: -10px;
}
</style>

365
anrui-buscenter/anrui-buscenter-ui/src/views/teshushenpi/qiankuanticheguanli/qiankuantichefuhe.vue

@ -1,365 +0,0 @@
<template>
<div class="app-container">
<!--标题按钮部分开始-->
<div v-show="viewState == 5">
<div class="tab-header webtop">
<!--标题-->
<div>{{ viewTitle }}</div>
<!--start 新增修改按钮-->
<div>
<el-button size="small" type="info" @click="handleReturn()">关闭</el-button>
</div>
<!--end 添加修改按钮-->
</div>
<!--按钮部分结束-->
<div class="">
<div class="title">欠款提车复核</div>
<el-form ref="ruleForm" :model="ruleForm" label-position="top" class="formadd" :rules="rules" label-width="100px">
<!--第一行-->
<el-row class="lineone">
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="合同编号:"> </el-form-item>
</el-col>
<el-col :span="8" style="border: 0px">
<el-form-item>
{{ruleForm.contractNo}}
</el-form-item>
</el-col>
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="申请日期:"> </el-form-item>
</el-col>
<el-col :span="8" style="border: 0px">
<el-form-item>
{{ruleForm.applyDate}}
</el-form-item>
</el-col>
</el-row>
<el-row class="linetwo">
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="客户名称:"> </el-form-item>
</el-col>
<el-col :span="20" style="border: 0px">
<el-form-item>
{{ruleForm.customerName}}
</el-form-item>
</el-col>
</el-row>
<el-row class="linetwo">
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="车型:"> </el-form-item>
</el-col>
<el-col :span="20" style="border: 0px">
<el-form-item>
{{ruleForm.modelName}}
</el-form-item>
</el-col>
</el-row>
<!--开票信息-->
<div class="tabletitle">
<div style="margin-left: 10px">车辆信息</div>
</div>
<template class="tablelist">
<el-table :data="ruleForm.vehicleList" :index="index" border style="width: 100%">
<el-table-column type="index" label="序号" width="100" :index="index + 1" align="center"/>
<el-table-column label="车架号" align="center">
<template slot-scope="props">
<span>{{ props.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="props">
<span>{{ props.row.dealMoney }}</span>
</template>
</el-table-column>
</el-table>
</template>
<el-row>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 欠款提车原因 </el-form-item>
</el-col>
<el-col :span="20">
<el-form-item>
{{ ruleForm.reason }}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 合同总金额 </el-form-item>
</el-col>
<el-col :span="4">
<el-form-item>
{{ ruleForm.contractMoney }}
</el-form-item>
</el-col>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 合同收款金额 </el-form-item>
</el-col>
<el-col :span="4">
<el-form-item>
{{ ruleForm.contractCollectionMoney }}
</el-form-item>
</el-col>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 累计欠款金额 </el-form-item>
</el-col>
<el-col :span="4">
<el-form-item>
{{ ruleForm.cumulativeArrearsMoney }}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 承诺回款日期 </el-form-item>
</el-col>
<el-col :span="20">
<el-form-item>
{{ ruleForm.commitmentMoneyDate }}
</el-form-item>
</el-col>
</el-row>
<div class="tableStyle">
<div style="margin-left: 10px">所附资料附件</div>
<el-upload :action="uploadAction" :data="requestData" :headers="accessToken" :multiple="false" :on-success="uploadSuccess" :show-file-list="false" class="upload-demo">
<el-button size="small" type="primary">点击上传</el-button>
</el-upload>
</div>
<el-table :data="ruleForm.commonAppendixDtoList" :index="index" border style="width: 100%">
<el-table-column :index="index + 1" align="center" label="序号" type="index" width="100"></el-table-column>
<el-table-column align="center" label="操作" width="190">
<template slot-scope="scope">
<el-button type="danger" @click="dataDelete(scope.$index,ruleForm.commonAppendixDtoList[scope.$index])">删除</el-button>
</template>
</el-table-column>
<el-table-column align="center" label="附件名称" prop="fileName">
<template slot-scope="scope">
<span class="bluezi" @click="handleDown(scope.row)">{{scope.row.fileName}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="文件格式" prop="fileType">
<template slot-scope="scope">
<span>{{ scope.row.fileType }}</span>
</template>
</el-table-column>
<el-table-column align="center" label="上传人" prop="createByName">
<template slot-scope="scope">
<span>{{ scope.row.createByName }}</span>
</template>
</el-table-column>
<el-table-column align="center" label="上传时间" prop="createDate">
<template slot-scope="scope">
<span>{{ scope.row.createDate }}</span>
</template>
</el-table-column>
</el-table>
</el-form>
</div>
</div>
</div>
</template>
<script>
import { fetchSid, removeFile } from "@/api/tesheshenpi/qiankuantiche";
import { getStorage } from "@/utils/auth";
export default {
name: "qiankuanticheshenqingInfo",
components: {
fetchSid,
},
data() {
return {
index: 0,
viewState: 5,
status: 0,
// Start
userName: sessionStorage.getItem("name"),
// End
viewTitle: "", // 2 3
dialogStatus: "",
uploadAction: process.env.VUE_APP_BASE_API + "/base/file/upload",
requestData: {
departmentName: window.sessionStorage.getItem("userSid"),
staffSid: window.sessionStorage.getItem("staffSid"),
},
accessToken: {
token: getStorage(),
},
//
ruleForm: {
sid: "",
contractNo: "",
applyDate: "",
customerName: "",
modelName: "",
modelSid: "",
reason: "",
contractMoney: "",
contractCollectionMoney: "",
cumulativeArrearsMoney: "",
commitmentMoneyDate: "",
userSid: window.sessionStorage.getItem("userSid"),
applyName: window.sessionStorage.getItem("name"),
vehicleList: [],
commonAppendixDtoList: [],
},
rules: {},
};
},
methods: {
//
showUpdate(val, status) {
this.ruleForm.sid = val.sid;
this.status = status;
this.ruleForm.contractNo = val.contractNo;
this.ruleForm.applyDate = val.applyDate;
this.ruleForm.customerName = val.customerName;
this.ruleForm.modelName = val.modelName;
fetchSid(val.sid).then((res) => {
if (res.code == "200") {
this.ruleForm.reason = res.data.reason;
this.ruleForm.contractMoney = res.data.contractMoney;
this.ruleForm.contractCollectionMoney =
res.data.contractCollectionMoney;
this.ruleForm.cumulativeArrearsMoney =
res.data.cumulativeArrearsMoney;
this.ruleForm.commitmentMoneyDate = res.data.commitmentMoneyDate;
this.ruleForm.modelSid = res.data.modelSid;
res.data.vehicleList.forEach((element) => {
this.ruleForm.vehicleList.push({
vinNo: element.vinNo,
dealMoney: element.dealMoney,
vehicleSid: element.vehicleSid,
arrearsVehicleSid: element.arrearsVehicleSid,
});
});
}
});
this.dialogStatus = "update";
this.viewTitle = "欠款提车复核";
},
//
handleReturn() {
this.ruleForm = {
sid: "",
contractNo: "",
applyDate: "",
customerName: "",
modelName: "",
modelSid: "",
reason: "",
contractMoney: "",
contractCollectionMoney: "",
cumulativeArrearsMoney: "",
commitmentMoneyDate: "",
userSid: window.sessionStorage.getItem("userSid"),
applyName: window.sessionStorage.getItem("name"),
vehicleList: [],
commonAppendixDtoList: [],
};
this.$emit("doback");
},
//
uploadSuccess(response, file) {
const userName = sessionStorage.getItem("name");
const staffSid = sessionStorage.getItem("staffSid");
var nameArr = file.name.split(".");
this.ruleForm.commonAppendixDtoList.push({
fileName: file.name, //
fileType: nameArr[nameArr.length - 1], //
createByName: userName, //
createBySid: staffSid, // sid
fullUrl: response.data.fullUrl, //
filePath: response.data.filePath,
fileSize: response.data.size, //
});
console.log("保存后的附件表", this.ruleForm.commonAppendixDtoList);
},
//
dataDelete(index, row) {
console.log(index);
console.log(row);
row.fullPath = row.filePath;
//
removeFile(row).then((res) => {
if (res.code === "200") {
//
this.ruleForm.commonAppendixDtoList.splice(this.ruleForm.commonAppendixDtoList.indexOf(row), 1);
} else {
this.$notify({
title: "提示",
message: "移除失败",
type: "error",
duration: 2000,
});
}
});
},
//
handleDown(row) {
console.log("这是下载附件选中的file", row);
var name = row.fileName;
var url = row.filePath;
const a = document.createElement("a");
a.setAttribute("download", name);
a.setAttribute("target", "_blank");
//
a.setAttribute("href",process.env.VUE_APP_BASE_API + "/base/file/download");
a.click();
},
},
};
</script>
<style scoped>
/* .listcon {
height: calc(100vh - 210px);
overflow-y: auto;
overflow-x: hidden;
} */
.title {
text-align: center;
font-size: 28px;
line-height: 90px;
}
.lineone {
border-left: 0px;
border-right: 0px;
border-bottom: 2px solid #e0e3eb;
}
.lineone .el-form-item {
margin-bottom: -20px !important;
}
.lineone >>> .el-input__inner {
border: 0;
}
.linetwo {
border-left: 0px;
border-right: 0px;
}
.linetwo .el-form-item {
margin-bottom: -20px !important;
}
.linetwo >>> .el-input__inner {
border: 0;
}
.el-form-item-right {
text-align: right;
}
.tabletitle {
display: flex;
justify-content: flex-start;
align-items: center;
border: 1px solid #dfe4ed;
height: 40px;
}
.tableStyle {
margin-top: 0px;
display: flex;
justify-content: space-between;
align-items: center;
border: 1px solid #dfe4ed;
height: 40px;
}
</style>

96
anrui-buscenter/anrui-buscenter-ui/src/views/teshushenpi/qiankuanticheguanli/qiankuanticheshenqing.vue

@ -143,7 +143,7 @@
</el-col> </el-col>
<el-col :span="16"> <el-col :span="16">
<el-form-item> <el-form-item>
<el-input v-model="formobj.remarks" clearable placeholder="" class="addinputw" style="margin-left: 0px !important;"/> <el-input v-model="formobj.reason" clearable placeholder="" class="addinputw" style="margin-left: 0px !important;"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -333,15 +333,6 @@ export default {
} }
}) })
}, },
UpNumber(e) {
e.target.value = e.target.value.replace(/[^\d]/g, '') // ."-"
e.target.value = e.target.value.replace(/^00/, '0') // 0
if (e.target.value.indexOf('.') < 0 && e.target.value !== '' && e.target.value !== '-') {
// 0102
console.log(e.target.value)
e.target.value = parseFloat(e.target.value)
}
},
showAdd(row) { showAdd(row) {
this.init() this.init()
this.viewTitle = '【新增】欠款提车申请' this.viewTitle = '【新增】欠款提车申请'
@ -351,6 +342,7 @@ export default {
fetchSid({ contractNo: row.contractId, orgPath: window.sessionStorage.getItem('defaultOrgPath'), sid: row.sid, userSid: window.sessionStorage.getItem('userSid') }).then((resp) => { fetchSid({ contractNo: row.contractId, orgPath: window.sessionStorage.getItem('defaultOrgPath'), sid: row.sid, userSid: window.sessionStorage.getItem('userSid') }).then((resp) => {
if (resp.success) { if (resp.success) {
this.formobj = resp.data this.formobj = resp.data
this.formobj.userSid = window.sessionStorage.getItem('userSid')
} }
}) })
}, },
@ -360,47 +352,47 @@ export default {
this.$nextTick(() => { this.$nextTick(() => {
this.$refs['form_obj'].clearValidate() this.$refs['form_obj'].clearValidate()
}) })
fetchSid({ contractNo: row.contractId, orgPath: window.sessionStorage.getItem('defaultOrgPath'), sid: row.sid, userSid: window.sessionStorage.getItem('userSid') }).then((res) => { fetchSid({ contractNo: '', orgPath: '', sid: row.sid, userSid: '' }).then((res) => {
if (res.success) { if (res.success) {
this.formobj = res.data this.formobj = res.data
this.formobj.instanceId = res.data.procInstSid this.formobj.instanceId = res.data.procInsId
if (this.formobj.zjlLetter.length > 0) { if (this.formobj.zjlLetter.length > 0) {
this.formobj.zjlLetter.forEach((e) => { this.formobj.zjlLetter.forEach((e) => {
this.image_list3.push({ this.image_list4.push({
name: e.fileName, name: '',
url: e.fileUrl url: e
}) })
}) })
} }
if (this.formobj.gdLetter.length > 0) { if (this.formobj.gdLetter.length > 0) {
this.formobj.gdLetter.forEach((e) => { this.formobj.gdLetter.forEach((e) => {
this.image_list4.push({ this.image_list3.push({
name: e.fileName, name: '',
url: e.fileUrl url: e
}) })
}) })
} }
if (this.formobj.guaranteeLetter.length > 0) { if (this.formobj.guaranteeLetter.length > 0) {
this.formobj.guaranteeLetter.forEach((e) => { this.formobj.guaranteeLetter.forEach((e) => {
this.image_list2.push({ this.image_list2.push({
name: e.fileName, name: '',
url: e.fileUrl url: e
}) })
}) })
} }
if (this.formobj.carContract.length > 0) { if (this.formobj.carContract.length > 0) {
this.formobj.carContract.forEach((e) => { this.formobj.carContract.forEach((e) => {
this.image_list1.push({ this.image_list1.push({
name: e.fileName, name: '',
url: e.fileUrl url: e
}) })
}) })
} }
if (this.formobj.fileList.length > 0) { if (this.formobj.fileList.length > 0) {
this.formobj.fileList.forEach((e) => { this.formobj.fileList.forEach((e) => {
this.image_list5.push({ this.image_list5.push({
name: e.fileName, name: '',
url: e.fileUrl url: e
}) })
}) })
} }
@ -529,7 +521,6 @@ export default {
this.$message({ showClose: true, type: 'error', message: '请选择车辆' }) this.$message({ showClose: true, type: 'error', message: '请选择车辆' })
return return
} }
const tip = ''
this.getUrl() this.getUrl()
this.submitdisabled = true this.submitdisabled = true
const loading = this.$loading({ const loading = this.$loading({
@ -558,16 +549,7 @@ export default {
if (this.image_list1.length > 0) { if (this.image_list1.length > 0) {
const aa = [] const aa = []
for (var i = 0; i < this.image_list1.length; i++) { for (var i = 0; i < this.image_list1.length; i++) {
aa.push({ aa.push(this.image_list1[i].url)
attachType: '',
billAppSid: '',
createByName: window.sessionStorage.getItem('name'),
fileSid: '',
fileName: this.image_list1[i].name,
fileType: this.image_list1[i].name.substr(this.image_list1[i].name.lastIndexOf('.')),
fileUrl: this.image_list1[i].url,
sid: ''
})
} }
this.formobj.carContract = aa this.formobj.carContract = aa
} else { } else {
@ -576,16 +558,7 @@ export default {
if (this.image_list2.length > 0) { if (this.image_list2.length > 0) {
const bb = [] const bb = []
for (var k = 0; k < this.image_list2.length; k++) { for (var k = 0; k < this.image_list2.length; k++) {
bb.push({ bb.push(this.image_list2[k].url)
attachType: '',
billAppSid: '',
createByName: window.sessionStorage.getItem('name'),
fileSid: '',
fileName: this.image_list2[k].name,
fileType: this.image_list2[k].name.substr(this.image_list2[k].name.lastIndexOf('.')),
fileUrl: this.image_list2[k].url,
sid: ''
})
} }
this.formobj.guaranteeLetter = bb this.formobj.guaranteeLetter = bb
} else { } else {
@ -594,16 +567,7 @@ export default {
if (this.image_list3.length > 0) { if (this.image_list3.length > 0) {
const cc = [] const cc = []
for (var m = 0; m < this.image_list3.length; m++) { for (var m = 0; m < this.image_list3.length; m++) {
cc.push({ cc.push(this.image_list3[m].url)
attachType: '',
billAppSid: '',
createByName: window.sessionStorage.getItem('name'),
fileSid: '',
fileName: this.image_list3[m].name,
fileType: this.image_list3[m].name.substr(this.image_list3[m].name.lastIndexOf('.')),
fileUrl: this.image_list3[m].url,
sid: ''
})
} }
this.formobj.gdLetter = cc this.formobj.gdLetter = cc
} else { } else {
@ -612,16 +576,7 @@ export default {
if (this.image_list4.length > 0) { if (this.image_list4.length > 0) {
const cc = [] const cc = []
for (var n = 0; n < this.image_list4.length; n++) { for (var n = 0; n < this.image_list4.length; n++) {
cc.push({ cc.push(this.image_list4[n].url)
attachType: '',
billAppSid: '',
createByName: window.sessionStorage.getItem('name'),
fileSid: '',
fileName: this.image_list4[n].name,
fileType: this.image_list4[n].name.substr(this.image_list4[n].name.lastIndexOf('.')),
fileUrl: this.image_list4[n].url,
sid: ''
})
} }
this.formobj.zjlLetter = cc this.formobj.zjlLetter = cc
} else { } else {
@ -630,16 +585,7 @@ export default {
if (this.image_list5.length > 0) { if (this.image_list5.length > 0) {
const cc = [] const cc = []
for (var p = 0; p < this.image_list5.length; p++) { for (var p = 0; p < this.image_list5.length; p++) {
cc.push({ cc.push(this.image_list5[p].url)
attachType: '',
billAppSid: '',
createByName: window.sessionStorage.getItem('name'),
fileSid: '',
fileName: this.image_list5[p].name,
fileType: this.image_list5[p].name.substr(this.image_list5[p].name.lastIndexOf('.')),
fileUrl: this.image_list5[p].url,
sid: ''
})
} }
this.formobj.fileList = cc this.formobj.fileList = cc
} else { } else {

14
anrui-buscenter/anrui-buscenter-ui/src/views/teshushenpi/qiankuanticheguanli/qiankuanticheshenqingInfo.vue

@ -123,7 +123,7 @@
<el-form-item><span class="addinputInfo">{{ formobj.reasonValue }}</span></el-form-item> <el-form-item><span class="addinputInfo">{{ formobj.reasonValue }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="16"> <el-col :span="16">
<el-form-item><span class="addinputInfo">{{ formobj.remarks }}</span></el-form-item> <el-form-item><span class="addinputInfo" style="margin-left: 0px !important;">{{ formobj.reason }}</span></el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
@ -250,33 +250,33 @@ export default {
this.$nextTick(() => { this.$nextTick(() => {
this.$refs['form_obj'].clearValidate() this.$refs['form_obj'].clearValidate()
}) })
fetchSid({ contractNo: row.contractId, orgPath: window.sessionStorage.getItem('defaultOrgPath'), sid: row.sid, userSid: window.sessionStorage.getItem('userSid') }).then((res) => { fetchSid({ contractNo: '', orgPath: '', sid: row.sid, userSid: '' }).then((res) => {
if (res.success) { if (res.success) {
this.formobj = res.data this.formobj = res.data
this.formobj.instanceId = res.data.procInstSid this.formobj.instanceId = res.data.procInstSid
if (this.formobj.zjlLetter.length > 0) { if (this.formobj.zjlLetter.length > 0) {
this.formobj.zjlLetter.forEach((e) => { this.formobj.zjlLetter.forEach((e) => {
this.image_list3.push(e.fileUrl) this.image_list4.push(e)
}) })
} }
if (this.formobj.gdLetter.length > 0) { if (this.formobj.gdLetter.length > 0) {
this.formobj.gdLetter.forEach((e) => { this.formobj.gdLetter.forEach((e) => {
this.image_list4.push(e.fileUrl) this.image_list3.push(e)
}) })
} }
if (this.formobj.guaranteeLetter.length > 0) { if (this.formobj.guaranteeLetter.length > 0) {
this.formobj.guaranteeLetter.forEach((e) => { this.formobj.guaranteeLetter.forEach((e) => {
this.image_list2.push(e.fileUrl) this.image_list2.push(e)
}) })
} }
if (this.formobj.carContract.length > 0) { if (this.formobj.carContract.length > 0) {
this.formobj.carContract.forEach((e) => { this.formobj.carContract.forEach((e) => {
this.image_list1.push(e.fileUrl) this.image_list1.push(e)
}) })
} }
if (this.formobj.fileList.length > 0) { if (this.formobj.fileList.length > 0) {
this.formobj.fileList.forEach((e) => { this.formobj.fileList.forEach((e) => {
this.image_list5.push(e.fileUrl) this.image_list5.push(e)
}) })
} }
} }

240
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/jiansuocheliang.vue

@ -1,240 +0,0 @@
<template>
<div class="app-container">
<div v-show="viewState == 2">
<div class="tab-header webtop">
<div>检索车辆信息</div>
<div>
<el-button type="primary" size="small" @click="AddUpdateReturn">确定</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="webcon">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{searchxianshitit}}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">
<el-form-item label="客户名称:">
<el-input v-model="listQuery.params.customerName" placeholder="" clearable class="filter-item"/>
</el-form-item>
<el-form-item label="合同编号:">
<el-input v-model="listQuery.params.contractNo" placeholder="" clearable class="filter-item"/>
</el-form-item>
<div class="searchbtns">
<el-button type="primary" @click="handleFilter">查询</el-button>
<el-button type="primary" @click="handresetting">重置</el-button>
</div>
</el-form>
</div>
</div>
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50px" type="selection" align="center" />
<el-table-column width="80px" label="编号" type="index" :index="indexMethod" align="center"/>
<el-table-column label="合同编号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.contractNo }}</span>
</template>
</el-table-column>
<el-table-column label="客户名称" align="center">
<template slot-scope="scope">
<span>{{ scope.row.customerName }}</span>
</template>
</el-table-column>
<el-table-column label="车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.VINNo }}</span>
</template>
</el-table-column>
</el-table>
</div>
<div class="pages">
<div class="tit" />
<!-- 翻页 -->
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
</div>
</div>
</div>
</template>
<script>
import {
getArrearsVehicleList,
arrearsVehicleApply,
} from "@/api/tesheshenpi/qiankuantiche";
import Pagination from "@/components/pagination";
import pageye from "@/components/pagination/pageye";
export default {
name: "jiansuocheliang",
components: {
Pagination,
pageye,
getArrearsVehicleList,
arrearsVehicleApply,
},
data() {
return {
isSearchShow: false,
searchxianshitit: "隐藏查询条件",
btndisabled: false,
viewState: 2,
tableKey: 0,
showbackState: 30,
sids: [],
list: [],
datalist: [],
number: "",
listLoading: false,
listQuery: {
current: 1,
size: 10,
params: {
contractNo: "",
customerName: "",
},
total: 1,
},
stateId: "",
YongHuid: [],
temp: {}, //
};
},
created() {
//
this.init();
//
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow;
if (this.isSearchShow) {
this.searchxianshitit = "隐藏查询条件";
} else {
this.searchxianshitit = "显示查询条件";
}
},
init() {
this.getList();
},
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size;
var pageindex = index + 1 + pagestart;
return pageindex;
},
//
handleReturn() {
this.$emit("doback");
},
//
getList() {
this.listLoading = true;
getArrearsVehicleList(this.listQuery).then((response) => {
this.listLoading = false;
if (response.code === "200") {
this.listQuery.total = response.data.total;
this.list = response.data.records;
}
});
},
//
handleFilter() {
this.getList();
},
//
handresetting() {
this.listQuery = {
current: 1,
size: 10,
params: {
contractNo: "",
customerName: "",
},
total: 0,
};
this.getList();
},
//
handleSelectionChange(row) {
this.sids = [];
const aa = [];
row.forEach((element) => {
aa.push({
vinNo: element.VINNo,
contractNo: element.contractNo,
customerName: element.customerName,
customerSid: element.customerSid,
vehicleSid: element.vehicleSid,
modelName: element.modelName,
modelSid: element.modelSid,
dealMoney: element.dealMoney,
applyDate: element.applyDate,
arrearsVehicleSid: "",
});
});
this.sids = aa;
},
//--
showAdd(val, contractNo) {
this.number = contractNo;
if (contractNo !== "") {
this.getList();
}
if (val.length > 0) {
val.forEach((element) => {
this.datalist.push({
vinNo: element.vinNo,
});
});
}
},
//
AddUpdateReturn() {
console.log(this.number,868686)
if (this.sids.length > 0) {
if (this.number !== "") {
this.sids.forEach((e) => {
if (e.contractNo !== this.number) {
this.$notify({
title: "提示",
message: "所选车辆合同编号不一致,请重新选择!",
type: "success",
duration: 2000,
});
return;
}
else{
for (var i = 0; i < this.datalist.length; i++) {
for (var j = 0; j < this.sids.length; j++) {
if (this.datalist[i].vinNo == this.sids[j].vinNo) {
this.$notify({
title: "提示",
message: "所选车架号已存在,请取消后重新选择!",
type: "success",
duration: 2000,
});
return;
}
else{
this.$emit("doAdd", this.sids);
}
}
}
}
});
}
} else {
this.$notify({
title: "提示",
message: "请选择至少一条记录进行删除操作!",
type: "error",
duration: 2000,
});
}
},
},
};
</script>
<style scoped>
</style>

502
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheByDivisionDaiBanInfo.vue

@ -0,0 +1,502 @@
<template>
<div class="app-container">
<div>
<div class="tab-header webtop">
<!--标题-->
<div>{{ viewTitle }}</div>
<!--start 添加修改按钮-->
<div>
<el-button type="primary" size="small" @click="openAgree('同意')"> </el-button>
<el-button type="danger" size="small" @click="openReject('驳回')"> </el-button>
<el-button type="danger" size="small" @click="openStop('终止')"> </el-button>
</div>
</div>
<div class="">
<div class="titwu">欠款提车申请单</div>
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row style="border-top: 1px solid #E0E3EB">
<el-col :span="8">
<div class="span-sty">发起人</div>
<el-form-item><span class="addinputInfo">{{ formobj.applyName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">发起部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.applyDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">发起日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">销售专员</div>
<el-form-item><span class="addinputInfo">{{ formobj.staffName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">销售部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.staffDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>销售类型</div>
<el-form-item><span class="addinputInfo">{{ formobj.paymentMethod }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractId }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">开票单位</div>
<el-form-item><span class="addinputInfo">{{ formobj.openTickName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">客户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">车型</div>
<el-form-item><span class="addinputInfo">{{ formobj.modelName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">是否金融部复核</div>
<el-form-item>
<span class="addinputInfo">{{ formobj.isFinance == '1' ? '是' : '否' }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty" v-if="formobj.isFinance == '1'">金融部经理</div>
<el-form-item v-if="formobj.isFinance == '1'">
<span class="addinputInfo">{{ formobj.financeName }}</span>
</el-form-item>
</el-col>
</el-row>
<div class="title titleOne">
<div>车辆信息</div>
</div>
<el-table :key="tableKey" :data="formobj.vinList" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.vin }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="scope">
<span>{{ scope.row.price }}</span>
</template>
</el-table-column>
<el-table-column label="平台已收款" align="center">
<template slot-scope="scope">
<span>{{ scope.row.subscribedAll }}</span>
</template>
</el-table-column>
</el-table>
<div class="title">挂车信息</div>
<el-table :key="billingKey" :data="formobj.trailersList" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="挂车车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.gcVinNo }}</span>
</template>
</el-table-column>
<el-table-column label="主车车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="scope">
<span>{{ scope.row.price }}</span>
</template>
</el-table-column>
<el-table-column label="平台已收款" align="center">
<template slot-scope="scope">
<span>{{ scope.row.subscribedAll }}</span>
</template>
</el-table-column>
</el-table>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>欠款提车原因</div>
<el-form-item><span class="addinputInfo">{{ formobj.reasonValue }}</span></el-form-item>
</el-col>
<el-col :span="16">
<el-form-item><span class="addinputInfo" style="margin-left: 0px !important;">{{ formobj.reason }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">合同总金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">平台收款总金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractCollectionMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>承诺回款日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.commitmentMoneyDate }}</span></el-form-item>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>车辆买卖合同(欠款)</div>
<el-row>
<el-col :span="24">
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list1" :key="index" :src="item" :preview-src-list="image_list1"></el-image>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>欠款提车担保承诺书</div>
<el-row>
<el-col :span="24">
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list2" :key="index" :src="item" :preview-src-list="image_list2"></el-image>
</el-col>
</el-row>
<div class="title">股东会对外担保决议</div>
<el-row>
<el-col :span="24">
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list3" :key="index" :src="item" :preview-src-list="image_list3"></el-image>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>总经理担保书</div>
<el-row>
<el-col :span="24">
<el-form-item>
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list4" :key="index" :src="item" :preview-src-list="image_list4"></el-image>
</el-form-item>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>其他附件</div>
<el-row>
<el-col :span="24">
<el-form-item>
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list5" :key="index" :src="item" :preview-src-list="image_list5"></el-image>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<!-- 选择待办人 的弹出框-->
<el-dialog title="填写审批意见" :visible.sync="nodeDialogVisible" width="80%">
<el-form class="formadd" >
<el-row v-show="currentLink" style="border-top: 1px solid #e0e3eb">
<el-col :span="4" class="tleftb">
<span>当前环节:</span>
</el-col>
<el-col :span="20">
<el-form-item><span>{{ current.taskName }}->{{ nextNode.name }}</span></el-form-item>
</el-col>
</el-row>
<el-row :class="{rowClass:!currentLink}">
<el-col :span="4" class="tleftb">
<span>意见:</span>
</el-col>
<el-col :span="20">
<el-form-item><el-input size="small" v-model="dialogList.comment" placeholder="审批意见" class="addinputw" type="textarea" :autosize="{ minRows: 1, maxRows: 10}" clearable ></el-input></el-form-item>
</el-col>
</el-row>
<div style="text-align:center;margin-top: 20px;">
<el-button type="primary" size="mini" @click="reject"> </el-button>
<el-button type="info " size="mini" @click="nodeDialogVisible = false"> </el-button>
</div>
</el-form>
</el-dialog>
</div>
</template>
<script>
import { fetchSid, getNextNodesForSubmit, getPreviousNodesForReject, initiatorToAnswerInfo, breakProcess, reject } from '@/api/tesheshenpi/qiankuantiche'
export default {
name: 'qiankuanticheByDivisionDaiBanInfo',
data() {
return {
viewTitle: '',
tableKey: 0,
billingKey: 1,
index: 0,
image_list1: [],
image_list2: [],
image_list3: [],
image_list4: [],
image_list5: [],
formobj: {
applyDept: '',
applyDeptSid: '',
applyName: '',
applyUserSid: '',
carContract: [],
carContractDownloadUrl: '',
commitmentMoneyDate: '',
configSid: '',
contractCollectionMoney: '',
contractId: '',
contractMoney: '',
createDate: '',
customerName: '',
customerSid: '',
fileList: [],
financeName: '',
financeUserSid: '',
gdLetter: [],
gdLetterDownloadUrl: '',
guaranteeLetter: [],
guaranteeLetterDownloadUrl: '',
isFinance: '',
modelName: '',
modelSid: '',
openTickName: '',
orgPath: '',
paymentMethod: '',
paymentMethodKey: '',
procInsId: '',
reason: '',
reasonKey: '',
reasonValue: '',
sid: '',
staffDept: '',
staffDeptSid: '',
staffName: '',
staffUserSid: '',
taskId: '',
trailersList: [],
userSid: '',
vinList: [],
zjlLetter: [],
zjlLetterDownloadUrl: ''
},
rules: {},
operation: '', //
dialogList: {
comment: ''
},
startTask: true,
current: {
taskDefKey: '',
taskName: '' //
},
nextNode: {}, //
nodeDialogVisible: false,
currentLink: true,
//
linkByParameter: {
businessSid: '',
comment: '',
instanceId: '',
taskId: '',
orgSidPath: '',
taskDefKey: '',
userSid: ''
}
}
},
created() {
console.log('url:' + window.location.href)
var one = window.location.href.indexOf('&data') + 6
const data = window.location.href.substr(one) // urlunescape()web,使
const obj = JSON.parse(decodeURIComponent(data))
console.log('iframe页面获取的obj:', obj)
//
this.linkByParameter.businessSid = obj.businessSid
this.linkByParameter.instanceId = obj.instanceId
this.linkByParameter.taskId = obj.taskId
this.linkByParameter.taskDefKey = obj.taskDefKey
this.linkByParameter.orgSidPath = window.sessionStorage.getItem('orgSidPath')
this.linkByParameter.userSid = window.sessionStorage.getItem('userSid')
this.current.taskDefKey = obj.taskDefKey
this.current.taskName = obj.taskName
//
this.showInfo(obj.businessSid)
},
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 500 + 'px'
}
}, '*')
},
methods: {
showInfo(sid) {
this.viewTitle = '欠款提车申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
fetchSid({ contractNo: '', orgPath: '', sid: sid, userSid: '' }).then((res) => {
if (res.success) {
this.formobj = res.data
this.formobj.instanceId = res.data.procInstSid
if (this.formobj.zjlLetter.length > 0) {
this.formobj.zjlLetter.forEach((e) => {
this.image_list4.push(e)
})
}
if (this.formobj.gdLetter.length > 0) {
this.formobj.gdLetter.forEach((e) => {
this.image_list3.push(e)
})
}
if (this.formobj.guaranteeLetter.length > 0) {
this.formobj.guaranteeLetter.forEach((e) => {
this.image_list2.push(e)
})
}
if (this.formobj.carContract.length > 0) {
this.formobj.carContract.forEach((e) => {
this.image_list1.push(e)
})
}
if (this.formobj.fileList.length > 0) {
this.formobj.fileList.forEach((e) => {
this.image_list5.push(e)
})
}
}
})
},
//
openAgree(val) {
this.operation = val
this.currentLink = true
this.dialogList.comment = '同意'
getNextNodesForSubmit({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openReject(val) {
this.operation = val
this.currentLink = true
this.dialogList.comment = ''
getPreviousNodesForReject({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openStop(val) {
this.operation = val
this.currentLink = false
this.dialogList.comment = ''
this.nodeDialogVisible = true
},
reject() {
if (this.operation === '同意') {
this.handleAgree()
} else if (this.operation === '驳回') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleReject()
}
} else if (this.operation === '终止') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleStop()
}
}
},
/** 同意任务 */
handleAgree() {
this.linkByParameter.comment = this.dialogList.comment
initiatorToAnswerInfo(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 驳回任务 */
handleReject() {
this.linkByParameter.comment = this.dialogList.comment
reject(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 终止任务 */
handleStop() {
this.linkByParameter.comment = this.dialogList.comment
breakProcess(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
}
}
}
</script>
<style scoped>
.titwu {
font-size: 28px;
text-align: center;
padding: 30px 0 20px 0;
}
.rowClass{
border-top: 1px solid #E0E3EB;
}
.span-sty {
width: 130px !important;
}
.addinputInfo {
margin-left: 120px !important;
}
</style>

548
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheDaiBanByFileAndQiTaInfo.vue

@ -0,0 +1,548 @@
<template>
<div class="app-container">
<div>
<div class="tab-header webtop">
<!--标题-->
<div>{{ viewTitle }}</div>
<!--start 添加修改按钮-->
<div>
<el-button type="primary" size="small" @click="openAgree('同意')"> </el-button>
<el-button type="danger" size="small" @click="openReject('驳回')"> </el-button>
<el-button type="danger" size="small" @click="openStop('终止')"> </el-button>
</div>
</div>
<div class="">
<div class="titwu">欠款提车申请单</div>
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row style="border-top: 1px solid #E0E3EB">
<el-col :span="8">
<div class="span-sty">发起人</div>
<el-form-item><span class="addinputInfo">{{ formobj.applyName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">发起部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.applyDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">发起日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">销售专员</div>
<el-form-item><span class="addinputInfo">{{ formobj.staffName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">销售部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.staffDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>销售类型</div>
<el-form-item><span class="addinputInfo">{{ formobj.paymentMethod }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractId }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">开票单位</div>
<el-form-item><span class="addinputInfo">{{ formobj.openTickName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">客户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">车型</div>
<el-form-item><span class="addinputInfo">{{ formobj.modelName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">是否金融部复核</div>
<el-form-item>
<span class="addinputInfo">{{ formobj.isFinance == '1' ? '是' : '否' }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty" v-if="formobj.isFinance == '1'">金融部经理</div>
<el-form-item v-if="formobj.isFinance == '1'">
<span class="addinputInfo">{{ formobj.financeName }}</span>
</el-form-item>
</el-col>
</el-row>
<div class="title titleOne">
<div>车辆信息</div>
</div>
<el-table :key="tableKey" :data="formobj.vinList" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.vin }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="scope">
<span>{{ scope.row.price }}</span>
</template>
</el-table-column>
<el-table-column label="平台已收款" align="center">
<template slot-scope="scope">
<span>{{ scope.row.subscribedAll }}</span>
</template>
</el-table-column>
</el-table>
<div class="title">挂车信息</div>
<el-table :key="billingKey" :data="formobj.trailersList" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="挂车车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.gcVinNo }}</span>
</template>
</el-table-column>
<el-table-column label="主车车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="scope">
<span>{{ scope.row.price }}</span>
</template>
</el-table-column>
<el-table-column label="平台已收款" align="center">
<template slot-scope="scope">
<span>{{ scope.row.subscribedAll }}</span>
</template>
</el-table-column>
</el-table>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>欠款提车原因</div>
<el-form-item><span class="addinputInfo">{{ formobj.reasonValue }}</span></el-form-item>
</el-col>
<el-col :span="16">
<el-form-item><span class="addinputInfo" style="margin-left: 0px !important;">{{ formobj.reason }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">合同总金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">平台收款总金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractCollectionMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>承诺回款日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.commitmentMoneyDate }}</span></el-form-item>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>车辆买卖合同(欠款)</div>
<el-row>
<el-col :span="24">
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list1" :key="index" :src="item" :preview-src-list="image_list1"></el-image>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>欠款提车担保承诺书</div>
<el-row>
<el-col :span="24">
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list2" :key="index" :src="item" :preview-src-list="image_list2"></el-image>
</el-col>
</el-row>
<div class="title">股东会对外担保决议</div>
<el-row>
<el-col :span="24">
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list3" :key="index" :src="item" :preview-src-list="image_list3"></el-image>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>总经理担保书</div>
<el-row>
<el-col :span="24">
<el-form-item>
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list4" :key="index" :src="item" :preview-src-list="image_list4"></el-image>
</el-form-item>
</el-col>
</el-row>
<div class="title">
<div>其他附件</div>
</div>
<el-row>
<el-col :span="24">
<el-form-item>
<upload ref="uploadImg" v-model="image_list5" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<!-- 选择待办人 的弹出框-->
<el-dialog title="填写审批意见" :visible.sync="nodeDialogVisible" width="80%">
<el-form class="formadd" >
<el-row v-show="currentLink" style="border-top: 1px solid #e0e3eb">
<el-col :span="4" class="tleftb">
<span>当前环节:</span>
</el-col>
<el-col :span="20">
<el-form-item><span>{{ current.taskName }}->{{ nextNode.name }}</span></el-form-item>
</el-col>
</el-row>
<el-row :class="{rowClass:!currentLink}">
<el-col :span="4" class="tleftb">
<span>意见:</span>
</el-col>
<el-col :span="20">
<el-form-item><el-input size="small" v-model="dialogList.comment" placeholder="审批意见" class="addinputw" type="textarea" :autosize="{ minRows: 1, maxRows: 10}" clearable ></el-input></el-form-item>
</el-col>
</el-row>
<div style="text-align:center;margin-top: 20px;">
<el-button type="primary" size="mini" @click="reject"> </el-button>
<el-button type="info " size="mini" @click="nodeDialogVisible = false"> </el-button>
</div>
</el-form>
</el-dialog>
</div>
</template>
<script>
import { fetchSid, getNextNodesForSubmit, getPreviousNodesForReject, completeBy, breakProcess, reject } from '@/api/tesheshenpi/qiankuantiche'
import upload from '@/components/uploadFile/upload'
export default {
name: 'qiankuanticheDaiBanByFileAndQiTaInfo',
components: {
upload
},
data() {
return {
viewTitle: '',
tableKey: 0,
billingKey: 1,
index: 0,
accept: '.jpg,.jpeg,.png,.JPG,.JPEG',
image_list1: [],
image_list2: [],
image_list3: [],
image_list4: [],
image_list5: [],
formobj: {
applyDept: '',
applyDeptSid: '',
applyName: '',
applyUserSid: '',
carContract: [],
carContractDownloadUrl: '',
commitmentMoneyDate: '',
configSid: '',
contractCollectionMoney: '',
contractId: '',
contractMoney: '',
createDate: '',
customerName: '',
customerSid: '',
fileList: [],
financeName: '',
financeUserSid: '',
gdLetter: [],
gdLetterDownloadUrl: '',
guaranteeLetter: [],
guaranteeLetterDownloadUrl: '',
isFinance: '',
modelName: '',
modelSid: '',
openTickName: '',
orgPath: '',
paymentMethod: '',
paymentMethodKey: '',
procInsId: '',
reason: '',
reasonKey: '',
reasonValue: '',
sid: '',
staffDept: '',
staffDeptSid: '',
staffName: '',
staffUserSid: '',
taskId: '',
trailersList: [],
userSid: '',
vinList: [],
zjlLetter: [],
zjlLetterDownloadUrl: ''
},
rules: {},
operation: '', //
dialogList: {
comment: ''
},
startTask: true,
current: {
taskDefKey: '',
taskName: '' //
},
nextNode: {}, //
nodeDialogVisible: false,
currentLink: true,
//
linkByParameter: {
businessSid: '',
comment: '',
instanceId: '',
taskId: '',
orgSidPath: '',
taskDefKey: '',
userSid: '',
carContract: [],
guaranteeLetter: [],
gdLetter: [],
zjlLetter: [],
fileList: []
}
}
},
created() {
console.log('url:' + window.location.href)
var one = window.location.href.indexOf('&data') + 6
const data = window.location.href.substr(one) // urlunescape()web,使
const obj = JSON.parse(decodeURIComponent(data))
console.log('iframe页面获取的obj:', obj)
//
this.linkByParameter.businessSid = obj.businessSid
this.linkByParameter.instanceId = obj.instanceId
this.linkByParameter.taskId = obj.taskId
this.linkByParameter.taskDefKey = obj.taskDefKey
this.linkByParameter.orgSidPath = window.sessionStorage.getItem('orgSidPath')
this.linkByParameter.userSid = window.sessionStorage.getItem('userSid')
this.current.taskDefKey = obj.taskDefKey
this.current.taskName = obj.taskName
//
this.showInfo(obj.businessSid)
},
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 500 + 'px'
}
}, '*')
},
methods: {
showInfo(sid) {
this.viewTitle = '欠款提车申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
fetchSid({ contractNo: '', orgPath: '', sid: sid, userSid: '' }).then((res) => {
if (res.success) {
this.formobj = res.data
this.formobj.instanceId = res.data.procInstSid
if (this.formobj.zjlLetter.length > 0) {
this.formobj.zjlLetter.forEach((e) => {
this.image_list4.push(e)
})
}
if (this.formobj.gdLetter.length > 0) {
this.formobj.gdLetter.forEach((e) => {
this.image_list3.push(e)
})
}
if (this.formobj.guaranteeLetter.length > 0) {
this.formobj.guaranteeLetter.forEach((e) => {
this.image_list2.push(e)
})
}
if (this.formobj.carContract.length > 0) {
this.formobj.carContract.forEach((e) => {
this.image_list1.push(e)
})
}
if (this.formobj.fileList.length > 0) {
this.formobj.fileList.forEach((e) => {
this.image_list5.push({
name: '',
url: e
})
})
}
}
})
},
handleDownLoad(val) {
if (val !== null && val !== '' && val !== undefined) {
window.open(val, '_blank')
} else {
this.$message({ showClose: true, type: 'error', message: '请生成附件后再下载' })
return
}
},
getUrl() {
if (this.image_list5.length > 0) {
const cc = []
for (var p = 0; p < this.image_list5.length; p++) {
cc.push(this.image_list5[p].url)
}
this.linkByParameter.fileList = cc
} else {
this.linkByParameter.fileList = []
}
},
//
openAgree(val) {
this.getUrl()
if (this.linkByParameter.fileList.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请上传其他附件(信审截图)' })
return
}
this.operation = val
this.currentLink = true
this.dialogList.comment = '同意'
getNextNodesForSubmit({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openReject(val) {
this.operation = val
this.currentLink = true
this.dialogList.comment = ''
getPreviousNodesForReject({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openStop(val) {
this.operation = val
this.currentLink = false
this.dialogList.comment = ''
this.nodeDialogVisible = true
},
reject() {
if (this.operation === '同意') {
this.handleAgree()
} else if (this.operation === '驳回') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleReject()
}
} else if (this.operation === '终止') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleStop()
}
}
},
/** 同意任务 */
handleAgree() {
this.linkByParameter.comment = this.dialogList.comment
completeBy(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 驳回任务 */
handleReject() {
this.linkByParameter.comment = this.dialogList.comment
reject(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 终止任务 */
handleStop() {
this.linkByParameter.comment = this.dialogList.comment
breakProcess(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
}
}
}
</script>
<style scoped>
.titwu {
font-size: 28px;
text-align: center;
padding: 30px 0 20px 0;
}
.rowClass{
border-top: 1px solid #E0E3EB;
}
.span-sty {
width: 130px !important;
}
.addinputInfo {
margin-left: 120px !important;
}
.titleOne {
padding: 7px !important;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
</style>

622
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheDaiBanByFileInfo.vue

@ -0,0 +1,622 @@
<template>
<div class="app-container">
<div>
<div class="tab-header webtop">
<!--标题-->
<div>{{ viewTitle }}</div>
<!--start 添加修改按钮-->
<div>
<el-button type="primary" size="small" @click="openAgree('同意')"> </el-button>
<el-button type="danger" size="small" @click="openReject('驳回')"> </el-button>
<el-button type="danger" size="small" @click="openStop('终止')"> </el-button>
</div>
</div>
<div class="">
<div class="titwu">欠款提车申请单</div>
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row style="border-top: 1px solid #E0E3EB">
<el-col :span="8">
<div class="span-sty">发起人</div>
<el-form-item><span class="addinputInfo">{{ formobj.applyName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">发起部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.applyDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">发起日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">销售专员</div>
<el-form-item><span class="addinputInfo">{{ formobj.staffName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">销售部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.staffDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>销售类型</div>
<el-form-item><span class="addinputInfo">{{ formobj.paymentMethod }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractId }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">开票单位</div>
<el-form-item><span class="addinputInfo">{{ formobj.openTickName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">客户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">车型</div>
<el-form-item><span class="addinputInfo">{{ formobj.modelName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">是否金融部复核</div>
<el-form-item>
<span class="addinputInfo">{{ formobj.isFinance == '1' ? '是' : '否' }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty" v-if="formobj.isFinance == '1'">金融部经理</div>
<el-form-item v-if="formobj.isFinance == '1'">
<span class="addinputInfo">{{ formobj.financeName }}</span>
</el-form-item>
</el-col>
</el-row>
<div class="title titleOne">
<div>车辆信息</div>
</div>
<el-table :key="tableKey" :data="formobj.vinList" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.vin }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="scope">
<span>{{ scope.row.price }}</span>
</template>
</el-table-column>
<el-table-column label="平台已收款" align="center">
<template slot-scope="scope">
<span>{{ scope.row.subscribedAll }}</span>
</template>
</el-table-column>
</el-table>
<div class="title">挂车信息</div>
<el-table :key="billingKey" :data="formobj.trailersList" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="挂车车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.gcVinNo }}</span>
</template>
</el-table-column>
<el-table-column label="主车车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="scope">
<span>{{ scope.row.price }}</span>
</template>
</el-table-column>
<el-table-column label="平台已收款" align="center">
<template slot-scope="scope">
<span>{{ scope.row.subscribedAll }}</span>
</template>
</el-table-column>
</el-table>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>欠款提车原因</div>
<el-form-item><span class="addinputInfo">{{ formobj.reasonValue }}</span></el-form-item>
</el-col>
<el-col :span="16">
<el-form-item><span class="addinputInfo" style="margin-left: 0px !important;">{{ formobj.reason }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">合同总金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">平台收款总金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractCollectionMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>承诺回款日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.commitmentMoneyDate }}</span></el-form-item>
</el-col>
</el-row>
<div class="title titleOne">
<div>
<span class="icon">*</span>车辆买卖合同(欠款)
</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="handleDownLoad(formobj.carContractDownloadUrl)">下载附件</el-button>
</div>
<el-row>
<el-col :span="24">
<upload ref="uploadImg" v-model="image_list1" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-col>
</el-row>
<div class="title titleOne">
<div>
<span class="icon">*</span>欠款提车担保承诺书
</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="handleDownLoad(formobj.guaranteeLetterDownloadUrl)">下载附件</el-button>
</div>
<el-row>
<el-col :span="24">
<upload ref="uploadImg" v-model="image_list2" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-col>
</el-row>
<div class="title titleOne">
<div>股东会对外担保决议</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="handleDownLoad(formobj.gdLetterDownloadUrl)">下载附件</el-button>
</div>
<el-row>
<el-col :span="24">
<upload ref="uploadImg" v-model="image_list3" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-col>
</el-row>
<div class="title titleOne">
<div>
<span class="icon">*</span>总经理担保书
</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="handleDownLoad(formobj.zjlLetterDownloadUrl)">下载附件</el-button>
</div>
<el-row>
<el-col :span="24">
<el-form-item>
<upload ref="uploadImg" v-model="image_list4" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-form-item>
</el-col>
</el-row>
<div class="title">
<div>其他附件</div>
</div>
<el-row>
<el-col :span="24">
<el-form-item>
<upload ref="uploadImg" v-model="image_list5" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<!-- 选择待办人 的弹出框-->
<el-dialog title="填写审批意见" :visible.sync="nodeDialogVisible" width="80%">
<el-form class="formadd" >
<el-row v-show="currentLink" style="border-top: 1px solid #e0e3eb">
<el-col :span="4" class="tleftb">
<span>当前环节:</span>
</el-col>
<el-col :span="20">
<el-form-item><span>{{ current.taskName }}->{{ nextNode.name }}</span></el-form-item>
</el-col>
</el-row>
<el-row :class="{rowClass:!currentLink}">
<el-col :span="4" class="tleftb">
<span>意见:</span>
</el-col>
<el-col :span="20">
<el-form-item><el-input size="small" v-model="dialogList.comment" placeholder="审批意见" class="addinputw" type="textarea" :autosize="{ minRows: 1, maxRows: 10}" clearable ></el-input></el-form-item>
</el-col>
</el-row>
<div style="text-align:center;margin-top: 20px;">
<el-button type="primary" size="mini" @click="reject"> </el-button>
<el-button type="info " size="mini" @click="nodeDialogVisible = false"> </el-button>
</div>
</el-form>
</el-dialog>
</div>
</template>
<script>
import { fetchSid, getNextNodesForSubmit, getPreviousNodesForReject, completeBy, breakProcess, reject } from '@/api/tesheshenpi/qiankuantiche'
import upload from '@/components/uploadFile/upload'
export default {
name: 'qiankuanticheDaiBanByFileInfo',
components: {
upload
},
data() {
return {
viewTitle: '',
tableKey: 0,
billingKey: 1,
index: 0,
accept: '.jpg,.jpeg,.png,.JPG,.JPEG',
image_list1: [],
image_list2: [],
image_list3: [],
image_list4: [],
image_list5: [],
formobj: {
applyDept: '',
applyDeptSid: '',
applyName: '',
applyUserSid: '',
carContract: [],
carContractDownloadUrl: '',
commitmentMoneyDate: '',
configSid: '',
contractCollectionMoney: '',
contractId: '',
contractMoney: '',
createDate: '',
customerName: '',
customerSid: '',
fileList: [],
financeName: '',
financeUserSid: '',
gdLetter: [],
gdLetterDownloadUrl: '',
guaranteeLetter: [],
guaranteeLetterDownloadUrl: '',
isFinance: '',
modelName: '',
modelSid: '',
openTickName: '',
orgPath: '',
paymentMethod: '',
paymentMethodKey: '',
procInsId: '',
reason: '',
reasonKey: '',
reasonValue: '',
sid: '',
staffDept: '',
staffDeptSid: '',
staffName: '',
staffUserSid: '',
taskId: '',
trailersList: [],
userSid: '',
vinList: [],
zjlLetter: [],
zjlLetterDownloadUrl: ''
},
rules: {},
operation: '', //
dialogList: {
comment: ''
},
startTask: true,
current: {
taskDefKey: '',
taskName: '' //
},
nextNode: {}, //
nodeDialogVisible: false,
currentLink: true,
//
linkByParameter: {
businessSid: '',
comment: '',
instanceId: '',
taskId: '',
orgSidPath: '',
taskDefKey: '',
userSid: '',
carContract: [],
guaranteeLetter: [],
gdLetter: [],
zjlLetter: [],
fileList: []
}
}
},
created() {
console.log('url:' + window.location.href)
var one = window.location.href.indexOf('&data') + 6
const data = window.location.href.substr(one) // urlunescape()web,使
const obj = JSON.parse(decodeURIComponent(data))
console.log('iframe页面获取的obj:', obj)
//
this.linkByParameter.businessSid = obj.businessSid
this.linkByParameter.instanceId = obj.instanceId
this.linkByParameter.taskId = obj.taskId
this.linkByParameter.taskDefKey = obj.taskDefKey
this.linkByParameter.orgSidPath = window.sessionStorage.getItem('orgSidPath')
this.linkByParameter.userSid = window.sessionStorage.getItem('userSid')
this.current.taskDefKey = obj.taskDefKey
this.current.taskName = obj.taskName
//
this.showInfo(obj.businessSid)
},
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 500 + 'px'
}
}, '*')
},
methods: {
showInfo(sid) {
this.viewTitle = '欠款提车申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
fetchSid({ contractNo: '', orgPath: '', sid: sid, userSid: '' }).then((res) => {
if (res.success) {
this.formobj = res.data
this.formobj.instanceId = res.data.procInstSid
if (this.formobj.zjlLetter.length > 0) {
this.formobj.zjlLetter.forEach((e) => {
this.image_list4.push({
name: '',
url: e
})
})
}
if (this.formobj.gdLetter.length > 0) {
this.formobj.gdLetter.forEach((e) => {
this.image_list3.push({
name: '',
url: e
})
})
}
if (this.formobj.guaranteeLetter.length > 0) {
this.formobj.guaranteeLetter.forEach((e) => {
this.image_list2.push({
name: '',
url: e
})
})
}
if (this.formobj.carContract.length > 0) {
this.formobj.carContract.forEach((e) => {
this.image_list1.push({
name: '',
url: e
})
})
}
if (this.formobj.fileList.length > 0) {
this.formobj.fileList.forEach((e) => {
this.image_list5.push({
name: '',
url: e
})
})
}
}
})
},
handleDownLoad(val) {
if (val !== null && val !== '' && val !== undefined) {
window.open(val, '_blank')
} else {
this.$message({ showClose: true, type: 'error', message: '请生成附件后再下载' })
return
}
},
getUrl() {
if (this.image_list1.length > 0) {
const aa = []
for (var i = 0; i < this.image_list1.length; i++) {
aa.push(this.image_list1[i].url)
}
this.linkByParameter.carContract = aa
} else {
this.linkByParameter.carContract = []
}
if (this.image_list2.length > 0) {
const bb = []
for (var k = 0; k < this.image_list2.length; k++) {
bb.push(this.image_list2[k].url)
}
this.linkByParameter.guaranteeLetter = bb
} else {
this.linkByParameter.guaranteeLetter = []
}
if (this.image_list3.length > 0) {
const cc = []
for (var m = 0; m < this.image_list3.length; m++) {
cc.push(this.image_list3[m].url)
}
this.linkByParameter.gdLetter = cc
} else {
this.linkByParameter.gdLetter = []
}
if (this.image_list4.length > 0) {
const cc = []
for (var n = 0; n < this.image_list4.length; n++) {
cc.push(this.image_list4[n].url)
}
this.linkByParameter.zjlLetter = cc
} else {
this.linkByParameter.zjlLetter = []
}
if (this.image_list5.length > 0) {
const cc = []
for (var p = 0; p < this.image_list5.length; p++) {
cc.push(this.image_list5[p].url)
}
this.linkByParameter.fileList = cc
} else {
this.linkByParameter.fileList = []
}
},
//
openAgree(val) {
this.getUrl()
if (this.linkByParameter.carContract.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请上传车辆买卖合同附件' })
return
}
if (this.linkByParameter.guaranteeLetter.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请上传欠款提车担保承诺书附件' })
return
}
if (this.linkByParameter.zjlLetter.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请上传总经理担保书附件' })
return
}
this.operation = val
this.currentLink = true
this.dialogList.comment = '同意'
getNextNodesForSubmit({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openReject(val) {
this.operation = val
this.currentLink = true
this.dialogList.comment = ''
getPreviousNodesForReject({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openStop(val) {
this.operation = val
this.currentLink = false
this.dialogList.comment = ''
this.nodeDialogVisible = true
},
reject() {
if (this.operation === '同意') {
this.handleAgree()
} else if (this.operation === '驳回') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleReject()
}
} else if (this.operation === '终止') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleStop()
}
}
},
/** 同意任务 */
handleAgree() {
this.linkByParameter.comment = this.dialogList.comment
completeBy(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 驳回任务 */
handleReject() {
this.linkByParameter.comment = this.dialogList.comment
reject(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 终止任务 */
handleStop() {
this.linkByParameter.comment = this.dialogList.comment
breakProcess(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
}
}
}
</script>
<style scoped>
.titwu {
font-size: 28px;
text-align: center;
padding: 30px 0 20px 0;
}
.rowClass{
border-top: 1px solid #E0E3EB;
}
.span-sty {
width: 130px !important;
}
.addinputInfo {
margin-left: 120px !important;
}
.titleOne {
padding: 7px !important;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
</style>

502
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheDaiBanInfo.vue

@ -0,0 +1,502 @@
<template>
<div class="app-container">
<div>
<div class="tab-header webtop">
<!--标题-->
<div>{{ viewTitle }}</div>
<!--start 添加修改按钮-->
<div>
<el-button type="primary" size="small" @click="openAgree('同意')"> </el-button>
<el-button type="danger" size="small" @click="openReject('驳回')"> </el-button>
<el-button type="danger" size="small" @click="openStop('终止')"> </el-button>
</div>
</div>
<div class="">
<div class="titwu">欠款提车申请单</div>
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row style="border-top: 1px solid #E0E3EB">
<el-col :span="8">
<div class="span-sty">发起人</div>
<el-form-item><span class="addinputInfo">{{ formobj.applyName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">发起部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.applyDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">发起日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">销售专员</div>
<el-form-item><span class="addinputInfo">{{ formobj.staffName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">销售部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.staffDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>销售类型</div>
<el-form-item><span class="addinputInfo">{{ formobj.paymentMethod }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractId }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">开票单位</div>
<el-form-item><span class="addinputInfo">{{ formobj.openTickName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">客户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">车型</div>
<el-form-item><span class="addinputInfo">{{ formobj.modelName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">是否金融部复核</div>
<el-form-item>
<span class="addinputInfo">{{ formobj.isFinance == '1' ? '是' : '否' }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty" v-if="formobj.isFinance == '1'">金融部经理</div>
<el-form-item v-if="formobj.isFinance == '1'">
<span class="addinputInfo">{{ formobj.financeName }}</span>
</el-form-item>
</el-col>
</el-row>
<div class="title titleOne">
<div>车辆信息</div>
</div>
<el-table :key="tableKey" :data="formobj.vinList" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.vin }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="scope">
<span>{{ scope.row.price }}</span>
</template>
</el-table-column>
<el-table-column label="平台已收款" align="center">
<template slot-scope="scope">
<span>{{ scope.row.subscribedAll }}</span>
</template>
</el-table-column>
</el-table>
<div class="title">挂车信息</div>
<el-table :key="billingKey" :data="formobj.trailersList" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="挂车车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.gcVinNo }}</span>
</template>
</el-table-column>
<el-table-column label="主车车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="scope">
<span>{{ scope.row.price }}</span>
</template>
</el-table-column>
<el-table-column label="平台已收款" align="center">
<template slot-scope="scope">
<span>{{ scope.row.subscribedAll }}</span>
</template>
</el-table-column>
</el-table>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>欠款提车原因</div>
<el-form-item><span class="addinputInfo">{{ formobj.reasonValue }}</span></el-form-item>
</el-col>
<el-col :span="16">
<el-form-item><span class="addinputInfo" style="margin-left: 0px !important;">{{ formobj.reason }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">合同总金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">平台收款总金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractCollectionMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>承诺回款日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.commitmentMoneyDate }}</span></el-form-item>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>车辆买卖合同(欠款)</div>
<el-row>
<el-col :span="24">
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list1" :key="index" :src="item" :preview-src-list="image_list1"></el-image>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>欠款提车担保承诺书</div>
<el-row>
<el-col :span="24">
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list2" :key="index" :src="item" :preview-src-list="image_list2"></el-image>
</el-col>
</el-row>
<div class="title">股东会对外担保决议</div>
<el-row>
<el-col :span="24">
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list3" :key="index" :src="item" :preview-src-list="image_list3"></el-image>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>总经理担保书</div>
<el-row>
<el-col :span="24">
<el-form-item>
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list4" :key="index" :src="item" :preview-src-list="image_list4"></el-image>
</el-form-item>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>其他附件</div>
<el-row>
<el-col :span="24">
<el-form-item>
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list5" :key="index" :src="item" :preview-src-list="image_list5"></el-image>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<!-- 选择待办人 的弹出框-->
<el-dialog title="填写审批意见" :visible.sync="nodeDialogVisible" width="80%">
<el-form class="formadd" >
<el-row v-show="currentLink" style="border-top: 1px solid #e0e3eb">
<el-col :span="4" class="tleftb">
<span>当前环节:</span>
</el-col>
<el-col :span="20">
<el-form-item><span>{{ current.taskName }}->{{ nextNode.name }}</span></el-form-item>
</el-col>
</el-row>
<el-row :class="{rowClass:!currentLink}">
<el-col :span="4" class="tleftb">
<span>意见:</span>
</el-col>
<el-col :span="20">
<el-form-item><el-input size="small" v-model="dialogList.comment" placeholder="审批意见" class="addinputw" type="textarea" :autosize="{ minRows: 1, maxRows: 10}" clearable ></el-input></el-form-item>
</el-col>
</el-row>
<div style="text-align:center;margin-top: 20px;">
<el-button type="primary" size="mini" @click="reject"> </el-button>
<el-button type="info " size="mini" @click="nodeDialogVisible = false"> </el-button>
</div>
</el-form>
</el-dialog>
</div>
</template>
<script>
import { fetchSid, getNextNodesForSubmit, getPreviousNodesForReject, complete, breakProcess, reject } from '@/api/tesheshenpi/qiankuantiche'
export default {
name: 'qiankuanticheDaiBanInfo',
data() {
return {
viewTitle: '',
tableKey: 0,
billingKey: 1,
index: 0,
image_list1: [],
image_list2: [],
image_list3: [],
image_list4: [],
image_list5: [],
formobj: {
applyDept: '',
applyDeptSid: '',
applyName: '',
applyUserSid: '',
carContract: [],
carContractDownloadUrl: '',
commitmentMoneyDate: '',
configSid: '',
contractCollectionMoney: '',
contractId: '',
contractMoney: '',
createDate: '',
customerName: '',
customerSid: '',
fileList: [],
financeName: '',
financeUserSid: '',
gdLetter: [],
gdLetterDownloadUrl: '',
guaranteeLetter: [],
guaranteeLetterDownloadUrl: '',
isFinance: '',
modelName: '',
modelSid: '',
openTickName: '',
orgPath: '',
paymentMethod: '',
paymentMethodKey: '',
procInsId: '',
reason: '',
reasonKey: '',
reasonValue: '',
sid: '',
staffDept: '',
staffDeptSid: '',
staffName: '',
staffUserSid: '',
taskId: '',
trailersList: [],
userSid: '',
vinList: [],
zjlLetter: [],
zjlLetterDownloadUrl: ''
},
rules: {},
operation: '', //
dialogList: {
comment: ''
},
startTask: true,
current: {
taskDefKey: '',
taskName: '' //
},
nextNode: {}, //
nodeDialogVisible: false,
currentLink: true,
//
linkByParameter: {
businessSid: '',
comment: '',
instanceId: '',
taskId: '',
orgSidPath: '',
taskDefKey: '',
userSid: ''
}
}
},
created() {
console.log('url:' + window.location.href)
var one = window.location.href.indexOf('&data') + 6
const data = window.location.href.substr(one) // urlunescape()web,使
const obj = JSON.parse(decodeURIComponent(data))
console.log('iframe页面获取的obj:', obj)
//
this.linkByParameter.businessSid = obj.businessSid
this.linkByParameter.instanceId = obj.instanceId
this.linkByParameter.taskId = obj.taskId
this.linkByParameter.taskDefKey = obj.taskDefKey
this.linkByParameter.orgSidPath = window.sessionStorage.getItem('orgSidPath')
this.linkByParameter.userSid = window.sessionStorage.getItem('userSid')
this.current.taskDefKey = obj.taskDefKey
this.current.taskName = obj.taskName
//
this.showInfo(obj.businessSid)
},
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 500 + 'px'
}
}, '*')
},
methods: {
showInfo(sid) {
this.viewTitle = '欠款提车申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
fetchSid({ contractNo: '', orgPath: '', sid: sid, userSid: '' }).then((res) => {
if (res.success) {
this.formobj = res.data
this.formobj.instanceId = res.data.procInstSid
if (this.formobj.zjlLetter.length > 0) {
this.formobj.zjlLetter.forEach((e) => {
this.image_list4.push(e)
})
}
if (this.formobj.gdLetter.length > 0) {
this.formobj.gdLetter.forEach((e) => {
this.image_list3.push(e)
})
}
if (this.formobj.guaranteeLetter.length > 0) {
this.formobj.guaranteeLetter.forEach((e) => {
this.image_list2.push(e)
})
}
if (this.formobj.carContract.length > 0) {
this.formobj.carContract.forEach((e) => {
this.image_list1.push(e)
})
}
if (this.formobj.fileList.length > 0) {
this.formobj.fileList.forEach((e) => {
this.image_list5.push(e)
})
}
}
})
},
//
openAgree(val) {
this.operation = val
this.currentLink = true
this.dialogList.comment = '同意'
getNextNodesForSubmit({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openReject(val) {
this.operation = val
this.currentLink = true
this.dialogList.comment = ''
getPreviousNodesForReject({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openStop(val) {
this.operation = val
this.currentLink = false
this.dialogList.comment = ''
this.nodeDialogVisible = true
},
reject() {
if (this.operation === '同意') {
this.handleAgree()
} else if (this.operation === '驳回') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleReject()
}
} else if (this.operation === '终止') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleStop()
}
}
},
/** 同意任务 */
handleAgree() {
this.linkByParameter.comment = this.dialogList.comment
complete(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 驳回任务 */
handleReject() {
this.linkByParameter.comment = this.dialogList.comment
reject(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 终止任务 */
handleStop() {
this.linkByParameter.comment = this.dialogList.comment
breakProcess(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
}
}
}
</script>
<style scoped>
.titwu {
font-size: 28px;
text-align: center;
padding: 30px 0 20px 0;
}
.rowClass{
border-top: 1px solid #E0E3EB;
}
.span-sty {
width: 130px !important;
}
.addinputInfo {
margin-left: 120px !important;
}
</style>

774
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheEdit.vue

@ -1,303 +1,639 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<!--标题按钮部分开始--> <div v-show="viewState == 1">
<div v-show="viewState==1">
<div class="tab-header webtop"> <div class="tab-header webtop">
<!--标题--> <!--标题-->
<div>{{ viewTitle }}</div> <div>{{ viewTitle }}</div>
<!--start 新增修改按钮--> <!--start 添加修改按钮-->
<div> <div>
<!--保存和提交是一样的作用直接提交给后台后台接收前按钮不可用--> <el-button type="primary" size="small" :disabled="submitdisabled" @click="handleSave()">保存
<el-button size="small" type="primary" @click="submitData()">提交</el-button> </el-button>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="handleSubmit()">提交
</el-button>
</div> </div>
<!--end 添加修改按钮-->
</div> </div>
<!--按钮部分结束--> <div class="">
<div class="listconadd"> <div class="titwu">欠款提车申请单</div>
<div class="title">欠款提车申请</div> <el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-form ref="ruleForm" :model="ruleForm" label-position="top" class="formadd" label-width="100px"> <el-row style="border-top: 1px solid #E0E3EB">
<!--第一行--> <el-col :span="8">
<el-row class="lineone"> <div class="span-sty">发起人</div>
<el-col :span="4" class="el-form-item-right" style="border: 0px"> <el-form-item><span class="addinputInfo">{{ formobj.applyName }}</span></el-form-item>
<el-form-item label="合同编号:"> </el-form-item>
</el-col> </el-col>
<el-col :span="8" style="border: 0px"> <el-col :span="8">
<el-form-item> <div class="span-sty">发起部门</div>
{{ruleForm.contractNo}} <el-form-item><span class="addinputInfo">{{ formobj.applyDept }}</span></el-form-item>
</el-form-item>
</el-col> </el-col>
<el-col :span="4" class="el-form-item-right" style="border: 0px"> <el-col :span="8">
<el-form-item label="申请日期:"> </el-form-item> <div class="span-sty">发起日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDate }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="8" style="border: 0px"> </el-row>
<el-form-item> <el-row>
{{ruleForm.applyDate}} <el-col :span="8">
</el-form-item> <div class="span-sty">销售专员</div>
<el-form-item><span class="addinputInfo">{{ formobj.staffName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">销售部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.staffDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>销售类型</div>
<el-form-item><span class="addinputInfo">{{ formobj.paymentMethod }}</span></el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row class="linetwo"> <el-row>
<el-col :span="4" class="el-form-item-right" style="border: 0px"> <el-col :span="8">
<el-form-item label="客户名称:"> </el-form-item> <div class="span-sty">合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractId }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="20" style="border: 0px"> <el-col :span="8">
<el-form-item> <div class="span-sty">开票单位</div>
{{ruleForm.customerName}} <el-form-item><span class="addinputInfo">{{ formobj.openTickName }}</span></el-form-item>
</el-form-item> </el-col>
<el-col :span="8">
<div class="span-sty">客户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row class="linetwo"> <el-row>
<el-col :span="4" class="el-form-item-right" style="border: 0px"> <el-col :span="8">
<el-form-item label="车型:"> </el-form-item> <div class="span-sty">车型</div>
<el-form-item><span class="addinputInfo">{{ formobj.modelName }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="20" style="border: 0px"> <el-col :span="8">
<el-form-item> <div class="span-sty"><span class="icon">*</span>是否金融部复核</div>
{{ruleForm.modelName}} <el-form-item prop="isFinance">
<el-radio-group class="addinputw" style="font-size: 1px" @input="changeRadio" v-model="formobj.isFinance">
<el-radio label="1"></el-radio>
<el-radio label="0"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty" v-if="formobj.isFinance == '1'"><span class="icon">*</span>金融部经理</div>
<el-form-item v-if="formobj.isFinance == '1'" prop="financeName">
<el-select v-model="formobj.financeName" placeholder="请选择" @change="changeUser" filterable clearable class="addinputInfo">
<el-option v-for="item in user_list" :key="item.userSid" :label="item.name" :value="item.name"></el-option>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<!--开票信息--> <div class="title titleOne">
<div class="tabletitle"> <div>车辆信息</div>
<div style="margin-left: 10px">车辆信息</div> <div><el-button type="primary" size="mini" icon="el-icon-plus" class="btntopblueline" @click="addVehicle">选择车辆</el-button></div>
<el-button type="text" style="margin-left: 40px; margin-top: -5px; font-size: 16px" @click="dataAdd">添加</el-button>
</div> </div>
<template class="tablelist"> <el-table :key="tableKey" :data="formobj.vinList" :index="index" border style="width: 100%">
<el-table :data="ruleForm.vehicleList" :index="index" border style="width: 100%"> <el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column type="index" label="序号" width="100" :index="index + 1" align="center"/> <el-table-column label="操作" align="center" width="80">
<el-table-column label="操作" align="center"> <template slot-scope="scope">
<template slot-scope="props"> <el-button type="primary" size="mini" @click="handleDelete(scope.row, scope.$index)">删除</el-button>
<el-button type="danger" size="small" @click=" deleteRow(props.$index,ruleForm.vehicleList[props.$index])">删除</el-button> </template>
</template> </el-table-column>
</el-table-column> <el-table-column label="车架号" align="center">
<el-table-column label="车架号" align="center"> <template slot-scope="scope">
<template slot-scope="props"> <span>{{ scope.row.vin }}</span>
<span>{{ props.row.vinNo }}</span> </template>
</template> </el-table-column>
</el-table-column> <el-table-column label="成交价" align="center">
<el-table-column label="成交价" align="center"> <template slot-scope="scope">
<template slot-scope="props"> <span>{{ scope.row.price }}</span>
<span>{{ props.row.dealMoney }}</span> </template>
</template> </el-table-column>
</el-table-column> <el-table-column label="平台已收款" align="center">
</el-table> <template slot-scope="scope">
</template> <span>{{ scope.row.subscribedAll }}</span>
</template>
</el-table-column>
</el-table>
<div class="title">挂车信息</div>
<el-table :key="billingKey" :data="formobj.trailersList" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="挂车车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.gcVinNo }}</span>
</template>
</el-table-column>
<el-table-column label="主车车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="scope">
<span>{{ scope.row.price }}</span>
</template>
</el-table-column>
<el-table-column label="平台已收款" align="center">
<template slot-scope="scope">
<span>{{ scope.row.subscribedAll }}</span>
</template>
</el-table-column>
</el-table>
<el-row> <el-row>
<el-col :span="4" class="el-form-item-right"> <el-col :span="8">
<el-form-item> 欠款提车原因 </el-form-item> <div class="span-sty"><span class="icon">*</span>欠款提车原因</div>
<el-form-item prop="reasonValue">
<el-select v-model="formobj.reasonValue" placeholder="请选择" @change="changeArrearsOpenYY" filterable clearable class="addinputInfo">
<el-option v-for="item in arrearsOpenYY_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictValue"></el-option>
</el-select>
</el-form-item>
</el-col> </el-col>
<el-col :span="20"> <el-col :span="16">
<el-form-item> <el-form-item>
<el-input v-model="ruleForm.reason"></el-input> <el-input v-model="formobj.reason" clearable placeholder="" class="addinputw" style="margin-left: 0px !important;"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="4" class="el-form-item-right"> <el-col :span="8">
<el-form-item> 合同总金额 </el-form-item> <div class="span-sty">合同总金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractMoney }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="8">
<el-form-item> <div class="span-sty">平台收款总金额</div>
<el-input v-model="ruleForm.contractMoney"></el-input> <el-form-item><span class="addinputInfo">{{ formobj.contractCollectionMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>承诺回款日期</div>
<el-form-item prop="commitmentMoneyDate">
<el-date-picker v-model="formobj.commitmentMoneyDate" :picker-options="pickerOptions" type="date" class="addinputInfo" clearable value-format="yyyy-MM-dd" placeholder="选择日期"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4" class="el-form-item-right"> </el-row>
<el-form-item> 合同收款金额 </el-form-item> <div style="padding-bottom: 1px;border: 1px solid #E0E3EB" class="titleOne">
<div style="color: red;font-weight: bold">:若车辆列表信息或承诺回款日期需要修改请在修改后点击生成附件按钮重新生成相关附件</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="handleCreate()">生成附件</el-button>
</div>
<div class="title titleOne">
<div>
<span class="icon">*</span>车辆买卖合同(欠款)
</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="handleDownLoad(formobj.carContractDownloadUrl)">下载附件</el-button>
</div>
<el-row>
<el-col :span="24">
<upload ref="uploadImg" v-model="image_list1" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-col> </el-col>
<el-col :span="4"> </el-row>
<el-form-item> <div class="title titleOne">
<el-input v-model="ruleForm.contractCollectionMoney"></el-input> <div>
</el-form-item> <span class="icon">*</span>欠款提车担保承诺书
</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="handleDownLoad(formobj.guaranteeLetterDownloadUrl)">下载附件</el-button>
</div>
<el-row>
<el-col :span="24">
<upload ref="uploadImg" v-model="image_list2" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-col> </el-col>
<el-col :span="4" class="el-form-item-right"> </el-row>
<el-form-item> 累计欠款金额 </el-form-item> <div class="title titleOne">
<div>股东会对外担保决议</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="handleDownLoad(formobj.gdLetterDownloadUrl)">下载附件</el-button>
</div>
<el-row>
<el-col :span="24">
<upload ref="uploadImg" v-model="image_list3" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-col> </el-col>
<el-col :span="4"> </el-row>
<div class="title titleOne">
<div>
<span class="icon">*</span>总经理担保书
</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="handleDownLoad(formobj.zjlLetterDownloadUrl)">下载附件</el-button>
</div>
<el-row>
<el-col :span="24">
<el-form-item> <el-form-item>
<el-input v-model="ruleForm.cumulativeArrearsMoney"></el-input> <upload ref="uploadImg" v-model="image_list4" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<div class="title">
<div>其他附件</div>
</div>
<el-row> <el-row>
<el-col :span="4" class="el-form-item-right"> <el-col :span="24">
<el-form-item> 承诺回款日期 </el-form-item>
</el-col>
<el-col :span="20">
<el-form-item> <el-form-item>
<el-date-picker value-format="yyyy-MM-dd" v-model="ruleForm.commitmentMoneyDate" clearable style="width: 18%" type="date" placeholder="开始日期"/> <upload ref="uploadImg" v-model="image_list5" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
</div> </div>
</div> </div>
<jiansuocheliang v-show="viewState==2" ref="divAdd" @doAdd="DataAdd" @doback="resetState"/> <selectVehicle v-show="viewState == 2" ref="divSelect" @backData="backData" @doback="resetState"/>
</div> </div>
</template> </template>
<script> <script>
import { fetchSid, submit } from "@/api/tesheshenpi/qiankuantiche"; import { fetchSid, submit, saveArrearsApplyPdf, saveOrUpdate } from '@/api/tesheshenpi/qiankuantiche'
import jiansuocheliang from "./jiansuocheliang.vue"; import { typeValues, getOrgSidByPath, selectFinance } from '@/api/dictcommons/dictcommons'
import upload from '@/components/uploadFile/upload'
import selectVehicle from './relation/selectVehicle'
export default { export default {
name: "qiankuanticheEdit", name: 'qiankuanticheEdit',
components: { components: {
fetchSid, upload,
submit, selectVehicle
jiansuocheliang
}, },
data() { data() {
return { return {
pickerOptions: {
disabledDate(time) {
var oneDay = 3600 * 1000 * 24 * 11
return Date.now() < time.getTime() || time.getTime() < Date.now() - oneDay
}
},
viewTitle: '',
viewState: 1,
submitdisabled: false,
accept: '.jpg,.jpeg,.png,.JPG,.JPEG',
tableKey: 0,
billingKey: 1,
index: 0, index: 0,
status: 0, arrearsOpenYY_list: [],
viewTitle: "", // 2 3 user_list: [],
dialogStatus: "", image_list1: [],
viewState:1, image_list2: [],
list: [], image_list3: [],
// image_list4: [],
ruleForm: { image_list5: [],
sid: "", formobj: {
contractNo: "", applyDept: '',
applyDate: "", applyDeptSid: '',
customerName: "", applyName: '',
modelName: "", applyUserSid: '',
modelSid: "", carContract: [],
reason: "", carContractDownloadUrl: '',
contractMoney: "", commitmentMoneyDate: '',
contractCollectionMoney: "", configSid: '',
cumulativeArrearsMoney: "", contractCollectionMoney: '',
commitmentMoneyDate: "", contractId: '',
userSid: window.sessionStorage.getItem("userSid"), contractMoney: '',
applyName: window.sessionStorage.getItem("name"), createDate: '',
vehicleList: [], customerName: '',
customerSid: '',
fileList: [],
financeName: '',
financeUserSid: '',
gdLetter: [],
gdLetterDownloadUrl: '',
guaranteeLetter: [],
guaranteeLetterDownloadUrl: '',
isFinance: '',
modelName: '',
modelSid: '',
openTickName: '',
orgPath: '',
paymentMethod: '',
paymentMethodKey: '',
procInsId: '',
reason: '',
reasonKey: '',
reasonValue: '',
sid: '',
staffDept: '',
staffDeptSid: '',
staffName: '',
staffUserSid: '',
taskId: '',
trailersList: [],
userSid: '',
vinList: [],
zjlLetter: [],
zjlLetterDownloadUrl: ''
}, },
}; rules: {
isFinance: [{ required: true, message: '是否金融部复核请选择是或否', trigger: 'change' }],
reasonValue: [{ required: true, message: '欠款提车原因不能为空', trigger: 'change' }],
commitmentMoneyDate: [{ required: true, message: '承诺回款日期不能为空', trigger: 'blur' }],
financeName: [{ required: true, message: '金融部人员不能为空', trigger: 'change' }]
}
}
}, },
created(){ created() {
console.log('url:' + window.location.href) console.log('url:' + window.location.href)
var a = window.location.href.indexOf("?") + 1 // ? var one = window.location.href.indexOf('&data') + 6
var b = window.location.href.indexOf("#data") // #data const data = window.location.href.substr(one) // urlunescape()web,使
const info = window.location.href.slice(a, b) const obj = JSON.parse(decodeURIComponent(data))
var sid = info.substr(info.indexOf("=") + 1) this.showInfo(obj.businessSid)
this.showData(sid) },
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 500 + 'px'
}
}, '*')
}, },
methods: { methods: {
// init() {
showData(sid) { typeValues({ type: 'arrearsReason' }).then((res) => {
this.ruleForm.sid = sid; if (res.success) {
fetchSid(sid).then((res) => { this.arrearsOpenYY_list = res.data
if (res.code == "200") { }
this.ruleForm.reason = res.data.reason; })
this.ruleForm.contractNo = res.data.contractNo; selectFinance({ orgPath: this.formobj.orgPath, userSid: this.formobj.userSid }).then((res) => {
this.ruleForm.applyDate = res.data.applyDate; if (res.success) {
this.ruleForm.customerName = res.data.customerName; this.user_list = res.data
this.ruleForm.modelName = res.data.modelName; }
this.ruleForm.contractMoney = res.data.contractMoney; })
this.ruleForm.contractCollectionMoney = res.data.contractCollectionMoney; },
this.ruleForm.cumulativeArrearsMoney = res.data.cumulativeArrearsMoney; showInfo(sid) {
this.ruleForm.commitmentMoneyDate = res.data.commitmentMoneyDate; this.viewTitle = '【编辑】欠款提车申请'
this.ruleForm.modelSid = res.data.modelSid; this.$nextTick(() => {
res.data.vehicleList.forEach((element) => { this.$refs['form_obj'].clearValidate()
this.ruleForm.vehicleList.push({ })
vinNo: element.vinNo, fetchSid({ contractNo: '', orgPath: '', sid: sid, userSid: '' }).then((res) => {
dealMoney: element.dealMoney, if (res.success) {
vehicleSid: element.vehicleSid, this.formobj = res.data
arrearsVehicleSid: element.arrearsVehicleSid, this.formobj.instanceId = res.data.procInsId
}); this.init()
}); if (this.formobj.zjlLetter.length > 0) {
this.list=this.ruleForm.vehicleList this.formobj.zjlLetter.forEach((e) => {
this.image_list4.push({
name: '',
url: e
})
})
}
if (this.formobj.gdLetter.length > 0) {
this.formobj.gdLetter.forEach((e) => {
this.image_list3.push({
name: '',
url: e
})
})
}
if (this.formobj.guaranteeLetter.length > 0) {
this.formobj.guaranteeLetter.forEach((e) => {
this.image_list2.push({
name: '',
url: e
})
})
}
if (this.formobj.carContract.length > 0) {
this.formobj.carContract.forEach((e) => {
this.image_list1.push({
name: '',
url: e
})
})
}
if (this.formobj.fileList.length > 0) {
this.formobj.fileList.forEach((e) => {
this.image_list5.push({
name: '',
url: e
})
})
}
} }
}); })
this.viewTitle = "欠款提车申请";
}, },
deleteRow(index, row) { changeRadio(value) {
this.ruleForm.vehicleList.splice(this.ruleForm.vehicleList.indexOf(row),1); if (value === '0') {
if (this.list.length > 0) { this.formobj.financeName = ''
this.list.splice(this.list.indexOf(row), 1); this.formobj.financeUserSid = ''
} }
}, },
dataAdd() { changeUser(val) {
this.viewState=2 const choose = this.user_list.filter((item) => item.name === val)
this.ruleForm.vehicleList = []; this.formobj.financeUserSid = choose[0].userSid
this.ruleForm.vehicleList = this.list;
this.$refs['divAdd'].showAdd(this.list,this.ruleForm.contractNo)
}, },
submitData(){ changeArrearsOpenYY(val) {
this.$refs["ruleForm"].validate((valid) => { const choose = this.arrearsOpenYY_list.filter((item) => item.dictValue === val)
this.formobj.reasonKey = choose[0].dictKey
},
addVehicle() {
this.viewState = 2
this.$refs['divSelect'].showData(this.formobj.vinList, this.formobj.contractId)
},
handleDelete(row, index) {
this.formobj.vinList.splice(index, 1)
if (this.formobj.trailersList.length > 0) {
this.formobj.trailersList.forEach((e, item) => {
if (e.vinNo === row.vin) {
this.formobj.trailersList.splice(item, 1)
}
})
}
},
backData(value) {
this.viewState = 1
value.forEach((e) => {
this.formobj.vinList.push({
vin: e.vinNo,
carSid: e.carSid,
price: e.price,
subscribedAll: e.subscribedAll
})
if (e.gcList.length > 0) {
e.gcList.forEach((k) => {
this.formobj.trailersList.push({
gcVinNo: k.gcVinNo,
vinNo: k.vinNo,
price: k.price,
subscribedAll: k.subscribedAll
})
})
}
})
},
handleCreate() {
if (this.formobj.vinList.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请先选择车辆' })
return
}
if (this.formobj.commitmentMoneyDate === '') {
this.$message({ showClose: true, type: 'error', message: '请先选择承诺回款日期' })
return
}
const loading = this.$loading({
lock: true,
text: '附件信息正在生成中,请稍等',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
saveArrearsApplyPdf(this.formobj).then((res) => {
if (res.success) {
loading.close()
this.formobj.sid = res.data.sid
this.formobj.carContractDownloadUrl = res.data.carContractDownloadUrl
this.formobj.gdLetterDownloadUrl = res.data.gdLetterDownloadUrl
this.formobj.guaranteeLetterDownloadUrl = res.data.guaranteeLetterDownloadUrl
this.formobj.zjlLetterDownloadUrl = res.data.zjlLetterDownloadUrl
this.$message({ showClose: true, type: 'success', message: res.msg })
}
})
},
handleDownLoad(val) {
if (val !== null && val !== '' && val !== undefined) {
window.open(val, '_blank')
} else {
this.$message({ showClose: true, type: 'error', message: '请生成附件后再下载' })
return
}
},
handleSave() {
this.$refs['form_obj'].validate((valid) => {
if (valid) { if (valid) {
submit(this.ruleForm).then((response) => { if (this.formobj.vinList.length === 0) {
// this.dialogStatus = "update"; this.$message({ showClose: true, type: 'error', message: '请选择车辆' })
if (response.code === "200") { return
this.$notify({ }
title: "提示", this.getUrl()
message: "提交成功", this.submitdisabled = true
type: "success", const loading = this.$loading({
duration: 2000, lock: true,
}); text: '附件信息正在生成中,请稍等',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
saveOrUpdate(this.formobj).then((res) => {
if (res.success) {
loading.close()
this.$message({ showClose: true, type: 'success', message: '保存成功' })
// ()
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
} else { } else {
this.$notify({ loading.close()
title: "提示", this.submitdisabled = false
message: "提交失败",
type: "error",
duration: 2000,
});
} }
}); }).catch(() => {
loading.close()
this.submitdisabled = false
})
} }
}); })
},
resetState(){
this.viewState=1
}, },
DataAdd(value){ handleSubmit() {
this.viewState=1 this.$refs['form_obj'].validate((valid) => {
value.forEach((e)=>{ if (valid) {
this.ruleForm.vehicleList.push({ if (this.formobj.vinList.length === 0) {
vinNo: e.vinNo, this.$message({ showClose: true, type: 'error', message: '请选择车辆' })
dealMoney: e.dealMoney, return
vehicleSid: e.vehicleSid, }
arrearsVehicleSid: e.arrearsVehicleSid, this.getUrl()
}) this.submitdisabled = true
const loading = this.$loading({
lock: true,
text: '附件信息正在生成中,请稍等',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
submit(this.formobj).then((res) => {
if (res.success) {
loading.close()
this.$message({ showClose: true, type: 'success', message: '提交成功' })
// ()
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
} else {
loading.close()
this.submitdisabled = false
}
}).catch(() => {
loading.close()
this.submitdisabled = false
})
}
}) })
}, },
}, getUrl() {
}; if (this.image_list1.length > 0) {
const aa = []
for (var i = 0; i < this.image_list1.length; i++) {
aa.push(this.image_list1[i].url)
}
this.formobj.carContract = aa
} else {
this.formobj.carContract = []
}
if (this.image_list2.length > 0) {
const bb = []
for (var k = 0; k < this.image_list2.length; k++) {
bb.push(this.image_list2[k].url)
}
this.formobj.guaranteeLetter = bb
} else {
this.formobj.guaranteeLetter = []
}
if (this.image_list3.length > 0) {
const cc = []
for (var m = 0; m < this.image_list3.length; m++) {
cc.push(this.image_list3[m].url)
}
this.formobj.gdLetter = cc
} else {
this.formobj.gdLetter = []
}
if (this.image_list4.length > 0) {
const cc = []
for (var n = 0; n < this.image_list4.length; n++) {
cc.push(this.image_list4[n].url)
}
this.formobj.zjlLetter = cc
} else {
this.formobj.zjlLetter = []
}
if (this.image_list5.length > 0) {
const cc = []
for (var p = 0; p < this.image_list5.length; p++) {
cc.push(this.image_list5[p].url)
}
this.formobj.fileList = cc
} else {
this.formobj.fileList = []
}
},
resetState() {
this.viewState = 1
}
}
}
</script> </script>
<style scoped> <style scoped>
.listconadd .title { .titwu {
text-align: center;
font-size: 28px; font-size: 28px;
line-height: 90px; text-align: center;
} padding: 30px 0 20px 0;
.lineone {
border-left: 0px;
border-right: 0px;
border-bottom: 2px solid #e0e3eb;
}
.lineone .el-form-item {
margin-bottom: -20px !important;
}
.lineone >>> .el-input__inner {
border: 0;
} }
.linetwo { .titleOne {
border-left: 0px; padding: 7px !important;
border-right: 0px; display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
} }
.linetwo .el-form-item { .span-sty {
margin-bottom: -20px !important; width: 130px !important;
} }
.linetwo >>> .el-input__inner { .addinputInfo {
border: 0; margin-left: 120px !important;
} }
.el-form-item-right { .addinputw {
text-align: right; margin-left: 120px !important;
} }
.tabletitle { /deep/ .el-form-item__error {
display: flex; margin-left: 120px;
justify-content: flex-start;
align-items: center;
border: 1px solid #dfe4ed;
height: 40px;
} }
</style> </style>

402
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheInfo.vue

@ -1,402 +0,0 @@
<template>
<div class="app-container">
<!--标题按钮部分开始-->
<div>
<div class="tab-header webtop">
<!--标题-->
<div>欠款提车详情</div>
<!--start 新增修改按钮-->
<div>
<!-- <el-button type="primary" @click="openAgree"> </el-button>
<el-button type="danger" @click="openReject"> </el-button>
<el-button type="danger" @click="openStop"> </el-button> -->
<!-- <el-button size="small" type="info" @click="handleReturn()">关闭</el-button> -->
</div>
<!--end 添加修改按钮-->
</div>
<!--按钮部分结束-->
<div class="listconadd">
<div class="title">欠款提车详情</div>
<el-form ref="ruleForm" :model="ruleForm" label-position="top" class="formadd" label-width="100px">
<!--第一行-->
<el-row class="lineone">
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="合同编号:"> </el-form-item>
</el-col>
<el-col :span="8" style="border: 0px">
<el-form-item>
<el-input v-model="ruleForm.contractNo" readonly />
</el-form-item>
</el-col>
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="申请日期:"> </el-form-item>
</el-col>
<el-col :span="8" style="border: 0px">
<el-form-item>
<el-input v-model="ruleForm.applyDate" readonly />
</el-form-item>
</el-col>
</el-row>
<el-row class="linetwo">
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="客户名称:"> </el-form-item>
</el-col>
<el-col :span="20" style="border: 0px">
<el-form-item>
<el-input v-model="ruleForm.customerName" readonly />
</el-form-item>
</el-col>
</el-row>
<el-row class="linetwo">
<el-col :span="4" class="el-form-item-right" style="border-right: 0px">
<el-form-item label="车型:"> </el-form-item>
</el-col>
<el-col :span="20" style="border-right: 0px">
<el-form-item>
<el-input v-model="ruleForm.modelName" readonly />
</el-form-item>
</el-col>
</el-row>
<!-- <el-row>
<el-col :span="4" class="el-form-item-right">
<el-form-item><span slot="label">审批意见</span></el-form-item>
</el-col>
<el-col :span="20" class="trightb">
<el-form-item>
<el-input v-model="comment" class="addinputw" placeholder=""
clearable/>
</el-form-item>
</el-col>
</el-row> -->
<!--开票信息-->
<div class="tabletitle">
<div style="margin-left: 10px">车辆信息</div>
</div>
<template class="tablelist">
<el-table :data="ruleForm.vehicleList" :index="index" border style="width: 100%">
<el-table-column type="index" label="序号" width="100" :index="index + 1" align="center"/>
<el-table-column label="车架号" align="center">
<template slot-scope="props">
<span>{{ props.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="props">
<span>{{ props.row.dealMoney }}</span>
</template>
</el-table-column>
</el-table>
</template>
<el-row>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 欠款提车原因 </el-form-item>
</el-col>
<el-col :span="20">
<el-form-item>
{{ ruleForm.reason }}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 合同总金额 </el-form-item>
</el-col>
<el-col :span="4">
<el-form-item>
{{ ruleForm.contractMoney }}
</el-form-item>
</el-col>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 合同收款金额 </el-form-item>
</el-col>
<el-col :span="4">
<el-form-item>
{{ ruleForm.contractCollectionMoney }}
</el-form-item>
</el-col>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 累计欠款金额 </el-form-item>
</el-col>
<el-col :span="4">
<el-form-item>
{{ ruleForm.cumulativeArrearsMoney }}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 承诺回款日期 </el-form-item>
</el-col>
<el-col :span="20">
<el-form-item>
{{ ruleForm.commitmentMoneyDate }}
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
</div>
</template>
<script>
import { fetchSid } from "@/api/tesheshenpi/qiankuantiche";
import { businessAgree, rejectTask, breakTask} from '@/api/flow/todo'
export default {
name: "qiankuanticheInfo",
components: {
fetchSid,
businessAgree,
rejectTask,
breakTask,
},
data() {
return {
index: 0,
comment:'',
//
ruleForm: {
sid: "",
contractNo: "",
applyDate: "",
customerName: "",
modelName: "",
modelSid: "",
reason: "",
contractMoney: "",
contractCollectionMoney: "",
cumulativeArrearsMoney: "",
commitmentMoneyDate: "",
userSid: window.sessionStorage.getItem("userSid"),
applyName: window.sessionStorage.getItem("name"),
vehicleList: [],
},
agreeList: { //
businessSid: '',
comment: '',
instanceId: '',
taskId: '',
userSid: window.sessionStorage.getItem('userSid')
},
regectList: { //
businessSid: '',
comment: '',
instanceId: '',
taskId: '',
userSid: window.sessionStorage.getItem('userSid')
},
stopList: { //
businessSid: '',
comment: '',
instanceId: '',
taskId: '',
userSid: window.sessionStorage.getItem('userSid')
},
};
},
created(){
console.log('url:' + window.location.href)
var a = window.location.href.indexOf("?") + 1 // ?
var b = window.location.href.indexOf("#data") // #data
const info = window.location.href.slice(a, b)
var sid = info.substr(info.indexOf("=") + 1)
this.showInfo(sid);
// ===
var one = window.location.href.lastIndexOf("#") + 1
var two = window.location.href.lastIndexOf("}") + 1
const data = decodeURI(window.location.href.slice(one, two)) // urlunescape()web,使
var tar = data.substr(data.indexOf("=") + 1)
const obj = JSON.parse(tar)
console.log('iframe页面获取的obj:', obj)
//
this.agreeList.businessSid = sid
this.agreeList.instanceId = obj.instanceId
this.agreeList.taskId = obj.taskId
//
this.regectList.businessSid = sid
this.regectList.instanceId = obj.instanceId
this.regectList.taskId = obj.taskId
//
this.stopList.businessSid = sid
this.stopList.instanceId = obj.instanceId
this.stopList.taskId = obj.taskId
},
methods: {
//
showInfo(val) {
this.ruleForm.sid = val;
fetchSid(val).then((res) => {
if (res.code == "200") {
this.ruleForm.reason = res.data.reason;
this.ruleForm.contractNo = res.data.contractNo;
this.ruleForm.applyDate = res.data.applyDate;
this.ruleForm.customerName = res.data.customerName;
this.ruleForm.modelName = res.data.modelName;
this.ruleForm.contractMoney = res.data.contractMoney;
this.ruleForm.contractCollectionMoney = res.data.contractCollectionMoney;
this.ruleForm.cumulativeArrearsMoney = res.data.cumulativeArrearsMoney;
this.ruleForm.commitmentMoneyDate = res.data.commitmentMoneyDate;
this.ruleForm.modelSid = res.data.modelSid;
res.data.vehicleList.forEach((element) => {
this.ruleForm.vehicleList.push({
vinNo: element.vinNo,
dealMoney: element.dealMoney,
vehicleSid: element.vehicleSid,
arrearsVehicleSid: element.arrearsVehicleSid,
});
});
}
});
},
//
openAgree() {
this.$confirm('是否确认执行同意操作', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.handleAgree()
}).catch(() => {
this.$message({
type: 'info',
message: '已取消同意'
});
});
},
/** 同意任务 */
handleAgree() {
this.agreeList.comment = this.comment
businessAgree(this.agreeList).then((response) => {
if (response.code === '200') {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000,
})
} else {
this.$notify({
title: '提示',
message: '执行失败',
type: 'error',
duration: 2000,
})
}
})
},
//
openReject() {
this.$confirm('是否确认执行驳回操作', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.handleReject()
}).catch(() => {
this.$message({
type: 'info',
message: '已取消驳回'
});
});
},
/** 驳回任务 */
handleReject() {
this.regectList.comment = this.comment
rejectTask(this.regectList).then((response) => {
if (response.code === '200') {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000,
})
} else {
this.$notify({
title: '提示',
message: '执行失败',
type: 'error',
duration: 2000,
})
}
})
},
//
openStop() {
this.$confirm('是否确认执行终止操作', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.handleStop()
}).catch(() => {
this.$message({
type: 'info',
message: '已取消终止'
});
});
},
/** 终止任务 */
handleStop() {
this.stopList.comment = this.comment
breakTask(this.stopList).then((response) => {
if (response.code === '200') {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000,
})
this.refreshIt()
} else {
this.$notify({
title: '提示',
message: '执行失败',
type: 'error',
duration: 2000,
})
}
})
},
},
};
</script>
<style scoped>
.listconadd .title {
text-align: center;
font-size: 28px;
line-height: 90px;
}
.lineone {
border-left: 0px;
border-right: 0px;
border-bottom: 2px solid #e0e3eb;
}
.lineone .el-form-item {
margin-bottom: -20px !important;
}
.lineone >>> .el-input__inner {
border: 0;
}
.linetwo {
border-left: 0px;
border-right: 0px;
}
.linetwo .el-form-item {
margin-bottom: -20px !important;
}
.linetwo >>> .el-input__inner {
border: 0;
}
.el-form-item-right {
text-align: right;
}
.tabletitle {
display: flex;
justify-content: flex-start;
align-items: center;
border: 1px solid #dfe4ed;
height: 40px;
}
</style>

374
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuanticheYiBanInfo.vue

@ -0,0 +1,374 @@
<template>
<div class="app-container">
<div>
<div class="tab-header webtop">
<!--标题-->
<div>{{ viewTitle }}</div>
<!--start 添加修改按钮-->
<div>
<el-button type="danger" size="small" @click="openRevoke()">撤回</el-button>
</div>
</div>
<div class="">
<div class="titwu">欠款提车申请单</div>
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row style="border-top: 1px solid #E0E3EB">
<el-col :span="8">
<div class="span-sty">发起人</div>
<el-form-item><span class="addinputInfo">{{ formobj.applyName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">发起部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.applyDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">发起日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">销售专员</div>
<el-form-item><span class="addinputInfo">{{ formobj.staffName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">销售部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.staffDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>销售类型</div>
<el-form-item><span class="addinputInfo">{{ formobj.paymentMethod }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractId }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">开票单位</div>
<el-form-item><span class="addinputInfo">{{ formobj.openTickName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">客户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">车型</div>
<el-form-item><span class="addinputInfo">{{ formobj.modelName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">是否金融部复核</div>
<el-form-item>
<span class="addinputInfo">{{ formobj.isFinance == '1' ? '是' : '否' }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty" v-if="formobj.isFinance == '1'">金融部经理</div>
<el-form-item v-if="formobj.isFinance == '1'">
<span class="addinputInfo">{{ formobj.financeName }}</span>
</el-form-item>
</el-col>
</el-row>
<div class="title titleOne">
<div>车辆信息</div>
</div>
<el-table :key="tableKey" :data="formobj.vinList" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.vin }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="scope">
<span>{{ scope.row.price }}</span>
</template>
</el-table-column>
<el-table-column label="平台已收款" align="center">
<template slot-scope="scope">
<span>{{ scope.row.subscribedAll }}</span>
</template>
</el-table-column>
</el-table>
<div class="title">挂车信息</div>
<el-table :key="billingKey" :data="formobj.trailersList" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="挂车车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.gcVinNo }}</span>
</template>
</el-table-column>
<el-table-column label="主车车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="scope">
<span>{{ scope.row.price }}</span>
</template>
</el-table-column>
<el-table-column label="平台已收款" align="center">
<template slot-scope="scope">
<span>{{ scope.row.subscribedAll }}</span>
</template>
</el-table-column>
</el-table>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>欠款提车原因</div>
<el-form-item><span class="addinputInfo">{{ formobj.reasonValue }}</span></el-form-item>
</el-col>
<el-col :span="16">
<el-form-item><span class="addinputInfo" style="margin-left: 0px !important;">{{ formobj.reason }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">合同总金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">平台收款总金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractCollectionMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>承诺回款日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.commitmentMoneyDate }}</span></el-form-item>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>车辆买卖合同(欠款)</div>
<el-row>
<el-col :span="24">
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list1" :key="index" :src="item" :preview-src-list="image_list1"></el-image>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>欠款提车担保承诺书</div>
<el-row>
<el-col :span="24">
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list2" :key="index" :src="item" :preview-src-list="image_list2"></el-image>
</el-col>
</el-row>
<div class="title">股东会对外担保决议</div>
<el-row>
<el-col :span="24">
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list3" :key="index" :src="item" :preview-src-list="image_list3"></el-image>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>总经理担保书</div>
<el-row>
<el-col :span="24">
<el-form-item>
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list4" :key="index" :src="item" :preview-src-list="image_list4"></el-image>
</el-form-item>
</el-col>
</el-row>
<div class="title"><span class="icon">*</span>其他附件</div>
<el-row>
<el-col :span="24">
<el-form-item>
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in image_list5" :key="index" :src="item" :preview-src-list="image_list5"></el-image>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
</div>
</template>
<script>
import { fetchSid, revokeProcess } from '@/api/tesheshenpi/qiankuantiche'
export default {
name: 'qiankuanticheYiBanInfo',
data() {
return {
viewTitle: '',
tableKey: 0,
billingKey: 1,
index: 0,
image_list1: [],
image_list2: [],
image_list3: [],
image_list4: [],
image_list5: [],
formobj: {
applyDept: '',
applyDeptSid: '',
applyName: '',
applyUserSid: '',
carContract: [],
carContractDownloadUrl: '',
commitmentMoneyDate: '',
configSid: '',
contractCollectionMoney: '',
contractId: '',
contractMoney: '',
createDate: '',
customerName: '',
customerSid: '',
fileList: [],
financeName: '',
financeUserSid: '',
gdLetter: [],
gdLetterDownloadUrl: '',
guaranteeLetter: [],
guaranteeLetterDownloadUrl: '',
isFinance: '',
modelName: '',
modelSid: '',
openTickName: '',
orgPath: '',
paymentMethod: '',
paymentMethodKey: '',
procInsId: '',
reason: '',
reasonKey: '',
reasonValue: '',
sid: '',
staffDept: '',
staffDeptSid: '',
staffName: '',
staffUserSid: '',
taskId: '',
trailersList: [],
userSid: '',
vinList: [],
zjlLetter: [],
zjlLetterDownloadUrl: ''
},
rules: {},
//
linkByParameter: {
businessSid: '',
comment: '',
instanceId: '',
taskId: '',
orgSidPath: '',
taskDefKey: '',
userSid: ''
}
}
},
created() {
console.log('url:' + window.location.href)
var one = window.location.href.indexOf('&data') + 6
const data = window.location.href.substr(one) // urlunescape()web,使
const obj = JSON.parse(decodeURIComponent(data))
console.log('iframe页面获取的obj:', obj)
//
this.linkByParameter.businessSid = obj.businessSid
this.linkByParameter.instanceId = obj.instanceId
this.linkByParameter.taskId = obj.taskId
this.linkByParameter.taskDefKey = obj.taskDefKey
this.linkByParameter.orgSidPath = window.sessionStorage.getItem('orgSidPath')
this.linkByParameter.userSid = window.sessionStorage.getItem('userSid')
//
this.showInfo(obj.businessSid)
},
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 500 + 'px'
}
}, '*')
},
methods: {
showInfo(sid) {
this.viewTitle = '欠款提车申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
fetchSid({ contractNo: '', orgPath: '', sid: sid, userSid: '' }).then((res) => {
if (res.success) {
this.formobj = res.data
this.formobj.instanceId = res.data.procInstSid
if (this.formobj.zjlLetter.length > 0) {
this.formobj.zjlLetter.forEach((e) => {
this.image_list4.push(e)
})
}
if (this.formobj.gdLetter.length > 0) {
this.formobj.gdLetter.forEach((e) => {
this.image_list3.push(e)
})
}
if (this.formobj.guaranteeLetter.length > 0) {
this.formobj.guaranteeLetter.forEach((e) => {
this.image_list2.push(e)
})
}
if (this.formobj.carContract.length > 0) {
this.formobj.carContract.forEach((e) => {
this.image_list1.push(e)
})
}
if (this.formobj.fileList.length > 0) {
this.formobj.fileList.forEach((e) => {
this.image_list5.push(e)
})
}
}
})
},
/** 确认撤回任务 */
openRevoke() {
this.$confirm('是否确认执行撤回操作', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.handleRevoke()
}).catch(() => {
this.$message({
type: 'info',
message: '已取消撤回'
})
})
},
/** 撤回任务 */
handleRevoke() {
revokeProcess(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
}
}
}
</script>
<style scoped>
.titwu {
font-size: 28px;
text-align: center;
padding: 30px 0 20px 0;
}
.span-sty {
width: 130px !important;
}
.addinputInfo {
margin-left: 120px !important;
}
</style>

478
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuantichefuhe.vue

@ -1,478 +0,0 @@
<template>
<div class="app-container">
<!--标题按钮部分开始-->
<div v-show="viewState == 5">
<div class="tab-header webtop">
<!--标题-->
<div>{{ viewTitle }}</div>
<!--start 新增修改按钮-->
<div>
<!-- <el-button type="primary" @click="openAgree">提交</el-button>
<el-button size="small" type="info" @click="handleReturn()">关闭</el-button> -->
</div>
<!--end 添加修改按钮-->
</div>
<!--按钮部分结束-->
<div class="">
<div class="title">欠款提车复核</div>
<el-form ref="ruleForm" :model="ruleForm" label-position="top" class="formadd" :rules="rules" label-width="100px">
<!--第一行-->
<el-row class="lineone">
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="合同编号:"> </el-form-item>
</el-col>
<el-col :span="8" style="border: 0px">
<el-form-item>
<el-input v-model="ruleForm.contractNo" readonly />
</el-form-item>
</el-col>
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="申请日期:"> </el-form-item>
</el-col>
<el-col :span="8" style="border: 0px">
<el-form-item>
<el-input v-model="ruleForm.applyDate" readonly />
</el-form-item>
</el-col>
</el-row>
<el-row class="linetwo">
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="客户名称:"> </el-form-item>
</el-col>
<el-col :span="20" style="border: 0px">
<el-form-item>
<el-input v-model="ruleForm.customerName" readonly />
</el-form-item>
</el-col>
</el-row>
<el-row class="linetwo">
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="车型:"> </el-form-item>
</el-col>
<el-col :span="20" style="border: 0px">
<el-form-item>
<el-input v-model="ruleForm.modelName" readonly />
</el-form-item>
</el-col>
</el-row>
<!--开票信息-->
<div class="tabletitle">
<div style="margin-left: 10px">车辆信息</div>
</div>
<template class="tablelist">
<el-table :data="ruleForm.vehicleList" :index="index" border style="width: 100%">
<el-table-column type="index" label="序号" width="100" :index="index + 1" align="center"/>
<el-table-column label="车架号" align="center">
<template slot-scope="props">
<span>{{ props.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="props">
<span>{{ props.row.dealMoney }}</span>
</template>
</el-table-column>
</el-table>
</template>
<el-row>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 欠款提车原因 </el-form-item>
</el-col>
<el-col :span="20">
<el-form-item>
{{ ruleForm.reason }}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 合同总金额 </el-form-item>
</el-col>
<el-col :span="4">
<el-form-item>
{{ ruleForm.contractMoney }}
</el-form-item>
</el-col>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 合同收款金额 </el-form-item>
</el-col>
<el-col :span="4">
<el-form-item>
{{ ruleForm.contractCollectionMoney }}
</el-form-item>
</el-col>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 累计欠款金额 </el-form-item>
</el-col>
<el-col :span="4">
<el-form-item>
{{ ruleForm.cumulativeArrearsMoney }}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 承诺回款日期 </el-form-item>
</el-col>
<el-col :span="20">
<el-form-item>
{{ ruleForm.commitmentMoneyDate }}
</el-form-item>
</el-col>
</el-row>
<div class="tableStyle">
<div style="margin-left: 10px">所附资料附件</div>
<el-upload :action="uploadAction" :data="requestData" :headers="accessToken" :multiple="false" :on-success="uploadSuccess" :show-file-list="false" class="upload-demo">
<el-button size="small" type="primary">点击上传</el-button>
</el-upload>
</div>
<el-table :data="ruleForm.commonAppendixDtoList" :index="index" border style="width: 100%">
<el-table-column :index="index + 1" align="center" label="序号" type="index" width="100"></el-table-column>
<el-table-column align="center" label="操作" width="190">
<template slot-scope="scope">
<el-button type="danger" @click="dataDelete(scope.$index,ruleForm.commonAppendixDtoList[scope.$index])">删除</el-button>
</template>
</el-table-column>
<el-table-column align="center" label="附件名称" prop="fileName">
<template slot-scope="scope">
<span class="bluezi" @click="handleDown(scope.row)">{{scope.row.fileName}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="文件格式" prop="fileType">
<template slot-scope="scope">
<span>{{ scope.row.fileType }}</span>
</template>
</el-table-column>
<el-table-column align="center" label="上传人" prop="name">
<template slot-scope="scope">
<span>{{ scope.row.name }}</span>
</template>
</el-table-column>
<el-table-column align="center" label="上传时间" prop="createTime">
<template slot-scope="scope">
<span>{{ scope.row.createTime }}</span>
</template>
</el-table-column>
</el-table>
</el-form>
</div>
</div>
</div>
</template>
<script>
import { fetchSid, removeFile,saveFile,getPcAppendix } from "@/api/tesheshenpi/qiankuantiche";
import { getStorage } from "@/utils/auth";
import { businessAgree} from '@/api/flow/todo'
export default {
name: "qiankuantichefuhe",
components: {
fetchSid,
businessAgree,
saveFile,
getPcAppendix
},
data() {
return {
index: 0,
viewState: 5,
status: 0,
// Start
userName: sessionStorage.getItem("name"),
// End
viewTitle: "", // 2 3
dialogStatus: "",
createDate:'',
uploadAction: process.env.VUE_APP_BASE_API + "/base/file/upload",
requestData: {
departmentName: window.sessionStorage.getItem("userSid"),
staffSid: window.sessionStorage.getItem("staffSid"),
},
accessToken: {
token: getStorage(),
},
//
ruleForm: {
sid: "",
contractNo: "",
applyDate: "",
customerName: "",
modelName: "",
modelSid: "",
reason: "",
contractMoney: "",
contractCollectionMoney: "",
cumulativeArrearsMoney: "",
commitmentMoneyDate: "",
userSid: window.sessionStorage.getItem("userSid"),
applyName: window.sessionStorage.getItem("name"),
vehicleList: [],
commonAppendixDtoList: [],
},
agreeList: { //
businessSid: '',
comment: '提交',
instanceId: '',
taskId: '',
userSid: window.sessionStorage.getItem('userSid')
},
list1:[],
rules: {},
};
},
created(){
this.getNowDate()
console.log('url:' + window.location.href)
var a = window.location.href.indexOf("?") + 1 // ?
var b = window.location.href.indexOf("#data") // #data
const info = window.location.href.slice(a, b)
var sid = info.substr(info.indexOf("=") + 1)
this.showData(sid)
// ===
var one = window.location.href.lastIndexOf("#") + 1
var two = window.location.href.lastIndexOf("}") + 1
const data = decodeURI(window.location.href.slice(one, two)) // urlunescape()web,使
var tar = data.substr(data.indexOf("=") + 1)
const obj = JSON.parse(tar)
console.log('iframe页面获取的obj:', obj)
//
this.agreeList.businessSid = sid
this.agreeList.instanceId = obj.instanceId
this.agreeList.taskId = obj.taskId
},
methods: {
getNowDate(){
let Nowdate=new Date()
let y=Nowdate.getFullYear()
let m=Nowdate.getMonth()+1
let d=Nowdate.getDate()
m=m<10?"0"+m:m
d=d<10?"0"+d:d
this.createDate=y+'-'+m+'-'+d
},
//
showData(sid) {
this.ruleForm.sid = sid;
fetchSid(sid).then((res) => {
if (res.code == "200") {
this.ruleForm.reason = res.data.reason;
this.ruleForm.contractNo = res.data.contractNo;
this.ruleForm.applyDate = res.data.applyDate;
this.ruleForm.customerName = res.data.customerName;
this.ruleForm.modelName = res.data.modelName;
this.ruleForm.contractMoney = res.data.contractMoney;
this.ruleForm.contractCollectionMoney = res.data.contractCollectionMoney;
this.ruleForm.cumulativeArrearsMoney = res.data.cumulativeArrearsMoney;
this.ruleForm.commitmentMoneyDate = res.data.commitmentMoneyDate;
this.ruleForm.modelSid = res.data.modelSid;
res.data.vehicleList.forEach((element) => {
this.ruleForm.vehicleList.push({
vinNo: element.vinNo,
dealMoney: element.dealMoney,
vehicleSid: element.vehicleSid,
arrearsVehicleSid: element.arrearsVehicleSid,
});
});
}
});
getPcAppendix({attachType:'0007',linkSid:this.ruleForm.sid}).then((res)=>{
console.log(123,res)
if(res.code=="200"){
this.ruleForm.commonAppendixDtoList=res.data
}
})
this.viewTitle = "欠款提车复核";
},
//
openAgree() {
if(this.ruleForm.commonAppendixDtoList.length>0){
this.$confirm('是否确认执行提交操作', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.handleAgree()
}).catch(() => {
this.$message({
type: 'info',
message: '已取消提交'
});
});
}else{
this.$notify({
title: '提示',
message: '请查看所附资料附件表是否已上传相关附件!',
type: 'error',
duration: 2000,
})
}
},
/** 同意任务 */
handleAgree() {
businessAgree(this.agreeList).then((response) => {
if (response.code == "200") {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000,
})
// this.refreshIt()
} else {
this.$notify({
title: '提示',
message: '执行失败',
type: 'error',
duration: 2000,
})
}
})
},
//
handleReturn() {
this.ruleForm = {
sid: "",
contractNo: "",
applyDate: "",
customerName: "",
modelName: "",
modelSid: "",
reason: "",
contractMoney: "",
contractCollectionMoney: "",
cumulativeArrearsMoney: "",
commitmentMoneyDate: "",
userSid: window.sessionStorage.getItem("userSid"),
applyName: window.sessionStorage.getItem("name"),
vehicleList: [],
commonAppendixDtoList: [],
};
this.$emit("doback");
},
//
uploadSuccess(response, file) {
const userName = sessionStorage.getItem("name");
const staffSid = sessionStorage.getItem("staffSid");
var nameArr = file.name.split(".");
this.ruleForm.commonAppendixDtoList.push({
fileName: file.name, //
fileType: nameArr[nameArr.length - 1], //
name: userName, //
createBySid: staffSid, // sid
fullUrl: response.data.fullUrl, //
filePath: response.data.filePath,
fileSize: response.data.size, //
linkSid: this.ruleForm.sid, //sid
attachType: '0007',
createTime:this.createDate
});
this.list1.push({
fileName: file.name, //
fileType: nameArr[nameArr.length - 1], //
name: userName, //
createBySid: staffSid, // sid
fullUrl: response.data.fullUrl, //
filePath: response.data.filePath,
fileSize: response.data.size, //
linkSid: this.ruleForm.sid, //sid
attachType: '0007',
createTime:this.createDate
})
if(this.list1.length>0){
saveFile(this.list1).then((res)=>{
if(res.code=="200"){
this.list1=[]
}
})
}
console.log("保存后的附件表", this.ruleForm.commonAppendixDtoList);
},
//
dataDelete(index, row) {
row.fullPath = row.filePath;
//
removeFile(row).then((res) => {
if (res.code === "200") {
//
this.ruleForm.commonAppendixDtoList.splice(this.ruleForm.commonAppendixDtoList.indexOf(row), 1);
if(this.list1.length>0){
this.list1.splice(this.list1.indexOf(row),1);
}
} else {
this.$notify({
title: "提示",
message: "移除失败",
type: "error",
duration: 2000,
});
}
});
},
//
handleDown(row) {
console.log("这是下载附件选中的file", row);
var name = row.fileName;
var url = row.filePath;
const a = document.createElement("a");
a.setAttribute("download", name);
a.setAttribute("target", "_blank");
//
a.setAttribute("href",process.env.VUE_APP_BASE_API + "/base/file/download");
a.click();
},
},
};
</script>
<style scoped>
/* .listcon {
height: calc(100vh - 210px);
overflow-y: auto;
overflow-x: hidden;
} */
.title {
text-align: center;
font-size: 28px;
line-height: 90px;
}
.lineone {
border-left: 0px;
border-right: 0px;
border-bottom: 2px solid #e0e3eb;
}
.lineone .el-form-item {
margin-bottom: -20px !important;
}
.lineone >>> .el-input__inner {
border: 0;
}
.linetwo {
border-left: 0px;
border-right: 0px;
}
.linetwo .el-form-item {
margin-bottom: -20px !important;
}
.linetwo >>> .el-input__inner {
border: 0;
}
.el-form-item-right {
text-align: right;
}
.tabletitle {
display: flex;
justify-content: flex-start;
align-items: center;
border: 1px solid #dfe4ed;
height: 40px;
}
.tableStyle {
margin-top: 0px;
display: flex;
justify-content: space-between;
align-items: center;
border: 1px solid #dfe4ed;
height: 40px;
}
</style>

329
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/qiankuantichefuheInfo.vue

@ -1,329 +0,0 @@
<template>
<div class="app-container">
<!--标题按钮部分开始-->
<div v-show="viewState == 5">
<div class="tab-header webtop">
<!--标题-->
<div>{{ viewTitle }}</div>
<!--start 新增修改按钮-->
<div>
<!-- <el-button size="small" type="info" @click="handleReturn()">关闭</el-button> -->
</div>
<!--end 添加修改按钮-->
</div>
<!--按钮部分结束-->
<div class="">
<div class="title">欠款提车复核</div>
<el-form ref="ruleForm" :model="ruleForm" label-position="top" class="formadd" :rules="rules" label-width="100px">
<!--第一行-->
<el-row class="lineone">
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="合同编号:"> </el-form-item>
</el-col>
<el-col :span="8" style="border: 0px">
<el-form-item>
<el-input v-model="ruleForm.contractNo" readonly />
</el-form-item>
</el-col>
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="申请日期:"> </el-form-item>
</el-col>
<el-col :span="8" style="border: 0px">
<el-form-item>
<el-input v-model="ruleForm.applyDate" readonly />
</el-form-item>
</el-col>
</el-row>
<el-row class="linetwo">
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="客户名称:"> </el-form-item>
</el-col>
<el-col :span="20" style="border: 0px">
<el-form-item>
<el-input v-model="ruleForm.customerName" readonly />
</el-form-item>
</el-col>
</el-row>
<el-row class="linetwo">
<el-col :span="4" class="el-form-item-right" style="border: 0px">
<el-form-item label="车型:"> </el-form-item>
</el-col>
<el-col :span="20" style="border: 0px">
<el-form-item>
<el-input v-model="ruleForm.modelName" readonly />
</el-form-item>
</el-col>
</el-row>
<!--开票信息-->
<div class="tabletitle">
<div style="margin-left: 10px">车辆信息</div>
</div>
<template class="tablelist">
<el-table :data="ruleForm.vehicleList" :index="index" border style="width: 100%">
<el-table-column type="index" label="序号" width="100" :index="index + 1" align="center"/>
<el-table-column label="车架号" align="center">
<template slot-scope="props">
<span>{{ props.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center">
<template slot-scope="props">
<span>{{ props.row.dealMoney }}</span>
</template>
</el-table-column>
</el-table>
</template>
<el-row>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 欠款提车原因 </el-form-item>
</el-col>
<el-col :span="20">
<el-form-item>
{{ ruleForm.reason }}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 合同总金额 </el-form-item>
</el-col>
<el-col :span="4">
<el-form-item>
{{ ruleForm.contractMoney }}
</el-form-item>
</el-col>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 合同收款金额 </el-form-item>
</el-col>
<el-col :span="4">
<el-form-item>
{{ ruleForm.contractCollectionMoney }}
</el-form-item>
</el-col>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 累计欠款金额 </el-form-item>
</el-col>
<el-col :span="4">
<el-form-item>
{{ ruleForm.cumulativeArrearsMoney }}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right">
<el-form-item> 承诺回款日期 </el-form-item>
</el-col>
<el-col :span="20">
<el-form-item>
{{ ruleForm.commitmentMoneyDate }}
</el-form-item>
</el-col>
</el-row>
<div class="tableStyle">
<div style="margin-left: 10px">所附资料附件</div>
</div>
<el-table :data="ruleForm.commonAppendixDtoList" :index="index" border style="width: 100%">
<el-table-column :index="index + 1" align="center" label="序号" type="index" width="100"></el-table-column>
<el-table-column align="center" label="附件名称" prop="fileName">
<template slot-scope="scope">
<span class="bluezi" @click="handleDown(scope.row)">{{scope.row.fileName}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="文件格式" prop="fileType">
<template slot-scope="scope">
<span>{{ scope.row.fileType }}</span>
</template>
</el-table-column>
<el-table-column align="center" label="上传人" prop="name">
<template slot-scope="scope">
<span>{{ scope.row.name }}</span>
</template>
</el-table-column>
<el-table-column align="center" label="上传时间" prop="createTime">
<template slot-scope="scope">
<span>{{ scope.row.createTime }}</span>
</template>
</el-table-column>
</el-table>
</el-form>
</div>
</div>
</div>
</template>
<script>
import { fetchSid,getPcAppendix } from "@/api/tesheshenpi/qiankuantiche";
export default {
name: "qiankuantichefuheInfo",
components: {
fetchSid,
getPcAppendix
},
data() {
return {
index: 0,
viewState: 5,
status: 0,
// Start
userName: sessionStorage.getItem("name"),
// End
viewTitle: "", // 2 3
dialogStatus: "",
//
ruleForm: {
sid: "",
contractNo: "",
applyDate: "",
customerName: "",
modelName: "",
modelSid: "",
reason: "",
contractMoney: "",
contractCollectionMoney: "",
cumulativeArrearsMoney: "",
commitmentMoneyDate: "",
userSid: window.sessionStorage.getItem("userSid"),
applyName: window.sessionStorage.getItem("name"),
vehicleList: [],
commonAppendixDtoList: [],
},
rules: {},
};
},
created(){
console.log('url:' + window.location.href)
var a = window.location.href.indexOf("?") + 1 // ?
var b = window.location.href.indexOf("#data") // #data
const info = window.location.href.slice(a, b)
var sid = info.substr(info.indexOf("=") + 1)
this.showData(sid)
// ===
var one = window.location.href.lastIndexOf("#") + 1
var two = window.location.href.lastIndexOf("}") + 1
const data = decodeURI(window.location.href.slice(one, two)) // urlunescape()web,使
var tar = data.substr(data.indexOf("=") + 1)
const obj = JSON.parse(tar)
console.log('iframe页面获取的obj:', obj)
//
this.agreeList.businessSid = sid
this.agreeList.instanceId = obj.instanceId
this.agreeList.taskId = obj.taskId
},
methods: {
//
showData(sid) {
this.ruleForm.sid = sid;
fetchSid(sid).then((res) => {
if (res.code == "200") {
this.ruleForm.reason = res.data.reason;
this.ruleForm.contractNo = res.data.contractNo;
this.ruleForm.applyDate = res.data.applyDate;
this.ruleForm.customerName = res.data.customerName;
this.ruleForm.modelName = res.data.modelName;
this.ruleForm.contractMoney = res.data.contractMoney;
this.ruleForm.contractCollectionMoney = res.data.contractCollectionMoney;
this.ruleForm.cumulativeArrearsMoney = res.data.cumulativeArrearsMoney;
this.ruleForm.commitmentMoneyDate = res.data.commitmentMoneyDate;
this.ruleForm.modelSid = res.data.modelSid;
res.data.vehicleList.forEach((element) => {
this.ruleForm.vehicleList.push({
vinNo: element.vinNo,
dealMoney: element.dealMoney,
vehicleSid: element.vehicleSid,
arrearsVehicleSid: element.arrearsVehicleSid,
});
});
}
});
getPcAppendix({attachType:'0007',linkSid:this.ruleForm.sid}).then((res)=>{
console.log(123,res)
if(res.code=="200"){
this.ruleForm.commonAppendixDtoList=res.data
}
})
this.viewTitle = "欠款提车复核";
},
//
handleReturn() {
this.ruleForm = {
sid: "",
contractNo: "",
applyDate: "",
customerName: "",
modelName: "",
modelSid: "",
reason: "",
contractMoney: "",
contractCollectionMoney: "",
cumulativeArrearsMoney: "",
commitmentMoneyDate: "",
userSid: window.sessionStorage.getItem("userSid"),
applyName: window.sessionStorage.getItem("name"),
vehicleList: [],
commonAppendixDtoList: [],
};
this.$emit("doback");
},
//
handleDown(row) {
console.log("这是下载附件选中的file", row);
var name = row.fileName;
var url = row.filePath;
const a = document.createElement("a");
a.setAttribute("download", name);
a.setAttribute("target", "_blank");
//
a.setAttribute("href",process.env.VUE_APP_BASE_API + "/base/file/download");
a.click();
},
},
};
</script>
<style scoped>
.title {
text-align: center;
font-size: 28px;
line-height: 90px;
}
.lineone {
border-left: 0px;
border-right: 0px;
border-bottom: 2px solid #e0e3eb;
}
.lineone .el-form-item {
margin-bottom: -20px !important;
}
.lineone >>> .el-input__inner {
border: 0;
}
.linetwo {
border-left: 0px;
border-right: 0px;
}
.linetwo .el-form-item {
margin-bottom: -20px !important;
}
.linetwo >>> .el-input__inner {
border: 0;
}
.el-form-item-right {
text-align: right;
}
.tabletitle {
display: flex;
justify-content: flex-start;
align-items: center;
border: 1px solid #dfe4ed;
height: 40px;
}
.tableStyle {
margin-top: 0px;
display: flex;
justify-content: space-between;
align-items: center;
border: 1px solid #dfe4ed;
height: 40px;
}
</style>

182
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/teshushenpiFlow/qiankuanticheguanli/relation/selectVehicle.vue

@ -0,0 +1,182 @@
<template>
<div class="app-container">
<div>
<div class="tab-header webtop">
<div>车辆查询</div>
<div>
<el-button type="primary" size="small" @click="AddUpdateReturn">确定</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">
<el-form-item label="车架号">
<el-input v-model="listQuery.params.vinNo" clearable class="addinputw" placeholder=""/>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" icon="el-icon-search" @click="handleFilter" size="small">查询</el-button>
<el-button type="primary" icon="el-icon-refresh" @click="handleReset" size="small">重置</el-button>
</div>
</div>
</div>
<div class="listtop">
<div class="tit">现车列表</div>
</div>
<div class="">
<el-table :key="tableKey" ref="multipleTable" v-loading="listLoading" :data="list" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50px" type="selection" align="center"/>
<el-table-column width="80px" label="序号" type="index" :index="indexMethod" align="center"/>
<el-table-column label="合同编号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.contractNo }}</span>
</template>
</el-table-column>
<el-table-column label="客户名称" align="center">
<template slot-scope="scope">
<span>{{ scope.row.customerName }}</span>
</template>
</el-table-column>
<el-table-column label="车架号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.vin }}</span>
</template>
</el-table-column>
</el-table>
</div>
<div class="pages">
<div class="tit"/>
<!-- 翻页 -->
<Pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
</div>
</div>
</div>
</template>
<script>
import Pagination from '@/components/pagination'
import { getCanUseCars } from '@/api/tesheshenpi/qiankuantiche'
export default {
name: 'SelectVehicle',
components: {
Pagination
},
data() {
return {
isSearchShow: false,
searchxianshitit: '隐藏查询条件',
tableKey: 0,
sids: [],
list: [],
listLoading: false,
listQuery: {
current: 1,
size: 5,
params: {
contractNo: '',
vinNo: '',
vinSids: []
},
total: 0
}
}
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
//
handleReturn() {
this.$emit('doback')
},
//
getList() {
this.listLoading = true
getCanUseCars(this.listQuery).then((response) => {
this.listLoading = false
if (response.success) {
this.listQuery.total = response.data.total
this.list = response.data.records
} else {
this.listQuery.total = 0
this.list = []
}
})
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
//
handleReset() {
this.listQuery.current = 1
this.listQuery.size = 5
this.listQuery.total = 0
this.listQuery.params.vinNo = ''
this.getList()
},
handleSelectionChange(row) {
this.sids = []
const aa = []
row.forEach((element) => {
aa.push({
vinNo: element.vin,
carSid: element.carSid,
price: element.price,
subscribedAll: element.subscribedAll,
gcList: element.gcList
})
})
this.sids = aa
},
showData(value, contractNo) {
const aa = []
if (value.length > 0) {
for (var i = 0; i < value.length; i++) {
aa.push(value[i].carSid)
}
this.listQuery.params.vinSids = aa
} else {
this.listQuery.params.vinSids = []
}
this.listQuery.current = 1
this.listQuery.total = 0
this.listQuery.size = 5
this.listQuery.params.contractNo = contractNo
this.getList()
},
//
AddUpdateReturn() {
if (this.sids.length > 0) {
this.$emit('backData', this.sids)
} else {
this.$notify({
title: '提示',
message: '请选择至少一条记录!',
type: 'error',
duration: 2000
})
}
}
}
}
</script>
<style scoped>
</style>
Loading…
Cancel
Save