登录页面,租赁导出

master
xy 11 months ago
parent 0a37246082
commit 9739d5d453

@ -1,24 +1,25 @@
import request from '@/utils/request'
export function save(data) {
return request({
url: '/api/admin/department/save',
method: 'post',
data
})
}
export function listdept() {
return request({
url: '/api/admin/department',
method: 'get'
})
import request from '@/utils/request'
export function save(data) {
return request({
url: '/api/admin/department/save',
method: 'post',
data
})
}
export function del(data) {
return request({
url: '/api/admin/department/delete',
method: 'post',
data
})
export function listdept(params) {
return request({
url: '/api/admin/department',
method: 'get',
params
})
}
export function del(data) {
return request({
url: '/api/admin/department/delete',
method: 'post',
data
})
}

@ -1,33 +1,34 @@
import request from '@/utils/request'
export function save(data) {
return request({
url: '/api/admin/admin/save',
method: 'post',
data
})
}
export function listuser() {
return request({
url: '/api/admin/admin',
method: 'get'
})
import request from '@/utils/request'
export function save(data) {
return request({
url: '/api/admin/admin/save',
method: 'post',
data
})
}
export function del(data) {
return request({
url: '/api/admin/admin/delete',
method: 'post',
data
})
export function listuser(params) {
return request({
url: '/api/admin/admin',
method: 'get',
params
})
}
export function setRoles(data) {
return request({
url: '/api/admin/admin/set-roles',
method: 'post',
data
})
export function del(data) {
return request({
url: '/api/admin/admin/delete',
method: 'post',
data
})
}
export function setRoles(data) {
return request({
url: '/api/admin/admin/set-roles',
method: 'post',
data
})
}

@ -18,7 +18,10 @@
<i class="el-icon-bell"></i>
</el-badge>
<img src="../../assets/face.jpg" class="user-avatar">
<span>{{ $store.state.user.name }}</span>
<div style="display: flex;flex-direction: column;line-height: 1.25;">
<span>{{ $store.state.user.name }}</span>
<span style="font-size: 12px;color: #eee;font-weight: 400;">{{ $store.state.user.department.name }}</span>
</div>
<i class="el-icon-caret-bottom" />
</div>
<el-dropdown-menu slot="dropdown" class="user-dropdown">

@ -17,7 +17,8 @@ const getDefaultState = () => {
token: getToken(),
name: '',
avatar: '',
roles: []
roles: [],
department: {}
}
}
@ -38,6 +39,9 @@ const mutations = {
},
SET_ROLES: (state, roles) => {
state.roles = roles
},
SET_DEPARTMENT: (state, department) => {
state.department = department
}
}
@ -86,7 +90,8 @@ const actions = {
const {
roles,
name,
avatar
avatar,
department
} = response
@ -94,6 +99,7 @@ const actions = {
commit('SET_ROLES', roles)
commit('SET_NAME', name)
commit('SET_AVATAR', avatar)
commit('SET_DEPARTMENT', department??{})
resolve(response)
}).catch(error => {
reject(error)

@ -142,9 +142,10 @@ export default {
table-item={
[
{
prop: "selection",
type: "selection",
width: 56,
label: " "
label: "选择"
},
{
"prop": "id",

@ -85,9 +85,13 @@ export default {
if (header._params) {
response.forEach(row => {
if (row.hasOwnProperty(header.key)) {
console.log(header.key, header._params, row[header.key])
row[header.key] = header._params.find(i => i.key == row[header.key]) ? header._params.find(i => i.key == row[header.key]).value : row[header.key]
}
for (let key in row) {
if (row[key].hasOwnProperty('date')) {
row[key] = row[key]['date']
}
}
})
}
})

@ -292,6 +292,11 @@
</add>
<addPay ref="addPay"></addPay>
<payList ref="payList"></payList>
<imports
:table-name="customForm.tableName"
:form-info="form"
ref="imports"
@refresh="$refs['xyTable'].getTableData()"></imports>
</div>
</template>
@ -308,6 +313,7 @@ import { saveAs } from "file-saver";
import { listdept } from "@/api/system/department"
import add from "./component/addLease.vue";
import imports from "@/views/component/imports.vue"
import LxHeader from "@/components/LxHeader/index.vue";
import headerContent from "@/components/LxHeader/XyContent.vue";
import addPay from "@/views/lease/component/addPay.vue";
@ -315,6 +321,7 @@ import payList from "@/views/lease/component/payList.vue"
export default {
name: 'tableList',
components: {
imports,
LxHeader,
add,
headerContent,

@ -14,6 +14,26 @@ export default {
let dialog = new CreateDialog(
this,
[
{
show: this.type === 'editor',
key: 'let_id',
label: '关联招租',
render: h('div',[
h('el-button',{
props: {
type: 'primary',
size: 'small'
},
on: {
click: _ => {
this.letDialog = true
}
}
},'关联招租'),
h('br'),
h('span', Object.keys(this.selectLet).length > 0 ? `${this.selectLet.juecezhuti}/${this.selectLet.zhaozufangshi}/${this.selectLet.zujindijiaquedingfangshi}/${this.selectLet.shouniannianzujin}` : '')
])
},
{
show: true,
key: "chengzufang",
@ -79,6 +99,10 @@ export default {
let oldDialog = new CreateDialog(
this,
[
{
show: false,
key: 'let_id'
},
{
show: true,
key: "qiandingnianyue",
@ -716,6 +740,132 @@ export default {
}
</div>
{
this.type === 'editor' ? (
<el-drawer
title="招租列表"
append-to-body={true}
visible={this.letDialog}
size="64%"
on={{
["update:visible"]: (val) => (this.letDialog = val)
}}
>
<div style="padding: 0 10px;">
<div>
<Input
vModel={_this.letSelect.keyword}
style="width: 300px;"
placeholder="请填写关键词"
/>
<Button
type="primary"
style="margin-left: 10px;"
on={{
["click"]: (_) => {
this.$refs["letLinkTable"].getTableData(true);
},
}}
>
搜索
</Button>
</div>
<xy-table
isHandlerKey={false}
height="600"
ref="letLinkTable"
table-item={[
{
prop: "selection",
label: "选择",
type: "selection",
width: 56,
align: "center",
reserveSelection: true,
fixed: "left",
},
{
prop: "id",
width: 60,
label: "序号",
formatter: (row, column, cellValue, index) => (this.$refs['letLinkTable'].selectOpt.page - 1) * this.$refs['letLinkTable'].selectOpt.page_size + index + 1
},
{
prop: "juecezhuti",
label: "决策主体",
width: 0,
align: "left",
},
{
prop: "zhaozufangshi",
label: "招租方式",
width: 0,
align: "left",
},
{
prop: "xingshi",
label: "公开招租渠道/协议招租",
width: 0,
align: "left",
},
{
prop: "zujindijiaquedingfangshi",
label: "租金底价确定方式",
width: 0,
align: "left",
},
{
prop: "mianzuqi",
label: "免租期(天)",
width: 0,
align: "center",
},
{
prop: "shouniannianzujin",
label: "首年年租金(万元)",
width: 0,
align: "right",
},
{
prop: "danweimianjizhaozudijia",
label: "单位面积招租底价(首年)(元/m²)",
width: 0,
align: "right",
},
{
prop: "zhaozunianxian",
label: "招租年限",
width: 0,
align: "center",
}
]}
action={this.index}
req-opt={_this.letSelect}
on={{
["loaded"]: (_) => {
if (this.selectLet.id) {
this.$refs['letLinkTable'].setCurrentRow(
this.$refs['letLinkTable'].getListData().find(row => row.id === this.selectLet.id)
);
}
},
["select"]: (selection, row) => {
this.form.let_id = row.id
if (selection.length > 0) {
this.selectLet = row;
this.$refs['letLinkTable'].clearSelection();
this.$refs['letLinkTable'].toggleRowSelection(row, true);
} else {
this.selectLet = {};
this.$refs['letLinkTable'].clearSelection();
}
},
}}
></xy-table>
</div>
</el-drawer>
) : ''
}
<el-drawer
title="土地列表"
append-to-body={true}
@ -750,6 +900,8 @@ export default {
ref="landLinkTable"
table-item={[
{
prop: "selection",
label: "选择",
type: "selection",
width: 56,
align: "center",
@ -1002,6 +1154,8 @@ export default {
ref="houseLinkTable"
table-item={[
{
prop: "selection",
label: "选择",
type: "selection",
width: 56,
align: "center",
@ -1205,6 +1359,13 @@ export default {
table_name: "houses",
keyword: "",
},
selectLet: {},
letDialog: false,
letSelect: {
is_auth: 1,
table_name: "lets",
keyword: "",
},
columns: 1,
row: {},
@ -1365,7 +1526,7 @@ export default {
});
}
this.form.let_id = this.$route.params.letId;
this.form.let_id = !this.form.let_id ? this.$route.params.letId : this.form.let_id;
save(Object.assign(this.form, { table_name: "leases" })).then((res) => {
if (this.type !== "add") {
Promise.all([

@ -7,7 +7,7 @@
<div slot="content"></div>
<slot>
<div>
<Input style="width: 200px; margin-right: 10px" v-model.number="searchFields.Name" placeholder="关键字搜索" />
<Input style="width: 200px; margin-right: 10px" v-model.number="select.keyword" placeholder="关键字搜索" />
<Button type="primary" @click="load" style="margin-left: 10px">查询</Button>
<Button type="primary" @click="edit()" style="margin-left: 10px">新增用户</Button>
</div>
@ -48,6 +48,24 @@
</template>
</el-table-column>
</el-table>
<el-pagination
style="margin-top: 10px;"
:current-page.sync="select.page"
:page-sizes="[20, 30, 40, 50]"
:page-size.sync="select.page_size"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
@size-change="e => {
select.page_size = e;
select.page = 1;
getList();
}"
@current-change="e => {
select.page = e;
getList();
}"
/>
</div>
<el-dialog modal-append-to-body append-to-body title="用户编辑" :visible.sync="dialogFormVisible" width="30%">
<el-form :model="form" :rules="rules" ref="form" label-position="right" :label-width="formLabelWidth">
@ -147,9 +165,12 @@
},
tableHeight: 0,
//
searchFields: {
KeyWord: ""
select: {
page: 1,
keyword: '',
page_size: 20
},
total: 0,
tableData: []
}
},
@ -171,10 +192,11 @@
//reject(error)
})
},
load() {
var that = this;
listuser().then(response => {
getList() {
const that = this
listuser(this.select).then(response => {
var data = response.data;
this.total = response.total;
var _rolelist = [];
for (var m of data) {
_rolelist = that.roleList;
@ -200,8 +222,15 @@
//reject(error)
})
},
load() {
this.getList()
},
async getDepartmentList() {
const res = await listdept();
const res = await listdept({
page: 1,
page_size: 9999
});
this.departmentList = res;
},
hasRoles(roles, id) {

Loading…
Cancel
Save