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 82ef3fec
authored
Jul 31, 2023
by
丁伟峰
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加了容量调整接口
1 parent
977ace08
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
123 additions
and
14 deletions
project-order/src/main/java/com/dituhui/pea/order/controller/CapacityController.java
project-order/src/main/java/com/dituhui/pea/order/dao/CapacityTeamAdjustDao.java
project-order/src/main/java/com/dituhui/pea/order/dto/CapacityAdjustDTO.java
project-order/src/main/java/com/dituhui/pea/order/dto/CapacityStatQueryDTO.java
project-order/src/main/java/com/dituhui/pea/order/entity/CapacityTeamAdjustEntity.java
project-order/src/main/java/com/dituhui/pea/order/service/OrgCapacityService.java
project-order/src/main/java/com/dituhui/pea/order/service/impl/OrgCapacityServiceImpl.java
project-order/src/main/java/com/dituhui/pea/order/controller/CapacityController.java
View file @
82ef3fe
...
...
@@ -2,6 +2,7 @@ package com.dituhui.pea.order.controller;
import
com.dituhui.pea.common.BusinessException
;
import
com.dituhui.pea.common.Result
;
import
com.dituhui.pea.order.dto.CapacityAdjustDTO
;
import
com.dituhui.pea.order.dto.CapacityStatQueryDTO
;
import
com.dituhui.pea.order.service.OrgCapacityService
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -25,4 +26,15 @@ public class CapacityController {
}
return
res
;
}
@PostMapping
(
"/capacity/adjust"
)
public
Result
<?>
capacityAdjust
(
@Validated
CapacityAdjustDTO
.
Request
reqDTO
)
{
Result
<?>
res
=
null
;
try
{
res
=
orgCapacityService
.
adjustCapacity
(
reqDTO
);
}
catch
(
BusinessException
e
)
{
return
Result
.
failed
(
e
.
getMessage
());
}
return
res
;
}
}
project-order/src/main/java/com/dituhui/pea/order/dao/CapacityTeamAdjustDao.java
0 → 100644
View file @
82ef3fe
package
com
.
dituhui
.
pea
.
order
.
dao
;
import
com.dituhui.pea.order.entity.CapacityTeamAdjustEntity
;
import
org.springframework.data.repository.CrudRepository
;
import
java.time.LocalDate
;
public
interface
CapacityTeamAdjustDao
extends
CrudRepository
<
CapacityTeamAdjustEntity
,
Long
>
{
CapacityTeamAdjustEntity
findByTeamIdAndWorkday
(
String
teamId
,
LocalDate
date
);
}
project-order/src/main/java/com/dituhui/pea/order/dto/CapacityAdjustDTO.java
0 → 100644
View file @
82ef3fe
package
com
.
dituhui
.
pea
.
order
.
dto
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.Pattern
;
import
java.time.LocalDate
;
public
class
CapacityAdjustDTO
{
@Data
public
static
class
Request
{
@NotNull
(
message
=
"teamId不能为空"
)
private
String
teamId
;
@NotBlank
(
message
=
"日期字段不能为空"
)
@Pattern
(
regexp
=
"\\d{4}-\\d{2}-\\d{2}"
,
message
=
"日期字段格式必须为 yyyy-MM-dd"
)
private
LocalDate
beginDate
;
@NotBlank
(
message
=
"日期字段不能为空"
)
@Pattern
(
regexp
=
"\\d{4}-\\d{2}-\\d{2}"
,
message
=
"日期字段格式必须为 yyyy-MM-dd"
)
private
LocalDate
endDate
;
private
Integer
capAdjust
;
}
}
project-order/src/main/java/com/dituhui/pea/order/dto/CapacityStatQueryDTO.java
View file @
82ef3fe
package
com
.
dituhui
.
pea
.
order
.
dto
;
import
com.dituhui.pea.order.config.OrderConfig
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.databind.annotation.JsonDeserialize
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
import
com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer
;
import
com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer
;
import
lombok.experimental.Accessors
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.Pattern
;
import
java.time.LocalDateTime
;
import
java.util.List
;
...
...
@@ -54,10 +50,9 @@ public class CapacityStatQueryDTO {
private
long
capUsed
;
private
long
capLeft
;
@JsonDeserialize
(
using
=
LocalDateTimeDeserializer
.
class
)
@JsonSerialize
(
using
=
LocalDateTimeSerializer
.
class
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
LocalDateTime
updateTime
;
@NotBlank
(
message
=
"日期字段不能为空"
)
@Pattern
(
regexp
=
"\\d{4}-\\d{2}-\\d{2}"
,
message
=
"日期字段格式必须为 yyyy-MM-dd"
)
private
LocalDateTime
updateTime
=
LocalDateTime
.
now
();
private
String
date
;
private
long
engineerNum
;
...
...
@@ -65,9 +60,5 @@ public class CapacityStatQueryDTO {
private
String
levelValue
;
private
String
layer
;
private
String
showName
;
public
Content
(){
updateTime
=
LocalDateTime
.
now
();
}
}
}
project-order/src/main/java/com/dituhui/pea/order/entity/CapacityTeamAdjustEntity.java
0 → 100644
View file @
82ef3fe
package
com
.
dituhui
.
pea
.
order
.
entity
;
import
lombok.Data
;
import
javax.persistence.*
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
@Entity
@Data
@Table
(
name
=
"capacity_team_adjust"
)
public
class
CapacityTeamAdjustEntity
{
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
IDENTITY
)
private
int
id
;
private
LocalDate
workday
;
private
String
teamId
;
private
float
capAdjust
;
private
String
memo
;
private
LocalDateTime
createTime
;
private
LocalDateTime
updateTime
;
private
String
layer
;
// Constructors, getters, setters, and other methods can be added as needed
// Default constructor
}
project-order/src/main/java/com/dituhui/pea/order/service/OrgCapacityService.java
View file @
82ef3fe
package
com
.
dituhui
.
pea
.
order
.
service
;
import
com.dituhui.pea.common.Result
;
import
com.dituhui.pea.order.dto.CapacityAdjustDTO
;
import
com.dituhui.pea.order.dto.CapacityStatQueryDTO
;
public
interface
OrgCapacityService
{
Result
<?>
getOrgCapacityData
(
CapacityStatQueryDTO
.
Request
capacityStatQueryReqDTO
);
Result
<?>
adjustCapacity
(
CapacityAdjustDTO
.
Request
reqDTO
);
}
project-order/src/main/java/com/dituhui/pea/order/service/impl/OrgCapacityServiceImpl.java
View file @
82ef3fe
...
...
@@ -2,6 +2,7 @@ package com.dituhui.pea.order.service.impl;
import
com.dituhui.pea.common.Result
;
import
com.dituhui.pea.order.dao.*
;
import
com.dituhui.pea.order.dto.CapacityAdjustDTO
;
import
com.dituhui.pea.order.dto.CapacityStatQueryDTO
;
import
com.dituhui.pea.order.entity.*
;
import
com.dituhui.pea.order.service.OrgCapacityService
;
...
...
@@ -12,6 +13,7 @@ import org.springframework.data.domain.PageRequest;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.stereotype.Service
;
import
java.time.LocalDate
;
import
java.util.ArrayList
;
import
java.util.Comparator
;
import
java.util.List
;
...
...
@@ -32,6 +34,8 @@ public class OrgCapacityServiceImpl implements OrgCapacityService {
private
OrgBranchDao
orgBranchDao
;
@Autowired
private
CapacityTeamStatDao
capacityTeamStatDao
;
@Autowired
private
CapacityTeamAdjustDao
capacityTeamAdjustDao
;
@Override
public
Result
<?>
getOrgCapacityData
(
CapacityStatQueryDTO
.
Request
reqDTO
)
{
...
...
@@ -96,7 +100,7 @@ public class OrgCapacityServiceImpl implements OrgCapacityService {
.
setCapTotal
(
e
.
getCapTotal
())
.
setCapUsed
(
e
.
getCapUsed
())
.
setCapLeft
(
e
.
getCapLeft
())
.
setCapAdjust
(
e
.
getCapAdjust
(
))
.
setCapAdjust
(
(
int
)(
e
.
getCapAdjust
()*
100
))
.
setEngineerNum
(
e
.
getEngineerCount
())
.
setUpdateTime
(
e
.
getUpdateTime
());
}
...
...
@@ -108,4 +112,30 @@ public class OrgCapacityServiceImpl implements OrgCapacityService {
return
Result
.
success
(
rs
);
}
@Override
public
Result
<?>
adjustCapacity
(
CapacityAdjustDTO
.
Request
reqDTO
)
{
if
(
reqDTO
.
getBeginDate
().
isBefore
(
LocalDate
.
now
()))
{
return
Result
.
failed
(
"日期不能小于当天"
);
}
// 遍历 startDate 到 endDate 之间的所有日期
LocalDate
currentDate
=
reqDTO
.
getBeginDate
();
while
(!
currentDate
.
isAfter
(
reqDTO
.
getEndDate
()))
{
float
adjuest
=
(
float
)
(
reqDTO
.
getCapAdjust
()
/
100.0
);
ajustCapacityByDate
(
reqDTO
.
getTeamId
(),
currentDate
,
adjuest
);
currentDate
=
currentDate
.
plusDays
(
1
);
// 增加一天
}
return
null
;
}
void
ajustCapacityByDate
(
String
teamId
,
LocalDate
date
,
Float
adjust
)
{
CapacityTeamAdjustEntity
entity
=
capacityTeamAdjustDao
.
findByTeamIdAndWorkday
(
teamId
,
date
);
if
(
entity
==
null
)
{
entity
=
new
CapacityTeamAdjustEntity
();
entity
.
setTeamId
(
teamId
);
entity
.
setWorkday
(
date
);
}
entity
.
setCapAdjust
(
adjust
);
capacityTeamAdjustDao
.
save
(
entity
);
}
}
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