Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
yangxiujun
/
paidan_demo
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit 37029958
authored
Nov 06, 2023
by
Ren Ping
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix:排班结果工程师详情修改
1 parent
d9b4a449
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
115 additions
and
24 deletions
project-order/src/main/java/com/dituhui/pea/order/dto/ScheduleEngineerOverviewDynamics.java
project-order/src/main/java/com/dituhui/pea/order/dto/ScheduleEngineerOverviewResp.java
project-order/src/main/java/com/dituhui/pea/order/service/impl/ScheduleServiceImpl.java
project-order/src/main/java/com/dituhui/pea/order/dto/ScheduleEngineerOverviewDynamics.java
0 → 100644
View file @
3702995
package
com
.
dituhui
.
pea
.
order
.
dto
;
import
lombok.Data
;
@Data
public
class
ScheduleEngineerOverviewDynamics
{
/**
* 姓名
*/
private
String
name
;
/**
* 工程师工号
*/
private
String
engineerCode
;
/**
* 手机号码
*/
private
String
phone
;
/**
* 职级,c2,c1...
*/
private
String
grade
;
/**
* 日期
*/
private
String
date
;
/**
* 状态
*/
private
String
status
;
/**
* 总单数
*/
private
Integer
orderCount
;
/**
* 待服务数量
*/
private
Integer
toServiceCount
;
/**
* 服务中数量
*/
private
Integer
inServiceCount
;
/**
* 已完成数量
*/
private
Integer
finishedCount
;
/**
* 已取消数量
*/
private
Integer
canceledCount
;
/**
* 已改约数量
*/
private
Integer
rescheduledCount
;
/**
* 在途总耗时
*/
private
String
roadTotalElapsedTime
;
/**
* 在途里程数
*/
private
String
roadTotalDistance
;
/**
* 工作时间
*/
private
String
workTime
;
/**
* 交通工具
*/
private
String
vehicleName
;
}
project-order/src/main/java/com/dituhui/pea/order/dto/ScheduleEngineerOverviewResp.java
View file @
3702995
...
...
@@ -6,11 +6,12 @@ import java.util.List;
@Data
public
class
ScheduleEngineerOverviewResp
{
private
String
title
;
//
private String title;
private
String
engineerCode
;
private
String
startTime
;
private
String
endTime
;
private
List
<
LabelValueDTO
>
dynamics
;
//private List<LabelValueDTO> dynamics;
private
ScheduleEngineerOverviewDynamics
dynamics
;
private
List
<
TimeLineDTO
>
orders
;
private
List
<
Order
>
orderDetails
;
...
...
project-order/src/main/java/com/dituhui/pea/order/service/impl/ScheduleServiceImpl.java
View file @
3702995
...
...
@@ -196,27 +196,30 @@ public class ScheduleServiceImpl implements ScheduleService {
List
<
OrderInfoEntity
>
empty
=
new
ArrayList
<>();
Integer
countPending
=
statusGroup
.
getOrDefault
(
"INIT"
,
empty
).
size
()
+
statusGroup
.
getOrDefault
(
"CONTACTED"
,
empty
).
size
()
+
statusGroup
.
getOrDefault
(
"PENDING"
,
empty
).
size
();
List
<
LabelValueDTO
>
dynamics
=
new
ArrayList
<>();
dynamics
.
add
(
new
LabelValueDTO
(
"姓名"
,
engineer
.
getName
()));
dynamics
.
add
(
new
LabelValueDTO
(
"日期"
,
TimeUtils
.
IsoLocalDate2String
(
date
)));
dynamics
.
add
(
new
LabelValueDTO
(
"状态"
,
"上班"
));
dynamics
.
add
(
new
LabelValueDTO
(
"总单数"
,
orderAppointments
.
size
()
+
""
));
dynamics
.
add
(
new
LabelValueDTO
(
"待服务"
,
Integer
.
toString
(
countPending
)));
dynamics
.
add
(
new
LabelValueDTO
(
"服务中"
,
Integer
.
toString
(
statusGroup
.
getOrDefault
(
"STARTED"
,
empty
).
size
())));
dynamics
.
add
(
new
LabelValueDTO
(
"已完成"
,
Integer
.
toString
(
statusGroup
.
getOrDefault
(
"FINISHED"
,
empty
).
size
())));
dynamics
.
add
(
new
LabelValueDTO
(
"已取消"
,
Integer
.
toString
(
statusGroup
.
getOrDefault
(
"CANCELED"
,
empty
).
size
())));
dynamics
.
add
(
new
LabelValueDTO
(
"已改约"
,
Integer
.
toString
(
statusGroup
.
getOrDefault
(
"RESCHEDULED"
,
empty
).
size
())));
dynamics
.
add
(
new
LabelValueDTO
(
"在途总耗时"
,
new
BigDecimal
(
sumElapsed
)
ScheduleEngineerOverviewDynamics
dynamics
=
new
ScheduleEngineerOverviewDynamics
();
dynamics
.
setName
(
engineer
.
getName
());
dynamics
.
setEngineerCode
(
engineer
.
getEngineerCode
());
dynamics
.
setPhone
(
engineer
.
getPhone
());
dynamics
.
setGrade
(
engineer
.
getGrade
());
dynamics
.
setDate
(
TimeUtils
.
IsoLocalDate2String
(
date
));
dynamics
.
setStatus
(
"上班"
);
dynamics
.
setOrderCount
(
orderAppointments
.
size
());
dynamics
.
setToServiceCount
(
countPending
);
dynamics
.
setInServiceCount
(
statusGroup
.
getOrDefault
(
"STARTED"
,
empty
).
size
());
dynamics
.
setFinishedCount
(
statusGroup
.
getOrDefault
(
"FINISHED"
,
empty
).
size
());
dynamics
.
setCanceledCount
(
statusGroup
.
getOrDefault
(
"CANCELED"
,
empty
).
size
());
dynamics
.
setRescheduledCount
(
statusGroup
.
getOrDefault
(
"RESCHEDULED"
,
empty
).
size
());
dynamics
.
setRoadTotalElapsedTime
(
new
BigDecimal
(
sumElapsed
)
.
divide
(
new
BigDecimal
(
60
),
2
,
RoundingMode
.
HALF_UP
)
.
stripTrailingZeros
()
+
"时"
)
)
;
dynamics
.
add
(
new
LabelValueDTO
(
"在途总里程数"
,
sumDistance
+
"公里"
)
);
+
"时"
);
dynamics
.
setRoadTotalDistance
(
sumDistance
+
"公里"
);
if
(
Objects
.
nonNull
(
engineerBusinessEntity
))
{
dynamics
.
add
(
new
LabelValueDTO
(
"工作时间"
,
engineerBusinessEntity
.
getWorkOn
()
+
"-"
+
engineerBusinessEntity
.
getWorkOff
()
));
dynamics
.
setWorkTime
(
engineerBusinessEntity
.
getWorkOn
()
+
"-"
+
engineerBusinessEntity
.
getWorkOff
(
));
}
else
{
dynamics
.
add
(
new
LabelValueDTO
(
"工作时间"
,
"08:00-18:00"
)
);
dynamics
.
setWorkTime
(
"08:00-18:00"
);
}
dynamics
.
add
(
new
LabelValueDTO
(
"交通工具"
,
VehicleEnum
.
getNameByValue
(
engineer
.
getVehicle
()
)));
dynamics
.
setVehicleName
(
VehicleEnum
.
getNameByValue
(
engineer
.
getVehicle
(
)));
List
<
String
>
orderIds
=
orderAppointments
.
stream
().
map
(
OrderInfoEntity:
:
getOrderId
).
collect
(
Collectors
.
toList
());
List
<
OrderInfoEntity
>
orderRequests
=
new
ArrayList
<>();
...
...
@@ -267,13 +270,13 @@ public class ScheduleServiceImpl implements ScheduleService {
}
ScheduleEngineerOverviewResp
res
=
new
ScheduleEngineerOverviewResp
();
res
.
setTitle
(
String
.
format
(
"%s_%s_%s_%s_%s"
,
groupName
,
engineer
.
getName
(),
engineer
.
getEngineerCode
(),
engineer
.
getPhone
(),
engineer
.
getGrade
()));
//
res.setTitle(String.format("%s_%s_%s_%s_%s", groupName,
//
engineer.getName(),
//
engineer.getEngineerCode(),
//
engineer.getPhone(),
//
engineer.getGrade()));
res
.
setEngineerCode
(
engineerCode
);
res
.
setStartTime
(
String
.
format
(
"%s 08:00:00"
,
date
));
// TODO
res
.
setStartTime
(
String
.
format
(
"%s 08:00:00"
,
date
));
res
.
setEndTime
(
String
.
format
(
"%s 18:00:00"
,
date
));
res
.
setDynamics
(
dynamics
);
res
.
setOrders
(
timelines
);
...
...
Write
Preview
Markdown
is supported
Attach a file
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 post a comment