Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
dc-cost-system
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
bltdc
dc-cost-system
Commits
80032e4c
Commit
80032e4c
authored
Dec 16, 2020
by
huluobin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
审批流涉及到的人要展示出来,比如待部门审核,需要审批人
parent
e81c22f5
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
73 additions
and
58 deletions
+73
-58
CostDto.java
...api/src/main/java/com/bailuntec/cost/api/dto/CostDto.java
+0
-0
CostLogDao.java
...c/main/java/com/blt/other/module/cost/dao/CostLogDao.java
+3
-0
CostLogService.java
...ava/com/blt/other/module/cost/service/CostLogService.java
+2
-1
CostLogServiceImpl.java
...lt/other/module/cost/service/impl/CostLogServiceImpl.java
+2
-2
CostTypeKindServiceImpl.java
...her/module/cost/service/impl/CostTypeKindServiceImpl.java
+0
-0
FinalCheckState.java
...r/module/cost/service/impl/costcheck/FinalCheckState.java
+32
-16
CostFileUtil.java
...in/java/com/blt/other/module/cost/utils/CostFileUtil.java
+3
-3
log4j2.xml
bailuntec-cost-core/src/main/resources/log4j2.xml
+1
-1
Cost.xml
bailuntec-cost-core/src/main/resources/mapper/Cost.xml
+7
-18
CostListSearchMapper.xml
...t-core/src/main/resources/mapper/CostListSearchMapper.xml
+5
-0
CostLogMapper.xml
...tec-cost-core/src/main/resources/mapper/CostLogMapper.xml
+17
-16
CodeGenerator.java
...-cost-core/src/test/java/com/blt/other/CodeGenerator.java
+1
-1
No files found.
bailuntec-cost-api/src/main/java/com/bailuntec/cost/api/dto/CostDto.java
View file @
80032e4c
This diff is collapsed.
Click to expand it.
bailuntec-cost-core/src/main/java/com/blt/other/module/cost/dao/CostLogDao.java
View file @
80032e4c
...
...
@@ -13,4 +13,7 @@ public interface CostLogDao {
Integer
insert
(
CostLogDomain
log
);
List
<
CostLogDomain
>
selectByCostNo
(
String
costNo
);
//查询部门审核日志
CostLogDomain
selectDepartmentCheckLog
(
String
costNo
);
}
bailuntec-cost-core/src/main/java/com/blt/other/module/cost/service/CostLogService.java
View file @
80032e4c
...
...
@@ -10,9 +10,10 @@ public interface CostLogService {
Integer
save
(
String
costNo
,
Integer
updateUserid
,
String
updateMainNote
,
Integer
type
);
Integer
saveByManage
(
String
costNo
,
String
updateMainNote
,
Integer
type
);
void
saveByManage
(
String
costNo
,
String
updateMainNote
,
Integer
type
);
List
<
CostLogDomain
>
getListByCostNo
(
String
costNo
);
List
<
String
>
getListLogs
(
List
<
CostLogDomain
>
logs
);
}
bailuntec-cost-core/src/main/java/com/blt/other/module/cost/service/impl/CostLogServiceImpl.java
View file @
80032e4c
...
...
@@ -67,7 +67,7 @@ public class CostLogServiceImpl implements CostLogService {
CostCompanyDao
costCompanyDao
;
@Override
public
Integer
saveByManage
(
String
costNo
,
String
updateMainNote
,
Integer
type
)
{
public
void
saveByManage
(
String
costNo
,
String
updateMainNote
,
Integer
type
)
{
CostLogDomain
costLog
=
new
CostLogDomain
();
costLog
.
setCostNo
(
costNo
);
costLog
.
setUpdateTime
(
new
Date
());
...
...
@@ -115,7 +115,7 @@ public class CostLogServiceImpl implements CostLogService {
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
costLog
.
setUpdateNote
(
sdf
.
format
(
costLog
.
getUpdateTime
())
+
" "
+
updateMainNote
+
" 更新人:"
+
reviewer
.
getUserName
());
costLog
.
setType
(
type
);
return
costLogDao
.
insert
(
costLog
);
costLogDao
.
insert
(
costLog
);
}
@Override
...
...
bailuntec-cost-core/src/main/java/com/blt/other/module/cost/service/impl/CostTypeKindServiceImpl.java
View file @
80032e4c
This diff is collapsed.
Click to expand it.
bailuntec-cost-core/src/main/java/com/blt/other/module/cost/service/impl/costcheck/FinalCheckState.java
View file @
80032e4c
...
...
@@ -3,10 +3,12 @@ package com.blt.other.module.cost.service.impl.costcheck;
import
com.blt.other.common.exception.BizRuntimeException
;
import
com.blt.other.module.auth.model.CostReviewer
;
import
com.blt.other.module.cost.dao.CostCompanyDao
;
import
com.blt.other.module.cost.dao.CostLogDao
;
import
com.blt.other.module.cost.model.CostDomain
;
import
com.blt.other.module.cost.model.CostTemplate
;
import
com.blt.other.module.database.model.CostCompanyDomain
;
import
com.blt.other.module.database.model.CostLogDomain
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Component
;
import
org.springframework.transaction.annotation.Transactional
;
...
...
@@ -21,6 +23,7 @@ import java.time.LocalDateTime;
* @author robbendev
* @since 2020/10/30 2:57 下午
*/
@Slf4j
@Component
public
class
FinalCheckState
extends
CostState
{
...
...
@@ -28,7 +31,22 @@ public class FinalCheckState extends CostState {
UnPayState
unPayState
;
@Resource
CostCompanyDao
costCompanyDao
;
@Resource
CostLogDao
costLogDao
;
private
void
autoPass
()
{
CostDomain
costDomain
=
costContext
.
costDomain
;
costDomain
.
setCostStatus
(
CostDomain
.
STATUS_UN_PAY
);
costDomain
.
setLastModifyDate
(
LocalDateTime
.
now
());
costDao
.
updateById
(
costDomain
);
costLogService
.
saveByManage
(
costDomain
.
getCostNo
(),
"最终审核自动通过"
,
CostLogDomain
.
FINAL_AUTO_PASS
);
//流转状态
nextState
(
unPayState
);
//通知财务系统
costContext
.
costService
.
toFinancial
(
costDomain
);
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
...
...
@@ -44,15 +62,18 @@ public class FinalCheckState extends CostState {
throw
new
BizRuntimeException
(
"invalid status"
);
}
//部门审核人和最终审核人是同一个人,最终审核人自动通过。
CostLogDomain
costLogDomain
=
costLogDao
.
selectDepartmentCheckLog
(
costDomain
.
getCostNo
());
if
(
costLogDomain
!=
null
&&
costLogDomain
.
getUpdateUserid
().
equals
(
currentUserId
))
{
log
.
info
(
"费用单:{}部门审核人和最终审核人是同一个人,最终审核人自动通过。"
,
costDomain
.
getCostNo
());
this
.
autoPass
();
return
;
}
//如果不需要审核 并且主体不是工会 直接通过
if
(!
costTemplate
.
shouldFinalCheck
(
costDomain
))
{
costDomain
.
setCostStatus
(
CostDomain
.
STATUS_UN_PAY
);
costDomain
.
setLastModifyDate
(
LocalDateTime
.
now
());
costDao
.
updateById
(
costDomain
);
costLogService
.
saveByManage
(
costDomain
.
getCostNo
(),
"最终审核自动通过"
,
CostLogDomain
.
FINAL_AUTO_PASS
);
//通知财务系统
costContext
.
costService
.
toFinancial
(
costDomain
);
log
.
info
(
"费用单:{}不需要最终审核审核,并且主体不是工会。最终审核人自动通过"
,
costDomain
.
getCostNo
());
this
.
autoPass
();
return
;
}
...
...
@@ -60,15 +81,8 @@ public class FinalCheckState extends CostState {
if
(
costTemplate
.
shouldFinalAutoCheck
(
costDomain
))
{
//自动审核通过
if
(
this
.
autoCheck
(
costDomain
))
{
costDomain
.
setCostStatus
(
CostDomain
.
STATUS_UN_PAY
);
costDomain
.
setLastModifyDate
(
LocalDateTime
.
now
());
costDao
.
updateById
(
costDomain
);
costLogService
.
saveByManage
(
costDomain
.
getCostNo
(),
"最终审核自动通过"
,
CostLogDomain
.
FINAL_AUTO_PASS
);
//流转状态
nextState
(
unPayState
);
//通知财务系统
costContext
.
costService
.
toFinancial
(
costDomain
);
log
.
info
(
"费用单:{}需要自动审核并且自动审核规则校验通过.最终审核人自动通过"
,
costDomain
.
getCostNo
());
this
.
autoPass
();
return
;
}
}
...
...
@@ -80,6 +94,7 @@ public class FinalCheckState extends CostState {
costDomain
.
setLastModifyDate
(
LocalDateTime
.
now
());
costDao
.
updateById
(
costDomain
);
log
.
info
(
"费用单:{}最终审核人工审核通过"
,
costDomain
.
getCostNo
());
costLogService
.
save
(
costDomain
.
getCostNo
(),
currentUserId
,
"最终审核通过"
,
CostLogDomain
.
FINAL_MANUAL_PASS
);
//流转状态
...
...
@@ -114,6 +129,7 @@ public class FinalCheckState extends CostState {
costContext
.
costService
.
reject
(
costDomain
.
getCostNo
());
log
.
info
(
"费用单:{}最终审核拒绝,理由:{}"
,
costDomain
.
getCostNo
(),
rejectReason
);
costLogService
.
save
(
costDomain
.
getCostNo
(),
currentUserId
,
"最终审核拒绝,理由:"
+
rejectReason
,
CostLogDomain
.
TYPE_UPDATE
);
}
...
...
bailuntec-cost-core/src/main/java/com/blt/other/module/cost/utils/CostFileUtil.java
View file @
80032e4c
...
...
@@ -6,9 +6,9 @@ import com.bailuntec.common.exception.BizException;
import
com.baomidou.mybatisplus.core.toolkit.IdWorker
;
import
com.blt.other.common.util.PathUtil
;
import
com.qiniu.common.QiniuException
;
import
com.qiniu.common.Zone
;
import
com.qiniu.http.Response
;
import
com.qiniu.storage.Configuration
;
import
com.qiniu.storage.Region
;
import
com.qiniu.storage.UploadManager
;
import
com.qiniu.storage.model.DefaultPutRet
;
import
com.qiniu.util.Auth
;
...
...
@@ -98,10 +98,10 @@ public class CostFileUtil {
return
qiniuUpload
(
localFile
);
}
@SuppressWarnings
(
"all"
)
public
String
qiniuUpload
(
File
localFilePath
)
{
//1、构造一个带指定Zone对象的配置类
Configuration
cfg
=
new
Configuration
(
Zone
.
zone2
());
// Configuration cfg = new Configuration(Zone.zone2());
Configuration
cfg
=
new
Configuration
(
Region
.
region2
());
//2、其他参数参考类注释
UploadManager
uploadManager
=
new
UploadManager
(
cfg
);
//3、生成上传凭证,然后准备上传
...
...
bailuntec-cost-core/src/main/resources/log4j2.xml
View file @
80032e4c
...
...
@@ -32,7 +32,7 @@
<AsyncLogger
name=
"io.lettuce"
level=
"ERROR"
includeLocation=
"true"
/>
<AsyncRoot
level=
"INFO"
includeLocation=
"true"
>
<appender-ref
ref=
"FILE"
/>
<
appender-ref
ref=
"CONSOLE"
/
>
<
!-- <appender-ref ref="CONSOLE"/>--
>
</AsyncRoot>
</Loggers>
...
...
bailuntec-cost-core/src/main/resources/mapper/Cost.xml
View file @
80032e4c
...
...
@@ -419,24 +419,14 @@
group_concat(distinct t8.reviewer_user_name) as hr_reviewer_user_name
from cost t1
left join cost_log t2 on t1.cost_no = t2.cost_no
<!--# <if test="req.type == 1">-->
left join cost_company t3 on t1.company_no = t3.company_no
-- 最终审核人
left join cost_reviewer t4 on t3.id = t4.refer_id and t4.type = 3
-- 财务审核人
left join cost_reviewer t5 on t3.id = t5.refer_id and t5.type = 2
<!--# </if>-->
-- 部门审核人
<!--# <if test="req.type == 2">-->
left join oa_user t6 on t1.create_userid = t6.oa_user_id
left join cost_reviewer t7 on t6.primary_department_id = t7.refer_id and t7.type = 1
<!--# </if>-->
-- 行政审核
<!--# <if test="req.type == 3">-->
left join cost_company t3 on t1.company_no = t3.company_no
left join cost_reviewer t8 on t3.id = t8.refer_id and t5.type = 4
<!--# </if>-->
left join cost_company t3 on t1.company_no = t3.company_no
left join cost_reviewer t4 on t3.id = t4.refer_id and t4.type = 3
left join cost_reviewer t5 on t3.id = t5.refer_id and t5.type = 2
left join oa_user t6 on t1.create_userid = t6.oa_user_id
left join cost_reviewer t7 on t6.primary_department_id = t7.refer_id and t7.type = 1
left join cost_reviewer t8 on t3.id = t8.refer_id and t5.type = 4
where true
/*财务 或者 最终审核 只显示待审核的*/
<if
test=
"req.type == 1"
>
and (t1.cost_status = 7 or t1.cost_status = 8)
...
...
@@ -486,7 +476,6 @@
order by t1.create_time desc
</select>
<select
id=
"appCheckCostList"
resultType=
"com.blt.other.module.cost.model.CostDomain"
>
select t1.*
from cost t1
...
...
bailuntec-cost-core/src/main/resources/mapper/CostListSearchMapper.xml
View file @
80032e4c
...
...
@@ -33,6 +33,11 @@
or company_name LIKE CONCAT('%',#{key},'%')
</if>
</foreach>
<foreach
collection=
"keys"
item=
"key"
index=
"index"
>
<if
test=
"key != null and key != '' "
>
or bank_card_user LIKE CONCAT('%',#{key},'%')
</if>
</foreach>
</select>
<select
id=
"selectByKeys"
resultType=
"com.blt.other.module.cost.model.CostDomain"
>
...
...
bailuntec-cost-core/src/main/resources/mapper/CostLogMapper.xml
View file @
80032e4c
...
...
@@ -4,24 +4,25 @@
<mapper
namespace=
"com.blt.other.module.cost.dao.CostLogDao"
>
<insert
id=
"insert"
useGeneratedKeys=
"true"
keyColumn=
"id"
keyProperty=
"id"
>
INSERT INTO
cost_log(
cost_no,update_usercode,update_username,update_time,update_note,update_userid
)
VALUE
(
#{costNo},#{updateUsercode},#{updateUsername},#{updateTime},#{updateNote},#{updateUserid}
)
INSERT INTO cost_log(cost_no, update_usercode, update_username, update_time, update_note, update_userid)
VALUE
(
#{costNo}, #{updateUsercode}, #{updateUsername}, #{updateTime}, #{updateNote}, #{updateUserid}
)
</insert>
<select
id=
"selectByCostNo"
resultType=
"com.blt.other.module.database.model.CostLogDomain"
>
SELECT
*
FROM
cost_log
WHERE
cost_no = #{costNo}
ORDER BY
id DESC
SELECT *
FROM cost_log
WHERE cost_no = #{costNo}
ORDER BY id DESC
</select>
<select
id=
"selectDepartmentCheckLog"
resultType=
"com.blt.other.module.database.model.CostLogDomain"
>
select *
from cost_log
where cost_no = #{costNo}
and type in (2, 3)
order by update_time desc
limit 1;
</select>
</mapper>
bailuntec-cost-core/src/test/java/com/blt/other/CodeGenerator.java
View file @
80032e4c
...
...
@@ -64,7 +64,7 @@ public class CodeGenerator {
PackageConfig
pc
=
new
PackageConfig
();
String
s
=
scanner
(
"模块名"
);
String
ss
=
"."
+
s
;
pc
.
setParent
(
"com.blt.other"
+
ss
);
pc
.
setParent
(
"com.blt.other
.module
"
+
ss
);
pc
.
setEntity
(
"model"
);
pc
.
setService
(
"service"
);
pc
.
setServiceImpl
(
"service"
+
".impl"
);
...
...
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