Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
T
traffic-front
Project
Project
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
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wangxiaoming
traffic-front
Commits
cfde27da
Commit
cfde27da
authored
Jun 05, 2018
by
neo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[DEV] create project impl but not really create db
parent
aa757024
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
186 additions
and
4 deletions
+186
-4
OperationAction.java
...rc/main/java/pwc/taxtech/atms/common/OperationAction.java
+3
-1
OperationLogController.java
...a/pwc/taxtech/atms/controller/OperationLogController.java
+21
-0
ProjectController.java
...n/java/pwc/taxtech/atms/controller/ProjectController.java
+13
-0
AddProjectResult.java
.../java/pwc/taxtech/atms/dto/taxadmin/AddProjectResult.java
+40
-0
ProjectService.java
...rc/main/java/pwc/taxtech/atms/service/ProjectService.java
+3
-0
ProjectServiceImpl.java
...ava/pwc/taxtech/atms/service/impl/ProjectServiceImpl.java
+106
-3
No files found.
atms-api/src/main/java/pwc/taxtech/atms/common/OperationAction.java
View file @
cfde27da
...
...
@@ -34,7 +34,9 @@ public enum OperationAction {
/**新增权限*/
AddNewPermission
(
17
),
/**去除权限*/
DeletePermission
(
18
);
DeletePermission
(
18
),
/**进入项目**/
EnterProject
(
19
);
private
int
value
;
...
...
atms-api/src/main/java/pwc/taxtech/atms/controller/OperationLogController.java
View file @
cfde27da
...
...
@@ -12,11 +12,16 @@ import org.springframework.web.bind.annotation.RestController;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiOperation
;
import
pwc.taxtech.atms.common.OperateLogType
;
import
pwc.taxtech.atms.common.OperationAction
;
import
pwc.taxtech.atms.common.OperationModule
;
import
pwc.taxtech.atms.dto.OperationLogDto
;
import
pwc.taxtech.atms.dto.PagingResultDto
;
import
pwc.taxtech.atms.dto.QueryOperateParamDto
;
import
pwc.taxtech.atms.service.OperationLogService
;
import
java.util.Date
;
/** @see PwC.Tax.Tech.Atms.WebApi.Controllers.OperationLogController.cs */
@RestController
@RequestMapping
(
"/api/v1/operationlog/"
)
...
...
@@ -34,4 +39,20 @@ public class OperationLogController {
logger
.
debug
(
"OperationLogController /getorgloglist"
);
return
operationLogService
.
getOperationLogList
(
queryOperateParamDto
);
}
@ApiOperation
(
value
=
"添加进入项目日志"
)
@RequestMapping
(
value
=
"addEnterProjectLog/{userName}"
,
method
=
RequestMethod
.
POST
,
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
public
void
addEnterProjectLog
(
String
userName
,
String
logContent
)
{
OperationLogDto
dto
=
new
OperationLogDto
();
dto
.
setAction
(
OperationAction
.
EnterProject
.
value
());
dto
.
setComment
(
""
);
dto
.
setCreateTime
(
new
Date
());
dto
.
setLogType
(
OperateLogType
.
OperationLogUser
.
value
());
dto
.
setModule
(
OperationModule
.
User
.
value
());
dto
.
setOperationContent
(
logContent
);
dto
.
setOperationObject
(
userName
);
dto
.
setOperationUser
(
userName
);
// operationLogService.addLog(dto);
}
}
atms-api/src/main/java/pwc/taxtech/atms/controller/ProjectController.java
View file @
cfde27da
...
...
@@ -2,9 +2,11 @@ package pwc.taxtech.atms.controller;
import
java.util.List
;
import
io.swagger.annotations.ApiImplicitParam
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestParam
;
...
...
@@ -14,6 +16,7 @@ import org.springframework.web.bind.annotation.RestController;
import
io.swagger.annotations.ApiOperation
;
import
pwc.taxtech.atms.dto.ProjectClientDto
;
import
pwc.taxtech.atms.dto.ServiceTypeDto
;
import
pwc.taxtech.atms.dto.taxadmin.AddProjectResult
;
import
pwc.taxtech.atms.dto.taxadmin.ProjectDisplayDto
;
import
pwc.taxtech.atms.service.ProjectService
;
...
...
@@ -60,4 +63,14 @@ public class ProjectController {
logger
.
info
(
"/api/v1/project/getAllProjectList with orgID {} serviceID {}"
,
orgID
,
serviceID
);
return
projectService
.
getAllProjectList
(
orgID
,
serviceID
==
null
?
""
:
serviceID
,
projectYear
);
}
@ApiOperation
(
value
=
"add"
,
notes
=
"add a project"
)
@RequestMapping
(
value
=
"add"
,
method
=
RequestMethod
.
POST
)
@ApiImplicitParam
(
name
=
"projectDto"
,
value
=
"projectDto"
,
required
=
true
,
dataType
=
"ProjectDisplayDto"
)
public
@ResponseBody
AddProjectResult
AddProject
(
@RequestBody
ProjectDisplayDto
projectDto
,
String
userName
)
{
if
(
userName
.
isEmpty
())
userName
=
"test"
;
//TODO: should use session username future(neo)
return
projectService
.
addProject
(
projectDto
,
userName
);
}
}
atms-api/src/main/java/pwc/taxtech/atms/dto/taxadmin/AddProjectResult.java
0 → 100644
View file @
cfde27da
package
pwc
.
taxtech
.
atms
.
dto
.
taxadmin
;
public
class
AddProjectResult
{
private
String
dBname
;
private
String
projectID
;
private
Boolean
result
;
private
String
resultMsg
;
public
String
getdBname
()
{
return
dBname
;
}
public
void
setdBname
(
String
dBname
)
{
this
.
dBname
=
dBname
;
}
public
String
getProjectID
()
{
return
projectID
;
}
public
void
setProjectID
(
String
projectID
)
{
this
.
projectID
=
projectID
;
}
public
Boolean
getResult
()
{
return
result
;
}
public
void
setResult
(
Boolean
result
)
{
this
.
result
=
result
;
}
public
String
getResultMsg
()
{
return
resultMsg
;
}
public
void
setResultMsg
(
String
resultMsg
)
{
this
.
resultMsg
=
resultMsg
;
}
}
atms-api/src/main/java/pwc/taxtech/atms/service/ProjectService.java
View file @
cfde27da
...
...
@@ -4,6 +4,7 @@ import java.util.List;
import
pwc.taxtech.atms.dto.ProjectClientDto
;
import
pwc.taxtech.atms.dto.ServiceTypeDto
;
import
pwc.taxtech.atms.dto.taxadmin.AddProjectResult
;
import
pwc.taxtech.atms.dto.taxadmin.ProjectDisplayDto
;
public
interface
ProjectService
{
...
...
@@ -38,6 +39,8 @@ public interface ProjectService {
List
<
ProjectDisplayDto
>
getAllProjectList
(
String
orgID
,
String
s
,
Integer
projectYear
);
AddProjectResult
addProject
(
ProjectDisplayDto
projectDto
,
String
userName
);
// Map<Integer, Integer> getProjectAllStatus(String dbName);
}
atms-api/src/main/java/pwc/taxtech/atms/service/impl/ProjectServiceImpl.java
View file @
cfde27da
...
...
@@ -7,23 +7,32 @@ import org.slf4j.LoggerFactory;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
pwc.taxtech.atms.common.CommonUtils
;
import
pwc.taxtech.atms.common.OperateLogType
;
import
pwc.taxtech.atms.common.OperationModule
;
import
pwc.taxtech.atms.dao.OrganizationServiceTemplateGroupMapper
;
import
pwc.taxtech.atms.dao.ProjectClientMapper
;
import
pwc.taxtech.atms.dao.ProjectMapper
;
import
pwc.taxtech.atms.dao.ProjectServiceTypeMapper
;
import
pwc.taxtech.atms.dao.ServiceTypeMapper
;
import
pwc.taxtech.atms.dao.TemplateGroupMapper
;
import
pwc.taxtech.atms.dto.FieldsMapper
;
import
pwc.taxtech.atms.dto.ProjectClientDto
;
import
pwc.taxtech.atms.dto.ServiceTypeDto
;
import
pwc.taxtech.atms.dto.TemplateGroupDto
;
import
pwc.taxtech.atms.dto.taxadmin.AddProjectResult
;
import
pwc.taxtech.atms.dto.taxadmin.ProjectDisplayDto
;
import
pwc.taxtech.atms.dto.taxadmin.ProjectYearParam
;
import
pwc.taxtech.atms.entitiy.OrganizationServiceTemplateGroupExample
;
import
pwc.taxtech.atms.entitiy.Project
;
import
pwc.taxtech.atms.entitiy.ProjectClient
;
import
pwc.taxtech.atms.entitiy.ProjectClientExample
;
import
pwc.taxtech.atms.entitiy.ProjectClientExample.Criteria
;
import
pwc.taxtech.atms.entitiy.ProjectServiceType
;
import
pwc.taxtech.atms.entitiy.ServiceType
;
import
pwc.taxtech.atms.entitiy.ServiceTypeExample
;
import
pwc.taxtech.atms.entitiy.TemplateGroup
;
import
pwc.taxtech.atms.entitiy.TemplateGroupExample
;
import
pwc.taxtech.atms.service.OperationLogService
;
import
pwc.taxtech.atms.service.ProjectService
;
import
java.util.ArrayList
;
...
...
@@ -32,6 +41,7 @@ import java.util.Date;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.UUID
;
import
java.util.stream.Collectors
;
@Service
...
...
@@ -40,6 +50,7 @@ public class ProjectServiceImpl implements ProjectService {
* @see PwC.Tax.Tech.Atms..Admin.Application\Services\Impl\ProjectService.cs
*/
private
static
final
int
FIRST_OR_DEFAULT
=
0
;
private
static
Logger
LOGGER
=
LoggerFactory
.
getLogger
(
ProjectServiceImpl
.
class
);
@Autowired
private
ServiceTypeMapper
serviceTypeMapper
;
...
...
@@ -53,8 +64,21 @@ public class ProjectServiceImpl implements ProjectService {
@Autowired
private
ProjectMapper
projectMapper
;
@Autowired
private
OrganizationServiceTemplateGroupMapper
organizationServiceTemplateGroupMapper
;
@Autowired
private
ProjectServiceTypeMapper
projectServiceTypeMapper
;
@Autowired
private
OperationLogService
operationLogService
;
private
final
OperateLogType
LOG_TYPE
=
OperateLogType
.
OperationLogProject
;
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
ProjectServiceImpl
.
class
);
public
ProjectServiceImpl
()
{
}
@Override
public
List
<
ServiceTypeDto
>
getServiceList
()
{
...
...
@@ -125,8 +149,8 @@ public class ProjectServiceImpl implements ProjectService {
&&
(
x
.
getStartPeriod
()
!=
p
.
getStartPeriod
()
||
x
.
getEndPeriod
()
!=
p
.
getEndPeriod
()))
.
collect
(
Collectors
.
toList
());
if
(
fixList
!=
null
&&
!
fixList
.
isEmpty
())
{
ProjectDisplayDto
pddFirst
=
fixList
.
get
(
FIRST_OR_DEFAULT
);
if
(
fixList
!=
null
&&
!
fixList
.
isEmpty
())
{
ProjectDisplayDto
pddFirst
=
fixList
.
get
(
FIRST_OR_DEFAULT
);
//修改数据库对应项目起始月
Project
project
=
new
Project
();
...
...
@@ -144,13 +168,92 @@ public class ProjectServiceImpl implements ProjectService {
}
});
removeList
.
forEach
(
r
->{
orgList
.
remove
(
r
);});
removeList
.
forEach
(
r
->
{
orgList
.
remove
(
r
);
});
pList
.
addAll
(
data
);
pList
.
addAll
(
orgList
);
return
pList
;
}
@Override
public
AddProjectResult
addProject
(
ProjectDisplayDto
projectDto
,
String
userName
)
{
projectDto
.
setActive
(
true
);
projectDto
.
setRuleType
(
1
);
Project
project
=
new
Project
();
try
{
FieldsMapper
.
map
(
projectDto
,
project
);
}
catch
(
Exception
e
)
{
LOGGER
.
warn
(
"map project dto to project may be some error"
);
e
.
printStackTrace
();
}
try
{
project
.
setID
(
UUID
.
randomUUID
().
toString
());
OrganizationServiceTemplateGroupExample
example
=
new
OrganizationServiceTemplateGroupExample
();
example
.
createCriteria
().
andOrganizationIDEqualTo
(
projectDto
.
getOrganizationID
());
organizationServiceTemplateGroupMapper
.
selectByExample
(
example
).
forEach
(
ostg
->
{
ProjectServiceType
pst
=
new
ProjectServiceType
();
pst
.
setID
(
UUID
.
randomUUID
().
toString
());
pst
.
setServiceTypeID
(
ostg
.
getServiceTypeID
());
pst
.
setTemplateGroupID
(
ostg
.
getTemplateGroupID
());
projectServiceTypeMapper
.
insert
(
pst
);
operationLogService
.
addDataAddLog
(
pst
,
OperationModule
.
ProjectServiceType
,
userName
,
Message
.
Project
.
AddProjectServiceType
,
pst
.
getID
(),
projectDto
.
getName
(),
LOG_TYPE
);
});
project
.
setDbName
(
generateDatabase
(
project
,
projectDto
.
getEnterpriseAccountSetID
()));
projectMapper
.
insert
(
project
);
operationLogService
.
addDataAddLog
(
project
,
OperationModule
.
Project
,
userName
,
Message
.
Project
.
AddProject
,
project
.
getID
(),
projectDto
.
getName
(),
LOG_TYPE
);
AddProjectResult
addProjectResult
=
new
AddProjectResult
();
addProjectResult
.
setResult
(
true
);
addProjectResult
.
setdBname
(
project
.
getDbName
());
addProjectResult
.
setProjectID
(
project
.
getID
());
return
addProjectResult
;
}
catch
(
Exception
e
){
operationLogService
.
addDataAddLog
(
null
,
OperationModule
.
Project
,
userName
,
Message
.
Project
.
AddProjectFail
,
e
.
getMessage
(),
projectDto
.
getName
(),
LOG_TYPE
);
AddProjectResult
addProjectResult
=
new
AddProjectResult
();
addProjectResult
.
setResult
(
false
);
addProjectResult
.
setResultMsg
(
e
.
getMessage
());
return
addProjectResult
;
}
}
private
String
generateDatabase
(
Project
project
,
String
accsetid
)
{
//TODO: should be impl future(neo)
return
"db_test"
;
}
private
String
GenerateProjectDbName
(
String
maxName
,
String
year
)
{
year
=
year
.
substring
(
2
);
String
pre2
=
maxName
.
charAt
(
0
)
+
""
,
post2
=
""
;
int
post
=
Integer
.
parseInt
(
maxName
.
substring
(
3
))
+
1
;
if
(
post
>=
100000
)
{
Integer
pre
=
Integer
.
parseInt
(
String
.
valueOf
(
maxName
.
charAt
(
0
)));
pre2
=
((
char
)(
pre
+
1
))+
""
;
post2
=
"00000"
;
}
else
if
(
post
>=
10000
)
{
post2
=
post
+
""
;
}
else
if
(
post
>=
1000
)
{
post2
=
"0"
+
post
;
}
else
if
(
post
>=
100
)
{
post2
=
"00"
+
post
;
}
else
if
(
post
>=
10
)
{
post2
=
"000"
+
post
;
}
else
{
post2
=
"0000"
+
post
;
}
return
pre2
+
year
+
post2
;
}
private
List
<
ProjectDisplayDto
>
getProjectFromEnterpriseAccountSetOrg
(
List
<
ProjectDisplayDto
>
pList
,
String
orgID
,
String
serviceID
,
Integer
projectYear
)
{
List
<
ProjectDisplayDto
>
list
=
new
ArrayList
<>();
...
...
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