master
xy 1 year ago
parent 9f16854273
commit 846b3805c2

@ -4,10 +4,10 @@ NODE_ENV = production
ENV = 'staging'
# base api
#VUE_APP_BASE_API=http://wuxiwuye.ali251.langye.net/
#VUE_APP_UPLOAD_API=http://wuxiwuye.ali251.langye.net/api/admin/upload-file
#VUE_APP_PREVIEW=//view.langye.net:8012/onlinePreview
VUE_APP_BASE_API=http://wuxiwuye.ali251.langye.net/
VUE_APP_UPLOAD_API=http://wuxiwuye.ali251.langye.net/api/admin/upload-file
VUE_APP_PREVIEW=//view.langye.net:8012/onlinePreview
# base api
VUE_APP_BASE_API=http://192.168.221.31:9001/
VUE_APP_UPLOAD_API=http://192.168.221.31:9001/api/admin/upload-file
VUE_APP_PREVIEW=http://192.168.221.31:8012/onlinePreview
#VUE_APP_BASE_API=http://192.168.221.31:9001/
#VUE_APP_UPLOAD_API=http://192.168.221.31:9001/api/admin/upload-file
#VUE_APP_PREVIEW=http://192.168.221.31:8012/onlinePreview

@ -874,8 +874,8 @@ export default {
if ($scopedSlots[item.prop]) {
return $scopedSlots[item.prop](item, index);
}
return (
<af-table-column
return item.multiHd ? (
<el-table-column
// TODO: keysort
//key={`xy-table-col-${item.prop}`}
key={this.isHandlerKey ? String(Math.random()) + index : index}
@ -925,7 +925,7 @@ export default {
{item.multiHd
? item.multiHd.map((item1, index1) => {
return (
<af-table-column
<el-table-column
//key={`xy-table-col-multi-${item1.prop}`}
key={this.isHandlerKey ? String(Math.random()) + index1 : index1}
prop={`${item.pProp ? item.pProp + "." : ""}${
@ -968,12 +968,58 @@ export default {
}
: ""
}
></af-table-column>
></el-table-column>
);
})
: ""}
</af-table-column>
);
</el-table-column>
) : (<af-table-column
// TODO: keysort
//key={`xy-table-col-${item.prop}`}
key={this.isHandlerKey ? String(Math.random()) + index : index}
type={item.type}
index={item.index}
//column-key={`xy-table-column-${item.prop}`}
column-key={String(Math.random())}
label={item.label}
prop={item.prop}
width={item.width}
min-width={item.minWidth}
fixed={item.fixed ?? false}
render-header={item.renderHeader}
sortable={item.sortable}
sort-method={item.sortMethod}
sort-by={item.sortBy}
sort-orders={item.sortOrders}
resizale={item.resizale}
formatter={item.formatter}
show-overflow-tooltip={item.showOverflowTooltip ?? true}
align={item.align ?? "center"}
header-align={item.headerAlign ?? "center"}
class-name={`xy-table__row-fade ${item.className} body-cell-${index}`}
label-class-name={`xy-table__title-fade ${item.labelClassName} header-cell-${index}`}
selectable={item.selectable}
reserve-selection={item.reserveSelection}
filters={item.filters}
filter-placement={item.filterPlacement}
filter-multiple={item.filterMultiple}
filter-method={item.filterMethod}
filtered-value={item.filteredValue}
scopedSlots={
item.customFn || item.type === "expand"
? {
default(scope) {
if (item.type === "expand") {
return item.expandFn(scope);
}
if (item.customFn) {
return item.customFn(scope.row, scope);
}
},
}
: ""
}
></af-table-column>)
})}
{
$scopedSlots.btns ? $scopedSlots.btns() : (this.auths.length > 0 ? this.isCreateAuthBtns() : '')

@ -335,7 +335,7 @@ export default {
});
if (this.$refs["houseTable"].getSelection() && this.$refs["houseTable"]?.getSelection()?.length > 0) {
promiseAll.push(
...this.$refs["houseTable"].getSelection().map(i => save(Object.assign(i, { table_name: 'houses',land_id: this.id })))
...this.$refs["houseTable"].getSelection().map(i => save(Object.assign(i, { table_name: 'houses',land_id: this.id, quanzhenghao: copyForm.tudizhenghao, zichanweizhi: copyForm.zichanweizhi })))
);
}
this.originalForm.id_houses_land_id_relation.forEach(item => {

@ -451,7 +451,7 @@ export default {
))
}
{
row.house?.map(i => (
row.houses?.map(i => (
<Tag color="blue">{ i.name }</Tag>
))
}
@ -502,6 +502,91 @@ export default {
align: 'right',
width: 120
},
{
label: "租金收取计划",
multiHd: [
{
width: 200,
prop: "zujindiyicidaoweishijian",
label: "租金第一次到位时间",
customFn: ({ row }) => {
return (
<div>
{
row.id_lease_plans_lease_id_relation?.map(i => (
<p>{ i.zujindiyicidaoweishijian }</p>
))
}
</div>
)
}
},
{
width: 160,
prop: "shijidaozhangriqi",
label: "实际到账日期",
customFn: ({ row }) => {
return (
<div>
{
row.id_lease_plans_lease_id_relation?.map(i => (
<p>{ i.shijidaozhangriqi }</p>
))
}
</div>
)
}
},
{
width: 140,
prop: "yingshou",
label: "应收",
customFn: ({ row }) => {
return (
<div>
{
row.id_lease_plans_lease_id_relation?.map(i => (
<p style="text-align: right;">{ i.yingshou }</p>
))
}
</div>
)
}
},
{
width: 140,
prop: "shijidaozhang",
label: "实际到账",
customFn: ({ row }) => {
return (
<div>
{
row.id_lease_plans_lease_id_relation?.map(i => (
<p style="text-align: right;">{ i.shijidaozhang }</p>
))
}
</div>
)
}
},
{
width: 200,
prop: "weidaoweiyuanyin",
label: "未到账原因",
customFn: ({ row }) => {
return (
<div>
{
row.id_lease_plans_lease_id_relation?.map(i => (
<p>{ i.weidaoweiyuanyin }</p>
))
}
</div>
)
}
}
]
}
],
@ -666,9 +751,15 @@ export default {
this.detail = detail;
this.init();
this.myFiles.push(...detail.id_asset_file_files_land_id_relation);
this.myFiles.push(...detail.id_asset_picture_files_land_id_relation);
this.myFiles.push(...detail.id_assets_atlas_files_land_id_relation);
if (/\/land/g.test(this.$route.path)) {
this.myFiles.push(...detail.id_asset_file_files_land_id_relation);
this.myFiles.push(...detail.id_asset_picture_files_land_id_relation);
this.myFiles.push(...detail.id_assets_atlas_files_land_id_relation);
} else {
this.myFiles.push(...detail.id_asset_file_files_house_id_relation);
this.myFiles.push(...detail.id_asset_picture_files_house_id_relation);
this.myFiles.push(...detail.id_assets_atlas_files_house_id_relation);
}
},
@ -701,7 +792,7 @@ export default {
filter:[
{
key: "id",
op: 'range',
op: 'eq_many',
value: this.detail.leases.map(i => i.id).toString()
}
]
@ -709,7 +800,9 @@ export default {
this.leases = res.data;
res.data.forEach(i => {
this.myFiles.push(...i.fujian_detail)
if (i.file_detail) {
this.myFiles.push(...i.file_detail)
}
})
},

@ -305,14 +305,6 @@
>资产处置</Button
>
</template>
<template #leave="{ row }">
<Button
size="small"
type="primary"
@click="toLeave(row)"
>租赁登记</Button
>
</template>
<template #assetsHistory="{ row }">
<Button size="small" type="primary" @click="toHistory(row)"
>历史沿革</Button
@ -756,7 +748,8 @@ export default {
prop: "id",
width: 60,
label: "序号",
});
formatter: (row, column, cellValue, index) => (this.$refs['xyTable'].selectOpt.page - 1) * this.$refs['xyTable'].selectOpt.page_size + index + 1
})
},
toHistory(row) {

@ -280,14 +280,6 @@
>资产处置</Button
>
</template>
<template #leave="{ row }">
<Button
size="small"
type="primary"
@click="toLeave(row)"
>租赁登记</Button
>
</template>
<template #assetsHistory="{ row }">
<Button
@ -744,7 +736,8 @@ export default {
prop: "id",
width: 60,
label: "序号",
});
formatter: (row, column, cellValue, index) => (this.$refs['xyTable'].selectOpt.page - 1) * this.$refs['xyTable'].selectOpt.page_size + index + 1
})
},

@ -25,7 +25,7 @@ export default {
props: {
title: "新增",
visible: this.dialogVisible,
width: "780px",
width: "80vw",
"close-on-click-modal": false
},
on: {

@ -738,10 +738,11 @@ export default {
);
});
this.table.unshift({
type: "index",
prop: "id",
width: 60,
label: "序号",
});
formatter: (row, column, cellValue, index) => (this.$refs['xyTable'].selectOpt.page - 1) * this.$refs['xyTable'].selectOpt.page_size + index + 1
})
},
},
computed: {

@ -578,7 +578,8 @@ export default {
prop: "id",
width: 60,
label: "序号",
});
formatter: (row, column, cellValue, index) => (this.$refs['xyTable'].selectOpt.page - 1) * this.$refs['xyTable'].selectOpt.page_size + index + 1
})
},
adjustAlignment () {

@ -78,27 +78,27 @@
<!-- <xy-table :height="400" :table-item="table2" style="margin-top: 20px" size="mini" stripe ref="table1" :auths="[]" :action="index" :req-opt="select1"></xy-table>-->
</el-col>
</el-row>
<el-row :gutter="80" type="flex">
<el-col :span="12">
<div class="contract__title">
<h3>安全检查</h3>
<div class="more" @click="$router.push('/system/documents')">
更多
<i class="el-icon-d-arrow-right"></i>
</div>
</div>
<div class="list">
<div class="list-item" v-for="item in assetSafetyPlan" @click="$refs['drawer'].setType(4),$refs['drawer'].setRow(item),$refs['drawer'].show()">
<span>{{ item.jihuamingcheng }}</span>
<span>{{ $moment(new Date(item.jihuakaishishijian)).format('YYYY-MM-DD') }}</span>
</div>
<Page class="list-page" :page-size="systemSelect.page_size" :total="systemTotal" size="small" />
</div>
</el-col>
</el-row>
<!-- <el-row :gutter="80" type="flex">-->
<!-- <el-col :span="12">-->
<!-- <div class="contract__title">-->
<!-- <h3>安全检查</h3>-->
<!-- <div class="more" @click="$router.push('/system/documents')">-->
<!-- 更多-->
<!-- <i class="el-icon-d-arrow-right"></i>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="list">-->
<!-- <div class="list-item" v-for="item in assetSafetyPlan" @click="$refs['drawer'].setType(4),$refs['drawer'].setRow(item),$refs['drawer'].show()">-->
<!-- <span>{{ item.jihuamingcheng }}</span>-->
<!-- <span>{{ $moment(new Date(item.jihuakaishishijian)).format('YYYY-MM-DD') }}</span>-->
<!-- </div>-->
<!-- <Page class="list-page" :page-size="systemSelect.page_size" :total="systemTotal" size="small" />-->
<!-- </div>-->
<!-- </el-col>-->
<!-- </el-row>-->
</div>
</Card>
@ -203,7 +203,21 @@
key: 'dikuaimingcheng',
width: 180,
fixed: 'left',
align: 'left'
align: 'left',
render: (h, { row }) => {
return h('div',[
...row?.land?.map(i => h('Tag', {
props: {
color: "green"
}
},i.name)),
...row?.houses?.map(i => h('Tag', {
props: {
color: "blue"
}
},i.name))
])
}
},
{
title: '出租方',

@ -574,7 +574,8 @@ export default {
prop: "id",
width: 60,
label: "序号",
});
formatter: (row, column, cellValue, index) => (this.$refs['xyTable'].selectOpt.page - 1) * this.$refs['xyTable'].selectOpt.page_size + index + 1
})
},
adjustAlignment () {

@ -579,7 +579,8 @@ export default {
prop: "id",
width: 60,
label: "序号",
});
formatter: (row, column, cellValue, index) => (this.$refs['xyTable'].selectOpt.page - 1) * this.$refs['xyTable'].selectOpt.page_size + index + 1
})
},
adjustAlignment () {

@ -569,7 +569,8 @@ export default {
prop: "id",
width: 60,
label: "序号",
});
formatter: (row, column, cellValue, index) => (this.$refs['xyTable'].selectOpt.page - 1) * this.$refs['xyTable'].selectOpt.page_size + index + 1
})
},
adjustAlignment () {

@ -262,7 +262,7 @@ export default {
width: 160,
customFn: row => {
return (
<el-input-number disabled style="width: 100%;" size="small" controls={false} precision={2} vModel={row.shijidaozhang} size="small"></el-input-number>
<el-input-number style="width: 100%;" size="small" controls={false} precision={2} vModel={row.shijidaozhang} size="small"></el-input-number>
)
}
},
@ -272,7 +272,7 @@ export default {
width: 180,
customFn: row => {
return (
<el-input readonly style="width: 100%;" size="small" vModel={row.weidaoweiyuanyin} size="small"></el-input>
<el-input style="width: 100%;" size="small" vModel={row.weidaoweiyuanyin} size="small"></el-input>
)
}
},

@ -573,10 +573,11 @@ export default {
);
});
this.table.unshift({
type: "index",
prop: "id",
width: 60,
label: "序号",
});
formatter: (row, column, cellValue, index) => (this.$refs['xyTable'].selectOpt.page - 1) * this.$refs['xyTable'].selectOpt.page_size + index + 1
})
},
toTree (data) {

@ -519,7 +519,6 @@ export default {
sort_name: 'pid'
},false)).data
this.treeList = this.toTree(data)
console.log(12321,this.treeList)
},
},

@ -562,10 +562,11 @@ export default {
);
});
this.table.unshift({
type: "index",
prop: "id",
width: 60,
label: "序号",
});
formatter: (row, column, cellValue, index) => (this.$refs['xyTable'].selectOpt.page - 1) * this.$refs['xyTable'].selectOpt.page_size + index + 1
})
},
adjustAlignment () {

@ -44,8 +44,8 @@
{{ data.name }}
</div>
<div class="action-item">
<el-checkbox v-for="(item, index) in data.auth_node_tags_array" :key="index"
v-model="item.checked" @change="()=>{}"
<el-checkbox v-for="(item, index) in data.auth_node_tags_array" :key="data.name+item.id"
v-model="item.checked" @change="()=>{tree = Object.assign([], tree)}"
>
{{ item.name }}
</el-checkbox>
@ -116,10 +116,10 @@ export default {
for (let mod of response) {
mod.rowid = mod.id.toString()
console.log(mod)
if (cur == 0) {
that.activeRole = mod.rowid
that.loadPermisstions(0, that.activeRole)
that.togglePermission(0, that.activeRole)
//TODO: that.loadPermisstions(0, that.activeRole)
}
cur++
}
@ -137,7 +137,7 @@ export default {
let children = tree.children
children.forEach((menu, index3) => {
menu.auth_node_tags_array.map((m, index4) => {
menu.auth_node_tags_array.forEach((m, index4) => {
m.checked = false
that.$forceUpdate()
@ -149,7 +149,35 @@ export default {
})
},
roleChange(tab, event) {
this.loadPermisstions(parseInt(tab.index), tab.name)
this.togglePermission(parseInt(tab.index), tab.name)
// TODO: this.loadPermisstions(parseInt(tab.index), tab.name)
},
togglePermission (index, name) {
let select = this.rolelist[index].permissions;
this.$refs.tree.setCheckedKeys([]);
this.activeRole = name;
this.$refs["tree"].setCheckedKeys(select.map(item => item.id));
const toggleAuth = (arr, findId, selectItem) => {
for (let i of arr) {
if (i.id === findId) {
console.log(i)
if (i.auth_node_tags) {
i.auth_node_tags_array.forEach(item => {
this.$set(item, "checked", selectItem.has_auth_node_tags.indexOf(item.tag) > -1);
})
}
} else {
if (i.children && i.children.length > 0) {
toggleAuth(i.children, findId, selectItem)
}
}
}
}
select.filter(i => i.auth_node_tags && i.auth_node_tags.length > 0).forEach(i => {
toggleAuth(this.tree, i.id, i)
})
this.tree = Object.assign([], this.tree)
},
loadPermisstions(index, name) {
let select = this.rolelist[index].permissions
@ -157,32 +185,27 @@ export default {
this.activeRole = name
let that = this
const toggleCheckBox = (arr) => {
arr.forEach((menu, index3) => {
if (item.has_auth_node_tags.length > 0) {
menu.auth_node_tags_array.forEach((m, index4) => {
if (item.has_auth_node_tags.indexOf(m.tag) > -1) {
that.$set(m,
'checked', true)
} else {
that.$set(m,
'checked', false)
}
})
} else {
menu.auth_node_tags_array.map(m => {
m.checked = false
})
}
})
const resolveChildren = (arr) => {
let temp = [];
if (arr.children && arr.children.length > 0) {
arr.children.forEach((child) => {
temp.push(child)
resolveChildren(child)
})
}
return temp;
}
this.tree.forEach((tree, index1) => {
let children = tree.children
if (tree.auth_node_tags) {
tree.auth_node_tags_array.forEach((auth) => {
this.$set(auth, "checked", true)
})
}
let children = resolveChildren(tree)
select.forEach((item, index2) => {
let selectMenu = children.filter(m => {
return m.id == item.id
})
selectMenu.forEach((menu, index3) => {
if (item.has_auth_node_tags.length > 0) {
menu.auth_node_tags_array.forEach((m, index4) => {
@ -245,7 +268,11 @@ export default {
</script>
<style lang="less" scoped>
.t-tree {
::v-deep .el-tree-node__content {
align-items: flex-start;
height: auto;
}
.t-tree {
position: absolute;
width: 100%;
height: 100%;
@ -298,7 +325,7 @@ export default {
.action-group {
width: 100%;
display: flex;
//display: flex;
}
.action-text {
@ -307,12 +334,13 @@ export default {
}
.action-item {
flex: 1;
display: flex;
flex-wrap: wrap;
}
.action-item > label {
width: 55px;
margin-left: 3px;
//width: 55px;
//margin-left: 3px;
}
.action-container >>> .el-tree-node {
@ -320,6 +348,11 @@ export default {
}
.action-container >>> .el-checkbox__label {
padding-left: 5px;
//padding-left: 5px;
}
</style>
<style>
.action-item > .el-checkbox .el-checkbox__inner {
border-radius: 100%;
}
</style>

Loading…
Cancel
Save