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
Show 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
/**
*
*/
package
com
.
dsk
.
jsk
.
util
;
import
java.util.Arrays
;
import
java.util.List
;
/**
* 常量类
* @author xiaofei.qin
*
*/
public
final
class
BizConstant
{
/**
* http header里的常量
*/
public
final
static
String
HEADER_KEY_TOKEN
=
"token"
;
/**
* 中国的省份编码
*/
public
final
static
int
PROVINCE_CHINA
=
100000
;
public
static
final
Integer
BASE_CERTIFICATE_PARENT_ID
=
0
;
public
final
static
String
PROJECT_DATE_GROUP
=
"project_date_group"
;
public
final
static
String
FEEDBACK_GROUP
=
"feedback_group"
;
public
final
static
String
PROJECT_AMOUNT
=
"project_amount"
;
public
final
static
String
PROJECT_AMOUNT_2
=
"project_amount2"
;
public
final
static
String
SPLIT_CHAR
=
","
;
public
final
static
String
SIKUYI
=
"全国建筑市场监管公共服务平台"
;
public
final
static
String
OTHER
=
"其他建筑市场平台"
;
public
final
static
Integer
PAGE_ROW
=
10
;
//权限表基础保存功能
public
final
static
String
basicsave
=
"ROLE_SYS_PERMISSION_SAVE"
;
//权限表基础修改功能
public
final
static
String
basicupdate
=
"ROLE_SYS_PERMISSION_UPDATE"
;
//权限表基础删除功能
public
final
static
String
basicdelete
=
"ROLE_SYS_PERMISSION_DEL"
;
public
final
static
List
<
String
>
SPECIAL_CHARACTER
=
Arrays
.
asList
(
"有限"
,
"限公"
,
"公司"
,
"限责"
,
"责任"
,
"任公"
,
"股份"
,
"份有"
,
"有限公"
,
"限公司"
,
"有限责"
,
"有限公司"
,
"有限责任"
,
"责任公司"
,
"有限公司"
,
"有限责任公司"
,
"股份有限公司"
,
"监理"
,
"工程"
,
"建筑"
,
"建设"
);
public
final
static
List
<
String
>
COMPANY_NOT_CHARACTER
=
Arrays
.
asList
(
"日期"
,
"时间"
,
"公告"
,
"中标"
,
"候选人"
,
"公示"
,
"联合体"
,
"公开"
);
public
final
static
List
<
String
>
CONSTRUCTION
=
Arrays
.
asList
(
"建设"
,
"安装"
,
"总承包"
,
"EPC"
,
"施工"
,
"工程"
,
"项目"
,
"升级"
,
"改造"
,
"拆除"
,
"绿化"
,
"楼"
,
"路"
,
"桥"
,
"水"
,
"建"
,
"工程"
,
"测"
,
"房"
,
"改造"
,
"路"
,
"道"
,
"施"
,
"建"
,
"处理"
,
"地"
,
"坡"
,
"沟"
,
"池"
,
"场"
,
"修"
,
"设"
,
"舍"
,
"标段"
,
"城"
,
"治"
,
"期"
,
"堂"
,
"消防"
,
"小区"
,
"饰"
,
"景观"
,
"园"
,
"栋"
,
"馆"
,
"站"
,
"中心"
,
"座"
,
"规划"
,
"殿"
,
"厅"
,
"库"
,
"公寓"
,
"厦"
,
"车间"
,
"院"
,
"屋"
,
"水利"
,
"厕所"
,
"宅"
,
"管网"
,
"学"
,
"砖"
,
"所"
,
"点"
,
"家"
,
"EPC"
,
"PMC"
,
"DB"
,
"DBB"
,
"CM"
,
"BOT"
,
"PPP"
);
public
final
static
List
<
String
>
SUPERVISION
=
Arrays
.
asList
(
"监理"
);
public
final
static
List
<
String
>
SURVEY
=
Arrays
.
asList
(
"勘察"
,
"设计"
,
"测绘"
);
public
final
static
List
<
String
>
CONSULTATION
=
Arrays
.
asList
(
"咨询"
,
"管理"
);
public
final
static
List
<
String
>
OTHERBID
=
Arrays
.
asList
(
"采购"
);
public
final
static
int
CONSTRUCTIONNO
=
1
;
public
final
static
int
SUPERVISIONNO
=
2
;
public
final
static
int
SURVEYNO
=
3
;
public
final
static
int
CONSULTATIONNO
=
4
;
public
final
static
int
OTHERBIDNO
=
5
;
/**
* 中标项目名不包含字符
*/
public
final
static
List
<
String
>
PROJECT_NOT_CHARACTER
=
Arrays
.
asList
(
"报价"
,
"联合"
,
"日期"
,
"时间"
,
"公告"
,
"投标"
,
"公开"
,
"公布"
,
"如下"
,
"中标"
,
"编号"
,
"建造师"
,
"元"
,
"唱标"
);
public
final
static
List
<
String
>
COMPANY_CHARACTER
=
Arrays
.
asList
(
"公司"
,
"局"
,
"院"
,
"集团"
,
"所"
,
"中心"
,
"处"
,
"厂"
,
"大学"
,
"队"
,
"部"
,
"站"
,
"室"
,
"场"
,
"合作社"
);
public
final
static
List
<
String
>
COMPANY_BUILD_CHARACTER
=
Arrays
.
asList
(
"施工"
,
"工程"
,
"实业"
,
"建筑"
,
"建设"
,
"安装"
,
"勘察"
,
"设计"
,
"监理"
,
"技术"
,
"科技"
);
public
final
static
List
<
String
>
PROVINCE
=
Arrays
.
asList
(
"北京"
,
"天津"
,
"河北"
,
"山西"
,
"内蒙古"
,
"辽宁"
,
"吉林"
,
"黑龙江"
,
"上海"
,
"江苏"
,
"浙江"
,
"安徽"
,
"福建"
,
"江西"
,
"山东"
,
"河南"
,
"湖北"
,
"湖南"
,
"广东"
,
"广西"
,
"海南"
,
"重庆"
,
"四川"
,
"贵州"
,
"云南"
,
"西藏"
,
"陕西"
,
"甘肃"
,
"青海"
,
"宁夏"
,
"新疆"
);
public
final
static
List
<
String
>
SPIDER
=
Arrays
.
asList
(
"baidu.com"
,
"google"
,
"google.com"
,
"googlebot"
,
"YisouSpider"
,
"Bytespider"
,
"bytedance.com"
,
"so"
,
"so.com"
,
"360spider"
,
"sogou"
,
"sogou.com"
,
"msn"
,
"msn.com"
,
"bing"
,
"bing.com"
,
"sm.cn"
,
"youdao"
);
public
final
static
String
PROVINCE_CODE
=
"[{\"Code\":\"CN\",\"ProvinceName\":\"全国\"},{\"Code\":\"BJ\",\"ProvinceName\":\"北京\"},{\"Code\":\"TJ\",\"ProvinceName\":\"天津\"},{\"Code\":\"HB\",\"ProvinceName\":\"河北\"},{\"Code\":\"SX\",\"ProvinceName\":\"山西\"},{\"Code\":\"NMG\",\"ProvinceName\":\"内蒙古\"},{\"Code\":\"LN\",\"ProvinceName\":\"辽宁\"},{\"Code\":\"JL\",\"ProvinceName\":\"吉林\"},{\"Code\":\"HLJ\",\"ProvinceName\":\"黑龙江\"},{\"Code\":\"SH\",\"ProvinceName\":\"上海\"},{\"Code\":\"JS\",\"ProvinceName\":\"江苏\"},{\"Code\":\"ZJ\",\"ProvinceName\":\"浙江\"},{\"Code\":\"AH\",\"ProvinceName\":\"安徽\"},{\"Code\":\"FJ\",\"ProvinceName\":\"福建\"},{\"Code\":\"JX\",\"ProvinceName\":\"江西\"},{\"Code\":\"SD\",\"ProvinceName\":\"山东\"},{\"Code\":\"HEN\",\"ProvinceName\":\"河南\"},{\"Code\":\"HUB\",\"ProvinceName\":\"湖北\"},{\"Code\":\"HUN\",\"ProvinceName\":\"湖南\"},{\"Code\":\"GD\",\"ProvinceName\":\"广东\"},{\"Code\":\"GX\",\"ProvinceName\":\"广西\"},{\"Code\":\"HAIN\",\"ProvinceName\":\"海南\"},{\"Code\":\"CQ\",\"ProvinceName\":\"重庆\"},{\"Code\":\"SC\",\"ProvinceName\":\"四川\"},{\"Code\":\"GZ\",\"ProvinceName\":\"贵州\"},{\"Code\":\"YN\",\"ProvinceName\":\"云南\"},{\"Code\":\"XZ\",\"ProvinceName\":\"西藏\"},{\"Code\":\"SAX\",\"ProvinceName\":\"陕西\"},{\"Code\":\"GS\",\"ProvinceName\":\"甘肃\"},{\"Code\":\"QH\",\"ProvinceName\":\"青海\"},{\"Code\":\"NX\",\"ProvinceName\":\"宁夏\"},{\"Code\":\"XJ\",\"ProvinceName\":\"新疆\"}]"
;
public
final
static
String
PROVINCE_SIMPLE_CODE
=
"{\"CN\":\"全国\",\"BJ\":\"北京\",\"TJ\":\"天津\",\"HB\":\"河北\",\"SX\":\"山西\",\"NMG\":\"内蒙古\",\"LN\":\"辽宁\",\"JL\":\"吉林\",\"HLJ\":\"黑龙江\",\"SH\":\"上海\",\"JS\":\"江苏\",\"ZJ\":\"浙江\",\"AH\":\"安徽\",\"FJ\":\"福建\",\"JX\":\"江西\",\"SD\":\"山东\",\"HEN\":\"河南\",\"HUB\":\"湖北\",\"HUN\":\"湖南\",\"GD\":\"广东\",\"GX\":\"广西\",\"HAIN\":\"海南\",\"CQ\":\"重庆\",\"SC\":\"四川\",\"GZ\":\"贵州\",\"YN\":\"云南\",\"XZ\":\"西藏\",\"SAX\":\"陕西\",\"GS\":\"甘肃\",\"QH\":\"青海\",\"NX\":\"宁夏\",\"XJ\":\"新疆\"}"
;
public
final
static
List
<
String
>
MESSY_CODE
=
Arrays
.
asList
(
"Ð"
,
"Ï"
,
"¹"
,
"Ê"
,
"Õ"
,
"¡"
,
"Ö"
,
"±"
,
"¾"
,
"µ"
,
"½"
,
"�"
);
public
final
static
String
accessToken
=
"token"
;
/**
* 冻结
*/
public
final
static
String
FROZEN
=
"frozen"
;
/**
* 启用
*/
public
final
static
String
DEFROST
=
"defrost"
;
/**
* 验证码短信模板: 您的注册校验码是${code},10分钟内有效,请勿将校验码泄漏给他人。如非本人操作,请忽略本条消息。
*/
public
final
static
String
SMS_181860796
=
"SMS_181860796"
;
/**
* 密码短信模板: 感谢您注册建设库平台!您的初始密码为“${name}”请您尽快修改密码,提高账号安全性。
*/
public
final
static
String
SMS_145500857
=
"SMS_145500857"
;
/**
* 注册成功
*/
public
final
static
String
SMS_174024045
=
"SMS_174024045"
;
/**
* vip赠送
*/
public
final
static
String
SMS_174024049
=
"SMS_174024049"
;
/**
* 活动手机验证码
*/
public
final
static
String
SMS_174029192
=
"SMS_174029192"
;
/**
* H5引流页注册成功提示下载
*/
public
final
static
String
SMS_176528768
=
"SMS_176528768"
;
/**
* H5引流页短信验证码
*/
public
final
static
String
SMS_176936886
=
"SMS_176936886"
;
/**
* 密码登录提醒
*/
public
final
static
String
SMS_176938027
=
"SMS_176938027"
;
/**
* 向好友推送招标公告
*/
public
final
static
String
SMS_182541746
=
"SMS_182541746"
;
/**
* 用户订阅招标公告推送
*/
public
final
static
String
SMS_182541747
=
"SMS_182541747"
;
public
final
static
String
SMS_136390617
=
"SMS_136390617"
;
public
final
static
String
PROJECT_SOURCE
=
"project_source"
;
public
final
static
int
china
=
100000
;
public
final
static
String
China
=
"全国"
;
/**
* 最大页数
*/
public
final
static
int
MAX_PAGE_INDEX
=
100
;
/**
* 每页条数
*/
public
final
static
int
MAX_PAGE_SIZE
=
20
;
/**
* 每页条数
*/
public
final
static
int
MOBILE_MAX_PAGE_SIZE
=
20
;
/**
* 游客及普通用户显示条数
*/
public
final
static
int
VISITOR_ACCOUNT_PAGE_SIZE
=
10
;
/**
* 最大记录数
*/
public
final
static
int
MAX_RECORD_SIZE
=
2000
;
/**
* 生成账号
*/
public
static
final
Integer
USER_ACOUNT_BASE
=
10000
;
public
static
final
Integer
SVIP_MAX_EXPORT_COUNT
=
20000
;
public
static
final
Integer
MAX_EXPORT_COUNT
=
2000
;
/**
* 最大标签数
*/
public
final
static
int
MAX_LEBEL_SIZE
=
200
;
public
final
static
int
MAX_PAGE_SIZE_PC
=
201
;
/**
* 水滴信用信息更新时间
*/
public
static
final
Integer
SHUIDI_DATA_UPDATE_TIME
=
2
;
/**
* 水滴信用信息更新时间
*/
public
static
final
Integer
SHUIDI_DATA_UPDATE_TIME_ONE
=
1
;
public
final
static
String
CLIENT_IOS
=
"IOS"
;
public
final
static
String
CLIENT_MP
=
"mp"
;
public
final
static
String
CLIENT_NODEJS
=
"nodejs"
;
public
final
static
String
CLIENT_WRAP
=
"wrap"
;
public
final
static
String
CLIENT_ANDROID
=
"ANDROID"
;
public
static
final
String
MUNICIPALITY
=
"北京上海重庆天津"
;
public
static
final
String
NORTHCHINA
=
"北京市天津市河北省山西省内蒙古自治区"
;
public
static
final
String
SOUTHCHINA
=
"广东省海南省广西壮族自治区"
;
public
static
final
String
EASTCHINA
=
"上海市江苏省浙江省安徽省福建省江西省山东省"
;
public
static
final
String
MIDCHINA
=
"河南省湖北省湖南省"
;
public
static
final
String
WESTSOUTH
=
"重庆市四川省贵州省云南省西藏自治区"
;
public
static
final
String
EASTNORTH
=
"黑龙江省辽宁省吉林省"
;
public
static
final
String
WESTNORTH
=
"陕西省甘肃省青海省宁夏回族自治区新疆维吾尔自治区"
;
public
final
static
String
SERVICE_TYPE_VIP_CODE
=
"VIP"
;
public
final
static
String
SERVICE_TYPE_BZ
=
"BZ"
;
public
final
static
String
SERVICE_TYPE_PT
=
"PT"
;
public
final
static
String
SERVICE_TYPE_SD
=
"SD"
;
public
final
static
String
VIP_MVIP
=
"MVIP"
;
public
final
static
String
VIP_QVIP
=
"QVIP"
;
public
final
static
String
VIP_HYVIP
=
"HYVIP"
;
public
final
static
String
VIP_YVIP
=
"YVIP"
;
public
final
static
String
ONE_YEAR_VIP
=
"1YVIP"
;
public
final
static
String
TWO_YEAR_VIP
=
"2YVIP"
;
public
final
static
String
THREE_YEAR_VIP
=
"3YVIP"
;
public
final
static
String
STORE_NEW_CODE
=
"storeNew"
;
public
final
static
String
STORE_NEW_GROUP
=
"store"
;
public
final
static
String
SERVICE_TYPE_VIP
=
"2"
;
public
final
static
String
SERVICE_TYPE_BG
=
"1"
;
public
final
static
String
VIP
=
"vip"
;
public
final
static
String
START_TIME
=
"startTime"
;
public
final
static
String
END_TIME
=
"endTime"
;
public
final
static
String
VIP_TYPE_3_HOUR
=
"HOURVIP"
;
// 信用报告类型
public
final
static
String
GROUP_SERVICE_TYPE
=
"serviceType"
;
public
final
static
String
CODE_PT
=
"PT"
;
public
final
static
String
CODE_BZ
=
"BZ"
;
public
final
static
String
PT_USER
=
"pt_user"
;
public
final
static
String
VIP_USER
=
"vip_user"
;
/**
* 支付宝正式环境网关地址
*/
public
static
final
String
PAY_ALI_GATEURL
=
"https://openapi.alipay.com/gateway.do"
;
/**
* 支付宝正式环境APPID
*/
public
static
final
String
PAY_ALI_APPID
=
"2018103161911828"
;
public
static
final
String
RSA_PRIVATE_KEY
=
"MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDbCQx2tczOecOJ4weztxnamFkNDX2ng0t/UKNwZzi2huEh621cN772ck2yO72/rfyioCSHPAg86XPCtjxaAbIKVRR+w1AC5oG6foUl9H+Mu2lvd9d6hIUzl0mSH4MaHgT21BO6oYE9E4IvDcy5kWfdor46tqDd4Md6gXle79/pgIP2P/xV106mZ1DP8V4G0yopa1DZ1xmMyrJZryy/oRs44u2j75l6Xz551K/lGyh96GPW8X46Ar7iLTajx8tf3H1ssgxudEqYYBlFtwryPWwoQdWawK9uJmFKw73BplhpStQSHokmVwFsXPPLyT/GtWTVUd7dyvEKGXs86B7jkhXtAgMBAAECggEAB83Put8JWAXwmJYVLSsF6crpyVREuNYtt3CJEjUrSR2PIeVAdTurOx6hdAs63Hx3dtfb1VGnPXxX2oUhq1dKH6IeY9HTpPbPgnSFi++lJ795pzYO4FeeY1MtlN44jpKpPJ4bwdeFQkbSqZiFRctPdw8YVgExxBYBJXU9fMtxH+GacV0koZmI4DGxo4fv0LhT2M+8rG6584vP8mly0jji/rCVzh6LapTPNV1QHRWx5d4r6aAghQ4DxBx+WaFhq1j9NV2NgLhfflt+2NNlmJ4xD3sGAXrzPqolS3cGb4BR9jq2v6v1Qs1F7nsp0DzSI3FLuht0VluiIWj7e3fR2Bt1hQKBgQDx26A/dU2yLF8nRbG69XrHteL0ATYa6nrNa3EPze2vyLMLRTfA0Ocao8u7FyuhQA0mA0DIzT6mwvnEIKlGKC3/XRqqKZw5GdVq0BpDjvLhPg3cOVHxefogcM0AiBJzEgmXG8gUxgpUCL2mKpZO9HeEF3h9yay5m1uam/rjG5MISwKBgQDn18qbIy2TE+X5YptdRGuCOwGRH70hB6RCiQFZY8EZsjvj0+FzBAD9HZHy5aNVS6m1ynn8ArB9MUMvLp6K1rDz/YcQAxN3tF/KmcP7dpxBtsZI68xKqLNUTLe1mjGce3hjLtUXbmJOCGUN4yFbk+u98VuwCXyPPwml0HnAqwTnpwKBgQCbfc3avnnDMQ/D2eTYA/Z56xAMO7MjPtjQtGCt/oDvYKLrfgbIKgZKdEAI+m6MbveFFtZRwtKit/uIAk+R0UcxRBRejf3oIBm7YCtif8ba1OBoU1nBW+BZduv1iYYDAPe1dKD/6gq92BjFed/ExxsHi2dlx4EKmz0be2ijFhlDXQKBgAgYEIq5/61S1ISQXLw010wEo1ldskyk56crAVENmoA7KLwbeZN6YE516dKBEeK4cYRXPUr/DQpR3faXuhE+zY63GzAD63oSYgXAuIbe7TWeG+4PzWIN4bTfuMouR+0eomVUDTx0LhprUJvbgh6gW2qWMo1Cx4Z4vO19CcMgNVuhAoGAfJfl0gWBtc4rJ/mLz1YD08X0oEcTUvw+HSQTjtG4BHa1aI1jHXe9h1+uZm9eacxzqdJ03zfWThV66SAsKjXrbIrb9e2x2OcT9DdXoqF9R5aSQzpTdvK3NMmnE4AKbb32xrGlBgINCFvxcCRRlkPK0jwl8D3IrWE/+YAXhGGAcC8="
;
public
static
final
String
RSA_PUBLIC_KEY
=
"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2wkMdrXMznnDieMHs7cZ2phZDQ19p4NLf1CjcGc4tobhIettXDe+9nJNsju9v638oqAkhzwIPOlzwrY8WgGyClUUfsNQAuaBun6FJfR/jLtpb3fXeoSFM5dJkh+DGh4E9tQTuqGBPROCLw3MuZFn3aK+Orag3eDHeoF5Xu/f6YCD9j/8VddOpmdQz/FeBtMqKWtQ2dcZjMqyWa8sv6EbOOLto++Zel8+edSv5Rsofehj1vF+OgK+4i02o8fLX9x9bLIMbnRKmGAZRbcK8j1sKEHVmsCvbiZhSsO9waZYaUrUEh6JJlcBbFzzy8k/xrVk1VHe3crxChl7POge45IV7QIDAQAB"
;
/**
* 微信支付分配的商户号
*/
public
static
final
String
PAY_WX_MCHID
=
"1555277781"
;
/**
* trade_type=NATIVE,此参数必传。此id为二维码中包含的商品ID,商户自行定义。
*/
public
static
final
String
PAY_WX_PRODUCTID
=
"69641265"
;
/**
* 微信公众号appID
*/
public
static
final
String
WX_APPID
=
"wx3516e7f1706ef4f2"
;
/**
* 微信公众号appSecret
*/
public
static
final
String
WX_APPSECRET
=
"577265a4db8549fb275d84380ac782f9"
;
/**
* 微信分配的APP账号ID
*/
public
static
final
String
PAY_WX_APPID
=
"wx0bb7f3c347631215"
;
/**
* 微信分配的小程序账号ID
*/
public
static
final
String
PAY_WX_XCX_APPID
=
"wx34e8004a2b6c8f4b"
;
/**
* 微信分配的小程序商户号
*/
public
static
final
String
PAY_WX_XCX_MCHID
=
"wx34e8004a2b6c8f4b"
;
/**
* https://open.weixin.qq.com/
* 开发者平台app应用得secret:APP_SECRET
*/
public
static
final
String
PAY_WX_APP_SECRET
=
"daddb90bd88cb56e437ae2cecf0e8dd7"
;
/**
* 微信支付相关
* <p>
* 财付通商户号对应的密钥 <br/>
* 具体获得途径如下:<br/>
* 微信商户平台(pay.weixin.qq.com)-->账户设置-->API安全-->密钥设置
* </p>
*/
public
static
final
String
PAY_WX_SECRET
=
"hhFbrSQQ9W6rDxfn75C52zjTLjdFrYTg"
;
/**
* 微信支付网关地址
*/
public
static
final
String
PAY_WX_GATEURL
=
"https://api.mch.weixin.qq.com/pay/unifiedorder"
;
/**
* 调用微信PC端的交易类型
*/
public
static
final
String
PAY_WX_PC_TRADETYPE
=
"NATIVE"
;
/**
* 调用微信Wrap端的交易类型
*/
public
static
final
String
PAY_WX_WRAP_TRADETYPE
=
"MWEB"
;
/**
* 调用微信Wrap端的交易类型
*/
public
static
final
String
PAY_WX_JSAPI_TRADETYPE
=
"JSAPI"
;
/**
* 调用微信APP端的交易类型
*/
public
static
final
String
PAY_WX_APP_TRADETYPE
=
"APP"
;
}
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