Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
D
dsk-cr20g
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
dsk-cr20g
Commits
f2895543
Commit
f2895543
authored
Sep 05, 2023
by
huangjie
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'zuhuduan' of
http://192.168.60.201/root/dsk-operate-sys
into zuhuduan
parents
fd7ad8be
0fe06802
Changes
39
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
39 changed files
with
3314 additions
and
430 deletions
+3314
-430
Dockerfile
dsk-admin/Dockerfile
+3
-3
SysLoginController.java
...ava/com/dsk/web/controller/system/SysLoginController.java
+19
-5
SysUserController.java
...java/com/dsk/web/controller/system/SysUserController.java
+2
-1
BusinessException.java
...main/java/com/dsk/common/exception/BusinessException.java
+65
-0
DateUtils.java
dsk-common/src/main/java/com/dsk/common/utils/DateUtils.java
+13
-0
pom.xml
dsk-module/dsk-biz-api/pom.xml
+10
-1
CustomerServiceImpl.java
...in/java/com/dsk/biz/service/impl/CustomerServiceImpl.java
+1
-1
CompanySearchController.java
.../java/com/dsk/jsk/controller/CompanySearchController.java
+55
-55
RegionalEconomicDataController.java
...om/dsk/jsk/controller/RegionalEconomicDataController.java
+134
-0
RegionalEnterprisesController.java
...com/dsk/jsk/controller/RegionalEnterprisesController.java
+40
-0
SpecialBondProjectsController.java
...com/dsk/jsk/controller/SpecialBondProjectsController.java
+83
-0
UrbanInvestmentPlatformController.java
...dsk/jsk/controller/UrbanInvestmentPlatformController.java
+59
-0
PageQueryLimit.java
...-api/src/main/java/com/dsk/jsk/domain/PageQueryLimit.java
+24
-24
BusinessOpportunityRadarService.java
.../com/dsk/jsk/service/BusinessOpportunityRadarService.java
+96
-96
EnterpriseService.java
.../src/main/java/com/dsk/jsk/service/EnterpriseService.java
+1
-0
EconomicService.java
...ain/java/com/dsk/jsk/service/service/EconomicService.java
+92
-0
RegionalEnterprisesService.java
...m/dsk/jsk/service/service/RegionalEnterprisesService.java
+23
-0
SpecialPurposeBondsService.java
...m/dsk/jsk/service/service/SpecialPurposeBondsService.java
+55
-0
UrbanInvestmentPlatformService.java
...k/jsk/service/service/UrbanInvestmentPlatformService.java
+41
-0
EconomicServiceImpl.java
...com/dsk/jsk/service/service/impl/EconomicServiceImpl.java
+128
-0
RegionalEnterprisesServiceImpl.java
.../service/service/impl/RegionalEnterprisesServiceImpl.java
+125
-0
SpecialPurposeBondsServiceImpl.java
.../service/service/impl/SpecialPurposeBondsServiceImpl.java
+138
-0
UrbanInvestmentPlatformServiceImpl.java
...vice/service/impl/UrbanInvestmentPlatformServiceImpl.java
+126
-0
BizConstant.java
...k-biz-api/src/main/java/com/dsk/jsk/util/BizConstant.java
+392
-0
IpUtil.java
...le/dsk-biz-api/src/main/java/com/dsk/jsk/util/IpUtil.java
+281
-0
RedisCache.java
...sk-biz-api/src/main/java/com/dsk/jsk/util/RedisCache.java
+268
-0
BusinessOpportunityRadarController.java
...search/controller/BusinessOpportunityRadarController.java
+160
-0
CompanySearchController.java
...va/com/dsk/search/controller/CompanySearchController.java
+56
-0
MarketAnalysisController.java
...a/com/dsk/search/controller/MarketAnalysisController.java
+197
-0
PageQueryLimit.java
...c/main/java/com/dsk/search/controller/PageQueryLimit.java
+24
-0
AchievementQueryDto.java
.../main/java/com/dsk/search/domain/AchievementQueryDto.java
+246
-0
AptitudeDetailDto.java
...rc/main/java/com/dsk/search/domain/AptitudeDetailDto.java
+0
-0
AptitudeDto.java
...-api/src/main/java/com/dsk/search/domain/AptitudeDto.java
+0
-0
BusinessOpportunityRadarService.java
...m/dsk/search/service/BusinessOpportunityRadarService.java
+101
-0
MarketAnalysisService.java
...in/java/com/dsk/search/service/MarketAnalysisService.java
+117
-0
vue.config.js
dsk-operate-ui/vue.config.js
+2
-2
SysEnterpriseVo.java
...c/main/java/com/dsk/system/domain/vo/SysEnterpriseVo.java
+0
-87
SysUserVo.java
...tem/src/main/java/com/dsk/system/domain/vo/SysUserVo.java
+125
-144
SysMenuServiceImpl.java
.../java/com/dsk/system/service/impl/SysMenuServiceImpl.java
+12
-11
No files found.
dsk-admin/Dockerfile
View file @
f2895543
FROM
anapsix/alpine-java:8_server-jre_unlimited
MAINTAINER
Lion Li
MAINTAINER
Tanyang
RUN
mkdir
-p
/ruoyi/server/logs
\
/ruoyi/server/temp
\
...
...
@@ -12,7 +12,7 @@ ENV SERVER_PORT=8080
EXPOSE
${SERVER_PORT}
ADD
./target/
ruoyi-admin.jar ./app
.jar
ADD
./target/
dsk-operate-sys.jar ./dsk-operate-sys
.jar
ENTRYPOINT
["java", \
"-Djava.security.egd=file:/dev/./urandom", \
...
...
@@ -20,4 +20,4 @@ ENTRYPOINT ["java", \
# 应用名称 如果想区分集群节点监控 改成不同的名称即可
# "-Dskywalking.agent.service_name=ruoyi-server", \
# "-javaagent:/ruoyi/skywalking/agent/skywalking-agent.jar", \
"-jar", "
app
.jar"]
"-jar", "
dsk-operate-sys
.jar"]
dsk-admin/src/main/java/com/dsk/web/controller/system/SysLoginController.java
View file @
f2895543
...
...
@@ -4,8 +4,10 @@ import cn.dev33.satoken.annotation.SaCheckLogin;
import
cn.dev33.satoken.annotation.SaIgnore
;
import
cn.dev33.satoken.stp.StpUtil
;
import
cn.hutool.core.lang.Assert
;
import
cn.hutool.core.lang.RegexPool
;
import
cn.hutool.core.map.MapUtil
;
import
cn.hutool.core.util.RandomUtil
;
import
cn.hutool.core.util.ReUtil
;
import
com.dsk.common.constant.Constants
;
import
com.dsk.common.constant.GlobalConstants
;
import
com.dsk.common.core.domain.R
;
...
...
@@ -36,10 +38,7 @@ import javax.servlet.ServletRequest;
import
javax.servlet.http.HttpServletRequest
;
import
javax.validation.constraints.NotBlank
;
import
java.time.Duration
;
import
java.util.HashMap
;
import
java.util.LinkedHashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.*
;
/**
* 登录验证
...
...
@@ -100,13 +99,28 @@ public class SysLoginController {
*/
@SaCheckLogin
@PostMapping
(
"/user/tenants"
)
public
R
<
List
<
SysTenantVo
>>
userTenant
List
()
{
public
R
<
List
<
SysTenantVo
>>
userTenant
s
()
{
LoginUser
loginUser
=
LoginHelper
.
getLoginUser
();
List
<
SysTenantVo
>
tenantList
=
loginService
.
tenantListByAccount
(
loginUser
.
getUserPhone
());
return
R
.
ok
(
tenantList
);
}
/**
* 用户租户列表:根据用户账号获取用户绑定的租户列表
*
* @return 结果
*/
@SaIgnore
@PostMapping
(
"/user/tenant/list"
)
public
R
<
List
<
SysTenantVo
>>
userTenantList
(
String
phone
)
{
if
(!
ReUtil
.
isMatch
(
RegexPool
.
MOBILE
,
phone
))
{
return
R
.
ok
(
new
ArrayList
<>());
}
List
<
SysTenantVo
>
tenantList
=
loginService
.
tenantListByAccount
(
phone
);
return
R
.
ok
(
tenantList
);
}
/**
* 获取当前用户默认租户
* @return
...
...
dsk-admin/src/main/java/com/dsk/web/controller/system/SysUserController.java
View file @
f2895543
...
...
@@ -24,6 +24,7 @@ import com.dsk.system.domain.SysRole;
import
com.dsk.system.domain.SysUser
;
import
com.dsk.system.domain.vo.SysUserExportVo
;
import
com.dsk.system.domain.vo.SysUserImportVo
;
import
com.dsk.system.domain.vo.SysUserVo
;
import
com.dsk.system.listener.SysUserImportListener
;
import
com.dsk.system.service.ISysDeptService
;
import
com.dsk.system.service.ISysPostService
;
...
...
@@ -143,7 +144,7 @@ public class SysUserController extends BaseController {
ajax
.
put
(
"posts"
,
postService
.
selectPostAll
());
if
(
ObjectUtil
.
isNotNull
(
userId
))
{
SysUser
sysUser
=
userService
.
selectUserById
(
userId
);
ajax
.
put
(
"user"
,
sysUser
);
ajax
.
put
(
"user"
,
BeanUtil
.
toBean
(
sysUser
,
SysUserVo
.
class
)
);
ajax
.
put
(
"postIds"
,
postService
.
selectPostListByUserId
(
userId
));
ajax
.
put
(
"roleIds"
,
StreamUtils
.
toList
(
sysUser
.
getRoles
(),
SysRole:
:
getRoleId
));
}
...
...
dsk-common/src/main/java/com/dsk/common/exception/BusinessException.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
common
.
exception
;
import
lombok.AccessLevel
;
import
lombok.Getter
;
import
lombok.experimental.FieldDefaults
;
@Getter
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
BusinessException
extends
RuntimeException
{
private
static
final
long
serialVersionUID
=
1L
;
Integer
code
;
String
msg
;
public
BusinessException
(
String
msg
)
{
super
(
msg
);
this
.
msg
=
msg
;
}
public
BusinessException
(
Integer
code
,
String
msg
)
{
super
();
this
.
code
=
code
;
this
.
msg
=
msg
;
}
public
BusinessException
(
String
msg
,
Object
...
params
)
{
for
(
Object
param
:
params
)
{
msg
=
msg
.
replaceFirst
(
"\\{\\}"
,
param
.
toString
());
}
this
.
msg
=
msg
;
}
public
BusinessException
(
int
code
,
String
msg
,
Object
...
params
)
{
this
.
code
=
code
;
for
(
Object
param
:
params
)
{
msg
=
msg
.
replaceFirst
(
"\\{\\}"
,
param
.
toString
());
}
this
.
msg
=
msg
;
}
public
BusinessException
(
Throwable
throwable
)
{
super
(
throwable
);
}
public
String
getMsg
()
{
return
msg
;
}
}
dsk-common/src/main/java/com/dsk/common/utils/DateUtils.java
View file @
f2895543
...
...
@@ -165,4 +165,17 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
ZonedDateTime
zdt
=
localDateTime
.
atZone
(
ZoneId
.
systemDefault
());
return
Date
.
from
(
zdt
.
toInstant
());
}
/***
*@Description: 获取当前年份
*@Param:
*@return: int
*@Author: Dgm
*@date: 2023/5/29 16:05
*/
public
static
int
getYear
()
{
LocalDate
localDate
=
LocalDate
.
now
();
int
year
=
localDate
.
getYear
();
return
year
;
}
}
dsk-module/dsk-biz-api/pom.xml
View file @
f2895543
...
...
@@ -41,7 +41,16 @@
<artifactId>
dsk-acc-open-sdk-java
</artifactId>
<version>
2.1.0
</version>
</dependency>
<dependency>
<groupId>
com.alibaba.fastjson2
</groupId>
<artifactId>
fastjson2
</artifactId>
<version>
2.0.25
</version>
</dependency>
<dependency>
<groupId>
com.github.pagehelper
</groupId>
<artifactId>
pagehelper
</artifactId>
<version>
5.3.2
</version>
</dependency>
<!-- <dependency>-->
...
...
dsk-module/dsk-biz-api/src/main/java/com/dsk/biz/service/impl/CustomerServiceImpl.java
View file @
f2895543
...
...
@@ -13,7 +13,6 @@ import com.dsk.biz.domain.vo.CustomerBusinessListVo;
import
com.dsk.biz.domain.vo.CustomerListVo
;
import
com.dsk.biz.domain.vo.CustomerStatusListVo
;
import
com.dsk.biz.domain.vo.CustomerVo
;
import
com.dsk.jsk.service.BusinessOpportunityRadarService
;
import
com.dsk.jsk.service.EnterpriseCommonService
;
import
com.dsk.biz.mapper.CustomerMapper
;
import
com.dsk.biz.mapper.CustomerUserMapper
;
...
...
@@ -24,6 +23,7 @@ import com.dsk.common.core.page.TableDataInfo;
import
com.dsk.common.exception.ServiceException
;
import
com.dsk.common.helper.LoginHelper
;
import
com.dsk.common.utils.StringUtils
;
import
com.dsk.search.service.BusinessOpportunityRadarService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/controller/CompanySearchController.java
View file @
f2895543
package
com
.
dsk
.
jsk
.
controller
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.jsk.domain.PageQueryLimit
;
import
com.dsk.jsk.domain.bo.ComposeQueryDto
;
import
com.dsk.jsk.service.BusinessOpportunityRadarService
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
/**
* 查企业
* @author Administrator
*
*/
@RequestMapping
(
"/enterprise"
)
@RestController
public
class
CompanySearchController
{
@Resource
BusinessOpportunityRadarService
opportunityRadarService
;
/*
* 模糊查询企业名称
*/
@PostMapping
(
"/index"
)
public
AjaxResult
landMarketPage
(
@RequestBody
ComposeQueryDto
dto
)
{
if
(
PageQueryLimit
.
pageLimit
(
dto
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
opportunityRadarService
.
enterpriseIndex
(
dto
);
}
/*
* 完全匹配企业名称
*/
@GetMapping
(
"/findByName/{keyword}"
)
public
AjaxResult
findByName
(
@PathVariable
String
keyword
)
{
return
opportunityRadarService
.
enterpriseByName
(
keyword
);
}
/*
* 完全匹配企业名称
*/
@PostMapping
(
"/page"
)
public
AjaxResult
page
(
@RequestBody
ComposeQueryDto
dto
)
{
if
(
PageQueryLimit
.
pageLimit
(
dto
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
opportunityRadarService
.
enterprisePage
(
dto
);
}
}
//
package com.dsk.jsk.controller;
//
//
//
import com.dsk.common.core.domain.AjaxResult;
//
import com.dsk.jsk.domain.PageQueryLimit;
//
import com.dsk.jsk.domain.bo.ComposeQueryDto;
//
import com.dsk.jsk.service.BusinessOpportunityRadarService;
//
import org.springframework.web.bind.annotation.*;
//
//
import javax.annotation.Resource;
//
//
/
//
**
//
* 查企业
//
* @author Administrator
//
*
//
*/
//
@RequestMapping("/enterprise")
//
@RestController
//
public class CompanySearchController {
//
//
//
@Resource
//
BusinessOpportunityRadarService opportunityRadarService;
//
//
/*
//
* 模糊查询企业名称
//
*/
//
@PostMapping("/index")
//
public AjaxResult landMarketPage(@RequestBody ComposeQueryDto dto) {
//
if (PageQueryLimit.pageLimit(dto.getPage())){
//
return AjaxResult.error("翻页已达到上限");
//
}
//
return opportunityRadarService.enterpriseIndex(dto);
//
}
//
//
/*
//
* 完全匹配企业名称
//
*/
//
@GetMapping("/findByName/{keyword}")
//
public AjaxResult findByName(@PathVariable String keyword) {
//
return opportunityRadarService.enterpriseByName(keyword);
//
}
//
//
/*
//
* 完全匹配企业名称
//
*/
//
@PostMapping("/page")
//
public AjaxResult page(@RequestBody ComposeQueryDto dto) {
//
if (PageQueryLimit.pageLimit(dto.getPage())){
//
return AjaxResult.error("翻页已达到上限");
//
}
//
return opportunityRadarService.enterprisePage(dto);
//
}
//
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/controller/RegionalEconomicDataController.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
jsk
.
controller
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.jsk.domain.*
;
import
com.dsk.jsk.domain.bo.*
;
import
com.dsk.jsk.service.service.EconomicService
;
import
com.dsk.jsk.util.IpUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.validation.Valid
;
/**
* @ClassName RegionalEconomicDataController
* @Description 区域经济大全
* @Author Dgm
* @Date 2023/5/18 10:09
* @Version 1.0.0
*/
@Slf4j
@RestController
@RequestMapping
(
value
=
"/economic"
)
public
class
RegionalEconomicDataController
{
@Autowired
private
EconomicService
economicService
;
/***
*@Description: 全国经济大全分页列表
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
"/national/nationalPage"
)
public
AjaxResult
nationalPage
(
@RequestBody
@Valid
OpRegionalEconomicDataV1PageDto
dto
)
{
return
economicService
.
nationalPage
(
dto
);
}
/***
*@Description: 获取年份
*@Param:
*@return: com.dsk.acc.security.common.msg.RestResponse
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
"/years/list"
)
public
AjaxResult
yearsList
(
@RequestBody
OpRegionalEconomicDataYearsListDto
dto
)
{
return
economicService
.
yearsList
(
dto
);
}
/***
*@Description: 全国经济大全详情
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
"/details"
)
public
AjaxResult
details
(
@RequestBody
@Valid
OpRegionalEconomicDataDetailsDto
detailsDto
)
{
return
economicService
.
details
(
detailsDto
);
}
/***
*@Description: 获取当前地区
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
value
=
"location"
)
public
AjaxResult
location
(
@RequestBody
OpRegionalLocalDto
vo
,
HttpServletRequest
request
){
String
ip
=
IpUtil
.
getIpAddr
(
request
);
vo
.
setIp
(
ip
);
return
economicService
.
location
(
vo
);
}
/***
*@Description: 地区经济-统计
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
"/statistics/regional"
)
public
AjaxResult
statisticsRegional
(
@RequestBody
OpRegionalEconomicDataStatisticsRegionalDto
dto
)
{
return
economicService
.
statisticsRegional
(
dto
);
}
/***
*@Description: 地区经济-主要指标列表
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
"/regional/list"
)
public
AjaxResult
regionalList
(
@RequestBody
OpRegionalEconomicDataRegionalListDto
dto
)
{
return
economicService
.
regionalList
(
dto
);
}
/***
*@Description: 地区经济
*@Param:
*@return: com.dsk.acc.security.common.msg.RestResponse
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
"/regional/compare"
)
public
AjaxResult
regionalCompare
(
@RequestBody
OpRegionalEconomicDataStatisticsRegionalDto
dto
)
{
return
economicService
.
regionalCompare
(
dto
);
}
/***
*@Description: 地区经济-对比
*@Param:
*@return: com.dsk.acc.security.common.msg.RestResponse
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
"/regional/multipleCompare"
)
public
AjaxResult
regionalMultipleCompare
(
@RequestBody
OpRegionalEconomicRegionalCompareDto
compareDto
)
{
return
economicService
.
regionalMultipleCompare
(
compareDto
);
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/controller/RegionalEnterprisesController.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
jsk
.
controller
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.jsk.domain.bo.ComposeQueryDto
;
import
com.dsk.jsk.service.service.RegionalEnterprisesService
;
import
com.dsk.search.controller.PageQueryLimit
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* @ClassName RegionalEnterprisesController
* @Description 区域企业
* @Author Dgm
* @Date 2023/5/24 16:20
* @Version
*/
@RestController
@RequestMapping
(
value
=
"/enterprises"
)
public
class
RegionalEnterprisesController
{
@Autowired
private
RegionalEnterprisesService
regionalEnterprisesService
;
@PostMapping
(
"regional/page"
)
public
AjaxResult
page
(
@RequestBody
JSONObject
object
)
throws
Exception
{
ComposeQueryDto
compose
=
JSONObject
.
parseObject
(
object
.
toJSONString
(),
ComposeQueryDto
.
class
);
compose
.
getPage
().
setPage
(
compose
.
getPageNum
());
compose
.
getPage
().
setLimit
(
compose
.
getPageSize
());
compose
.
getPage
().
setField
(
compose
.
getField
());
compose
.
getPage
().
setOrder
(
compose
.
getOrder
());
if
(
PageQueryLimit
.
pageLimit
(
compose
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
regionalEnterprisesService
.
enterprisePage
(
compose
);
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/controller/SpecialBondProjectsController.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
jsk
.
controller
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.jsk.domain.*
;
import
com.dsk.jsk.domain.bo.SpecialBondInformationDetailsDto
;
import
com.dsk.jsk.domain.bo.SpecialBondInformationPageDto
;
import
com.dsk.jsk.domain.bo.SpecialPurposeBondsDto
;
import
com.dsk.jsk.domain.bo.SpecialPurposeBondsPageDto
;
import
com.dsk.jsk.service.service.SpecialPurposeBondsService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.validation.Valid
;
/**
* @ClassName SpecialBondProjectsController
* @Description 专项债项目
* @Author Dgm
* @Date 2023/5/18 10:09
* @Version 1.0.0
*/
@RestController
@RequestMapping
(
value
=
"/specialPurposeBonds"
)
public
class
SpecialBondProjectsController
{
@Autowired
private
SpecialPurposeBondsService
specialPurposeBondsService
;
/***
*@Description: 专项债项目分页列表
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
"/projects/page"
)
public
AjaxResult
page
(
@RequestBody
SpecialPurposeBondsPageDto
pageDto
)
{
return
specialPurposeBondsService
.
page
(
pageDto
);
}
/***
*@Description: 专项债项目详情
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
"/details"
)
public
AjaxResult
details
(
@RequestBody
@Valid
SpecialBondInformationDetailsDto
detailsDto
)
{
return
specialPurposeBondsService
.
details
(
detailsDto
);
}
/***
*@Description: 专项债-项目类别统计
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
"/bond/statistics"
)
public
AjaxResult
bondStatistics
(
@RequestBody
SpecialPurposeBondsDto
dto
)
{
return
specialPurposeBondsService
.
bondStatistics
(
dto
);
}
/***
*@Description: 专项债分页列表
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
"/bond/page"
)
public
AjaxResult
bondPage
(
@RequestBody
SpecialBondInformationPageDto
dto
)
{
return
specialPurposeBondsService
.
bondPage
(
dto
);
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/controller/UrbanInvestmentPlatformController.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
jsk
.
controller
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.jsk.domain.bo.UrbanInvestmentPlatformDto
;
import
com.dsk.jsk.service.service.UrbanInvestmentPlatformService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
/**
* @ClassName UrbanInvestmentPlatformController
* @Description 城投平台
* @Author Dgm
* @Date 2023/5/18 10:09
* @Version 1.0.0
*/
@RestController
@RequestMapping
(
value
=
"/urbanInvestment"
)
public
class
UrbanInvestmentPlatformController
{
@Autowired
private
UrbanInvestmentPlatformService
urbanInvestmentPlatformService
;
/***
*@Description: 城投平台分页列表
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
"/page"
)
public
AjaxResult
page
(
@RequestBody
UrbanInvestmentPlatformDto
dto
)
{
return
urbanInvestmentPlatformService
.
page
(
dto
);
}
/***
*@Description: 城投平台详情
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
"/details/{id}"
)
public
AjaxResult
details
(
@PathVariable
(
"id"
)
String
id
)
{
return
urbanInvestmentPlatformService
.
details
(
id
);
}
/***
*@Description: 城投平台统计
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping
(
"/statistics"
)
public
AjaxResult
statistics
(
@RequestBody
UrbanInvestmentPlatformDto
dto
)
{
return
urbanInvestmentPlatformService
.
statistics
(
dto
);
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/domain/PageQueryLimit.java
View file @
f2895543
package
com
.
dsk
.
jsk
.
domain
;
import
com.dsk.jsk.domain.bo.Page
;
/**
* @author lc
* @date 2023/6/20 17:48
*/
public
class
PageQueryLimit
{
public
static
boolean
pageLimit
(
Page
page
){
if
(
null
==
page
)
{
return
true
;
}
if
(
null
==
page
.
getLimit
()||
null
==
page
.
getPage
()){
return
true
;
}
if
(
page
.
getPage
()*
page
.
getLimit
()>
10000
){
return
true
;
}
return
false
;
}
}
//
package com.dsk.jsk.domain;
//
//
//
import com.dsk.jsk.domain.bo.Page;
//
/
//
**
//
* @author lc
//
* @date 2023/6/20 17:48
//
*/
//
public class PageQueryLimit {
//
//
public static boolean pageLimit(Page page){
//
if (null == page) {
//
return true;
//
}
//
if (null==page.getLimit()||null==page.getPage()){
//
return true;
//
}
//
if ( page.getPage()*page.getLimit()>10000){
//
return true;
//
}
//
return false;
//
}
//
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/service/BusinessOpportunityRadarService.java
View file @
f2895543
package
com
.
dsk
.
jsk
.
service
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.json.JSONObject
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.common.utils.DskOpenApiUtil
;
import
com.dsk.jsk.domain.bo.ComposeQueryDto
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.HashMap
;
import
java.util.Map
;
/**
* @Author liujie
* @ClassName MarketAnalysisServiceImpl
* @Date 2023/5/15 16:40
**/
@Service
public
class
BusinessOpportunityRadarService
{
@Autowired
private
DskOpenApiUtil
dskOpenApiUtil
;
public
AjaxResult
jskBidNewsPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBid/news/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
findByName
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBid/news/findByName"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
jskBidTenderPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBidTender/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
establishmentPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/establishment/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
jskBidPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBid/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
landMarketPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/landMarket/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
enterpriseIndex
(
ComposeQueryDto
dto
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/enterprice/index"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
enterprisePage
(
ComposeQueryDto
dto
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/enterprice/page"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
enterpriseByName
(
String
keyword
)
{
Map
<
String
,
Object
>
params
=
new
HashMap
<>();
params
.
put
(
"keyword"
,
keyword
);
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/enterprice/findByName"
,
params
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
bondProjectPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/bondProject/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
jskBidPlanPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBidPlan/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
getCapitalSourceSelect
()
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBidPlan/getCapitalSourceSelect"
,
null
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
keywordList
()
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/project/keywordList"
,
null
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
bidSourceList
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBid/source"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
}
//
package com.dsk.jsk.service;
//
//
import cn.hutool.core.bean.BeanUtil;
//
import cn.hutool.json.JSONObject;
//
import com.dsk.common.core.domain.AjaxResult;
//
import com.dsk.common.utils.DskOpenApiUtil;
//
import com.dsk.jsk.domain.bo.ComposeQueryDto;
//
import org.springframework.beans.factory.annotation.Autowired;
//
import org.springframework.stereotype.Service;
//
//
import java.util.HashMap;
//
import java.util.Map;
//
/
//
**
//
* @Author liujie
//
* @ClassName MarketAnalysisServiceImpl
//
* @Date 2023/5/15 16:40
//
**/
//
@Service
//
public class BusinessOpportunityRadarService {
//
//
@Autowired
//
private DskOpenApiUtil dskOpenApiUtil;
//
//
public AjaxResult jskBidNewsPage(JSONObject object) {
//
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/jskBid/news/page", object);
//
return BeanUtil.toBean(map, AjaxResult.class);
//
}
//
//
public AjaxResult findByName(JSONObject object) {
//
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/jskBid/news/findByName", object);
//
return BeanUtil.toBean(map, AjaxResult.class);
//
}
//
//
public AjaxResult jskBidTenderPage(JSONObject object) {
//
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/jskBidTender/page", object);
//
return BeanUtil.toBean(map, AjaxResult.class);
//
}
//
//
public AjaxResult establishmentPage(JSONObject object) {
//
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/establishment/page", object);
//
return BeanUtil.toBean(map, AjaxResult.class);
//
}
//
//
public AjaxResult jskBidPage(JSONObject object) {
//
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/jskBid/page", object);
//
return BeanUtil.toBean(map, AjaxResult.class);
//
}
//
//
public AjaxResult landMarketPage(JSONObject object) {
//
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/landMarket/page", object);
//
return BeanUtil.toBean(map, AjaxResult.class);
//
}
//
//
public AjaxResult enterpriseIndex(ComposeQueryDto dto) {
//
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/enterprice/index", BeanUtil.beanToMap(dto,false,false));
//
return BeanUtil.toBean(map, AjaxResult.class);
//
}
//
//
public AjaxResult enterprisePage(ComposeQueryDto dto) {
//
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/enterprice/page", BeanUtil.beanToMap(dto,false,false));
//
return BeanUtil.toBean(map, AjaxResult.class);
//
}
//
//
public AjaxResult enterpriseByName(String keyword) {
//
Map<String, Object> params = new HashMap<>();
//
params.put("keyword", keyword);
//
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/enterprice/findByName", params);
//
return BeanUtil.toBean(map, AjaxResult.class);
//
}
//
//
public AjaxResult bondProjectPage(JSONObject object) {
//
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/bondProject/page", object);
//
return BeanUtil.toBean(map, AjaxResult.class);
//
}
//
//
public AjaxResult jskBidPlanPage(JSONObject object) {
//
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/jskBidPlan/page", object);
//
return BeanUtil.toBean(map, AjaxResult.class);
//
}
//
//
public AjaxResult getCapitalSourceSelect() {
//
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/jskBidPlan/getCapitalSourceSelect", null);
//
return BeanUtil.toBean(map, AjaxResult.class);
//
}
//
//
public AjaxResult keywordList() {
//
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/project/keywordList", null);
//
return BeanUtil.toBean(map, AjaxResult.class);
//
}
//
//
public AjaxResult bidSourceList(JSONObject object) {
//
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/jskBid/source", object);
//
return BeanUtil.toBean(map, AjaxResult.class);
//
}
//
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/service/EnterpriseService.java
View file @
f2895543
...
...
@@ -13,6 +13,7 @@ import com.dsk.common.utils.DskOpenApiUtil;
import
com.dsk.common.utils.EncodeIdUtil
;
import
com.dsk.common.utils.redis.RedisUtils
;
import
com.dsk.jsk.domain.*
;
import
com.dsk.search.service.BusinessOpportunityRadarService
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.MapUtils
;
import
org.slf4j.Logger
;
...
...
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/service/service/EconomicService.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
jsk
.
service
.
service
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.jsk.domain.*
;
import
com.dsk.jsk.domain.bo.*
;
/**
* @ClassName EconomicService
* @Description 经济大全业务层
* @Author Dgm
* @Date 2023/5/18 10:17
* @Version 1.00
*/
public
interface
EconomicService
{
/***
*@Description: 全国经济大全分页列表
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:25
*/
AjaxResult
nationalPage
(
OpRegionalEconomicDataV1PageDto
dto
);
/***
*@Description: 全国经济大全分页列表
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:25
*/
AjaxResult
yearsList
(
OpRegionalEconomicDataYearsListDto
dataYearsListDto
);
/***
*@Description: 全国经济大全详情
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:25
*/
AjaxResult
details
(
OpRegionalEconomicDataDetailsDto
detailsDto
);
/***
*@Description: 获取当前地区
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:25
*/
AjaxResult
location
(
OpRegionalLocalDto
detailsDto
);
/***
*@Description: 地区经济统计
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:25
*/
AjaxResult
statisticsRegional
(
OpRegionalEconomicDataStatisticsRegionalDto
dto
);
/***
*@Description: 地区经济-分页列表
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:25
*/
AjaxResult
regionalList
(
OpRegionalEconomicDataRegionalListDto
dto
);
/***
*@Description: 对比经济
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:25
*/
AjaxResult
regionalCompare
(
OpRegionalEconomicDataStatisticsRegionalDto
dto
);
/***
*@Description: 地区经济-对比
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:25
*/
AjaxResult
regionalMultipleCompare
(
OpRegionalEconomicRegionalCompareDto
dto
);
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/service/service/RegionalEnterprisesService.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
jsk
.
service
.
service
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.jsk.domain.bo.ComposeQueryDto
;
/**
* @ClassName EconomicService
* @Description 区域企业业务层
* @Author Dgm
* @Date 2023/5/18 10:17
* @Version 1.00
*/
public
interface
RegionalEnterprisesService
{
/***
*@Description: 区域企业分页列表
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:25
*/
AjaxResult
enterprisePage
(
ComposeQueryDto
compose
)
throws
Exception
;
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/service/service/SpecialPurposeBondsService.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
jsk
.
service
.
service
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.jsk.domain.*
;
import
com.dsk.jsk.domain.bo.SpecialBondInformationDetailsDto
;
import
com.dsk.jsk.domain.bo.SpecialBondInformationPageDto
;
import
com.dsk.jsk.domain.bo.SpecialPurposeBondsDto
;
import
com.dsk.jsk.domain.bo.SpecialPurposeBondsPageDto
;
/**
* @ClassName EconomicService
* @Description 专项债项目业务层
* @Author Dgm
* @Date 2023/5/18 10:17
* @Version 1.00
*/
public
interface
SpecialPurposeBondsService
{
/***
*@Description: 专项债项目分页列表
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:25
*/
AjaxResult
page
(
SpecialPurposeBondsPageDto
dto
);
/***
*@Description: 专项债项目详情
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:25
*/
AjaxResult
details
(
SpecialBondInformationDetailsDto
detailsDto
);
/***
*@Description: 项目类别统计
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:25
*/
AjaxResult
bondStatistics
(
SpecialPurposeBondsDto
dto
);
/***
*@Description: 专项债分页列表
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
AjaxResult
bondPage
(
SpecialBondInformationPageDto
pageDto
);
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/service/service/UrbanInvestmentPlatformService.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
jsk
.
service
.
service
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.jsk.domain.bo.UrbanInvestmentPlatformDto
;
/**
* @ClassName EconomicService
* @Description 城投平台业务层
* @Author Dgm
* @Date 2023/5/18 10:17
* @Version 1.00
*/
public
interface
UrbanInvestmentPlatformService
{
/***
*@Description: 城投平台分页列表
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:25
*/
AjaxResult
page
(
UrbanInvestmentPlatformDto
dto
);
/***
*@Description: 城投平台详情
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:25
*/
AjaxResult
details
(
String
id
);
/***
*@Description: 城投平台统计
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
AjaxResult
statistics
(
UrbanInvestmentPlatformDto
pageDto
);
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/service/service/impl/EconomicServiceImpl.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
jsk
.
service
.
service
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.dsk.acc.openapi.client.util.CommonUtils
;
import
com.dsk.common.constant.CacheConstants
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.common.helper.LoginHelper
;
import
com.dsk.common.utils.DateUtils
;
import
com.dsk.common.utils.DskOpenApiUtil
;
import
com.dsk.jsk.domain.*
;
import
com.dsk.jsk.domain.bo.*
;
import
com.dsk.jsk.service.service.EconomicService
;
import
com.dsk.jsk.util.RedisCache
;
import
org.apache.commons.collections4.MapUtils
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
java.util.List
;
import
java.util.Map
;
/**
* @ClassName EconomicServiceImpl
* @Description 经济大全实现
* @Author Dgm
* @Date 2023/5/18 10:23
* @Version
*/
@Service
public
class
EconomicServiceImpl
implements
EconomicService
{
@Resource
private
DskOpenApiUtil
dskOpenApiUtil
;
@Resource
private
RedisCache
redisCache
;
/**
* 全国宏观经济:1 / 辖区经济:2 / 地区对比:3
*/
private
static
final
Integer
TYPE
=
1
;
/**
* 默认排序
*/
private
static
final
String
FIELD
=
"gdp"
;
private
static
final
String
ORDER
=
"desc"
;
@Override
public
AjaxResult
nationalPage
(
OpRegionalEconomicDataV1PageDto
dto
)
{
if
(
ObjectUtil
.
isEmpty
(
dto
.
getYear
()))
{
dto
.
setYear
(
DateUtils
.
getYear
()
-
1
);
}
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/economic/national/nationalPage"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
Integer
code
=
MapUtils
.
getInteger
(
map
,
"code"
,
300
);
if
(!
code
.
equals
(
HttpStatus
.
OK
.
value
()))
{
throw
new
RuntimeException
();
}
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
@Override
public
AjaxResult
yearsList
(
OpRegionalEconomicDataYearsListDto
dto
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/economic/years/list"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
@Override
public
AjaxResult
details
(
OpRegionalEconomicDataDetailsDto
detailsDto
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/economic/details"
,
BeanUtil
.
beanToMap
(
detailsDto
,
false
,
false
));
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
@Override
public
AjaxResult
location
(
OpRegionalLocalDto
detailsDto
)
{
Long
userId
=
LoginHelper
.
getUserId
();
String
redisKey
=
CacheConstants
.
PERSONAL_LOCATION
+
userId
;
if
(
ObjectUtil
.
isEmpty
(
detailsDto
.
getProvinceId
())
&&
ObjectUtil
.
isEmpty
(
detailsDto
.
getCityId
())
&&
ObjectUtil
.
isEmpty
(
detailsDto
.
getAreaId
()))
{
if
(
ObjectUtil
.
isNotEmpty
(
redisKey
))
{
Map
<
String
,
Object
>
cacheMap
=
redisCache
.
getCacheMap
(
redisKey
);
if
(
MapUtils
.
isNotEmpty
(
cacheMap
))
{
return
AjaxResult
.
success
(
cacheMap
);
}
}
}
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/economic/location"
,
BeanUtil
.
beanToMap
(
detailsDto
,
false
,
false
));
Integer
code
=
MapUtils
.
getInteger
(
map
,
"code"
,
300
);
if
(!
code
.
equals
(
HttpStatus
.
OK
.
value
()))
{
throw
new
RuntimeException
();
}
Map
data
=
MapUtils
.
getMap
(
map
,
"data"
,
null
);
if
(
ObjectUtil
.
isNotEmpty
(
detailsDto
.
getProvinceId
())
||
ObjectUtil
.
isNotEmpty
(
detailsDto
.
getCityId
())
||
ObjectUtil
.
isNotEmpty
(
detailsDto
.
getAreaId
()))
{
redisCache
.
setCacheMap
(
redisKey
,
data
);
}
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
@Override
public
AjaxResult
statisticsRegional
(
OpRegionalEconomicDataStatisticsRegionalDto
dto
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/economic/statistics/regional"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
@Override
public
AjaxResult
regionalList
(
OpRegionalEconomicDataRegionalListDto
dto
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/economic/regional/list"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
@Override
public
AjaxResult
regionalCompare
(
OpRegionalEconomicDataStatisticsRegionalDto
dto
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/economic/regional/compare"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
@Override
public
AjaxResult
regionalMultipleCompare
(
OpRegionalEconomicRegionalCompareDto
dto
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/economic/regional/multipleCompare"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/service/service/impl/RegionalEnterprisesServiceImpl.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
jsk
.
service
.
service
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.dsk.acc.openapi.client.util.CommonUtils
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.common.utils.DskOpenApiUtil
;
import
com.dsk.jsk.domain.bo.ComposeQueryDto
;
import
com.dsk.jsk.service.service.RegionalEnterprisesService
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.MapUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.stereotype.Service
;
import
java.util.*
;
/**
* @ClassName RegionalEnterprisesServiceImpl
* @Description 区域企业业务层实现
* @Author Dgm
* @Date 2023/5/18 10:23
* @Version
*/
@Service
public
class
RegionalEnterprisesServiceImpl
implements
RegionalEnterprisesService
{
@Autowired
private
DskOpenApiUtil
dskOpenApiUtil
;
@Override
public
AjaxResult
enterprisePage
(
ComposeQueryDto
pageDto
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/enterprice/page"
,
BeanUtil
.
beanToMap
(
pageDto
,
false
,
false
));
Integer
code
=
MapUtils
.
getInteger
(
map
,
"code"
,
300
);
if
(
code
.
equals
(
HttpStatus
.
OK
.
value
()))
{
Map
data
=
MapUtils
.
getMap
(
map
,
"data"
,
null
);
List
<
Object
>
list
=
CommonUtils
.
assertAsArray
(
MapUtils
.
getObject
(
data
,
"list"
,
""
));
// 常合作客户
List
<
Integer
>
getTopCustomerIds
=
getTopCustomerIds
(
list
);
Map
<
String
,
Object
>
topCustomerIdsMap
=
new
HashMap
<>(
1
);
topCustomerIdsMap
.
put
(
"ids"
,
getTopCustomerIds
);
Map
<
String
,
Object
>
topCustomerMap
=
dskOpenApiUtil
.
requestBody
(
"/operate/enterprise/selectCompanyNameList"
,
topCustomerIdsMap
);
// 常合作供应商
List
<
Integer
>
getTopSupplierIds
=
getTopSupplierIds
(
list
);
Map
<
String
,
Object
>
topSupplierIdsMap
=
new
HashMap
<>(
1
);
topSupplierIdsMap
.
put
(
"ids"
,
getTopSupplierIds
);
Map
<
String
,
Object
>
topSupplierMap
=
dskOpenApiUtil
.
requestBody
(
"/operate/enterprise/selectCompanyNameList"
,
topSupplierIdsMap
);
if
(
CollectionUtils
.
isNotEmpty
(
list
))
{
for
(
Object
companyObj
:
list
)
{
Map
<
String
,
Object
>
companyMap
=
CommonUtils
.
assertAsMap
(
companyObj
);
companyMap
.
put
(
"topCustomer"
,
null
);
//常合作客户id
Integer
topCustomerId
=
MapUtils
.
getInteger
(
companyMap
,
"topCustomerId"
);
if
(
ObjectUtil
.
isNotEmpty
(
topCustomerId
))
{
Integer
topCustomerCode
=
MapUtils
.
getInteger
(
topCustomerMap
,
"code"
,
300
);
if
(
topCustomerCode
.
equals
(
HttpStatus
.
OK
.
value
()))
{
List
<
Map
<
String
,
Object
>>
companyNameList
=
(
List
<
Map
<
String
,
Object
>>)
MapUtils
.
getObject
(
topCustomerMap
,
"data"
,
null
);
for
(
Map
<
String
,
Object
>
comMap
:
companyNameList
)
{
Integer
id
=
MapUtils
.
getInteger
(
comMap
,
"id"
,
0
);
if
(
id
.
equals
(
topCustomerId
))
{
String
companyName
=
MapUtils
.
getString
(
comMap
,
"companyName"
,
null
);
companyMap
.
put
(
"topCustomer"
,
companyName
);
}
}
}
}
//常合作供应商id
Integer
topSupplierId
=
MapUtils
.
getInteger
(
companyMap
,
"topSupplierId"
);
companyMap
.
put
(
"topSupplier"
,
null
);
if
(
ObjectUtil
.
isNotEmpty
(
topSupplierId
))
{
Integer
topSupplierCode
=
MapUtils
.
getInteger
(
topSupplierMap
,
"code"
,
300
);
if
(
topSupplierCode
.
equals
(
HttpStatus
.
OK
.
value
()))
{
List
<
Map
<
String
,
Object
>>
companyNameList
=
(
List
<
Map
<
String
,
Object
>>)
MapUtils
.
getObject
(
topSupplierMap
,
"data"
,
null
);
for
(
Map
<
String
,
Object
>
comMap
:
companyNameList
)
{
Integer
id
=
MapUtils
.
getInteger
(
comMap
,
"id"
,
0
);
if
(
id
.
equals
(
topSupplierId
))
{
String
companyName
=
MapUtils
.
getString
(
comMap
,
"companyName"
,
null
);
companyMap
.
put
(
"topSupplier"
,
companyName
);
}
}
}
}
}
}
}
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
/***
*@Description: 获取企业Id-客户
*@Param:
*@return: java.util.List<java.lang.Integer>
*@Author: Dgm
*@date: 2023/7/11 16:04
*/
public
List
<
Integer
>
getTopCustomerIds
(
List
<
Object
>
list
)
{
List
<
Integer
>
getIds
=
new
ArrayList
<>(
20
);
for
(
Object
companyObj
:
list
)
{
Map
<
String
,
Object
>
companyMap
=
CommonUtils
.
assertAsMap
(
companyObj
);
//常合作客户id
Integer
topCustomerId
=
MapUtils
.
getInteger
(
companyMap
,
"topCustomerId"
);
getIds
.
add
(
topCustomerId
);
}
return
getIds
;
}
/***
*@Description: 获取企业Id-供应商
*@Param:
*@return: java.util.List<java.lang.Integer>
*@Author: Dgm
*@date: 2023/7/11 16:04
*/
public
List
<
Integer
>
getTopSupplierIds
(
List
<
Object
>
list
)
{
List
<
Integer
>
getIds
=
new
ArrayList
<>(
20
);
for
(
Object
companyObj
:
list
)
{
Map
<
String
,
Object
>
companyMap
=
CommonUtils
.
assertAsMap
(
companyObj
);
//常合作供应商id
Integer
topSupplierId
=
MapUtils
.
getInteger
(
companyMap
,
"topSupplierId"
);
getIds
.
add
(
topSupplierId
);
}
return
getIds
;
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/service/service/impl/SpecialPurposeBondsServiceImpl.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
jsk
.
service
.
service
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.dsk.acc.openapi.client.util.CommonUtils
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.common.utils.DskOpenApiUtil
;
import
com.dsk.jsk.domain.bo.SpecialBondInformationDetailsDto
;
import
com.dsk.jsk.domain.bo.SpecialBondInformationPageDto
;
import
com.dsk.jsk.domain.bo.SpecialPurposeBondsDto
;
import
com.dsk.jsk.domain.bo.SpecialPurposeBondsPageDto
;
import
com.dsk.jsk.service.service.SpecialPurposeBondsService
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.MapUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.stereotype.Service
;
import
java.util.Iterator
;
import
java.util.List
;
import
java.util.Map
;
/**
* @ClassName EconomicServiceImpl
* @Description 专项债项目业务层实现
* @Author Dgm
* @Date 2023/5/18 10:23
* @Version
*/
@Service
public
class
SpecialPurposeBondsServiceImpl
implements
SpecialPurposeBondsService
{
@Autowired
private
DskOpenApiUtil
dskOpenApiUtil
;
@Override
public
AjaxResult
page
(
SpecialPurposeBondsPageDto
dto
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/specialPurposeBonds/projects/page"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
Integer
code
=
MapUtils
.
getInteger
(
map
,
"code"
,
300
);
if
(
code
.
equals
(
HttpStatus
.
OK
.
value
()))
{
Map
data
=
MapUtils
.
getMap
(
map
,
"data"
,
null
);
List
<
Object
>
list
=
CommonUtils
.
assertAsArray
(
MapUtils
.
getObject
(
data
,
"list"
,
""
));
if
(
CollectionUtils
.
isNotEmpty
(
list
))
{
for
(
Object
projectObj
:
list
)
{
Map
<
String
,
Object
>
projectMap
=
CommonUtils
.
assertAsMap
(
projectObj
);
// 项目总投资
Double
projectTotalInvestment
=
MapUtils
.
getDouble
(
projectMap
,
"projectTotalInvestment"
,
0.00
);
projectMap
.
put
(
"projectTotalInvestment"
,
projectTotalInvestment
/
10000
);
// 专项债用作资本金
Double
specialBondCapital
=
MapUtils
.
getDouble
(
projectMap
,
"specialBondCapital"
,
0.00
);
projectMap
.
put
(
"specialBondCapital"
,
specialBondCapital
/
10000
);
// 项目资本金
Double
projectCapital
=
MapUtils
.
getDouble
(
projectMap
,
"projectCapital"
,
0.00
);
projectMap
.
put
(
"projectCapital"
,
projectCapital
/
10000
);
}
}
}
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
@Override
public
AjaxResult
details
(
SpecialBondInformationDetailsDto
detailsDto
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/specialPurposeBonds/details"
,
BeanUtil
.
beanToMap
(
detailsDto
,
false
,
false
));
Integer
code
=
MapUtils
.
getInteger
(
map
,
"code"
,
300
);
if
(
code
.
equals
(
HttpStatus
.
OK
.
value
()))
{
Map
projectMap
=
MapUtils
.
getMap
(
map
,
"data"
,
null
);
if
(
ObjectUtil
.
isNotEmpty
(
projectMap
))
{
// 项目总投资
Double
projectTotalInvestment
=
MapUtils
.
getDouble
(
projectMap
,
"projectTotalInvestment"
,
0.00
);
projectMap
.
put
(
"projectTotalInvestment"
,
projectTotalInvestment
/
10000
);
// 专项债用作资本金
Double
specialBondCapital
=
MapUtils
.
getDouble
(
projectMap
,
"specialBondCapital"
,
0.00
);
projectMap
.
put
(
"specialBondCapital"
,
specialBondCapital
/
10000
);
// 项目资本金
Double
projectCapital
=
MapUtils
.
getDouble
(
projectMap
,
"projectCapital"
,
0.00
);
projectMap
.
put
(
"projectCapital"
,
projectCapital
/
10000
);
// 其他资金
Double
otherFunds
=
MapUtils
.
getDouble
(
projectMap
,
"otherFunds"
,
0.00
);
projectMap
.
put
(
"otherFunds"
,
otherFunds
/
10000
);
// 计划使用专项债融资额
Double
econData012
=
MapUtils
.
getDouble
(
projectMap
,
"econData012"
,
0.00
);
projectMap
.
put
(
"econData012"
,
econData012
/
10000
);
// 当前使用专项债融资额
Double
econData013
=
MapUtils
.
getDouble
(
projectMap
,
"econData013"
,
0.00
);
projectMap
.
put
(
"econData013"
,
econData013
/
10000
);
// 其他融资
Double
otherFinancing
=
MapUtils
.
getDouble
(
projectMap
,
"otherFinancing"
,
0.00
);
projectMap
.
put
(
"otherFinancing"
,
otherFinancing
/
10000
);
// 政府安排资金
Double
govSupportFunds
=
MapUtils
.
getDouble
(
projectMap
,
"govSupportFunds"
,
0.00
);
projectMap
.
put
(
"govSupportFunds"
,
govSupportFunds
/
10000
);
// 项目预测总收益
Double
projectForecastTotalRevenue
=
MapUtils
.
getDouble
(
projectMap
,
"projectForecastTotalRevenue"
,
0.00
);
projectMap
.
put
(
"projectForecastTotalRevenue"
,
projectForecastTotalRevenue
/
10000
);
}
}
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
@Override
public
AjaxResult
bondStatistics
(
SpecialPurposeBondsDto
dto
)
{
// todo 临时处理 待还原
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/specialPurposeBonds/bond/statistics"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
Integer
code
=
MapUtils
.
getInteger
(
map
,
"code"
,
300
);
if
(
code
.
equals
(
HttpStatus
.
OK
.
value
()))
{
List
<
Object
>
list
=
CommonUtils
.
assertAsArray
(
MapUtils
.
getObject
(
map
,
"data"
,
""
));
Iterator
<
Object
>
it
=
list
.
iterator
();
while
(
it
.
hasNext
())
{
Map
<
String
,
Object
>
informationMap
=
(
Map
<
String
,
Object
>)
it
.
next
();
// 专项债用于项目规模
Integer
count
=
MapUtils
.
getInteger
(
informationMap
,
"count"
,
0
);
if
(
count
.
equals
(
0
))
{
it
.
remove
();
}
}
}
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
@Override
public
AjaxResult
bondPage
(
SpecialBondInformationPageDto
pageDto
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/specialPurposeBonds/bond/page"
,
BeanUtil
.
beanToMap
(
pageDto
,
false
,
false
));
Integer
code
=
MapUtils
.
getInteger
(
map
,
"code"
,
300
);
if
(
code
.
equals
(
HttpStatus
.
OK
.
value
()))
{
Map
data
=
MapUtils
.
getMap
(
map
,
"data"
,
null
);
List
<
Object
>
list
=
CommonUtils
.
assertAsArray
(
MapUtils
.
getObject
(
data
,
"list"
,
""
));
if
(
CollectionUtils
.
isNotEmpty
(
list
))
{
for
(
Object
informationObj
:
list
)
{
Map
<
String
,
Object
>
informationMap
=
CommonUtils
.
assertAsMap
(
informationObj
);
// 专项债用于项目规模
Double
isUsedProjectScale
=
MapUtils
.
getDouble
(
informationMap
,
"isUsedProjectScale"
,
0.00
);
informationMap
.
put
(
"isUsedProjectScale"
,
isUsedProjectScale
/
10000
);
}
}
}
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/service/service/impl/UrbanInvestmentPlatformServiceImpl.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
jsk
.
service
.
service
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.dsk.acc.openapi.client.util.CommonUtils
;
import
com.dsk.biz.domain.vo.CustomerStatusListVo
;
import
com.dsk.biz.service.ICustomerService
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.common.utils.DskOpenApiUtil
;
import
com.dsk.jsk.domain.bo.UrbanInvestmentPlatformDto
;
import
com.dsk.jsk.service.service.UrbanInvestmentPlatformService
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.MapUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.stereotype.Service
;
import
java.util.*
;
/**
* @ClassName EconomicServiceImpl
* @Description 城投平台业务层实现
* @Author Dgm
* @Date 2023/5/18 10:23
* @Version
*/
@Service
public
class
UrbanInvestmentPlatformServiceImpl
implements
UrbanInvestmentPlatformService
{
@Autowired
private
DskOpenApiUtil
dskOpenApiUtil
;
@Autowired
private
ICustomerService
iCustomerService
;
@Override
public
AjaxResult
page
(
UrbanInvestmentPlatformDto
pageDto
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/urbanInvestment/page"
,
BeanUtil
.
beanToMap
(
pageDto
,
false
,
false
));
Integer
code
=
MapUtils
.
getInteger
(
map
,
"code"
,
300
);
if
(
HttpStatus
.
OK
.
value
()
!=
code
)
{
throw
new
RuntimeException
();
}
Map
data
=
MapUtils
.
getMap
(
map
,
"data"
,
null
);
List
<
Object
>
list
=
CommonUtils
.
assertAsArray
(
MapUtils
.
getObject
(
data
,
"list"
,
""
));
if
(
CollectionUtils
.
isEmpty
(
list
))
{
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
ArrayList
<
String
>
companyNames
=
new
ArrayList
<>();
ArrayList
<
Long
>
cIds
=
new
ArrayList
<>();
for
(
Object
dataMap
:
list
)
{
String
name
=
MapUtils
.
getString
(
CommonUtils
.
assertAsMap
(
dataMap
),
"companyName"
);
if
(
ObjectUtil
.
isNotEmpty
(
name
)
&&
ObjectUtil
.
isNotEmpty
(
pageDto
.
getKeyword
()))
{
name
=
name
.
replaceAll
(
"<font color='red'>"
,
""
);
name
=
name
.
replaceAll
(
"</font>"
,
""
);
companyNames
.
add
(
name
);
}
else
{
companyNames
.
add
(
name
);
}
cIds
.
add
(
MapUtils
.
getLong
(
CommonUtils
.
assertAsMap
(
dataMap
),
"companyId"
));
}
List
<
CustomerStatusListVo
>
customerStatusListVos
=
iCustomerService
.
selectStatusListByCompanyName
(
companyNames
);
// Map<String, Object> bondCreditRatingBatchMap = new HashMap<>(1);
// bondCreditRatingBatchMap.put("cIds", cIds);
// Map<String, Object> bondCreditRatingMap = dskOpenApiUtil.requestBody("/operate/operate/enterprise/bondCreditRatingBatch", bondCreditRatingBatchMap);
// Integer codeRating = MapUtils.getInteger(bondCreditRatingMap, "code", 300);
// ArrayList<Map<String, Object>> objArrayList = new ArrayList(1);
// if (codeRating.equals(HttpStatus.OK.value())) {
// Object object = bondCreditRatingMap.get("data");
// if (ObjectUtil.isNotEmpty(object)) {
// objArrayList = (ArrayList)object;
// }
// }
//按照城投企业id合并两个list
//按照城投企业id合并两个list
for
(
Object
companyObj
:
list
)
{
Map
<
String
,
Object
>
companyMap
=
CommonUtils
.
assertAsMap
(
companyObj
);
Long
companyId
=
MapUtils
.
getLong
(
companyMap
,
"companyId"
);
String
uipId
=
MapUtils
.
getString
(
companyMap
,
"uipId"
);
String
companyName
=
MapUtils
.
getString
(
companyMap
,
"companyName"
,
""
);
if
(
ObjectUtil
.
isNotEmpty
(
companyName
)
&&
ObjectUtil
.
isNotEmpty
(
pageDto
.
getKeyword
()))
{
companyName
=
companyName
.
replaceAll
(
"<font color='red'>"
,
""
);
companyName
=
companyName
.
replaceAll
(
"</font>"
,
""
);
}
companyMap
.
put
(
"claimStatus"
,
null
);
// companyMap.put("bratingSubjectLevel", null);
for
(
CustomerStatusListVo
vo
:
customerStatusListVos
)
{
if
(
companyName
.
equals
(
vo
.
getCompanyName
()))
{
companyMap
.
put
(
"claimStatus"
,
vo
.
getStatus
());
}
}
// 去除重复的数据
// Set<UrbanInvestmentPlatformSubjectLevelDto> subjectLevelDtoSet = new HashSet<>();
// for (Map<String, Object> m : objArrayList) {
// UrbanInvestmentPlatformSubjectLevelDto dto = new UrbanInvestmentPlatformSubjectLevelDto();
// Long companyIdCredit = MapUtils.getLong(m, "companyId", 0L);
// String rate = MapUtils.getString(m, "bratingSubjectLevel");
// dto.setCompanyId(companyIdCredit);
// dto.setBratingSubjectLevel(rate);
// subjectLevelDtoSet.add(dto);
// }
// for (UrbanInvestmentPlatformSubjectLevelDto dto : subjectLevelDtoSet) {
// if (dto.getCompanyId().equals(companyId)) {
// companyMap.put("bratingSubjectLevel", dto.getBratingSubjectLevel());
// }
// }
}
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
@Override
public
AjaxResult
details
(
String
id
)
{
Map
<
String
,
Object
>
bodyMap
=
new
HashMap
<>(
1
);
bodyMap
.
put
(
"id"
,
id
);
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/urbanInvestment/details"
,
bodyMap
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
@Override
public
AjaxResult
statistics
(
UrbanInvestmentPlatformDto
dto
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/urbanInvestment/statistics"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/util/BizConstant.java
0 → 100644
View file @
f2895543
This diff is collapsed.
Click to expand it.
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/util/IpUtil.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
jsk
.
util
;
import
org.apache.commons.lang3.StringUtils
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.BufferedReader
;
import
java.io.Closeable
;
import
java.io.File
;
import
java.io.InputStreamReader
;
import
java.util.Arrays
;
import
java.util.List
;
/**
* IP校验
*/
public
class
IpUtil
{
public
final
static
List
<
String
>
qihooSpider
=
Arrays
.
asList
(
"180.153.232"
,
"180.153.234"
,
"180.153.236"
,
"180.163.220"
,
"42.236.101"
,
"42.236.102"
,
"42.236.103"
,
"42.236.10"
,
"42.236.12"
,
"42.236.13"
,
"42.236.14"
,
"42.236.15"
,
"42.236.16"
,
"42.236.17"
,
"42.236.46"
,
"42.236.48"
,
"42.236.49"
,
"42.236.50"
,
"42.236.51"
,
"42.236.52"
,
"42.236.53"
,
"42.236.54"
,
"42.236.55"
,
"42.236.99"
);
public
final
static
List
<
String
>
YisouSpider
=
Arrays
.
asList
(
"106.11.152"
,
"106.11.153"
,
"106.11.154"
,
"106.11.155"
,
"106.11.156"
,
"106.11.157"
,
"106.11.158"
,
"106.11.159"
,
"42.120.160"
,
"42.120.161"
,
"42.156.136"
,
"42.156.137"
,
"42.156.138"
,
"42.156.139"
,
"42.156.254"
);
public
final
static
List
<
String
>
ByteSpider
=
Arrays
.
asList
(
"110.249.201"
,
"110.249.202"
,
"111.225.147"
,
"111.225.148"
,
"111.225.149"
,
"220.243.135"
,
"220.243.136"
,
"60.8.165"
,
"60.8.9"
);
/**获取访问用户的客户端IP(适用于公网与局域网)*/
public
static
final
String
getIpAddr
(
final
HttpServletRequest
request
){
try
{
if
(
request
==
null
)
return
null
;
String
ipString
=
request
.
getHeader
(
"ali-cdn-real-ip"
);
if
(
StringUtils
.
isBlank
(
ipString
)
||
"unknown"
.
equalsIgnoreCase
(
ipString
))
{
ipString
=
request
.
getHeader
(
"x-forwarded-for"
);
}
if
(
StringUtils
.
isBlank
(
ipString
)
||
"unknown"
.
equalsIgnoreCase
(
ipString
))
{
ipString
=
request
.
getHeader
(
"Proxy-Client-IP"
);
}
if
(
StringUtils
.
isBlank
(
ipString
)
||
"unknown"
.
equalsIgnoreCase
(
ipString
))
{
ipString
=
request
.
getHeader
(
"X-Forwarded-For"
);
}
if
(
StringUtils
.
isBlank
(
ipString
)
||
"unknown"
.
equalsIgnoreCase
(
ipString
))
{
ipString
=
request
.
getHeader
(
"WL-Proxy-Client-IP"
);
}
if
(
StringUtils
.
isBlank
(
ipString
)
||
"unknown"
.
equalsIgnoreCase
(
ipString
))
{
ipString
=
request
.
getHeader
(
"X-Real-IP"
);
}
if
(
StringUtils
.
isBlank
(
ipString
)
||
"unknown"
.
equalsIgnoreCase
(
ipString
))
{
ipString
=
request
.
getRemoteAddr
();
}
// 多个路由时,取第一个非unknown的ip
final
String
[]
arr
=
ipString
.
split
(
","
);
for
(
final
String
str
:
arr
)
{
if
(!
"unknown"
.
equalsIgnoreCase
(
str
))
{
ipString
=
str
;
break
;
}
}
return
ipString
;
}
catch
(
Exception
e
){
return
null
;
}
}
/**
* write specfield bytes to a byte array start from offset
*
* @param b
* @param offset
* @param v
* @param bytes
*/
public
static
void
write
(
byte
[]
b
,
int
offset
,
long
v
,
int
bytes
)
{
for
(
int
i
=
0
;
i
<
bytes
;
i
++
)
{
b
[
offset
++]
=
(
byte
)((
v
>>>
(
8
*
i
))
&
0xFF
);
}
}
/**
* write a int to a byte array
*
* @param b
* @param offset
* @param v
*/
public
static
void
writeIntLong
(
byte
[]
b
,
int
offset
,
long
v
)
{
b
[
offset
++]
=
(
byte
)((
v
>>
0
)
&
0xFF
);
b
[
offset
++]
=
(
byte
)((
v
>>
8
)
&
0xFF
);
b
[
offset
++]
=
(
byte
)((
v
>>
16
)
&
0xFF
);
b
[
offset
]
=
(
byte
)((
v
>>
24
)
&
0xFF
);
}
/**
* get a int from a byte array start from the specifiled offset
*
* @param b
* @param offset
*/
public
static
long
getIntLong
(
byte
[]
b
,
int
offset
)
{
return
(
((
b
[
offset
++]
&
0x000000FF
L
))
|
((
b
[
offset
++]
<<
8
)
&
0x0000FF00
L
)
|
((
b
[
offset
++]
<<
16
)
&
0x00FF0000
L
)
|
((
b
[
offset
]
<<
24
)
&
0xFF000000
L
)
);
}
/**
* get a int from a byte array start from the specifield offset
*
* @param b
* @param offset
*/
public
static
int
getInt3
(
byte
[]
b
,
int
offset
)
{
return
(
(
b
[
offset
++]
&
0x000000FF
)
|
(
b
[
offset
++]
&
0x0000FF00
)
|
(
b
[
offset
]
&
0x00FF0000
)
);
}
public
static
int
getInt2
(
byte
[]
b
,
int
offset
)
{
return
(
(
b
[
offset
++]
&
0x000000FF
)
|
(
b
[
offset
]
&
0x0000FF00
)
);
}
public
static
int
getInt1
(
byte
[]
b
,
int
offset
)
{
return
(
(
b
[
offset
]
&
0x000000FF
)
);
}
/**
* string ip to long ip
*
* @param ip
* @return long
*/
public
static
long
ip2long
(
String
ip
)
{
String
[]
p
=
ip
.
split
(
"\\."
);
if
(
p
.
length
!=
4
)
return
0
;
int
p1
=
((
Integer
.
valueOf
(
p
[
0
])
<<
24
)
&
0xFF000000
);
int
p2
=
((
Integer
.
valueOf
(
p
[
1
])
<<
16
)
&
0x00FF0000
);
int
p3
=
((
Integer
.
valueOf
(
p
[
2
])
<<
8
)
&
0x0000FF00
);
int
p4
=
((
Integer
.
valueOf
(
p
[
3
])
<<
0
)
&
0x000000FF
);
return
((
p1
|
p2
|
p3
|
p4
)
&
0xFFFFFFFF
L
);
}
/**
* int to ip string
*
* @param ip
* @return string
*/
public
static
String
long2ip
(
long
ip
)
{
StringBuilder
sb
=
new
StringBuilder
();
sb
.
append
((
ip
>>
24
)
&
0xFF
).
append
(
'.'
)
.
append
((
ip
>>
16
)
&
0xFF
).
append
(
'.'
)
.
append
((
ip
>>
8
)
&
0xFF
).
append
(
'.'
)
.
append
((
ip
>>
0
)
&
0xFF
);
return
sb
.
toString
();
}
/**
* check the validate of the specifeld ip address
*
* @param ip
* @return boolean
*/
public
static
boolean
isIpAddress
(
String
ip
)
{
String
[]
p
=
ip
.
split
(
"\\."
);
if
(
p
.
length
!=
4
)
return
false
;
for
(
String
pp
:
p
)
{
if
(
pp
.
length
()
>
3
)
return
false
;
int
val
=
Integer
.
valueOf
(
pp
);
if
(
val
>
255
)
return
false
;
}
return
true
;
}
public
static
String
execHostCmd
(
String
ip
)
throws
Exception
{
return
execCmd
(
"host "
+
ip
,
null
);
}
public
static
String
isSpider
(
String
ip
)
throws
Exception
{
String
result
=
execCmd
(
"host "
+
ip
,
null
);
if
(
StringUtils
.
isNotBlank
(
ip
)&&!
isSpiderUa
(
result
)){
for
(
String
s
:
qihooSpider
)
{
if
(
ip
.
startsWith
(
s
)){
return
"so.com"
;
}
}
for
(
String
s
:
YisouSpider
)
{
if
(
ip
.
startsWith
(
s
)){
return
"sm.cn"
;
}
}
for
(
String
s
:
ByteSpider
)
{
if
(
ip
.
startsWith
(
s
)){
return
"bytedance.com"
;
}
}
}
return
result
;
}
/**
* 执行系统命令, 返回执行结果
*
* @param cmd 需要执行的命令
* @param dir 执行命令的子进程的工作目录, null 表示和当前主进程工作目录相同
*/
private
static
String
execCmd
(
String
cmd
,
File
dir
)
throws
Exception
{
StringBuilder
result
=
new
StringBuilder
();
Process
process
=
null
;
BufferedReader
bufrIn
=
null
;
BufferedReader
bufrError
=
null
;
try
{
// 执行命令, 返回一个子进程对象(命令在子进程中执行)
process
=
Runtime
.
getRuntime
().
exec
(
cmd
,
null
,
dir
);
// 方法阻塞, 等待命令执行完成(成功会返回0)
process
.
waitFor
();
// 获取命令执行结果, 有两个结果: 正常的输出 和 错误的输出(PS: 子进程的输出就是主进程的输入)
bufrIn
=
new
BufferedReader
(
new
InputStreamReader
(
process
.
getInputStream
(),
"UTF-8"
));
bufrError
=
new
BufferedReader
(
new
InputStreamReader
(
process
.
getErrorStream
(),
"UTF-8"
));
// 读取输出
String
line
=
null
;
while
((
line
=
bufrIn
.
readLine
())
!=
null
)
{
result
.
append
(
line
).
append
(
'n'
);
}
while
((
line
=
bufrError
.
readLine
())
!=
null
)
{
result
.
append
(
line
).
append
(
'n'
);
}
}
finally
{
closeStream
(
bufrIn
);
closeStream
(
bufrError
);
// 销毁子进程
if
(
process
!=
null
)
{
process
.
destroy
();
}
}
// 返回执行结果
return
result
.
toString
();
}
private
static
void
closeStream
(
Closeable
stream
)
{
if
(
stream
!=
null
)
{
try
{
stream
.
close
();
}
catch
(
Exception
e
)
{
// nothing
}
}
}
private
static
boolean
isSpiderUa
(
String
hostname
){
List
<
String
>
spiders
=
BizConstant
.
SPIDER
;
for
(
String
spider
:
spiders
)
{
if
(
hostname
.
toLowerCase
().
contains
(
spider
)){
return
true
;
}
}
return
false
;
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/util/RedisCache.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
jsk
.
util
;
import
java.util.Collection
;
import
java.util.Iterator
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Set
;
import
java.util.concurrent.TimeUnit
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.BoundSetOperations
;
import
org.springframework.data.redis.core.HashOperations
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.data.redis.core.ValueOperations
;
import
org.springframework.stereotype.Component
;
/**
* spring redis 工具类
*
* @author dsk
**/
@SuppressWarnings
(
value
=
{
"unchecked"
,
"rawtypes"
})
@Component
public
class
RedisCache
{
@Autowired
public
RedisTemplate
redisTemplate
;
/**
* 缓存基本的对象,Integer、String、实体类等
*
* @param key 缓存的键值
* @param value 缓存的值
*/
public
<
T
>
void
setCacheObject
(
final
String
key
,
final
T
value
)
{
redisTemplate
.
opsForValue
().
set
(
key
,
value
);
}
/**
* 缓存基本的对象,Integer、String、实体类等
*
* @param key 缓存的键值
* @param value 缓存的值
* @param timeout 时间
* @param timeUnit 时间颗粒度
*/
public
<
T
>
void
setCacheObject
(
final
String
key
,
final
T
value
,
final
Integer
timeout
,
final
TimeUnit
timeUnit
)
{
redisTemplate
.
opsForValue
().
set
(
key
,
value
,
timeout
,
timeUnit
);
}
/**
* 设置有效时间
*
* @param key Redis键
* @param timeout 超时时间
* @return true=设置成功;false=设置失败
*/
public
boolean
expire
(
final
String
key
,
final
long
timeout
)
{
return
expire
(
key
,
timeout
,
TimeUnit
.
SECONDS
);
}
/**
* 设置有效时间
*
* @param key Redis键
* @param timeout 超时时间
* @param unit 时间单位
* @return true=设置成功;false=设置失败
*/
public
boolean
expire
(
final
String
key
,
final
long
timeout
,
final
TimeUnit
unit
)
{
return
redisTemplate
.
expire
(
key
,
timeout
,
unit
);
}
/**
* 获取有效时间
*
* @param key Redis键
* @return 有效时间
*/
public
long
getExpire
(
final
String
key
)
{
return
redisTemplate
.
getExpire
(
key
);
}
/**
* 判断 key是否存在
*
* @param key 键
* @return true 存在 false不存在
*/
public
Boolean
hasKey
(
String
key
)
{
return
redisTemplate
.
hasKey
(
key
);
}
/**
* 获得缓存的基本对象。
*
* @param key 缓存键值
* @return 缓存键值对应的数据
*/
public
<
T
>
T
getCacheObject
(
final
String
key
)
{
ValueOperations
<
String
,
T
>
operation
=
redisTemplate
.
opsForValue
();
return
operation
.
get
(
key
);
}
/**
* 删除单个对象
*
* @param key
*/
public
boolean
deleteObject
(
final
String
key
)
{
return
redisTemplate
.
delete
(
key
);
}
/**
* 删除集合对象
*
* @param collection 多个对象
* @return
*/
public
boolean
deleteObject
(
final
Collection
collection
)
{
return
redisTemplate
.
delete
(
collection
)
>
0
;
}
/**
* 缓存List数据
*
* @param key 缓存的键值
* @param dataList 待缓存的List数据
* @return 缓存的对象
*/
public
<
T
>
long
setCacheList
(
final
String
key
,
final
List
<
T
>
dataList
)
{
Long
count
=
redisTemplate
.
opsForList
().
rightPushAll
(
key
,
dataList
);
return
count
==
null
?
0
:
count
;
}
/**
* 获得缓存的list对象
*
* @param key 缓存的键值
* @return 缓存键值对应的数据
*/
public
<
T
>
List
<
T
>
getCacheList
(
final
String
key
)
{
return
redisTemplate
.
opsForList
().
range
(
key
,
0
,
-
1
);
}
/**
* 缓存Set
*
* @param key 缓存键值
* @param dataSet 缓存的数据
* @return 缓存数据的对象
*/
public
<
T
>
BoundSetOperations
<
String
,
T
>
setCacheSet
(
final
String
key
,
final
Set
<
T
>
dataSet
)
{
BoundSetOperations
<
String
,
T
>
setOperation
=
redisTemplate
.
boundSetOps
(
key
);
Iterator
<
T
>
it
=
dataSet
.
iterator
();
while
(
it
.
hasNext
())
{
setOperation
.
add
(
it
.
next
());
}
return
setOperation
;
}
/**
* 获得缓存的set
*
* @param key
* @return
*/
public
<
T
>
Set
<
T
>
getCacheSet
(
final
String
key
)
{
return
redisTemplate
.
opsForSet
().
members
(
key
);
}
/**
* 缓存Map
*
* @param key
* @param dataMap
*/
public
<
T
>
void
setCacheMap
(
final
String
key
,
final
Map
<
String
,
T
>
dataMap
)
{
if
(
dataMap
!=
null
)
{
redisTemplate
.
opsForHash
().
putAll
(
key
,
dataMap
);
}
}
/**
* 获得缓存的Map
*
* @param key
* @return
*/
public
<
T
>
Map
<
String
,
T
>
getCacheMap
(
final
String
key
)
{
return
redisTemplate
.
opsForHash
().
entries
(
key
);
}
/**
* 往Hash中存入数据
*
* @param key Redis键
* @param hKey Hash键
* @param value 值
*/
public
<
T
>
void
setCacheMapValue
(
final
String
key
,
final
String
hKey
,
final
T
value
)
{
redisTemplate
.
opsForHash
().
put
(
key
,
hKey
,
value
);
}
/**
* 获取Hash中的数据
*
* @param key Redis键
* @param hKey Hash键
* @return Hash中的对象
*/
public
<
T
>
T
getCacheMapValue
(
final
String
key
,
final
String
hKey
)
{
HashOperations
<
String
,
String
,
T
>
opsForHash
=
redisTemplate
.
opsForHash
();
return
opsForHash
.
get
(
key
,
hKey
);
}
/**
* 获取多个Hash中的数据
*
* @param key Redis键
* @param hKeys Hash键集合
* @return Hash对象集合
*/
public
<
T
>
List
<
T
>
getMultiCacheMapValue
(
final
String
key
,
final
Collection
<
Object
>
hKeys
)
{
return
redisTemplate
.
opsForHash
().
multiGet
(
key
,
hKeys
);
}
/**
* 删除Hash中的某条数据
*
* @param key Redis键
* @param hKey Hash键
* @return 是否成功
*/
public
boolean
deleteCacheMapValue
(
final
String
key
,
final
String
hKey
)
{
return
redisTemplate
.
opsForHash
().
delete
(
key
,
hKey
)
>
0
;
}
/**
* 获得缓存的基本对象列表
*
* @param pattern 字符串前缀
* @return 对象列表
*/
public
Collection
<
String
>
keys
(
final
String
pattern
)
{
return
redisTemplate
.
keys
(
pattern
);
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/search/controller/BusinessOpportunityRadarController.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
search
.
controller
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.jsk.domain.bo.ComposeQueryDto
;
import
com.dsk.search.service.BusinessOpportunityRadarService
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
/**
* 商机雷达 查询接口
* @author Administrator
*
*/
@RequestMapping
(
"/radar"
)
@RestController
public
class
BusinessOpportunityRadarController
{
@Resource
private
BusinessOpportunityRadarService
opportunityRadarService
;
/*
* 公招标讯
*/
@RequestMapping
(
"/jskBidPage"
)
public
AjaxResult
jskBidPage
(
@RequestBody
JSONObject
object
)
{
ComposeQueryDto
compose
=
JSONObject
.
parseObject
(
object
.
toJSONString
(),
ComposeQueryDto
.
class
);
if
(
PageQueryLimit
.
pageLimit
(
compose
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
opportunityRadarService
.
jskBidPage
(
object
);
}
/*
* 土地交易
*/
@RequestMapping
(
"/landMarketPage"
)
public
AjaxResult
landMarketPage
(
@RequestBody
JSONObject
object
)
{
ComposeQueryDto
compose
=
JSONObject
.
parseObject
(
object
.
toJSONString
(),
ComposeQueryDto
.
class
);
if
(
PageQueryLimit
.
pageLimit
(
compose
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
opportunityRadarService
.
landMarketPage
(
object
);
}
/*
* 拟建项目
*/
@RequestMapping
(
"/establishmentPage"
)
public
AjaxResult
establishmentPage
(
@RequestBody
JSONObject
object
)
{
ComposeQueryDto
compose
=
JSONObject
.
parseObject
(
object
.
toJSONString
(),
ComposeQueryDto
.
class
);
if
(
PageQueryLimit
.
pageLimit
(
compose
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
opportunityRadarService
.
establishmentPage
(
object
);
}
/*
* 开标记录
*/
@RequestMapping
(
"/jskBidTenderPage"
)
public
AjaxResult
jskBidTenderPage
(
@RequestBody
JSONObject
object
)
{
ComposeQueryDto
compose
=
JSONObject
.
parseObject
(
object
.
toJSONString
(),
ComposeQueryDto
.
class
);
if
(
PageQueryLimit
.
pageLimit
(
compose
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
opportunityRadarService
.
jskBidTenderPage
(
object
);
}
/*
* 标讯pro
*/
@RequestMapping
(
"/jskBidNewsPage"
)
public
AjaxResult
jskBidNewsPage
(
@RequestBody
JSONObject
object
)
{
ComposeQueryDto
compose
=
JSONObject
.
parseObject
(
object
.
toJSONString
(),
ComposeQueryDto
.
class
);
if
(
PageQueryLimit
.
pageLimit
(
compose
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
opportunityRadarService
.
jskBidNewsPage
(
object
);
}
/*
* 标讯pro 商机项目关联查询
*/
@RequestMapping
(
"/jskBidNewsPage/findByName"
)
public
AjaxResult
findByName
(
@RequestBody
JSONObject
object
)
{
ComposeQueryDto
compose
=
JSONObject
.
parseObject
(
object
.
toJSONString
(),
ComposeQueryDto
.
class
);
if
(
PageQueryLimit
.
pageLimit
(
compose
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
opportunityRadarService
.
findByName
(
object
);
}
/*
* 专项债查询
*/
@RequestMapping
(
"/bondProjectPage"
)
public
AjaxResult
bondProjectPage
(
@RequestBody
JSONObject
object
)
{
ComposeQueryDto
compose
=
JSONObject
.
parseObject
(
object
.
toJSONString
(),
ComposeQueryDto
.
class
);
if
(
PageQueryLimit
.
pageLimit
(
compose
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
opportunityRadarService
.
bondProjectPage
(
object
);
}
/*
* 投标计划查询
*/
@RequestMapping
(
"/jskBidPlanPage"
)
public
AjaxResult
jskBidPlanPage
(
@RequestBody
JSONObject
object
)
{
ComposeQueryDto
compose
=
JSONObject
.
parseObject
(
object
.
toJSONString
(),
ComposeQueryDto
.
class
);
if
(
PageQueryLimit
.
pageLimit
(
compose
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
opportunityRadarService
.
jskBidPlanPage
(
object
);
}
/*
* 投标计划查询
*/
@RequestMapping
(
"/jskBidPlan/getCapitalSourceSelect"
)
public
AjaxResult
getCapitalSourceSelect
()
{
return
opportunityRadarService
.
getCapitalSourceSelect
();
}
/*
* 推荐关键词
*/
@RequestMapping
(
"/keywordList"
)
public
AjaxResult
keywordList
()
{
return
opportunityRadarService
.
keywordList
();
}
/*
* 招标来源网站
*/
@RequestMapping
(
"/bidSourceList"
)
public
AjaxResult
bidSourceList
(
@RequestBody
JSONObject
object
)
{
return
opportunityRadarService
.
bidSourceList
(
object
);
}
/*
* 重点项目清单
*/
@RequestMapping
(
"/importantPage"
)
public
AjaxResult
importantPage
(
@RequestBody
JSONObject
object
)
{
ComposeQueryDto
compose
=
JSONObject
.
parseObject
(
object
.
toJSONString
(),
ComposeQueryDto
.
class
);
if
(
PageQueryLimit
.
pageLimit
(
compose
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
opportunityRadarService
.
importantPage
(
object
);
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/search/controller/CompanySearchController.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
search
.
controller
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.jsk.domain.bo.ComposeQueryDto
;
import
com.dsk.search.service.BusinessOpportunityRadarService
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
/**
* 查企业
* @author Administrator
*
*/
@RequestMapping
(
"/enterprise"
)
@RestController
public
class
CompanySearchController
{
@Resource
private
BusinessOpportunityRadarService
opportunityRadarService
;
/*
* 模糊查询企业名称
*/
@RequestMapping
(
"/index"
)
public
AjaxResult
landMarketPage
(
@RequestBody
JSONObject
object
)
{
ComposeQueryDto
compose
=
JSONObject
.
parseObject
(
object
.
toJSONString
(),
ComposeQueryDto
.
class
);
if
(
PageQueryLimit
.
pageLimit
(
compose
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
opportunityRadarService
.
enterpriseIndex
(
object
);
}
/*
* 完全匹配企业名称
*/
@GetMapping
(
"/findByName/{keyword}"
)
public
AjaxResult
findByName
(
@PathVariable
String
keyword
)
{
return
opportunityRadarService
.
enterpriseByName
(
keyword
);
}
/*
* 完全匹配企业名称
*/
@PostMapping
(
"/page"
)
public
AjaxResult
page
(
@RequestBody
JSONObject
object
)
{
ComposeQueryDto
compose
=
JSONObject
.
parseObject
(
object
.
toJSONString
(),
ComposeQueryDto
.
class
);
if
(
PageQueryLimit
.
pageLimit
(
compose
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
opportunityRadarService
.
enterprisePage
(
object
);
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/search/controller/MarketAnalysisController.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
search
.
controller
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.dsk.common.constant.HttpStatus
;
import
com.dsk.common.core.controller.BaseController
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.common.core.page.TableDataInfo
;
import
com.dsk.search.service.MarketAnalysisService
;
import
com.github.pagehelper.PageInfo
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.Calendar
;
import
java.util.List
;
/**
* 央企市场分析-统计
* @author Administrator
*
*/
@RequestMapping
(
"/marketAnalysis"
)
@RestController
public
class
MarketAnalysisController
extends
BaseController
{
@Resource
private
MarketAnalysisService
marketAnalysisService
;
/*
* 各省份备案企业数量
*/
@RequestMapping
(
"/areaGroupByProvince"
)
public
AjaxResult
areaGroupByProvince
()
{
return
marketAnalysisService
.
areaGroupByProvince
();
}
/*
* 资质等级按照行业、等级类型分组
*/
@RequestMapping
(
"/certGroupByMajorAndLevel"
)
public
AjaxResult
certGroupByMajorAndLevel
()
{
return
marketAnalysisService
.
certGroupByMajorAndLevel
();
}
/*
* 资质等级按照大类、省份、等级类型分组
*/
@RequestMapping
(
"/certGroupByMajorProvinceLevel"
)
public
AjaxResult
certGroupByMajorProvinceLevel
()
{
return
marketAnalysisService
.
certGroupByMajorProvinceLevel
();
}
/*
* 产业结构-按年份选择 各个项目类型项目总数
*/
@RequestMapping
(
"/bidGroupCountByProjectType"
)
public
AjaxResult
bidGroupCountByProjectType
(
@RequestBody
JSONObject
object
)
{
return
marketAnalysisService
.
bidGroupCountByProjectType
(
object
);
}
/*
* 产业结构-近两年各个项目类型项目总数及金额占比
*/
@RequestMapping
(
"/bidMoneyGroupByProjectType"
)
public
AjaxResult
bidMoneyGroupByProjectType
(
@RequestBody
JSONObject
object
)
{
return
marketAnalysisService
.
bidMoneyGroupByProjectType
(
object
);
}
//-----------------------------------中标----------------------------------
//全攻中标项目统计
@RequestMapping
(
"/countBidByType"
)
public
AjaxResult
countBidByType
(
@RequestBody
JSONObject
object
)
{
return
marketAnalysisService
.
countBidByType
(
object
);
}
/*
* 全国各地区中标统计TOP10
*/
@RequestMapping
(
"/countBidGroupByProvince"
)
public
AjaxResult
countBidGroupByProvince
(
@RequestBody
JSONObject
object
)
{
return
marketAnalysisService
.
countBidGroupByProvince
(
object
);
}
//全国中标金额分析
@RequestMapping
(
"/rangeBidMoney"
)
public
AjaxResult
rangeBidMoney
(
@RequestBody
JSONObject
object
)
{
return
marketAnalysisService
.
rangeBidMoney
(
object
);
}
//全国中标趋势分析
@RequestMapping
(
"/rangeBidFiveYears"
)
public
AjaxResult
rangeBidFiveYears
()
{
return
marketAnalysisService
.
rangeBidFiveYears
();
}
//全国中标下浮率分析
@RequestMapping
(
"/lowerRateByYear"
)
public
AjaxResult
lowerRateByYear
(
@RequestBody
JSONObject
object
)
{
return
marketAnalysisService
.
lowerRateByYear
(
object
);
}
//全国中标业绩项目类型下浮率
@RequestMapping
(
"/lowerRangeTenderType"
)
public
AjaxResult
lowerRangeTenderType
(
@RequestBody
JSONObject
object
)
{
return
marketAnalysisService
.
lowerRangeTenderType
(
object
);
}
//-----------------------------------土地----------------------------------
//央企数字化经营系统 土地交易
@RequestMapping
(
"/countLandMarketByType"
)
public
AjaxResult
countLandMarketByType
(
@RequestBody
JSONObject
object
){
return
marketAnalysisService
.
countLandMarketByType
(
object
);
}
//央企数字化经营系统 全国土地交易项目地区
@RequestMapping
(
"/countLandMarketByProvince"
)
public
AjaxResult
countLandMarketByProvince
(
@RequestBody
JSONObject
object
){
return
marketAnalysisService
.
countLandMarketByProvince
(
object
);
}
//央企数字化经营系统 全国土地交易项目地区
@RequestMapping
(
"/countLandMarketByYear"
)
public
AjaxResult
countLandMarketByYear
(){
return
marketAnalysisService
.
countLandMarketByYear
();
}
//-----------------------------------招标----------------------------------
//央企数字化经营系统 全国公招项目统计
@RequestMapping
(
"/countNewsBidByYear"
)
public
AjaxResult
countNewsBidByYear
(){
return
marketAnalysisService
.
countNewsBidByYear
();
}
//央企数字化经营系统 招标公告 全国各地区项目统计TOP10
@RequestMapping
(
"/countNewsBidByProvince"
)
public
AjaxResult
countNewsBidByProvince
(
@RequestBody
JSONObject
object
){
return
marketAnalysisService
.
countNewsBidByProvince
(
object
);
}
//央企数字化经营系统 招标公告 月度统计
@RequestMapping
(
"/countNewsBidByMonth"
)
public
AjaxResult
countNewsBidByMonth
(
@RequestBody
JSONObject
object
){
return
marketAnalysisService
.
countNewsBidByMonth
(
object
);
}
/*
* 招标数量按省份分组
*/
@RequestMapping
(
"/countGroupByProvince"
)
public
AjaxResult
countGroupByProvince
(
@RequestBody
JSONObject
object
)
{
return
marketAnalysisService
.
countGroupByProvince
(
object
);
}
@RequestMapping
(
"/getYear"
)
public
TableDataInfo
getYear
(){
List
<
Integer
>
list
=
new
ArrayList
<>();
Calendar
calendar
=
Calendar
.
getInstance
();
int
nowYear
=
calendar
.
get
(
Calendar
.
YEAR
);
list
.
add
(
nowYear
);
for
(
int
i
=
1
;
i
<
5
;
i
++)
{
list
.
add
(
nowYear
-
i
);
}
return
getDataTable
(
list
);
}
/*
* 中标数量按月份分组
*/
@RequestMapping
(
"/countGroupByMonth"
)
public
AjaxResult
countGroupByMonth
(
@RequestBody
JSONObject
object
)
{
return
marketAnalysisService
.
countGroupByMonth
(
object
);
}
/**
* 响应请求分页数据
*/
@SuppressWarnings
({
"rawtypes"
,
"unchecked"
})
protected
TableDataInfo
getDataTable
(
List
<?>
list
)
{
TableDataInfo
rspData
=
new
TableDataInfo
();
rspData
.
setCode
(
HttpStatus
.
SUCCESS
);
rspData
.
setMsg
(
"查询成功"
);
rspData
.
setRows
(
list
);
rspData
.
setTotal
(
new
PageInfo
(
list
).
getTotal
());
return
rspData
;
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/search/controller/PageQueryLimit.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
search
.
controller
;
import
com.dsk.jsk.domain.bo.Page
;
/**
* @author lc
* @date 2023/6/20 17:48
*/
public
class
PageQueryLimit
{
public
static
boolean
pageLimit
(
Page
page
){
if
(
null
==
page
)
{
return
true
;
}
if
(
null
==
page
.
getLimit
()||
null
==
page
.
getPage
()){
return
true
;
}
if
(
page
.
getPage
()*
page
.
getLimit
()>
10000
){
return
true
;
}
return
false
;
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/search/domain/AchievementQueryDto.java
0 → 100644
View file @
f2895543
//package com.dsk.search.domain;
//
//import lombok.Data;
//
//import java.util.Date;
//import java.util.List;
//
///**
// * 组合查询参数
// * @author Administrator
// *
// */
//@Data
//public class AchievementQueryDto {
//
// /**
// * 业绩所需参数
// */
//// //中标面积
//// Double tenderArea;
//// //许可面积
//// Double licenceArea;
//// //竣工面积
//// Double completionArea;
// //招投标面积
// Double startTenderArea;
// Double endTenderArea;
// //施工许可面积
// Double startLicenceArea;
// Double endLicenceArea;
// //竣工验收面积
// Double startCheckArea;
// Double endCheckArea;
// //竣工验收备案面积
// Double startCompletionArea;
// Double endCompletionArea;
// //总面积
// Double startTotalArea;
// Double endTotalArea;
// //面积体现节点
// String areaStr;
// //项目面积同时具备、任意均可 and/or
// String areaQueryType;
// //许可金额
// Double licenceMoney;
// //中标金额
// Double startTenderMoney;
// Double endTenderMoney;
// //合同金额
// Double startContractMoney;
// Double endContractMoney;
// //施工许可金额
// Double startLicenceMoney;
// Double endLicenceMoney;
// //竣工验收实际造价
// Double startCompletionMoney;
// Double endCompletionMoney;
// //竣工备案实际造价
// Double startCheckMoney;
// Double endCheckMoney;
// //总投资
// Double startInvest;
// Double endInvest;
// //项目金额同时具备、任意均可
// String moneyQueryType;
// //金额和面积同时具备、任意均可
// String moneyAndAreaQueryType;
// //业绩时间同时具备、任意均可
// String timeQueryType;
//
// String eid;
//
// String buildCorpName;
//
// String personName;
//
// String ename;
// // 项目来源 0=本地 1=四库一平台
// Integer source;
//
// Double startMoney;
//
// Double endMoney;
// //金额体现节点
// String moneyStr;
// // 关键词(包含)
// List<KeywordDto> keywords;
// // 关键词(不包含)
// String keywordNot;
// // 关键词(不包含)查询类型 project项目名称 scale建设规模 projectOrScale项目名称或建设规模
// String keywordNotType;
// // 业绩类型
// String achievementType;
//
// //单项查询 关键词包含
// String singleKeywordIn;
// //单项查询 关键词不包含
// String singleKeywordOut;
// //单项查询 关键词包含体现节点
// String singleKeywordInNode;
// //单项查询 关键词不包含体现节点
// String singleKeywordOutNode;
// //是否截图体现公司和规模 yes no
// Boolean isSingleReflect;
//
// //建设性质
// String nature;
// // 项目属地
// String divisionStr;
// //项目所在城市
// String cityStr;
//
// String province;
// Integer provinceId;
// String city;
// Integer cityId;
// String county;
// Integer countyId;
//
// Double startArea;
//
// Double endArea;
// //项目类别
// String projectType;
// // 工程用途
// String purposeStr;
// // 中标开始时间
// Date startTenderTime;
// // 中标结束时间
// Date endTenderTime;
// // 实际竣工开始日期
// Date startCheckDate;
// // 实际竣工结束日期
// Date endCheckDate;
// //竣工备案时间未公示
// String hasCheckDate;
// //实际开工开始日期
// Date startWorkDate;
// //实际开工结束日期
// Date endWorkDate;
// //合同日期开始
// Date startContractDate;
// //合同日期结束
// Date endContractDate;
// //施工许可开始日期
// Date startLicenceDate;
// //施工许可结束日期
// Date endLicenceDate;
// //施工图审开始日期
// Date startCensorDate;
// //施工图审结束日期
// Date endCensorDate;
// //竣工验收开始日期
// Date startCheckCheckDate;
// //竣工验收结束日期
// Date endCheckCheckDate;
// //竣工验收时间未公示
// String hasCheckCheckDate;
// // 业绩属性
// String attributeStr;
// // 业绩属性
// String attributeQueryType;
// // 项目经理
// String pmStr;
// // 项目经理同时具备、任意均可
// String pmQueryType;
// // 结构体系
// String structure;
// // 数据等级
// String dataLevel;
// //招投标数据等级
// String tenderDataLevel;
// //合同登记
// String contractDataLevel;
// //施工许可
// String licenceDataLevel;
// //竣工验收备案
// String completionDataLevel;
// //项目主体
// String projectDataLevel;
// //施工图审
// String censorDataLevel;
// //竣工验收
// String checkDataLevel;
// // 数据等级查询节点
// String dataLevelStr;
// // 数据等级查询方式 同时具备 任意均可
// String dataLevelQueryType;
// // 资金来源
// String fundSource;
//
// Double startLength;
//
// Double endLength;
// //施工许可
// Double startLicenceLength;
// Double endLicenceLength;
// //竣工验收
// Double startCheckCompletionLength;
// Double endCheckCompletionLength;
// //竣工验收备案
// Double startCompletionLength;
// Double endCompletionLength;
// //长度体现节点
// String lengthNode;
// //长度筛选类型 or/and
// String lengthType;
//
// Double startSpan;
//
// Double endSpan;
// //施工许可
// Double startLicenceSpan;
// Double endLicenceSpan;
// //竣工验收
// Double startCheckCompletionSpan;
// Double endCheckCompletionSpan;
// //竣工验收备案
// Double startCompletionSpan;
// Double endCompletionSpan;
// //跨度体现节点
// String spanNode;
// //跨度筛选类型 or/and
// String spanType;
//
// Integer achievementCount;
//
// String type;
//
// String tenderWay;
//
// String md5Company;
// // 企业业绩关键词
// String keyword;
// // 企业项目详情的中标开始时间 时间戳
// Long startTenderDetailTime;
// // 企业项目详情的中标结束时间 时间戳
// Long endTenderDetailTime;
//
// List<SkyProjectIndexDto> indexDtos;
//
// //指标筛选类型 or/and
// String indexQueryType;
// //指标体现节点
// String indexPoint;
//}
dsk-module/dsk-biz-api/src/main/java/com/dsk/search/domain/AptitudeDetailDto.java
0 → 100644
View file @
f2895543
dsk-module/dsk-biz-api/src/main/java/com/dsk/search/domain/AptitudeDto.java
0 → 100644
View file @
f2895543
dsk-module/dsk-biz-api/src/main/java/com/dsk/search/service/BusinessOpportunityRadarService.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
search
.
service
;
import
cn.hutool.core.bean.BeanUtil
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.common.utils.DskOpenApiUtil
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.HashMap
;
import
java.util.Map
;
/**
* @Author liujie
* @ClassName MarketAnalysisServiceImpl
* @Date 2023/5/15 16:40
**/
@Service
public
class
BusinessOpportunityRadarService
{
@Autowired
private
DskOpenApiUtil
dskOpenApiUtil
;
public
AjaxResult
jskBidNewsPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBid/news/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
findByName
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBid/news/findByName"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
jskBidTenderPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBidTender/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
establishmentPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/establishment/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
jskBidPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBid/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
landMarketPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/landMarket/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
enterpriseIndex
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/enterprice/index"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
enterprisePage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/enterprice/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
enterpriseByName
(
String
keyword
)
{
Map
<
String
,
Object
>
params
=
new
HashMap
<>();
params
.
put
(
"keyword"
,
keyword
);
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/enterprice/findByName"
,
params
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
bondProjectPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/bondProject/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
jskBidPlanPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBidPlan/page"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
getCapitalSourceSelect
()
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBidPlan/getCapitalSourceSelect"
,
null
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
keywordList
()
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/project/keywordList"
,
null
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
bidSourceList
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBid/source"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
importantPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/bondProject/importantPage"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/search/service/MarketAnalysisService.java
0 → 100644
View file @
f2895543
package
com
.
dsk
.
search
.
service
;
import
cn.hutool.core.bean.BeanUtil
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.common.utils.DskOpenApiUtil
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.Map
;
/**
* @Author liujie
* @ClassName MarketAnalysisServiceImpl
* @Date 2023/5/15 16:40
**/
@Service
public
class
MarketAnalysisService
{
@Autowired
private
DskOpenApiUtil
dskOpenApiUtil
;
public
AjaxResult
areaGroupByProvince
()
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/areaGroupByProvince"
,
null
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
certGroupByMajorAndLevel
()
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/certGroupByMajorAndLevel"
,
null
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
certGroupByMajorProvinceLevel
()
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/certGroupByMajorProvinceLevel"
,
null
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
bidMoneyGroupByProjectType
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/bidMoneyGroupByProjectType"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
bidGroupCountByProjectType
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/bidGroupCountByProjectType"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
countGroupByProvince
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/countGroupByProvince"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
countGroupByMonth
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/countGroupByMonth"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
countNewsBidByMonth
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/countNewsBidByMonth"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
countNewsBidByProvince
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/countNewsBidByProvince"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
countNewsBidByYear
()
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/countNewsBidByYear"
,
null
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
countLandMarketByYear
()
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/countLandMarketByYear"
,
null
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
countLandMarketByProvince
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/countLandMarketByProvince"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
countLandMarketByType
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/countLandMarketByType"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
countBidGroupByProvince
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/countBidGroupByProvince"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
countBidByType
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/countBidByType"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
rangeBidMoney
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/rangeBidMoney"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
rangeBidFiveYears
()
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/rangeBidFiveYears"
,
null
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
lowerRateByYear
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/lowerRateByYear"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
lowerRangeTenderType
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/lowerRangeTenderType"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
}
dsk-operate-ui/vue.config.js
View file @
f2895543
...
...
@@ -36,8 +36,8 @@ module.exports = {
[
process
.
env
.
VUE_APP_BASE_API
]:
{
// target: `http://47.104.91.229:9099/prod-api`,
// target: `http://192.168.0.165:9098`,//施
//
target: `http://192.168.60.6:9098`,//谭
target
:
`http://139.9.157.49:9099/prod-api
`
,
//测试
target
:
`http://192.168.60.6:9098`
,
//谭
// target: `http://139.9.157.49:9099
`,//测试
changeOrigin
:
true
,
pathRewrite
:
{
[
'^'
+
process
.
env
.
VUE_APP_BASE_API
]:
''
...
...
dsk-system/src/main/java/com/dsk/system/domain/vo/SysEnterpriseVo.java
deleted
100644 → 0
View file @
fd7ad8be
package
com
.
dsk
.
system
.
domain
.
vo
;
import
com.alibaba.excel.annotation.ExcelIgnoreUnannotated
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.dsk.common.annotation.ExcelDictFormat
;
import
com.dsk.common.convert.ExcelDictConvert
;
import
com.dsk.system.domain.SysTenant
;
import
io.github.linpeilie.annotations.AutoMapper
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* @author sxk
* @date 2023.08.22
* @description:
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper
(
target
=
SysTenant
.
class
)
public
class
SysEnterpriseVo
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* id
*/
@ExcelProperty
(
value
=
"id"
)
private
Long
id
;
/**
* 企业编号
*/
@ExcelProperty
(
value
=
"企业编号"
)
private
String
enterpriseId
;
/**
* 企业名称
*/
@ExcelProperty
(
value
=
"企业名称"
)
private
String
companyName
;
/**
* 开始时间
*/
@ExcelProperty
(
value
=
"开始时间"
)
private
Date
startTime
;
/**
* 过期时间
*/
@ExcelProperty
(
value
=
"过期时间"
)
private
Date
expireTime
;
/**
* 企业方案编号
*/
@ExcelProperty
(
value
=
"企业方案编号"
)
private
Long
programId
;
/**
* 用户名称
*/
@ExcelProperty
(
value
=
"用户名称"
)
private
String
username
;
/**
* 手机号码
*/
@ExcelProperty
(
value
=
"手机号码"
)
private
String
phone
;
/**
* 企业规模
*/
@ExcelProperty
(
value
=
"企业规模"
)
private
String
enterpriseScale
;
/**
* 企业状态(0已过期|1续约)
*/
@ExcelProperty
(
value
=
"企业状态"
,
converter
=
ExcelDictConvert
.
class
)
@ExcelDictFormat
(
readConverterExp
=
"0=已过期,1=续约"
)
private
String
status
;
}
dsk-system/src/main/java/com/dsk/system/domain/vo/SysUserVo.java
View file @
f2895543
//package com.dsk.system.domain.vo;
//
//import com.dsk.common.annotation.Sensitive;
//import com.dsk.common.annotation.Translation;
//import com.dsk.common.constant.TransConstant;
//import com.dsk.common.enums.SensitiveStrategy;
//import com.fasterxml.jackson.annotation.JsonIgnore;
//import com.fasterxml.jackson.annotation.JsonProperty;
//import io.github.linpeilie.annotations.AutoMapper;
//import lombok.Data;
//import org.dromara.common.sensitive.annotation.Sensitive;
//import org.dromara.common.sensitive.core.SensitiveStrategy;
//import org.dromara.common.translation.annotation.Translation;
//import org.dromara.common.translation.constant.TransConstant;
//import org.dromara.system.domain.SysUser;
//
//import java.io.Serializable;
//import java.util.Date;
//import java.util.List;
//
//
///**
// * 用户信息视图对象 sys_user
// *
// * @author Michelle.Chung
// */
//@Data
////@AutoMapper(target = SysUser.class)
//public class SysUserVo implements Serializable {
//
// //@Serial
// private static final long serialVersionUID = 1L;
//
// /**
// * 用户ID
// */
// private Long userId;
//
// /**
// * 租户ID
// */
// private String tenantId;
//
// /**
// * 部门ID
// */
// private Long deptId;
//
// /**
// * 用户账号
// */
// private String userName;
//
// /**
// * 用户昵称
// */
// private String nickName;
//
// /**
// * 用户类型(sys_user系统用户)
// */
// private String userType;
//
// /**
// * 用户邮箱
// */
// @Sensitive(strategy = SensitiveStrategy.EMAIL)
// private String email;
//
// /**
// * 手机号码
// */
// @Sensitive(strategy = SensitiveStrategy.PHONE)
// private String phonenumber;
//
// /**
// * 用户性别(0男 1女 2未知)
// */
// private String sex;
//
// /**
// * 头像地址
// */
//// @Translation(type = TransConstant.OSS_ID_TO_URL)
// private String avatar;
//
// /**
// * 密码
// */
// @JsonIgnore
// @JsonProperty
// private String password;
//
// /**
// * 帐号状态(0正常 1停用)
// */
// private String status;
//
// /**
// * 最后登录IP
// */
// private String loginIp;
//
// /**
// * 最后登录时间
// */
// private Date loginDate;
//
// /**
// * 备注
// */
// private String remark;
//
// /**
// * 创建时间
// */
// private Date createTime;
//
// /**
// * 部门对象
// */
// private SysDeptVo dept;
//
// /**
// * 角色对象
// */
// private List<SysRoleVo> roles;
//
// /**
// * 角色组
// */
// private Long[] roleIds;
//
// /**
// * 岗位组
// */
// private Long[] postIds;
//
// /**
// * 数据权限 当前角色ID
// */
// private Long roleId;
//
//}
package
com
.
dsk
.
system
.
domain
.
vo
;
import
com.alibaba.excel.annotation.ExcelIgnoreUnannotated
;
import
com.dsk.common.annotation.Sensitive
;
import
com.dsk.common.enums.SensitiveStrategy
;
import
com.dsk.common.tenant.core.TenantEntity
;
import
com.dsk.system.domain.SysDept
;
import
com.dsk.system.domain.SysRole
;
import
com.dsk.system.domain.SysUser
;
import
io.github.linpeilie.annotations.AutoMapper
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.util.Date
;
import
java.util.List
;
/**
* 用户对象 sys_user
*
* @author Lion Li
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper
(
target
=
SysUser
.
class
)
@NoArgsConstructor
public
class
SysUserVo
extends
TenantEntity
{
/**
* 用户ID
*/
private
Long
userId
;
/**
* 部门ID
*/
private
Long
deptId
;
/**
* 用户账号
*/
private
String
userName
;
/**
* 用户昵称
*/
private
String
nickName
;
/**
* 用户类型(sys_user系统用户)
*/
private
String
userType
;
/**
* 用户邮箱
*/
@Sensitive
(
strategy
=
SensitiveStrategy
.
EMAIL
)
private
String
email
;
/**
* 手机号码
*/
private
String
phonenumber
;
/**
* 用户性别
*/
private
String
sex
;
/**
* 用户头像
*/
private
String
avatar
;
/**
* 帐号状态(0正常 1停用)
*/
private
String
status
;
/**
* 删除标志(0代表存在 2代表删除)
*/
private
String
delFlag
;
/**
* 最后登录IP
*/
private
String
loginIp
;
/**
* 最后登录时间
*/
private
Date
loginDate
;
/**
* 备注
*/
private
String
remark
;
/**
* 部门对象
*/
private
SysDept
dept
;
/**
* 角色对象
*/
private
List
<
SysRole
>
roles
;
/**
* 角色组
*/
private
Long
[]
roleIds
;
/**
* 岗位组
*/
private
Long
[]
postIds
;
/**
* 数据权限 当前角色ID
*/
private
Long
roleId
;
}
dsk-system/src/main/java/com/dsk/system/service/impl/SysMenuServiceImpl.java
View file @
f2895543
package
com
.
dsk
.
system
.
service
.
impl
;
import
cn.hutool.core.collection.CollUtil
;
import
cn.hutool.core.convert.Convert
;
import
cn.hutool.core.lang.tree.Tree
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
...
...
@@ -13,11 +12,11 @@ import com.dsk.common.helper.LoginHelper;
import
com.dsk.common.utils.StreamUtils
;
import
com.dsk.common.utils.StringUtils
;
import
com.dsk.common.utils.TreeBuildUtils
;
import
com.dsk.system.domain.*
;
import
com.dsk.system.domain.SysMenu
;
import
com.dsk.system.domain.SysRole
;
import
com.dsk.system.domain.SysRoleMenu
;
import
com.dsk.system.domain.vo.MetaVo
;
import
com.dsk.system.domain.vo.RouterVo
;
import
com.dsk.system.domain.vo.SysTenantPackageVo
;
import
com.dsk.system.domain.vo.SysTenantVo
;
import
com.dsk.system.mapper.*
;
import
com.dsk.system.service.ISysMenuService
;
import
lombok.RequiredArgsConstructor
;
...
...
@@ -154,13 +153,15 @@ public class SysMenuServiceImpl implements ISysMenuService {
if
(
LoginHelper
.
isSuperAdmin
(
userId
))
{
//Sass超管
menus
=
baseMapper
.
selectMenuTreeAll
();
}
else
if
(
LoginHelper
.
isTenantAdmin
())
{
// 租户管理员
SysTenantVo
sysTenantVo
=
tenantMapper
.
selectVoOne
(
new
LambdaQueryWrapper
<
SysTenant
>().
eq
(
SysTenant:
:
getTenantId
,
LoginHelper
.
getTenantId
()));
SysTenantPackageVo
sysTenantPackageVo
=
tenantPackageMapper
.
selectVoOne
(
new
LambdaQueryWrapper
<
SysTenantPackage
>().
eq
(
SysTenantPackage:
:
getPackageId
,
sysTenantVo
.
getPackageId
()));
List
<
Long
>
menuIds
=
StringUtils
.
splitTo
(
sysTenantPackageVo
.
getMenuIds
(),
Convert:
:
toLong
);
menus
=
baseMapper
.
selectBatchIds
(
menuIds
);
}
else
{
}
// else if (LoginHelper.isTenantAdmin()) {
// //租户管理员
// SysTenantVo sysTenantVo = tenantMapper.selectVoOne(new LambdaQueryWrapper<SysTenant>().eq(SysTenant::getTenantId, LoginHelper.getTenantId()));
// SysTenantPackageVo sysTenantPackageVo = tenantPackageMapper.selectVoOne(new LambdaQueryWrapper<SysTenantPackage>().eq(SysTenantPackage::getPackageId, sysTenantVo.getPackageId()));
// List<Long> menuIds = StringUtils.splitTo(sysTenantPackageVo.getMenuIds(), Convert::toLong);
// menus = baseMapper.selectBatchIds(menuIds);
// }
else
{
//租户下的员工
menus
=
baseMapper
.
selectMenuTreeByUserId
(
userId
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment