Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
R
ry-crm
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
田光明
ry-crm
Commits
bea46256
Commit
bea46256
authored
Jul 17, 2025
by
EDY
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化
parent
2fee52f9
Show whitespace changes
Inline
Side-by-side
Showing
26 changed files
with
803 additions
and
35 deletions
+803
-35
BaseCustomInfoController.java
...oyi/web/controller/business/BaseCustomInfoController.java
+1
-0
BasePaymentCollectionInfoController.java
...troller/business/BasePaymentCollectionInfoController.java
+3
-0
BasePerformanceCompleteInfoController.java
...oller/business/BasePerformanceCompleteInfoController.java
+106
-0
CommonController.java
...ava/com/ruoyi/web/controller/common/CommonController.java
+1
-1
BaiduClueController.java
...m/ruoyi/web/controller/compoment/BaiduClueController.java
+73
-0
ry-template.docx
ruoyi-admin/src/main/resources/ry-template.docx
+0
-0
zkrt-template.docx
ruoyi-admin/src/main/resources/zkrt-template.docx
+0
-0
zkry-template.docx
ruoyi-admin/src/main/resources/zkry-template.docx
+0
-0
zkwl-template.docx
ruoyi-admin/src/main/resources/zkwl-template.docx
+0
-0
SecurityConfig.java
.../main/java/com/ruoyi/framework/config/SecurityConfig.java
+1
-1
BaseCustomInfo.java
...java/com/ruoyi/system/domain/business/BaseCustomInfo.java
+6
-2
BasePerformanceCompleteInfo.java
...i/system/domain/business/BasePerformanceCompleteInfo.java
+57
-0
ContractCollectVo.java
...om/ruoyi/system/domain/business/vo/ContractCollectVo.java
+3
-0
PerformanceCompleteVo.java
...uoyi/system/domain/business/vo/PerformanceCompleteVo.java
+52
-0
BasePerformanceCompleteInfoMapper.java
...em/mapper/business/BasePerformanceCompleteInfoMapper.java
+62
-0
IBasePerformanceCompleteInfoService.java
...service/business/IBasePerformanceCompleteInfoService.java
+65
-0
BaseContractInfoServiceImpl.java
...em/service/business/impl/BaseContractInfoServiceImpl.java
+16
-1
BaseCustomFollowRecordServiceImpl.java
...vice/business/impl/BaseCustomFollowRecordServiceImpl.java
+14
-0
BaseInvoiceInfoServiceImpl.java
...tem/service/business/impl/BaseInvoiceInfoServiceImpl.java
+13
-23
BasePaymentCollectionInfoServiceImpl.java
...e/business/impl/BasePaymentCollectionInfoServiceImpl.java
+25
-0
BasePerformanceCompleteInfoServiceImpl.java
...business/impl/BasePerformanceCompleteInfoServiceImpl.java
+148
-0
SysUserServiceImpl.java
...ava/com/ruoyi/system/service/impl/SysUserServiceImpl.java
+37
-0
BaseCustomInfoMapper.xml
...c/main/resources/mapper/business/BaseCustomInfoMapper.xml
+6
-4
BaseInvoiceInfoMapper.xml
.../main/resources/mapper/business/BaseInvoiceInfoMapper.xml
+5
-1
BasePaymentCollectionInfoMapper.xml
...urces/mapper/business/BasePaymentCollectionInfoMapper.xml
+2
-2
BasePerformanceCompleteInfoMapper.xml
...ces/mapper/business/BasePerformanceCompleteInfoMapper.xml
+107
-0
No files found.
ruoyi-admin/src/main/java/com/ruoyi/web/controller/business/BaseCustomInfoController.java
View file @
bea46256
...
...
@@ -82,6 +82,7 @@ public class BaseCustomInfoController extends BaseController
baseCustomInfo
.
setFzr
(
getLoginUser
().
getUser
().
getNickName
());
baseCustomInfo
.
setCreateTime
(
new
Date
());
baseCustomInfo
.
setCreateBy
(
getUsername
());
baseCustomInfo
.
setUpdateTime
(
new
Date
());
return
toAjax
(
baseCustomInfoService
.
insertBaseCustomInfo
(
baseCustomInfo
));
}
...
...
ruoyi-admin/src/main/java/com/ruoyi/web/controller/business/BasePaymentCollectionInfoController.java
View file @
bea46256
...
...
@@ -78,6 +78,8 @@ public class BasePaymentCollectionInfoController extends BaseController
@PostMapping
public
AjaxResult
add
(
@RequestBody
BasePaymentCollectionInfo
basePaymentCollectionInfo
)
{
basePaymentCollectionInfo
.
setCreateBy
(
getLoginUser
().
getUser
().
getNickName
());
basePaymentCollectionInfo
.
setUpdateBy
(
getLoginUser
().
getUser
().
getNickName
());
return
toAjax
(
basePaymentCollectionInfoService
.
insertBasePaymentCollectionInfo
(
basePaymentCollectionInfo
));
}
...
...
@@ -89,6 +91,7 @@ public class BasePaymentCollectionInfoController extends BaseController
@PutMapping
public
AjaxResult
edit
(
@RequestBody
BasePaymentCollectionInfo
basePaymentCollectionInfo
)
{
basePaymentCollectionInfo
.
setUpdateBy
(
getLoginUser
().
getUser
().
getNickName
());
return
toAjax
(
basePaymentCollectionInfoService
.
updateBasePaymentCollectionInfo
(
basePaymentCollectionInfo
));
}
...
...
ruoyi-admin/src/main/java/com/ruoyi/web/controller/business/BasePerformanceCompleteInfoController.java
0 → 100644
View file @
bea46256
package
com
.
ruoyi
.
web
.
controller
.
business
;
import
java.util.List
;
import
javax.servlet.http.HttpServletResponse
;
import
com.ruoyi.system.domain.business.BasePerformanceCompleteInfo
;
import
com.ruoyi.system.domain.business.vo.PerformanceCompleteVo
;
import
com.ruoyi.system.service.business.IBasePerformanceCompleteInfoService
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.PutMapping
;
import
org.springframework.web.bind.annotation.DeleteMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.ruoyi.common.annotation.Log
;
import
com.ruoyi.common.core.controller.BaseController
;
import
com.ruoyi.common.core.domain.AjaxResult
;
import
com.ruoyi.common.enums.BusinessType
;
import
com.ruoyi.common.utils.poi.ExcelUtil
;
/**
* 业绩目标Controller
*
* @author gm
* @date 2025-06-06
*/
@RestController
@RequestMapping
(
"/performance/complete"
)
public
class
BasePerformanceCompleteInfoController
extends
BaseController
{
@Autowired
private
IBasePerformanceCompleteInfoService
basePerformanceCompleteInfoService
;
/**
* 查询业绩目标列表
*/
@PreAuthorize
(
"@ss.hasPermi('system:performance:list')"
)
@GetMapping
(
"/list"
)
public
AjaxResult
list
(
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
)
{
// startPage();
List
<
PerformanceCompleteVo
>
list
=
basePerformanceCompleteInfoService
.
selectBasePerformanceCompleteInfoList
(
basePerformanceCompleteInfo
);
return
success
(
list
);
}
/**
* 导出业绩目标列表
*/
@PreAuthorize
(
"@ss.hasPermi('system:performance:export')"
)
@Log
(
title
=
"业绩目标"
,
businessType
=
BusinessType
.
EXPORT
)
@PostMapping
(
"/export"
)
public
void
export
(
HttpServletResponse
response
,
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
)
{
List
<
BasePerformanceCompleteInfo
>
list
=
basePerformanceCompleteInfoService
.
selectBasePerformanceCompleteInfos
(
basePerformanceCompleteInfo
);
ExcelUtil
<
BasePerformanceCompleteInfo
>
util
=
new
ExcelUtil
<
BasePerformanceCompleteInfo
>(
BasePerformanceCompleteInfo
.
class
);
util
.
exportExcel
(
response
,
list
,
"业绩目标数据"
);
}
/**
* 获取业绩目标详细信息
*/
@PreAuthorize
(
"@ss.hasPermi('system:performance:query')"
)
@GetMapping
(
value
=
"/{id}"
)
public
AjaxResult
getInfo
(
@PathVariable
(
"id"
)
Long
id
)
{
return
success
(
basePerformanceCompleteInfoService
.
selectBasePerformanceCompleteInfoById
(
id
));
}
/**
* 新增业绩目标
*/
@PreAuthorize
(
"@ss.hasPermi('system:performance:add')"
)
@Log
(
title
=
"业绩目标"
,
businessType
=
BusinessType
.
INSERT
)
@PostMapping
public
AjaxResult
add
(
@RequestBody
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
)
{
return
toAjax
(
basePerformanceCompleteInfoService
.
insertBasePerformanceCompleteInfo
(
basePerformanceCompleteInfo
));
}
/**
* 修改业绩目标
*/
@PreAuthorize
(
"@ss.hasPermi('system:performance:edit')"
)
@Log
(
title
=
"业绩目标"
,
businessType
=
BusinessType
.
UPDATE
)
@PutMapping
public
AjaxResult
edit
(
@RequestBody
PerformanceCompleteVo
performanceCompleteVo
)
{
basePerformanceCompleteInfoService
.
updateBasePerformanceCompleteInfo
(
performanceCompleteVo
);
return
success
();
}
/**
* 删除业绩目标
*/
@PreAuthorize
(
"@ss.hasPermi('system:performance:remove')"
)
@Log
(
title
=
"业绩目标"
,
businessType
=
BusinessType
.
DELETE
)
@DeleteMapping
(
"/{ids}"
)
public
AjaxResult
remove
(
@PathVariable
Long
[]
ids
)
{
return
toAjax
(
basePerformanceCompleteInfoService
.
deleteBasePerformanceCompleteInfoByIds
(
ids
));
}
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java
View file @
bea46256
...
...
@@ -37,7 +37,7 @@ public class CommonController
private
static
final
String
FILE_DELIMETER
=
","
;
private
static
final
String
SERVER_URL
=
"http
://ly.yoloapp.cn/
"
;
private
static
final
String
SERVER_URL
=
"http
s://crm.cstcglobal.com/ry-crm
"
;
/**
* 通用下载请求
...
...
ruoyi-admin/src/main/java/com/ruoyi/web/controller/compoment/BaiduClueController.java
0 → 100644
View file @
bea46256
package
com
.
ruoyi
.
web
.
controller
.
compoment
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.alibaba.fastjson2.JSONArray
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.ruoyi.common.core.domain.AjaxResult
;
import
com.ruoyi.system.domain.business.BaseCustomInfo
;
import
com.ruoyi.system.service.business.IBaseCustomInfoService
;
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
;
@RestController
(
""
)
@RequestMapping
(
"baidu/clue"
)
public
class
BaiduClueController
{
@Autowired
private
IBaseCustomInfoService
iBaseCustomInfoService
;
private
static
final
String
TOKEN
=
"A1B2C3D4E5F6"
;
@PostMapping
(
value
=
"/msg"
)
public
AjaxResult
msg
(
@RequestBody
JSONObject
json
)
{
String
token
=
json
.
getString
(
"token"
);
if
(
token
==
null
||
!
token
.
equals
(
TOKEN
))
{
return
AjaxResult
.
error
(
"token不匹配"
);
}
BaseCustomInfo
baseCustomInfo
=
new
BaseCustomInfo
();
JSONArray
from
=
json
.
getJSONArray
(
"formDetail"
);
if
(
ObjectUtil
.
isNotEmpty
(
from
))
{
for
(
int
i
=
0
;
i
<
from
.
size
();
i
++)
{
JSONObject
data
=
from
.
getJSONObject
(
i
);
if
(
data
.
getString
(
"type"
).
equals
(
"name"
))
{
baseCustomInfo
.
setKhxm
(
data
.
getString
(
"value"
));
}
}
}
String
ucName
=
json
.
getString
(
"ucName"
);
if
(
ucName
.
contains
(
"软艺"
))
{
baseCustomInfo
.
setKhly
(
1
);
}
if
(
ucName
.
contains
(
"软通"
))
{
baseCustomInfo
.
setKhly
(
2
);
}
if
(
ucName
.
contains
(
"网联"
))
{
baseCustomInfo
.
setKhly
(
3
);
}
if
(
ucName
.
contains
(
"软盈"
))
{
baseCustomInfo
.
setKhly
(
4
);
}
baseCustomInfo
.
setSjh
(
json
.
getString
(
"cluePhoneNumber"
));
baseCustomInfo
.
setWx
(
json
.
getString
(
"wechatAccount"
));
baseCustomInfo
.
setKhdz
(
json
.
getString
(
"areaProvince"
)+
"-"
+
json
.
getString
(
"area"
));
baseCustomInfo
.
setKhxq
(
json
.
getString
(
"searchWord"
));
baseCustomInfo
.
setGjc
(
json
.
getString
(
"keyword"
));
baseCustomInfo
.
setKhzt
(
1
);
baseCustomInfo
.
setGs
(
1
);
String
commitTime
=
json
.
getString
(
"commitTime"
);
baseCustomInfo
.
setCreateTime
(
DateUtil
.
parse
(
commitTime
));
baseCustomInfo
.
setUpdateTime
(
DateUtil
.
parse
(
commitTime
));
baseCustomInfo
.
setCreateBy
(
"SYSTEM"
);
baseCustomInfo
.
setUpdateBy
(
"SYSTEM"
);
iBaseCustomInfoService
.
insertBaseCustomInfo
(
baseCustomInfo
);
return
AjaxResult
.
success
();
}
}
ruoyi-admin/src/main/resources/ry-template.docx
0 → 100644
View file @
bea46256
File added
ruoyi-admin/src/main/resources/zkrt-template.docx
0 → 100644
View file @
bea46256
File added
ruoyi-admin/src/main/resources/zkry-template.docx
0 → 100644
View file @
bea46256
File added
ruoyi-admin/src/main/resources/zkwl-template.docx
0 → 100644
View file @
bea46256
File added
ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
View file @
bea46256
...
...
@@ -111,7 +111,7 @@ public class SecurityConfig
.
authorizeHttpRequests
((
requests
)
->
{
permitAllUrl
.
getUrls
().
forEach
(
url
->
requests
.
antMatchers
(
url
).
permitAll
());
// 对于登录login 注册register 验证码captchaImage 允许匿名访问
requests
.
antMatchers
(
"/login"
,
"/register"
,
"/captchaImage"
).
permitAll
()
requests
.
antMatchers
(
"/login"
,
"/register"
,
"/captchaImage"
,
"/baidu/clue/msg"
).
permitAll
()
// 静态资源,可匿名访问
.
antMatchers
(
HttpMethod
.
GET
,
"/"
,
"/*.html"
,
"/**/*.html"
,
"/**/*.css"
,
"/**/*.js"
,
"/profile/**"
).
permitAll
()
.
antMatchers
(
"/swagger-ui.html"
,
"/swagger-resources/**"
,
"/webjars/**"
,
"/*/api-docs"
,
"/druid/**"
).
permitAll
()
...
...
ruoyi-system/src/main/java/com/ruoyi/system/domain/business/BaseCustomInfo.java
View file @
bea46256
...
...
@@ -34,7 +34,7 @@ public class BaseCustomInfo extends BaseEntity
/** 客户来源 */
@Excel
(
name
=
"客户来源"
,
readConverterExp
=
"1=软艺,2=软通,3=网联,4=软盈,5=渠道"
)
private
Long
khly
;
private
Integer
khly
;
/** 客户类型 */
@Excel
(
name
=
"客户类型"
,
readConverterExp
=
"1=公司,2=个人"
)
...
...
@@ -60,6 +60,10 @@ public class BaseCustomInfo extends BaseEntity
@Excel
(
name
=
"客户需求描述"
)
private
String
khxq
;
/** 关键词 */
@Excel
(
name
=
"关键词"
)
private
String
gjc
;
/** 客户行业 */
@Excel
(
name
=
"客户行业"
,
readConverterExp
=
"1=农林牧渔,2=采矿业,3=制造业,4=水电燃气,5=建筑业,6=批发零售,7=交通运输,8=住宿餐饮,9=互联网,10=房地产业,11=商务服务,12=科技服务,13=居民服务,14=水利公共,15=公共卫生,16=文体娱乐,17=公共机构,18=国际组织,19=其他,20=教育培训"
)
private
String
khhy
;
...
...
@@ -70,7 +74,7 @@ public class BaseCustomInfo extends BaseEntity
/** 客户状态 */
@Excel
(
name
=
"客户状态"
,
readConverterExp
=
"1=未联系,2=已上门,3=已电话,4=已微信,5=已成交,6=已签合同,7=已终止,8=商务谈判"
)
private
Long
khzt
;
private
Integer
khzt
;
/** 归属 1 个人 2 部门 */
//@Excel(name = "归属 1 个人 2 部门")
...
...
ruoyi-system/src/main/java/com/ruoyi/system/domain/business/BasePerformanceCompleteInfo.java
0 → 100644
View file @
bea46256
package
com
.
ruoyi
.
system
.
domain
.
business
;
import
java.math.BigDecimal
;
import
lombok.Data
;
import
org.apache.commons.lang3.builder.ToStringBuilder
;
import
org.apache.commons.lang3.builder.ToStringStyle
;
import
com.ruoyi.common.annotation.Excel
;
import
com.ruoyi.common.core.domain.BaseEntity
;
/**
* 业绩目标对象 base_performance_complete_info
*
* @author gm
* @date 2025-06-06
*/
@Data
public
class
BasePerformanceCompleteInfo
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
1L
;
/** 主键id */
private
Long
id
;
/** 目标类型 1 个人 2 公司 */
@Excel
(
name
=
"目标类型 1 个人 2 公司"
)
private
Integer
targetType
;
/** 用户id */
@Excel
(
name
=
"用户id"
)
private
Long
userId
;
/** 用户名 */
@Excel
(
name
=
"用户名"
)
private
String
userName
;
/** 年份 */
@Excel
(
name
=
"年份"
)
private
Integer
year
;
/** 月份 */
@Excel
(
name
=
"月份"
)
private
Integer
month
;
/** 目标 */
@Excel
(
name
=
"目标"
)
private
BigDecimal
target
;
/** 已完成 */
@Excel
(
name
=
"已完成"
)
private
BigDecimal
complete
;
/** 完成率 */
@Excel
(
name
=
"完成率"
)
private
BigDecimal
completeRate
;
}
ruoyi-system/src/main/java/com/ruoyi/system/domain/business/vo/ContractCollectVo.java
View file @
bea46256
...
...
@@ -19,4 +19,7 @@ public class ContractCollectVo {
// 开票金额
private
BigDecimal
makeInvoiceAmount
=
BigDecimal
.
ZERO
;
// 已开票税额
private
BigDecimal
makeInvoiceTaxAmount
=
BigDecimal
.
ZERO
;
}
ruoyi-system/src/main/java/com/ruoyi/system/domain/business/vo/PerformanceCompleteVo.java
0 → 100644
View file @
bea46256
package
com
.
ruoyi
.
system
.
domain
.
business
.
vo
;
import
com.ruoyi.common.core.domain.BaseEntity
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.util.List
;
/**
* 业绩目标对象 base_performance_complete_info
*
* @author gm
* @date 2025-06-06
*/
@Data
public
class
PerformanceCompleteVo
extends
BaseEntity
{
/** 目标类型 1 个人 2 公司 */
private
Integer
targetType
;
/** 用户名 */
private
String
userName
;
// 部门名称
private
String
deptName
;
/** 年份 */
private
Integer
year
;
private
List
<
PerformanceMonth
>
monthData
;
@Data
public
static
class
PerformanceMonth
{
private
Long
id
;
/** 月份 */
private
Integer
month
;
/** 目标 */
private
BigDecimal
target
;
/** 已完成 */
private
BigDecimal
complete
;
/** 完成率 */
private
BigDecimal
completeRate
;
}
}
ruoyi-system/src/main/java/com/ruoyi/system/mapper/business/BasePerformanceCompleteInfoMapper.java
0 → 100644
View file @
bea46256
package
com
.
ruoyi
.
system
.
mapper
.
business
;
import
com.ruoyi.system.domain.business.BasePerformanceCompleteInfo
;
import
java.util.List
;
/**
* 业绩目标Mapper接口
*
* @author gm
* @date 2025-06-06
*/
public
interface
BasePerformanceCompleteInfoMapper
{
/**
* 查询业绩目标
*
* @param id 业绩目标主键
* @return 业绩目标
*/
public
BasePerformanceCompleteInfo
selectBasePerformanceCompleteInfoById
(
Long
id
);
/**
* 查询业绩目标列表
*
* @param basePerformanceCompleteInfo 业绩目标
* @return 业绩目标集合
*/
public
List
<
BasePerformanceCompleteInfo
>
selectBasePerformanceCompleteInfoList
(
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
);
/**
* 新增业绩目标
*
* @param basePerformanceCompleteInfo 业绩目标
* @return 结果
*/
public
int
insertBasePerformanceCompleteInfo
(
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
);
/**
* 修改业绩目标
*
* @param basePerformanceCompleteInfo 业绩目标
* @return 结果
*/
public
int
updateBasePerformanceCompleteInfo
(
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
);
/**
* 删除业绩目标
*
* @param id 业绩目标主键
* @return 结果
*/
public
int
deleteBasePerformanceCompleteInfoById
(
Long
id
);
/**
* 批量删除业绩目标
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public
int
deleteBasePerformanceCompleteInfoByIds
(
Long
[]
ids
);
}
ruoyi-system/src/main/java/com/ruoyi/system/service/business/IBasePerformanceCompleteInfoService.java
0 → 100644
View file @
bea46256
package
com
.
ruoyi
.
system
.
service
.
business
;
import
com.ruoyi.system.domain.business.BasePerformanceCompleteInfo
;
import
com.ruoyi.system.domain.business.vo.PerformanceCompleteVo
;
import
java.util.List
;
/**
* 业绩目标Service接口
*
* @author gm
* @date 2025-06-06
*/
public
interface
IBasePerformanceCompleteInfoService
{
/**
* 查询业绩目标
*
* @param id 业绩目标主键
* @return 业绩目标
*/
public
BasePerformanceCompleteInfo
selectBasePerformanceCompleteInfoById
(
Long
id
);
/**
* 查询业绩目标列表
*
* @param basePerformanceCompleteInfo 业绩目标
* @return 业绩目标集合
*/
public
List
<
PerformanceCompleteVo
>
selectBasePerformanceCompleteInfoList
(
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
);
/**
* 新增业绩目标
*
* @param basePerformanceCompleteInfo 业绩目标
* @return 结果
*/
public
int
insertBasePerformanceCompleteInfo
(
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
);
/**
* 修改业绩目标
*
* @param basePerformanceCompleteInfo 业绩目标
* @return 结果
*/
public
void
updateBasePerformanceCompleteInfo
(
PerformanceCompleteVo
performanceCompleteVo
);
/**
* 批量删除业绩目标
*
* @param ids 需要删除的业绩目标主键集合
* @return 结果
*/
public
int
deleteBasePerformanceCompleteInfoByIds
(
Long
[]
ids
);
/**
* 删除业绩目标信息
*
* @param id 业绩目标主键
* @return 结果
*/
public
int
deleteBasePerformanceCompleteInfoById
(
Long
id
);
List
<
BasePerformanceCompleteInfo
>
selectBasePerformanceCompleteInfos
(
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
);
}
ruoyi-system/src/main/java/com/ruoyi/system/service/business/impl/BaseContractInfoServiceImpl.java
View file @
bea46256
...
...
@@ -17,6 +17,7 @@ import com.ruoyi.common.utils.MoneyConverter;
import
com.ruoyi.system.domain.business.BaseContractAuditRecord
;
import
com.ruoyi.system.domain.business.BaseContractInfo
;
import
com.ruoyi.system.domain.business.BaseContractPeriodsInfo
;
import
com.ruoyi.system.domain.business.BaseInvoiceInfo
;
import
com.ruoyi.system.domain.business.vo.ContractCollectVo
;
import
com.ruoyi.system.mapper.SysRoleMapper
;
import
com.ruoyi.system.mapper.business.BaseContractAuditRecordMapper
;
...
...
@@ -196,6 +197,20 @@ public class BaseContractInfoServiceImpl implements IBaseContractInfoService {
if
(
ObjectUtil
.
isNotNull
(
invoiceAmount
))
{
contractCollectVo
.
setMakeInvoiceAmount
(
invoiceAmount
);
}
if
(
contractId
!=
null
)
{
BigDecimal
makeInvoiceTaxAmount
=
contractCollectVo
.
getMakeInvoiceTaxAmount
();
BaseInvoiceInfo
baseInvoiceInfo
=
new
BaseInvoiceInfo
();
baseInvoiceInfo
.
setContractId
(
contractId
);
List
<
BaseInvoiceInfo
>
baseInvoiceInfos
=
baseInvoiceInfoMapper
.
selectBaseInvoiceInfoList
(
baseInvoiceInfo
);
if
(!
baseInvoiceInfos
.
isEmpty
())
{
for
(
BaseInvoiceInfo
invoiceInfo
:
baseInvoiceInfos
)
{
if
(
invoiceInfo
.
getFpzt
()
==
3
)
{
makeInvoiceTaxAmount
=
makeInvoiceTaxAmount
.
add
(
invoiceInfo
.
getKpje
().
multiply
(
invoiceInfo
.
getFpsl
()).
divide
(
BigDecimal
.
valueOf
(
100
)));
}
}
}
contractCollectVo
.
setMakeInvoiceTaxAmount
(
makeInvoiceTaxAmount
);
}
}
else
{
contractCollectVo
=
new
ContractCollectVo
();
}
...
...
@@ -207,7 +222,7 @@ public class BaseContractInfoServiceImpl implements IBaseContractInfoService {
List
<
BaseContractPeriodsInfo
>
result
=
new
ArrayList
<>();
String
fkbl
=
baseContractInfo
.
getFkbl
();
String
newStr
=
fkbl
.
replaceAll
(
","
,
""
);
String
newStr
=
fkbl
.
replaceAll
(
","
,
""
);
String
[]
split
=
newStr
.
split
(
"%"
);
for
(
int
i
=
0
;
i
<
split
.
length
;
i
++)
{
BaseContractPeriodsInfo
baseContractPeriod
=
new
BaseContractPeriodsInfo
();
...
...
ruoyi-system/src/main/java/com/ruoyi/system/service/business/impl/BaseCustomFollowRecordServiceImpl.java
View file @
bea46256
...
...
@@ -3,7 +3,9 @@ package com.ruoyi.system.service.business.impl;
import
java.util.List
;
import
com.ruoyi.common.utils.DateUtils
;
import
com.ruoyi.system.domain.business.BaseCustomFollowRecord
;
import
com.ruoyi.system.domain.business.BaseCustomInfo
;
import
com.ruoyi.system.mapper.business.BaseCustomFollowRecordMapper
;
import
com.ruoyi.system.mapper.business.BaseCustomInfoMapper
;
import
com.ruoyi.system.service.business.IBaseCustomFollowRecordService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
@@ -21,6 +23,9 @@ public class BaseCustomFollowRecordServiceImpl implements IBaseCustomFollowRecor
@Autowired
private
BaseCustomFollowRecordMapper
baseCustomFollowRecordMapper
;
@Autowired
private
BaseCustomInfoMapper
baseCustomInfoMapper
;
/**
* 查询客户跟踪记录
*
...
...
@@ -54,6 +59,15 @@ public class BaseCustomFollowRecordServiceImpl implements IBaseCustomFollowRecor
@Override
public
int
insertBaseCustomFollowRecord
(
BaseCustomFollowRecord
baseCustomFollowRecord
)
{
BaseCustomFollowRecord
customFollowRecord
=
new
BaseCustomFollowRecord
();
customFollowRecord
.
setCustomId
(
baseCustomFollowRecord
.
getCustomId
());
List
<
BaseCustomFollowRecord
>
baseCustomFollowRecords
=
baseCustomFollowRecordMapper
.
selectBaseCustomFollowRecordList
(
customFollowRecord
);
BaseCustomInfo
baseCustomInfo
=
baseCustomInfoMapper
.
selectBaseCustomInfoById
(
baseCustomFollowRecord
.
getCustomId
());
if
(
baseCustomFollowRecords
.
isEmpty
())
{
baseCustomInfo
.
setFzr
(
baseCustomFollowRecord
.
getGjr
());
baseCustomInfoMapper
.
updateBaseCustomInfo
(
baseCustomInfo
);
}
baseCustomFollowRecord
.
setCreateTime
(
DateUtils
.
getNowDate
());
return
baseCustomFollowRecordMapper
.
insertBaseCustomFollowRecord
(
baseCustomFollowRecord
);
}
...
...
ruoyi-system/src/main/java/com/ruoyi/system/service/business/impl/BaseInvoiceInfoServiceImpl.java
View file @
bea46256
...
...
@@ -28,8 +28,7 @@ import org.springframework.stereotype.Service;
* @date 2025-02-17
*/
@Service
public
class
BaseInvoiceInfoServiceImpl
implements
IBaseInvoiceInfoService
{
public
class
BaseInvoiceInfoServiceImpl
implements
IBaseInvoiceInfoService
{
@Autowired
private
BaseInvoiceInfoMapper
baseInvoiceInfoMapper
;
...
...
@@ -49,8 +48,7 @@ public class BaseInvoiceInfoServiceImpl implements IBaseInvoiceInfoService
* @return 开票信息
*/
@Override
public
BaseInvoiceInfo
selectBaseInvoiceInfoById
(
Long
id
)
{
public
BaseInvoiceInfo
selectBaseInvoiceInfoById
(
Long
id
)
{
return
baseInvoiceInfoMapper
.
selectBaseInvoiceInfoById
(
id
);
}
...
...
@@ -61,8 +59,7 @@ public class BaseInvoiceInfoServiceImpl implements IBaseInvoiceInfoService
* @return 开票信息
*/
@Override
public
List
<
BaseInvoiceInfo
>
selectBaseInvoiceInfoList
(
BaseInvoiceInfo
baseInvoiceInfo
)
{
public
List
<
BaseInvoiceInfo
>
selectBaseInvoiceInfoList
(
BaseInvoiceInfo
baseInvoiceInfo
)
{
List
<
BaseInvoiceInfo
>
baseInvoiceInfos
=
baseInvoiceInfoMapper
.
selectBaseInvoiceInfoList
(
baseInvoiceInfo
);
for
(
BaseInvoiceInfo
invoiceInfo
:
baseInvoiceInfos
)
{
BaseInvoiceAuditRecord
baseInvoiceAuditRecord
=
new
BaseInvoiceAuditRecord
();
...
...
@@ -80,8 +77,7 @@ public class BaseInvoiceInfoServiceImpl implements IBaseInvoiceInfoService
* @return 结果
*/
@Override
public
int
insertBaseInvoiceInfo
(
BaseInvoiceInfo
baseInvoiceInfo
)
{
public
int
insertBaseInvoiceInfo
(
BaseInvoiceInfo
baseInvoiceInfo
)
{
baseInvoiceInfo
.
setCreateTime
(
DateUtils
.
getNowDate
());
BasePaymentCollectionInfo
basePaymentCollectionInfo
=
basePaymentCollectionInfoMapper
.
selectBasePaymentCollectionInfoById
(
baseInvoiceInfo
.
getPaymentId
());
baseInvoiceInfo
.
setFkfs
(
basePaymentCollectionInfo
.
getHkfs
());
...
...
@@ -96,8 +92,8 @@ public class BaseInvoiceInfoServiceImpl implements IBaseInvoiceInfoService
* @return 结果
*/
@Override
public
int
updateBaseInvoiceInfo
(
BaseInvoiceInfo
baseInvoiceInfo
,
SysUser
user
)
{
public
int
updateBaseInvoiceInfo
(
BaseInvoiceInfo
baseInvoiceInfo
,
SysUser
user
)
{
BaseInvoiceInfo
oldBaseInvoiceInfo
=
baseInvoiceInfoMapper
.
selectBaseInvoiceInfoById
(
baseInvoiceInfo
.
getId
());
if
(
baseInvoiceInfo
.
getFpzt
()
!=
null
&&
baseInvoiceInfo
.
getFpzt
()
==
2
)
{
BaseInvoiceAuditRecord
baseInvoiceAuditRecord
=
new
BaseInvoiceAuditRecord
();
baseInvoiceAuditRecord
.
setInvoiceId
(
baseInvoiceInfo
.
getId
());
...
...
@@ -126,15 +122,11 @@ public class BaseInvoiceInfoServiceImpl implements IBaseInvoiceInfoService
baseInvoiceInfo
.
setShrId
(
user
.
getUserId
());
baseInvoiceInfo
.
setShrName
(
user
.
getNickName
());
BasePaymentCollectionInfo
basePayment
=
new
BasePaymentCollectionInfo
();
basePayment
.
setInvoiceId
(
baseInvoiceInfo
.
getId
());
List
<
BasePaymentCollectionInfo
>
basePaymentCollectionInfos
=
basePaymentCollectionInfoMapper
.
selectBasePaymentCollectionInfoList
(
basePayment
);
if
(
ObjectUtil
.
isNotEmpty
(
basePaymentCollectionInfos
))
{
for
(
BasePaymentCollectionInfo
basePaymentCollectionInfo
:
basePaymentCollectionInfos
)
{
basePaymentCollectionInfo
.
setKpzt
(
1
);
basePaymentCollectionInfo
.
setUpdateBy
(
user
.
getNickName
());
basePaymentCollectionInfoMapper
.
updateBasePaymentCollectionInfo
(
basePaymentCollectionInfo
);
}
BasePaymentCollectionInfo
basePaymentCollectionInfo1
=
basePaymentCollectionInfoMapper
.
selectBasePaymentCollectionInfoById
(
oldBaseInvoiceInfo
.
getPaymentId
());
if
(
ObjectUtil
.
isNotNull
(
basePaymentCollectionInfo1
))
{
basePaymentCollectionInfo1
.
setKpzt
(
1
);
basePaymentCollectionInfo1
.
setUpdateBy
(
user
.
getNickName
());
basePaymentCollectionInfoMapper
.
updateBasePaymentCollectionInfo
(
basePaymentCollectionInfo1
);
}
}
...
...
@@ -162,8 +154,7 @@ public class BaseInvoiceInfoServiceImpl implements IBaseInvoiceInfoService
* @return 结果
*/
@Override
public
int
deleteBaseInvoiceInfoByIds
(
Long
[]
ids
)
{
public
int
deleteBaseInvoiceInfoByIds
(
Long
[]
ids
)
{
return
baseInvoiceInfoMapper
.
deleteBaseInvoiceInfoByIds
(
ids
);
}
...
...
@@ -174,8 +165,7 @@ public class BaseInvoiceInfoServiceImpl implements IBaseInvoiceInfoService
* @return 结果
*/
@Override
public
int
deleteBaseInvoiceInfoById
(
Long
id
)
{
public
int
deleteBaseInvoiceInfoById
(
Long
id
)
{
return
baseInvoiceInfoMapper
.
deleteBaseInvoiceInfoById
(
id
);
}
...
...
ruoyi-system/src/main/java/com/ruoyi/system/service/business/impl/BasePaymentCollectionInfoServiceImpl.java
View file @
bea46256
package
com
.
ruoyi
.
system
.
service
.
business
.
impl
;
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.util.List
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.ruoyi.common.utils.DateUtils
;
import
com.ruoyi.system.domain.business.BaseContractInfo
;
import
com.ruoyi.system.domain.business.BasePaymentCollectionInfo
;
import
com.ruoyi.system.domain.business.BasePerformanceCompleteInfo
;
import
com.ruoyi.system.mapper.business.BaseContractInfoMapper
;
import
com.ruoyi.system.mapper.business.BasePaymentCollectionInfoMapper
;
import
com.ruoyi.system.mapper.business.BasePerformanceCompleteInfoMapper
;
import
com.ruoyi.system.service.business.IBasePaymentCollectionInfoService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
@@ -27,6 +32,9 @@ public class BasePaymentCollectionInfoServiceImpl implements IBasePaymentCollect
@Autowired
private
BaseContractInfoMapper
baseContractInfoMapper
;
@Autowired
private
BasePerformanceCompleteInfoMapper
performanceCompleteInfoMapper
;
/**
* 查询回款信息
*
...
...
@@ -66,9 +74,26 @@ public class BasePaymentCollectionInfoServiceImpl implements IBasePaymentCollect
}
baseContractInfo
.
setHkje
(
hkje
.
add
(
basePaymentCollectionInfo
.
getHkje
()));
baseContractInfoMapper
.
updateBaseContractInfo
(
baseContractInfo
);
// 处理绩效数据
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
=
new
BasePerformanceCompleteInfo
();
basePerformanceCompleteInfo
.
setTargetType
(
1
);
basePerformanceCompleteInfo
.
setYear
(
DateUtil
.
thisYear
());
basePerformanceCompleteInfo
.
setMonth
(
DateUtil
.
thisMonth
()
+
1
);
basePerformanceCompleteInfo
.
setUserId
(
baseContractInfo
.
getYwyId
());
List
<
BasePerformanceCompleteInfo
>
basePerformanceCompleteInfos
=
performanceCompleteInfoMapper
.
selectBasePerformanceCompleteInfoList
(
basePerformanceCompleteInfo
);
if
(
ObjectUtil
.
isNotEmpty
(
basePerformanceCompleteInfos
))
{
for
(
BasePerformanceCompleteInfo
performanceCompleteInfo
:
basePerformanceCompleteInfos
)
{
BigDecimal
newComplete
=
performanceCompleteInfo
.
getComplete
().
add
(
hkje
);
performanceCompleteInfo
.
setComplete
(
newComplete
);
performanceCompleteInfo
.
setCompleteRate
(
newComplete
.
divide
(
performanceCompleteInfo
.
getTarget
()).
multiply
(
BigDecimal
.
valueOf
(
100
)).
setScale
(
2
,
RoundingMode
.
HALF_UP
));
performanceCompleteInfoMapper
.
updateBasePerformanceCompleteInfo
(
performanceCompleteInfo
);
}
}
}
}
basePaymentCollectionInfo
.
setCreateTime
(
DateUtils
.
getNowDate
());
basePaymentCollectionInfo
.
setUpdateTime
(
DateUtils
.
getNowDate
());
return
basePaymentCollectionInfoMapper
.
insertBasePaymentCollectionInfo
(
basePaymentCollectionInfo
);
}
...
...
ruoyi-system/src/main/java/com/ruoyi/system/service/business/impl/BasePerformanceCompleteInfoServiceImpl.java
0 → 100644
View file @
bea46256
package
com
.
ruoyi
.
system
.
service
.
business
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.ruoyi.common.core.domain.entity.SysUser
;
import
com.ruoyi.common.utils.DateUtils
;
import
com.ruoyi.system.domain.business.BasePerformanceCompleteInfo
;
import
com.ruoyi.system.domain.business.vo.PerformanceCompleteVo
;
import
com.ruoyi.system.mapper.SysUserMapper
;
import
com.ruoyi.system.mapper.business.BasePerformanceCompleteInfoMapper
;
import
com.ruoyi.system.service.business.IBasePerformanceCompleteInfoService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
* 业绩目标Service业务层处理
*
* @author gm
* @date 2025-06-06
*/
@Service
public
class
BasePerformanceCompleteInfoServiceImpl
implements
IBasePerformanceCompleteInfoService
{
@Autowired
private
BasePerformanceCompleteInfoMapper
basePerformanceCompleteInfoMapper
;
@Autowired
private
SysUserMapper
sysUserMapper
;
/**
* 查询业绩目标
*
* @param id 业绩目标主键
* @return 业绩目标
*/
@Override
public
BasePerformanceCompleteInfo
selectBasePerformanceCompleteInfoById
(
Long
id
)
{
return
basePerformanceCompleteInfoMapper
.
selectBasePerformanceCompleteInfoById
(
id
);
}
/**
* 查询业绩目标列表
*
* @param basePerformanceCompleteInfo 业绩目标
* @return 业绩目标
*/
@Override
public
List
<
PerformanceCompleteVo
>
selectBasePerformanceCompleteInfoList
(
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
)
{
List
<
PerformanceCompleteVo
>
performanceCompleteResult
=
new
ArrayList
<>();
List
<
BasePerformanceCompleteInfo
>
basePerformanceCompleteInfos
=
basePerformanceCompleteInfoMapper
.
selectBasePerformanceCompleteInfoList
(
basePerformanceCompleteInfo
);
Map
<
String
,
List
<
BasePerformanceCompleteInfo
>>
groupedByDepartment
=
basePerformanceCompleteInfos
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
BasePerformanceCompleteInfo:
:
getUserName
));
for
(
String
key
:
groupedByDepartment
.
keySet
())
{
List
<
BasePerformanceCompleteInfo
>
basePerformanceCompleteInfos1
=
groupedByDepartment
.
get
(
key
);
PerformanceCompleteVo
performanceCompleteVo
=
new
PerformanceCompleteVo
();
performanceCompleteVo
.
setTargetType
(
basePerformanceCompleteInfos1
.
get
(
0
).
getTargetType
());
performanceCompleteVo
.
setUserName
(
basePerformanceCompleteInfos1
.
get
(
0
).
getUserName
());
SysUser
sysUser
=
sysUserMapper
.
selectUserById
(
basePerformanceCompleteInfos1
.
get
(
0
).
getUserId
());
performanceCompleteVo
.
setDeptName
(
sysUser
.
getDept
().
getDeptName
());
performanceCompleteVo
.
setYear
(
basePerformanceCompleteInfos1
.
get
(
0
).
getYear
());
List
<
PerformanceCompleteVo
.
PerformanceMonth
>
months
=
new
ArrayList
<>();
for
(
BasePerformanceCompleteInfo
performanceCompleteInfo
:
basePerformanceCompleteInfos1
)
{
PerformanceCompleteVo
.
PerformanceMonth
perfMonth
=
new
PerformanceCompleteVo
.
PerformanceMonth
();
perfMonth
.
setId
(
performanceCompleteInfo
.
getId
());
perfMonth
.
setComplete
(
performanceCompleteInfo
.
getComplete
());
perfMonth
.
setMonth
(
performanceCompleteInfo
.
getMonth
());
perfMonth
.
setTarget
(
performanceCompleteInfo
.
getTarget
());
perfMonth
.
setCompleteRate
(
performanceCompleteInfo
.
getCompleteRate
());
months
.
add
(
perfMonth
);
}
performanceCompleteVo
.
setMonthData
(
months
);
performanceCompleteResult
.
add
(
performanceCompleteVo
);
}
return
performanceCompleteResult
;
}
/**
* 新增业绩目标
*
* @param basePerformanceCompleteInfo 业绩目标
* @return 结果
*/
@Override
public
int
insertBasePerformanceCompleteInfo
(
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
)
{
basePerformanceCompleteInfo
.
setCreateTime
(
DateUtils
.
getNowDate
());
return
basePerformanceCompleteInfoMapper
.
insertBasePerformanceCompleteInfo
(
basePerformanceCompleteInfo
);
}
/**
* 修改业绩目标
*
* @param basePerformanceCompleteInfo 业绩目标
* @return 结果
*/
@Override
public
void
updateBasePerformanceCompleteInfo
(
PerformanceCompleteVo
performanceCompleteVo
)
{
List
<
PerformanceCompleteVo
.
PerformanceMonth
>
monthData
=
performanceCompleteVo
.
getMonthData
();
if
(
ObjectUtil
.
isNotEmpty
(
monthData
))
{
for
(
PerformanceCompleteVo
.
PerformanceMonth
monthDatum
:
monthData
)
{
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
=
new
BasePerformanceCompleteInfo
();
BeanUtil
.
copyProperties
(
monthDatum
,
basePerformanceCompleteInfo
);
basePerformanceCompleteInfoMapper
.
updateBasePerformanceCompleteInfo
(
basePerformanceCompleteInfo
);
}
}
}
/**
* 批量删除业绩目标
*
* @param ids 需要删除的业绩目标主键
* @return 结果
*/
@Override
public
int
deleteBasePerformanceCompleteInfoByIds
(
Long
[]
ids
)
{
return
basePerformanceCompleteInfoMapper
.
deleteBasePerformanceCompleteInfoByIds
(
ids
);
}
/**
* 删除业绩目标信息
*
* @param id 业绩目标主键
* @return 结果
*/
@Override
public
int
deleteBasePerformanceCompleteInfoById
(
Long
id
)
{
return
basePerformanceCompleteInfoMapper
.
deleteBasePerformanceCompleteInfoById
(
id
);
}
@Override
public
List
<
BasePerformanceCompleteInfo
>
selectBasePerformanceCompleteInfos
(
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
)
{
return
basePerformanceCompleteInfoMapper
.
selectBasePerformanceCompleteInfoList
(
basePerformanceCompleteInfo
);
}
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
View file @
bea46256
package
com
.
ruoyi
.
system
.
service
.
impl
;
import
java.math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.validation.Validator
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.ruoyi.common.utils.DateUtils
;
import
com.ruoyi.system.domain.business.BasePerformanceCompleteInfo
;
import
com.ruoyi.system.domain.business.vo.PerformanceCompleteVo
;
import
com.ruoyi.system.mapper.business.BasePerformanceCompleteInfoMapper
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -65,6 +74,9 @@ public class SysUserServiceImpl implements ISysUserService
@Autowired
protected
Validator
validator
;
@Autowired
private
BasePerformanceCompleteInfoMapper
basePerformanceCompleteInfoMapper
;
/**
* 根据条件分页查询用户列表
*
...
...
@@ -430,11 +442,36 @@ public class SysUserServiceImpl implements ISysUserService
ur
.
setUserId
(
userId
);
ur
.
setRoleId
(
roleId
);
list
.
add
(
ur
);
initPerformanceData
(
roleId
,
userId
);
}
userRoleMapper
.
batchUserRole
(
list
);
}
}
private
void
initPerformanceData
(
Long
roleId
,
Long
userId
)
{
SysRole
sysRole
=
roleMapper
.
selectRoleById
(
roleId
);
SysUser
sysUser
=
userMapper
.
selectUserById
(
userId
);
if
(
ObjectUtil
.
isNotNull
(
sysRole
))
{
if
(
sysRole
.
getRoleKey
().
equals
(
"xsry"
))
{
for
(
int
i
=
1
;
i
<
13
;
i
++)
{
BasePerformanceCompleteInfo
basePerformanceCompleteInfo
=
new
BasePerformanceCompleteInfo
();
basePerformanceCompleteInfo
.
setTargetType
(
1
);
basePerformanceCompleteInfo
.
setUserId
(
userId
);
basePerformanceCompleteInfo
.
setUserName
(
sysUser
.
getNickName
());
basePerformanceCompleteInfo
.
setYear
(
DateUtil
.
thisYear
());
basePerformanceCompleteInfo
.
setMonth
(
i
);
basePerformanceCompleteInfo
.
setTarget
(
BigDecimal
.
ZERO
);
basePerformanceCompleteInfo
.
setComplete
(
BigDecimal
.
ZERO
);
basePerformanceCompleteInfo
.
setCompleteRate
(
BigDecimal
.
ZERO
);
basePerformanceCompleteInfo
.
setCreateTime
(
new
Date
());
basePerformanceCompleteInfo
.
setCreateBy
(
"SYSTEM"
);
basePerformanceCompleteInfoMapper
.
insertBasePerformanceCompleteInfo
(
basePerformanceCompleteInfo
);
}
}
}
}
/**
* 通过用户ID删除用户
*
...
...
ruoyi-system/src/main/resources/mapper/business/BaseCustomInfoMapper.xml
View file @
bea46256
...
...
@@ -14,6 +14,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result
property=
"wx"
column=
"wx"
/>
<result
property=
"khdz"
column=
"khdz"
/>
<result
property=
"khxq"
column=
"khxq"
/>
<result
property=
"gjc"
column=
"gjc"
/>
<result
property=
"khhy"
column=
"khhy"
/>
<result
property=
"yxdj"
column=
"yxdj"
/>
<result
property=
"khzt"
column=
"khzt"
/>
...
...
@@ -29,7 +30,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql
id=
"selectBaseCustomInfoVo"
>
select id, khxm, khgs, khly,khlx, cplb, sjh, wx, khdz, khxq, khhy, yxdj, khzt, gs, fzr,bq,bz, delete_flag, create_time, create_by, update_time, update_by from base_custom_info
select id, khxm, khgs, khly,khlx, cplb, sjh, wx, khdz, khxq,
gjc,
khhy, yxdj, khzt, gs, fzr,bq,bz, delete_flag, create_time, create_by, update_time, update_by from base_custom_info
</sql>
<select
id=
"selectBaseCustomInfoList"
parameterType=
"BaseCustomInfo"
resultMap=
"BaseCustomInfoResult"
>
...
...
@@ -91,9 +92,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</where>
group BY a.id
ORDER BY
CASE WHEN b.id IS NOT NULL THEN 0 ELSE 1 END,
a.yxdj DESC,
a.id DESC
a.update_time desc
</select>
<select
id=
"selectBaseCustomInfoById"
parameterType=
"Long"
resultMap=
"BaseCustomInfoResult"
>
...
...
@@ -113,6 +112,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"wx != null"
>
wx,
</if>
<if
test=
"khdz != null"
>
khdz,
</if>
<if
test=
"khxq != null"
>
khxq,
</if>
<if
test=
"gjc != null"
>
gjc,
</if>
<if
test=
"khhy != null"
>
khhy,
</if>
<if
test=
"yxdj != null"
>
yxdj,
</if>
<if
test=
"khzt != null"
>
khzt,
</if>
...
...
@@ -136,6 +136,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"wx != null"
>
#{wx},
</if>
<if
test=
"khdz != null"
>
#{khdz},
</if>
<if
test=
"khxq != null"
>
#{khxq},
</if>
<if
test=
"gjc != null"
>
#{gjc},
</if>
<if
test=
"khhy != null"
>
#{khhy},
</if>
<if
test=
"yxdj != null"
>
#{yxdj},
</if>
<if
test=
"khzt != null"
>
#{khzt},
</if>
...
...
@@ -163,6 +164,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"wx != null"
>
wx = #{wx},
</if>
<if
test=
"khdz != null"
>
khdz = #{khdz},
</if>
<if
test=
"khxq != null"
>
khxq = #{khxq},
</if>
<if
test=
"gjc != null"
>
gjc = #{gjc},
</if>
<if
test=
"khhy != null"
>
khhy = #{khhy},
</if>
<if
test=
"yxdj != null"
>
yxdj = #{yxdj},
</if>
<if
test=
"khzt != null"
>
khzt = #{khzt},
</if>
...
...
ruoyi-system/src/main/resources/mapper/business/BaseInvoiceInfoMapper.xml
View file @
bea46256
...
...
@@ -19,6 +19,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result
property=
"fplx"
column=
"fplx"
/>
<result
property=
"fpsl"
column=
"fpsl"
/>
<result
property=
"kpje"
column=
"kpje"
/>
<result
property=
"fkfs"
column=
"fkfs"
/>
<result
property=
"fpse"
column=
"fpse"
/>
<result
property=
"nsrsbh"
column=
"nsrsbh"
/>
<result
property=
"fpdm"
column=
"fpdm"
/>
...
...
@@ -46,7 +47,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql
id=
"selectBaseInvoiceInfoVo"
>
select id, contract_id, htbh, bm_id, bm, kh_id, khmc, htmc,payment_id, hkje, hkqs, fpnr, fplx, fpsl, kpje, fpse, nsrsbh,fpdm,fphm, dz, sjh, khh, yhzh, sprxm, sprdh, spryx, bz, fpzt, sqr,shr_id,shr, kpsj, dfkxy, dzhd, fpfj, create_time, create_by, update_time, update_by from base_invoice_info
select id, contract_id, htbh, bm_id, bm, kh_id, khmc, htmc,payment_id, hkje, hkqs, fpnr, fplx, fpsl, kpje,
fkfs,
fpse, nsrsbh,fpdm,fphm, dz, sjh, khh, yhzh, sprxm, sprdh, spryx, bz, fpzt, sqr,shr_id,shr, kpsj, dfkxy, dzhd, fpfj, create_time, create_by, update_time, update_by from base_invoice_info
</sql>
<select
id=
"selectBaseInvoiceInfoList"
parameterType=
"BaseInvoiceInfo"
resultMap=
"BaseInvoiceInfoResult"
>
...
...
@@ -124,6 +125,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"fplx != null"
>
fplx,
</if>
<if
test=
"fpsl != null"
>
fpsl,
</if>
<if
test=
"kpje != null"
>
kpje,
</if>
<if
test=
"fkfs != null"
>
fkfs,
</if>
<if
test=
"fpse != null"
>
fpse,
</if>
<if
test=
"nsrsbh != null"
>
nsrsbh,
</if>
<if
test=
"fpdm != null"
>
fpdm,
</if>
...
...
@@ -165,6 +167,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"fplx != null"
>
#{fplx},
</if>
<if
test=
"fpsl != null"
>
#{fpsl},
</if>
<if
test=
"kpje != null"
>
#{kpje},
</if>
<if
test=
"fkfs != null"
>
#{fkfs},
</if>
<if
test=
"fpse != null"
>
#{fpse},
</if>
<if
test=
"nsrsbh != null"
>
#{nsrsbh},
</if>
<if
test=
"fpdm != null"
>
#{fpdm},
</if>
...
...
@@ -209,6 +212,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"fplx != null"
>
fplx = #{fplx},
</if>
<if
test=
"fpsl != null"
>
fpsl = #{fpsl},
</if>
<if
test=
"kpje != null"
>
kpje = #{kpje},
</if>
<if
test=
"fkfs != null"
>
fkfs = #{fkfs},
</if>
<if
test=
"fpse != null"
>
fpse = #{fpse},
</if>
<if
test=
"nsrsbh != null"
>
nsrsbh = #{nsrsbh},
</if>
<if
test=
"fpdm != null"
>
fpdm = #{fpdm},
</if>
...
...
ruoyi-system/src/main/resources/mapper/business/BasePaymentCollectionInfoMapper.xml
View file @
bea46256
...
...
@@ -39,7 +39,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"hkqs != null "
>
and hkqs = #{hkqs}
</if>
<if
test=
"hkje != null "
>
and hkje = #{hkje}
</if>
<if
test=
"hkfs != null "
>
and hkfs = #{hkfs}
</if>
<if
test=
"
hkzt != null "
>
and hkzt = #{hk
zt}
</if>
<if
test=
"
kpzt != null "
>
and hkzt = #{kp
zt}
</if>
<if
test=
"hkpz != null and hkpz != ''"
>
and hkpz = #{hkpz}
</if>
<if
test=
"skfs != null "
>
and skfs = #{skfs}
</if>
<if
test=
"bz != null and bz != ''"
>
and bz = #{bz}
</if>
...
...
@@ -64,7 +64,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"hkqs != null"
>
hkqs,
</if>
<if
test=
"hkje != null"
>
hkje,
</if>
<if
test=
"hkfs != null"
>
hkfs,
</if>
<if
test=
"
hkzt != null"
>
hk
zt,
</if>
<if
test=
"
kpzt != null"
>
kp
zt,
</if>
<if
test=
"hkpz != null"
>
hkpz,
</if>
<if
test=
"skfs != null"
>
skfs,
</if>
<if
test=
"bz != null"
>
bz,
</if>
...
...
ruoyi-system/src/main/resources/mapper/business/BasePerformanceCompleteInfoMapper.xml
0 → 100644
View file @
bea46256
<?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.ruoyi.system.mapper.business.BasePerformanceCompleteInfoMapper"
>
<resultMap
type=
"BasePerformanceCompleteInfo"
id=
"BasePerformanceCompleteInfoResult"
>
<result
property=
"id"
column=
"id"
/>
<result
property=
"targetType"
column=
"target_type"
/>
<result
property=
"userId"
column=
"user_id"
/>
<result
property=
"userName"
column=
"user_name"
/>
<result
property=
"year"
column=
"year"
/>
<result
property=
"month"
column=
"month"
/>
<result
property=
"target"
column=
"target"
/>
<result
property=
"complete"
column=
"complete"
/>
<result
property=
"completeRate"
column=
"complete_rate"
/>
<result
property=
"createTime"
column=
"create_time"
/>
<result
property=
"createBy"
column=
"create_by"
/>
<result
property=
"updateTime"
column=
"update_time"
/>
<result
property=
"updateBy"
column=
"update_by"
/>
</resultMap>
<sql
id=
"selectBasePerformanceCompleteInfoVo"
>
select id, target_type, user_id, user_name, year, month, target, complete, complete_rate, create_time, create_by, update_time, update_by from base_performance_complete_info
</sql>
<select
id=
"selectBasePerformanceCompleteInfoList"
parameterType=
"BasePerformanceCompleteInfo"
resultMap=
"BasePerformanceCompleteInfoResult"
>
<include
refid=
"selectBasePerformanceCompleteInfoVo"
/>
<where>
<if
test=
"targetType != null "
>
and target_type = #{targetType}
</if>
<if
test=
"userId != null "
>
and user_id = #{userId}
</if>
<if
test=
"userName != null and userName != ''"
>
and user_name like concat('%', #{userName}, '%')
</if>
<if
test=
"year != null "
>
and year = #{year}
</if>
<if
test=
"month != null "
>
and month = #{month}
</if>
<if
test=
"target != null "
>
and target = #{target}
</if>
<if
test=
"complete != null "
>
and complete = #{complete}
</if>
<if
test=
"completeRate != null "
>
and complete_rate = #{completeRate}
</if>
</where>
</select>
<select
id=
"selectBasePerformanceCompleteInfoById"
parameterType=
"Long"
resultMap=
"BasePerformanceCompleteInfoResult"
>
<include
refid=
"selectBasePerformanceCompleteInfoVo"
/>
where id = #{id}
</select>
<insert
id=
"insertBasePerformanceCompleteInfo"
parameterType=
"BasePerformanceCompleteInfo"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into base_performance_complete_info
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"targetType != null"
>
target_type,
</if>
<if
test=
"userId != null"
>
user_id,
</if>
<if
test=
"userName != null"
>
user_name,
</if>
<if
test=
"year != null"
>
year,
</if>
<if
test=
"month != null"
>
month,
</if>
<if
test=
"target != null"
>
target,
</if>
<if
test=
"complete != null"
>
complete,
</if>
<if
test=
"completeRate != null"
>
complete_rate,
</if>
<if
test=
"createTime != null"
>
create_time,
</if>
<if
test=
"createBy != null"
>
create_by,
</if>
<if
test=
"updateTime != null"
>
update_time,
</if>
<if
test=
"updateBy != null"
>
update_by,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"targetType != null"
>
#{targetType},
</if>
<if
test=
"userId != null"
>
#{userId},
</if>
<if
test=
"userName != null"
>
#{userName},
</if>
<if
test=
"year != null"
>
#{year},
</if>
<if
test=
"month != null"
>
#{month},
</if>
<if
test=
"target != null"
>
#{target},
</if>
<if
test=
"complete != null"
>
#{complete},
</if>
<if
test=
"completeRate != null"
>
#{completeRate},
</if>
<if
test=
"createTime != null"
>
#{createTime},
</if>
<if
test=
"createBy != null"
>
#{createBy},
</if>
<if
test=
"updateTime != null"
>
#{updateTime},
</if>
<if
test=
"updateBy != null"
>
#{updateBy},
</if>
</trim>
</insert>
<update
id=
"updateBasePerformanceCompleteInfo"
parameterType=
"BasePerformanceCompleteInfo"
>
update base_performance_complete_info
<trim
prefix=
"SET"
suffixOverrides=
","
>
<if
test=
"targetType != null"
>
target_type = #{targetType},
</if>
<if
test=
"userId != null"
>
user_id = #{userId},
</if>
<if
test=
"userName != null"
>
user_name = #{userName},
</if>
<if
test=
"year != null"
>
year = #{year},
</if>
<if
test=
"month != null"
>
month = #{month},
</if>
<if
test=
"target != null"
>
target = #{target},
</if>
<if
test=
"complete != null"
>
complete = #{complete},
</if>
<if
test=
"completeRate != null"
>
complete_rate = #{completeRate},
</if>
<if
test=
"createTime != null"
>
create_time = #{createTime},
</if>
<if
test=
"createBy != null"
>
create_by = #{createBy},
</if>
<if
test=
"updateTime != null"
>
update_time = #{updateTime},
</if>
<if
test=
"updateBy != null"
>
update_by = #{updateBy},
</if>
</trim>
where id = #{id}
</update>
<delete
id=
"deleteBasePerformanceCompleteInfoById"
parameterType=
"Long"
>
delete from base_performance_complete_info where id = #{id}
</delete>
<delete
id=
"deleteBasePerformanceCompleteInfoByIds"
parameterType=
"String"
>
delete from base_performance_complete_info where id in
<foreach
item=
"id"
collection=
"array"
open=
"("
separator=
","
close=
")"
>
#{id}
</foreach>
</delete>
</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