parent
9d658102b8
commit
1f7291f950
File diff suppressed because one or more lines are too long
@ -1,269 +1,249 @@
|
|||||||
<template>
|
<template>
|
||||||
<transition name="el-zoom-in-center">
|
<transition name="el-zoom-in-center">
|
||||||
<div class="JNPF-preview-main">
|
<div class="JNPF-preview-main">
|
||||||
<Detail v-if="detailVisible" ref="Detail" @close="detailVisible = false" />
|
<Detail v-if="detailVisible" ref="Detail" @close="detailVisible = false" />
|
||||||
<div class="JNPF-common-page-header">
|
<div class="JNPF-common-page-header">
|
||||||
<el-page-header @back="goBack"
|
<el-page-header @back="goBack" content="详情" />
|
||||||
content="详情"/>
|
<div class="options">
|
||||||
<div class="options">
|
<el-button @click="goBack">取 消</el-button>
|
||||||
<el-button @click="goBack">取 消</el-button>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<el-row :gutter="15" class=" main" :style="{margin: '0 auto',width: '100%'}">
|
|
||||||
<el-form ref="formRef" :model="dataForm" size="small" label-width="100px" label-position="right" >
|
|
||||||
<template v-if="!loading">
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="合同编号"
|
|
||||||
prop="contractNumber" >
|
|
||||||
<p>{{dataForm.contractNumber}}</p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="合同名称"
|
|
||||||
prop="contractName" >
|
|
||||||
<p>{{dataForm.contractName}}</p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="计价方式"
|
|
||||||
prop="pricingMethod" >
|
|
||||||
<p>{{ dataForm.pricingMethod }} </p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="签订日期"
|
|
||||||
prop="signingDate" >
|
|
||||||
<p>{{dataForm.signingDate}}</p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="园区名称"
|
|
||||||
prop="parkId" >
|
|
||||||
<p>{{dataForm.parkId}}</p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="商户名称"
|
|
||||||
prop="merchantName" >
|
|
||||||
<p>{{dataForm.merchantName}}</p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="租金总价"
|
|
||||||
prop="totalRentalPrice" >
|
|
||||||
<p>{{dataForm.totalRentalPrice}}</p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="押金总计"
|
|
||||||
prop="totalDeposit" >
|
|
||||||
<p>{{dataForm.totalDeposit}}</p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="支付方式"
|
|
||||||
prop="payDeposit" >
|
|
||||||
<p>{{ dataForm.payDeposit }} </p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="退还方式"
|
|
||||||
prop="returnDeposit" >
|
|
||||||
<p>{{ dataForm.returnDeposit }} </p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="开始时间"
|
|
||||||
prop="startTime" >
|
|
||||||
<p>{{dataForm.startTime}}</p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="结束时间"
|
|
||||||
prop="endTime" >
|
|
||||||
<p>{{dataForm.endTime}}</p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="租期"
|
|
||||||
prop="leaseTerm" >
|
|
||||||
<p>{{dataForm.leaseTerm}}月</p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="联系人"
|
|
||||||
prop="contacts" >
|
|
||||||
<p>{{dataForm.contacts}}</p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="联系电话"
|
|
||||||
prop="contactsPhone" >
|
|
||||||
<p>{{dataForm.contactsPhone}}</p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8" >
|
|
||||||
<jnpf-form-tip-item label="合同状态"
|
|
||||||
prop="contractStatus" >
|
|
||||||
<p>{{ dataForm.contractStatus }} </p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="24" >
|
|
||||||
<jnpf-form-tip-item label="合同说明"
|
|
||||||
prop="contractExplain" >
|
|
||||||
<p>{{dataForm.contractExplain}}</p>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="24" >
|
|
||||||
<jnpf-form-tip-item label="合同附件"
|
|
||||||
prop="contractEnclosure" >
|
|
||||||
<JnpfUploadFile v-model="dataForm.contractEnclosure"
|
|
||||||
disabled
|
|
||||||
detailed :fileSize="10" sizeUnit="MB" :limit="9" pathType="defaultPath" :isAccount="0" buttonText="点击上传" >
|
|
||||||
</JnpfUploadFile>
|
|
||||||
</jnpf-form-tip-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="24" >
|
|
||||||
<jnpf-form-tip-item label-width="0">
|
|
||||||
<div class="JNPF-common-title">
|
|
||||||
<h2>空间列表</h2>
|
|
||||||
</div>
|
</div>
|
||||||
<el-table :data="dataForm.tableField130" size='mini' >
|
<el-row :gutter="15" class=" main" :style="{ margin: '0 auto', width: '100%' }">
|
||||||
<el-table-column type="index" width="50" label="序号" align="center" />
|
<el-form ref="formRef" :model="dataForm" size="small" label-width="100px" label-position="right">
|
||||||
<el-table-column prop="contractLineNumber" label="合同行号" >
|
<template v-if="!loading">
|
||||||
<template slot="header">
|
<el-col :span="8">
|
||||||
合同行号
|
<jnpf-form-tip-item label="合同编号" prop="contractNumber">
|
||||||
<span slot="label">
|
<p>{{ dataForm.contractNumber }}</p>
|
||||||
<el-tooltip placement="top" content='后台自动生成'>
|
</jnpf-form-tip-item>
|
||||||
<a class='el-icon-question tooltip-question'></a>
|
</el-col>
|
||||||
</el-tooltip>
|
<el-col :span="8">
|
||||||
</span>
|
<jnpf-form-tip-item label="合同名称" prop="contractName">
|
||||||
</template>
|
<p>{{ dataForm.contractName }}</p>
|
||||||
<template slot-scope="scope">
|
</jnpf-form-tip-item>
|
||||||
<p>{{scope.row.contractLineNumber}}</p>
|
</el-col>
|
||||||
</template>
|
<el-col :span="8">
|
||||||
</el-table-column>
|
<jnpf-form-tip-item label="计价方式" prop="pricingMethod">
|
||||||
<el-table-column prop="spaceName" label="空间名称" >
|
<p>{{ dataForm.pricingMethod }} </p>
|
||||||
<template slot-scope="scope">
|
</jnpf-form-tip-item>
|
||||||
<p>{{scope.row.spaceName}}</p>
|
</el-col>
|
||||||
</template>
|
<el-col :span="8">
|
||||||
</el-table-column>
|
<jnpf-form-tip-item label="签订日期" prop="signingDate">
|
||||||
<el-table-column prop="spaceArea" label="空间面积" >
|
<p>{{ dataForm.signingDate }}</p>
|
||||||
<template slot-scope="scope">
|
</jnpf-form-tip-item>
|
||||||
<p>{{scope.row.spaceArea}}</p>
|
</el-col>
|
||||||
</template>
|
<el-col :span="8">
|
||||||
</el-table-column>
|
<jnpf-form-tip-item label="园区名称" prop="parkId">
|
||||||
<el-table-column prop="totalRentalPrice" label="租金总价" >
|
<p>{{ dataForm.parkName }}</p>
|
||||||
<template slot-scope="scope">
|
</jnpf-form-tip-item>
|
||||||
<p>{{scope.row.totalRentalPrice}}</p>
|
</el-col>
|
||||||
</template>
|
<el-col :span="8">
|
||||||
</el-table-column>
|
<jnpf-form-tip-item label="商户名称" prop="merchantName">
|
||||||
</el-table>
|
<p>{{ dataForm.merchantName }}</p>
|
||||||
</jnpf-form-tip-item>
|
</jnpf-form-tip-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</template>
|
<el-col :span="8">
|
||||||
</el-form>
|
<jnpf-form-tip-item label="租金总价" prop="totalRentalPrice">
|
||||||
</el-row>
|
<p>{{ dataForm.totalRentalPrice }}</p>
|
||||||
</div>
|
</jnpf-form-tip-item>
|
||||||
</transition>
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="押金总计" prop="totalDeposit">
|
||||||
|
<p>{{ dataForm.totalDeposit }}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="支付方式" prop="payDeposit">
|
||||||
|
<p>{{ dataForm.payDeposit }} </p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="退还方式" prop="returnDeposit">
|
||||||
|
<p>{{ dataForm.returnDeposit }} </p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="开始时间" prop="startTime">
|
||||||
|
<p>{{ dataForm.startTime }}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="结束时间" prop="endTime">
|
||||||
|
<p>{{ dataForm.endTime }}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="租期" prop="leaseTerm">
|
||||||
|
<p>{{ dataForm.leaseTerm }}月</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="联系人" prop="contacts">
|
||||||
|
<p>{{ dataForm.contacts }}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="联系电话" prop="contactsPhone">
|
||||||
|
<p>{{ dataForm.contactsPhone }}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="合同状态" prop="contractStatus">
|
||||||
|
<p>{{ dataForm.contractStatus }} </p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<jnpf-form-tip-item label="合同说明" prop="contractExplain">
|
||||||
|
<p>{{ dataForm.contractExplain }}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<jnpf-form-tip-item label="合同附件" prop="contractEnclosure">
|
||||||
|
<JnpfUploadFile v-model="dataForm.contractEnclosure" disabled detailed :fileSize="10"
|
||||||
|
sizeUnit="MB" :limit="9" pathType="defaultPath" :isAccount="0" buttonText="点击上传">
|
||||||
|
</JnpfUploadFile>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<jnpf-form-tip-item label-width="0">
|
||||||
|
<div class="JNPF-common-title">
|
||||||
|
<h2>空间列表</h2>
|
||||||
|
</div>
|
||||||
|
<el-table :data="dataForm.tableField130" size='mini'>
|
||||||
|
<el-table-column type="index" width="50" label="序号" align="center" />
|
||||||
|
<el-table-column prop="contractLineNumber" label="合同行号">
|
||||||
|
<template slot="header">
|
||||||
|
合同行号
|
||||||
|
<span slot="label">
|
||||||
|
<el-tooltip placement="top" content='后台自动生成'>
|
||||||
|
<a class='el-icon-question tooltip-question'></a>
|
||||||
|
</el-tooltip>
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<p>{{ scope.row.contractLineNumber }}</p>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="spaceName" label="空间名称">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<p>{{ scope.row.spaceName }}</p>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="spaceArea" label="空间面积">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<p>{{ scope.row.spaceArea }}</p>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="totalRentalPrice" label="租金总价">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<p>{{ scope.row.totalRentalPrice }}</p>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
</template>
|
||||||
|
</el-form>
|
||||||
|
</el-row>
|
||||||
|
</div>
|
||||||
|
</transition>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import request from '@/utils/request'
|
import request from '@/utils/request'
|
||||||
|
|
||||||
import { getConfigData } from '@/api/onlineDev/visualDev'
|
import { getConfigData } from '@/api/onlineDev/visualDev'
|
||||||
import jnpf from '@/utils/jnpf'
|
import jnpf from '@/utils/jnpf'
|
||||||
import Detail from '@/views/basic/dynamicModel/list/detail'
|
import Detail from '@/views/basic/dynamicModel/list/detail'
|
||||||
import { thousandsFormat } from "@/components/Generator/utils/index"
|
import { thousandsFormat } from "@/components/Generator/utils/index"
|
||||||
export default {
|
export default {
|
||||||
components: { Detail},
|
components: { Detail },
|
||||||
props: [],
|
props: [],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
visible: false,
|
visible: false,
|
||||||
detailVisible: false,
|
detailVisible: false,
|
||||||
loading: false,
|
loading: false,
|
||||||
|
|
||||||
dataForm: {
|
dataForm: {
|
||||||
id :'',
|
id: '',
|
||||||
contractNumber : '',
|
contractNumber: '',
|
||||||
contractName : '',
|
contractName: '',
|
||||||
pricingMethod : "",
|
pricingMethod: "",
|
||||||
signingDate : '',
|
signingDate: '',
|
||||||
parkId : "",
|
parkId: "",
|
||||||
merchantName : "",
|
merchantName: "",
|
||||||
totalRentalPrice : "",
|
totalRentalPrice: "",
|
||||||
totalDeposit : '',
|
totalDeposit: '',
|
||||||
payDeposit : "",
|
payDeposit: "",
|
||||||
returnDeposit : "",
|
returnDeposit: "",
|
||||||
startTime : '',
|
startTime: '',
|
||||||
endTime : '',
|
endTime: '',
|
||||||
leaseTerm : '',
|
leaseTerm: '',
|
||||||
contacts : '',
|
contacts: '',
|
||||||
contactsPhone : '',
|
contactsPhone: '',
|
||||||
contractStatus : "10",
|
contractStatus: "10",
|
||||||
creationTime : "",
|
creationTime: "",
|
||||||
contractExplain : '',
|
contractExplain: '',
|
||||||
contractEnclosure : [],
|
contractEnclosure: [],
|
||||||
spacecontractList:[],
|
spacecontractList: [],
|
||||||
},
|
},
|
||||||
pricingMethodOptions:[{"fullName":"月付","id":"1"},{"fullName":"季付","id":"2"},{"fullName":"年付","id":"3"}],
|
pricingMethodOptions: [{ "fullName": "月付", "id": "1" }, { "fullName": "季付", "id": "2" }, { "fullName": "年付", "id": "3" }],
|
||||||
pricingMethodProps:{"label":"fullName","value":"id" },
|
pricingMethodProps: { "label": "fullName", "value": "id" },
|
||||||
parkIdProps:{"label":"park_name","value":"park_number" },
|
parkIdProps: { "label": "park_name", "value": "park_number" },
|
||||||
merchantNameProps:{"label":"cmp_nm","value":"id" },
|
merchantNameProps: { "label": "cmp_nm", "value": "id" },
|
||||||
payDepositOptions:[{"fullName":"选项1","id":"1"},{"fullName":"选项2","id":"2"}],
|
payDepositOptions: [{ "fullName": "选项1", "id": "1" }, { "fullName": "选项2", "id": "2" }],
|
||||||
payDepositProps:{"label":"fullName","value":"id" },
|
payDepositProps: { "label": "fullName", "value": "id" },
|
||||||
returnDepositOptions:[{"fullName":"选项一","id":"1"},{"fullName":"选项二","id":"2"}],
|
returnDepositOptions: [{ "fullName": "选项一", "id": "1" }, { "fullName": "选项二", "id": "2" }],
|
||||||
returnDepositProps:{"label":"fullName","value":"id" },
|
returnDepositProps: { "label": "fullName", "value": "id" },
|
||||||
contractStatusOptions:[{"fullName":"待确认","id":"10"},{"fullName":"已确认","id":"20"},{"fullName":"已结案","id":"30"},{"fullName":"待确认","id":"21"}],
|
contractStatusOptions: [{ "fullName": "待确认", "id": "10" }, { "fullName": "已确认", "id": "20" }, { "fullName": "已结案", "id": "30" }, { "fullName": "待确认", "id": "21" }],
|
||||||
contractStatusProps:{"label":"fullName","value":"id" },
|
contractStatusProps: { "label": "fullName", "value": "id" },
|
||||||
|
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
computed: {},
|
||||||
|
watch: {},
|
||||||
|
created() {
|
||||||
|
|
||||||
|
},
|
||||||
|
mounted() { },
|
||||||
|
methods: {
|
||||||
|
toDetail(defaultValue, modelId) {
|
||||||
|
if (!defaultValue) return
|
||||||
|
getConfigData(modelId).then(res => {
|
||||||
|
if (!res.data || !res.data.formData) return
|
||||||
|
let formData = JSON.parse(res.data.formData)
|
||||||
|
formData.popupType = 'general'
|
||||||
|
this.detailVisible = true
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.Detail.init(formData, modelId, defaultValue)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
dataInfo(dataAll) {
|
||||||
|
let _dataAll = dataAll
|
||||||
|
this.dataForm = _dataAll
|
||||||
},
|
},
|
||||||
computed: {},
|
|
||||||
watch: {},
|
|
||||||
created() {
|
|
||||||
|
|
||||||
|
goBack() {
|
||||||
|
this.$emit('refresh')
|
||||||
},
|
},
|
||||||
mounted() {},
|
init(id) {
|
||||||
methods: {
|
this.dataForm.id = id || 0;
|
||||||
toDetail(defaultValue, modelId) {
|
this.visible = true;
|
||||||
if (!defaultValue) return
|
this.$nextTick(() => {
|
||||||
getConfigData(modelId).then(res => {
|
if (this.dataForm.id) {
|
||||||
if (!res.data || !res.data.formData) return
|
this.loading = true
|
||||||
let formData = JSON.parse(res.data.formData)
|
request({
|
||||||
formData.popupType = 'general'
|
url: '/api/example/Contract/detail/' + this.dataForm.id,
|
||||||
this.detailVisible = true
|
method: 'get'
|
||||||
this.$nextTick(() => {
|
}).then(res => {
|
||||||
this.$refs.Detail.init(formData, modelId, defaultValue)
|
this.dataInfo(res.data)
|
||||||
|
this.loading = false
|
||||||
})
|
})
|
||||||
})
|
}
|
||||||
},
|
|
||||||
dataInfo(dataAll){
|
|
||||||
let _dataAll =dataAll
|
|
||||||
this.dataForm = _dataAll
|
|
||||||
},
|
|
||||||
|
|
||||||
goBack() {
|
|
||||||
this.$emit('refresh')
|
|
||||||
},
|
|
||||||
init(id) {
|
|
||||||
this.dataForm.id = id || 0;
|
|
||||||
this.visible = true;
|
|
||||||
this.$nextTick(() => {
|
|
||||||
if(this.dataForm.id){
|
|
||||||
this.loading = true
|
|
||||||
request({
|
|
||||||
url: '/api/example/Contract/detail/'+this.dataForm.id,
|
|
||||||
method: 'get'
|
|
||||||
}).then(res => {
|
|
||||||
this.dataInfo(res.data)
|
|
||||||
this.loading = false
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
})
|
})
|
||||||
},
|
|
||||||
},
|
},
|
||||||
}
|
},
|
||||||
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
@ -0,0 +1,200 @@
|
|||||||
|
<template>
|
||||||
|
<el-dialog title="详情"
|
||||||
|
:close-on-click-modal="false" append-to-body
|
||||||
|
:visible.sync="visible" class="JNPF-dialog JNPF-dialog_center" lock-scroll
|
||||||
|
width="1100px">
|
||||||
|
<el-row :gutter="15" class="">
|
||||||
|
<el-form ref="formRef" :model="dataForm" size="small" label-width="100px" label-position="right" >
|
||||||
|
<template v-if="!loading">
|
||||||
|
<el-col :span="8" >
|
||||||
|
<jnpf-form-tip-item label="租赁单号"
|
||||||
|
prop="leaseNumber" >
|
||||||
|
<p>{{dataForm.leaseNumber}}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" >
|
||||||
|
<jnpf-form-tip-item label="开始时间"
|
||||||
|
prop="startTime" >
|
||||||
|
<p>{{dataForm.startTime}}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" >
|
||||||
|
<jnpf-form-tip-item label="结束时间"
|
||||||
|
prop="endTime" >
|
||||||
|
<p>{{dataForm.endTime}}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" >
|
||||||
|
<jnpf-form-tip-item label="设备名称"
|
||||||
|
prop="equipmentId" >
|
||||||
|
<p>{{dataForm.equipmentName}}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" >
|
||||||
|
<jnpf-form-tip-item label="租赁总价"
|
||||||
|
prop="totalLeasePrice" >
|
||||||
|
<p>{{dataForm.totalLeasePrice}}元</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" >
|
||||||
|
<jnpf-form-tip-item label="租赁押金"
|
||||||
|
prop="leaseDeposit" >
|
||||||
|
<p>{{dataForm.leaseDeposit}}元</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" >
|
||||||
|
<jnpf-form-tip-item label="商户名称"
|
||||||
|
prop="merchantId" >
|
||||||
|
<p>{{dataForm.merchantId}}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" >
|
||||||
|
<jnpf-form-tip-item label="联系人"
|
||||||
|
prop="contacts" >
|
||||||
|
<p>{{dataForm.contacts}}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" >
|
||||||
|
<jnpf-form-tip-item label="联系电话"
|
||||||
|
prop="contactsPhone" >
|
||||||
|
<p>{{dataForm.contactsPhone}}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" >
|
||||||
|
<jnpf-form-tip-item label="租赁状态"
|
||||||
|
prop="leaseStatus" >
|
||||||
|
<p>{{ dataForm.leaseStatus }} </p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" >
|
||||||
|
<jnpf-form-tip-item label="附件"
|
||||||
|
prop="enclosure" >
|
||||||
|
<JnpfUploadFile v-model="dataForm.enclosure"
|
||||||
|
disabled
|
||||||
|
detailed :fileSize="10" sizeUnit="MB" :limit="9" pathType="defaultPath" :isAccount="0" buttonText="点击上传" >
|
||||||
|
</JnpfUploadFile>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" >
|
||||||
|
<jnpf-form-tip-item label="归还人"
|
||||||
|
prop="returnedBy" >
|
||||||
|
<p>{{dataForm.returnedBy}}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" >
|
||||||
|
<jnpf-form-tip-item label="归还时间"
|
||||||
|
prop="returnTime" >
|
||||||
|
<p>{{dataForm.returnTime}}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" >
|
||||||
|
<jnpf-form-tip-item label="归还状态"
|
||||||
|
prop="returnStatus" >
|
||||||
|
<p>{{ dataForm.returnStatus }} </p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24" >
|
||||||
|
<jnpf-form-tip-item label="归还说明"
|
||||||
|
prop="remarks" >
|
||||||
|
<p>{{dataForm.remarks}}</p>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
</template>
|
||||||
|
</el-form>
|
||||||
|
</el-row>
|
||||||
|
<span slot="footer" class="dialog-footer">
|
||||||
|
<el-button @click="visible = false"> 取 消</el-button>
|
||||||
|
</span>
|
||||||
|
<Detail v-if="detailVisible" ref="Detail" @close="detailVisible = false" />
|
||||||
|
</el-dialog>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
import { getConfigData } from '@/api/onlineDev/visualDev'
|
||||||
|
import jnpf from '@/utils/jnpf'
|
||||||
|
import Detail from '@/views/basic/dynamicModel/list/detail'
|
||||||
|
import { thousandsFormat } from "@/components/Generator/utils/index"
|
||||||
|
export default {
|
||||||
|
components: { Detail},
|
||||||
|
props: [],
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
visible: false,
|
||||||
|
detailVisible: false,
|
||||||
|
loading: false,
|
||||||
|
|
||||||
|
dataForm: {
|
||||||
|
id :'',
|
||||||
|
leaseNumber : '',
|
||||||
|
startTime : '',
|
||||||
|
endTime : '',
|
||||||
|
equipmentId : "",
|
||||||
|
totalLeasePrice : '',
|
||||||
|
leaseDeposit : '',
|
||||||
|
merchantId : "",
|
||||||
|
contacts : '',
|
||||||
|
contactsPhone : '',
|
||||||
|
leaseStatus : "1",
|
||||||
|
enclosure : [],
|
||||||
|
equipmentCoding : '',
|
||||||
|
returnedBy : '',
|
||||||
|
returnTime : '',
|
||||||
|
returnStatus : "",
|
||||||
|
remarks : '',
|
||||||
|
creationTime : "",
|
||||||
|
equipmentName : '',
|
||||||
|
merchantName : '',
|
||||||
|
},
|
||||||
|
leaseStatusOptions:[{"fullName":"已租","id":"1"},{"fullName":"归还","id":"2"}],
|
||||||
|
leaseStatusProps:{"label":"fullName","value":"id" },
|
||||||
|
returnStatusOptions:[{"fullName":"正常","id":"1"},{"fullName":"异常","id":"2"}],
|
||||||
|
returnStatusProps:{"label":"fullName","value":"id" },
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {},
|
||||||
|
watch: {},
|
||||||
|
created() {
|
||||||
|
|
||||||
|
},
|
||||||
|
mounted() {},
|
||||||
|
methods: {
|
||||||
|
toDetail(defaultValue, modelId) {
|
||||||
|
if (!defaultValue) return
|
||||||
|
getConfigData(modelId).then(res => {
|
||||||
|
if (!res.data || !res.data.formData) return
|
||||||
|
let formData = JSON.parse(res.data.formData)
|
||||||
|
formData.popupType = 'general'
|
||||||
|
this.detailVisible = true
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.Detail.init(formData, modelId, defaultValue)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
dataInfo(dataAll){
|
||||||
|
let _dataAll =dataAll
|
||||||
|
this.dataForm = _dataAll
|
||||||
|
},
|
||||||
|
|
||||||
|
init(id) {
|
||||||
|
this.dataForm.id = id || 0;
|
||||||
|
this.visible = true;
|
||||||
|
this.$nextTick(() => {
|
||||||
|
if(this.dataForm.id){
|
||||||
|
this.loading = true
|
||||||
|
request({
|
||||||
|
url: '/api/example/EquipmentRentalRecords/detail/'+this.dataForm.id,
|
||||||
|
method: 'get'
|
||||||
|
}).then(res => {
|
||||||
|
this.dataInfo(res.data)
|
||||||
|
this.loading = false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
})
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
File diff suppressed because one or more lines are too long
@ -0,0 +1,610 @@
|
|||||||
|
<template>
|
||||||
|
<el-dialog :title="!dataForm.id ? '新建' : '编辑'" :close-on-click-modal="false" append-to-body :visible.sync="visible"
|
||||||
|
class="JNPF-dialog JNPF-dialog_center" lock-scroll width="1100px">
|
||||||
|
<el-row :gutter="15" class="">
|
||||||
|
<el-form ref="formRef" :model="dataForm" :rules="dataRule" size="small" label-width="100px"
|
||||||
|
label-position="right">
|
||||||
|
<template v-if="!loading">
|
||||||
|
<!-- 具体表单 -->
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="租赁单号" prop="leaseNumber">
|
||||||
|
<JnpfInput v-model="dataForm.leaseNumber" @change="changeData('leaseNumber', -1)"
|
||||||
|
placeholder="自动生成" disabled clearable :style='{ "width": "100%" }'>
|
||||||
|
</JnpfInput>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="开始时间" prop="startTime">
|
||||||
|
<JnpfDatePicker v-model="dataForm.startTime" @change="changeData('startTime', -1)"
|
||||||
|
:startTime="dateTime(false, 1, 1, '', '')" :endTime="dateTime(false, 1, 1, '', '')"
|
||||||
|
placeholder="请选择开始时间" clearable :style='{ "width": "100%" }' type="date"
|
||||||
|
format="yyyy-MM-dd">
|
||||||
|
</JnpfDatePicker>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="结束时间" prop="endTime">
|
||||||
|
<JnpfDatePicker v-model="dataForm.endTime" @change="changeData('endTime', -1)"
|
||||||
|
:startTime="dateTime(false, 1, 1, '', '')" :endTime="dateTime(false, 1, 1, '', '')"
|
||||||
|
placeholder="请选择结束时间" clearable :style='{ "width": "100%" }' type="date"
|
||||||
|
format="yyyy-MM-dd">
|
||||||
|
</JnpfDatePicker>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="设备名称" prop="equipmentId">
|
||||||
|
<JnpfPopupSelect v-model="dataForm.equipmentId" @change="changeData('equipmentId', -1)"
|
||||||
|
:rowIndex="null" :formData="dataForm" :templateJson="interfaceRes.equipmentId"
|
||||||
|
placeholder="请选择设备" hasPage propsValue="id" popupWidth="800px" popupTitle="选择数据设备"
|
||||||
|
popupType="dialog" relationField='name' field='equipmentId'
|
||||||
|
interfaceId="583213983499026949" :pageSize="20"
|
||||||
|
:columnOptions="equipmentIdcolumnOptions" clearable :style='{ "width": "100%" }'>
|
||||||
|
</JnpfPopupSelect>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="租赁总价" prop="totalLeasePrice">
|
||||||
|
<JnpfInput v-model="dataForm.totalLeasePrice" @change="changeData('totalLeasePrice', -1)"
|
||||||
|
placeholder="请输入" addonAfter="元" clearable :style='{ "width": "100%" }'>
|
||||||
|
</JnpfInput>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="租赁押金" prop="leaseDeposit">
|
||||||
|
<JnpfInput v-model="dataForm.leaseDeposit" @change="changeData('leaseDeposit', -1)"
|
||||||
|
placeholder="请输入" addonAfter="元" clearable :style='{ "width": "100%" }'>
|
||||||
|
</JnpfInput>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="商户名称" prop="merchantId">
|
||||||
|
<JnpfPopupSelect v-model="dataForm.merchantId" @change="changeData('merchantId', -1)"
|
||||||
|
:rowIndex="null" :formData="dataForm" :templateJson="interfaceRes.merchantId"
|
||||||
|
placeholder="请选择商户" hasPage propsValue="id" popupWidth="800px" popupTitle="选择数据"
|
||||||
|
popupType="dialog" relationField='cmp_nm' field='merchantId'
|
||||||
|
interfaceId="583216109528809989" :pageSize="20" :columnOptions="merchantIdcolumnOptions"
|
||||||
|
clearable :style='{ "width": "100%" }'>
|
||||||
|
</JnpfPopupSelect>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="联系人" prop="contacts">
|
||||||
|
<JnpfInput v-model="dataForm.contacts" @change="changeData('contacts', -1)"
|
||||||
|
placeholder="请输入联系人" clearable :style='{ "width": "100%" }'>
|
||||||
|
</JnpfInput>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="联系电话" prop="contactsPhone">
|
||||||
|
<JnpfInput v-model="dataForm.contactsPhone" @change="changeData('contactsPhone', -1)"
|
||||||
|
placeholder="请输入联系电话" clearable :style='{ "width": "100%" }'>
|
||||||
|
</JnpfInput>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="租赁状态" prop="leaseStatus">
|
||||||
|
<JnpfSelect v-model="dataForm.leaseStatus" :disabled="!changeId" @change="changeData('leaseStatus', -1)"
|
||||||
|
placeholder="请选择" clearable :style='{ "width": "100%" }' :options="leaseStatusOptions"
|
||||||
|
:props="leaseStatusProps">
|
||||||
|
</JnpfSelect>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="附件" prop="enclosure">
|
||||||
|
<JnpfUploadFile v-model="dataForm.enclosure" @change="changeData('enclosure', -1)"
|
||||||
|
:fileSize="10" sizeUnit="MB" :limit="9" pathType="defaultPath" :isAccount="0"
|
||||||
|
buttonText="点击上传">
|
||||||
|
</JnpfUploadFile>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="归还人" prop="returnedBy">
|
||||||
|
<JnpfInput v-model="dataForm.returnedBy" :disabled="!leaseStatus"
|
||||||
|
@change="changeData('returnedBy', -1)" placeholder="请输入" clearable
|
||||||
|
:style='{ "width": "100%" }'>
|
||||||
|
</JnpfInput>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="归还时间" prop="returnTime">
|
||||||
|
<JnpfDatePicker v-model="dataForm.returnTime" :disabled="!leaseStatus" @change="changeData('returnTime', -1)"
|
||||||
|
:startTime="dateTime(false, 1, 1, '', '')" :endTime="dateTime(false, 1, 1, '', '')"
|
||||||
|
placeholder="请选择归还时间" clearable :style='{ "width": "100%" }' type="date"
|
||||||
|
format="yyyy-MM-dd">
|
||||||
|
</JnpfDatePicker>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<jnpf-form-tip-item label="归还状态" prop="returnStatus">
|
||||||
|
<JnpfSelect v-model="dataForm.returnStatus" :disabled="!leaseStatus" @change="changeData('returnStatus', -1)"
|
||||||
|
placeholder="请选择归还状态" clearable :style='{ "width": "100%" }'
|
||||||
|
:options="returnStatusOptions" :props="returnStatusProps">
|
||||||
|
</JnpfSelect>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<jnpf-form-tip-item label="归还说明" prop="remarks">
|
||||||
|
<JnpfTextarea v-model="dataForm.remarks" :disabled="!leaseStatus" @change="changeData('remarks', -1)"
|
||||||
|
placeholder="请输入归还说明" :style='{ "width": "100%" }' true type="textarea"
|
||||||
|
:autosize='{ "minRows": 4, "maxRows": 4 }'>
|
||||||
|
</JnpfTextarea>
|
||||||
|
</jnpf-form-tip-item>
|
||||||
|
</el-col>
|
||||||
|
<!-- 表单结束 -->
|
||||||
|
</template>
|
||||||
|
</el-form>
|
||||||
|
<SelectDialog v-if="selectDialogVisible" :config="currTableConf" :formData="dataForm" ref="selectDialog"
|
||||||
|
@select="addForSelect" @close="selectDialogVisible = false" />
|
||||||
|
</el-row>
|
||||||
|
<span slot="footer" class="dialog-footer">
|
||||||
|
<div class="upAndDown-button" v-if="dataForm.id">
|
||||||
|
<el-button @click="prev" :disabled='prevDis'>
|
||||||
|
{{ '上一条' }}
|
||||||
|
</el-button>
|
||||||
|
<el-button @click="next" :disabled='nextDis'>
|
||||||
|
{{ '下一条' }}
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
<el-button type="primary" @click="dataFormSubmit(2)" :loading="continueBtnLoading">
|
||||||
|
{{ !dataForm.id ? '确定并新增' : '确定并继续' }}</el-button>
|
||||||
|
<el-button @click="visible = false"> 取 消</el-button>
|
||||||
|
<el-button type="primary" @click="dataFormSubmit()" :loading="btnLoading"> 确 定</el-button>
|
||||||
|
</span>
|
||||||
|
</el-dialog>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import request from '@/utils/request'
|
||||||
|
import { mapGetters } from "vuex";
|
||||||
|
import { getDataInterfaceRes } from '@/api/systemData/dataInterface'
|
||||||
|
import { getDictionaryDataSelector } from '@/api/systemData/dictionary'
|
||||||
|
import { getDefaultCurrentValueUserId } from '@/api/permission/user'
|
||||||
|
import { getDefaultCurrentValueDepartmentId } from '@/api/permission/organize'
|
||||||
|
import { getDateDay, getLaterData, getBeforeData, getBeforeTime, getLaterTime } from '@/components/Generator/utils/index.js'
|
||||||
|
import { thousandsFormat } from "@/components/Generator/utils/index"
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
|
},
|
||||||
|
props: [],
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
dataFormSubmitType: 0,
|
||||||
|
continueBtnLoading: false,
|
||||||
|
index: 0,
|
||||||
|
prevDis: false,
|
||||||
|
nextDis: false,
|
||||||
|
allList: [],
|
||||||
|
visible: false,
|
||||||
|
loading: false,
|
||||||
|
btnLoading: false,
|
||||||
|
formRef: 'formRef',
|
||||||
|
setting: {},
|
||||||
|
eventType: '',
|
||||||
|
userBoxVisible: false,
|
||||||
|
selectDialogVisible: false,
|
||||||
|
currTableConf: {},
|
||||||
|
dataValueAll: {},
|
||||||
|
addTableConf: {
|
||||||
|
},
|
||||||
|
//可选范围默认值
|
||||||
|
ableAll: {
|
||||||
|
},
|
||||||
|
tableRows: {
|
||||||
|
},
|
||||||
|
Vmodel: "",
|
||||||
|
currVmodel: "",
|
||||||
|
dataForm: {
|
||||||
|
leaseNumber: undefined,
|
||||||
|
startTime: undefined,
|
||||||
|
endTime: undefined,
|
||||||
|
equipmentId: undefined,
|
||||||
|
totalLeasePrice: undefined,
|
||||||
|
leaseDeposit: undefined,
|
||||||
|
merchantId: undefined,
|
||||||
|
contacts: undefined,
|
||||||
|
contactsPhone: undefined,
|
||||||
|
leaseStatus: "1",
|
||||||
|
enclosure: [],
|
||||||
|
equipmentCoding: undefined,
|
||||||
|
returnedBy: undefined,
|
||||||
|
returnTime: undefined,
|
||||||
|
returnStatus: undefined,
|
||||||
|
remarks: undefined,
|
||||||
|
creationTime: undefined,
|
||||||
|
equipmentName: undefined,
|
||||||
|
merchantName: undefined,
|
||||||
|
version: 0,
|
||||||
|
},
|
||||||
|
tableRequiredData: {},
|
||||||
|
dataRule:
|
||||||
|
{
|
||||||
|
startTime: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: '请选择开始时间',
|
||||||
|
trigger: 'change'
|
||||||
|
},
|
||||||
|
],
|
||||||
|
endTime: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: '请选择结束时间',
|
||||||
|
trigger: 'change'
|
||||||
|
},
|
||||||
|
],
|
||||||
|
equipmentId: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: '请选择设备',
|
||||||
|
trigger: 'change'
|
||||||
|
},
|
||||||
|
],
|
||||||
|
totalLeasePrice: [
|
||||||
|
{
|
||||||
|
pattern: /^([1-9][\d]*|0)(\.[\d]+)?$/,
|
||||||
|
message: '请输入正确的金额',
|
||||||
|
trigger: 'blur'
|
||||||
|
},
|
||||||
|
],
|
||||||
|
leaseDeposit: [
|
||||||
|
{
|
||||||
|
pattern: /^([1-9][\d]*|0)(\.[\d]+)?$/,
|
||||||
|
message: '请输入正确的金额',
|
||||||
|
trigger: 'blur'
|
||||||
|
},
|
||||||
|
],
|
||||||
|
merchantId: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: '请选择商户',
|
||||||
|
trigger: 'change'
|
||||||
|
},
|
||||||
|
],
|
||||||
|
contactsPhone: [
|
||||||
|
{
|
||||||
|
pattern: /^1[3456789]\d{9}$|^0\d{2,3}-?\d{7,8}$/,
|
||||||
|
message: '请输入正确的联系方式',
|
||||||
|
trigger: 'blur'
|
||||||
|
},
|
||||||
|
],
|
||||||
|
leaseStatus: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: '请至少选择一个',
|
||||||
|
trigger: 'change'
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
equipmentIdcolumnOptions: [{ "label": "设备编码", "value": "code" }, { "label": "设备名称", "value": "name" }, { "label": "设备品牌", "value": "brand" }, { "label": "设备型号", "value": "model" }, { "label": "供应商", "value": "supplier" },],
|
||||||
|
merchantIdcolumnOptions: [{ "label": "公司名称", "value": "cmp_nm" }, { "label": "公司类型", "value": "comp_type" }, { "label": "成立日期", "value": "incorporation_date" }, { "label": "办公地址", "value": "office_address" },],
|
||||||
|
leaseStatusOptions: [{ "fullName": "已租", "id": "1" }, { "fullName": "归还", "id": "2" }],
|
||||||
|
leaseStatusProps: { "label": "fullName", "value": "id" },
|
||||||
|
returnStatusOptions: [{ "fullName": "正常", "id": "1" }, { "fullName": "异常", "id": "2" }],
|
||||||
|
returnStatusProps: { "label": "fullName", "value": "id" },
|
||||||
|
childIndex: -1,
|
||||||
|
isEdit: false,
|
||||||
|
interfaceRes: {
|
||||||
|
leaseNumber: [],
|
||||||
|
startTime: [],
|
||||||
|
endTime: [],
|
||||||
|
equipmentId: [],
|
||||||
|
totalLeasePrice: [],
|
||||||
|
leaseDeposit: [],
|
||||||
|
merchantId: [],
|
||||||
|
contacts: [],
|
||||||
|
contactsPhone: [],
|
||||||
|
leaseStatus: [],
|
||||||
|
enclosure: [],
|
||||||
|
equipmentCoding: [],
|
||||||
|
returnedBy: [],
|
||||||
|
returnTime: [],
|
||||||
|
returnStatus: [],
|
||||||
|
remarks: [],
|
||||||
|
creationTime: [],
|
||||||
|
equipmentName: [],
|
||||||
|
merchantName: [],
|
||||||
|
},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
leaseStatus() {
|
||||||
|
return this.dataForm.leaseStatus === '2';
|
||||||
|
},
|
||||||
|
changeId(){
|
||||||
|
return this.dataForm.id;
|
||||||
|
},
|
||||||
|
...mapGetters(['userInfo'])
|
||||||
|
},
|
||||||
|
watch: {},
|
||||||
|
created() {
|
||||||
|
this.dataAll()
|
||||||
|
this.initDefaultData()
|
||||||
|
this.dataValueAll = JSON.parse(JSON.stringify(this.dataForm))
|
||||||
|
},
|
||||||
|
mounted() { },
|
||||||
|
methods: {
|
||||||
|
prev() {
|
||||||
|
this.index--
|
||||||
|
if (this.index === 0) {
|
||||||
|
this.prevDis = true
|
||||||
|
}
|
||||||
|
this.nextDis = false
|
||||||
|
for (let index = 0; index < this.allList.length; index++) {
|
||||||
|
const element = this.allList[index];
|
||||||
|
if (this.index == index) {
|
||||||
|
this.getInfo(element.id)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
next() {
|
||||||
|
this.index++
|
||||||
|
if (this.index === this.allList.length - 1) {
|
||||||
|
this.nextDis = true
|
||||||
|
}
|
||||||
|
this.prevDis = false
|
||||||
|
for (let index = 0; index < this.allList.length; index++) {
|
||||||
|
const element = this.allList[index];
|
||||||
|
if (this.index == index) {
|
||||||
|
this.getInfo(element.id)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getInfo(id) {
|
||||||
|
request({
|
||||||
|
url: '/api/example/EquipmentRentalRecords/' + id,
|
||||||
|
method: 'get'
|
||||||
|
}).then(res => {
|
||||||
|
this.dataInfo(res.data)
|
||||||
|
});
|
||||||
|
},
|
||||||
|
goBack() {
|
||||||
|
this.visible = false
|
||||||
|
this.$emit('refreshDataList', true)
|
||||||
|
},
|
||||||
|
changeData(model, index) {
|
||||||
|
this.isEdit = false
|
||||||
|
this.childIndex = index
|
||||||
|
let modelAll = model.split("-");
|
||||||
|
let faceMode = "";
|
||||||
|
for (let i = 0; i < modelAll.length; i++) {
|
||||||
|
faceMode += modelAll[i];
|
||||||
|
}
|
||||||
|
for (let key in this.interfaceRes) {
|
||||||
|
if (key != faceMode) {
|
||||||
|
let faceReList = this.interfaceRes[key]
|
||||||
|
for (let i = 0; i < faceReList.length; i++) {
|
||||||
|
if (faceReList[i].relationField == model) {
|
||||||
|
let options = 'get' + key + 'Options';
|
||||||
|
if (this[options]) {
|
||||||
|
this[options]()
|
||||||
|
}
|
||||||
|
this.changeData(key, index)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
changeDataFormData(type, data, model, index, defaultValue) {
|
||||||
|
if (!this.isEdit) {
|
||||||
|
if (type == 2) {
|
||||||
|
for (let i = 0; i < this.dataForm[data].length; i++) {
|
||||||
|
if (index == -1) {
|
||||||
|
this.dataForm[data][i][model] = defaultValue
|
||||||
|
} else if (index == i) {
|
||||||
|
this.dataForm[data][i][model] = defaultValue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.dataForm[data] = defaultValue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
dataAll() {
|
||||||
|
},
|
||||||
|
clearData() {
|
||||||
|
this.dataForm = JSON.parse(JSON.stringify(this.dataValueAll))
|
||||||
|
},
|
||||||
|
init(id, isDetail, allList) {
|
||||||
|
this.prevDis = false
|
||||||
|
this.nextDis = false
|
||||||
|
this.allList = allList || []
|
||||||
|
if (allList.length) {
|
||||||
|
this.index = this.allList.findIndex(item => item.id === id)
|
||||||
|
if (this.index == 0) {
|
||||||
|
this.prevDis = true
|
||||||
|
}
|
||||||
|
if (this.index == this.allList.length - 1) {
|
||||||
|
this.nextDis = true
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.prevDis = true
|
||||||
|
this.nextDis = true
|
||||||
|
}
|
||||||
|
this.dataForm.id = id || 0;
|
||||||
|
this.visible = true;
|
||||||
|
this.$nextTick(() => {
|
||||||
|
if (this.dataForm.id) {
|
||||||
|
this.loading = true
|
||||||
|
request({
|
||||||
|
url: '/api/example/EquipmentRentalRecords/' + this.dataForm.id,
|
||||||
|
method: 'get'
|
||||||
|
}).then(res => {
|
||||||
|
this.dataInfo(res.data)
|
||||||
|
this.loading = false
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
this.clearData()
|
||||||
|
this.initDefaultData()
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.$store.commit('generator/UPDATE_RELATION_DATA', {})
|
||||||
|
},
|
||||||
|
//初始化默认数据
|
||||||
|
initDefaultData() {
|
||||||
|
|
||||||
|
},
|
||||||
|
// 表单提交
|
||||||
|
dataFormSubmit(type) {
|
||||||
|
this.dataFormSubmitType = type ? type : 0
|
||||||
|
this.$refs['formRef'].validate((valid) => {
|
||||||
|
if (valid) {
|
||||||
|
this.request()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
request() {
|
||||||
|
let _data = this.dataList()
|
||||||
|
if (this.dataFormSubmitType == 2) {
|
||||||
|
this.continueBtnLoading = true
|
||||||
|
} else {
|
||||||
|
this.btnLoading = true
|
||||||
|
}
|
||||||
|
if (!this.dataForm.id) {
|
||||||
|
request({
|
||||||
|
url: '/api/example/EquipmentRentalRecords',
|
||||||
|
method: 'post',
|
||||||
|
data: _data
|
||||||
|
}).then((res) => {
|
||||||
|
this.$message({
|
||||||
|
message: res.msg,
|
||||||
|
type: 'success',
|
||||||
|
duration: 1000,
|
||||||
|
onClose: () => {
|
||||||
|
if (this.dataFormSubmitType == 2) {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.clearData()
|
||||||
|
this.initDefaultData()
|
||||||
|
})
|
||||||
|
this.continueBtnLoading = false
|
||||||
|
return
|
||||||
|
}
|
||||||
|
this.visible = false
|
||||||
|
this.btnLoading = false
|
||||||
|
this.$emit('refresh', true)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}).catch(() => {
|
||||||
|
this.btnLoading = false
|
||||||
|
this.continueBtnLoading = false
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
request({
|
||||||
|
url: '/api/example/EquipmentRentalRecords/' + this.dataForm.id,
|
||||||
|
method: 'PUT',
|
||||||
|
data: _data
|
||||||
|
}).then((res) => {
|
||||||
|
this.$message({
|
||||||
|
message: res.msg,
|
||||||
|
type: 'success',
|
||||||
|
duration: 1000,
|
||||||
|
onClose: () => {
|
||||||
|
if (this.dataFormSubmitType == 2) return this.continueBtnLoading = false
|
||||||
|
this.visible = false
|
||||||
|
this.btnLoading = false
|
||||||
|
this.$emit('refresh', true)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}).catch(() => {
|
||||||
|
this.btnLoading = false
|
||||||
|
this.continueBtnLoading = false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
openSelectDialog(key) {
|
||||||
|
this.currTableConf = this.addTableConf[key]
|
||||||
|
this.currVmodel = key
|
||||||
|
this.selectDialogVisible = true
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.selectDialog.init()
|
||||||
|
})
|
||||||
|
},
|
||||||
|
addForSelect(data) {
|
||||||
|
for (let i = 0; i < data.length; i++) {
|
||||||
|
let t = data[i]
|
||||||
|
if (this['get' + this.currVmodel]) {
|
||||||
|
this['get' + this.currVmodel](t)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
dateTime(timeRule, timeType, timeTarget, timeValueData, dataValue) {
|
||||||
|
let timeDataValue = null;
|
||||||
|
let timeValue = Number(timeValueData)
|
||||||
|
if (timeRule) {
|
||||||
|
if (timeType == 1) {
|
||||||
|
timeDataValue = timeValue
|
||||||
|
} else if (timeType == 2) {
|
||||||
|
timeDataValue = dataValue
|
||||||
|
} else if (timeType == 3) {
|
||||||
|
timeDataValue = new Date().getTime()
|
||||||
|
} else if (timeType == 4) {
|
||||||
|
let previousDate = '';
|
||||||
|
if (timeTarget == 1 || timeTarget == 2) {
|
||||||
|
previousDate = getDateDay(timeTarget, timeType, timeValue)
|
||||||
|
timeDataValue = new Date(previousDate).getTime()
|
||||||
|
} else if (timeTarget == 3) {
|
||||||
|
previousDate = getBeforeData(timeValue)
|
||||||
|
timeDataValue = new Date(previousDate).getTime()
|
||||||
|
} else {
|
||||||
|
timeDataValue = getBeforeTime(timeTarget, timeValue).getTime()
|
||||||
|
}
|
||||||
|
} else if (timeType == 5) {
|
||||||
|
let previousDate = '';
|
||||||
|
if (timeTarget == 1 || timeTarget == 2) {
|
||||||
|
previousDate = getDateDay(timeTarget, timeType, timeValue)
|
||||||
|
timeDataValue = new Date(previousDate).getTime()
|
||||||
|
} else if (timeTarget == 3) {
|
||||||
|
previousDate = getLaterData(timeValue)
|
||||||
|
timeDataValue = new Date(previousDate).getTime()
|
||||||
|
} else {
|
||||||
|
timeDataValue = getLaterTime(timeTarget, timeValue).getTime()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return timeDataValue;
|
||||||
|
},
|
||||||
|
time(timeRule, timeType, timeTarget, timeValue, formatType, dataValue) {
|
||||||
|
let format = formatType == 'HH:mm' ? 'HH:mm:00' : formatType
|
||||||
|
let timeDataValue = null
|
||||||
|
if (timeRule) {
|
||||||
|
if (timeType == 1) {
|
||||||
|
timeDataValue = timeValue || '00:00:00'
|
||||||
|
if (timeDataValue.split(':').length == 3) {
|
||||||
|
timeDataValue = timeDataValue
|
||||||
|
} else {
|
||||||
|
timeDataValue = timeDataValue + ':00'
|
||||||
|
}
|
||||||
|
} else if (timeType == 2) {
|
||||||
|
timeDataValue = dataValue
|
||||||
|
} else if (timeType == 3) {
|
||||||
|
timeDataValue = this.jnpf.toDate(new Date(), format)
|
||||||
|
} else if (timeType == 4) {
|
||||||
|
let previousDate = '';
|
||||||
|
previousDate = getBeforeTime(timeTarget, timeValue)
|
||||||
|
timeDataValue = this.jnpf.toDate(previousDate, format)
|
||||||
|
} else if (timeType == 5) {
|
||||||
|
let previousDate = '';
|
||||||
|
previousDate = getLaterTime(timeTarget, timeValue)
|
||||||
|
timeDataValue = this.jnpf.toDate(previousDate, format)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return timeDataValue;
|
||||||
|
},
|
||||||
|
dataList() {
|
||||||
|
var _data = this.dataForm;
|
||||||
|
return _data;
|
||||||
|
},
|
||||||
|
dataInfo(dataAll) {
|
||||||
|
let _dataAll = dataAll
|
||||||
|
this.dataForm = _dataAll
|
||||||
|
this.isEdit = true
|
||||||
|
this.dataAll()
|
||||||
|
this.childIndex = -1
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
File diff suppressed because one or more lines are too long
Loading…
Reference in new issue