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
24da7d7f
Commit
24da7d7f
authored
May 16, 2023
by
danfuman
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://192.168.60.201/root/dsk-operate-sys
parents
1201b458
975ef823
Changes
19
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
710 additions
and
59 deletions
+710
-59
CustomerController.java
...a/com/dsk/web/controller/customer/CustomerController.java
+1
-2
CustomerDecisionChainController.java
.../controller/customer/CustomerDecisionChainController.java
+62
-0
MarketAnalysisController.java
...m/dsk/web/controller/search/MarketAnalysisController.java
+21
-13
MarketAnalysisService.java
.../web/controller/search/service/MarketAnalysisService.java
+6
-3
MarketAnalysisServiceImpl.java
...roller/search/service/impl/MarketAnalysisServiceImpl.java
+16
-6
application-dev.yml
dsk-admin/src/main/resources/application-dev.yml
+101
-8
add.png
dsk-operate-ui/src/assets/images/add.png
+0
-0
add_1.png
dsk-operate-ui/src/assets/images/add_1.png
+0
-0
import.png
dsk-operate-ui/src/assets/images/import.png
+0
-0
index.scss
dsk-operate-ui/src/assets/styles/index.scss
+133
-2
index.vue
dsk-operate-ui/src/views/project/projectList/index.vue
+82
-2
Customer.java
dsk-system/src/main/java/com/dsk/system/domain/Customer.java
+27
-0
CustomerDecisionChain.java
...ain/java/com/dsk/system/domain/CustomerDecisionChain.java
+64
-0
CustomerDecisionChainSearchDto.java
...dsk/system/domain/dto/CustomerDecisionChainSearchDto.java
+15
-0
CustomerDecisionChainMapper.java
...va/com/dsk/system/mapper/CustomerDecisionChainMapper.java
+18
-0
ICustomerDecisionChainService.java
...com/dsk/system/service/ICustomerDecisionChainService.java
+53
-0
CustomerDecisionChainServiceImpl.java
...system/service/impl/CustomerDecisionChainServiceImpl.java
+90
-0
CustomerDecisionChainMapper.xml
...src/main/resources/mapper/CustomerDecisionChainMapper.xml
+21
-0
CustomerMapper.xml
.../main/resources/mapper/system/customer/CustomerMapper.xml
+0
-23
No files found.
dsk-admin/src/main/java/com/dsk/web/controller/customer/CustomerController.java
View file @
24da7d7f
...
...
@@ -2,7 +2,6 @@ package com.dsk.web.controller.customer;
import
com.dsk.common.core.controller.BaseController
;
import
com.dsk.system.service.ICustomerService
;
import
com.dsk.system.service.impl.CustomerServiceImpl
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
...
...
@@ -14,7 +13,7 @@ import org.springframework.web.bind.annotation.RestController;
* @create 2023/5/16
*/
@RestController
@RequestMapping
(
"/
system/config
"
)
@RequestMapping
(
"/
customer
"
)
public
class
CustomerController
extends
BaseController
{
@Autowired
...
...
dsk-admin/src/main/java/com/dsk/web/controller/customer/CustomerDecisionChainController.java
0 → 100644
View file @
24da7d7f
package
com
.
dsk
.
web
.
controller
.
customer
;
import
com.dsk.common.core.controller.BaseController
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.common.core.page.TableDataInfo
;
import
com.dsk.system.domain.CustomerDecisionChain
;
import
com.dsk.system.domain.dto.CustomerDecisionChainSearchDto
;
import
com.dsk.system.service.ICustomerDecisionChainService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.web.bind.annotation.*
;
/**
* 客户决策链条
* @author lcl
* @create 2023/5/16
*/
@RestController
@RequestMapping
(
"/customer/decision/chain"
)
public
class
CustomerDecisionChainController
extends
BaseController
{
@Autowired
private
ICustomerDecisionChainService
baseService
;
/**
* 获取客户决策链条列表
*/
@PreAuthorize
(
"@ss.hasPermi('customer:decision:chain:list')"
)
@GetMapping
(
"/list"
)
public
TableDataInfo
selectPageList
(
CustomerDecisionChainSearchDto
dto
){
startPage
();
return
getDataTable
(
baseService
.
selectList
(
dto
));
}
/**
* 添加客户决策链条
*/
@PreAuthorize
(
"@ss.hasPermi('customer:decision:chain:add')"
)
@PostMapping
()
public
AjaxResult
add
(
CustomerDecisionChain
customerDecisionChain
){
return
AjaxResult
.
success
(
baseService
.
insert
(
customerDecisionChain
));
}
/**
* 编辑客户决策链条
*/
@PreAuthorize
(
"@ss.hasPermi('customer:decision:chain:edit')"
)
@PutMapping
()
public
AjaxResult
edit
(
CustomerDecisionChain
customerDecisionChain
){
return
AjaxResult
.
success
(
baseService
.
update
(
customerDecisionChain
));
}
/**
* 删除客户决策链条
*/
@PreAuthorize
(
"@ss.hasPermi('customer:decision:chain:del')"
)
@DeleteMapping
(
"/{id}"
)
public
AjaxResult
del
(
@PathVariable
(
"id"
)
Long
id
){
return
AjaxResult
.
success
(
baseService
.
deleteById
(
id
));
}
}
dsk-admin/src/main/java/com/dsk/web/controller/search/MarketAnalysisController.java
View file @
24da7d7f
package
com
.
dsk
.
web
.
controller
.
search
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.common.dtos.ComposeQueryDto
;
import
com.dsk.web.controller.search.service.MarketAnalysisService
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
...
...
@@ -31,31 +33,37 @@ public class MarketAnalysisController {
}
/*
* 资质等级按照
大类
、等级类型分组
* 资质等级按照
行业
、等级类型分组
*/
@RequestMapping
(
"/certGroupBy
Category
AndLevel"
)
public
AjaxResult
certGroupBy
Category
AndLevel
()
{
@RequestMapping
(
"/certGroupBy
Major
AndLevel"
)
public
AjaxResult
certGroupBy
Major
AndLevel
()
{
return
marketAnalysisService
.
certGroupBy
Category
AndLevel
();
return
marketAnalysisService
.
certGroupBy
Major
AndLevel
();
}
/*
* 资质等级按照
小类
、等级类型分组
* 资质等级按照
大类、省份
、等级类型分组
*/
@RequestMapping
(
"/certGroupBy
TypeAnd
Level"
)
public
AjaxResult
certGroupBy
TypeAnd
Level
()
{
@RequestMapping
(
"/certGroupBy
CategoryProvince
Level"
)
public
AjaxResult
certGroupBy
CategoryProvince
Level
()
{
return
marketAnalysisService
.
certGroupBy
TypeAnd
Level
();
return
marketAnalysisService
.
certGroupBy
MajorProvince
Level
();
}
/*
*
资质等级按照大类、省份、等级类型
分组
*
中标数量按省份
分组
*/
@RequestMapping
(
"/certGroupByCategoryProvinceLevel"
)
public
AjaxResult
certGroupByCategoryProvinceLevel
()
{
@RequestMapping
(
"/countGroupByProvince"
)
public
AjaxResult
countGroupByProvince
(
@RequestBody
ComposeQueryDto
compose
)
{
return
marketAnalysisService
.
countGroupByProvince
(
compose
);
}
return
marketAnalysisService
.
certGroupByCategoryProvinceLevel
();
/*
* 中标数量按月份分组
*/
@RequestMapping
(
"/countGroupByMonth"
)
public
AjaxResult
countGroupByMonth
(
@RequestBody
ComposeQueryDto
compose
)
{
return
marketAnalysisService
.
countGroupByMonth
(
compose
);
}
}
dsk-admin/src/main/java/com/dsk/web/controller/search/service/MarketAnalysisService.java
View file @
24da7d7f
package
com
.
dsk
.
web
.
controller
.
search
.
service
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.common.dtos.ComposeQueryDto
;
/**
* @Author liujie
...
...
@@ -11,9 +12,11 @@ public interface MarketAnalysisService {
AjaxResult
areaGroupByProvince
();
AjaxResult
certGroupBy
Type
AndLevel
();
AjaxResult
certGroupBy
Major
AndLevel
();
AjaxResult
certGroupBy
CategoryAnd
Level
();
AjaxResult
certGroupBy
MajorProvince
Level
();
AjaxResult
certGroupByCategoryProvinceLevel
();
AjaxResult
countGroupByProvince
(
ComposeQueryDto
compose
);
AjaxResult
countGroupByMonth
(
ComposeQueryDto
compose
);
}
dsk-admin/src/main/java/com/dsk/web/controller/search/service/impl/MarketAnalysisServiceImpl.java
View file @
24da7d7f
...
...
@@ -3,6 +3,7 @@ package com.dsk.web.controller.search.service.impl;
import
cn.hutool.core.bean.BeanUtil
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.common.core.domain.R
;
import
com.dsk.common.dtos.ComposeQueryDto
;
import
com.dsk.common.utils.DskOpenApiUtil
;
import
com.dsk.common.utils.http.HttpUtils
;
import
com.dsk.web.controller.search.service.MarketAnalysisService
;
...
...
@@ -29,18 +30,27 @@ public class MarketAnalysisServiceImpl implements MarketAnalysisService {
}
@Override
public
AjaxResult
certGroupByTypeAndLevel
()
{
return
null
;
public
AjaxResult
certGroupByMajorAndLevel
()
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/marketAnalysis/certGroupByMajorAndLevel"
,
null
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
@Override
public
AjaxResult
certGroupByCategoryAndLevel
()
{
return
null
;
public
AjaxResult
certGroupByMajorProvinceLevel
()
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/marketAnalysis/certGroupByMajorProvinceLevel"
,
null
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
@Override
public
AjaxResult
certGroupByCategoryProvinceLevel
()
{
public
AjaxResult
countGroupByProvince
(
ComposeQueryDto
compose
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/marketAnalysis/countGroupByProvince"
,
BeanUtil
.
beanToMap
(
compose
,
false
,
false
));
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
return
null
;
@Override
public
AjaxResult
countGroupByMonth
(
ComposeQueryDto
compose
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/marketAnalysis/countGroupByDate"
,
BeanUtil
.
beanToMap
(
compose
,
false
,
false
));
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
}
dsk-admin/src/main/resources/application-dev.yml
View file @
24da7d7f
...
...
@@ -158,14 +158,107 @@ token:
# 令牌有效期(默认30分钟)
expireTime
:
30
# MyBatis配置
mybatis
:
# 搜索指定包别名
typeAliasesPackage
:
com.dsk.**.domain
# 配置mapper的扫描,找到所有的mapper.xml映射文件
mapperLocations
:
classpath*:mapper/**/*Mapper.xml
# 加载全局的配置文件
configLocation
:
classpath:mybatis/mybatis-config.xml
#mybatis:
# # 搜索指定包别名
# typeAliasesPackage: com.dsk.**.domain
# # 配置mapper的扫描,找到所有的mapper.xml映射文件
# mapperLocations: classpath*:mapper/**/*Mapper.xml
# # 加载全局的配置文件
# configLocation: classpath:mybatis/mybatis-config.xml
# MyBatisPlus配置
# https://baomidou.com/config/
mybatis-plus
:
# 不支持多包, 如有需要可在注解配置 或 提升扫包等级
# 例如 com.**.**.mapper
mapperPackage
:
com.dsk.**.mapper
# 对应的 XML 文件位置
mapperLocations
:
classpath*:mapper/**/*Mapper.xml
# 实体扫描,多个package用逗号或者分号分隔
typeAliasesPackage
:
com.dsk.**.domain
# 针对 typeAliasesPackage,如果配置了该属性,则仅仅会扫描路径下以该类作为父类的域对象
#typeAliasesSuperType: Class<?>
# 如果配置了该属性,SqlSessionFactoryBean 会把该包下面的类注册为对应的 TypeHandler
#typeHandlersPackage: null
# 如果配置了该属性,会将路径下的枚举类进行注入,让实体类字段能够简单快捷的使用枚举属性
#typeEnumsPackage: null
# 启动时是否检查 MyBatis XML 文件的存在,默认不检查
checkConfigLocation
:
false
# 通过该属性可指定 MyBatis 的执行器,MyBatis 的执行器总共有三种:
# SIMPLE:该执行器类型不做特殊的事情,为每个语句的执行创建一个新的预处理语句(PreparedStatement)
# REUSE:该执行器类型会复用预处理语句(PreparedStatement)
# BATCH:该执行器类型会批量执行所有的更新语句
executorType
:
SIMPLE
configuration
:
# 自动驼峰命名规则(camel case)映射
# 如果您的数据库命名符合规则无需使用 @TableField 注解指定数据库字段名
mapUnderscoreToCamelCase
:
true
# 默认枚举处理类,如果配置了该属性,枚举将统一使用指定处理器进行处理
# org.apache.ibatis.type.EnumTypeHandler : 存储枚举的名称
# org.apache.ibatis.type.EnumOrdinalTypeHandler : 存储枚举的索引
# com.baomidou.mybatisplus.extension.handlers.MybatisEnumTypeHandler : 枚举类需要实现IEnum接口或字段标记@EnumValue注解.
defaultEnumTypeHandler
:
org.apache.ibatis.type.EnumTypeHandler
# 当设置为 true 的时候,懒加载的对象可能被任何懒属性全部加载,否则,每个属性都按需加载。需要和 lazyLoadingEnabled 一起使用。
aggressiveLazyLoading
:
true
# MyBatis 自动映射策略
# NONE:不启用自动映射
# PARTIAL:只对非嵌套的 resultMap 进行自动映射
# FULL:对所有的 resultMap 都进行自动映射
autoMappingBehavior
:
PARTIAL
# MyBatis 自动映射时未知列或未知属性处理策
# NONE:不做任何处理 (默认值)
# WARNING:以日志的形式打印相关警告信息
# FAILING:当作映射失败处理,并抛出异常和详细信息
autoMappingUnknownColumnBehavior
:
NONE
# Mybatis一级缓存,默认为 SESSION
# SESSION session级别缓存,同一个session相同查询语句不会再次查询数据库
# STATEMENT 关闭一级缓存
localCacheScope
:
SESSION
# 开启Mybatis二级缓存,默认为 true
cacheEnabled
:
false
# 更详细的日志输出 会有性能损耗 org.apache.ibatis.logging.stdout.StdOutImpl
# 关闭日志记录 (可单纯使用 p6spy 分析) org.apache.ibatis.logging.nologging.NoLoggingImpl
# 默认日志输出 org.apache.ibatis.logging.slf4j.Slf4jImpl
logImpl
:
org.apache.ibatis.logging.slf4j.Slf4jImpl
global-config
:
# 是否打印 Logo banner
banner
:
true
# 是否初始化 SqlRunner
enableSqlRunner
:
false
dbConfig
:
# 主键类型
# AUTO 数据库ID自增
# NONE 空
# INPUT 用户输入ID
# ASSIGN_ID 全局唯一ID
# ASSIGN_UUID 全局唯一ID UUID
idType
:
AUTO
# 表名前缀
tablePrefix
:
null
# 字段 format,例: %s,(对主键无效)
columnFormat
:
null
# 表名是否使用驼峰转下划线命名,只对表名生效
tableUnderline
:
true
# 大写命名,对表名和字段名均生效
capitalMode
:
false
# 全局的entity的逻辑删除字段属性名
logicDeleteField
:
null
# 逻辑已删除值
logicDeleteValue
:
2
# 逻辑未删除值
logicNotDeleteValue
:
0
# 字段验证策略之 insert,在 insert 的时候的字段验证策略
# IGNORED 忽略判断
# NOT_NULL 非NULL判断
# NOT_EMPTY 非空判断(只对字符串类型字段,其他类型字段依然为非NULL判断)
# DEFAULT 默认的,一般只用于注解里
# NEVER 不加入 SQL
insertStrategy
:
NOT_NULL
# 字段验证策略之 update,在 update 的时候的字段验证策略
updateStrategy
:
NOT_NULL
# 字段验证策略之 select,在 select 的时候的字段验证策略既 wrapper 根据内部 entity 生成的 where 条件
where-strategy
:
NOT_NULL
# PageHelper分页插件
pagehelper
:
...
...
dsk-operate-ui/src/assets/images/add.png
0 → 100644
View file @
24da7d7f
148 Bytes
dsk-operate-ui/src/assets/images/add_1.png
0 → 100644
View file @
24da7d7f
152 Bytes
dsk-operate-ui/src/assets/images/import.png
0 → 100644
View file @
24da7d7f
281 Bytes
dsk-operate-ui/src/assets/styles/index.scss
View file @
24da7d7f
...
...
@@ -121,7 +121,7 @@ aside {
//main-container全局样式
.app-container
{
padding
:
20
px
;
padding
:
16
px
;
}
.components-container
{
...
...
@@ -208,9 +208,12 @@ ul, li {
margin
:
0
;
}
.app-main
{
background-color
:
#f5f5f5
;
}
.app-container
{
margin
:
12px
24px
;
background
:
#FFFFFF
;
background
-color
:
#f5f5f5
;
.el-input__inner
{
border-color
:
#D9D9D9
;
color
:
#232323
;
...
...
@@ -425,3 +428,131 @@ ul, li {
}
}
}
//组件公用样式
//
// 无边框、阴影card
.el-card.noborder
{
border-color
:
#f5f5f5
;
box-shadow
:
none
;
margin-bottom
:
12px
;
.el-card__body
{
padding
:
0
;
}
}
//el-tabs
.tabpane
{
&
.w100
{
.el-tabs__nav-scroll
{
padding-left
:
16px
;
}
.el-tabs__content
{
padding
:
16px
;
}
}
.el-tabs__header
{
margin
:
0
;
}
.
el-tabs__nav-wrap
:
:
after
{
background-color
:
#EFEFEF
;
height
:
1px
;
}
.el-tabs__item
{
font-size
:
16px
;
color
:
#232323
;
line-height
:
50px
;
height
:
50px
;
}
.is-active
{
color
:
#0081FF
;
font-weight
:
bold
;
}
}
//按钮
.btn
{
margin-left
:
8px
;
border-radius
:
4px
;
display
:
inline-block
;
font-size
:
14px
;
cursor
:
pointer
;
text-align
:
center
;
&
.h28
{
height
:
28px
;
padding
:
0
10px
;
}
&
.h32
{
height
:
32px
;
padding
:
0
16px
;
}
&
.h34
{
width
:
80px
;
height
:
34px
;
}
.img
{
height
:
100%
;
float
:
left
;
width
:
16px
;
}
}
.btn_default
{
border
:
1px
solid
#0081FF
;
color
:
#0081FF
;
&
.h28
{
line-height
:
26px
;
}
&
.h32
{
line-height
:
30px
;
}
&
.h34
{
line-height
:
32px
;
}
&
:hover
{
color
:
#006AD1
;
border-color
:
#006AD1
;
}
}
.btn_primary
{
background-color
:
#0081FF
;
color
:
#fff
;
&
.h28
{
line-height
:
28px
;
}
&
.h32
{
line-height
:
32px
;
}
&
.h34
{
line-height
:
34px
;
}
&
:hover
{
background-color
:
#006AD1
;
}
}
//搜索框
.searchInput
{
width
:
590px
;
height
:
34px
;
border-radius
:
2px
0px
0px
2px
;
opacity
:
1
;
border
:
1px
solid
#EFEFEF
;
position
:
relative
;
overflow
:
hidden
;
.el-input
{
margin
:
-2px
-1px
;
}
.btn
{
background
:
#F5F5F5
;
color
:
#0081FF
;
cursor
:
pointer
;
width
:
60px
;
line-height
:
32px
;
height
:
32px
;
text-align
:
center
;
position
:
absolute
;
right
:
0
;
top
:
0
;
border-radius
:
0
;
&
:hover
{
color
:
#006AD1
;
}
}
}
dsk-operate-ui/src/views/project/projectList/index.vue
View file @
24da7d7f
<
template
>
<div
class=
"app-container"
>
商机列表
<el-card
class=
"box-card noborder nopad"
>
<div
class=
"btns"
>
<div
class=
"btn btn_default h28"
><div
class=
"img img1"
></div>
新建项目商机
</div>
<div
class=
"btn btn_primary h28"
><div
class=
"img img2"
></div>
批量导出
</div>
</div>
<el-tabs
v-model=
"activeName"
@
tab-click=
"handleClick"
class=
"tabpane w100"
>
<el-tab-pane
label=
"我参与的项目"
name=
"first"
>
<div
class=
"searchInput"
>
<el-input
type=
"text"
placeholder=
"请输入项目或业主单位名称关键词进行搜索"
></el-input>
<div
class=
"btn"
>
搜索
</div>
</div>
<div
class=
"sellist"
>
<div
class=
"selli"
>
<span>
地区团队
</span>
aaa
</div>
<div
class=
"selli"
>
<span>
项目信息
</span>
aaa
</div>
</div>
<div
class=
"scbtns"
>
<div
class=
"btn btn_primary h34"
>
查询
</div>
<div
class=
"btn btn_default h34"
>
重置
</div>
</div>
</el-tab-pane>
<el-tab-pane
label=
"公司全部项目"
name=
"second"
>
配置管理
</el-tab-pane>
</el-tabs>
</el-card>
<el-card
class=
"box-card noborder"
>
</el-card>
</div>
</
template
>
<
script
>
// import "@/assets/styles/index.scss"
export
default
{
name
:
'ProjectList'
,
data
()
{
return
{
activeName
:
'first'
,
}
},
created
()
{
...
...
@@ -19,5 +55,49 @@ export default {
</
script
>
<
style
lang=
"scss"
scoped
>
.app-container
{
padding
:
0
;
}
.noborder
{
position
:
relative
;
}
.btns
{
position
:
absolute
;
top
:
11px
;
right
:
12px
;
z-index
:
2
;
.img.img1
{
background
:
url('../../../../src/assets/images/add.png')
no-repeat
center
center
;
}
.btn_default
:hover
{
.img1
{
background
:
url('../../../../src/assets/images/add_1.png')
no-repeat
center
center
;
}
}
.img.img2
{
background
:
url('../../../../src/assets/images/import.png')
no-repeat
center
center
;
}
}
.scbtns
{
border-top
:
1px
solid
#EFEFEF
;
padding
:
24px
0
8px
;
.btn
{
margin
:
0
16px
0
0
;
}
}
.sellist
{
width
:
100%
;
padding
:
10px
0
;
.selli
{
width
:
100%
;
height
:
34px
;
line-height
:
34px
;
font-size
:
14px
;
color
:
#232323
;
>
span
{
float
:
left
;
margin-right
:
28px
;
}
}
}
</
style
>
dsk-system/src/main/java/com/dsk/system/domain/Customer.java
View file @
24da7d7f
package
com
.
dsk
.
system
.
domain
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.experimental.Accessors
;
import
java.io.Serializable
;
import
java.util.Date
;
...
...
@@ -13,10 +17,13 @@ import java.util.Date;
* @since 2023-05-16 09:27:55
*/
@Data
@NoArgsConstructor
@Accessors
(
chain
=
true
)
@TableName
(
"customer"
)
public
class
Customer
implements
Serializable
{
private
static
final
long
serialVersionUID
=
824383302173350532L
;
@TableId
(
value
=
"customer_id"
,
type
=
IdType
.
ASSIGN_UUID
)
private
String
customerId
;
/**
* jsk企业id
...
...
@@ -74,6 +81,26 @@ public class Customer implements Serializable {
* 经营范围
*/
private
String
businessScope
;
/**
* 商务条件特点
*/
private
String
businessCharacteristic
;
/**
* 决策链条
*/
private
String
decisionChain
;
/**
* 招投标流程特点
*/
private
String
bidCharacteristic
;
/**
* 履约阶段特点
*/
private
String
performanceCharacteristic
;
/**
* 其它管理体系特点
*/
private
String
otherMsCharacteistic
;
/**
* 最后跟进时间
*/
...
...
dsk-system/src/main/java/com/dsk/system/domain/CustomerDecisionChain.java
0 → 100644
View file @
24da7d7f
package
com
.
dsk
.
system
.
domain
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.experimental.Accessors
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* 客户决策链条(CustomerDecisionChain)实体类
*
* @author makejava
* @since 2023-05-16 15:33:45
*/
@Data
@NoArgsConstructor
@Accessors
(
chain
=
true
)
@TableName
(
"customer_decision_chain"
)
public
class
CustomerDecisionChain
implements
Serializable
{
private
static
final
long
serialVersionUID
=
990085082282249053L
;
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Long
id
;
/**
* 客户id
*/
private
String
customerId
;
/**
* 姓名
*/
private
String
name
;
/**
* 角色
*/
private
String
role
;
/**
* 公司/机关(工作单位)
*/
private
String
workUnit
;
/**
* 职位
*/
private
String
position
;
/**
* 联系方式
*/
private
String
contactInformation
;
/**
* 备注
*/
private
String
remark
;
private
Date
createTime
;
private
Long
updateId
;
private
Date
updateTime
;
}
dsk-system/src/main/java/com/dsk/system/domain/dto/CustomerDecisionChainSearchDto.java
0 → 100644
View file @
24da7d7f
package
com
.
dsk
.
system
.
domain
.
dto
;
import
lombok.Data
;
/**
* @author lcl
* @create 2023/5/16
*/
@Data
public
class
CustomerDecisionChainSearchDto
{
/**
* 客户id
*/
private
String
customerId
;
}
dsk-system/src/main/java/com/dsk/system/mapper/CustomerDecisionChainMapper.java
0 → 100644
View file @
24da7d7f
package
com
.
dsk
.
system
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.dsk.system.domain.CustomerDecisionChain
;
import
org.apache.ibatis.annotations.Mapper
;
/**
* 客户决策链条(CustomerDecisionChain)表数据库访问层
*
* @author makejava
* @since 2023-05-16 15:33:46
*/
@Mapper
public
interface
CustomerDecisionChainMapper
extends
BaseMapper
<
CustomerDecisionChain
>
{
}
dsk-system/src/main/java/com/dsk/system/service/ICustomerDecisionChainService.java
0 → 100644
View file @
24da7d7f
package
com
.
dsk
.
system
.
service
;
import
com.dsk.system.domain.CustomerDecisionChain
;
import
com.dsk.system.domain.dto.CustomerDecisionChainSearchDto
;
import
java.util.List
;
/**
* 客户决策链条(CustomerDecisionChain)表服务接口
*
* @author makejava
* @since 2023-05-16 15:33:45
*/
public
interface
ICustomerDecisionChainService
{
/**
* 查询数据列表
*/
List
<
CustomerDecisionChain
>
selectList
(
CustomerDecisionChainSearchDto
dto
);
/**
* 通过ID查询单条数据
*
* @param id 主键
* @return 实例对象
*/
CustomerDecisionChain
selectById
(
Long
id
);
/**
* 新增数据
*
* @param customerDecisionChain 实例对象
* @return 实例对象
*/
boolean
insert
(
CustomerDecisionChain
customerDecisionChain
);
/**
* 修改数据
*
* @param customerDecisionChain 实例对象
* @return 实例对象
*/
boolean
update
(
CustomerDecisionChain
customerDecisionChain
);
/**
* 通过主键删除数据
*
* @param id 主键
* @return 是否成功
*/
boolean
deleteById
(
Long
id
);
}
dsk-system/src/main/java/com/dsk/system/service/impl/CustomerDecisionChainServiceImpl.java
0 → 100644
View file @
24da7d7f
package
com
.
dsk
.
system
.
service
.
impl
;
import
cn.hutool.core.bean.BeanException
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.dsk.common.utils.SecurityUtils
;
import
com.dsk.system.domain.CustomerDecisionChain
;
import
com.dsk.system.domain.dto.CustomerDecisionChainSearchDto
;
import
com.dsk.system.mapper.CustomerDecisionChainMapper
;
import
com.dsk.system.service.ICustomerDecisionChainService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.ObjectUtils
;
import
javax.annotation.Resource
;
import
java.util.List
;
/**
* 客户决策链条(CustomerDecisionChain)表服务实现类
*
* @author makejava
* @since 2023-05-16 15:33:45
*/
@Slf4j
@Service
public
class
CustomerDecisionChainServiceImpl
implements
ICustomerDecisionChainService
{
@Resource
private
CustomerDecisionChainMapper
baseMapper
;
@Override
public
List
<
CustomerDecisionChain
>
selectList
(
CustomerDecisionChainSearchDto
dto
)
{
return
baseMapper
.
selectList
(
Wrappers
.<
CustomerDecisionChain
>
lambdaQuery
()
.
eq
(
CustomerDecisionChain:
:
getCustomerId
,
dto
.
getCustomerId
()));
}
/**
* 通过ID查询单条数据
*
* @param id 主键
* @return 实例对象
*/
@Override
public
CustomerDecisionChain
selectById
(
Long
id
)
{
return
baseMapper
.
selectById
(
id
);
}
/**
* 新增数据
*
* @param customerDecisionChain 实例对象
* @return 实例对象
*/
@Override
public
boolean
insert
(
CustomerDecisionChain
customerDecisionChain
)
{
verifyParameter
(
customerDecisionChain
);
return
baseMapper
.
insert
(
customerDecisionChain
)
>
0
;
}
/**
* 修改数据
*
* @param customerDecisionChain 实例对象
* @return 实例对象
*/
@Override
public
boolean
update
(
CustomerDecisionChain
customerDecisionChain
)
{
if
(
ObjectUtils
.
isEmpty
(
customerDecisionChain
.
getId
()))
throw
new
BeanException
(
"id不能为空!"
);
verifyParameter
(
customerDecisionChain
);
return
baseMapper
.
updateById
(
customerDecisionChain
)
>
0
;
}
/**
* 通过主键删除数据
*
* @param id 主键
* @return 是否成功
*/
@Override
public
boolean
deleteById
(
Long
id
)
{
return
baseMapper
.
deleteById
(
id
)
>
0
;
}
/**
* 参数验证
* @param customerDecisionChain
*/
private
void
verifyParameter
(
CustomerDecisionChain
customerDecisionChain
){
if
(
ObjectUtils
.
isEmpty
(
customerDecisionChain
.
getCustomerId
()))
throw
new
BeanException
(
"客户id不能为空!"
);
customerDecisionChain
.
setUpdateId
(
SecurityUtils
.
getUserId
());
}
}
dsk-system/src/main/resources/mapper/CustomerDecisionChainMapper.xml
0 → 100644
View file @
24da7d7f
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.dsk.system.mapper.CustomerDecisionChainMapper"
>
<resultMap
type=
"com.dsk.system.domain.CustomerDecisionChain"
id=
"CustomerDecisionChainMap"
>
<result
property=
"id"
column=
"id"
jdbcType=
"INTEGER"
/>
<result
property=
"customerId"
column=
"customer_id"
jdbcType=
"VARCHAR"
/>
<result
property=
"name"
column=
"name"
jdbcType=
"VARCHAR"
/>
<result
property=
"role"
column=
"role"
jdbcType=
"VARCHAR"
/>
<result
property=
"workUnit"
column=
"work_unit"
jdbcType=
"VARCHAR"
/>
<result
property=
"position"
column=
"position"
jdbcType=
"VARCHAR"
/>
<result
property=
"contactInformation"
column=
"contact_information"
jdbcType=
"VARCHAR"
/>
<result
property=
"remark"
column=
"remark"
jdbcType=
"VARCHAR"
/>
<result
property=
"createTime"
column=
"create_time"
jdbcType=
"TIMESTAMP"
/>
<result
property=
"updateId"
column=
"update_id"
jdbcType=
"INTEGER"
/>
<result
property=
"updateTime"
column=
"update_time"
jdbcType=
"TIMESTAMP"
/>
</resultMap>
</mapper>
dsk-system/src/main/resources/mapper/system/customer/CustomerMapper.xml
View file @
24da7d7f
...
...
@@ -2,29 +2,6 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.dsk.system.mapper.CustomerMapper"
>
<resultMap
type=
"com.dsk.system.domain.Customer"
id=
"CustomerMap"
>
<result
property=
"customerId"
column=
"customer_id"
jdbcType=
"VARCHAR"
/>
<result
property=
"companyId"
column=
"company_id"
jdbcType=
"INTEGER"
/>
<result
property=
"companyName"
column=
"company_name"
jdbcType=
"VARCHAR"
/>
<result
property=
"legalPerson"
column=
"legal_person"
jdbcType=
"VARCHAR"
/>
<result
property=
"registerCapitalStr"
column=
"register_capital_str"
jdbcType=
"VARCHAR"
/>
<result
property=
"registerCapital"
column=
"register_capital"
jdbcType=
"NUMERIC"
/>
<result
property=
"companyNature"
column=
"company_nature"
jdbcType=
"VARCHAR"
/>
<result
property=
"companyLevel"
column=
"company_level"
jdbcType=
"VARCHAR"
/>
<result
property=
"creditLevel"
column=
"credit_level"
jdbcType=
"VARCHAR"
/>
<result
property=
"superCompany"
column=
"super_company"
jdbcType=
"VARCHAR"
/>
<result
property=
"isOn"
column=
"is_on"
jdbcType=
"INTEGER"
/>
<result
property=
"isMajor"
column=
"is_major"
jdbcType=
"INTEGER"
/>
<result
property=
"companyAttribute"
column=
"company_attribute"
jdbcType=
"VARCHAR"
/>
<result
property=
"mainBusiness"
column=
"main_business"
jdbcType=
"VARCHAR"
/>
<result
property=
"businessScope"
column=
"business_scope"
jdbcType=
"VARCHAR"
/>
<result
property=
"lastFollowTime"
column=
"last_follow_time"
jdbcType=
"TIMESTAMP"
/>
<result
property=
"createId"
column=
"create_id"
jdbcType=
"INTEGER"
/>
<result
property=
"createTime"
column=
"create_time"
jdbcType=
"TIMESTAMP"
/>
<result
property=
"updateId"
column=
"update_id"
jdbcType=
"INTEGER"
/>
<result
property=
"updateTime"
column=
"update_time"
jdbcType=
"TIMESTAMP"
/>
</resultMap>
</mapper>
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