Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
I
indicators
Overview
Overview
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
zhangkb
indicators
Commits
7fa7cfc3
Commit
7fa7cfc3
authored
Feb 25, 2021
by
hzc
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
测试数据项申请功能
parent
e8c5bc52
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
283 additions
and
1 deletion
+283
-1
IndicatorsDefAuditCtrl.java
...bile/indicators/api/hytobacco/IndicatorsDefAuditCtrl.java
+64
-0
BaseIndDefAuditParams.java
...cators/model/entity/indicators/BaseIndDefAuditParams.java
+23
-0
IndicatorsDefAuditMapper.java
...tors/model/mapper/indmapper/IndicatorsDefAuditMapper.java
+32
-0
IndScorecardService.java
...ile/indicators/service/hytobacco/IndScorecardService.java
+7
-1
IndicatorsDefAuditService.java
...dicators/service/hytobacco/IndicatorsDefAuditService.java
+117
-0
CalculateUtils.java
...n/java/com/keymobile/indicators/utils/CalculateUtils.java
+1
-0
IndicatorsDefAuditMapper.xml
...in/resources/mybatis/mapping/IndicatorsDefAuditMapper.xml
+39
-0
No files found.
src/main/java/com/keymobile/indicators/api/hytobacco/IndicatorsDefAuditCtrl.java
0 → 100644
View file @
7fa7cfc3
package
com
.
keymobile
.
indicators
.
api
.
hytobacco
;
import
com.keymobile.indicators.constant.Constants
;
import
com.keymobile.indicators.model.entity.ConfigInfo
;
import
com.keymobile.indicators.model.entity.indicators.*
;
import
com.keymobile.indicators.result.Result
;
import
com.keymobile.indicators.service.ConfigInfoService
;
import
com.keymobile.indicators.service.hytobacco.*
;
import
com.keymobile.indicators.utils.LogManager
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiParam
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.domain.Page
;
import
org.springframework.data.domain.PageImpl
;
import
org.springframework.data.domain.PageRequest
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.Map
;
@Api
(
tags
={
"规则管理-指标定义接口"
})
@RestController
@RequestMapping
(
value
=
"/indDefAudit"
)
public
class
IndicatorsDefAuditCtrl
{
@Autowired
private
IndicatorsDefAuditService
indicatorsDefAuditService
;
@ApiOperation
(
value
=
"保存申请"
,
notes
=
"保存申请"
)
@PostMapping
(
value
=
"/add"
)
public
Result
add
(
@RequestBody
BaseIndDefAudit
baseIndDefAudit
){
return
indicatorsDefAuditService
.
addAplay
(
baseIndDefAudit
);
}
@ApiOperation
(
value
=
"按条件查询"
)
@PostMapping
(
"/findPage"
)
public
Page
<
BaseIndDefAudit
>
findPage
(
@RequestBody
BaseIndDefAuditParams
baseIndDefAuditParams
){
PageRequest
request
=
PageRequest
.
of
(
baseIndDefAuditParams
.
getPage
(),
baseIndDefAuditParams
.
getSize
());
long
offset
=
request
.
getOffset
();
baseIndDefAuditParams
.
setOffset
(
offset
);
long
count
=
indicatorsDefAuditService
.
findCount
(
baseIndDefAuditParams
);
List
<
BaseIndDefAudit
>
baseIndDefAudits
=
new
ArrayList
<>();
if
(
count
>
0
){
baseIndDefAudits
=
indicatorsDefAuditService
.
findPageData
(
baseIndDefAuditParams
);
}
return
new
PageImpl
<>(
baseIndDefAudits
,
request
,
count
);
}
@ApiOperation
(
value
=
"修改数据"
)
@PostMapping
(
"/update"
)
public
Result
update
(
@RequestBody
BaseIndDefAudit
baseIndDefAudit
){
return
indicatorsDefAuditService
.
updateData
(
baseIndDefAudit
);
}
@ApiOperation
(
value
=
"审核数据"
)
@GetMapping
(
"/audit"
)
public
Result
auditData
(
@RequestParam
String
indId
,
@RequestParam
Integer
status
,
@RequestParam
String
msg
){
return
indicatorsDefAuditService
.
auditData
(
indId
,
status
,
msg
);
}
}
src/main/java/com/keymobile/indicators/model/entity/indicators/BaseIndDefAuditParams.java
0 → 100644
View file @
7fa7cfc3
package
com
.
keymobile
.
indicators
.
model
.
entity
.
indicators
;
import
lombok.Data
;
import
java.util.List
;
/**
* TODO
* 查询基础数据审核数据参数
* @author hzc
* @version 1.0
* @date 2021/2/25
*/
@Data
public
class
BaseIndDefAuditParams
{
private
Integer
page
;
private
Integer
size
;
private
Long
offset
;
private
String
userId
;
private
List
<
Integer
>
statusArr
;
}
src/main/java/com/keymobile/indicators/model/mapper/indmapper/IndicatorsDefAuditMapper.java
0 → 100644
View file @
7fa7cfc3
package
com
.
keymobile
.
indicators
.
model
.
mapper
.
indmapper
;
import
com.keymobile.indicators.model.entity.indicators.BaseIndDefAudit
;
import
com.keymobile.indicators.model.entity.indicators.BaseIndDefAuditParams
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
tk.mybatis.mapper.common.BaseMapper
;
import
java.util.List
;
/**
* TODO
*
* @author hzc
* @version 1.0
* @date 2021/2/25
*/
@Mapper
public
interface
IndicatorsDefAuditMapper
extends
BaseMapper
<
BaseIndDefAudit
>
{
long
findCount
(
BaseIndDefAuditParams
baseIndDefAuditParams
);
List
<
BaseIndDefAudit
>
findPageData
(
BaseIndDefAuditParams
baseIndDefAuditParams
);
/**
* 根据节点id和基础数据名称查询,过滤掉驳回状态的数据 ---判重
* @Param [catalogId, indName]
* @Date 2021/2/25 14:23
* @Author hzc
**/
List
<
BaseIndDefAudit
>
selectByCatalogIdAndIndName
(
@Param
(
"catalogId"
)
Integer
catalogId
,
@Param
(
"indName"
)
String
indName
);
}
src/main/java/com/keymobile/indicators/service/hytobacco/IndScorecardService.java
View file @
7fa7cfc3
...
...
@@ -496,6 +496,12 @@ public class IndScorecardService {
}
catch
(
Exception
e
)
{
logger
.
error
(
"计算指标积分综合评价的公式积分错误:formula:"
+
formula
+
";env:"
+
env
);
}
}
else
{
try
{
value
=
(
Double
)
AviatorEvaluator
.
execute
(
formula
);
}
catch
(
Exception
e
)
{
logger
.
error
(
"计算指标积分综合评价的公式积分错误:formula:"
+
formula
);
}
}
return
value
;
}
...
...
@@ -569,7 +575,7 @@ public class IndScorecardService {
fValue
=
value
;
}
}
env
.
remove
(
"X"
);
env
.
remove
(
"X"
);
}
return
fValue
;
}
...
...
src/main/java/com/keymobile/indicators/service/hytobacco/IndicatorsDefAuditService.java
0 → 100644
View file @
7fa7cfc3
package
com
.
keymobile
.
indicators
.
service
.
hytobacco
;
import
com.keymobile.indicators.model.entity.indicators.BaseIndDef
;
import
com.keymobile.indicators.model.entity.indicators.BaseIndDefAudit
;
import
com.keymobile.indicators.model.entity.indicators.BaseIndDefAuditParams
;
import
com.keymobile.indicators.model.mapper.indicators.BaseIndDefMapper
;
import
com.keymobile.indicators.model.mapper.indmapper.IndicatorsDefAuditMapper
;
import
com.keymobile.indicators.result.Result
;
import
com.keymobile.indicators.utils.CalculateUtils
;
import
com.keymobile.indicators.utils.SystemUserUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.Date
;
import
java.util.List
;
/**
* TODO
* 基础数据审核
* @author hzc
* @version 1.0
* @date 2021/2/25
*/
@Slf4j
@Service
public
class
IndicatorsDefAuditService
{
@Autowired
private
IndicatorsDefAuditMapper
indicatorsDefAuditMapper
;
@Autowired
private
BaseIndDefMapper
baseIndDefMapper
;
public
Result
addAplay
(
BaseIndDefAudit
baseIndDefAudit
)
{
List
<
BaseIndDef
>
baseIndDefs
=
baseIndDefMapper
.
selectByCatalogIdAndIndName
(
baseIndDefAudit
.
getCatalogId
(),
baseIndDefAudit
.
getIndName
());
if
(
baseIndDefs
!=
null
&&
baseIndDefs
.
size
()>
0
){
return
Result
.
genFailedResult
(
"数据项名称已存在,操作失败!!"
);
}
else
{
List
<
BaseIndDefAudit
>
baseIndDefAudits
=
indicatorsDefAuditMapper
.
selectByCatalogIdAndIndName
(
baseIndDefAudit
.
getCatalogId
(),
baseIndDefAudit
.
getIndName
());
if
(
baseIndDefAudits
!=
null
&&
baseIndDefAudits
.
size
()>
0
){
return
Result
.
genFailedResult
(
"数据项名称已存在,操作失败!!"
);
}
}
//判断公式合法性
if
(
StringUtils
.
isNotBlank
(
baseIndDefAudit
.
getIndFormat
())
&&
!
CalculateUtils
.
isValidformula
(
baseIndDefAudit
.
getIndFormat
()))
{
return
Result
.
genFailedResult
(
"公式校验不合法"
);
}
if
(
StringUtils
.
isBlank
(
baseIndDefAudit
.
getIndId
()))
{
return
Result
.
genFailedResult
(
"数据项编号不能为空"
);
}
BaseIndDef
dbBaseIndDef
=
baseIndDefMapper
.
selectByPrimaryKey
(
baseIndDefAudit
.
getIndId
());
if
(
dbBaseIndDef
!=
null
)
{
return
Result
.
genFailedResult
(
"数据项编号已存在,操作失败"
);
}
Date
date
=
new
Date
();
String
currentUser
=
SystemUserUtil
.
getCurrentUser
();
baseIndDefAudit
.
setCreateTime
(
date
);
baseIndDefAudit
.
setUpdateTime
(
date
);
baseIndDefAudit
.
setUpdater
(
currentUser
);
baseIndDefAudit
.
setCreater
(
currentUser
);
indicatorsDefAuditMapper
.
insert
(
baseIndDefAudit
);
log
.
info
(
"{}提交了申请,{}"
,
currentUser
,
baseIndDefAudit
);
return
Result
.
genOkResult
();
}
/**
* 查询总数
* @Param [baseIndDefAuditParams]
* @Date 2021/2/25 13:59
* @Author hzc
**/
public
long
findCount
(
BaseIndDefAuditParams
baseIndDefAuditParams
)
{
return
indicatorsDefAuditMapper
.
findCount
(
baseIndDefAuditParams
);
}
public
List
<
BaseIndDefAudit
>
findPageData
(
BaseIndDefAuditParams
baseIndDefAuditParams
)
{
return
indicatorsDefAuditMapper
.
findPageData
(
baseIndDefAuditParams
);
}
public
Result
updateData
(
BaseIndDefAudit
baseIndDefAudit
)
{
Date
date
=
new
Date
();
String
currentUser
=
SystemUserUtil
.
getCurrentUser
();
baseIndDefAudit
.
setUpdateTime
(
date
);
baseIndDefAudit
.
setUpdater
(
currentUser
);
indicatorsDefAuditMapper
.
updateByPrimaryKeySelective
(
baseIndDefAudit
);
return
Result
.
genOkResult
();
}
//审核数据---当审核通过时录入结果表
public
Result
auditData
(
String
indId
,
Integer
status
,
String
msg
)
{
BaseIndDefAudit
baseIndDefAudit
=
new
BaseIndDefAudit
();
Date
date
=
new
Date
();
String
currentUser
=
SystemUserUtil
.
getCurrentUser
();
baseIndDefAudit
.
setUpdateTime
(
date
);
baseIndDefAudit
.
setUpdater
(
currentUser
);
baseIndDefAudit
.
setIndId
(
indId
);
baseIndDefAudit
.
setStatus
(
status
);
indicatorsDefAuditMapper
.
updateByPrimaryKeySelective
(
baseIndDefAudit
);
if
(
status
==
3
){
//通过
BaseIndDefAudit
baseIndDefAudit1
=
indicatorsDefAuditMapper
.
selectByPrimaryKey
(
indId
);
BaseIndDef
baseIndDef
=
new
BaseIndDef
();
BeanUtils
.
copyProperties
(
baseIndDefAudit1
,
baseIndDef
);
baseIndDef
.
setVersion
(
"1.0"
);
baseIndDefMapper
.
insert
(
baseIndDef
);
}
return
Result
.
genOkResult
();
}
}
src/main/java/com/keymobile/indicators/utils/CalculateUtils.java
View file @
7fa7cfc3
...
...
@@ -29,6 +29,7 @@ public class CalculateUtils {
try
{
tmp
=
AviatorEvaluator
.
execute
(
formula
);
result
=
String
.
format
(
"%.8f"
,
new
BigDecimal
((
Double
)
tmp
));
log
.
info
(
"基础数据公式:{},结果:{}"
,
formula
,
result
);
}
catch
(
Exception
e
){
e
.
printStackTrace
();
log
.
info
(
"公式运算出错:数据确认-公式:{},结果:{},截取八位:{}"
,
formula
,
tmp
,
result
);
...
...
src/main/resources/mybatis/mapping/IndicatorsDefAuditMapper.xml
0 → 100644
View file @
7fa7cfc3
<?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.keymobile.indicators.model.mapper.indmapper.IndicatorsDefAuditMapper"
>
<sql
id=
"whereSql"
>
where 1=1
<if
test=
"userId!=null and userId!=''"
>
user_id= #{userId}
</if>
<if
test=
"statusArr!=null"
>
status in (
<foreach
collection=
"statusArr"
item=
"status"
>
#{status}
</foreach>
)
</if>
</sql>
<select
id=
"findCount"
resultType=
"java.lang.Long"
parameterType=
"com.keymobile.indicators.model.entity.indicators.BaseIndDefAuditParams"
>
SELECT count(1)
FROM base_ind_def_audit
<include
refid=
"whereSql"
></include>
order by status asc ,update_time desc
</select>
<select
id=
"findPageData"
resultType=
"com.keymobile.indicators.model.entity.indicators.BaseIndDefAudit"
parameterType=
"com.keymobile.indicators.model.entity.indicators.BaseIndDefAuditParams"
>
select * from base_ind_def_audit
<include
refid=
"whereSql"
></include>
order by status asc ,update_time desc
limit #{offset}, #{size}
</select>
<select
id=
"selectByCatalogIdAndIndName"
resultType=
"com.keymobile.indicators.model.entity.indicators.BaseIndDefAudit"
parameterType=
"com.keymobile.indicators.model.entity.indicators.BaseIndDefAuditParams"
>
select * from base_ind_def_audit
where status != 4 and ind_name=#{indName} and catalog_id = #{catalogId}
</select>
</mapper>
\ No newline at end of file
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