|
|
|
|
@ -37,6 +37,10 @@ export default {
|
|
|
|
|
{
|
|
|
|
|
show: this.type !== 'change',
|
|
|
|
|
key: "file"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
show: this.type === 'change',
|
|
|
|
|
key: "buchongwenjian"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
{
|
|
|
|
|
@ -60,7 +64,7 @@ export default {
|
|
|
|
|
valueFormat: "yyyy-MM",
|
|
|
|
|
}
|
|
|
|
|
}),
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
{
|
|
|
|
|
disabled: true,
|
|
|
|
|
@ -71,6 +75,16 @@ export default {
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<div style="padding: 10px 20px;">
|
|
|
|
|
<el-card shadow="never" body-style={{'padding': '10px'}}>
|
|
|
|
|
<el-page-header content={(() => {
|
|
|
|
|
let title = new Map([
|
|
|
|
|
["add", "签订合同"],
|
|
|
|
|
["editor", "修改合同"],
|
|
|
|
|
["change", "合同变更"],
|
|
|
|
|
]);
|
|
|
|
|
return title.get(this.type);
|
|
|
|
|
})()} on={{['back']: _ => {this.$router.go(-1)}}}></el-page-header>
|
|
|
|
|
</el-card>
|
|
|
|
|
<div
|
|
|
|
|
class="show-old-data-btn"
|
|
|
|
|
style={{
|
|
|
|
|
@ -92,15 +106,6 @@ export default {
|
|
|
|
|
>
|
|
|
|
|
<el-card style="margin-top: 20px;">
|
|
|
|
|
<div slot="header" style="display: flex;align-items: center;">
|
|
|
|
|
<i
|
|
|
|
|
class="el-icon-back"
|
|
|
|
|
style="padding-right: 20px;font-size: 20px;font-weight: 600;cursor: pointer;"
|
|
|
|
|
on={{
|
|
|
|
|
["click"]: (_) => {
|
|
|
|
|
this.$router.go(-1);
|
|
|
|
|
},
|
|
|
|
|
}}
|
|
|
|
|
></i>
|
|
|
|
|
<p>合同变更-原数据</p>
|
|
|
|
|
|
|
|
|
|
<el-link
|
|
|
|
|
@ -220,133 +225,6 @@ export default {
|
|
|
|
|
</Card>
|
|
|
|
|
))}
|
|
|
|
|
</div>
|
|
|
|
|
{/*<xy-table
|
|
|
|
|
height="300"
|
|
|
|
|
isHandlerKey={false}
|
|
|
|
|
is-page={false}
|
|
|
|
|
list={leasePlans}
|
|
|
|
|
table-item={[
|
|
|
|
|
{
|
|
|
|
|
width: 46,
|
|
|
|
|
type: "index"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "zujindiyicidaoweishijian",
|
|
|
|
|
label: "租金到位时间",
|
|
|
|
|
width: 160,
|
|
|
|
|
customFn: (row) => {
|
|
|
|
|
return (
|
|
|
|
|
<el-date-picker
|
|
|
|
|
style="width: 100%;"
|
|
|
|
|
size="small"
|
|
|
|
|
vModel={row.zujindiyicidaoweishijian}
|
|
|
|
|
type="date"
|
|
|
|
|
value-format="yyyy-MM-dd"
|
|
|
|
|
placeholder="选择日期"
|
|
|
|
|
/>
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "yingshou",
|
|
|
|
|
label: "应收",
|
|
|
|
|
width: 160,
|
|
|
|
|
customFn: (row) => {
|
|
|
|
|
return (
|
|
|
|
|
<el-input-number
|
|
|
|
|
style="width: 100%;"
|
|
|
|
|
size="small"
|
|
|
|
|
controls={false}
|
|
|
|
|
precision={2}
|
|
|
|
|
vModel={row.yingshou}
|
|
|
|
|
size="small"
|
|
|
|
|
></el-input-number>
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "shijidaozhang",
|
|
|
|
|
label: "实际到账",
|
|
|
|
|
width: 160,
|
|
|
|
|
customFn: (row) => {
|
|
|
|
|
return (
|
|
|
|
|
<el-input-number
|
|
|
|
|
style="width: 100%;"
|
|
|
|
|
size="small"
|
|
|
|
|
controls={false}
|
|
|
|
|
precision={2}
|
|
|
|
|
vModel={row.shijidaozhang}
|
|
|
|
|
size="small"
|
|
|
|
|
></el-input-number>
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "weidaoweiyuanyin",
|
|
|
|
|
label: "未到位原因",
|
|
|
|
|
width: 180,
|
|
|
|
|
customFn: (row) => {
|
|
|
|
|
return (
|
|
|
|
|
<el-input
|
|
|
|
|
style="width: 100%;"
|
|
|
|
|
size="small"
|
|
|
|
|
vModel={row.weidaoweiyuanyin}
|
|
|
|
|
size="small"
|
|
|
|
|
></el-input>
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "shijidaozhangriqi",
|
|
|
|
|
label: "租金应到时间",
|
|
|
|
|
width: 160,
|
|
|
|
|
customFn: (row) => {
|
|
|
|
|
return (
|
|
|
|
|
<el-date-picker
|
|
|
|
|
style="width: 100%;"
|
|
|
|
|
size="small"
|
|
|
|
|
vModel={row.shijidaozhangriqi}
|
|
|
|
|
type="date"
|
|
|
|
|
value-format="yyyy-MM-dd"
|
|
|
|
|
placeholder="选择日期"
|
|
|
|
|
/>
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "operate",
|
|
|
|
|
label: "操作",
|
|
|
|
|
minWidth: 120,
|
|
|
|
|
customFn: (row, { $index }) => {
|
|
|
|
|
return (
|
|
|
|
|
<div style="display: flex;">
|
|
|
|
|
<Button
|
|
|
|
|
type="error"
|
|
|
|
|
size="small"
|
|
|
|
|
ghost={true}
|
|
|
|
|
on={{
|
|
|
|
|
["click"]: (_) => {
|
|
|
|
|
this.$confirm("确定删除?").then((_) => {
|
|
|
|
|
this.leasePlans.splice($index, 1);
|
|
|
|
|
|
|
|
|
|
if (row.id) {
|
|
|
|
|
destroy(
|
|
|
|
|
{ table_name: "lease_plans", id: row.id },
|
|
|
|
|
false
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
}}
|
|
|
|
|
>
|
|
|
|
|
删除
|
|
|
|
|
</Button>
|
|
|
|
|
</div>
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
]}
|
|
|
|
|
></xy-table> */}
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
{oldDialog.render()}
|
|
|
|
|
@ -361,15 +239,6 @@ export default {
|
|
|
|
|
>
|
|
|
|
|
<el-card style="margin-top: 20px;">
|
|
|
|
|
<div slot="header" style="display: flex;align-items: center;">
|
|
|
|
|
<i
|
|
|
|
|
class="el-icon-back"
|
|
|
|
|
style="padding-right: 20px;font-size: 20px;font-weight: 600;cursor: pointer;"
|
|
|
|
|
on={{
|
|
|
|
|
["click"]: (_) => {
|
|
|
|
|
this.$router.go(-1);
|
|
|
|
|
},
|
|
|
|
|
}}
|
|
|
|
|
></i>
|
|
|
|
|
<p>
|
|
|
|
|
{(() => {
|
|
|
|
|
let title = new Map([
|
|
|
|
|
@ -616,133 +485,6 @@ export default {
|
|
|
|
|
</Card>
|
|
|
|
|
))}
|
|
|
|
|
</div>
|
|
|
|
|
{/*<xy-table
|
|
|
|
|
height="300"
|
|
|
|
|
isHandlerKey={false}
|
|
|
|
|
is-page={false}
|
|
|
|
|
list={leasePlans}
|
|
|
|
|
table-item={[
|
|
|
|
|
{
|
|
|
|
|
width: 46,
|
|
|
|
|
type: "index"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "zujindiyicidaoweishijian",
|
|
|
|
|
label: "租金到位时间",
|
|
|
|
|
width: 160,
|
|
|
|
|
customFn: (row) => {
|
|
|
|
|
return (
|
|
|
|
|
<el-date-picker
|
|
|
|
|
style="width: 100%;"
|
|
|
|
|
size="small"
|
|
|
|
|
vModel={row.zujindiyicidaoweishijian}
|
|
|
|
|
type="date"
|
|
|
|
|
value-format="yyyy-MM-dd"
|
|
|
|
|
placeholder="选择日期"
|
|
|
|
|
/>
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "yingshou",
|
|
|
|
|
label: "应收",
|
|
|
|
|
width: 160,
|
|
|
|
|
customFn: (row) => {
|
|
|
|
|
return (
|
|
|
|
|
<el-input-number
|
|
|
|
|
style="width: 100%;"
|
|
|
|
|
size="small"
|
|
|
|
|
controls={false}
|
|
|
|
|
precision={2}
|
|
|
|
|
vModel={row.yingshou}
|
|
|
|
|
size="small"
|
|
|
|
|
></el-input-number>
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "shijidaozhang",
|
|
|
|
|
label: "实际到账",
|
|
|
|
|
width: 160,
|
|
|
|
|
customFn: (row) => {
|
|
|
|
|
return (
|
|
|
|
|
<el-input-number
|
|
|
|
|
style="width: 100%;"
|
|
|
|
|
size="small"
|
|
|
|
|
controls={false}
|
|
|
|
|
precision={2}
|
|
|
|
|
vModel={row.shijidaozhang}
|
|
|
|
|
size="small"
|
|
|
|
|
></el-input-number>
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "weidaoweiyuanyin",
|
|
|
|
|
label: "未到位原因",
|
|
|
|
|
width: 180,
|
|
|
|
|
customFn: (row) => {
|
|
|
|
|
return (
|
|
|
|
|
<el-input
|
|
|
|
|
style="width: 100%;"
|
|
|
|
|
size="small"
|
|
|
|
|
vModel={row.weidaoweiyuanyin}
|
|
|
|
|
size="small"
|
|
|
|
|
></el-input>
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "shijidaozhangriqi",
|
|
|
|
|
label: "租金应到时间",
|
|
|
|
|
width: 160,
|
|
|
|
|
customFn: (row) => {
|
|
|
|
|
return (
|
|
|
|
|
<el-date-picker
|
|
|
|
|
style="width: 100%;"
|
|
|
|
|
size="small"
|
|
|
|
|
vModel={row.shijidaozhangriqi}
|
|
|
|
|
type="date"
|
|
|
|
|
value-format="yyyy-MM-dd"
|
|
|
|
|
placeholder="选择日期"
|
|
|
|
|
/>
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "operate",
|
|
|
|
|
label: "操作",
|
|
|
|
|
minWidth: 120,
|
|
|
|
|
customFn: (row, { $index }) => {
|
|
|
|
|
return (
|
|
|
|
|
<div style="display: flex;">
|
|
|
|
|
<Button
|
|
|
|
|
type="error"
|
|
|
|
|
size="small"
|
|
|
|
|
ghost={true}
|
|
|
|
|
on={{
|
|
|
|
|
["click"]: (_) => {
|
|
|
|
|
this.$confirm("确定删除?").then((_) => {
|
|
|
|
|
this.leasePlans.splice($index, 1);
|
|
|
|
|
|
|
|
|
|
if (row.id) {
|
|
|
|
|
destroy(
|
|
|
|
|
{ table_name: "lease_plans", id: row.id },
|
|
|
|
|
false
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
}}
|
|
|
|
|
>
|
|
|
|
|
删除
|
|
|
|
|
</Button>
|
|
|
|
|
</div>
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
]}
|
|
|
|
|
></xy-table> */}
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
{dialog.render()}
|
|
|
|
|
@ -750,6 +492,147 @@ export default {
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
/*
|
|
|
|
|
历史变更
|
|
|
|
|
*/
|
|
|
|
|
}
|
|
|
|
|
<div style="display: grid;grid-template-columns: repeat(2, 1fr);grid-gap: 10px;margin-top: 10px;">
|
|
|
|
|
{
|
|
|
|
|
this.logLeases?.map(item => (
|
|
|
|
|
<el-card>
|
|
|
|
|
<div slot="header" style="display: flex;align-items: center;">
|
|
|
|
|
<p>
|
|
|
|
|
{ item.biangengshijian } 变更
|
|
|
|
|
</p>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div style="margin-bottom: 10px;">
|
|
|
|
|
<div style="display: flex;margin-bottom: 10px;align-items: center;height: 36px;">
|
|
|
|
|
<p style="font-weight: 700;line-height: 2;">资产信息</p>
|
|
|
|
|
</div>
|
|
|
|
|
<xy-table
|
|
|
|
|
list={item.id_hisleases_to_assets_hislease_id_relation}
|
|
|
|
|
height="300"
|
|
|
|
|
isHandlerKey={false}
|
|
|
|
|
is-page={false}
|
|
|
|
|
table-item={[
|
|
|
|
|
{
|
|
|
|
|
prop: "name",
|
|
|
|
|
label: "地块名称",
|
|
|
|
|
width: 0,
|
|
|
|
|
fixed: "left",
|
|
|
|
|
align: "left",
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "zuoluo",
|
|
|
|
|
label: "坐落",
|
|
|
|
|
width: 0,
|
|
|
|
|
align: "left",
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "shijimianji",
|
|
|
|
|
label: "实际面积(m²)",
|
|
|
|
|
width: 0,
|
|
|
|
|
align: "center",
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
prop: "chuzumianji",
|
|
|
|
|
label: "出租面积(m²)",
|
|
|
|
|
width: 160
|
|
|
|
|
},
|
|
|
|
|
]}
|
|
|
|
|
></xy-table>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
{/* 租金收取计划 */}
|
|
|
|
|
<div style="margin-bottom: 10px;">
|
|
|
|
|
<div style="display: flex;margin-bottom: 10px;align-items: center;height: 36px;">
|
|
|
|
|
<p style="font-weight: 700;line-height: 2;">
|
|
|
|
|
租金收取计划
|
|
|
|
|
</p>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div style="display: grid;grid-gap: 10px;grid-template-columns: repeat(3, 1fr);">
|
|
|
|
|
{item.id_hislease_plans_hislease_id_relation?.map((leasePlan, index) => (
|
|
|
|
|
<Card padding={10}>
|
|
|
|
|
<div
|
|
|
|
|
slot="title"
|
|
|
|
|
style="display: flex;align-items: center;height: 100%;"
|
|
|
|
|
>
|
|
|
|
|
<p style="font-size: 14px;">
|
|
|
|
|
租金收取计划{index + 1}
|
|
|
|
|
</p>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div>
|
|
|
|
|
<el-form
|
|
|
|
|
disabled={true}
|
|
|
|
|
ref={"leasePlan" + index}
|
|
|
|
|
size="mini"
|
|
|
|
|
label-position="top"
|
|
|
|
|
props={{
|
|
|
|
|
model: leasePlan,
|
|
|
|
|
}}
|
|
|
|
|
>
|
|
|
|
|
<el-form-item label="租金到位时间">
|
|
|
|
|
<el-date-picker
|
|
|
|
|
style="width: 100%;"
|
|
|
|
|
value-format="yyyy-MM-dd"
|
|
|
|
|
vModel={leasePlan.zujindiyicidaoweishijian}
|
|
|
|
|
></el-date-picker>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="应收租金">
|
|
|
|
|
<el-input-number
|
|
|
|
|
controls={false}
|
|
|
|
|
precision={2}
|
|
|
|
|
style="width: 100%"
|
|
|
|
|
vModel={leasePlan.yingshou}
|
|
|
|
|
></el-input-number>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-form>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</Card>
|
|
|
|
|
))}
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div>
|
|
|
|
|
{
|
|
|
|
|
new CreateDialog(this,
|
|
|
|
|
[
|
|
|
|
|
{
|
|
|
|
|
show: true,
|
|
|
|
|
key: "qiandingnianyue",
|
|
|
|
|
label: "签订年月",
|
|
|
|
|
render: h("el-date-picker", {
|
|
|
|
|
style: { width: "100%" },
|
|
|
|
|
props: {
|
|
|
|
|
disable: true,
|
|
|
|
|
type: "month",
|
|
|
|
|
placeholder: "请选择签订年月",
|
|
|
|
|
value: _this.form.qiandingnianyue,
|
|
|
|
|
format: "yyyy-MM",
|
|
|
|
|
valueFormat: "yyyy-MM",
|
|
|
|
|
}
|
|
|
|
|
}),
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
{
|
|
|
|
|
fromFile: item._file,
|
|
|
|
|
fromData: item,
|
|
|
|
|
disabled: true
|
|
|
|
|
},
|
|
|
|
|
false).render()
|
|
|
|
|
}
|
|
|
|
|
</div>
|
|
|
|
|
</el-card>
|
|
|
|
|
))
|
|
|
|
|
}
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<el-drawer
|
|
|
|
|
title="土地列表"
|
|
|
|
|
append-to-body={true}
|
|
|
|
|
@ -1244,6 +1127,8 @@ export default {
|
|
|
|
|
originalForm: {},
|
|
|
|
|
rules: {},
|
|
|
|
|
file: {},
|
|
|
|
|
|
|
|
|
|
logLeases: []
|
|
|
|
|
};
|
|
|
|
|
},
|
|
|
|
|
methods: {
|
|
|
|
|
@ -1292,6 +1177,30 @@ export default {
|
|
|
|
|
this.leasePlans = res.id_lease_plans_lease_id_relation;
|
|
|
|
|
if (this.type === 'change') {
|
|
|
|
|
this.oldLeasePlans = deepCopy(this.leasePlans)
|
|
|
|
|
|
|
|
|
|
const hisLease = await index({
|
|
|
|
|
table_name: "leases_histories",
|
|
|
|
|
page: 1,
|
|
|
|
|
page_size: 99,
|
|
|
|
|
filter: [
|
|
|
|
|
{
|
|
|
|
|
key: "original_lease_id",
|
|
|
|
|
op: "eq",
|
|
|
|
|
value: this.id
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
})
|
|
|
|
|
hisLease.data.forEach(item => {
|
|
|
|
|
item._file = {};
|
|
|
|
|
this.formInfo.forEach((i) => {
|
|
|
|
|
if (i.edit_input === "file") {
|
|
|
|
|
}
|
|
|
|
|
if (i.edit_input === "files") {
|
|
|
|
|
item._file[i.field] = res[`${i.field}_upload_details`];
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
})
|
|
|
|
|
this.logLeases = hisLease.data;
|
|
|
|
|
}
|
|
|
|
|
this.originalForm = deepCopy(res);
|
|
|
|
|
this.originalFile = deepCopy(this.file);
|
|
|
|
|
@ -1569,13 +1478,13 @@ export default {
|
|
|
|
|
height: 49px;
|
|
|
|
|
}
|
|
|
|
|
.uploaded-a {
|
|
|
|
|
color: red;
|
|
|
|
|
color: $primaryColor;
|
|
|
|
|
text-decoration: none;
|
|
|
|
|
transition: all 0.2s;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.uploaded-a:hover {
|
|
|
|
|
color: red;
|
|
|
|
|
color: $primaryColor;
|
|
|
|
|
text-decoration: underline;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|