Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Q
qianhe-ydsj
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
jiangyun
qianhe-ydsj
Commits
91bc5fad
Commit
91bc5fad
authored
Aug 18, 2025
by
wangqi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
基层的单位计算单位分档结果
parent
2f06a215
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
230 additions
and
86 deletions
+230
-86
qianhe-ydsj/src/main/java/com/qianhe/controller/SjGfjsJcdwkhpjController.java
+82
-2
qianhe-ydsj/src/main/java/com/qianhe/controller/SjGfjsZdgzController.java
+12
-0
qianhe-ydsj/src/main/java/com/qianhe/domain/SjGfjsZsdwkhpjZb.java
+5
-0
qianhe-ydsj/src/main/java/com/qianhe/mapper/SjGfjsZdgzMapper.java
+2
-0
qianhe-ydsj/src/main/java/com/qianhe/service/ISjGfjsZdgzService.java
+2
-0
qianhe-ydsj/src/main/java/com/qianhe/service/impl/SjGfjsJcdwkhpjServiceImpl.java
+104
-83
qianhe-ydsj/src/main/java/com/qianhe/service/impl/SjGfjsZdgzServiceImpl.java
+7
-0
qianhe-ydsj/src/main/resources/mapper/SjGfjsZdgzMapper.xml
+10
-0
qianhe-ydsj/src/main/resources/mapper/SjGfjsZsdwkhpjZbMapper.xml
+6
-1
No files found.
qianhe-ydsj/src/main/java/com/qianhe/controller/SjGfjsJcdwkhpjController.java
View file @
91bc5fad
...
@@ -12,8 +12,7 @@ import com.qianhe.common.utils.StringUtils;
...
@@ -12,8 +12,7 @@ import com.qianhe.common.utils.StringUtils;
import
com.qianhe.domain.*
;
import
com.qianhe.domain.*
;
import
com.qianhe.mapper.SjGfjsYdjcjlMapper
;
import
com.qianhe.mapper.SjGfjsYdjcjlMapper
;
import
com.qianhe.mapper.SjGfjsZdgzMapper
;
import
com.qianhe.mapper.SjGfjsZdgzMapper
;
import
com.qianhe.service.ISjGfjsJcdwkhpjService
;
import
com.qianhe.service.*
;
import
com.qianhe.service.ISjGfjsJcdwkhpjZbService
;
import
com.qianhe.system.mapper.SysDeptMapper
;
import
com.qianhe.system.mapper.SysDeptMapper
;
import
org.apache.poi.ss.usermodel.*
;
import
org.apache.poi.ss.usermodel.*
;
import
org.apache.poi.ss.util.CellRangeAddress
;
import
org.apache.poi.ss.util.CellRangeAddress
;
...
@@ -30,6 +29,7 @@ import javax.servlet.http.HttpServletResponse;
...
@@ -30,6 +29,7 @@ import javax.servlet.http.HttpServletResponse;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.io.InputStream
;
import
java.io.OutputStream
;
import
java.io.OutputStream
;
import
java.math.BigDecimal
;
import
java.net.URLEncoder
;
import
java.net.URLEncoder
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.HashMap
;
...
@@ -83,6 +83,18 @@ public class SjGfjsJcdwkhpjController extends BaseController
...
@@ -83,6 +83,18 @@ public class SjGfjsJcdwkhpjController extends BaseController
return
getDataTable
(
list
);
return
getDataTable
(
list
);
}
}
@Autowired
private
ISjGfjsZdgzService
sjGfjsZdgzService
;
@Autowired
private
ISjGfjsDxjczService
sjGfjsDxjczService
;
@Autowired
private
ISjGfjsFdgzService
sjGfjsFdgzService
;
// 定义默认的最大值
private
static
final
BigDecimal
DEFAULT_MAX
=
new
BigDecimal
(
"99999"
);
// 定义默认的最小值
private
static
final
BigDecimal
DEFAULT_MIN
=
BigDecimal
.
ZERO
;
/**
/**
* 查询考核评价
* 查询考核评价
* @return
* @return
...
@@ -121,10 +133,73 @@ public class SjGfjsJcdwkhpjController extends BaseController
...
@@ -121,10 +133,73 @@ public class SjGfjsJcdwkhpjController extends BaseController
endRq
=
nd
+
"-12"
;
endRq
=
nd
+
"-12"
;
}
}
//查询考核评价是否保存到从表
//查询考核评价是否保存到从表
List
<
SjGfjsZsdwkhpj
>
sjGfjsZsdwkhpjs
=
sjGfjsZsdwkhpjService
.
selectSjGfjsZsdwkhpjList
(
sjGfjsZsdwkhpj
);
List
<
SjGfjsZsdwkhpj
>
sjGfjsZsdwkhpjs
=
sjGfjsZsdwkhpjService
.
selectSjGfjsZsdwkhpjList
(
sjGfjsZsdwkhpj
);
// List<SjGfjsZsdwkhpj>
// List<SjGfjsZsdwkhpj>
if
(
sjGfjsZsdwkhpjs
.
size
()<=
0
){
if
(
sjGfjsZsdwkhpjs
.
size
()<=
0
){
// 查询权重系数,
SjGfjsZdgz
sjGfjsZdgz_qz
=
new
SjGfjsZdgz
();
sjGfjsZdgz_qz
.
setNd
(
nd
);
sjGfjsZdgz_qz
.
setLx
(
"基础"
);
List
<
SjGfjsZdgz
>
qzlist
=
sjGfjsZdgzService
.
selectSjGfjsZdgzList
(
sjGfjsZdgz_qz
);
// 查询基础值,
SjGfjsDxjcz
sjGfjsDxjcz
=
new
SjGfjsDxjcz
();
sjGfjsDxjcz
.
setNd
(
nd
);
List
<
SjGfjsDxjcz
>
jczlist
=
sjGfjsDxjczService
.
selectSjGfjsDxjczList
(
sjGfjsDxjcz
);
Map
<
String
,
BigDecimal
>
jczMap
=
new
HashMap
<>();
for
(
SjGfjsDxjcz
dxjcz
:
jczlist
)
{
try
{
// 将基础值字符串转换为BigDecimal
BigDecimal
jczValue
=
new
BigDecimal
(
dxjcz
.
getJcz
());
jczMap
.
put
(
dxjcz
.
getJb
(),
jczValue
);
}
catch
(
NumberFormatException
e
)
{
throw
new
IllegalArgumentException
(
"基础值格式错误,级别:"
+
dxjcz
.
getJb
()
+
",值:"
+
dxjcz
.
getJcz
(),
e
);
}
}
// 分档规则
SjGfjsFdgz
sjGfjsFdgz
=
new
SjGfjsFdgz
();
sjGfjsFdgz
.
setNd
(
nd
);
List
<
SjGfjsFdgz
>
fdgzlist
=
sjGfjsFdgzService
.
selectSjGfjsFdgzList
(
sjGfjsFdgz
);
// 计算总得分 初始直接照全是A计算
BigDecimal
totalScore
=
BigDecimal
.
ZERO
;
for
(
int
i
=
0
;
i
<
qzlist
.
size
();
i
++){
SjGfjsZdgz
qzxsMap
=
qzlist
.
get
(
i
);
BigDecimal
qzxs
=
new
BigDecimal
(
qzxsMap
.
getKhnrfs
());
// 系数
BigDecimal
baseValue
=
jczMap
.
get
(
"A"
);
// 计算单项得分并累加
BigDecimal
itemScore
=
qzxs
.
multiply
(
baseValue
);
totalScore
=
totalScore
.
add
(
itemScore
);
}
// 计算单位分档级别
String
fdjb
=
"未知"
;
for
(
SjGfjsFdgz
fdgz
:
fdgzlist
)
{
// 处理最小基础值(null或空字符串视为0)
BigDecimal
minJcz
=
DEFAULT_MIN
;
String
minStr
=
fdgz
.
getMinjcz
();
if
(
minStr
!=
null
&&
!
minStr
.
trim
().
isEmpty
())
{
minJcz
=
new
BigDecimal
(
minStr
.
trim
());
}
// 处理最大基础值(null或空字符串视为99999)
BigDecimal
maxJcz
=
DEFAULT_MAX
;
String
maxStr
=
fdgz
.
getMaxjcz
();
if
(
maxStr
!=
null
&&
!
maxStr
.
trim
().
isEmpty
())
{
maxJcz
=
new
BigDecimal
(
maxStr
.
trim
());
}
// 检查总分是否在当前分档的范围内(包含边界值)
// 比较规则:minJcz ≤ totalScore < maxJcz
if
(
totalScore
.
compareTo
(
minJcz
)
>=
0
&&
totalScore
.
compareTo
(
maxJcz
)
<
0
)
{
fdjb
=
fdgz
.
getJb
();
// 返回匹配的级别
}
}
//查询主表信息
//查询主表信息
SjGfjsZsdwkhpjZb
sjGfjsZsdwkhpjZb
=
new
SjGfjsZsdwkhpjZb
();
SjGfjsZsdwkhpjZb
sjGfjsZsdwkhpjZb
=
new
SjGfjsZsdwkhpjZb
();
sjGfjsZsdwkhpjZb
.
setNd
(
nd
);
sjGfjsZsdwkhpjZb
.
setNd
(
nd
);
...
@@ -142,6 +217,9 @@ public class SjGfjsJcdwkhpjController extends BaseController
...
@@ -142,6 +217,9 @@ public class SjGfjsJcdwkhpjController extends BaseController
sjGfjsZsdwkhpjZbnew
.
setDeptDfl
(
dept
.
getDeptDfl
());
sjGfjsZsdwkhpjZbnew
.
setDeptDfl
(
dept
.
getDeptDfl
());
sjGfjsZsdwkhpjZbnew
.
setDeptLx
(
dept
.
getDeptLx
());
sjGfjsZsdwkhpjZbnew
.
setDeptLx
(
dept
.
getDeptLx
());
sjGfjsZsdwkhpjZbnew
.
setDeptYwfl
(
dept
.
getDeptYwfl
());
sjGfjsZsdwkhpjZbnew
.
setDeptYwfl
(
dept
.
getDeptYwfl
());
sjGfjsZsdwkhpjZbnew
.
setZdf
(
totalScore
);
sjGfjsZsdwkhpjZbnew
.
setZhdf
(
totalScore
);
sjGfjsZsdwkhpjZbnew
.
setFdjb
(
fdjb
);
sjGfjsZsdwkhpjZbnew
.
setZt
(
"0"
);
//未提交
sjGfjsZsdwkhpjZbnew
.
setZt
(
"0"
);
//未提交
sjGfjsZsdwkhpjZbService
.
insertSjGfjsZsdwkhpjZb
(
sjGfjsZsdwkhpjZbnew
);
sjGfjsZsdwkhpjZbService
.
insertSjGfjsZsdwkhpjZb
(
sjGfjsZsdwkhpjZbnew
);
}
}
...
@@ -201,11 +279,13 @@ public class SjGfjsJcdwkhpjController extends BaseController
...
@@ -201,11 +279,13 @@ public class SjGfjsJcdwkhpjController extends BaseController
zb_qry
.
setZqfw
(
sjGfjsZsdwkhpj
.
getZqfw
());
zb_qry
.
setZqfw
(
sjGfjsZsdwkhpj
.
getZqfw
());
SjGfjsZsdwkhpjZb
zb
=
sjGfjsZsdwkhpjZbService
.
selectSjGfjsZsdwkhpjZb
(
zb_qry
);
SjGfjsZsdwkhpjZb
zb
=
sjGfjsZsdwkhpjZbService
.
selectSjGfjsZsdwkhpjZb
(
zb_qry
);
String
zt
=
zb
.
getZt
();
String
zt
=
zb
.
getZt
();
String
fdjb
=
zb
.
getFdjb
();
map
.
put
(
"code"
,
HttpStatus
.
SUCCESS
);
map
.
put
(
"code"
,
HttpStatus
.
SUCCESS
);
map
.
put
(
"msg"
,
"查询成功"
);
map
.
put
(
"msg"
,
"查询成功"
);
map
.
put
(
"khpjData"
,
resjGfjsZsdwkhpjs
);
map
.
put
(
"khpjData"
,
resjGfjsZsdwkhpjs
);
map
.
put
(
"zt"
,
zt
);
map
.
put
(
"zt"
,
zt
);
map
.
put
(
"fdjb"
,
fdjb
);
return
map
;
return
map
;
}
}
...
...
qianhe-ydsj/src/main/java/com/qianhe/controller/SjGfjsZdgzController.java
View file @
91bc5fad
...
@@ -155,4 +155,16 @@ public class SjGfjsZdgzController extends BaseController
...
@@ -155,4 +155,16 @@ public class SjGfjsZdgzController extends BaseController
return
success
(
sjGfjsZdgzService
.
getPjbzList
(
cb
));
return
success
(
sjGfjsZdgzService
.
getPjbzList
(
cb
));
}
}
/**
* 修改规范建设-重点工作 原考核评价标准
*/
// @PreAuthorize("@ss.hasPermi('system:sjGfjsZdgz:edit')")
@Log
(
title
=
"规范建设-重点工作 原考核评价标准"
,
businessType
=
BusinessType
.
UPDATE
)
@PutMapping
(
"/editQzxs"
)
public
AjaxResult
editQzxs
(
@RequestBody
SjGfjsZdgz
sjGfjsZdgz
)
{
return
toAjax
(
sjGfjsZdgzService
.
updateSjGfjsZdgz_QZXS
(
sjGfjsZdgz
));
}
}
}
qianhe-ydsj/src/main/java/com/qianhe/domain/SjGfjsZsdwkhpjZb.java
View file @
91bc5fad
...
@@ -189,4 +189,9 @@ public class SjGfjsZsdwkhpjZb extends BaseEntity
...
@@ -189,4 +189,9 @@ public class SjGfjsZsdwkhpjZb extends BaseEntity
*/
*/
private
String
zt
;
private
String
zt
;
/**
* ABCD
*/
private
String
fdjb
;
}
}
qianhe-ydsj/src/main/java/com/qianhe/mapper/SjGfjsZdgzMapper.java
View file @
91bc5fad
...
@@ -103,5 +103,7 @@ public interface SjGfjsZdgzMapper
...
@@ -103,5 +103,7 @@ public interface SjGfjsZdgzMapper
List
<
SjGfjsZdgzCb
>
selectSjGfjsZdgzCxBzList
(
SjGfjsZdgz
sjGfjsZdgz
);
List
<
SjGfjsZdgzCb
>
selectSjGfjsZdgzCxBzList
(
SjGfjsZdgz
sjGfjsZdgz
);
public
int
updateSjGfjsZdgz_QZXS
(
SjGfjsZdgz
sjGfjsZdgz
);
}
}
qianhe-ydsj/src/main/java/com/qianhe/service/ISjGfjsZdgzService.java
View file @
91bc5fad
...
@@ -71,4 +71,6 @@ public interface ISjGfjsZdgzService
...
@@ -71,4 +71,6 @@ public interface ISjGfjsZdgzService
List
<
SjGfjsZdgzCb
>
getPjbzList
(
SjGfjsZdgzCb
cb
);
List
<
SjGfjsZdgzCb
>
getPjbzList
(
SjGfjsZdgzCb
cb
);
public
int
updateSjGfjsZdgz_QZXS
(
SjGfjsZdgz
sjGfjsZdgz
);
}
}
qianhe-ydsj/src/main/java/com/qianhe/service/impl/SjGfjsJcdwkhpjServiceImpl.java
View file @
91bc5fad
...
@@ -6,18 +6,22 @@ import com.qianhe.common.core.domain.entity.SysDictData;
...
@@ -6,18 +6,22 @@ import com.qianhe.common.core.domain.entity.SysDictData;
import
com.qianhe.common.utils.DateUtils
;
import
com.qianhe.common.utils.DateUtils
;
import
com.qianhe.common.utils.SecurityUtils
;
import
com.qianhe.common.utils.SecurityUtils
;
import
com.qianhe.common.utils.StringUtils
;
import
com.qianhe.common.utils.StringUtils
;
import
com.qianhe.domain.SjGfjsZsdwkhpj
;
import
com.qianhe.domain.*
;
import
com.qianhe.domain.SjGfjsZsdwkhpjZb
;
import
com.qianhe.mapper.SjGfjsZsdwkhpjMapper
;
import
com.qianhe.mapper.SjGfjsZsdwkhpjMapper
;
import
com.qianhe.mapper.SjGfjsZsdwkhpjZbMapper
;
import
com.qianhe.mapper.SjGfjsZsdwkhpjZbMapper
;
import
com.qianhe.service.ISjGfjsDxjczService
;
import
com.qianhe.service.ISjGfjsFdgzService
;
import
com.qianhe.service.ISjGfjsJcdwkhpjService
;
import
com.qianhe.service.ISjGfjsJcdwkhpjService
;
import
com.qianhe.service.ISjGfjsZdgzService
;
import
com.qianhe.system.mapper.SysDeptMapper
;
import
com.qianhe.system.mapper.SysDeptMapper
;
import
com.qianhe.system.mapper.SysDictDataMapper
;
import
com.qianhe.system.mapper.SysDictDataMapper
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
...
@@ -122,93 +126,110 @@ public class SjGfjsJcdwkhpjServiceImpl implements ISjGfjsJcdwkhpjService
...
@@ -122,93 +126,110 @@ public class SjGfjsJcdwkhpjServiceImpl implements ISjGfjsJcdwkhpjService
return
sjGfjsZsdwkhpjMapper
.
batchSave
(
addList
);
return
sjGfjsZsdwkhpjMapper
.
batchSave
(
addList
);
}
}
@Autowired
private
ISjGfjsZdgzService
sjGfjsZdgzService
;
@Autowired
private
ISjGfjsDxjczService
sjGfjsDxjczService
;
@Autowired
private
ISjGfjsFdgzService
sjGfjsFdgzService
;
// 定义默认的最大值
private
static
final
BigDecimal
DEFAULT_MAX
=
new
BigDecimal
(
"99999"
);
// 定义默认的最小值
private
static
final
BigDecimal
DEFAULT_MIN
=
BigDecimal
.
ZERO
;
@Override
@Override
public
int
pledit
(
List
<
SjGfjsZsdwkhpj
>
list
)
{
public
int
pledit
(
List
<
SjGfjsZsdwkhpj
>
list
)
{
//计算分数
//计算分数
SjGfjsZsdwkhpj
sjGfjsZsdwkhpj
=
list
.
get
(
0
);
SjGfjsZsdwkhpj
sjGfjsZsdwkhpj
=
list
.
get
(
0
);
SjGfjsZsdwkhpjZb
sjGfjsZsdwkhpjZb
=
sjGfjsZsdwkhpjZbMapper
.
selectSjGfjsZsdwkhpjZbById
(
sjGfjsZsdwkhpj
.
getZbId
());
SjGfjsZsdwkhpjZb
sjGfjsZsdwkhpjZb
=
sjGfjsZsdwkhpjZbMapper
.
selectSjGfjsZsdwkhpjZbById
(
sjGfjsZsdwkhpj
.
getZbId
());
SysDept
dept
=
sysDeptMapper
.
selectDeptById
(
sjGfjsZsdwkhpjZb
.
getDeptId
());
Map
<
String
,
List
<
SjGfjsZsdwkhpj
>>
stringListMap
=
list
.
stream
().
collect
(
Collectors
.
groupingBy
(
SjGfjsZsdwkhpj:
:
getKhnr
));
List
<
SysDictData
>
zdbfKhnr
=
sysDictDataMapper
.
selectDictDataByType
(
"gfjs_sslj"
);
for
(
SysDictData
data:
zdbfKhnr
){
String
nd
=
sjGfjsZsdwkhpjZb
.
getNd
();
String
dictValue
=
data
.
getDictValue
();
// 查询权重系数,
List
<
SjGfjsZsdwkhpj
>
sjGfjsZsdwkhpjs
=
stringListMap
.
get
(
data
.
getDictValue
());
SjGfjsZdgz
sjGfjsZdgz_qz
=
new
SjGfjsZdgz
();
//计算分数
sjGfjsZdgz_qz
.
setNd
(
nd
);
List
<
Double
>
doubleList
=
new
ArrayList
<>();
sjGfjsZdgz_qz
.
setLx
(
"基础"
);
if
(
sjGfjsZsdwkhpjs
==
null
){
List
<
SjGfjsZdgz
>
qzlist
=
sjGfjsZdgzService
.
selectSjGfjsZdgzList
(
sjGfjsZdgz_qz
);
continue
;
// 查询基础值,
}
SjGfjsDxjcz
sjGfjsDxjcz
=
new
SjGfjsDxjcz
();
// sjGfjsZsdwkhpjs.forEach(item->{
sjGfjsDxjcz
.
setNd
(
nd
);
// if(StringUtils.isEmpty(item.getKhfz())){
List
<
SjGfjsDxjcz
>
jczlist
=
sjGfjsDxjczService
.
selectSjGfjsDxjczList
(
sjGfjsDxjcz
);
// item.setKhfz("0");
Map
<
String
,
BigDecimal
>
jczMap
=
new
HashMap
<>();
// }
for
(
SjGfjsDxjcz
dxjcz
:
jczlist
)
{
// doubleList.add(Double.parseDouble(item.getKhfz()));
try
{
// });
// 将基础值字符串转换为BigDecimal
// double kf = doubleList.stream().mapToDouble(Double::doubleValue).sum();
BigDecimal
jczValue
=
new
BigDecimal
(
dxjcz
.
getJcz
());
// if("党建引领".equals(dictValue)){
jczMap
.
put
(
dxjcz
.
getJb
(),
jczValue
);
// //扣分
}
catch
(
NumberFormatException
e
)
{
// sjGfjsZsdwkhpjZb.setDjyjkfs(new BigDecimal(kf));
throw
new
IllegalArgumentException
(
"基础值格式错误,级别:"
+
dxjcz
.
getJb
()
+
",值:"
+
dxjcz
.
getJcz
(),
e
);
// //扣分比列
}
// BigDecimal df = sjGfjsZsdwkhpjZb.getDjyjzfs().add(new BigDecimal(kf));
}
// BigDecimal kfbl =df.divide(sjGfjsZsdwkhpjZb.getDjyjzfs(),BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP);
// 分档规则
// sjGfjsZsdwkhpjZb.setDjyjkfbl(new BigDecimal(100).subtract(kfbl));
SjGfjsFdgz
sjGfjsFdgz
=
new
SjGfjsFdgz
();
// //得分
sjGfjsFdgz
.
setNd
(
nd
);
// sjGfjsZsdwkhpjZb.setDjyjdf(df);
List
<
SjGfjsFdgz
>
fdgzlist
=
sjGfjsFdgzService
.
selectSjGfjsFdgzList
(
sjGfjsFdgz
);
//
//
// } else if ("素质提升".equals(dictValue)) {
// 计算总得分
////扣分
BigDecimal
totalScore
=
BigDecimal
.
ZERO
;
// sjGfjsZsdwkhpjZb.setSztskfs(new BigDecimal(kf));
for
(
int
i
=
0
;
i
<
qzlist
.
size
();
i
++){
// //扣分比列
SjGfjsZdgz
qzxsMap
=
qzlist
.
get
(
i
);
// BigDecimal df = sjGfjsZsdwkhpjZb.getSztszfs().add(new BigDecimal(kf));
BigDecimal
qzxs
=
new
BigDecimal
(
qzxsMap
.
getKhnrfs
());
// 系数
// /* BigDecimal aa = df.divide(sjGfjsZsdwkhpjZb.getSztszfs(),4,BigDecimal.ROUND_HALF_UP);
String
khxd
=
qzxsMap
.
getKhxd
();
// BigDecimal bb = aa.multiply(new BigDecimal(100));
// BigDecimal cc = bb.setScale(2, BigDecimal.ROUND_HALF_UP);*/
List
<
SjGfjsZsdwkhpj
>
filteredDetails
=
list
.
stream
().
filter
(
item
->
khxd
.
equals
(
item
.
getKhxd
())).
collect
(
Collectors
.
toList
());
//
// BigDecimal kfbl =df.divide(sjGfjsZsdwkhpjZb.getSztszfs(),4,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP);
// 计算小项得分总和
// sjGfjsZsdwkhpjZb.setSztsfbl(new BigDecimal(100).subtract(kfbl));
BigDecimal
xmTotal
=
BigDecimal
.
ZERO
;
// //得分
int
validCount
=
0
;
// sjGfjsZsdwkhpjZb.setSztsdf(df);
for
(
SjGfjsZsdwkhpj
detail
:
filteredDetails
)
{
// } else if ("管理精益".equals(dictValue)) {
String
khfz
=
detail
.
getKhfz
();
// 小项ABCD结果
// sjGfjsZsdwkhpjZb.setGlgfkfs(new BigDecimal(kf));
BigDecimal
jcz
=
jczMap
.
get
(
khfz
);
// //扣分比列
xmTotal
=
xmTotal
.
add
(
jcz
);
// BigDecimal df = sjGfjsZsdwkhpjZb.getGlgfzfs().add(new BigDecimal(kf));
validCount
++;
// BigDecimal kfbl =df.divide(sjGfjsZsdwkhpjZb.getGlgfzfs(),4,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP);
}
// sjGfjsZsdwkhpjZb.setGlgfbl(new BigDecimal(100).subtract(kfbl));
// 计算小项平均分(如果没有有效小项,得分为0)
// //得分
BigDecimal
avgScore
=
BigDecimal
.
ZERO
;
// sjGfjsZsdwkhpjZb.setGlgfdf(df);
if
(
validCount
>
0
)
{
// } else if ("业务创效".equals(dictValue)) {
avgScore
=
xmTotal
.
divide
(
new
BigDecimal
(
validCount
),
2
,
RoundingMode
.
HALF_UP
);
// sjGfjsZsdwkhpjZb.setYwcxkfs(new BigDecimal(kf));
}
// //扣分比列
// BigDecimal df = sjGfjsZsdwkhpjZb.getYwcxzfs().add(new BigDecimal(kf));
// 计算单项得分并累加
// BigDecimal kfbl =df.divide(sjGfjsZsdwkhpjZb.getYwcxzfs(),4,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP);
BigDecimal
itemScore
=
qzxs
.
multiply
(
avgScore
);
// sjGfjsZsdwkhpjZb.setYwcxbl(new BigDecimal(100).subtract(kfbl));
totalScore
=
totalScore
.
add
(
itemScore
);
// //得分
}
// sjGfjsZsdwkhpjZb.setYwcxdf(df);
// }
// 计算单位分档级别
//
String
fdjb
=
"未知"
;
// }
for
(
SjGfjsFdgz
fdgz
:
fdgzlist
)
{
//
// 处理最小基础值(null或空字符串视为0)
// BigDecimal sum = sjGfjsZsdwkhpjZb.getDjyjzfs().add(sjGfjsZsdwkhpjZb.getSztszfs()).add(sjGfjsZsdwkhpjZb.getGlgfzfs()).add(sjGfjsZsdwkhpjZb.getYwcxzfs());
BigDecimal
minJcz
=
DEFAULT_MIN
;
// //总得分
String
minStr
=
fdgz
.
getMinjcz
();
// BigDecimal sunfs = sjGfjsZsdwkhpjZb.getDjyjdf().add(sjGfjsZsdwkhpjZb.getSztsdf()).add(sjGfjsZsdwkhpjZb.getGlgfdf()).add(sjGfjsZsdwkhpjZb.getYwcxdf());
if
(
minStr
!=
null
&&
!
minStr
.
trim
().
isEmpty
())
{
// sjGfjsZsdwkhpjZb.setZdf(sunfs);
minJcz
=
new
BigDecimal
(
minStr
.
trim
());
// //总扣分
}
// sjGfjsZsdwkhpjZb.setZkf(sum.subtract(sunfs));
// //总扣分比例
// 处理最大基础值(null或空字符串视为99999)
// BigDecimal bigDecimal = sunfs.divide(sum,4,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP);
BigDecimal
maxJcz
=
DEFAULT_MAX
;
// sjGfjsZsdwkhpjZb.setZkfbl(new BigDecimal(100).subtract(bigDecimal));
String
maxStr
=
fdgz
.
getMaxjcz
();
// //综合得分
if
(
maxStr
!=
null
&&
!
maxStr
.
trim
().
isEmpty
())
{
// String deptDfl = dept.getDeptDfl();
maxJcz
=
new
BigDecimal
(
maxStr
.
trim
());
// if(StringUtils.isNotEmpty(deptDfl)){
// if ("B类".equals(deptDfl)) {
// sjGfjsZsdwkhpjZb.setZhdf( sunfs.multiply(new BigDecimal(0.9)).setScale(2, BigDecimal.ROUND_HALF_UP));
// }else if ("C类".equals(deptDfl)) {
// sjGfjsZsdwkhpjZb.setZhdf( sunfs.multiply(new BigDecimal(0.85)).setScale(2, BigDecimal.ROUND_HALF_UP));
// }else {
// sjGfjsZsdwkhpjZb.setZhdf(sunfs);
// }
}
}
// 检查总分是否在当前分档的范围内(包含边界值)
// 比较规则:minJcz ≤ totalScore < maxJcz
if
(
totalScore
.
compareTo
(
minJcz
)
>=
0
&&
totalScore
.
compareTo
(
maxJcz
)
<
0
)
{
fdjb
=
fdgz
.
getJb
();
// 返回匹配的级别
}
}
sjGfjsZsdwkhpjZb
.
setZdf
(
totalScore
);
sjGfjsZsdwkhpjZb
.
setZhdf
(
totalScore
);
sjGfjsZsdwkhpjZb
.
setFdjb
(
fdjb
);
//更新主表
//更新主表
sjGfjsZsdwkhpjZbMapper
.
updateSjGfjsZsdwkhpjZb
(
sjGfjsZsdwkhpjZb
);
sjGfjsZsdwkhpjZbMapper
.
updateSjGfjsZsdwkhpjZb
(
sjGfjsZsdwkhpjZb
);
return
sjGfjsZsdwkhpjMapper
.
pledit
(
list
);
return
sjGfjsZsdwkhpjMapper
.
pledit
(
list
);
...
...
qianhe-ydsj/src/main/java/com/qianhe/service/impl/SjGfjsZdgzServiceImpl.java
View file @
91bc5fad
...
@@ -166,4 +166,11 @@ public class SjGfjsZdgzServiceImpl implements ISjGfjsZdgzService
...
@@ -166,4 +166,11 @@ public class SjGfjsZdgzServiceImpl implements ISjGfjsZdgzService
}
}
}
}
}
}
@Transactional
@Override
public
int
updateSjGfjsZdgz_QZXS
(
SjGfjsZdgz
sjGfjsZdgz
)
{
return
sjGfjsZdgzMapper
.
updateSjGfjsZdgz_QZXS
(
sjGfjsZdgz
);
}
}
}
qianhe-ydsj/src/main/resources/mapper/SjGfjsZdgzMapper.xml
View file @
91bc5fad
...
@@ -214,4 +214,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -214,4 +214,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
( #{item.id}, #{item.zbId}, #{item.nd}, #{item.lx}, #{item.khnr}, #{item.khxd}, #{item.pjbz}, #{item.px}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark}, #{item.yl1}, #{item.yl2}, #{item.yl3}, #{item.yl4}, #{item.yl5})
( #{item.id}, #{item.zbId}, #{item.nd}, #{item.lx}, #{item.khnr}, #{item.khxd}, #{item.pjbz}, #{item.px}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark}, #{item.yl1}, #{item.yl2}, #{item.yl3}, #{item.yl4}, #{item.yl5})
</foreach>
</foreach>
</insert>
</insert>
<update
id=
"updateSjGfjsZdgz_QZXS"
parameterType=
"SjGfjsZdgz"
>
update sj_gfjs_zdgz
<trim
prefix=
"SET"
suffixOverrides=
","
>
<if
test=
"khnrfs != null"
>
khnrfs = #{khnrfs},
</if>
</trim>
where id = #{id}
</update>
</mapper>
</mapper>
\ No newline at end of file
qianhe-ydsj/src/main/resources/mapper/SjGfjsZsdwkhpjZbMapper.xml
View file @
91bc5fad
...
@@ -51,6 +51,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -51,6 +51,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result
property=
"pm"
column=
"pm"
/>
<result
property=
"pm"
column=
"pm"
/>
<result
property=
"zt"
column=
"zt"
/>
<result
property=
"zt"
column=
"zt"
/>
<result
property=
"fdjb"
column=
"fdjb"
/>
</resultMap>
</resultMap>
<sql
id=
"selectSjGfjsZsdwkhpjZbVo"
>
<sql
id=
"selectSjGfjsZsdwkhpjZbVo"
>
...
@@ -95,7 +96,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -95,7 +96,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
yl2,
yl2,
yl3,
yl3,
yl4,
yl4,
yl5,d.dept_name,p.dept_name parent_name, a.pm, a.zt
yl5,d.dept_name,p.dept_name parent_name, a.pm, a.zt
,a.fdjb
from sj_gfjs_zsdwkhpj_zb a
from sj_gfjs_zsdwkhpj_zb a
left join sys_dept d on a.dept_id=d.dept_id
left join sys_dept d on a.dept_id=d.dept_id
left join sys_dept p on a.parent_dept_id=p.dept_id
</sql>
left join sys_dept p on a.parent_dept_id=p.dept_id
</sql>
...
@@ -140,6 +141,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -140,6 +141,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"yl5 != null and yl5 != ''"
>
and yl5 = #{yl5}
</if>
<if
test=
"yl5 != null and yl5 != ''"
>
and yl5 = #{yl5}
</if>
<if
test=
"pm != null and pm != ''"
>
and pm = #{pm}
</if>
<if
test=
"pm != null and pm != ''"
>
and pm = #{pm}
</if>
<if
test=
"zt != null and zt != ''"
>
and zt = #{zt}
</if>
<if
test=
"zt != null and zt != ''"
>
and zt = #{zt}
</if>
<if
test=
"fdjb != null and fdjb != ''"
>
and fdjb = #{fdjb}
</if>
<if
test=
"df != null "
>
and zdf
<
= #{df}
</if>
<if
test=
"df != null "
>
and zdf
<
= #{df}
</if>
<if
test=
"kfbl != null "
>
and zkfbl >= #{kfbl}
</if>
<if
test=
"kfbl != null "
>
and zkfbl >= #{kfbl}
</if>
<if
test=
"fjx != null and fjx.toString()=='1'.toString() "
>
and sffjxs >= #{fjx}
</if>
<if
test=
"fjx != null and fjx.toString()=='1'.toString() "
>
and sffjxs >= #{fjx}
</if>
...
@@ -203,6 +205,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -203,6 +205,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"yl5 != null"
>
yl5,
</if>
<if
test=
"yl5 != null"
>
yl5,
</if>
<if
test=
"pm != null"
>
pm,
</if>
<if
test=
"pm != null"
>
pm,
</if>
<if
test=
"zt != null"
>
zt,
</if>
<if
test=
"zt != null"
>
zt,
</if>
<if
test=
"fdjb != null"
>
fdjb,
</if>
</trim>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"deptId != null"
>
#{deptId},
</if>
<if
test=
"deptId != null"
>
#{deptId},
</if>
...
@@ -247,6 +250,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -247,6 +250,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"yl5 != null"
>
#{yl5},
</if>
<if
test=
"yl5 != null"
>
#{yl5},
</if>
<if
test=
"pm != null"
>
#{pm},
</if>
<if
test=
"pm != null"
>
#{pm},
</if>
<if
test=
"zt != null"
>
#{zt},
</if>
<if
test=
"zt != null"
>
#{zt},
</if>
<if
test=
"fdjb != null"
>
#{fdjb},
</if>
</trim>
</trim>
</insert>
</insert>
...
@@ -295,6 +299,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -295,6 +299,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"yl5 != null"
>
yl5 = #{yl5},
</if>
<if
test=
"yl5 != null"
>
yl5 = #{yl5},
</if>
<if
test=
"pm != null"
>
pm = #{pm},
</if>
<if
test=
"pm != null"
>
pm = #{pm},
</if>
<if
test=
"zt != null"
>
zt = #{zt},
</if>
<if
test=
"zt != null"
>
zt = #{zt},
</if>
<if
test=
"fdjb != null"
>
fdjb = #{fdjb},
</if>
</trim>
</trim>
where id = #{id}
where id = #{id}
</update>
</update>
...
...
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