Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
attendance-performance-platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赵啸非
attendance-performance-platform
Commits
eaa2b774
Commit
eaa2b774
authored
Jul 13, 2023
by
赵啸非
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加申诉统计业务
parent
c6437a16
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
213 additions
and
1 deletion
+213
-1
attendance-performance-manager/src/main/java/com/mortals/xhx/common/code/AppealStatTypeEnum.java
.../java/com/mortals/xhx/common/code/AppealStatTypeEnum.java
+76
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/dao/PerformAttendAppealDao.java
...ortals/xhx/module/perform/dao/PerformAttendAppealDao.java
+5
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/dao/ibatis/PerformAttendAppealDaoImpl.java
...module/perform/dao/ibatis/PerformAttendAppealDaoImpl.java
+14
-1
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/model/vo/AppealInfo.java
...a/com/mortals/xhx/module/perform/model/vo/AppealInfo.java
+16
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/model/vo/PerformAttendAppealVo.java
...ls/xhx/module/perform/model/vo/PerformAttendAppealVo.java
+9
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/service/PerformAttendAppealService.java
...hx/module/perform/service/PerformAttendAppealService.java
+5
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/service/impl/PerformAttendAppealServiceImpl.java
.../perform/service/impl/PerformAttendAppealServiceImpl.java
+29
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/web/PerformAttendAppealController.java
...xhx/module/perform/web/PerformAttendAppealController.java
+25
-0
attendance-performance-manager/src/main/resources/sqlmap/module/perform/AppealMapperExt.xml
.../main/resources/sqlmap/module/perform/AppealMapperExt.xml
+34
-0
No files found.
attendance-performance-manager/src/main/java/com/mortals/xhx/common/code/AppealStatTypeEnum.java
0 → 100644
View file @
eaa2b774
package
com.mortals.xhx.common.code
;
import
java.util.LinkedHashMap
;
import
java.util.Map
;
/**
* @author: finegirl
* @date: 2021/7/16 11:50
* @description: //TODO 请完善注释信息
**/
public
enum
AppealStatTypeEnum
{
申诉次数部门排名
(
1
,
"deptName"
),
申诉次数个人排名
(
2
,
"staffName"
),
申诉次数规则排名
(
3
,
"ruleName"
);
private
int
value
;
private
String
desc
;
private
AppealStatTypeEnum
(
int
value
,
String
desc
)
{
this
.
value
=
value
;
this
.
desc
=
desc
;
}
public
int
getValue
()
{
return
this
.
value
;
}
public
String
getDesc
()
{
return
this
.
desc
;
}
public
static
AppealStatTypeEnum
getByValue
(
int
value
)
{
AppealStatTypeEnum
[]
var1
=
values
();
int
var2
=
var1
.
length
;
for
(
int
var3
=
0
;
var3
<
var2
;
++
var3
)
{
AppealStatTypeEnum
examStatus
=
var1
[
var3
];
if
(
examStatus
.
getValue
()
==
value
)
{
return
examStatus
;
}
}
return
null
;
}
public
static
Map
<
String
,
String
>
getEnumMap
(
int
...
eItem
)
{
Map
<
String
,
String
>
resultMap
=
new
LinkedHashMap
();
AppealStatTypeEnum
[]
var2
=
values
();
int
var3
=
var2
.
length
;
for
(
int
var4
=
0
;
var4
<
var3
;
++
var4
)
{
AppealStatTypeEnum
item
=
var2
[
var4
];
try
{
boolean
hasE
=
false
;
int
[]
var7
=
eItem
;
int
var8
=
eItem
.
length
;
for
(
int
var9
=
0
;
var9
<
var8
;
++
var9
)
{
int
e
=
var7
[
var9
];
if
(
item
.
getValue
()
==
e
)
{
hasE
=
true
;
break
;
}
}
if
(!
hasE
)
{
resultMap
.
put
(
item
.
getValue
()
+
""
,
item
.
getDesc
());
}
}
catch
(
Exception
var11
)
{
}
}
return
resultMap
;
}
}
\ No newline at end of file
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/dao/PerformAttendAppealDao.java
View file @
eaa2b774
package
com.mortals.xhx.module.perform.dao
;
import
com.mortals.framework.dao.ICRUDDao
;
import
com.mortals.framework.model.PageInfo
;
import
com.mortals.xhx.module.perform.model.PerformAttendAppealEntity
;
import
com.mortals.xhx.module.perform.model.vo.AppealInfo
;
import
java.util.List
;
/**
* 绩效记录申诉信息Dao
...
...
@@ -13,5 +16,7 @@ import java.util.List;
public
interface
PerformAttendAppealDao
extends
ICRUDDao
<
PerformAttendAppealEntity
,
Long
>{
String
SQLID_GET_STATLIST
=
"getStatList"
;
List
<
AppealInfo
>
getStatList
(
PerformAttendAppealEntity
query
,
PageInfo
pageInfo
);
}
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/dao/ibatis/PerformAttendAppealDaoImpl.java
View file @
eaa2b774
package
com.mortals.xhx.module.perform.dao.ibatis
;
import
com.mortals.framework.model.PageInfo
;
import
com.mortals.framework.model.ParamDto
;
import
com.mortals.xhx.module.perform.model.vo.AppealInfo
;
import
org.apache.ibatis.session.RowBounds
;
import
org.springframework.stereotype.Repository
;
import
com.mortals.xhx.module.perform.dao.PerformAttendAppealDao
;
import
com.mortals.xhx.module.perform.model.PerformAttendAppealEntity
;
...
...
@@ -17,5 +21,14 @@ import java.util.List;
public
class
PerformAttendAppealDaoImpl
extends
BaseCRUDDaoMybatis
<
PerformAttendAppealEntity
,
Long
>
implements
PerformAttendAppealDao
{
@Override
public
List
<
AppealInfo
>
getStatList
(
PerformAttendAppealEntity
query
,
PageInfo
pageInfo
)
{
ParamDto
queryParam
=
super
.
getQueryParam
(
query
);
if
(
pageInfo
.
getPrePageResult
()
==
-
1
)
{
return
getSqlSession
().
selectList
(
SQLID_GET_STATLIST
,
queryParam
);
}
else
{
RowBounds
rowBounds
=
new
RowBounds
(
pageInfo
.
getBeginIndex
(),
pageInfo
.
getPrePageResult
());
return
getSqlSession
().
selectList
(
SQLID_GET_STATLIST
,
queryParam
,
rowBounds
);
}
}
}
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/model/vo/AppealInfo.java
0 → 100644
View file @
eaa2b774
package
com.mortals.xhx.module.perform.model.vo
;
import
lombok.Data
;
@Data
public
class
AppealInfo
{
private
String
staffName
;
private
String
deptName
;
private
String
ruleName
;
private
Integer
number
;
}
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/model/vo/PerformAttendAppealVo.java
View file @
eaa2b774
...
...
@@ -16,4 +16,13 @@ import java.util.Date;
@Data
public
class
PerformAttendAppealVo
extends
BaseEntityLong
{
/**
* 时间
*/
private
Date
appealTimeStart
;
/**
* 统计类型(1.申诉次数部门排名,2.申诉次数个人排名,3.申诉次数规则排名)
*/
private
Integer
statType
;
}
\ No newline at end of file
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/service/PerformAttendAppealService.java
View file @
eaa2b774
...
...
@@ -5,6 +5,9 @@ import com.mortals.framework.model.Context;
import
com.mortals.framework.service.ICRUDService
;
import
com.mortals.xhx.module.perform.model.PerformAttendAppealEntity
;
import
com.mortals.xhx.module.perform.dao.PerformAttendAppealDao
;
import
com.mortals.xhx.module.perform.model.vo.AppealInfo
;
import
java.util.List
;
/**
* PerformAttendAppealService
...
...
@@ -21,4 +24,6 @@ public interface PerformAttendAppealService extends ICRUDService<PerformAttendAp
Rest
<
Void
>
audit
(
PerformAttendAppealEntity
appeal
,
Context
context
);
Rest
<
List
<
AppealInfo
>>
stat
(
PerformAttendAppealEntity
appeal
,
Context
context
);
}
\ No newline at end of file
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/service/impl/PerformAttendAppealServiceImpl.java
View file @
eaa2b774
package
com.mortals.xhx.module.perform.service.impl
;
import
cn.hutool.core.date.DateUtil
;
import
com.mortals.framework.common.Rest
;
import
com.mortals.framework.model.OrderCol
;
import
com.mortals.framework.model.PageInfo
;
import
com.mortals.xhx.common.code.*
;
import
com.mortals.xhx.common.utils.BeanUtil
;
import
com.mortals.xhx.module.check.model.*
;
import
com.mortals.xhx.module.check.service.*
;
import
com.mortals.xhx.module.perform.model.PerformAttendAppealQuery
;
import
com.mortals.xhx.module.perform.model.vo.AppealInfo
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.stereotype.Service
;
import
com.mortals.framework.service.impl.AbstractCRUDServiceImpl
;
...
...
@@ -147,6 +152,30 @@ public class PerformAttendAppealServiceImpl extends AbstractCRUDServiceImpl<Perf
return
Rest
.
ok
();
}
@Override
public
Rest
<
List
<
AppealInfo
>>
stat
(
PerformAttendAppealEntity
appeal
,
Context
context
)
{
PageInfo
pageInfo
=
new
PageInfo
(
20
);
//统计
String
groupName
=
AppealStatTypeEnum
.
getByValue
(
appeal
.
getStatType
()).
getDesc
();
PerformAttendAppealQuery
query
=
new
PerformAttendAppealQuery
();
if
(
ObjectUtils
.
isEmpty
(
appeal
.
getAppealTimeStart
()))
{
//未设置时间的情况,默认为当月
query
.
setCreateTimeStart
(
DateUtil
.
beginOfMonth
(
new
Date
()).
toDateStr
());
query
.
setCreateTimeEnd
(
DateUtil
.
today
());
}
else
{
//格式化到指定日期的当月
query
.
setCreateTimeStart
(
DateUtil
.
beginOfMonth
(
appeal
.
getAppealTimeStart
()).
toDateStr
());
query
.
setCreateTimeEnd
(
DateUtil
.
endOfMonth
(
appeal
.
getAppealTimeStart
()).
toDateStr
());
}
query
.
setGroupList
(
Arrays
.
asList
(
groupName
));
query
.
setOrderColList
(
Arrays
.
asList
(
new
OrderCol
(
"number"
,
OrderCol
.
DESCENDING
),
new
OrderCol
(
"month"
,
OrderCol
.
DESCENDING
),
new
OrderCol
(
"day"
,
OrderCol
.
DESCENDING
),
new
OrderCol
(
"createTime"
)));
List
<
AppealInfo
>
statList
=
this
.
getDao
().
getStatList
(
query
,
pageInfo
);
return
Rest
.
ok
(
statList
);
}
@Override
protected
void
saveAfter
(
PerformAttendAppealEntity
entity
,
Context
context
)
throws
AppException
{
...
...
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/web/PerformAttendAppealController.java
View file @
eaa2b774
...
...
@@ -6,6 +6,7 @@ import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import
com.mortals.xhx.base.system.param.service.ParamService
;
import
com.mortals.xhx.common.code.EnabledEnum
;
import
com.mortals.xhx.common.code.YesNoEnum
;
import
com.mortals.xhx.module.perform.model.vo.AppealInfo
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
...
...
@@ -65,6 +66,30 @@ public class PerformAttendAppealController extends BaseCRUDJsonBodyMappingContro
super
.
init
(
model
,
context
);
}
/**
* 申诉统计
*/
@PostMapping
(
value
=
"stat"
)
public
String
appealStat
(
@RequestBody
PerformAttendAppealEntity
appeal
)
{
JSONObject
jsonObject
=
new
JSONObject
();
String
busiDesc
=
this
.
getModuleDesc
()
+
"统计"
;
try
{
Rest
<
List
<
AppealInfo
>>
rest
=
this
.
service
.
stat
(
appeal
,
getContext
());
if
(
rest
.
getCode
()
==
YesNoEnum
.
NO
.
getValue
())
{
throw
new
AppException
(
"统计异常!"
);
}
else
{
jsonObject
.
put
(
KEY_RESULT_DATA
,
rest
.
getData
());
}
recordSysLog
(
request
,
busiDesc
+
" 【成功】"
);
jsonObject
.
put
(
KEY_RESULT_CODE
,
VALUE_RESULT_SUCCESS
);
}
catch
(
Exception
e
)
{
log
.
error
(
"申诉审核"
,
e
);
jsonObject
.
put
(
KEY_RESULT_CODE
,
VALUE_RESULT_FAILURE
);
jsonObject
.
put
(
KEY_RESULT_MSG
,
super
.
convertException
(
e
));
}
return
jsonObject
.
toJSONString
();
}
/**
* 申诉审核
...
...
attendance-performance-manager/src/main/resources/sqlmap/module/perform/AppealMapperExt.xml
0 → 100644
View file @
eaa2b774
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mortals.xhx.module.perform.dao.ibatis.PerformAttendAppealDaoImpl"
>
<!-- 字段和属性映射 -->
<resultMap
type=
"com.mortals.xhx.module.perform.model.vo.AppealInfo"
id=
"AppealInfo-Map"
>
<result
property=
"staffName"
column=
"staffName"
/>
<result
property=
"deptName"
column=
"deptName"
/>
<result
property=
"ruleName"
column=
"ruleName"
/>
<result
property=
"number"
column=
"number"
/>
</resultMap>
<!-- 获取统计列表 -->
<select
id=
"getStatList"
parameterType=
"paramDto"
resultMap=
"AppealInfo-Map"
>
select
<!-- 获取分组字段 -->
<if
test=
"groupList != null and !groupList.isEmpty()"
>
<foreach
collection=
"groupList"
open=
""
close=
""
index=
"index"
item=
"item"
>
${item},
</foreach>
</if>
count(IFNULL(a.id,0)) number
from mortals_xhx_perform_attend_appeal as a
<trim
suffixOverrides=
"where"
suffix=
""
>
where
<trim
prefixOverrides=
"and"
prefix=
""
>
<include
refid=
"_condition_"
/>
</trim>
</trim>
<include
refid=
"_group_by_"
/>
<include
refid=
"_orderCols_"
/>
</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