Commit 4703bab1 authored by dengguangman's avatar dengguangman

Merge remote-tracking branch 'origin/master'

parents 565b5609 50cfdfac
......@@ -145,7 +145,7 @@ public class CustomerController extends BaseController {
if (!ObjectUtils.isEmpty(obj)) {
customer.setCompanyId(MapUtil.getInt(obj, "jskEid"));
customer.setLegalPerson(MapUtil.getStr(obj, "legalPerson"));
customer.setRegisterCapital(MapUtil.getStr(obj, "registeredCapital"));
customer.setRegisterCapital(MapUtil.getStr(obj, "registeredCapitalStr"));
customer.setProvinceId(MapUtil.getInt(obj, "provinceId"));
customer.setCityId(MapUtil.getInt(obj, "cityId"));
customer.setDistrictId(MapUtil.getInt(obj, "countyId"));
......
......@@ -35,7 +35,7 @@ public class EnterpriseBussinessController {
@ApiOperation(value = "客户项目列表(openApi)")
@RequestMapping(value = "/clientProjectPage", method = RequestMethod.POST)
public TableDataInfo clientProjectPage(@RequestBody EnterpriseBussinessClientProjectPageBody paramMap) throws Exception {
public Map<String, Object> clientProjectPage(@RequestBody EnterpriseBussinessClientProjectPageBody paramMap) throws Exception {
return enterpriseBussinessService.clientProjectPage(paramMap);
}
......@@ -59,7 +59,7 @@ public class EnterpriseBussinessController {
@ApiOperation(value = "供应商项目列表(openApi)")
@RequestMapping(value = "/supplierProjectPage",method = RequestMethod.POST)
public TableDataInfo supplierProjectPage(@RequestBody EnterpriseBussinessSupplierProjectPageBody paramMap) throws Exception {
public Map<String, Object> supplierProjectPage(@RequestBody EnterpriseBussinessSupplierProjectPageBody paramMap) throws Exception {
return enterpriseBussinessService.supplierProjectPage(paramMap);
}
......
......@@ -25,6 +25,14 @@ public class BusinessOpportunityRadarController {
@Resource
BusinessOpportunityRadarService opportunityRadarService;
/*
* 公招标讯
*/
@RequestMapping("/jskBidPage")
public AjaxResult jskBidPage(@RequestBody ComposeQueryDto compose) {
return opportunityRadarService.jskBidPage(compose);
}
/*
* 土地交易
*/
......@@ -82,4 +90,20 @@ public class BusinessOpportunityRadarController {
public AjaxResult getCapitalSourceSelect() {
return opportunityRadarService.getCapitalSourceSelect();
}
/*
* 推荐关键词
*/
@RequestMapping("/keywordList")
public AjaxResult keywordList() {
return opportunityRadarService.keywordList();
}
/*
* 招标来源网站
*/
@RequestMapping("/bidSourceList")
public AjaxResult bidSourceList(@RequestBody ComposeQueryDto compose) {
return opportunityRadarService.bidSourceList(compose);
}
}
......@@ -15,7 +15,10 @@ public interface BusinessOpportunityRadarService {
AjaxResult jskBidNewsPage(ComposeQueryDto compose);
AjaxResult jskBidTenderPage(ComposeQueryDto compose);
AjaxResult jskBidPage(ComposeQueryDto compose);
AjaxResult landMarketPage(ComposeQueryDto compose);
AjaxResult establishmentPage(ComposeQueryDto compose);
AjaxResult enterpriseIndex(ComposeQueryDto compose);
......@@ -30,4 +33,8 @@ public interface BusinessOpportunityRadarService {
AjaxResult getCapitalSourceSelect();
AjaxResult keywordList();
AjaxResult bidSourceList(ComposeQueryDto compose);
}
......@@ -44,6 +44,12 @@ public class BusinessOpportunityRadarServiceImpl implements BusinessOpportunityR
return BeanUtil.toBean(map, AjaxResult.class);
}
@Override
public AjaxResult jskBidPage(ComposeQueryDto compose) {
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/jskBid/page", BeanUtil.beanToMap(compose, false, false));
return BeanUtil.toBean(map, AjaxResult.class);
}
@Override
public AjaxResult landMarketPage(ComposeQueryDto compose) {
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/landMarket/page", BeanUtil.beanToMap(compose, false, false));
......@@ -88,4 +94,16 @@ public class BusinessOpportunityRadarServiceImpl implements BusinessOpportunityR
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/jskBidPlan/getCapitalSourceSelect", null);
return BeanUtil.toBean(map, AjaxResult.class);
}
@Override
public AjaxResult keywordList() {
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/project/keywordList", null);
return BeanUtil.toBean(map, AjaxResult.class);
}
@Override
public AjaxResult bidSourceList(ComposeQueryDto compose) {
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/jskBid/source", BeanUtil.beanToMap(compose, false, false));
return BeanUtil.toBean(map, AjaxResult.class);
}
}
......@@ -18,6 +18,11 @@ public class EnterpriseBussinessHistorySendPageBody extends BasePage {
@NotNull(message = "企业id不能为空")
private Integer cid;
/**
* 查询关键字
*/
private String keys;
/*
* 排序条件:1金额倒序,2金额正序,3时间倒序,4时间正序,7下浮率倒序,8下浮率正序,9工期倒序,10工期正序
*/
......
......@@ -13,7 +13,7 @@ import javax.validation.constraints.NotNull;
@EqualsAndHashCode(callSuper = false)
public class EnterpriseProjectLandDetailBody {
/**
* 企业id
* id
*/
@NotNull(message = "id不能为空")
private Integer id;
......
......@@ -17,7 +17,7 @@ public class EnterpriseUipSearchBody extends BasePage {
/**
* 查询关键字
*/
private String keys;
private List<String> keys;
/*
......
......@@ -51,7 +51,17 @@ let claim= function claim(param) {
data: param
})
}
// 查建筑企业
let enterprisePage= function enterprisePage(param) {
return request({
url: '/enterprise/page',
method: 'post',
data: param
})
}
export default {aptitudeCode,personCert,searchDic,regionWebList,uipGroupData,uipSerach,claim}
\ No newline at end of file
export default {aptitudeCode,personCert,searchDic,regionWebList,uipGroupData,uipSerach,claim,enterprisePage}
\ No newline at end of file
import request from '@/utils/request'
// 导入客户列表
let importData= function importData(param) {
let importData = function importData(param) {
return request({
url: '/customer/importData',
method: 'POST',
......@@ -8,15 +8,31 @@ let importData= function importData(param) {
})
}
// 查询条件字段
let searchDic= function searchDic(param) {
let searchDic = function searchDic(param) {
return request({
url: 'https://files.jiansheku.com/file/json/common/searchDic.json',
method: 'get',
})
}
// 关键词哎字段
let keywordList = function keywordList(param) {
return request({
url: '/radar/keywordList',
method: 'post',
})
}
// 标讯-来源网站下拉远程搜索
let bidSourceList = function bidSourceList(param) {
return request({
url: '/radar/bidSourceList',
method: 'post',
data: param
})
}
// 专项债项目查询
let bondProjectPage= function bondProjectPage(param) {
let bondProjectPage = function bondProjectPage(param) {
return request({
url: '/radar/bondProjectPage',
method: 'post',
......@@ -24,7 +40,7 @@ let bondProjectPage= function bondProjectPage(param) {
})
}
// 专项债项目详情查询
let specialDebtProjectDetail= function specialDebtProjectDetail(param) {
let specialDebtProjectDetail = function specialDebtProjectDetail(param) {
return request({
url: '/enterpriseProject/specialDebtProjectDetail',
method: 'post',
......@@ -32,14 +48,169 @@ let specialDebtProjectDetail= function specialDebtProjectDetail(param) {
})
}
// 专项债项目详情查询
let specialDebtPage= function specialDebtPage(param) {
let specialDebtPage = function specialDebtPage(param) {
return request({
url: '/enterpriseProject/specialDebtPage',
method: 'post',
data: param
})
}
// 土地交易查询
let landMarketPage = function landMarketPage(param) {
return request({
url: '/radar/landMarketPage',
method: 'post',
data: param
})
}
// 土地交易详情查询
let landDetail = function landDetail(param) {
return request({
url: '/enterpriseProject/landDetail',
method: 'post',
data: param
})
}
// 拟建查询
let establishmentPage = function establishmentPage(param) {
return request({
url: '/radar/establishmentPage',
method: 'post',
data: param
})
}
// 拟建详情查询
let approvalInfoDetail = function approvalInfoDetail(param) {
return request({
url: '/enterpriseProject/approvalInfoDetail',
method: 'post',
data: param
})
}
// 拟建详情立项审批列表查询
let approvalExaminePage = function approvalExaminePage(param) {
return request({
url: '/enterpriseProject/approvalExaminePage',
method: 'post',
data: param
})
}
// 拟建详情民间推介列表查询
let approvalMarketingPage = function approvalMarketingPage(param) {
return request({
url: '/enterpriseProject/approvalMarketingPage',
method: 'post',
data: param
})
}
// 招标计划查询
let jskBidPlanPage = function jskBidPlanPage(param) {
return request({
url: '/radar/jskBidPlanPage',
method: 'post',
data: param
})
}
// 招标计划资金来源下拉
let getCapitalSourceSelect = function getCapitalSourceSelect(param) {
return request({
url: '/radar/jskBidPlan/getCapitalSourceSelect',
method: 'post',
data: param
})
}
// 招标计划详情
let bidPlanDetail = function bidPlanDetail(param) {
return request({
url: '/enterpriseProject/bidPlanDetail',
method: 'post',
data: param
})
}
// 标讯pro
let jskBidNewsPage = function jskBidNewsPage(param) {
return request({
url: '/radar/jskBidNewsPage',
method: 'post',
data: param
})
}
// 标讯pro详情
let bidNoticeProDetail = function bidNoticeProDetail(param) {
return request({
url: '/enterpriseProject/bidNoticeProDetail',
method: 'post',
data: param
})
}
// 公招标讯
let jskBidPage = function jskBidPage(param) {
return request({
url: 'radar/jskBidPage',
method: 'post',
data: param
})
}
// 公招标讯详情
let bidNoticeDetail = function bidNoticeDetail(param) {
return request({
url: '/enterpriseProject/bidNoticeDetail',
method: 'post',
data: param
})
}
// 开标记录查询
let jskBidTenderPage = function jskBidTenderPage(param) {
return request({
url: '/radar/jskBidTenderPage',
method: 'post',
data: param
})
}
// 开标记录详情
let tenderDetail = function tenderDetail(param) {
return request({
url: '/enterpriseBussiness/tenderDetail',
method: 'post',
data: param
})
}
// 开标记录详情列表
let tenderPage = function tenderPage(param) {
return request({
url: '/enterpriseBussiness/tenderPage',
method: 'post',
data: param
})
}
export default {importData,searchDic,bondProjectPage,specialDebtProjectDetail,specialDebtPage}
\ No newline at end of file
export default {
importData,
searchDic,
bondProjectPage,
specialDebtProjectDetail,
specialDebtPage,
landMarketPage,
landDetail,
establishmentPage,
approvalInfoDetail,
approvalExaminePage,
approvalMarketingPage,
jskBidPlanPage,
getCapitalSourceSelect,
bidPlanDetail,
jskBidNewsPage,
bidNoticeProDetail,
keywordList,
bidSourceList,
jskBidPage,
bidNoticeDetail,
jskBidTenderPage,
tenderDetail,
tenderPage
}
\ No newline at end of file
......@@ -307,6 +307,12 @@ ul, li {
background: #F0F3FA;
}
}
.is-scrolling-left+.el-table__fixed,.is-scrolling-middle+.el-table__fixed,.is-scrolling-right+.el-table__fixed{
box-shadow:none;
height: auto !important;
bottom: 16px;
}
.caret-wrapper{
width: 10px;
}
......
......@@ -686,6 +686,7 @@
>img{
margin-left: 16px;
cursor: pointer;
width: 20px;
}
}
}
......@@ -1050,7 +1051,7 @@
transform: rotateX(180deg);
width: 9px;
height: 11px;
margin: 4px 2px 0 10px;
margin: 6px 2px 0 10px;
}
}
}
......@@ -1125,3 +1126,7 @@
.el-popper[x-placement^=bottom]{
margin-top: 0 !important;
}
.el-dialog__body{
padding-top: 14px;
padding-bottom: 18px;
}
......@@ -182,6 +182,9 @@ select {
cursor: pointer;
margin-right: 24px;
}
.select-popper .color_text{
color: #0381fa;
}
.select-popper .select-popper-img {
width: 24px;
......@@ -303,6 +306,14 @@ select {
.el-dropdown-land {
margin-right: 24px;
}
.el-dropdown-land .color_text{
color: #1890ff;
background-color: #FFFFFF;
}
.el-dropdown-menu .color_text{
color: #1890ff;
background-color: #FFFFFF;
}
.el-dropdown-land .el-icon-caret-bottom {
color: #333333;
......@@ -342,10 +353,9 @@ select {
width: 100px;
display: inline-block;
margin: 0px 8px;
.el-input__inner {
}
.jabph_popper_box .jabph_popper_wrap .jabph_popper_input .el-input__inner {
width: 100px;
}
}
.jabph_popper_box div:last-child {
......@@ -453,21 +463,6 @@ select {
display: inline-block;
}
.viewlist-el-popover .pup_list li .VIP {
width: 24px;
height: 12px;
top: 0px;
right: -8px;
position: absolute;
}
.viewlist-el-popover .pup_list li .SVIP {
width: 24px;
height: 12px;
top: 0px;
right: -10px;
position: absolute;
}
.viewlist-el-popover .pup_list li:hover {
color: #0081FF;
......@@ -715,3 +710,365 @@ select {
.checkbox .checkbox-content .checkbox-content-qx{
margin-right: 30px;
}
.toolbar-right-search {
margin-left: 16px;
}
.bottomlist-title-left{
display: inline-flex;
align-items: center;
}
.toolbar-right-search .toolbar-right_input {
width: 228px;
display: inline-flex;
align-items: center;
}
.toolbar-right-search .el-input__inner {
width: 228px;
height: 32px;
line-height: 32px;
}
.toolbar-right-search .el-input .el-input__inner {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
border-right: none;
height: 32px;
line-height: 32px;
}
.toolbar-right-search .el-input-group__append{
padding: 0;
}
.toolbar-right-search .result-search {
height: 32px;
line-height: 32px;
}
.toolbar-right-search .toolbar-right-search .el-input .el-input__inner {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
border-right: none;
height: 32px;
line-height: 32px;
}
.toolbar-right-search .result-search {
width: 80px;
height: 32px;
background: #0081FF;
border-top-right-radius: 2px;
border-bottom-right-radius: 2px;
text-align: center;
line-height: 32px;
padding: 0;
cursor: pointer;
color: #fff;
}
.toolbar-right-search .result-search:hover {
background: #0074E5;
}
.info-list {
display: flex;
/* width: 1200px; */
margin: auto;
background: #fff;
padding: 24px 0px;
border-bottom: 1px solid #EFEFEF;
/* cursor: pointer; */
}
.info-list:hover {
background: #F5FAFF;
}
.info-list .info-list-left {
width: 128px;
display: flex;
justify-content: center;
align-items: flex-start;
}
.info-list .info-list-right {
width: auto;
}
.info-list-left img {
width: 96px;
height: 96px;
}
.info-list-left .list-left-titel {
width: 78px;
height: 78px;
line-height: 78px;
border-radius: 4px 4px 4px 4px;
text-align: center;
color: #fff;
font-size: 32px;
}
.info-list-right .card-right-title {
display: flex;
align-items: center;
line-height: 18px;
/* cursor: pointer; */
}
.info-list-right .card-right-title .card-right-img {
width: 14px;
height: 14px;
margin-right: 2px;
margin-top: 2px;
}
.info-list-right .card-right-title .right-title-black {
display: inline-block;
font-weight: 400;
color: #333333;
margin-right: 24px;
}
.info-list-right .card-right-title .right-title-black-640 {
max-width: 640px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.info-list-right .card-right-title .right-title-blue {
font-weight: 400;
color: #0081FF;
margin-right: 24px;
cursor: pointer;
}
.info-list-right .card-right-title .right-title-grey {
font-weight: 400;
color: #999999;
}
.info-list-right .card-right-title .right-title-blue .blue {
color: #0081FF;
margin-right: 12px;
}
.info-list-right .card-right-title .right-title-blue .black {
color: #333333;
margin-right: 12px;
}
.info-list-right .card-right-title .right-title-blue .grey {
color: #999999;
margin-right: 12px;
}
/* 标题 */
.info-list-right .card-right-title .title {
font-size: 18px;
font-weight: bold;
color: #333333;
margin-right: 12px;
line-height: 24px;
cursor: pointer;
padding: 0;
}
.info-list-right .card-right-title .right-title-caption {
font-size: 18px;
font-weight: bold;
color: #333333;
margin-right: 12px;
line-height: 24px;
cursor: pointer;
/* height: 24px; */
}
/* 地区标签 */
.info-list-right .card-right-title .region {
display: inline-block;
border-radius: 2px 2px 2px 2px;
border: 1px solid #099D4B;
display: inline-block;
text-align: center;
font-size: 12px;
line-height: 22px;
padding: 0 16px;
background: #F3F3FF;
color: #8491E8;
margin-right: 8px;
}
/* 曾用名 */
.info-list-right .card-right-title .formername {
display: inline-block;
border-radius: 2px 2px 2px 2px;
display: inline-block;
text-align: center;
font-size: 12px;
line-height: 22px;
padding: 0 16px;
background: #EEEEEE;
color: #838383;
margin-right: 8px;
}
/* 正向标签 */
.info-list-right .card-right-title .positive {
border-radius: 2px 2px 2px 2px;
display: inline-block;
text-align: center;
font-size: 12px;
line-height: 22px;
height: 22px;
padding: 0 16px;
color: #54BC7E;
background-color: #ECF6E7;
margin-right: 8px;
}
/* 中性标签 */
.info-list-right .card-right-title .neutral {
display: inline-block;
border-radius: 2px 2px 2px 2px;
display: inline-block;
text-align: center;
font-size: 12px;
line-height: 22px;
padding: 0 16px;
background: #E4F3FD;
color: #41A1FD;
margin-right: 8px;
}
.info-list-right .card-right-title .neutral1 {
margin-bottom: 8px;
}
/* 警示标签 */
.info-list-right .card-right-title .warning {
display: inline-block;
border-radius: 2px 2px 2px 2px;
display: inline-block;
text-align: center;
font-size: 12px;
line-height: 22px;
padding: 0 16px;
background: #FFF3F3;
color: #FD5757;
margin-right: 8px;
}
/* 其它紫色 */
.info-list-right .card-right-title .purple {
display: inline-block;
border-radius: 2px 2px 2px 2px;
display: inline-block;
text-align: center;
font-size: 12px;
line-height: 22px;
padding: 0 16px;
background: #FCF3FF;
color: #B589DB;
margin-right: 8px;
}
/*地区淡蓝色 */
.info-list-right .card-right-title .cityblue {
display: inline-block;
border-radius: 2px 2px 2px 2px;
display: inline-block;
text-align: center;
font-size: 12px;
line-height: 22px;
padding: 0 16px;
background: #F3F3FF;
color: #8491E8;
margin-right: 8px;
}
/* 工程用途 */
.info-list-right .card-right-title .purposeStr {
display: inline-block;
border-radius: 2px 2px 2px 2px;
display: inline-block;
text-align: center;
font-size: 12px;
line-height: 22px;
padding: 0 16px;
background: #E3F6F8;
color: #44BCC4;
margin-right: 8px;
}
/* 荣誉奖项 */
.info-list-right .card-right-title .honoraryaward {
display: inline-block;
border-radius: 2px 2px 2px 2px;
display: inline-block;
text-align: center;
font-size: 12px;
line-height: 22px;
padding: 0 16px;
background: #FFF1DC;
color: #BFA061;
margin-right: 8px;
}
.info-list-right .card-right-title .honoraryaward .color-0 {
background: #E4F3FD;
color: #41A1FD;
}
.info-list-right .card-right-title .honoraryaward .color-1 {
background: #FFF1DC;
color: #BFA061;
}
.info-list-right .card-right-title .honoraryaward .color-2 {
background: #E3F6F8;
color: #44BCC4;
}
.info-list-right .card-right-title .honoraryaward .color-3 {
background: #F3F3FF;
color: #8491E8;
}
.info-list-right .card-right-title .honoraryaward .color-4 {
background: #FCF3FF;
color: #B589DB;
}
.info-list-right .card-right-title .honoraryaward .color-5 {
background: #E4F3FD;
color: #41A1FD;
}
.info-list-right .card-right-title .honoraryaward .color-6 {
background: #FFF1DC;
color: #BFA061;
}
.info-list-right .card-right-title .honoraryaward .color-7 {
background: #E3F6F8;
color: #44BCC4;
}
.info-list-right .card-right-title .honoraryaward .color-8 {
background: #F3F3FF;
color: #8491E8;
}
.info-list-right .card-right-title .honoraryaward .color-9 {
background: #FCF3FF;
color: #B589DB;
}
......@@ -49,6 +49,7 @@
</template>
<script>
import api from '@/api/radar/radar.js';
var debounce=function(fn, delay = 300) {
var timer = null;
return function() {
......@@ -114,32 +115,36 @@ export default {
this.content = this.keywordList[this.activeIndex].content
},
show(){
// this.$axios.post("/nationzj/project/keywordList").then(res=>{
// if(res.data.code==200){
// this.keywordList = res.data.data
// this.options = res.data.data
// // localStorage.setItem("keyword",JSON.stringify(res.data.data))
// this.content = this.keywordList[this.activeIndex].content;
// this.dialogVisible = true;
// }
// })
api.keywordList().then(res => {
console.log(res);
if(res.code==200){
this.keywordList = res.data
this.options = res.data
// localStorage.setItem("keyword",JSON.stringify(res.data.data))
this.content = this.keywordList[this.activeIndex].content;
this.dialogVisible = true;
}
}).catch(error => {
});
this.dialogVisible = true;
/*if(localStorage.getItem("keyword")){
if(localStorage.getItem("keyword")){
this.keywordList = JSON.parse(localStorage.getItem("keyword"));
this.options = this.keywordList;
this.content = this.keywordList[this.activeIndex].content;
this.dialogVisible = true;
}else{
this.$axios.post("/nationzj/project/keywordList").then(res=>{
if(res.data.code==200){
this.keywordList = res.data.data
this.options = res.data.data
api.keywordList().then(res => {
console.log(res);
if(res.code==200){
this.keywordList = res.data
this.options = res.data
localStorage.setItem("keyword",JSON.stringify(res.data.data))
this.content = this.keywordList[this.activeIndex].content;
this.dialogVisible = true;
}
})
}*/
}).catch(error => {
});
}
},
},
......
......@@ -107,17 +107,30 @@ export const constantRoutes = [
path: '/company',
component: Layout,
hidden: true,
name: 'Company',
redirect: 'noredirect',
children: [
{
path: '/company/:id',
component: () => import('@/views/detail/party-b/index'),
name: 'PartyB',
name: 'Company',
meta: { title: '已方详情' }
}
]
},
{
path: '/personnel',
component: Layout,
hidden: true,
redirect: 'noredirect',
children: [
{
path: '/personnel/:id',
component: () => import('@/views/detail/party-b/index'),
name: 'Personnel',
meta: { title: '已方人员详情' }
}
]
},
{
path: '/structure',
component: Layout,
......
......@@ -7,16 +7,16 @@
<div class="app-container">
<el-card class="box-card noborder">
<div class="tables">
<div class="empty" v-if="tableData.total==0 && isNew == true">
<div class="empty" v-if="tableData.total==0">
<img src="@/assets/images/project/empty.png">
<div class="p1">添加你的第一位客户吧</div>
<div class="p2">抱歉,你还未添加客户,快去添加吧</div>
<div class="p1">抱歉,没找到相关数据</div>
<div class="p2">建议调整关键词或筛选条件,重新搜索</div>
<div class="btn btn_primary h36 w88" @click="opennew">添加客户</div>
<div class="btn btn_primary btn_shallow h36 w88" @click="pldrs">批量导入</div>
</div>
<div class="table_search">
<div class="searchInput">
<el-input type="text" v-model="searchParam.companyName" placeholder="输入企业名称查询"></el-input>
<el-input type="text" clearable v-model="searchParam.companyName" placeholder="输入企业名称查询"></el-input>
<div class="btn" @click="handleCurrentChange(1)">搜索</div>
</div>
<div class="dc">
......@@ -25,7 +25,7 @@
<div class="btn btn_primary h32 p10" @click="opennew"><div class="img img1"></div>添加客户</div>
</div>
</div>
<el-table v-if="isNew != true || tableData.total > 0"
<el-table v-if="tableData.total > 0"
:data="tableData.rows"
stripe border
style="width: 100%"
......@@ -120,7 +120,10 @@
prop="isMajor"
label="局级大客户" width="88">
<template slot-scope="scope">
<span v-if="scope.row.isMajor">
{{scope.row.isMajor == 1?"是":"否"}}
</span>
<span v-else>--</span>
</template>
</el-table-column>
<el-table-column
......@@ -219,7 +222,7 @@
<el-input type="text" placeholder="请输入" v-model="queryParam.creditCode"></el-input>
</el-form-item>
<div class="popbot">
<div class="wordprimary">前往城投平台寻找客户线索></div>
<div class="wordprimary" @click="toct">前往城投平台寻找客户线索></div>
<div class="btn btn_cancel h32" @click="resetForm('ruleForm')">返回</div>
<div class="btn btn_primary h32" @click="submitForm('ruleForm')">添加</div>
</div>
......@@ -287,7 +290,7 @@ export default {
headers: {
Authorization: "Bearer " + getToken(),
},
isNew:true,
// isNew:true,
showlist:false,
}
},
......@@ -297,6 +300,9 @@ export default {
this.prvinceTree()
},
methods:{
toct(){
this.$router.push({path:'/macro/urban'})
},
getDictType(){
//获取客户等级
getDictType('customer_level_type').then(result=>{
......@@ -325,7 +331,7 @@ export default {
//翻页
handleCurrentChange(val) {
this.pldr=false
this.isNew = false
// this.isNew = false
this.searchParam.pageNum=val
this.getCustomerList()
},
......@@ -543,4 +549,7 @@ export default {
padding-right: 26px;
}
}
.app-container{
height: auto;
}
</style>
......@@ -54,12 +54,12 @@
label="名称">
</el-table-column>
<el-table-column
prop="name"
label="数量(家)">
prop="sum"
label="数量(家)" align="right">
</el-table-column>
<el-table-column
prop="point"
label="占比">
label="占比" align="right">
</el-table-column>
</el-table>
</div>
......
......@@ -74,6 +74,7 @@
<!-- 地区选择 -->
<template v-else-if="form.type==7">
<el-cascader
ref="cascader"
:options="form.options"
:props="form.props"
v-model="form.value"
......@@ -171,9 +172,10 @@ export default {
margin-right: 19px;
}
::v-deep .el-input__inner{
border: 1px solid #EFEFEF;
border: 1px solid #D9D9D9;
height: 32px;
line-height: 32px;
padding-right: 27px;
}
::v-deep .el-form-item{
margin-right: 8px !important;
......@@ -227,9 +229,10 @@ export default {
flex: 1;
}
::v-deep .el-input__inner {
border-right: 0;
border-radius: 2px 0 2px 0;
width: 180px;
border: 1px solid #D9D9D9;
border-right: 0;
}
}
.fromTime{
......@@ -260,7 +263,7 @@ export default {
::v-deep .el-select__tags{
.el-tag{
&:first-child{
width: 100%;
//width: 100%;
}
}
}
......
......@@ -9,6 +9,7 @@
</el-input>
<el-menu
ref="sideMenu"
:unique-opened="true"
:default-active="routeIndex"
class="detail-menu"
@open="handleOpen">
......@@ -76,7 +77,7 @@ export default {
]},
{title: '城投分析', pathName: '', children: [
{title: '区域经济', pathName: 'regionalEconomies'},
{title: '城投地', pathName: 'landAcquisition'},
{title: '城投地', pathName: 'landAcquisition'},
{title: '同地区城投', pathName: 'sameRegion'}
]},
{title: '风险信息', pathName: '', children: [
......
......@@ -86,17 +86,17 @@
</div>
</el-form-item>
<el-form-item label="项目阶段:" prop="projectStage">
<el-select v-model="addParam.projectStage" style="width: 100%" class="form-content-width" placeholder="请选择项目状态">
<el-select v-model="addParam.projectStage" style="width: 100%" class="form-content-width" placeholder="请选择项目阶段">
<el-option v-for="(item, index) in projectStage" :key="index" :label="item.dictLabel" :value="item.dictValue" />
</el-select>
</el-form-item>
<el-form-item label="项目类型:" prop="projectType">
<el-select v-model="addParam.projectType" style="width: 100%" class="form-content-width" placeholder="请选择项目阶段">
<el-select v-model="addParam.projectType" style="width: 100%" class="form-content-width" placeholder="请选择项目类型">
<el-option v-for="(item, index) in projectType" :key="index" :label="item.dictLabel" :value="item.dictValue" />
</el-select>
</el-form-item>
<el-form-item label="项目类别:" prop="projectCategory">
<el-select v-model="addParam.projectCategory" style="width: 100%" class="form-content-width" placeholder="请选择项目阶段">
<el-select v-model="addParam.projectCategory" style="width: 100%" class="form-content-width" placeholder="请选择项目类别">
<el-option v-for="(item, index) in projectCategory" :key="index" :label="item.dictLabel" :value="item.dictValue" />
</el-select>
</el-form-item>
......
......@@ -26,7 +26,7 @@
>
<template slot="projectAllName" slot-scope="scope">
<div class="flex-box">
<img class="tip-img" src="@/assets/images/detail/ico_pdf.png" v-if="scope.row.sourceUrl" @click="handlePic(scope.row.sourceUrl)"/>
<img class="tip-img" src="@/assets/images/detail/ico_pdf.png" v-if="scope.row.snapshootPic" @click="handlePic(scope.row.snapshootPic, true)"/>
<div class="a-link" @click="handlePic(scope.row.sourceUrl)" v-if="scope.row.sourceUrl&&scope.row.projectAllName" v-html="scope.row.projectAllName" style="cursor: pointer"></div>
<!-- <router-link to="" tag="a" class="a-link" v-if="scope.row.id&&scope.row.projectAllName" v-html="scope.row.projectAllName"></router-link>-->
<span v-else v-html="scope.row.projectAllName || '--'"></span>
......@@ -35,6 +35,9 @@
<template slot="province" slot-scope="scope">
{{scope.row.province}}{{`${scope.row.city?'-'+scope.row.city:''}`}}
</template>
<template slot="lowerRate" slot-scope="scope">
<span>{{scope.row.lowerRate ? scope.row.lowerRate+'%' : '--'}}</span>
</template>
</tables>
</el-drawer>
</div>
......@@ -74,7 +77,7 @@ export default {
{label: '项目地区', prop: 'province', width: '160', slot: true},
{label: '项目类型', prop: 'boundType', width: '130'},
{label: '工期(天)', prop: 'period', width: '90'},
{label: '下浮率', prop: 'lowerRate', width: '90'}
{label: '下浮率', prop: 'lowerRate', width: '90', slot: true}
],
//列表
tableLoading:false,
......@@ -99,7 +102,8 @@ export default {
this.tableDataTotal = res.total
this.amountTotal = res.totalAmount
},
handlePic(url){
handlePic(url, isPic){
isPic ? url = 'https://imgs.jiansheku.com/'+url : ''
if(url){
window.open(url, "_blank")
}
......
......@@ -26,7 +26,7 @@
>
<template slot="projectAllName" slot-scope="scope">
<div class="flex-box">
<img class="tip-img" src="@/assets/images/detail/ico_pdf.png" v-if="scope.row.sourceUrl" @click="handlePic(scope.row.sourceUrl)"/>
<img class="tip-img" src="@/assets/images/detail/ico_pdf.png" v-if="scope.row.snapshootPic" @click="handlePic(scope.row.snapshootPic, true)"/>
<div class="a-link" @click="handlePic(scope.row.sourceUrl)" v-if="scope.row.sourceUrl&&scope.row.projectAllName" v-html="scope.row.projectAllName" style="cursor: pointer"></div>
<!-- <router-link to="" tag="a" class="a-link" v-if="scope.row.id&&scope.row.projectAllName" v-html="scope.row.projectAllName"></router-link>-->
<span v-else v-html="scope.row.projectAllName || '--'"></span>
......@@ -35,6 +35,9 @@
<template slot="province" slot-scope="scope">
{{scope.row.province}}{{`${scope.row.city?'-'+scope.row.city:''}`}}
</template>
<template slot="lowerRate" slot-scope="scope">
<span>{{scope.row.lowerRate ? scope.row.lowerRate+'%' : '--'}}</span>
</template>
</tables>
</el-drawer>
</div>
......@@ -74,7 +77,7 @@ export default {
{label: '项目地区', prop: 'province', width: '160', slot: true},
{label: '项目类型', prop: 'boundType', width: '130'},
{label: '工期(天)', prop: 'period', width: '90'},
{label: '下浮率', prop: 'lowerRate', width: '90'}
{label: '下浮率', prop: 'lowerRate', width: '90', slot: true}
],
//列表
tableLoading:false,
......@@ -99,7 +102,8 @@ export default {
this.tableDataTotal = res.total
this.amountTotal = res.totalAmount
},
handlePic(url){
handlePic(url, isPic){
isPic ? url = 'https://imgs.jiansheku.com/'+url : ''
if(url){
window.open(url, "_blank")
}
......
......@@ -44,6 +44,7 @@
import mixin from '../mixins/mixin'
import { clientPage } from '@/api/detail/party-a/dealings'
import ClientDetail from './component/customDetail'
import auth from "@/plugins/auth";
export default {
name: 'Custom',
props: ['companyId'],
......@@ -90,6 +91,12 @@ export default {
this.tableLoading = false
if(res.code==200){
this.tableData = res.rows
if(this.tableData&&this.tableData.length>0){
this.tableData.forEach(item => {
typeof item.projectInfo=='string' ? item.projectInfo = JSON.parse(item.projectInfo) : ''
item.amount ? item.amount = parseFloat(item.amount.toFixed(4)) : ''
})
}
}
this.tableDataTotal = res.total
},
......
......@@ -90,6 +90,12 @@ export default {
this.tableLoading = false
if(res.code==200){
this.tableData = res.rows
if(this.tableData&&this.tableData.length>0){
this.tableData.forEach(item => {
typeof item.projectInfo=='string' ? item.projectInfo = JSON.parse(item.projectInfo) : ''
item.amount ? item.amount = parseFloat(item.amount.toFixed(4)) : ''
})
}
}
this.tableDataTotal = res.total
},
......
<template>
<div class="detail-container">
<head-form
ref="headForm"
title="招标公告"
:form-data="formData"
:query-params="queryParams"
......@@ -129,22 +130,25 @@ export default {
},
getAreaList(params){
if(params.province&&params.province.length>0){
let arr = this.$refs.headForm.$refs.cascader[0].getCheckedNodes()
let provinceIds = [], cityIds = [], areaIds = []
for(let i=0;i<params.province.length;i++){
params.province[i][0]?provinceIds.push(params.province[i][0]):''
params.province[i][1]?cityIds.push(params.province[i][1]):''
params.province[i][2]?areaIds.push(params.province[i][2]):''
for (var i in arr) {
if (arr[i].parent) {
if (!arr[i].parent.checked) {
if(arr[i].hasChildren || arr[i].level==2){
cityIds.push(arr[i].value)
}else{
areaIds.push(arr[i].value)
}
}
} else {
provinceIds.push(arr[i].value)
}
}
delete params.province
params.provinceIds = provinceIds.filter(function(value,index,self){
return self.indexOf(value) === index
})
params.cityIds = cityIds.filter(function(value,index,self){
return self.indexOf(value) === index
})
params.areaIds = areaIds.filter(function(value,index,self){
return self.indexOf(value) === index
})
provinceIds.length>0?params.provinceIds = provinceIds:''
cityIds.length>0?params.cityIds = cityIds:''
areaIds.length>0?params.areaIds = areaIds:''
}
return params
}
......
......@@ -23,7 +23,7 @@
<div v-else v-html="scope.row.name || '--'"></div>
<div class="tags" v-if="scope.row.status || scope.row.biddingAnnouncement">
<span class="tag style1" v-if="scope.row.status">{{scope.row.status}}</span>
<span class="tag style1" v-if="scope.row.biddingAnnouncement">招标数{{scope.row.biddingAnnouncement}}</span>
<span class="tag style1" v-if="scope.row.biddingCount">招标数{{scope.row.biddingCount}}</span>
</div>
</template>
</tables>
......@@ -51,7 +51,7 @@ export default {
],
formData: [
{ type: 1, fieldName: 'hasBid', value: '', placeholder: '招标公告', options: [
{name:'不限',value:''},
{name:'不限',value:'noLimit'},
{name:'有招标公告',value:1},
{name:'无招标公告',value:0}
]
......@@ -70,6 +70,9 @@ export default {
async handleQuery(params) {
this.tableLoading = true
let param = params?params:this.queryParams
if(param.hasBid=='noLimit'){
delete param.hasBid
}
let res = await affiliates(param)
this.tableLoading = false
if(res.code==200){
......
......@@ -65,7 +65,7 @@
</div>
</div>
<div class="company-menu">
<el-button @click="handleClaim" v-if="ifClaim==1" class="hasClaim" v-loading="claimLoading"><i class="el-ico-claim" alt="已认领" title="已认领"></i> 已认领</el-button>
<el-button v-if="ifClaim==1" class="hasClaim" v-loading="claimLoading"><i class="el-ico-claim" alt="已认领" title="已认领"></i> 已认领</el-button>
<el-button @click="handleClaim" v-else class="claim" v-loading="claimLoading"><i class="el-ico-claim" alt="认领客户" title="认领客户"></i> 认领客户</el-button>
</div>
......
......@@ -9,7 +9,7 @@
<div class="operations-title">{{item.bratingSubjectLevel}}-<span>{{item.ratingDate}}</span></div>
<div class="flex-box operations-info">
<div>{{item.bondType || '--'}}</div>
<span class="text-cl1"><img src="@/assets/images/detail/overview/oper_source.png">{{item.creditRatingAgency || '--'}}</span>
<span class="text-cl1" :title="item.creditRatingAgency"><img src="@/assets/images/detail/overview/oper_source.png">{{item.creditRatingAgency || '--'}}</span>
</div>
</div>
</li>
......
<template>
<div class="app-container rela-container">
<div class="common-title">关系企业</div>
<el-tabs v-model="activeName" @tab-click="handleQuery" class="tabpane selfTab">
<el-tabs v-model="activeName" @tab-click="handleClick" class="tabpane selfTab">
<el-tab-pane label="股东" name="first"></el-tab-pane>
<el-tab-pane label="对外投资" name="second"></el-tab-pane>
</el-tabs>
<div class="table-item">
<div class="rela-person" v-if="activeName=='first'">实际控制人:{{financial&&financial.actualController || '--'}}</div>
<div class="rela-person" v-show="activeName=='first'">实际控制人:{{financial&&financial.actualController || '--'}}</div>
<el-table :data="holderData" border style="width: 100%" v-show="activeName=='first'">
<el-table-column label="序号" width="55" align="left" fixed>
<template slot-scope="scope">{{ holderParams.pageNum * holderParams.pageSize - holderParams.pageSize + scope.$index + 1 }}</template>
</el-table-column>
<el-table-column prop="stockName" min-width="140" label="股东名称"></el-table-column>
<el-table-column prop="shouldCapiConv" label="持股数量(亿)"></el-table-column>
<el-table-column label="持股比例">
<el-table-column prop="shouldCapiConv" label="应缴金额"></el-table-column>
<el-table-column prop="stockPercent" label="持股比例"></el-table-column>
<el-table-column prop="" label="法定代表人">
<template slot-scope="scope">
<span>{{scope.row.stockPercent?parseFloat(Number(scope.row.stockPercent*100).toFixed(4))+'%':'--'}}</span>
<span>{{scope.row.corporatePerson || '--'}}</span>
</template>
</el-table-column>
<el-table-column label="法定代表人">
<el-table-column prop="" label="成立日期">
<template slot-scope="scope">
<span>{{scope.row.corporatePerson || '--'}}</span>
<span>{{scope.row.registeredDate || '--'}}</span>
</template>
</el-table-column>
<el-table-column label="成立日期">
<el-table-column prop="" label="企业状态">
<template slot-scope="scope">
<span>{{scope.row.registeredDate || '--'}}</span>
<span>{{scope.row.businessStatus || '--'}}</span>
</template>
</el-table-column>
</el-table>
......@@ -39,21 +40,21 @@
<div v-else v-html="scope.row.investName || '--'"></div>
<div class="tags" v-if="scope.row.businessStatus || scope.row.biddingAnnouncement">
<span class="tag style1" v-if="scope.row.businessStatus">{{scope.row.businessStatus}}</span>
<span class="tag style1" v-if="scope.row.biddingAnnouncement">招标数{{scope.row.biddingAnnouncement}}</span>
<span class="tag style1" v-if="scope.row.biddingCount">招标数{{scope.row.biddingCount}}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="investOperName" label="法定代表人"></el-table-column>
<el-table-column prop="investRegistCapi" label="注册资本(万元)"></el-table-column>
<el-table-column prop="investStartDate" label="成立日期"></el-table-column>
<el-table-column prop="stockPercentage" label="股权占比">
<el-table-column label="注册资本">
<template slot-scope="scope">
<span>{{scope.row.stockPercentage?parseFloat(Number(scope.row.stockPercentage*100).toFixed(4))+'%':'--'}}</span>
<span>{{scope.row.investRegistCapi || '--'}}</span>
</template>
</el-table-column>
<el-table-column prop="investStartDate" label="成立日期"></el-table-column>
<el-table-column prop="stockPercentage" label="股权占比"></el-table-column>
<el-table-column prop="shouldCapi" label="认缴出资额(万元)"></el-table-column>
</el-table>
<div class="rela-more" v-if="activeName=='second'&& shipTotal>shipParams.pageSize"><span class="a-link" @click="handlePath">查看更多数据 ></span></div>
<div class="rela-more" v-show="activeName=='second'&& shipTotal>shipParams.pageSize"><span class="a-link" @click="handlePath">查看更多数据 ></span></div>
</div>
</div>
</template>
......@@ -87,16 +88,35 @@ export default {
},
created() {
this.handleQuery()
this.handleInvest()
},
mounted() {
},
methods: {
async handleQuery(){
let res = this.activeName=='first'?await bestStockPage(this.holderParams):await investment(this.shipParams)
let res = await bestStockPage(this.holderParams)
if(res.code==200){
this.activeName=='first'?this.holderData = res.rows:this.shipData = res.rows
if(res.rows&&res.rows.length>0){
res.rows.forEach(item => {
item.stockPercent?item.stockPercent = parseFloat(Number(item.stockPercent*100).toFixed(4))+'%':''
})
}
this.activeName=='second'?this.shipTotal = res.total:''
this.holderData = res.rows
}
},
async handleInvest(){
let res = await investment(this.shipParams)
if(res.code==200){
if(res.rows&&res.rows.length>0){
res.rows.forEach(item => {
item.stockPercentage?item.stockPercentage = parseFloat(Number(item.stockPercentage*100).toFixed(4))+'%':''
})
}
this.shipData = res.rows
this.shipTotal = res.total
}
},
handleClick(){
},
handlePath(){
changePath(this, 'overseas')
......
......@@ -5,7 +5,7 @@
<template v-if="zbggList.length>0">
<div class="tender-item" v-for="(item, index) in zbggList" :key="index">
<div class="flex-box tender-title"><div class="text-cl1" :title="item.projectName"><router-link :to="'/radar/Bidding/details/'+item.bid" tag="a" class="a-link">{{item.projectName}}</router-link></div><span :class="item.tenderStage=='项目动态'?'style2':item.tag=='招投标'?'style4':'style1'">{{item.tenderStage}}</span></div>
<span class="tender-time">{{item.contact}} {{item.issueTime}}</span>
<span class="tender-time">{{item.issueTime}}</span>
</div>
</template>
<div class="tender-no-data" v-else>
......
......@@ -24,6 +24,9 @@
<div v-else v-html="scope.row.stockName || '--'"></div>
<div class="tags" v-if="scope.row.businessStatus">
<span class="tag style1" v-if="scope.row.businessStatus">{{scope.row.businessStatus}}</span>
<span class="tag style1" v-if="scope.row.biddingCount">招标{{scope.row.biddingCount}}</span>
<span class="tag style1" v-if="scope.row.landInfoCount">土地{{scope.row.landInfoCount}}</span>
<span class="tag style1" v-if="scope.row.proposedProjectCount">拟建{{scope.row.proposedProjectCount}}</span>
</div>
</template>
<template slot="stockPercent" slot-scope="scope">
......@@ -52,7 +55,7 @@ export default {
forData: [
{label: '发起人/股东', prop: 'stockName', minWidth: '230', slot: true},
{label: '持股比例', prop: 'stockPercent', slot: true},
{label: '认缴出资(万)', prop: 'shouldCapiConv'},
{label: '认缴出资', prop: 'shouldCapiConv'},
{label: '实缴出资额', prop: 'realCapi'},
{label: '认缴出资日期', prop: 'conDate'},
{label: '参股日期', prop: 'realCapiDate', width: '150'}
......
......@@ -23,7 +23,7 @@
<div v-else v-html="scope.row.investName || '--'"></div>
<div class="tags" v-if="scope.row.businessStatus || scope.row.biddingAnnouncement">
<span class="tag style1" v-if="scope.row.businessStatus">{{scope.row.businessStatus}}</span>
<span class="tag style1" v-if="scope.row.biddingAnnouncement">招标数{{scope.row.biddingAnnouncement}}</span>
<span class="tag style1" v-if="scope.row.biddingCount">招标数{{scope.row.biddingCount}}</span>
</div>
</template>
<template slot="proportion">
......@@ -59,25 +59,25 @@ export default {
forData: [
{label: '被投资企业名称', prop: 'investName', minWidth: '180', slot: true},
{label: '法定代表人', prop: 'investOperName'},
{label: '注册资本(万元)', prop: 'investRegistCapi'},
{label: '注册资本', prop: 'investRegistCapi'},
{label: '成立日期', prop: 'investStartDate'},
{label: '股权占比', prop: 'stockPercentage', slot: true, slotHeader: true, slotName: 'proportion'},
{label: '认缴出资额(万元)', prop: 'shouldCapi'}
],
formData: [
{ type: 1, fieldName: 'hasBid', value: '', placeholder: '招标公告', options: [
{name:'不限',value:''},
{name:'不限',value:'noLimit'},
{name:'有招标公告',value:1},
{name:'无招标公告',value:0}
]
},
{ type: 1, fieldName: 'proportion', value: '', placeholder: '股权占比', options: [
{name:'不限',value:''},
{name:'不限',value:'noLimit'},
{name:'100%',value:'1~1'},
{name:'66.66%以上',value:'0.6666~1'},
{name:'50%以上',value:'0.4~1'},
{name:'50%以上',value:'0.5~1'},
{name:'33.33%以上',value:'0.3333~1'},
{name:'25%以上',value:'0.05~0.25'},
{name:'25%以上',value:'0.25~1'},
{name:'不到5%',value:'0~0.05'}
]
}
......@@ -105,10 +105,15 @@ export default {
handleSearch(){
let params = this.formParams()
if(params.proportion){
if(params.proportion!='noLimit'){
params.stockPercentageMin = parseFloat(params.proportion.split('~')[0])
params.stockPercentageMax = parseFloat(params.proportion.split('~')[1])
}
delete params.proportion
}
if(params.hasBid=='noLimit'){
delete params.hasBid
}
params.pageNum = 1
this.queryParams.pageNum = 1
this.handleQuery(params)
......
......@@ -94,6 +94,10 @@ export default {
prop: 'industryTotalValue',
label: '工业总产值(亿元)',
},
{
prop: 'fixedInvestment',
label: '固定资产投资(亿元)',
},
{
prop: 'realEstateInvestment',
label: '房地产开发投资(亿元)',
......@@ -291,9 +295,9 @@ export default {
}
}
::v-deep .el-table__body-wrapper tr:nth-child(2) td:first-child,
::v-deep .el-table__body-wrapper tr:nth-child(16) td:first-child,
::v-deep .el-table__body-wrapper tr:nth-child(28) td:first-child{
::v-deep .el-table__body-wrapper tr:nth-child(2) td,
::v-deep .el-table__body-wrapper tr:nth-child(17) td,
::v-deep .el-table__body-wrapper tr:nth-child(29) td{
font-weight: bold;
color: #232323;
}
......
......@@ -24,7 +24,7 @@
<span class="wrap_label">行政等级</span>
<div class="item_ckquery">
<span :class="{color_text:queryParams.uipExecutiveLevel == ''}" @click="changeXZDJ('')">全部</span>
<template v-for="(item,index) in xzdj">
<template v-for="(item,index) in uipGroupDatalist.uipExecutiveLevel">
<span :class="{color_text:item == queryParams.uipExecutiveLevel}" @click="changeXZDJ(item)">{{item}}</span>
</template>
</div>
......@@ -101,6 +101,16 @@
<router-link :to="`/enterprise/${encodeStr(scope.row.companyId)}`" tag="a" class="a-link" v-if="scope.row.companyId&&scope.row.companyName " v-html="scope.row.companyName"></router-link>
<div v-else v-html="scope.row.companyName || '--'"></div>
</template>
<template slot="area" slot-scope="scope">
<template v-if="scope.row.province || scope.row.city || scope.row.area">
<span v-if="scope.row.province"> {{ scope.row.province }}</span>
<span v-if="scope.row.city"> <span v-if="scope.row.province">-</span>{{ scope.row.city }}</span>
<span v-if="scope.row.area"> <span v-if="scope.row.city">-</span>{{ scope.row.area }}</span>
</template>
<template v-else>
--
</template>
</template>
</tables>
</div>
......@@ -137,7 +147,7 @@ export default {
},
forData: [
{label: '企业名称', prop: 'companyName', width: '369', slot: true},
{label: '区域', prop: 'area', width: '100'},
{label: '区域', prop: 'area', width: '120', slot: true},
{label: '招标数量', prop: 'biddingCount', width: '100', sortable: true},
{label: '城投拿地', prop: 'landInfoCount', width: '100', sortable: true},
{label: '供应商', prop: 'supplierCount', width: '100', sortable: true},
......
......@@ -15,14 +15,21 @@ export default {
loading: false, // 是否加载中
iframeHight: window.innerHeight, // iframe高度
scrollTop: 0, // 滚动条距离内部页面顶部距离
secretId: '' // 需要携带的sdkId
// domain: 'https://pre-plug.jiansheku.com',
domain: 'http://192.168.60.30:3300',
ak: 'aec7b3ff2y2q8x6t49a7e2c463ce21912' // 需要携带的sdkId
}
},
created() {
if (this.$route.params.id) { // 获取companyId
this.loading = true
// this.src = `https://pre-plug.jiansheku.com/enterprise/${this.$route.params.id}?secretId=${this.secretId}`
this.src = `http://192.168.60.30:3300/enterprise/${this.$route.params.id}`
// this.src = `https://pre-plug.jiansheku.com/enterprise/${this.$route.params.id}?ak=${this.ak}`
if(this.$route.name=='Company'){ //企业详情
this.src = `${this.domain}/enterprise/${this.$route.params.id}?ak=${this.ak}`
}
if(this.$route.name=='Personnel'){ //人员详情
this.src = `${this.domain}/personnel/${this.$route.params.id}.html?ak=${this.ak}&referrer=true`
}
}
},
mounted() {
......
......@@ -100,7 +100,7 @@
<div class="main">
<div class="amount">
<p>
<span>产值目标(万元)</span>
<span>产值目标(万元)</span>
<span>实际已完成(万元)</span>
</p>
<p>
......@@ -547,7 +547,9 @@ export default {
let option ={
legend: {
x:'right',
padding:[0,120,0,0],
padding:[3,120,0,0],
itemHeight:8,
itemWidth:16,
},
tooltip: {
trigger: 'axis',
......@@ -567,7 +569,7 @@ export default {
type: 'value',
},
grid: {
top:35,
top:40,
left:30,
right:10,
bottom:20,
......@@ -774,6 +776,9 @@ export default {
]
}
myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
},
initChart1(){
var rankPic = [
......@@ -910,6 +915,9 @@ export default {
],
}
myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
},
handleClickTab(){
......@@ -1030,8 +1038,8 @@ export default {
}
}
.btn{
width: 80%;
height: 64px;
width: 100%;
height: 60px;
background: #FFFFFF;
border-radius: 4px;
border: 1px solid #E6E6E9;
......@@ -1039,6 +1047,7 @@ export default {
line-height: 64px;
font-size: 14px;
margin-left: 0;
margin-right: 7px;
i{
margin-right: 4px;
}
......@@ -1430,6 +1439,7 @@ export default {
line-height: 32px;
background: #F3F3F4;
padding-left: 37px;
border: 0;
}
.el-icon-search{
font-size: 16px;
......
......@@ -169,7 +169,7 @@ export default {
.content{
width: 1320px;
margin: 0 auto;
padding-top: 160px;
/*padding-top: 180px;*/
}
.left{
float: left;
......@@ -177,13 +177,14 @@ export default {
margin-right: 170px;
}
.logo{
width: 317px;
height: 69px;
margin-bottom: 58px;
width: 253px;
height: 55px;
margin-bottom: 53px;
margin-left: 127px;
}
.img{
width: 730px;
height: 624px;
width: 662px;
height: 566px;
}
}
.title {
......@@ -221,6 +222,7 @@ export default {
}
.el-input__inner{
padding-left: 73px;
border: 0;
}
}
.el-input__prefix{
......
......@@ -65,9 +65,9 @@
<div class="common-title">经济信息</div>
<div class="content-box">
<span><img src="@/assets/images/economies/icon_1.png">下属辖区 <label>{{recentlyYear.subordinateJurisdiction}}<i></i></label></span>
<span><img src="@/assets/images/economies/icon_2.png">城投平台 <label>{{recentlyYear.urbanInvestmentPlatform}}<i>亿</i></label></span>
<span><img src="@/assets/images/economies/icon_3.png">城投平台授信余额 <label>{{recentlyYear.creditBalance}}<i></i></label></span>
<span><img src="@/assets/images/economies/icon_4.png">城投平台营收账款 <label>{{recentlyYear.accountsReceivable}}<i></i></label></span>
<span><img src="@/assets/images/economies/icon_2.png">城投平台 <label>{{recentlyYear.urbanInvestmentPlatform}}<i></i></label></span>
<span><img src="@/assets/images/economies/icon_3.png">城投平台授信余额 <label>{{recentlyYear.creditBalance}}<i>亿</i></label></span>
<span><img src="@/assets/images/economies/icon_4.png">城投平台营收账款 <label>{{recentlyYear.accountsReceivable}}<i>亿</i></label></span>
<span><img src="@/assets/images/economies/icon_5.png">城投平台有息债务 <label>{{recentlyYear.uipInterestBearingDebt}}<i>亿</i></label></span>
</div>
</div>
......
......@@ -7,7 +7,11 @@
<el-tab-pane label="产业结构" name="third"></el-tab-pane>
<el-tab-pane label="地区经济对比" name="four"></el-tab-pane>
</el-tabs>
<div class="location"><i class="el-icon-location"></i>{{province}}</div>
<div class="location">
<span><i class="el-icon-location"></i>{{province}}</span>
<el-cascader ref="address" class="cascader-region" popper-class='cascader-region-addd'
@input="addressListbtn" v-model="address" :options="addressList" :props="props" collapse-tags></el-cascader>
</div>
</div>
<RegionalEconomy v-if="activeName === 'first' && province" :dataQuery="dataQuery"></RegionalEconomy>
<LocalEconomy v-if="activeName === 'second' && province" :dataQuery="dataQuery"></LocalEconomy>
......@@ -22,6 +26,7 @@
import Comparison from './component/comparison'
import IndustrialStructure from './component/industrialStructure'
import { location } from '@/api/macro/macro'
import dataRegion from '@/assets/json/dataRegion'
export default {
name: 'Economies',
components: {
......@@ -34,7 +39,14 @@ export default {
return {
activeName: 'first',
dataQuery:{},
province:''
province:'',
props: {
value: 'id',
label: 'label',
checkStrictly: true
},
addressList: [],
address:''
}
},
created() {
......@@ -47,11 +59,11 @@ export default {
this.dataQuery.province=this.province
}
})
console.log(this.dataQuery)
if(this.dataQuery.activeName){
this.activeName=this.dataQuery.activeName;
}
this.dataRegion()
// let name = sessionStorage.getItem('currentTab')
// if (name != "undefined" && name){
// this.activeName = name;
......@@ -64,6 +76,64 @@ export default {
this.activeName='four'
}
// sessionStorage.setItem('currentTab', this.activeName)
},
//地区
async dataRegion() {
// await axios.post("https://files.jiansheku.com/file/json/common/dataRegion.json", {}, {
// headers: {
// 'Content-Type': 'application/json'
// }
// }).then(res => {
// if (res.data.code == 200) {
// console.log(res.data.data)
// }
// })
var str = [];
for (let x = 0; x < 3; x++) {
for (let i = 0; i < dataRegion.length; i++) {
if (dataRegion[i].regionLevel == x + 1 && x + 1 == 1) {
str.push({
'id': dataRegion[i].id,
"label": dataRegion[i].regionName,
"short": dataRegion[i].short,
"value": dataRegion[i].parentId,
"children": []
});
} else if (dataRegion[i].regionLevel == x + 1 && x + 1 == 2) {
for (let j = 0; j < str.length; j++) {
if (str[j].id == dataRegion[i].parentId) {
str[j].children.push({
'id': dataRegion[i].id,
"label": dataRegion[i].regionName,
"short": dataRegion[i].short,
"value": dataRegion[i].parentId,
"children": []
});
}
}
} else if (dataRegion[i].regionLevel == x + 1 && x + 1 == 3) {
for (let j = 0; j < str.length; j++) {
for (let k = 0; k < str[j].children.length; k++) {
if (str[j].children[k].id == dataRegion[i].parentId) {
str[j].children[k].children.push({
'id': dataRegion[i].id,
"label": dataRegion[i].regionName,
"short": dataRegion[i].short,
"value": dataRegion[i].parentId
// "children":[]
});
}
}
}
}
}
}
this.addressList = str;
},
addressListbtn() {
let nodesObj = this.$refs.address.getCheckedNodes();
console.log(nodesObj )
console.log(this.address)
}
}
}
......@@ -101,12 +171,23 @@ export default {
}
}
.location{
position: relative;
span{
font-size: 14px;
cursor: pointer;
color: #0081FF;
i{
margin-right: 6px;
font-size: 16px;
}
}
.cascader-region {
position: absolute;
left: 0;
top: -6px;
opacity: 0;
line-height: 22px;
}
}
}
</style>
......@@ -37,7 +37,8 @@
</el-table-column>
<el-table-column label="公司名称" align="left" width="300" fixed>
<template slot-scope="scope">
<router-link to="" tag="a" class="a-link" v-html="scope.row.name"></router-link>
<router-link v-if="scope.row.jskEid" :to="`/company/${encodeStr(scope.row.jskEid)}`" tag="a" class="a-link" v-html="scope.row.name" ></router-link>
<span v-else v-html="scope.row.name" ></span>
</template>
</el-table-column>
<el-table-column label="注册地址" prop="domicile" width="150"/>
......@@ -68,6 +69,7 @@
// import LocalEnterprises from './component/localEnterprises'
// import Offsite from './component/offsite'
import {encodeStr} from "@/assets/js/common.js"
import aptitudeCode from '@/assets/json/aptitudeCode'
import { enterprise,location } from '@/api/macro/macro'
export default {
......@@ -75,6 +77,7 @@ export default {
// components: {LocalEnterprises,Offsite},
data() {
return {
encodeStr,
activeName: 'first',
queryParams:{
ename:'',
......
......@@ -11,6 +11,7 @@
:data="tableData"
element-loading-text="Loading"
border
:summary-method="getSummaries"
show-summary
height="360"
fit
......@@ -51,11 +52,11 @@
<router-link :to="'/macro/financing/details/'+ scope.row.id" tag="a" class="a-link">{{ scope.row.projectName}}</router-link>
</template>
</el-table-column>
<el-table-column prop="projectTotalInvestment" label="项目总投资(亿)" :formatter="formatStatus" sortable="custom" width="155" />
<el-table-column prop="projectCapital" label="项目资本金(亿)" :formatter="formatStatus" sortable="custom" width="155" />
<el-table-column prop="econData007" label="项目收益倍数(倍)" :formatter="formatStatus" sortable="custom" width="150" />
<el-table-column prop="zxz" label="专项债金额(亿)" :formatter="formatStatus" sortable="custom" width="150" />
<el-table-column prop="specialBondCapital" label="专项债用作资本金(亿)" :formatter="formatStatus" width="170" />
<el-table-column prop="projectTotalInvestment" label="项目总投资(亿)" :formatter="formatStatus" align="right" sortable="custom" width="155" />
<el-table-column prop="projectCapital" label="项目资本金(亿)" :formatter="formatStatus" align="right" sortable="custom" width="155" />
<el-table-column prop="econData007" label="项目收益倍数(倍)" :formatter="formatStatus" align="right" sortable="custom" width="150" />
<!--<el-table-column prop="zxz" label="专项债金额(亿)" :formatter="formatStatus" sortable="custom" width="150" />-->
<el-table-column prop="specialBondCapital" label="专项债用作资本金(亿)" align="right" sortable="custom" :formatter="formatStatus" width="170" />
<el-table-column prop="projectEntity" :formatter="formatStatus" label="项目主体">
<!--<template slot-scope="scope">-->
<!--<router-link :to="'/macro/financing/details/'+ scope.row.projectEntityId" tag="a" class="a-link">{{ scope.row.projectEntity}}</router-link>-->
......@@ -226,7 +227,35 @@ export default {
this.tableData=list;
})
},
getSummaries(param){
const { columns, data } = param;
const sums = [];
columns.forEach((column, index) => {
if (index === 0) {
sums[index] = '合计';
return;
}
if (index === 3) {
sums[index] = '100';
return;
}
const values = data.map(item => Number(item[column.property]));
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return Number(Number(prev) + Number(curr)).toFixed(3)
} else {
return prev;
}
}, 0);
if (index === 1) {
sums[index] = Number(sums[index]).toFixed(0);
return;
}
});
return sums;
},
// 重置页数
handleSizeChange(val) {
this.pageIndex = 1
......
......@@ -68,8 +68,8 @@
<template slot-scope="scope">{{ scope.$index + 1 }}</template>
</el-table-column>
<el-table-column prop="type" label="地区"/>
<el-table-column prop="count" sortable label="招标数量"/>
<el-table-column prop="rate" sortable label="占比"/>
<el-table-column prop="count" sortable label="招标数量" align="right"/>
<el-table-column prop="rate" sortable label="占比" align="right"/>
</el-table>
</div>
</div>
......@@ -103,8 +103,8 @@
<template slot-scope="scope">{{ scope.$index + 1 }}</template>
</el-table-column>
<el-table-column prop="label" label="月份"/>
<el-table-column prop="count" sortable label="招标数量"/>
<el-table-column prop="rate" sortable label="占比"/>
<el-table-column prop="count" sortable label="招标数量" align="right"/>
<el-table-column prop="rate" sortable label="占比" align="right"/>
</el-table>
</div>
</div>
......@@ -163,7 +163,9 @@ export default {
value:'近五年',
punishDateShowPopper: false,
punishDate: "",
yearData:[]
yearData:[],
myChart:'',
myChart1:'',
}
},
created() {
......@@ -177,8 +179,22 @@ export default {
getYear().then(res => {
this.yearData=res.rows;
})
window.addEventListener("resize", this.resizeEcharts);
},
beforeDestroy(){
window.removeEventListener("resize", this.resizeEcharts);
},
activated() {
this.resizeEcharts()
},
methods: {
resizeEcharts (){
const self = this
setTimeout(function(){ //图表跟随页面大小变化宽度
self.myChart.resize()
self.myChart1.resize()
}, 10)
},
getDataByProvince(params){
countGroupByProvince(params).then(res => {
this.tableData=res.data.provinceDate;
......@@ -199,7 +215,7 @@ export default {
})
},
initChart() {
let myChart = echarts.init(document.getElementById("zb-echarts"))
this.myChart = echarts.init(document.getElementById("zb-echarts"))
let option = {
tooltip: {
trigger: 'axis', //坐标轴触发,主要在柱状图,折线图等会使用类目轴的图表中使用
......@@ -252,10 +268,10 @@ export default {
}
]
};
myChart.setOption(option);
this.myChart.setOption(option);
},
initChart1() {
let myChart = echarts.init(document.getElementById("gl-echarts"))
this.myChart1 = echarts.init(document.getElementById("gl-echarts"))
let dataList=this.tableData1;
let option = {
tooltip: {
......@@ -282,7 +298,7 @@ export default {
{
data: this.tableData1.map(item => item.count),
type: 'bar',
barWidth: 20,
barWidth: 16,
itemStyle: {
normal: {
barBorderRadius: [4, 4, 0, 0],
......@@ -291,12 +307,12 @@ export default {
var colorList = [] //定义一个存储颜色的数组
//更改前二位柱形颜色
//定义一个变量 保存柱形图数据 因为sort方法排序会改变原数组 使用JSON方法深拷贝 将原数值暂存
let companyValue1 = JSON.parse(JSON.stringify(dataList))
let dataArr = JSON.parse(JSON.stringify(dataList))
let arr = dataList.sort((a, b) => {
return b.count - a.count
})
//将原数组数据赋值回去 保持数据不变
dataList = JSON.parse(JSON.stringify(companyValue1))
dataList = JSON.parse(JSON.stringify(dataArr))
//遍历数据 将原数组和排序后的数组比较
dataList.map(i => {
if (i.count == arr[0].count) {
......@@ -315,7 +331,7 @@ export default {
}
]
};
myChart.setOption(option);
this.myChart1.setOption(option);
},
handleDate(command) {
if (command && command != "自定义") {
......@@ -433,6 +449,7 @@ export default {
i{
color:#909399;
margin-right: 9px;
font-size: 14px;
}
}
.content1{
......@@ -507,6 +524,9 @@ export default {
padding: 0;
}
}
.el-table__cell.is-right{
text-align: right;
}
}
}
}
......
......@@ -37,21 +37,21 @@
</el-table-column>
<el-table-column prop="major" label="资质类型"/>
<el-table-column label="特级" align="center">
<el-table-column prop="tjCount" label="数量(个)"/>
<el-table-column prop="tjRate" label="占比(%)"/>
<el-table-column label="特级" align="right">
<el-table-column prop="tjCount" label="数量(个)" align="right"/>
<el-table-column prop="tjRate" label="占比(%)" align="right"/>
</el-table-column>
<el-table-column label="一级" align="center">
<el-table-column prop="oneCount" label="数量(个)"/>
<el-table-column prop="oneRate" label="占比(%)"/>
<el-table-column label="一级" align="right">
<el-table-column prop="oneCount" label="数量(个)" align="right"/>
<el-table-column prop="oneRate" label="占比(%)" align="right"/>
</el-table-column>
<el-table-column label="二级">
<el-table-column prop="twoCount" label="数量(个)"/>
<el-table-column prop="twoRate" label="占比(%)"/>
<el-table-column label="二级" align="right">
<el-table-column prop="twoCount" label="数量(个)" align="right"/>
<el-table-column prop="twoRate" label="占比(%)" align="right"/>
</el-table-column>
<el-table-column label="三级">
<el-table-column prop="threeCount" label="数量(个)"/>
<el-table-column prop="threeRate" label="占比(%)"/>
<el-table-column label="三级" align="right">
<el-table-column prop="threeCount" label="数量(个)" align="right"/>
<el-table-column prop="threeRate" label="占比(%)" align="right"/>
</el-table-column>
</el-table>
</div>
......@@ -82,21 +82,21 @@
<template slot-scope="scope">{{ scope.$index + 1 }}</template>
</el-table-column>
<el-table-column prop="province" label="地区"/>
<el-table-column label="特级" align="center">
<el-table-column prop="tjCount" label="数量(个)"/>
<el-table-column prop="tjRate" label="占比(%)"/>
<el-table-column label="特级" align="right">
<el-table-column prop="tjCount" label="数量(个)" align="right"/>
<el-table-column prop="tjRate" label="占比(%)" align="right"/>
</el-table-column>
<el-table-column label="一级" align="center">
<el-table-column prop="oneCount" label="数量(个)"/>
<el-table-column prop="oneRate" label="占比(%)"/>
<el-table-column label="一级" align="right">
<el-table-column prop="oneCount" label="数量(个)" align="right"/>
<el-table-column prop="oneRate" label="占比(%)" align="right"/>
</el-table-column>
<el-table-column label="二级">
<el-table-column prop="twoCount" label="数量(个)"/>
<el-table-column prop="twoRate" label="占比(%)"/>
<el-table-column label="二级" align="right">
<el-table-column prop="twoCount" label="数量(个)" align="right"/>
<el-table-column prop="twoRate" label="占比(%)" align="right"/>
</el-table-column>
<el-table-column label="三级">
<el-table-column prop="threeCount" label="数量(个)"/>
<el-table-column prop="threeRate" label="占比(%)"/>
<el-table-column label="三级" align="right">
<el-table-column prop="threeCount" label="数量(个)" align="right"/>
<el-table-column prop="threeRate" label="占比(%)" align="right"/>
</el-table-column>
</el-table>
</div>
......@@ -124,8 +124,8 @@
<el-table-column label="序号" width="50" align="left">
<template slot-scope="scope">{{ scope.$index + 1 }}</template>
</el-table-column>
<el-table-column prop="province" label="地区"/>
<el-table-column prop="count" label="企业异地备案数量(个)" sortable/>
<el-table-column prop="province" label="地区" />
<el-table-column prop="count" label="企业异地备案数量(个)" sortable align="right"/>
<!--<el-table-column prop="zb" label="占比"/>-->
</el-table>
</div>
......@@ -298,8 +298,9 @@ export default {
})
areaGroupByProvince().then(res => {
this.zbData=res.data;
let arr=this.zbData.sort((old,New)=>{
//定义一个变量 保存数据 因为sort方法排序会改变原数组 使用JSON方法深拷贝 将原数值暂存
let dataArr = JSON.parse(JSON.stringify(res.data))
let arr=res.data.sort((old,New)=>{
return New.count - old.count
})
let data=[]
......@@ -307,6 +308,8 @@ export default {
data.push(arr[i])
}
this.rankList=data;
//将原数组数据赋值回去 保持数据不变
this.zbData = JSON.parse(JSON.stringify(dataArr))
this.initChart2()
})
},
......@@ -363,8 +366,11 @@ export default {
}
]
}
myChart.clear();
myChart.clear(); //图表清除
myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
},
initChart1() {
let myChart = echarts.init(document.getElementById("jzqy-echarts"))
......@@ -529,6 +535,9 @@ export default {
}
myChart.clear();
myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
},
initChart2() {
let myChart = echarts.init(document.getElementById("ba-echarts"))
......@@ -585,6 +594,9 @@ export default {
]
}
myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
},
handleClick(type,index){
if(type === 1){
......@@ -663,6 +675,7 @@ export default {
i{
color:#909399;
margin-right: 9px;
font-size: 14px;
}
}
.content1{
......@@ -778,6 +791,9 @@ export default {
padding: 0;
}
}
.el-table__cell.is-right{
text-align: right;
}
}
}
}
......
......@@ -44,7 +44,7 @@
</el-select>
</el-form-item>
<div class="popbot">
<div class="wordprimary">前往商机雷达寻找项目线索></div>
<div class="wordprimary" @click="toradar">前往商机雷达寻找项目线索></div>
<div class="btn btn_cancel h32" @click="resetForm('ruleForm')">返回</div>
<div class="btn btn_primary h32" @click="submitForm('ruleForm')">新建商机</div>
</div>
......@@ -109,6 +109,9 @@
})
},
methods:{
toradar(){
this.$router.push({path:'/radar'})
},
handleALL(event){
var one = document.getElementById("box");
if(one){
......
......@@ -42,7 +42,8 @@
<div class="p3">
<img src="@/assets/images/project/success.png">查询成功
</div>
<div class="p2">导入成功,已为您去掉重复{{titletext}}{{successCount}}</div>
<!--<div class="p2">导入成功,已为您去掉重复{{titletext}}{{successCount}}</div>-->
<div class="p2">{{messages}}</div>
<div class="btns">
<div class="btn btn_primary h32" @click="getmsg">查看</div>
</div>
......@@ -74,6 +75,7 @@
downloadhref:'',//样例地址
titletext:'',
successCount:0,//成功条数
messages:'',
}
},
created(){
......@@ -120,6 +122,14 @@
onSuccess(res, file, fileList) {
if (res.code == 200) {
this.successCount = res.successCount
if(this.importtype == 'project'){//项目管理
this.messages = res.msg
}
if(this.importtype == 'custom'){//客户管理
let str = '成功导入客户条数'+res.successCount+',客户去重条数'+res.data?res.data.length:0
this.messages = str
}
this.addsuccess = true
}else {
this.importCancel()
......
......@@ -56,6 +56,13 @@
</div>
<div class="recordlist" v-if="showtype=='gjdt'">
<div class="rec_detail" v-for="(item,index) in recordlist.rows">
<div class="delform" v-if="isdel && delID == item.id">
<div class="words">是否删除该条记录</div>
<div>
<div class="btnsmall btn_primary h28" @click="delele">确定</div>
<div class="btnsmall btn_cancel h28" @click="isdel=false">取消</div>
</div>
</div>
<div class="rec_time">
<i class="el-icon-time"></i>
......@@ -114,14 +121,6 @@
</div>
</div>
</div>
<div class="delform" v-if="isdel">
<div class="words">是否删除该条记录</div>
<div>
<div class="btnsmall btn_primary h28" @click="delele">确定</div>
<div class="btnsmall btn_cancel h28" @click="isdel=false">取消</div>
</div>
</div>
</el-card>
</div>
</template>
......@@ -362,13 +361,21 @@
</script>
<style lang="scss" scoped>
.el-card{
overflow: initial;
}
.rec_detail{
position: relative;
}
.wc{
position: absolute;
right: 0;
bottom: 0;
}
.delform{
position: fixed; left:50%; top:50%; transform:translate(-50%,-50%)
right: 0;
top: -122px;
position: absolute;
}
.tables{
margin-top: -26px;
......
......@@ -57,6 +57,9 @@
prop="accendant"
label="内部维护人"
width="146">
<template slot-scope="scope">
{{scope.row.accendant || '--'}}
</template>
</el-table-column>
</el-table>
<div class="bottems">
......
......@@ -19,7 +19,7 @@
地区团队
</span>
<div class="select-popper">
<span :class="{ color_text:searchParam.provinceId.length ||searchParam.cityId.length ||searchParam.districtId.length,}">
<span :class="{ color_text:searchParam.provinceId.length ||searchParam.cityId.length ||searchParam.districtId.length}">
项目地区{{searchParam.provinceId.length ||searchParam.cityId.length ||searchParam.districtId.length? searchParam.provinceId.length +searchParam.cityId.length +searchParam.districtId.length +"项": ""}}
<i class="el-icon-caret-bottom"></i>
</span>
......@@ -34,7 +34,7 @@
项目信息
</span>
<div class="select-popper">
<span class="color_text">
<span :class="{color_text:searchParam.projectType.length}">
项目类型{{searchParam.projectType.length? searchParam.projectType.length + "项": ""}}
<i class="el-icon-caret-bottom"></i>
</span>
......@@ -78,7 +78,7 @@
</el-dropdown>
</div>
<div class="select-popper">
<span class="color_text">
<span :class="{color_text:searchParam.projectStage.length}">
项目阶段{{searchParam.projectStage.length? searchParam.projectStage.length + "项": ""}}
<i class="el-icon-caret-bottom"></i>
</span>
......@@ -105,8 +105,8 @@
<div class="tables" v-if="total == 0">
<div class="empty">
<img src="@/assets/images/project/empty.png">
<div class="p1">添加你的第一个项目吧</div>
<div class="p2">抱歉,你还未添加项目,快去添加吧</div>
<div class="p1">抱歉,没找到相关数据</div>
<div class="p2">建议调整关键词或筛选条件,重新搜索</div>
<div class="btn btn_primary h36 w88" @click="addNew(true)">新建商机</div>
<div class="btn btn_primary btn_shallow h36 w88" @click="pldrs">批量导入</div>
</div>
......@@ -368,7 +368,7 @@ export default {
this.$router.push({ path: '/project/projectList/detail', query: {id:id,tag:tag} });
},
handleClick(){
this.getList(1)
},
handleChange(value) {
// console.log(value);
......
......@@ -4,21 +4,29 @@
<ul class="bottomlist-content">
<li class="bottomlist-list" >
<p class="list-titel">
绿色节能型压缩机基础件、汽车零配件新建项目 (芜湖旭日机械制造有限公司)
<!-- <div v-else-if="item.projectName" v-html="item.projectName"></div> -->
{{textList.name}}
</p>
<div class="content-label">
<span class="list-label">市政工程</span>
<span class="list-label list-label-zb" v-if="textList.province||textList.city||textList.district">
{{textList.province}}
<template v-if="textList.city">
-{{textList.city}}
</template>
<template v-if="textList.district">
-{{textList.district}}
</template>
</span>
</div>
<div class="list-content">
<p class="list-content-text">
<span>发布时间:</span>
<span >2022-04-21</span>
<span > {{textList.publishTime||'--'}}</span>
</p>
<p class="list-content-text">
<span>来源网站:</span>
<span>芜湖旭日</span>
<span>{{textList.source||'--'}}</span>
</p>
</div>
......@@ -42,28 +50,43 @@
>
<el-table-column label="序号" width="80">
<template slot-scope="scope">
1
<span>{{(pageNum - 1) *20 + scope.$index + 1}}</span>
</template>
</el-table-column>
<el-table-column label="投标单位" >
<el-table-column label="项目名称" >
<template slot-scope="scope">
通过
{{ scope.row.name||'--'}}
</template>
</el-table-column>
<el-table-column label="投标报价(万)" width="300" >
<template slot-scope="scope">
老河口市发展和改革局
{{ scope.row.tenderOffer||'--'}}
</template>
</el-table-column>
</el-table>
<div class="pagination clearfix" v-show="total>10">`
<el-pagination background :page-size="pageSize" :current-page="pageNum"
@current-change="handleCurrentChange" layout="prev, pager, next" :total="total">
</el-pagination>
</div>
</div>
</div>
<div class="content main3">
<div class="common-title">原文信息</div>
<div class="list-content-img" @mouseenter="showimg=false" @mouseleave="showimg=true">
<img v-if="showimg" src="@/assets/images/bxpro/original1.png">
<img v-else src="@/assets/images/bxpro/original.png">
<span>
<a :href="textList.url">原文链接</a>
</span>
</div>
<div class="main3-box">
<div class="main3-box" v-html="textList.content">
</div>
......@@ -77,26 +100,67 @@
<script>
import "@/assets/styles/public.css";
import {
encodeStr
} from "@/assets/js/common.js"
import api from '@/api/radar/radar.js';
export default {
name: 'BidRecordDetails',
data() {
return {
id: '',
tableData: [{
id: 0,
name: '20重庆债14(2005938)',
time: '2020-09-18',
gm: '285.24',
zj: '否',
}]
tableData: [],
"pageNum": 1,
"pageSize": 10,
total: 0,
textList: {},
showimg:true
}
},
created() {
console.log(this.$route.params)
this.id = this.$route.params.id
this.id = this.$route.params.id;
this.tenderPage();
this.tenderDetail();
},
methods: {
tenderDetail() {
api.tenderDetail({
id: this.id
}).then(res => {
// console.log(res);
this.textList = res.data;
console.log(this.textList);
}).catch(error => {
});
},
handleCurrentChange(pageNum) {
this.pageNum = pageNum;
this.search(pageNum, this.pageSize);
},
tenderPage(pageNum, pageSize) {
if (!pageNum) {
this.pageNum = 1;
}
if (!pageSize) {
this.pageSize = 20;
}
var data = {
cid: this.id,
pageNum: this.pageNum,
pageSize: this.pageSize
}
api.tenderPage(data).then(res => {
// console.log(res);
this.tableData = res.rows;
this.total = res.total;
console.log(this.tableData);
}).catch(error => {
});
}
}
}
......@@ -282,18 +346,44 @@
}
.main3 {
position: relative;
.main3-box {
margin-top: 22px;
min-height: 400px;
border: 1px solid #D8D8D8;
}
.list-content-img{
position: absolute;
top: 16px;
right:14px ;
color: #0081FF;
display: flex;
align-items: center;
font-size: 14px;
cursor: pointer;
img{
width: 14px;
height: 14px;
margin-right: 4px;
}
}
.list-content-img:hover{
color: #0067CC;
}
}
.main5 {
.table-item {
margin-top: 22px;
}
.pagination {
padding: 14px;
.el-pagination {
float: right;
}
}
}
}
</style>
\ No newline at end of file
......@@ -3,52 +3,51 @@
<div class="bottomlist">
<ul class="bottomlist-content">
<li class="bottomlist-list" >
<p class="list-titel">
绿色节能型压缩机基础件、汽车零配件新建项目 (芜湖旭日机械制造有限公司)
<!-- <div v-else-if="item.projectName" v-html="item.projectName"></div> -->
<p class="list-titel" v-html="textList.projectName">
<!-- <div v-else-if="item.projectName" ></div> -->
</p>
<div class="content-label">
<span class="list-label">市政工程</span>
</div>
<span class="list-label list-label-zb" v-if="textList.province||textList.city||textList.district">
{{textList.province}}
<template v-if="textList.city">
-{{textList.city}}
</template>
<template v-if="textList.district">
-{{textList.district}}
</template>
</span>
<span class="list-label list-label-lx" v-if="textList.objectType">{{textList.objectType}}</span>
<span class="list-label list-label-lx" v-if="textList.buildingProjectType">{{textList.buildingProjectType}}</span>
</div>
<div class="list-content">
<p class="list-content-text">
<span>招采单位:</span>
<span class="blue">江西合胜合招标咨询有限公司</span>
<span>{{textList.Name||'--'}}万元</span>
</p>
<p class="list-content-text">
<span>代理单位:</span>
<span class="blue">江西合胜合招标咨询有限公司</span>
</p>
</div>
<div class="list-content">
<p class="list-content-text">
<span>预算金款:</span>
<span>123,456,78万元</span>
<span>{{textList.planTenderAmount||'--'}}万元</span>
</p>
<p class="list-content-text">
<span>联系方式</span>
<span >招采单位 张工 123456789</span>
<span>资金来源</span>
<span >{{textList.projecetCapitalSource||'--'}}</span>
</p>
</div>
<div class="list-content">
<p class="list-content-text">
<span>发布时间:</span>
<span >今日</span>
</p>
<p class="list-content-text">
<span>报名截止日期:</span>
<span >2022-04-21</span>
<span >{{textList.issueTime||'--'}}</span>
</p>
<p class="list-content-text">
<span>标时间:</span>
<span >2022-04-21</span>
<span>预计招标时间:</span>
<span >{{textList.planTenderDateStart||'--'}}</span>
</p>
<p class="list-content-text">
<span>来源网站:</span>
<span >赤峰市阿鲁科尔沁旗人民政府</span>
<span >{{textList.sourceName||'--'}}</span>
</p>
</div>
......@@ -62,9 +61,11 @@
<div class="list-content-img" @mouseenter="showimg=false" @mouseleave="showimg=true">
<img v-if="showimg" src="@/assets/images/bxpro/original1.png">
<img v-else src="@/assets/images/bxpro/original.png">
<span>原文链接</span>
<span>
<a :href="textList.url">原文链接</a>
</span>
</div>
<div class="main3-box">
<div class="main3-box" v-html="textList.content">
......@@ -76,6 +77,7 @@
</template>
<script>
import api from '@/api/radar/radar.js';
import "@/assets/styles/public.css";
export default {
......@@ -83,21 +85,25 @@
data() {
return {
id: '',
tableData: [{
id: 0,
name: '20重庆债14(2005938)',
time: '2020-09-18',
gm: '285.24',
zj: '否',
}],
textList: {},
showimg:true
}
},
created() {
console.log(this.$route.params)
this.id = this.$route.params.id
this.id = this.$route.params.id;
this.bidPlanDetail();
},
methods: {
bidPlanDetail() {
api.bidPlanDetail({
id: this.id
}).then(res => {
// console.log(res);
this.textList = res.data;
}).catch(error => {
});
},
}
}
......@@ -186,11 +192,21 @@
padding: 3px 7px;
font-size: 12px;
}
.list-label {
background: #F3F3FF;
color: #8491E8;
border-radius: 1px 1px 1px 1px;
padding: 3px 7px;
font-size: 12px;
margin-right: 12px;
font-weight: 400;
}
.list-label-zb{
font-weight: 400;
color: #5A88F9;
background: #E7EDFC;
color: #8491E8;
background: #F3F3FF;
}
.list-label-lx{
font-weight: 400;
......
......@@ -4,25 +4,36 @@
<ul class="bottomlist-content">
<li class="bottomlist-list" >
<p class="list-titel">
绿色节能型压缩机基础件、汽车零配件新建项目 (芜湖旭日机械制造有限公司)
{{textList.projectName}}
<!-- <div v-else-if="item.projectName" v-html="item.projectName"></div> -->
</p>
<div class="content-label">
<span class="list-label">市政工程</span>
<span class="list-label list-label-lx" v-if="textList.projectCategories">{{textList.projectCategories}}</span>
<span class="list-label list-label-zb" v-if="textList.province||textList.city||textList.district">
{{textList.province}}
<template v-if="textList.city">
-{{textList.city}}
</template>
<template v-if="textList.district">
-{{textList.district}}
</template>
</span>
</div>
<div class="list-content">
<p class="list-content-text">
<p class="list-content-text" v-if="textList.examineStatus">
<span>办件结果:</span>
<span >芜湖旭日机械制造有限公司</span>
<span >{{textList.examineStatus}}</span>
</p>
<p class="list-content-text">
<p class="list-content-text"v-if="textList.money">
<span>总投资:</span>
<span>芜湖旭日</span>
<span>{{textList.money}}万</span>
</p>
<p class="list-content-text">
<p class="list-content-text"v-if="textList.handleTime">
<span>审批日期:</span>
<span>12345.62万</span>
<span>{{textList.handleTime}}</span>
</p>
</div>
......@@ -37,43 +48,51 @@
<div class="main3-box">
<p>
<label class="label">项目法人</label>
<span>序号</span>
<span>{{textList.companyName||'--'}}</span>
<label class="label">总投资(万元)</label>
<span>序号</span>
<span>{{textList.money||'--'}}</span>
</p>
<p>
<label class="label">项目类型</label>
<span class="span-one">序号</span>
<span class="span-one">{{textList.projectCategories||'--'}}</span>
</p>
<p>
<label class="label">项目属地</label>
<span>序号</span>
<span>
{{textList.province}}
<template v-if="textList.city">
-{{textList.city}}
</template>
<template v-if="textList.district">
-{{textList.district}}
</template>
</span>
<label class="label">审批类型</label>
<span>序号</span>
<span>{{textList.projectType||'--'}}</span>
</p>
<p>
<label class="label">建设规模</label>
<span>序号</span>
<span>{{textList.buildScale||'--'}}</span>
</p>
<p>
<label class="label">计划开工日期</label>
<span>序号</span>
<span>{{textList.planStartTime||'--'}}</span>
<label class="label">计划完成日期</label>
<span>序号</span>
<span>{{textList.planEndTime||'--'}}</span>
</p>
<p>
<label class="label">项目联系方式</label>
<span>序号</span>
<span>{{textList.money||'--'}}</span>
<label class="label">行业分类</label>
<span>序号</span>
<span>{{textList.projectIndustry||'--'}}</span>
</p>
<p>
<label class="label">项目详情地址</label>
<span>序号</span>
<span>{{textList.buildAddre||'--'}}</span>
<label class="label">项目代码</label>
<span>序号</span>
<span>{{textList.projectCode||'--'}}</span>
</p>
......@@ -84,7 +103,7 @@
<div class="common-title">立项审批</div>
<div class="table-item">
<el-table
:data="tableData"
:data="tableData1"
element-loading-text="Loading"
border
fit
......@@ -92,33 +111,39 @@
>
<el-table-column label="审批事项" width="270">
<template slot-scope="scope">
企业投资项目备案
{{ scope.row.examineContent||'--'}}
</template>
</el-table-column>
<el-table-column label="审批结果" width="187" >
<template slot-scope="scope">
通过
{{ scope.row.examineStatus||'--'}}
</template>
</el-table-column>
<el-table-column label="审批部门" >
<template slot-scope="scope">
老河口市发展和改革局
{{ scope.row.examineOffice||'--'}}
</template>
</el-table-column>
<el-table-column label="审批号" width="328" >
<el-table-column label="审批号" width="328" >
<template slot-scope="scope">
--
{{ scope.row.licenseNum||'--'}}
</template>
</el-table-column>
<el-table-column prop="zj" label="审批日期" width="240" >
<template slot-scope="scope">
2022-08-28
{{ scope.row.handleTime||'--'}}
</template>
</el-table-column>
</el-table>
<div class="pagination clearfix" v-show="total1>10">
<el-pagination background :page-size="pageSize1" :current-page="pageNum1"
@current-change="handleCurrentChange1" layout="prev, pager, next" :total="total1">
</el-pagination>
</div>
</div>
</div>
......@@ -126,41 +151,51 @@
<div class="common-title">立项推介</div>
<div class="table-item">
<el-table
:data="tableData"
:data="tableData2"
element-loading-text="Loading"
border
fit
highlight-current-row
>
<el-table-column label="立项推介" >
<el-table-column label="民间资本名称" >
<template slot-scope="scope">
-
{{ scope.row.companyName||'--'}}
</template>
</el-table-column>
<el-table-column label="引入资本规模(万元)" width="232" >
<template slot-scope="scope">
--
{{ scope.row.introduceMoney||'--'}}
</template>
</el-table-column>
<el-table-column label="引入资本时间" width="243" >
<template slot-scope="scope">
2019-12-24
{{ scope.row.introduceMoneyTime||'--'}}
</template>
</el-table-column>
<el-table-column label="推介时间" width="243" >
<template slot-scope="scope">
2019-12-24
{{ scope.row.recommendTime||'--'}}
</template>
</el-table-column>
<el-table-column prop="zj" label="是否完成推介" width="243" >
<template slot-scope="scope">
<template v-if="scope.row.isRecommend!=''&&scope.row.isRecommend!=null">
{{ scope.row.isRecommend?'是':'否'}}
</template>
<template v-else>
--
</template>
</template>
</el-table-column>
</el-table>
<div class="pagination clearfix" v-show="total2>10">`
<el-pagination background :page-size="pageSize2" :current-page="pageNum2"
@current-change="handleCurrentChange2" layout="prev, pager, next" :total="total2">
</el-pagination>
</div>
</div>
</div>
......@@ -169,27 +204,92 @@
</template>
<script>
import "@/assets/styles/public.css";
import api from '@/api/radar/radar.js';
export default {
name: 'EstablishmentDetails',
data() {
return {
id: '',
tableData: [{
id: 0,
name: '20重庆债14(2005938)',
time: '2020-09-18',
gm: '285.24',
zj: '否',
}]
textList: {},
pageNum1:1,
pageSize1:10,
tableData1:[],
total1:0,
pageNum2:1,
pageSize2:10,
tableData2:[],
total2:0,
}
},
created() {
console.log(this.$route.params)
this.id = this.$route.params.id
this.id = this.$route.params.id;
this.approvalInfoDetail();
this.approvalExaminePage();
this.approvalMarketingPage();
},
methods: {
approvalInfoDetail() {
api.approvalInfoDetail({
id: this.id
}).then(res => {
// console.log(res);
this.textList = res.data;
}).catch(error => {
});
},
handleCurrentChange1(pageNum1) {
this.pageNum1 = pageNum1;
this.search(pageNum1, this.pageSize1);
},
approvalExaminePage(pageNum1, pageSize1) {
if (!pageNum1) {
this.pageNum1 = 1;
}
if (!pageSize1) {
this.pageSize1 = 20;
}
var data = {
id: this.id,
pageNum: this.pageNum1,
pageSize: this.pageSize1
}
api.approvalExaminePage(data).then(res => {
// console.log(res);
this.tableData1 = res.rows;
}).catch(error => {
});
},
handleCurrentChange2(pageNum2) {
this.pageNum2 = pageNum2;
this.search(pageNum2, this.pageSize2);
},
approvalMarketingPage(pageNum2, pageSize2) {
if (!pageNum2) {
this.pageNum2 = 1;
}
if (!pageSize2) {
this.pageSize2 = 20;
}
var data = {
id: this.id,
pageNum: this.pageNum2,
pageSize: this.pageSize2
}
api.approvalMarketingPage(data).then(res => {
// console.log(res);
this.tableData2 = res.rows;
}).catch(error => {
});
}
}
}
......@@ -268,17 +368,28 @@
}
.content-label {
margin-top: 7px;
margin-top: 12px;
margin-bottom: 8px;
.list-label {
background: #F3F3FF;
color: #8491E8;
border-radius: 1px 1px 1px 1px;
padding: 3px 7px;
font-size: 12px;
margin-right: 12px;
}
.list-label-zb{
font-weight: 400;
color: #8491E8;
background: #F3F3FF;
}
.list-label-lx{
font-weight: 400;
color: #41A1FD;
background: #E4F3FD;
}
}
......@@ -552,6 +663,14 @@
.main5 {
.table-item {
margin-top: 22px;
.pagination {
padding: 14px;
.el-pagination {
float: right;
}
}
}
}
}
......
......@@ -4,35 +4,35 @@
<ul class="bottomlist-content">
<li class="bottomlist-list">
<p class="list-titel">
绿色节能型压缩机基础件、汽车零配件新建项目 (芜湖旭日机械制造有限公司)
{{textList.projectName}}
</p>
<div class="list-content">
<p class="list-content-text">
<span>受让人:</span>
<span class="blue">芜湖旭日机械制造有限公司</span>
<span class="blue">{{textList.company||"--"}}</span>
</p>
<p class="list-content-text">
<span>成交金额:</span>
<span>12345.62万元</span>
<span>{{textList.transactionPrice||"--"}}</span>
</p>
<p class="list-content-text">
<span>总面积:</span>
<span>12345.62万</span>
<span>{{textList.acreage||"--"}}</span>
</p>
<p class="list-content-text">
<span>合同签订:</span>
<span>2014-05-12</span>
<span>{{textList.contractSignTime||"--"}}</span>
</p>
</div>
<div class="list-content">
<p class="list-content-text">
<span>土地用途:</span>
<span>城镇村道路用地</span>
<span>{{textList.landUse||"--"}}</span>
</p>
<p class="list-content-text">
<span>供应方式:</span>
<span>挂牌出让</span>
<span>{{textList.supplyLandWay||"--"}}</span>
</p>
</div>
......@@ -46,71 +46,79 @@
<div class="main3-box">
<p>
<label class="label">行政区</label>
<span>1.36倍</span>
<span>
{{textList.province}}
<template v-if="textList.city">
-{{textList.city}}
</template>
<template v-if="textList.area">
-{{textList.area}}
</template>
</span>
<label class="label">电子监督号</label>
<span>1.36倍</span>
<span>{{textList.electronicNumber||"--"}}</span>
</p>
<p>
<label class="label">项目名称</label>
<span class="span-one">1.36倍</span>
<span class="span-one">{{textList.projectName||"--"}}</span>
</p>
<p>
<label class="label">项目位置</label>
<span class="span-one">1.36倍</span>
<span class="span-one">{{textList.landAddr||"--"}}</span>
</p>
<p>
<label class="label">面积</label>
<span>1.36倍</span>
<span>{{textList.buildArea||"--"}}</span>
<label class="label">土地来源</label>
<span>1.36倍</span>
<span>{{textList.landSource||"--"}}</span>
</p>
<p>
<label class="label">土地用途</label>
<span>1.36倍</span>
<span>{{textList.landUse||"--"}}</span>
<label class="label">供地方式</label>
<span>1.36倍</span>
<span>{{textList.supplyLandWay||"--"}}</span>
</p>
<p>
<label class="label">土地使用年限</label>
<span>1.36倍</span>
<span>{{textList.landUseYear||"--"}}</span>
<label class="label">行业分类</label>
<span>1.36倍</span>
<span>{{textList.industry||"--"}}</span>
</p>
<p>
<label class="label">土地级别</label>
<span>1.36倍</span>
<span>{{textList.landLevel||"--"}}</span>
<label class="label">成交价格(万元)</label>
<span>1.36倍</span>
<span>{{textList.transactionPrice||"--"}}</span>
</p>
<p>
<label class="label">土地使用权人</label>
<span class="span-one">1.36倍</span>
<span class="span-one">{{textList.landUseCompany||"--"}}</span>
</p>
<p>
<label class="label">约定容积率</label>
<span>1.36倍</span>
<span>{{textList.volumeRate||"--"}}</span>
<label class="label">批准单位</label>
<span>1.36倍</span>
<span>{{textList.authority||"--"}}</span>
</p>
<p>
<label class="label">约定交地日起</label>
<span>1.36倍</span>
<span>{{textList.conventionLandTime||"--"}}</span>
<label class="label">合同签订日期</label>
<span>1.36倍</span>
<span>{{textList.contractSignTime||"--"}}</span>
</p>
<p>
<label class="label">约定开工时间</label>
<span>1.36倍</span>
<span>{{textList.conventionBeginTime||"--"}}</span>
<label class="label">约定竣工时间</label>
<span>1.36倍</span>
<span>{{textList.conventionEndTime||"--"}}</span>
</p>
<p>
<label class="label">实际开工时间</label>
<span>1.36倍</span>
<span>{{textList.realBeginTime||"--"}}</span>
<label class="label">实际峻工时间</label>
<span>1.36倍</span>
<span>{{textList.realEndTime||"--"}}</span>
</p>
</div>
</div>
......@@ -119,21 +127,21 @@
<div class="main3-box">
<p>
<label class="label">地块名称</label>
<span>1.36倍</span>
<span>{{textList.landName||"--"}}</span>
<label class="label">建筑面积</label>
<span>1.36倍</span>
<span>{{textList.buildArea||"--"}}</span>
</p>
<p>
<label class="label">容积率</label>
<span>1.36倍</span>
<span>{{textList.volumeRate||"--"}}</span>
<label class="label">绿化率</label>
<span>1.36倍</span>
<span>{{textList.greeningRate||"--"}}</span>
</p>
<p>
<label class="label">建筑密度</label>
<span>1.36倍</span>
<span>{{textList.buildingDensity||"--"}}</span>
<label class="label">建筑限高</label>
<span>1.36倍</span>
<span>{{textList.buildingHeight||"--"}}</span>
</p>
</div>
</div>
......@@ -142,39 +150,39 @@
<div class="main3-box">
<p>
<label class="label">招拍挂起始时间</label>
<span>1.36倍</span>
<span>{{textList.projectName||"--"}}</span>
<label class="label">招拍挂截止时间</label>
<span>1.36倍</span>
<span>{{textList.projectName||"--"}}</span>
</p>
<p>
<label class="label">报名起始时间</label>
<span>1.36倍</span>
<span>{{textList.auctionBeginTime||"--"}}</span>
<label class="label">报名截止日期</label>
<span>1.36倍</span>
<span>{{textList.auctionEndTime||"--"}}</span>
</p>
<p>
<label class="label">起始价</label>
<span>1.36倍</span>
<span>{{textList.moneyBegin||"--"}}</span>
<label class="label">竞买保证金</label>
<span>1.36倍</span>
<span>{{textList.bondmoney||"--"}}</span>
</p>
<p>
<label class="label">加价幅度</label>
<span>1.36倍</span>
<span>{{textList.addMoneyRange||"--"}}</span>
<label class="label">投资强度</label>
<span>1.36倍</span>
<span>{{textList.investmentIntensity||"--"}}</span>
</p>
<p>
<label class="label">成交价</label>
<span>1.36倍</span>
<span>{{textList.transactionPrice||"--"}}</span>
<label class="label">受让人</label>
<span>1.36倍</span>
<span>{{textList.company||"--"}}</span>
</p>
<p>
<label class="label">成交公示日期</label>
<span>1.36倍</span>
<span>{{textList.transactionPublicityTime||"--"}}</span>
<label class="label">合同编号</label>
<span>1.36倍</span>
<span>{{textList.contractNum||"--"}}</span>
</p>
</div>
</div>
......@@ -183,27 +191,34 @@
</template>
<script>
import "@/assets/styles/public.css";
import api from '@/api/radar/radar.js';
export default {
name: 'LandDetails',
data() {
return {
id: '',
tableData: [{
id: 0,
name: '20重庆债14(2005938)',
time: '2020-09-18',
gm: '285.24',
zj: '否',
}]
textList: {}
}
},
created() {
console.log(this.$route.params)
this.id = this.$route.params.id
this.id = this.$route.params.id;
this.landDetail();
},
methods: {
landDetail() {
api.landDetail({
id: this.id
}).then(res => {
// console.log(res);
this.textList = res.data;
console.log(this.textList);
}).catch(error => {
});
},
}
}
......
......@@ -4,51 +4,60 @@
<ul class="bottomlist-content">
<li class="bottomlist-list" >
<p class="list-titel">
绿色节能型压缩机基础件、汽车零配件新建项目 (芜湖旭日机械制造有限公司)
<!-- <div v-else-if="item.projectName" v-html="item.projectName"></div> -->
{{textList.projectName}}
</p>
<div class="content-label">
<span class="list-label">市政工程</span>
<span class="list-label" v-if="textList.province||textList.city||textList.area">
{{textList.province}}
<template v-if="textList.city">
-{{textList.city}}
</template>
<template v-if="textList.area">
-{{textList.area}}
</template>
</span>
<span class="list-label list-label-zb" v-if="textList.businessType">
{{textList.businessType}}
</span>
<span class="list-label list-label-lx" v-if="textList.industry">
{{textList.industry}}
</span>
</div>
<div class="list-content">
<p class="list-content-text">
<span>招采单位:</span>
<span class="blue">江西合胜合招标咨询有限公司</span>
<span class="blue"> {{textList.tenderee||'--'}}</span>
</p>
<p class="list-content-text">
<span>代理单位:</span>
<span class="blue">江西合胜合招标咨询有限公司</span>
<span class="blue">{{textList.agency||'--'}}</span>
</p>
</div>
<div class="list-content">
<p class="list-content-text">
<span>预算金款:</span>
<span>123,456,78万元</span>
<span>{{textList.projectAmount||'--'}}万元</span>
</p>
<p class="list-content-text">
<span>联系方式:</span>
<span >招采单位 张工 123456789</span>
<span >招采单位 {{textList.contact}}{{textList.contactTel}}</span>
</p>
</div>
<div class="list-content">
<p class="list-content-text">
<span>发布时间:</span>
<span >今日</span>
<span >{{textList.issueTime||'--'}}</span>
</p>
<p class="list-content-text">
<span>报名截止日期:</span>
<span >2022-04-21</span>
</p>
<p class="list-content-text">
<span>开标时间:</span>
<span >2022-04-21</span>
<span >{{textList.overTime||'--'}}</span>
</p>
<p class="list-content-text">
<span>来源网站:</span>
<span >赤峰市阿鲁科尔沁旗人民政府</span>
<span >{{textList.dataSource||'--'}}</span>
</p>
</div>
......@@ -62,9 +71,11 @@
<div class="list-content-img" @mouseenter="showimg=false" @mouseleave="showimg=true">
<img v-if="showimg" src="@/assets/images/bxpro/original1.png">
<img v-else src="@/assets/images/bxpro/original.png">
<span>原文链接</span>
<span>
<a :href="textList.url">原文链接</a>
</span>
</div>
<div class="main3-box">
<div class="main3-box" v-html="textList.content">
......@@ -77,27 +88,35 @@
<script>
import "@/assets/styles/public.css";
import api from '@/api/radar/radar.js';
export default {
name: 'TenderDetails',
data() {
return {
id: '',
tableData: [{
id: 0,
name: '20重庆债14(2005938)',
time: '2020-09-18',
gm: '285.24',
zj: '否',
}],
textList:{},
showimg:true
}
},
created() {
console.log(this.$route.params)
this.id = this.$route.params.id
this.id = this.$route.params.id;
this.bidNoticeDetail();
},
methods: {
bidNoticeDetail() {
api.bidNoticeDetail({
id: this.id
}).then(res => {
// console.log(res);
this.textList = res.data;
console.log(this.textList);
}).catch(error => {
});
},
}
}
......@@ -182,11 +201,22 @@
background: #F3F3FF;
color: #8491E8;
border-radius: 1px 1px 1px 1px;
margin-right: 12px;
padding: 3px 7px;
font-size: 12px;
}
.list-label-zb{
font-weight: 400;
color: #5A88F9;
background: #E7EDFC;
}
.list-label-lx{
font-weight: 400;
color: #41A1FD;
background: #E4F3FD;
}
}
......@@ -288,6 +318,7 @@
margin-top: 22px;
min-height: 400px;
border: 1px solid #D8D8D8;
padding: 16px;
}
.list-content-img{
......
......@@ -4,24 +4,26 @@
<ul class="bottomlist-content">
<li class="bottomlist-list">
<p class="list-titel">
绿色节能型压缩机基础件、汽车零配件新建项目 (芜湖旭日机械制造有限公司)
{{textList.projectName}}
</p>
<div class="list-content">
<p class="list-content-text">
<span>发布日期:</span>
<span>2014-05-12</span>
<span>{{textList.pubdate||'--'}}</span>
</p>
<p class="list-content-text">
<span>开标时间:</span>
<span class='text-red'>2014-05-12 9:00</span>
<span class='text-red'>{{textList.endTimeDate||'--'}}</span>
</p>
</div>
<div class="list-content-img" @mouseenter="showimg=false" @mouseleave="showimg=true">
<img v-if="showimg" src="@/assets/images/bxpro/original1.png">
<img v-else src="@/assets/images/bxpro/original.png">
<span>原文链接</span>
<span>
<a :href="textList.url">原文链接</a>
</span>
</div>
</li>
......@@ -59,80 +61,93 @@
<div class="main3-box">
<p>
<label class="label">工程类型</label>
<span>1.36倍</span>
<span>{{textList.projectType||'--'}}</span>
<label class="label">工程类别</label>
<span>1.36倍</span>
<span>{{textList.projectPurposes||'--'}}</span>
</p>
<p>
<label class="label">项目投资额(万元)</label>
<span >1.36倍</span>
<span >{{textList.projectInvestmentAmount||'--'}}</span>
<label class="label">招标控制价/合同 估算价(万元)</label>
<span>1.36倍</span>
<span>{{textList.projectContractAmount||'--'}}</span>
</p>
<p>
<label class="label">建安费暂估(万元)</label>
<span >1.36倍</span>
<span >{{textList.projectSafeAmount||'--'}}</span>
<label class="label">勘察费暂估(万元)</label>
<span>1.36倍</span>
<span>{{textList.projectSurveyAmount||'--'}}</span>
</p>
<p>
<label class="label">设计费暂估(万元)</label>
<span>1.36倍</span>
<span>{{textList.projectDesignAmount||'--'}}</span>
<label class="label">投标保证金(万元)</label>
<span>1.36倍</span>
<span>{{textList.projectEnsureAmount||'--'}}</span>
</p>
<p>
<label class="label">计划工期</label>
<span>1.36倍</span>
<span>{{textList.projectDuration||'--'}}</span>
<label class="label">项目属地</label>
<span>1.36倍</span>
<span>
{{textList.province}}
<template v-if="textList.city">
-{{textList.city}}
</template>
<template v-if="textList.area">
-{{textList.area}}
</template>
</span>
</p>
<p>
<label class="label">发布时间</label>
<span>1.36倍</span>
<span>{{textList.pubdate||'--'}}</span>
<label class="label">开标时间</label>
<span class="color1">1.36倍</span>
<span class="color1">{{textList.endTimeDate||'--'}}</span>
</p>
<p>
<label class="label">评标办法</label>
<span>1.36倍</span>
<span>{{textList.bidAssessmentWay||'--'}}</span>
<label class="label">项目级别</label>
<span>1.36倍</span>
<span>{{textList.projectLevel||'--'}}</span>
</p>
<p>
<label class="label">建设规模</label>
<span class="span-one">1.36倍</span>
<span class="span-one">{{textList.bulidRange||'--'}}</span>
</p>
<p>
<label class="label">招标范围</label>
<span class="span-one">1.36倍</span>
<span class="span-one">{{textList.bidRange||'--'}}</span>
</p>
<p>
<label class="label">保证金缴纳方式</label>
<span>1.36倍</span>
<span>{{textList.projectEnsureAmountPayType||'--'}}</span>
<label class="label">开标地点</label>
<span>1.36倍</span>
<span>{{textList.projectOpenAddr||'--'}}</span>
</p>
<p>
<label class="label">建设地点</label>
<span>1.36倍</span>
<span>{{textList.projectAddr||'--'}}</span>
<label class="label">资金来源</label>
<span>1.36倍</span>
<span>{{textList.capitalSource||'--'}}</span>
</p>
<p>
<label class="label">评标委员会</label>
<span class="span-one">1.36倍</span>
<span class="span-one">
<template v-if="textList.bidMettingHasProjectUnit=0">未知</template>
<template v-else-if="textList.bidMettingHasProjectUnit=1"></template>
<template v-else-if="textList.bidMettingHasProjectUnit=2"></template>
<template v-else>--</template>
</span>
</p>
<p>
<label class="label">履约保证金 (形式 及金额)</label>
<span class="span-one">1.36倍</span>
<span class="span-one">{{textList.prformanceWayAndMoney||'--'}}</span>
</p>
</div>
</div>
......@@ -141,15 +156,15 @@
<div class="main3-box">
<p>
<label class="label">资质要求</label>
<span class="span-one">1.36倍</span>
<span class="span-one">{{textList.qualiLimit||'--'}}</span>
</p>
<p>
<label class="label">业绩要求</label>
<span class="span-one">1.36倍</span>
<span class="span-one">{{textList.projectLimit||'--'}}</span>
</p>
<p>
<label class="label">项目负责人要求</label>
<span class="span-one">1.36倍</span>
<span class="span-one">{{textList.personLimit||'--'}}</span>
</p>
</div>
</div>
......@@ -158,21 +173,21 @@
<div class="main3-box">
<p>
<label class="label">招标人</label>
<span class="color2">1.36倍</span>
<span class="color2">{{textList.tenderee||'--'}}</span>
<label class="label">代理机构</label>
<span class="color2">1.36倍</span>
<span class="color2">{{textList.agency||'--'}}</span>
</p>
<p>
<label class="label">招标人联系方式</label>
<span>1.36倍</span>
<span>{{textList.tendereeTel||'--'}}</span>
<label class="label">招标人联系地址</label>
<span>1.36倍</span>
<span>{{textList.tendereeAddress||'--'}}</span>
</p>
<p>
<label class="label">代理机构联系方式</label>
<span>1.36倍</span>
<span>{{textList.agencyTel||'--'}}</span>
<label class="label">代理机构联系地址</label>
<span>1.36倍</span>
<span>{{textList.agencyAddress||'--'}}</span>
</p>
</div>
......@@ -183,27 +198,33 @@
<script>
import "@/assets/styles/public.css";
import api from '@/api/radar/radar.js';
export default {
name: 'bxprozbggDetails',
data() {
return {
id: '',
tableData: [{
id: 0,
name: '20重庆债14(2005938)',
time: '2020-09-18',
gm: '285.24',
zj: '否',
}],
textList: {},
showimg:true,
}
},
created() {
console.log(this.$route.params)
this.id = this.$route.params.id
this.id = this.$route.params.id;
this.bidNoticeProDetail();
},
methods: {
bidNoticeProDetail() {
api.bidNoticeProDetail({
id: this.id
}).then(res => {
// console.log(res);
this.textList = res.data;
}).catch(error => {
});
},
}
}
......
......@@ -8,15 +8,15 @@
placeholder="请输入项目名称关键字" v-model="keyword" ></el-input>
</div>
</div>
<div class="content_item">
<!-- <div class="content_item">
<div class="label">参投单位</div>
<div class="content_right">
<el-input class="ename_input"
placeholder="请输入项目名称关键字" v-model="jskBidQueryDto.companyName" ></el-input>
</div>
placeholder="请输入参投单位关键字" v-model="jskBidQueryDto.companyName" ></el-input>
</div>
</div> -->
<div class="content_item">
<div class="label">项目名称</div>
<div class="label">项目信息</div>
<div class="content_right">
<div class="select-popper" >
<span :class="{color_text:jskBidQueryDto.province.length ||jskBidQueryDto.city.length ||jskBidQueryDto.county.length,}">
......@@ -129,50 +129,34 @@
</div>
</div>
<ul class="bottomlist-content">
<li class="bottomlist-list" >
<ul class="bottomlist-content" v-if="tableData.length>0">
<li class="bottomlist-list" v-for="item in tableData">
<p class="list-titel">
<router-link :to="'/radar/BidRecord/details/'+ 1" tag="a" class="list-titel-a" >绿色节能型压缩机基础件、汽车零配件新建项目 (芜湖旭日机械制造有限公司)</router-link>
<!-- <div v-else-if="item.projectName" v-html="item.projectName"></div> -->
<router-link :to="'/radar/BidRecord/details/'+ item.id" tag="a" class="list-titel-a" v-html="item.projectName"></router-link>
</p>
<div class="content-label">
<span class="list-label">市政工程</span>
<span class="list-label list-label-zb" v-if="item.domicile">
{{item.domicile}}
</span>
</div>
<div class="list-content">
<p class="list-content-text">
<span>项目业主:</span>
<span class="blue">芜湖旭日机械制造有限公司</span>
</p>
<p class="list-content-text">
<span>审批部门:</span>
<span>芜湖旭日</span>
</p>
<p class="list-content-text">
<span>审批结果:</span>
<span>12345.62万</span>
</p>
<p class="list-content-text">
<span>审批结果:</span>
<span>2014-05-12</span>
</p>
<p class="list-content-text">
<span>总投资:</span>
<span>62654</span>
</p>
<p class="list-content-text">
<span>计划开工日期:</span>
<span>62654</span>
<span>开标时间:</span>
<span>{{item.tenderTime||'--'}}</span>
</p>
<p class="list-content-text">
<span>计划完工日期</span>
<span>626</span>
<span>发布时间</span>
<span>{{item.punishDate||'--'}}</span>
</p>
<p class="list-content-text">
<span>是否为向民间推介项目</span>
<span>62654</span>
<span>来源网站</span>
<span>{{item.source||'--'}}</span>
</p>
</div>
</li>
......@@ -180,7 +164,7 @@
<div class="pagination clearfix" v-show="total>0">
<el-pagination
background
:page-size="pageSize"
:page-size="limit"
:current-page="page"
@current-change="handleCurrentChange"
layout="prev, pager, next"
......@@ -194,6 +178,8 @@
<script>
import jsk_data from '../../../../../public/jsk.json';
import {encodeStr} from "@/assets/js/common.js"
import api from '@/api/radar/radar.js';
export default {
name: 'BidRecord',
data() {
......@@ -223,8 +209,6 @@ export default {
},
],
page: 1,
limit: 20,
punishDateOptions: [
{
label: "不限",
......@@ -261,7 +245,6 @@ export default {
],
punishDateValue: "",
jskBidQueryDto: {
hasMoney:"",
province: [],
city: [],
county: []
......@@ -279,8 +262,8 @@ export default {
tableData:[],
total:6000,
page:1,
pageSize:20
page: 1,
limit: 20,
};
},
computed: {
......@@ -403,19 +386,11 @@ export default {
},
},
mounted() {
if (this.$route.query.keyword) {
this.keyword = this.$route.query.keyword;
}
this.addressListfn();
this.search();
},
methods: {
// 关键词推荐
cliclikeywoder() {
this.$refs.keyword.show();
},
keywordClick(val) {
this.keyword = val
},
refresh(value) {
if(value) {
......@@ -454,8 +429,14 @@ export default {
}else{
delete params.keywordNot
}
api.jskBidTenderPage(params).then(res=>{
if (res.code==200) {
this.tableData=res.data.list;
this.total=res.data.total;
}
}).catch(error=>{
this.$emit("search",params)
});
},
//关闭支付弹窗
......
......@@ -224,49 +224,58 @@
</div>
</div>
<ul class="bottomlist-content">
<li class="bottomlist-list">
<ul class="bottomlist-content" v-if="tableData.length>0">
<li class="bottomlist-list" v-for="item in tableData">
<p class="list-titel">
<router-link :to="'/radar/Land/details/'+ 1" tag="a" class="list-titel-a">绿色节能型压缩机基础件、汽车零配件新建项目 (芜湖旭日机械制造有限公司)</router-link>
<router-link :to="'/radar/Land/details/'+ item.id" tag="a" class="list-titel-a" v-html="item.projectName"></router-link>
</p>
<div class="list-content">
<p class="list-content-text">
<span>受让人:</span>
<span class="blue">芜湖旭日机械制造有限公司</span>
<span class="blue">{{item.companyName||'--'}}</span>
</p>
<p class="list-content-text">
<span>成交金额:</span>
<span>12345.62万元</span>
<span>{{item.transactionPrice||'--'}}</span>
</p>
<p class="list-content-text">
<span>总面积:</span>
<span>12345.62万</span>
<span>{{item.acreage||'--'}}</span>
</p>
<p class="list-content-text">
<span>合同签订:</span>
<span>2014-05-12</span>
<span>{{item.contractSignTime||'--'}}</span>
</p>
</div>
<div class="list-content">
<p class="list-content-text">
<span>土地用途:</span>
<span >城镇村道路用地</span>
<span >{{item.landUse||'--'}}</span>
</p>
<p class="list-content-text">
<span>供应方式:</span>
<span >挂牌出让</span>
<span >{{item.supplyLandWay||'--'}}</span>
</p>
</div>
<div class="list-content list-addree">
<img src="@/assets/images/addree.png" alt="">
<p class="list-content-text">
<span>土地用途:</span>
<span >城镇村道路用地</span>
<span>行政区划:</span>
<span >
{{item.province}}
<template v-if="item.city">
-{{item.city}}
</template>
<template v-if="item.area">
-{{item.area}}
</template>
</span>
</p>
<p class="list-content-text">
<span>土地坐落:</span>
<span >锡山区云林街道春雷路东南、许巷路西</span>
<span >{{item.landAddr||'--'}}</span>
</p>
</div>
</li>
......@@ -288,11 +297,14 @@
</template>
<script>
import {encodeStr} from "@/assets/js/common.js"
import api from '@/api/radar/radar.js';
import jsk_data from '../../../../../public/jsk.json';
export default {
name: 'Land',
data() {
return {
encodeStr,
conditionTitles: {
keyword: "关键词:",
landAddr: "土地坐落:",
......@@ -544,45 +556,18 @@
},
},
mounted() {
if (this.$route.query.keyword) {
var obj = JSON.parse(JSON.stringify(this.landMarketDto));
obj.keyword = this.$route.query.keyword;
this.landMarketDto = obj;
}
this.addressListfn();
// this.$axios.get('https://files.jiansheku.com/file/json/common/searchDic.json').then(res => {
// if (res && res.status == 200) {
// this.landMarketIndustryList = res.data.landMarketIndustry;
// this.landUseOptions = res.data.landUse
// }
// }).catch(error => {
// });
// if (this.landUseOptions.length == 0 || this.landMarketIndustryList.length == 0) {
// this.$axios.post("/nationzj/project/recently/typeList", {
// timeout: "49999",
// headers: {
// "Content-Type": "application/json;charset=UTF-8",
// },
// })
// .then((res) => {
// if (res.data.code == 200) {
// this.landUseOptions = res.data.data.landUseList;
// this.landMarketIndustryList = res.data.data.landMarketIndustryList;
// }
// })
// .catch((err) => {});
// }
this.init();
},
methods: {
searchDic(){
api.searchDic().then(res=>{
this.landMarketIndustryList = res.landMarketIndustry;
this.landUseOptions = res.data.landUse
}).catch(error=>{
});
},
refresh(value) {
if (value) {
this.$router.go(0)
......@@ -613,7 +598,15 @@
},
landMarketDto: data,
};
this.$emit("search", params)
api.landMarketPage(params).then(res=>{
if (res.code==200) {
this.tableData=res.data.list;
this.total=res.data.total;
}
}).catch(error=>{
});
},
//关闭支付弹窗
......@@ -918,30 +911,7 @@
init() {
this.search();
this.addressListfn();
this.$axios.get('https://files.jiansheku.com/file/json/common/searchDic.json').then(res => {
if (res && res.status == 200) {
this.landMarketIndustryList = res.data.landMarketIndustry;
this.landUseOptions = res.data.landUse
}
}).catch(error => {
});
if (this.landUseOptions.length == 0 || this.landMarketIndustryList.length == 0) {
this.$axios.post("/nationzj/project/recently/typeList", {
timeout: "49999",
headers: {
"Content-Type": "application/json;charset=UTF-8",
},
})
.then((res) => {
if (res.data.code == 200) {
this.landUseOptions = res.data.data.landUseList;
this.landMarketIndustryList = res.data.data.landMarketIndustryList;
}
})
.catch((err) => {});
}
this.searchDic();
},
},
};
......
......@@ -72,9 +72,6 @@
<if test="userId != null">
and f.user_id = #{userId}
</if>
<if test="deptId != null">
and u.dept_id = #{deptId}
</if>
</where>
ORDER BY f.creat_time DESC
</select>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment