Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
H
haoban-manage3.0
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
haoban3.0
haoban-manage3.0
Commits
dcc62bd1
Commit
dcc62bd1
authored
Jan 19, 2022
by
fudahua
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat:批量操作待办
parent
d661ee70
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
128 additions
and
12 deletions
+128
-12
PendingTaskApiService.java
...oban/manage/api/service/notify/PendingTaskApiService.java
+3
-3
PendingTaskMapper.java
...c/haoban/manage/service/dao/mapper/PendingTaskMapper.java
+21
-2
PendingTaskService.java
...ban/manage/service/service/notify/PendingTaskService.java
+9
-0
PendingTaskServiceImpl.java
...e/service/service/notify/impl/PendingTaskServiceImpl.java
+34
-0
PendingTaskApiServiceImpl.java
...service/service/notify/out/PendingTaskApiServiceImpl.java
+3
-4
NoticeMessageMapper.xml
...service/src/main/resources/mapper/NoticeMessageMapper.xml
+3
-0
PendingTaskMapper.xml
...3-service/src/main/resources/mapper/PendingTaskMapper.xml
+46
-1
ServiceTest.java
haoban-manage3-service/src/test/java/ServiceTest.java
+9
-2
No files found.
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/service/notify/PendingTaskApiService.java
View file @
dcc62bd1
...
@@ -25,7 +25,7 @@ public interface PendingTaskApiService {
...
@@ -25,7 +25,7 @@ public interface PendingTaskApiService {
/**
/**
* 待办批量
* 待办批量
活动任务
*
*
* @param qdto
* @param qdto
*/
*/
...
@@ -110,9 +110,9 @@ public interface PendingTaskApiService {
...
@@ -110,9 +110,9 @@ public interface PendingTaskApiService {
public
ServiceResponse
<
Boolean
>
updateInvalidTime
(
String
relationId
,
Date
endTime
);
public
ServiceResponse
<
Boolean
>
updateInvalidTime
(
String
relationId
,
Date
endTime
);
/**
/**
* 更新失效或者结束时间
* 更新失效或者结束时间
活动任务
*
*
* @param
relation
Id
* @param
business
Id
* @param endTime
* @param endTime
* @return
* @return
*/
*/
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/dao/mapper/PendingTaskMapper.java
View file @
dcc62bd1
...
@@ -6,6 +6,7 @@ import org.apache.ibatis.annotations.Param;
...
@@ -6,6 +6,7 @@ import org.apache.ibatis.annotations.Param;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Set
;
@Mapper
@Mapper
public
interface
PendingTaskMapper
{
public
interface
PendingTaskMapper
{
...
@@ -39,6 +40,11 @@ public interface PendingTaskMapper {
...
@@ -39,6 +40,11 @@ public interface PendingTaskMapper {
TabPendingTask
getByRelationId
(
String
relationId
);
TabPendingTask
getByRelationId
(
String
relationId
);
/**
/**
* 根据关联id 查询单条
*/
List
<
TabPendingTask
>
listByRelationId
(
@Param
(
"relationIds"
)
List
<
String
>
relationIds
);
/**
* 分页查询待办任务表
* 分页查询待办任务表
*
*
* @param enterpriseId 企业id
* @param enterpriseId 企业id
...
@@ -80,10 +86,10 @@ public interface PendingTaskMapper {
...
@@ -80,10 +86,10 @@ public interface PendingTaskMapper {
/**
/**
* 更新失效时间
* 更新失效时间
*
*
* @param
enterprise
Id 企业id
* @param
business
Id 企业id
* @return
* @return
*/
*/
public
int
updateInvalidTimeByBusinessId
(
@Param
(
"businessId"
)
String
businessId
,
@Param
(
""
)
Date
invalidTime
);
public
int
updateInvalidTimeByBusinessId
(
@Param
(
"businessId"
)
String
businessId
,
@Param
(
"
invalidTime
"
)
Date
invalidTime
);
/**
/**
* 更新失效时间
* 更新失效时间
...
@@ -93,5 +99,17 @@ public interface PendingTaskMapper {
...
@@ -93,5 +99,17 @@ public interface PendingTaskMapper {
*/
*/
public
int
deleteByBusinessId
(
@Param
(
"businessId"
)
String
businessId
);
public
int
deleteByBusinessId
(
@Param
(
"businessId"
)
String
businessId
);
/**
* 批量插入
*/
int
insertBatch
(
@Param
(
"list"
)
List
<
TabPendingTask
>
list
);
/**
* 更新删除状态到正常 活动任务
* @param relationIds
* @return
*/
int
updateDelToNormalByRelationIds
(
@Param
(
"relationIds"
)
Set
<
String
>
relationIds
,
@Param
(
"invalidTime"
)
Date
invalidTime
);
}
}
\ No newline at end of file
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/notify/PendingTaskService.java
View file @
dcc62bd1
...
@@ -22,6 +22,14 @@ public interface PendingTaskService {
...
@@ -22,6 +22,14 @@ public interface PendingTaskService {
public
boolean
addOrUpdatePendingTask
(
PendingTaskBO
task
);
public
boolean
addOrUpdatePendingTask
(
PendingTaskBO
task
);
/**
/**
* 新增或更新
*
* @param task
* @return
*/
public
boolean
addOrUpdateBatchPendingTask
(
List
<
PendingTaskBO
>
task
);
/**
* 分页查询待办任务表
* 分页查询待办任务表
*
*
* @param enterpriseId 企业id
* @param enterpriseId 企业id
...
@@ -55,6 +63,7 @@ public interface PendingTaskService {
...
@@ -55,6 +63,7 @@ public interface PendingTaskService {
*/
*/
public
boolean
deletePendingTask
(
List
<
String
>
relationIds
);
public
boolean
deletePendingTask
(
List
<
String
>
relationIds
);
/**
/**
* 删除执行人列表
* 删除执行人列表
*
*
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/notify/impl/PendingTaskServiceImpl.java
View file @
dcc62bd1
...
@@ -15,6 +15,9 @@ import org.springframework.stereotype.Service;
...
@@ -15,6 +15,9 @@ import org.springframework.stereotype.Service;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Set
;
import
java.util.stream.Collectors
;
/**
/**
* Created 2021/12/15.
* Created 2021/12/15.
...
@@ -44,6 +47,37 @@ public class PendingTaskServiceImpl implements PendingTaskService {
...
@@ -44,6 +47,37 @@ public class PendingTaskServiceImpl implements PendingTaskService {
}
}
@Override
@Override
public
boolean
addOrUpdateBatchPendingTask
(
List
<
PendingTaskBO
>
tasks
)
{
if
(
CollectionUtils
.
isEmpty
(
tasks
))
{
return
true
;
}
List
<
String
>
relationIds
=
tasks
.
stream
().
map
(
mid
->
mid
.
getRelationId
()).
collect
(
Collectors
.
toList
());
List
<
TabPendingTask
>
tabPendingTasks
=
pendingTaskMapper
.
listByRelationId
(
relationIds
);
if
(
CollectionUtils
.
isNotEmpty
(
tabPendingTasks
))
{
Map
<
String
,
TabPendingTask
>
pendingTaskMap
=
tabPendingTasks
.
stream
().
collect
(
Collectors
.
toMap
(
tab
->
tab
.
getRelationId
(),
tab
->
tab
));
Set
<
String
>
hasRelationIds
=
pendingTaskMap
.
keySet
();
pendingTaskMapper
.
updateDelToNormalByRelationIds
(
hasRelationIds
,
tasks
.
get
(
0
).
getInvalidTime
());
tasks
=
tasks
.
stream
().
filter
(
mid
->!
pendingTaskMap
.
containsKey
(
mid
.
getRelationId
())).
collect
(
Collectors
.
toList
());
}
if
(
CollectionUtils
.
isEmpty
(
tasks
))
{
return
true
;
}
List
<
TabPendingTask
>
pendingTasks
=
EntityUtil
.
changeEntityListByJSON
(
TabPendingTask
.
class
,
tasks
);
int
size
=
100
;
int
len
=
pendingTasks
.
size
();
int
yu
=
len
%
size
;
int
nu
=
len
/
size
+(
yu
>
0
?
1
:
0
);
for
(
int
i
=
0
;
i
<
nu
;
i
++)
{
int
start
=
i
*
size
;
int
end
=(
start
+
size
)>
len
?(
start
+
yu
):(
start
+
size
);
List
<
TabPendingTask
>
midTask
=
pendingTasks
.
subList
(
start
,
end
);
pendingTaskMapper
.
insertBatch
(
midTask
);
}
return
true
;
}
@Override
public
Page
<
PendingTaskBO
>
pagePendingTask
(
String
enterpriseId
,
String
storeId
,
String
clerkId
,
int
taskType
,
int
finishFlag
,
int
overdueFlag
,
BasePageInfo
pageInfo
)
{
public
Page
<
PendingTaskBO
>
pagePendingTask
(
String
enterpriseId
,
String
storeId
,
String
clerkId
,
int
taskType
,
int
finishFlag
,
int
overdueFlag
,
BasePageInfo
pageInfo
)
{
PageHelper
.
startPage
(
pageInfo
);
PageHelper
.
startPage
(
pageInfo
);
List
<
TabPendingTask
>
tabPendingTasks
=
pendingTaskMapper
.
listPendingTask
(
enterpriseId
,
storeId
,
clerkId
,
taskType
,
finishFlag
,
overdueFlag
);
List
<
TabPendingTask
>
tabPendingTasks
=
pendingTaskMapper
.
listPendingTask
(
enterpriseId
,
storeId
,
clerkId
,
taskType
,
finishFlag
,
overdueFlag
);
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/notify/out/PendingTaskApiServiceImpl.java
View file @
dcc62bd1
...
@@ -25,6 +25,7 @@ import java.util.Date;
...
@@ -25,6 +25,7 @@ import java.util.Date;
import
java.util.List
;
import
java.util.List
;
import
java.util.regex.Matcher
;
import
java.util.regex.Matcher
;
import
java.util.regex.Pattern
;
import
java.util.regex.Pattern
;
import
java.util.stream.Collectors
;
/**
/**
* Created 2021/12/16.
* Created 2021/12/16.
...
@@ -46,14 +47,12 @@ public class PendingTaskApiServiceImpl implements PendingTaskApiService {
...
@@ -46,14 +47,12 @@ public class PendingTaskApiServiceImpl implements PendingTaskApiService {
@Override
@Override
public
ServiceResponse
<
Boolean
>
addPendingTaskBatch
(
List
<
PendingTaskQDTO
>
qdto
)
{
public
ServiceResponse
<
Boolean
>
addPendingTaskBatch
(
List
<
PendingTaskQDTO
>
qdto
)
{
//后续优化
if
(
CollectionUtils
.
isEmpty
(
qdto
))
{
if
(
CollectionUtils
.
isEmpty
(
qdto
))
{
return
ServiceResponse
.
success
(
true
);
return
ServiceResponse
.
success
(
true
);
}
}
qdto
.
forEach
(
mid
->
{
List
<
PendingTaskBO
>
list
=
EntityUtil
.
changeEntityListByJSON
(
PendingTaskBO
.
class
,
qdto
);
this
.
addPendingTask
(
mid
);
pendingTaskService
.
addOrUpdateBatchPendingTask
(
list
);
});
return
ServiceResponse
.
success
(
true
);
return
ServiceResponse
.
success
(
true
);
}
}
...
...
haoban-manage3-service/src/main/resources/mapper/NoticeMessageMapper.xml
View file @
dcc62bd1
...
@@ -217,6 +217,7 @@
...
@@ -217,6 +217,7 @@
from tab_haoban_notice_message
from tab_haoban_notice_message
where enterprise_id = #{enterpriseId}
where enterprise_id = #{enterpriseId}
and store_id = #{storeId}
and store_id = #{storeId}
and delete_flag=0
<if
test=
"clerkId != null"
>
<if
test=
"clerkId != null"
>
and clerk_id =#{clerkId}
and clerk_id =#{clerkId}
</if>
</if>
...
@@ -233,6 +234,7 @@
...
@@ -233,6 +234,7 @@
from tab_haoban_notice_message
from tab_haoban_notice_message
where enterprise_id = #{enterpriseId}
where enterprise_id = #{enterpriseId}
and read_flag=0
and read_flag=0
and delete_flag=0
and store_id = #{storeId}
and store_id = #{storeId}
<if
test=
"clerkId != null"
>
<if
test=
"clerkId != null"
>
and clerk_id =#{clerkId}
and clerk_id =#{clerkId}
...
@@ -250,6 +252,7 @@
...
@@ -250,6 +252,7 @@
WHERE enterprise_id = #{enterpriseId}
WHERE enterprise_id = #{enterpriseId}
and clerk_id = #{clerkId}
and clerk_id = #{clerkId}
and read_flag=0
and read_flag=0
and delete_flag=0
<if
test=
"categoryType!=-1"
>
<if
test=
"categoryType!=-1"
>
and category_type=#{categoryType}
and category_type=#{categoryType}
</if>
</if>
...
...
haoban-manage3-service/src/main/resources/mapper/PendingTaskMapper.xml
View file @
dcc62bd1
...
@@ -251,6 +251,16 @@
...
@@ -251,6 +251,16 @@
where relation_id = #{relationId}
where relation_id = #{relationId}
</select>
</select>
<select
id=
"listByRelationId"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from tab_haoban_pending_task
where relation_id in
<foreach
collection=
"relationIds"
open=
"("
separator=
","
close=
")"
item=
"item"
>
#{item}
</foreach>
</select>
<select
id=
"listPendingTask"
resultMap=
"BaseResultMap"
>
<select
id=
"listPendingTask"
resultMap=
"BaseResultMap"
>
select
select
<include
refid=
"Base_Column_List"
/>
<include
refid=
"Base_Column_List"
/>
...
@@ -310,7 +320,8 @@
...
@@ -310,7 +320,8 @@
update tab_haoban_pending_task
update tab_haoban_pending_task
set
set
update_time = now(),
update_time = now(),
invalid_time = #{invalidTime}
invalid_time = #{invalidTime},
overdue_time = #{invalidTime}
where business_id = #{businessId}
where business_id = #{businessId}
</update>
</update>
...
@@ -321,4 +332,37 @@
...
@@ -321,4 +332,37 @@
update_time = now()
update_time = now()
where business_id = #{businessId} and delete_flag=0
where business_id = #{businessId} and delete_flag=0
</update>
</update>
<insert
id=
"insertBatch"
>
insert into tab_haoban_pending_task ( enterprise_id, relation_id,
task_type, title, description,
task_status_flag, overdue_time, invalid_time,
store_id, clerk_id, finish_time,
finish_flag, overdue_flag, delete_flag,
create_time, update_time)
values
<foreach
collection=
"list"
item=
"item"
separator=
","
>
( #{item.enterpriseId,jdbcType=VARCHAR}, #{item.relationId,jdbcType=VARCHAR},
#{item.taskType,jdbcType=INTEGER}, #{item.title,jdbcType=VARCHAR}, #{item.description,jdbcType=VARCHAR},
0, #{item.overdueTime,jdbcType=TIMESTAMP}, #{item.invalidTime,jdbcType=TIMESTAMP},
#{item.storeId,jdbcType=VARCHAR}, #{item.clerkId,jdbcType=VARCHAR}, #{item.finishTime,jdbcType=TIMESTAMP},
0, 0, 0,
now(), now())
</foreach>
</insert>
<update
id=
"updateDelToNormalByRelationIds"
>
update tab_haoban_pending_task
set
delete_flag=0,
update_time = now(),
invalid_time = #{invalidTime},
overdue_time = #{invalidTime}
where
relation_id in
<foreach
collection=
"relationIds"
open=
"("
separator=
","
close=
")"
item=
"item"
>
#{item}
</foreach>
</update>
</mapper>
</mapper>
\ No newline at end of file
haoban-manage3-service/src/test/java/ServiceTest.java
View file @
dcc62bd1
...
@@ -75,8 +75,12 @@ public class ServiceTest {
...
@@ -75,8 +75,12 @@ public class ServiceTest {
@Test
@Test
public
void
test11
()
{
public
void
test11
()
{
List
<
PendingTaskQDTO
>
list
=
new
ArrayList
<>();
int
i
=
310
;
while
(
i
-->
0
)
{
PendingTaskQDTO
pendingTaskDTO
=
new
PendingTaskQDTO
();
PendingTaskQDTO
pendingTaskDTO
=
new
PendingTaskQDTO
();
pendingTaskDTO
.
setRelationId
(
"relatrionId"
);
pendingTaskDTO
.
setRelationId
(
"relatrionId"
+
i
);
pendingTaskDTO
.
setTaskType
(
1
==
TaskTypeEnum
.
TEL
.
getValue
()
?
PendingTaskTypeEnum
.
TEL_TASK
.
getType
()
:
PendingTaskTypeEnum
.
PERFORMANCE
.
getType
());
pendingTaskDTO
.
setTaskType
(
1
==
TaskTypeEnum
.
TEL
.
getValue
()
?
PendingTaskTypeEnum
.
TEL_TASK
.
getType
()
:
PendingTaskTypeEnum
.
PERFORMANCE
.
getType
());
pendingTaskDTO
.
setTitle
(
"标题"
);
pendingTaskDTO
.
setTitle
(
"标题"
);
pendingTaskDTO
.
setDescription
(
"内容"
);
pendingTaskDTO
.
setDescription
(
"内容"
);
...
@@ -84,7 +88,10 @@ public class ServiceTest {
...
@@ -84,7 +88,10 @@ public class ServiceTest {
pendingTaskDTO
.
setClerkId
(
"clerkId"
);
pendingTaskDTO
.
setClerkId
(
"clerkId"
);
pendingTaskDTO
.
setEnterpriseId
(
"eid"
);
pendingTaskDTO
.
setEnterpriseId
(
"eid"
);
pendingTaskDTO
.
setOverdueTime
(
new
Date
());
pendingTaskDTO
.
setOverdueTime
(
new
Date
());
pendingTaskApiService
.
addPendingTask
(
pendingTaskDTO
);
pendingTaskDTO
.
setInvalidTime
(
new
Date
());
list
.
add
(
pendingTaskDTO
);
}
pendingTaskApiService
.
addPendingTaskBatch
(
list
);
}
}
@Test
@Test
...
...
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