feature(优化作价平台):

1. 接入es提升查询效率
2. 配置一套module,查询买卖成交案例
3. 配置住宅租赁汇总案例module
3. 新增菜单icon
This commit is contained in:
purple 2020-08-11 16:12:11 +08:00
parent 57a78e5c86
commit 8b6f23bcac
16 changed files with 933 additions and 591 deletions

View File

@ -0,0 +1,26 @@
import request from '@/utils/request'
// 查询住宅销售基价修正列表
export function list(query) {
return request({
url: '/data/cases/residence/aggregate-rent-case/list',
method: 'get',
params: query
})
}
// 导出住宅销售基价修正
export function export2File(query) {
return request({
url: '/data/cases/residence/aggregate-rent-case/export',
method: 'get',
params: query
})
}
export function getYearMonthList() {
return request({
url: '/data/cases/residence/aggregate-rent-case/yearmonth',
method: 'get'
})
}

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1597113718881" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4634" xmlns:xlink="http://www.w3.org/1999/xlink" width="211.71875" height="200"><defs><style type="text/css"></style></defs><path d="M178.7 312.2c11 0 19.9-8.9 19.9-20.8 0-49.2 40.1-89.2 89.3-89.2 16.1 0 31.4 4.8 45 10.7 1.5 0.9 3.2 1.4 4.7 2.4l-15 17.5c-2.6 3.1-3.4 7.2-2.1 10.8 1.3 3.3 4.1 5.6 7.6 6.1l76.3 11.4c3.4 0 6.7-1.7 8.8-4.6 2.1-2.9 2.7-6.3 1.7-9.6l-22.3-72.2c-1.3-4.1-4.9-6.8-9.3-6.8-3.1 0-6.1 1.4-8.3 3.9l-11 16.5c-22.6-16.8-48.9-25.7-76.1-25.7-71.1 0-129 57.9-129 129.8 0 10.9 8.9 19.8 19.8 19.8zM396.8 270.1c-10.9 0-19.8 8.9-19.7 21.4 0 49.2-40.1 89.3-89.3 89.3-15.1 0-29.8-4.4-43.2-9.8-1.7-0.9-3.6-1.5-5.2-2.6l15.1-16.7c2.7-3 3.6-7.1 2.4-10.7-1.2-3.3-4-5.7-7.4-6.3l-76.3-13.2c-3.4 0-6.6 1.7-8.7 4.5-2.1 2.8-2.8 6.2-1.9 9.4l20.6 72.8c1.2 4.2 4.9 7 9.3 7 3.1 0 6-1.4 8.1-3.7l11.4-16.1c22.2 16.4 48.4 25.1 75.8 25.1 71.1 0 129-57.9 128.6-131.5-0.4-10.6-9.1-18.9-19.6-18.9zM481 481.7H207.9c-17.9 0-32.5 14.6-32.5 32.5s14.6 32.5 32.5 32.5H481c17.9 0 32.5-14.6 32.5-32.5 0-17.8-14.6-32.5-32.5-32.5z" p-id="4635" fill="#BFBFBF"></path><path d="M161.7 837.5c-26.1 0-47.3-21.2-47.3-47.3V106c0-26.1 21.2-47.3 47.3-47.3h320.7v88.6c0 46.8 38.1 84.9 84.9 84.9h95.1l5.3 4.5 0.5 4.6v322.1H727V241.2l-0.5-5.7c-1.3-23-10.3-44.7-25.3-61.3L572.6 32.7C553.7 11.9 526.8 0 498.8 0H161.7c-58.5 0-106 47.5-106 106v684.3c0 58.4 47.6 106 106 106h347.2v-58.7H161.7z" p-id="4636" fill="#BFBFBF"></path><path d="M511.5 640.6c2.9-15.9 10.5-30.2 21.1-42.4H207.9c-17.9 0-32.5 14.6-32.5 32.5s14.6 32.5 32.5 32.5h301v-14.8l2.6-7.8zM175.3 747.1c0 17.9 14.6 32.5 32.5 32.5h301v-65.1h-301c-17.8 0.1-32.5 14.7-32.5 32.6zM926.1 1022.8H602.3c-0.7-0.3-1.5-0.6-2.2-0.8-18.7-3.4-31.2-14.1-37.6-32-1.1-3.1-1.7-6.4-2.5-9.5V656.8c0.3-0.7 0.6-1.5 0.8-2.2 3.8-20.6 16.1-33.3 36.2-38.7 1.8-0.5 3.6-0.9 5.3-1.3h278.3c11.6 2.6 20.7 9.5 28.9 17.4 13.7 13.1 27.2 26.6 40.3 40.2 8.3 8.6 15.7 18 18.4 30.1v278.3c-0.3 0.7-0.6 1.5-0.8 2.2-3.8 20.6-16.1 33.3-36.2 38.7-1.6 0.5-3.4 0.9-5.1 1.3m-161.9-15.6h139.1c11.8 0 18-6.2 18-17.9V836.6c0-11.7-6.3-18-17.9-18H624.8c-11.4 0-17.8 6.3-17.8 17.7v153.1c0 1.8 0 3.7 0.5 5.5 1.9 8.1 8 12.3 17.6 12.3h139.1m-8-235.5h99.2c12.7 0 18.8-6.1 18.8-18.8v-104c0-12.8-6-18.8-18.8-18.8H656.9c-12.5 0-18.7 6.1-18.7 18.5V753c0 12.4 6.2 18.6 18.6 18.6 33.3 0.1 66.3 0.1 99.4 0.1M796 646.2h46.1v109.2H796V646.2" p-id="4637" fill="#BFBFBF"></path></svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1597125639935" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="13471" xmlns:xlink="http://www.w3.org/1999/xlink" width="211.71875" height="200"><defs><style type="text/css"></style></defs><path d="M192 672c19.2 0 32 12.8 32 32v128c0 19.2-12.8 32-32 32s-32-12.8-32-32v-128c0-19.2 12.8-32 32-32zM416 480c19.2 0 32 12.8 32 32v320c0 19.2-12.8 32-32 32s-32-12.8-32-32V512c0-19.2 12.8-32 32-32zM608 608c19.2 0 32 12.8 32 32v192c0 19.2-12.8 32-32 32s-32-12.8-32-32v-192c0-19.2 12.8-32 32-32zM832 448c19.2 0 32 12.8 32 32v352c0 19.2-12.8 32-32 32s-32-12.8-32-32V480c0-19.2 12.8-32 32-32z" fill="#BFBFBF" p-id="13472"></path><path d="M419.2 323.2l-246.4 246.4c-12.8 12.8-32 12.8-44.8 0-12.8-12.8-12.8-32 0-44.8l291.2-291.2 192 192 217.6-217.6c12.8-12.8 32-12.8 44.8 0 12.8 12.8 12.8 32 0 44.8l-262.4 262.4-192-192z" fill="#BFBFBF" p-id="13473"></path></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1597113833754" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6873" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><defs><style type="text/css"></style></defs><path d="M510.9 565.9L374.7 429.7c-5.4-5.4-5.4-14.1 0-19.4s14.1-5.4 19.4 0L510.9 527l115.7-115.7c5.4-5.4 14.1-5.4 19.4 0 5.4 5.4 5.4 14.1 0 19.4L510.9 565.9z" fill="#BFBFBF" p-id="6874"></path><path d="M636.4 560.2h-252c-7.6 0-13.7-6.1-13.7-13.7s6.1-13.7 13.7-13.7h251.9c7.6 0 13.7 6.1 13.7 13.7 0.1 7.5-6.1 13.7-13.6 13.7zM636.4 656.1h-252c-7.6 0-13.7-6.1-13.7-13.7s6.1-13.7 13.7-13.7h251.9c7.6 0 13.7 6.1 13.7 13.7 0.1 7.5-6.1 13.7-13.6 13.7z" fill="#BFBFBF" p-id="6875"></path><path d="M510.9 784.6c-7.6 0-13.7-6.1-13.7-13.7V546.5c0-7.6 6.1-13.7 13.7-13.7s13.7 6.1 13.7 13.7v224.4c0 7.5-6.1 13.7-13.7 13.7z" fill="#BFBFBF" p-id="6876"></path><path d="M946 513.4c-3.1 0-6.1-1-8.7-3.1L521.4 169.2c-6.2-5.1-15.1-5.1-21.3 0L86.7 507.9c-5.9 4.8-14.5 3.9-19.3-1.9-4.8-5.9-3.9-14.5 1.9-19.3L482.7 148c16.3-13.3 39.8-13.3 56.1 0l415.9 341.1c5.9 4.8 6.7 13.5 1.9 19.3-2.7 3.3-6.6 5-10.6 5z" fill="#BFBFBF" p-id="6877"></path><path d="M752.8 886.1H268c-41.3 0-74.9-33.6-74.9-74.9V391.7c0-7.6 6.1-13.7 13.7-13.7s13.7 6.1 13.7 13.7v419.4c0 26.2 21.3 47.5 47.5 47.5h484.8c26.2 0 47.5-21.3 47.5-47.5V391.7c0-7.6 6.1-13.7 13.7-13.7s13.7 6.1 13.7 13.7v419.4c0 41.3-33.6 75-74.9 75z" fill="#BFBFBF" p-id="6878"></path></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1597125321332" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="10786" xmlns:xlink="http://www.w3.org/1999/xlink" width="211.71875" height="200"><defs><style type="text/css"></style></defs><path d="M869.262222 116.053333H571.164444c-20.48 0-36.408889 15.928889-36.408888 36.408889v300.373334c0 20.48 15.928889 36.408889 36.408888 36.408888h298.097778c20.48 0 36.408889-15.928889 36.408889-36.408888V152.462222c0-20.48-15.928889-36.408889-36.408889-36.408889z m-75.093333 211.626667h-150.186667c-15.928889 0-29.582222-11.377778-29.582222-25.031111 0-13.653333 13.653333-25.031111 29.582222-25.031111h150.186667c15.928889 0 29.582222 11.377778 29.582222 25.031111 0 13.653333-13.653333 25.031111-29.582222 25.031111z m0 0M436.906667 116.053333H138.808889c-20.48 0-36.408889 15.928889-36.408889 36.408889v300.373334c0 20.48 15.928889 36.408889 36.408889 36.408888h298.097778c20.48 0 36.408889-15.928889 36.408889-36.408888V152.462222c0-20.48-15.928889-36.408889-36.408889-36.408889z m-75.093334 211.626667h-50.062222v50.062222c0 15.928889-11.377778 29.582222-25.031111 29.582222-13.653333 0-25.031111-13.653333-25.031111-29.582222v-50.062222H211.626667c-15.928889 0-29.582222-11.377778-29.582223-25.031111 0-13.653333 13.653333-25.031111 29.582223-25.031111h50.062222V227.555556c0-15.928889 11.377778-29.582222 25.031111-29.582223 13.653333 0 25.031111 13.653333 25.031111 29.582223v50.062222h50.062222c15.928889 0 29.582222 11.377778 29.582223 25.031111 0 13.653333-13.653333 25.031111-29.582223 25.031111z m0 0M436.906667 546.133333H138.808889c-20.48 0-36.408889 15.928889-36.408889 36.408889v300.373334c0 20.48 15.928889 36.408889 36.408889 36.408888h298.097778c20.48 0 36.408889-15.928889 36.408889-36.408888V582.542222c0-20.48-15.928889-36.408889-36.408889-36.408889z m-150.186667 81.92c15.928889 0 29.582222 13.653333 29.582222 29.582223 0 15.928889-13.653333 29.582222-29.582222 29.582222-15.928889 0-29.582222-13.653333-29.582222-29.582222 2.275556-15.928889 13.653333-29.582222 29.582222-29.582223z m0 209.351111c-15.928889 0-29.582222-13.653333-29.582222-29.582222 0-15.928889 13.653333-29.582222 29.582222-29.582222 15.928889 0 29.582222 13.653333 29.582222 29.582222 0 18.204444-13.653333 29.582222-29.582222 29.582222z m75.093333-79.644444H211.626667c-15.928889 0-29.582222-11.377778-29.582223-25.031111 0-13.653333 13.653333-25.031111 29.582223-25.031111h150.186666c15.928889 0 29.582222 11.377778 29.582223 25.031111 0 13.653333-13.653333 25.031111-29.582223 25.031111z m0 0M869.262222 546.133333H571.164444c-20.48 0-36.408889 15.928889-36.408888 36.408889v300.373334c0 20.48 15.928889 36.408889 36.408888 36.408888h298.097778c20.48 0 36.408889-15.928889 36.408889-36.408888V582.542222c0-20.48-15.928889-36.408889-36.408889-36.408889z m-75.093333 259.413334h-150.186667c-15.928889 0-29.582222-11.377778-29.582222-25.031111 0-13.653333 13.653333-25.031111 29.582222-25.031112h150.186667c15.928889 0 29.582222 11.377778 29.582222 25.031112 0 13.653333-13.653333 25.031111-29.582222 25.031111z m0-95.573334h-150.186667c-15.928889 0-29.582222-11.377778-29.582222-25.031111 0-13.653333 13.653333-25.031111 29.582222-25.031111h150.186667c15.928889 0 29.582222 11.377778 29.582222 25.031111 0 13.653333-13.653333 25.031111-29.582222 25.031111z m0 0" fill="#BFBFBF" p-id="10787"></path></svg>

After

Width:  |  Height:  |  Size: 3.4 KiB

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1597125922762" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="15530" xmlns:xlink="http://www.w3.org/1999/xlink" width="211.71875" height="200"><defs><style type="text/css"></style></defs><path d="M552.362667 101.034667l406.954666 373.034666a34.133333 34.133333 0 0 1-23.04 59.306667L896 533.333333v298.666667a85.333333 85.333333 0 0 1-85.333333 85.333333H213.333333a85.333333 85.333333 0 0 1-85.333333-85.333333v-298.666667h-40.234667a34.133333 34.133333 0 0 1-23.04-59.264l406.912-373.034666a59.733333 59.733333 0 0 1 80.725334 0zM400.896 614.826667a34.901333 34.901333 0 0 0-49.237333 3.541333l-6.357334 7.978667a129.834667 129.834667 0 0 0-25.301333 77.056v46.677333c0 26.453333 21.504 48 48 48h288c26.496 0 48-21.504 48-48v-46.677333c0-30.549333-10.666667-59.349333-29.184-82.005334l-1.92-2.176-2.048-2.048a38.442667 38.442667 0 0 0-54.357333 2.688l-2.389334 2.602667a80.085333 80.085333 0 0 1-5.504 5.674667 152.96 152.96 0 0 1-96.597333 34.176 152.874667 152.874667 0 0 1-111.104-47.488zM512 353.194667a115.2 115.2 0 0 0-115.2 115.2v40.32a115.2 115.2 0 0 0 230.4 0v-40.32a115.2 115.2 0 0 0-115.2-115.2z" fill="#39A461" p-id="15531"></path></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1597125223401" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6730" xmlns:xlink="http://www.w3.org/1999/xlink" width="211.71875" height="200"><defs><style type="text/css"></style></defs><path d="M852.986802 59.256853v906.525888H169.973604V59.256853h683.013198M912.243655 0H111.756345v1024h800.48731V0z" p-id="6731" fill="#BFBFBF"></path><path d="M247.943147 132.028426h81.088325v81.088325h-81.088325zM397.64467 132.028426h81.088325v81.088325h-81.088325zM547.346193 132.028426h81.088325v81.088325h-81.088325zM697.047716 132.028426h81.088325v81.088325h-81.088325zM247.943147 280.690355h81.088325v81.088325h-81.088325zM397.64467 280.690355h81.088325v81.088325h-81.088325zM547.346193 280.690355h81.088325v81.088325h-81.088325zM697.047716 280.690355h81.088325v81.088325h-81.088325zM697.047716 726.676142h81.088325v81.088325h-81.088325zM247.943147 726.676142h81.088325v81.088325h-81.088325z" p-id="6732" fill="#BFBFBF"></path><path d="M395.565482 835.833503h231.829442v115.394923H395.565482z" fill="#BFBFBF" p-id="6733"></path><path d="M395.565482 806.724873h231.829442v164.255838H395.565482zM247.943147 429.352284h81.088325v81.088325h-81.088325zM397.64467 429.352284h81.088325v81.088325h-81.088325zM547.346193 429.352284h81.088325v81.088325h-81.088325zM697.047716 429.352284h81.088325v81.088325h-81.088325z" p-id="6734" fill="#BFBFBF"></path><path d="M247.943147 578.014213h81.088325v81.088325h-81.088325zM397.64467 578.014213h81.088325v81.088325h-81.088325zM547.346193 578.014213h81.088325v81.088325h-81.088325zM697.047716 578.014213h81.088325v81.088325h-81.088325z" p-id="6735" fill="#BFBFBF"></path></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1597122406396" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4087" xmlns:xlink="http://www.w3.org/1999/xlink" width="211.71875" height="200"><defs><style type="text/css"></style></defs><path d="M512 64C264.576 64 64 264.576 64 512c0 247.36 200.576 448 448 448 247.424 0 448-200.64 448-448C960 264.576 759.424 64 512 64zM689.728 478.464l0 94.656L564.48 573.12l0 32.832 125.248 0 0 94.784L564.48 700.736l0 91.008L471.168 791.744l0-91.008L349.44 700.736 349.44 605.952l121.728 0L471.168 573.12 349.44 573.12 349.44 478.464l71.104 0L301.312 258.688l107.712 0L512 448.256l102.912-189.568 107.776 0L603.456 478.464 689.728 478.464z" p-id="4088" fill="#BFBFBF"></path></svg>

After

Width:  |  Height:  |  Size: 856 B

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1597113553063" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2134" width="211.71875" height="200" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><style type="text/css"></style></defs><path d="M510.192941 1004.242824C238.411294 1003.941647 18.221176 783.721412 17.889882 512 18.221176 240.278588 238.441412 20.058353 510.192941 19.757176 781.884235 20.058353 1002.104471 240.278588 1002.405647 512c-0.301176 271.721412-220.521412 491.941647-492.242823 492.242824z m0-921.268706C273.257412 83.184941 81.317647 275.124706 81.046588 512c0.240941 236.845176 192.150588 428.815059 429.025883 429.086118 236.875294-0.271059 428.815059-192.210824 429.086117-429.086118-0.240941-236.845176-192.150588-428.784941-429.025882-429.025882z" fill="#BFBFBF" p-id="2135"></path><path d="M248.922353 602.112c32.858353-46.110118 60.114824-104.749176 81.859765-175.706353H251.512471V389.12h85.534117V306.296471c-22.016 1.746824-46.170353 3.523765-72.372706 5.210353a391.649882 391.649882 0 0 0-7.860706-38.309648c73.065412-4.216471 135.860706-9.999059 188.29553-17.317647l9.456941 39.845647c-20.992 2.108235-47.254588 4.577882-78.727529 7.318589v86.046117h82.944v37.225412h-82.944v70.896941l23.100235-20.419764a1181.515294 1181.515294 0 0 1 67.162353 71.318588l-29.906824 25.690353a877.206588 877.206588 0 0 0-60.355764-70.324706v241.904941h-38.79153v-234.496a570.036706 570.036706 0 0 1-69.812706 136.432941 1108.871529 1108.871529 0 0 0-18.311529-45.206588z m173.116235 83.998118h63.006118V262.234353h240.278588V686.08h45.116235v37.225412H422.038588v-37.225412zM525.854118 299.369412v103.905882h158.448941V299.369412h-158.448941z m0 244.495059h158.448941V440.018824h-158.448941v103.845647z m0 142.215529h158.448941v-105.472h-158.448941v105.472z" fill="#BFBFBF" p-id="2136"></path></svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1597113735162" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4884" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><defs><style type="text/css"></style></defs><path d="M981.737401 435.219371L558.429727 18.925867a66.55781 66.55781 0 0 0-92.976141 0L407.2923 76.114385a38.091547 38.091547 0 0 0-14.489123-2.867105H186.01318A85.501187 85.501187 0 0 0 100.61439 158.748467v195.270375a38.142745 38.142745 0 0 0 5.119831 18.738584L42.145913 435.219371A65.021861 65.021861 0 0 0 27.400798 506.38503a65.789836 65.789836 0 0 0 61.437979 40.958652h20.991309v376.717206A100.041509 100.041509 0 0 0 209.564405 1024h604.754504a100.041509 100.041509 0 0 0 99.939112-99.939112V547.343682h20.991309a65.789836 65.789836 0 0 0 61.437979-40.958652 65.021861 65.021861 0 0 0-14.949908-71.165659zM511.941657 81.029424l396.172566 389.414388H115.769091zM177.51426 158.748467a8.601317 8.601317 0 0 1 8.49892-8.498921h145.966398L177.51426 302.10375z m358.797795 784.716583v-218.104825a1.279958 1.279958 0 0 1 1.126363-1.177561h84.784411a1.331156 1.331156 0 0 1 1.177561 1.177561v218.002428a1.331156 1.331156 0 0 1-1.177561 1.177561H537.540815a1.279958 1.279958 0 0 1-1.22876-1.177561z m301.097294-19.301765a23.346432 23.346432 0 0 1-23.09044 23.039242h-114.223442v-221.842302a78.179828 78.179828 0 0 0-78.077432-78.077431h-84.47722a78.12863 78.12863 0 0 0-78.026233 78.077431V947.10013H209.564405a23.346432 23.346432 0 0 1-23.09044-23.039242V547.343682h650.935384z" p-id="4885" fill="#BFBFBF"></path></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1597113679046" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4408" xmlns:xlink="http://www.w3.org/1999/xlink" width="211.71875" height="200"><defs><style type="text/css"></style></defs><path d="M994.802 251.097v567.292c0 48.281-42.244 90.527-90.523 90.527H493.896c-18.105 0-30.175-12.07-30.175-30.178 0-36.209-30.176-66.383-66.385-66.383-36.211 0-72.422 30.174-72.422 66.383 0 18.107-12.069 30.178-30.174 30.178H119.725c-48.28 0-90.526-42.246-90.526-90.527V251.097c0-48.28 42.247-90.524 90.526-90.524h175.016c18.104 0 30.174 12.07 30.174 30.175 0 36.209 30.177 66.385 66.386 66.385 36.211 0 66.387-30.176 66.387-66.385 0-18.105 12.069-30.175 30.173-30.175h410.381c54.316 0 96.56 42.244 96.56 90.524zM524.07 848.564h380.208c18.105 0 30.174-12.068 30.174-30.176V251.097c0-18.105-12.068-30.175-30.174-30.175H524.07c-12.068 54.315-66.383 96.56-126.734 96.56-60.353 0-114.665-42.244-126.737-96.56H119.725c-18.105 0-30.176 12.07-30.176 30.175v567.292c0 18.107 12.071 30.176 30.176 30.176h150.874c12.072-54.314 66.385-96.561 126.737-96.561 60.351 0 108.629 42.246 126.734 96.56z" p-id="4409" fill="#BFBFBF"></path><path d="M158.602 617.545l25.5-30.601c15.9 14.7 36.9 24.601 56.4 24.601 23.1 0 35.4-9.9 35.4-25.5 0-16.501-13.5-21.601-33.3-30.001l-29.7-12.6c-22.5-9.301-45-27.301-45-59.701 0-36.3 31.8-64.2 76.801-64.2 25.8 0 51.601 10.2 69.601 28.5l-22.5 27.9c-14.1-11.7-28.8-18.3-47.1-18.3-19.5 0-32.101 8.7-32.101 23.399 0 15.9 15.9 21.601 34.8 29.101l29.101 12.301c27 11.1 44.7 28.2 44.7 60.3 0 36.301-30.3 67.201-81.601 67.201-29.7 0-59.401-11.7-81.001-32.4zM464.601 588.744H392.6L377 645.745h-45l71.101-222.002h52.2l71.4 222.002h-46.5l-15.6-57.001z m-9.6-34.5l-6.6-24.3c-6.9-23.101-12.9-48.601-19.5-72.602h-1.2c-5.7 24.301-12.3 49.501-18.9 72.602l-6.6 24.3h52.8zM552.797 423.743h44.4v184.802h90.002v37.2H552.797V423.743zM725.896 423.743h136.201v36.9h-91.801v51.3h78v37.201h-78v59.4h95.102v37.2H725.896V423.743z" p-id="4410" fill="#BFBFBF"></path></svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1597125499816" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="12329" xmlns:xlink="http://www.w3.org/1999/xlink" width="211.71875" height="200"><defs><style type="text/css"></style></defs><path d="M97.878 483.853c0-117.062-0.108-160.999-0.108-278.062 0-101.472 56.328-108.082 110.483-108.082h441.933c85.128 0 111.453 28.968 111.453 110.481v55.241c0 43.562-55.419 38.57-55.419 0V208.19c0-40.918-13.309-55.24-56.035-55.24H208.252c-45.746 0-55.241 6.203-55.241 55.24v552.407c0 30.278 16.572 55.241 55.241 55.241 67.004 0 43.482 0.026 110.484 0 33.77 0 36.252 55.241 0 55.241s-63.711 0.44-131.306 0.17c-39.867-0.163-72.883-23.774-84.643-60.322-3.292-10.223-4.694-21.525-4.694-32.34-0.323-116.658-0.215-178.076-0.215-294.734" fill="#BFBFBF" p-id="12330"></path><path d="M649.644 926.291c-152.344-0.027-275.666-123.537-275.666-276.122 0-152.586 123.915-276.259 276.529-276.042 152.616 0.215 275.884 124.022 275.722 276.878-0.16 152.236-123.807 275.314-276.585 275.286m0.756-496.868c-121.109-0.271-220.641 98.828-220.91 220.045-0.27 121.541 98.345 220.934 219.561 221.287 121.704 0.324 221.505-98.208 221.775-219.047 0.324-122.594-98.236-221.99-220.426-222.285M594.945 263.061c44.02 0.027 37.978 55.979 0 55.979h-331.45c-41.431 0-39.704-55.979 0-55.979 108.756-0.027 289.155-0.027 331.45 0zM318.736 428.782c44.021 0.028 37.979 55.98 0 55.98h-55.242c-41.431 0-39.704-55.98 0-55.98 108.757-0.027 12.948-0.027 55.242 0z" fill="#BFBFBF" p-id="12331"></path><path d="M785.502 547.22c-12.496-12.498-32.758-12.498-45.254 0L602.151 685.316l-42.191-42.191c-12.498-12.496-32.758-12.496-45.256 0-12.496 12.497-12.496 32.759 0 45.256l64.818 64.818c6.249 6.248 14.438 9.372 22.628 9.372s16.379-3.124 22.628-9.372a32.424 32.424 0 0 0 2.402-2.695 32.304 32.304 0 0 0 2.689-2.397l155.633-155.633c12.497-12.496 12.497-32.758 0-45.254z" fill="#BFBFBF" p-id="12332"></path></svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

@ -18,13 +18,14 @@ import './assets/icons' // icon
import './permission' // permission control
import { getDicts } from "@/api/system/dict/data";
import { getConfigKey } from "@/api/system/config";
import { parseTime, resetForm, addDateRange, selectDictLabel, download, handleTree } from "@/utils/ruoyi";
import { parseTime, resetForm, addDateRange, selectDictLabel, download, handleTree,formatDate } from "@/utils/ruoyi";
import Pagination from "@/components/Pagination";
// 全局方法挂载
Vue.prototype.getDicts = getDicts
Vue.prototype.getConfigKey = getConfigKey
Vue.prototype.parseTime = parseTime
Vue.prototype.formatDate = formatDate
Vue.prototype.resetForm = resetForm
Vue.prototype.addDateRange = addDateRange
Vue.prototype.selectDictLabel = selectDictLabel

View File

@ -1,17 +1,3 @@
/**
* 表格时间格式化
*/
export function formatDate(cellValue) {
if (cellValue == null || cellValue == "") return "";
var date = new Date(cellValue)
var year = date.getFullYear()
var month = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1
var day = date.getDate() < 10 ? '0' + date.getDate() : date.getDate()
var hours = date.getHours() < 10 ? '0' + date.getHours() : date.getHours()
var minutes = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()
var seconds = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds()
return year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds
}
/**
* @param {number} time
@ -214,7 +200,7 @@ export function getTime(type) {
export function debounce(func, wait, immediate) {
let timeout, args, context, timestamp, result
const later = function() {
const later = function () {
// 据上一次触发时间间隔
const last = +new Date() - timestamp
@ -231,7 +217,7 @@ export function debounce(func, wait, immediate) {
}
}
return function(...args) {
return function (...args) {
context = this
timestamp = +new Date()
const callNow = immediate && !timeout
@ -383,4 +369,3 @@ export function camelCase(str) {
export function isNumberStr(str) {
return /^[+-]?(0|([1-9]\d*))(\.\d+)?$/g.test(str)
}

View File

@ -5,6 +5,28 @@
const baseURL = process.env.VUE_APP_BASE_API
/**
* 表格时间格式化
*/
export function formatDate(cellValue) {
if (cellValue == null || cellValue == "") return "";
if (typeof cellValue === 'string') {
if (cellValue) {
return cellValue.substring(0, 10);
}
return;
}
var date = new Date(cellValue)
var year = date.getFullYear()
var month = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1
var day = date.getDate() < 10 ? '0' + date.getDate() : date.getDate()
var hours = date.getHours() < 10 ? '0' + date.getHours() : date.getHours()
var minutes = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()
var seconds = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds()
return year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds
}
// 日期格式化
export function parseTime(time, pattern) {
if (arguments.length === 0 || !time) {
@ -131,4 +153,3 @@ export function handleTree(data, id, parentId, children, rootId) {
});
return treeData != '' ? treeData : data;
}

View File

@ -0,0 +1,298 @@
<template>
<div class="app-container">
<el-form :model="queryParams" :rules="rules" ref="queryForm" :inline="true" label-width="100px">
<el-form-item label="年月" prop="yearMonth">
<el-select v-model="queryParams.yearMonth" placeholder="请选择年月">
<el-option
v-for="item in yearMonthList"
:value="item.value"
:label="item.label"
:key="item.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="案例名称" prop="caseName" clearable>
<el-input
v-model="queryParams.caseName"
placeholder="请输入案例名称"
clearable
size="small"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="warning"
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['system:user:export']"
>导出</el-button>
</el-col>
</el-row>
<el-table v-loading="loading" :data="dataList">
<!-- <el-table-column label="年月" align="center" prop="yearMonth" /> -->
<el-table-column label="案例URL" align="center" prop="urlHouseholds" width="300">
<template slot-scope="scope">
<a
:href="scope.row.urlHouseholds"
target="_blank"
v-bind:style="'color: blue;'"
>{{scope.row.urlHouseholds}}</a>
</template>
</el-table-column>
<el-table-column label="案例名称" align="center" prop="caseName" width="240" />
<el-table-column label="案例来源" align="center" prop="origin" />
<el-table-column label="挂牌/成交" align="center" prop="caseType" :formatter="caseTypeFormatter" />
<el-table-column label="案例单套ID" align="center" prop="householdsIdSRC" width="120" />
<el-table-column label="案例小区ID" align="center" prop="projectIdSRC" />
<el-table-column label="小区ID" align="center" prop="communityId" />
<el-table-column label="楼栋ID" align="center" prop="buildingId" />
<el-table-column label="租赁类型" align="center" :formatter="rentTypeFormatter" />
<el-table-column label="室-厅-卫">
<template slot-scope="scope">
<span>{{ scope.row.roomNum+'-'+scope.row.hallNum+'-'+(scope.row.bashRoomNum?scope.row.bashRoomNum:0) }}</span>
</template>
</el-table-column>
<el-table-column label="面积" align="center" prop="area" />
<el-table-column label="朝向" align="center" prop="toward" />
<el-table-column label="所在层/总楼层" align="center">
<template slot-scope="scope">
<span>{{ scope.row.currentFloor+'/'+scope.row.totalFloor }}</span>
</template>
</el-table-column>
<el-table-column label="有无电梯" align="center" prop="elevator" :formatter="youOrWuFormatter" />
<el-table-column label="装修类型" align="center" prop="decoration" />
<el-table-column label="建成年代" align="center" prop="year" />
<el-table-column label="房屋面积系数" align="center" prop="areaCoefficient" />
<el-table-column label="朝向系数" align="center" prop="towardCoefficient" />
<el-table-column label="楼层系数" align="center" prop="floorCoefficient" />
<el-table-column label="装修系数" align="center" prop="decorationCoefficient" />
<el-table-column label="建成年代系数" align="center" prop="yearCoefficient" />
<el-table-column label="楼栋系数" align="center" prop="buildingCoefficient" />
<el-table-column label="室厅修正系数" align="center" prop="roomTypeCoefficient" />
<el-table-column label="总价(元)" align="center" prop="totalPrice" />
<el-table-column label="单价" align="center" prop="unitPrice" />
<el-table-column label="散租单价" align="center" prop="priceScatterRent" />
<el-table-column label="整租单价" align="center" prop="priceEntireRent" />
<el-table-column label="合租折算价" align="center" prop="priceShareRent" />
<el-table-column label="带看总次数" align="center" prop="visitedNum" />
<el-table-column label="首次带看时间" align="center" prop="firstVisitedDate" />
<el-table-column label="15天内带看总次数" align="center" prop="visitedNum15" />
<el-table-column label="30天内带看总次数" align="center" prop="visitedNum30" />
<el-table-column label="案例状态" align="center" prop="status" :formatter="statusFormatter" />
<el-table-column label="最近一次挂牌总价调整幅度" align="center" prop="adjustedValue" />
<el-table-column label="最近一次挂牌总价调整比例" align="center" prop="adjustedPst" />
<el-table-column label="累计挂牌总价调整幅度" align="center" prop="adjustedCumValue" />
<el-table-column label="累计挂牌总价调整比例" align="center" prop="adjustedCumPst" />
<el-table-column label="累计挂牌总价绝对调整幅度" align="center" prop="adjustedCumValueAbs" />
<el-table-column label="累计挂牌总价绝对调整比例" align="center" prop="adjustedCumPstAbs" />
<el-table-column label="累计挂牌总价调价次数" align="center" prop="adjustedCumNum" />
<el-table-column label="首次挂牌总价" align="center" prop="priceTotalIn" />
<el-table-column label="下架时挂牌总价" align="center" prop="priceTotalOut" />
<el-table-column label="首次挂牌日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ formatDate(scope.row.priceDateIn) }}</span>
</template>
</el-table-column>
<el-table-column label="下架日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ formatDate(scope.row.priceDateOut) }}</span>
</template>
</el-table-column>
<el-table-column label="案例小区URL" align="center" width="400">
<template slot-scope="scope">
<a :href="scope.row.urlProjects" target="_blank">{{scope.row.urlProjects}}</a>
</template>
</el-table-column>
<el-table-column label="平均租金(上周期)" align="center" prop="rentPrice_1" />
<el-table-column label="案例涨跌幅" align="center" prop="range" />
<el-table-column label="涨跌类型" align="center" prop="rangeFlag" />
<el-table-column label="平均租金" align="center" prop="rentPrice" />
<el-table-column label="整租比" align="center" prop="entireRentRatio" />
<el-table-column label="分租比" align="center" prop="shareRentRatio" />
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageIndex"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</div>
</template>
<script>
import { getToken } from "@/utils/auth";
import {
list,
export2File,
getYearMonthList
} from "@/api/data/aggregateResidenceRentCase";
export default {
name: "aggregateResidenceRentCase",
data() {
//
var checkYearMonth = (rule, value, callback) => {
if (!value) {
callback(new Error("请输入年月"));
} else if (value === "" || isNaN(parseInt(value))) {
callback(new Error("请输入年月"));
} else {
callback();
}
};
return {
//
loading: true,
//
ids: [],
//
single: true,
//
multiple: true,
//
total: 0,
//
dataList: [],
//
title: "",
//
open: false,
//
queryParams: {
yearMonth: undefined,
caseName: undefined,
pageIndex: 1,
pageSize: 10
},
yearMonthList: [],
statusOptions: [
{ value: 1, text: "正常" },
{ value: 1, text: "失效" }
],
upload: {
//
open: false,
//
title: "",
//
isUploading: false,
//
headers: { Authorization: "Bearer " + getToken() },
//
url:
process.env.VUE_APP_BASE_API +
"/data/compute/rentprice/residence/importData"
},
//
form: {},
//
rules: {
yearMonth: [
{ validator: checkYearMonth, trigger: "blur" },
{ validator: checkYearMonth, trigger: "change" }
]
}
};
},
created() {
this.loading = false;
getYearMonthList().then(response => {
this.yearMonthList = response.data;
});
},
methods: {
rentTypeFormatter: function(row, column, cellValue, index) {
if (cellValue === 1) return "整租";
if (cellValue === 2) return "散租";
if (cellValue === 3) return "分租";
return "无";
},
caseTypeFormatter: function(row, column, cellValue, index) {
if (cellValue == "0") return "成交案例";
return "挂牌案例";
},
youOrWuFormatter: function(row, column, cellValue, index) {
if (cellValue) return "有";
return "无";
},
yesOrNotFormatter: function(row, column, cellValue, index) {
if (cellValue) return "是";
return "否";
},
statusFormatter: function(row, column, cellValue, index) {
if (cellValue === 3) return "当期活跃";
if (cellValue === 4) return "当期下架";
if (cellValue === 5) return "历史下架";
return "否";
},
/** 查询办公基价列表 */
getList() {
this.$refs["queryForm"].validate(valid => {
if (valid) {
this.loading = true;
list(this.queryParams).then(response => {
this.dataList = response.rows;
this.total = response.total;
this.loading = false;
});
}
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageIndex = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 导出按钮操作 */
handleExport() {
const queryParams = this.queryParams;
this.$refs["queryForm"].validate(valid => {
if (valid) {
this.$confirm("是否确认导出所有住宅租赁基价数据项?", "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(function() {
return export2File(queryParams);
})
.then(response => {
this.download(response.msg);
})
.catch(function() {});
}
});
}
}
};
</script>