Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
jinli gu
JeeSpringCloud
Commits
44ab1569
"eladmin-generator/src/vscode:/vscode.git/clone" did not exist on "4e0deae13d0d14c12b13f92bbf714db61624135a"
Commit
44ab1569
authored
Nov 20, 2018
by
Sun
Browse files
no commit message
parent
f0b37245
Changes
55
Hide whitespace changes
Inline
Side-by-side
JeeSpringCloud/jeespring-webDubboProvider/src/main/java/com/jeespring/modules/test/entity/onetomany/TestDataChild3.java
0 → 100644
View file @
44ab1569
/**
* * Copyright © 2015-2020 <a href="https://gitee.com/JeeHuangBingGui/jeeSpringCloud">JeeSpringCloud</a> All rights reserved..
*/
package
com.jeespring.modules.test.entity.onetomany
;
import
com.jeespring.modules.sys.entity.Area
;
import
javax.validation.constraints.NotNull
;
import
org.hibernate.validator.constraints.Length
;
import
com.alibaba.fastjson.annotation.JSONField
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.jeespring.common.persistence.AbstractBaseEntity
;
import
com.jeespring.common.utils.excel.annotation.ExcelField
;
import
com.jeespring.modules.sys.utils.DictUtils
;
/**
* 订票Entity
* @author JeeSpring
* @version 2018-10-12
*/
public
class
TestDataChild3
extends
AbstractBaseEntity
<
TestDataChild3
>
{
private
static
final
long
serialVersionUID
=
1L
;
private
com
.
jeespring
.
modules
.
sys
.
entity
.
Area
start
;
// 出发地
private
com
.
jeespring
.
modules
.
sys
.
entity
.
Area
end
;
// 目的地
private
Double
price
;
// 代理价格
private
TestDataMain
testDataMain
;
// 外键 父类testDataMain.id
public
TestDataChild3
()
{
super
();
}
public
TestDataChild3
(
String
id
){
super
(
id
);
}
public
TestDataChild3
(
TestDataMain
testDataMain
){
this
.
testDataMain
=
testDataMain
;
}
@NotNull
(
message
=
"出发地不能为空"
)
@ExcelField
(
title
=
"出发地"
,
fieldType
=
Area
.
class
,
value
=
"start.name"
,
align
=
2
,
sort
=
1
)
public
Area
getStart
()
{
return
start
;
}
public
void
setStart
(
Area
start
)
{
this
.
start
=
start
;
}
@NotNull
(
message
=
"目的地不能为空"
)
@ExcelField
(
title
=
"目的地"
,
fieldType
=
Area
.
class
,
value
=
"end.name"
,
align
=
2
,
sort
=
2
)
public
Area
getEnd
()
{
return
end
;
}
public
void
setEnd
(
Area
end
)
{
this
.
end
=
end
;
}
@ExcelField
(
title
=
"代理价格"
,
align
=
2
,
sort
=
3
)
public
Double
getPrice
()
{
return
price
;
}
public
void
setPrice
(
Double
price
)
{
this
.
price
=
price
;
}
@Length
(
min
=
1
,
max
=
64
,
message
=
"外键长度必须介于 1 和 64 之间"
)
@JsonIgnore
@JSONField
(
serialize
=
false
)
public
TestDataMain
getTestDataMain
()
{
return
testDataMain
;
}
public
void
setTestDataMain
(
TestDataMain
testDataMain
)
{
this
.
testDataMain
=
testDataMain
;
}
}
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/java/com/jeespring/modules/test/entity/onetomany/TestDataMain.java
0 → 100644
View file @
44ab1569
/**
* * Copyright © 2015-2020 <a href="https://gitee.com/JeeHuangBingGui/jeeSpringCloud">JeeSpringCloud</a> All rights reserved..
*/
package
com.jeespring.modules.test.entity.onetomany
;
import
com.jeespring.modules.sys.entity.User
;
import
javax.validation.constraints.NotNull
;
import
com.jeespring.modules.sys.entity.Office
;
import
com.jeespring.modules.sys.entity.Area
;
import
org.hibernate.validator.constraints.Length
;
import
java.util.Date
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
java.util.List
;
import
com.google.common.collect.Lists
;
import
com.alibaba.fastjson.annotation.JSONField
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.jeespring.common.persistence.AbstractBaseEntity
;
import
com.jeespring.common.utils.excel.annotation.ExcelField
;
import
com.jeespring.modules.sys.utils.DictUtils
;
/**
* 订票Entity
* @author JeeSpring
* @version 2018-10-12
*/
public
class
TestDataMain
extends
AbstractBaseEntity
<
TestDataMain
>
{
private
static
final
long
serialVersionUID
=
1L
;
private
com
.
jeespring
.
modules
.
sys
.
entity
.
User
user
;
// 归属用户
private
com
.
jeespring
.
modules
.
sys
.
entity
.
Office
office
;
// 归属部门
private
com
.
jeespring
.
modules
.
sys
.
entity
.
Area
area
;
// 归属区域
private
String
name
;
// 名称
private
String
sex
;
// 性别
private
String
sexLabel
;
// 性别Label
private
String
sexPicture
;
// 性别Picture
private
java
.
util
.
Date
inDate
;
// 加入日期
private
java
.
util
.
Date
beginInDate
;
// 开始 加入日期
private
java
.
util
.
Date
endInDate
;
// 结束 加入日期
private
List
<
TestDataChild
>
testDataChildList
=
Lists
.
newArrayList
();
// 子表列表
private
List
<
TestDataChild2
>
testDataChild2List
=
Lists
.
newArrayList
();
// 子表列表
private
List
<
TestDataChild3
>
testDataChild3List
=
Lists
.
newArrayList
();
// 子表列表
public
TestDataMain
()
{
super
();
}
public
TestDataMain
(
String
id
){
super
(
id
);
}
@NotNull
(
message
=
"归属用户不能为空"
)
@ExcelField
(
title
=
"归属用户"
,
fieldType
=
User
.
class
,
value
=
"user.name"
,
align
=
2
,
sort
=
1
)
public
User
getUser
()
{
return
user
;
}
public
void
setUser
(
User
user
)
{
this
.
user
=
user
;
}
@NotNull
(
message
=
"归属部门不能为空"
)
@ExcelField
(
title
=
"归属部门"
,
fieldType
=
Office
.
class
,
value
=
"office.name"
,
align
=
2
,
sort
=
2
)
public
Office
getOffice
()
{
return
office
;
}
public
void
setOffice
(
Office
office
)
{
this
.
office
=
office
;
}
@NotNull
(
message
=
"归属区域不能为空"
)
@ExcelField
(
title
=
"归属区域"
,
fieldType
=
Area
.
class
,
value
=
"area.name"
,
align
=
2
,
sort
=
3
)
public
Area
getArea
()
{
return
area
;
}
public
void
setArea
(
Area
area
)
{
this
.
area
=
area
;
}
@Length
(
min
=
1
,
max
=
100
,
message
=
"名称长度必须介于 1 和 100 之间"
)
@ExcelField
(
title
=
"名称"
,
align
=
2
,
sort
=
4
)
public
String
getName
()
{
return
name
;
}
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
}
@Length
(
min
=
1
,
max
=
1
,
message
=
"性别长度必须介于 1 和 1 之间"
)
@ExcelField
(
title
=
"性别"
,
dictType
=
"sex"
,
align
=
2
,
sort
=
5
)
public
String
getSex
()
{
return
sex
;
}
public
void
setSex
(
String
sex
)
{
this
.
sex
=
sex
;
}
public
String
getSexLabel
()
{
return
DictUtils
.
getDictLabel
(
sex
,
"sex"
,
""
);
}
public
String
getSexPicture
()
{
return
DictUtils
.
getDictPicture
(
sex
,
"sex"
,
""
);
}
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@NotNull
(
message
=
"加入日期不能为空"
)
@ExcelField
(
title
=
"加入日期"
,
align
=
2
,
sort
=
6
)
public
Date
getInDate
()
{
return
inDate
;
}
public
void
setInDate
(
Date
inDate
)
{
this
.
inDate
=
inDate
;
}
public
Date
getBeginInDate
()
{
return
beginInDate
;
}
public
void
setBeginInDate
(
Date
beginInDate
)
{
this
.
beginInDate
=
beginInDate
;
}
public
Date
getEndInDate
()
{
return
endInDate
;
}
public
void
setEndInDate
(
Date
endInDate
)
{
this
.
endInDate
=
endInDate
;
}
public
List
<
TestDataChild
>
getTestDataChildList
()
{
return
testDataChildList
;
}
public
void
setTestDataChildList
(
List
<
TestDataChild
>
testDataChildList
)
{
this
.
testDataChildList
=
testDataChildList
;
}
public
List
<
TestDataChild2
>
getTestDataChild2List
()
{
return
testDataChild2List
;
}
public
void
setTestDataChild2List
(
List
<
TestDataChild2
>
testDataChild2List
)
{
this
.
testDataChild2List
=
testDataChild2List
;
}
public
List
<
TestDataChild3
>
getTestDataChild3List
()
{
return
testDataChild3List
;
}
public
void
setTestDataChild3List
(
List
<
TestDataChild3
>
testDataChild3List
)
{
this
.
testDataChild3List
=
testDataChild3List
;
}
}
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/java/com/jeespring/modules/test/entity/tree/TestTree.java
0 → 100644
View file @
44ab1569
/**
* * Copyright © 2015-2020 <a href="https://gitee.com/JeeHuangBingGui/jeeSpringCloud">JeeSpringCloud</a> All rights reserved..
*/
package
com.jeespring.modules.test.entity.tree
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotNull
;
import
com.fasterxml.jackson.annotation.JsonBackReference
;
import
com.jeespring.common.persistence.TreeEntity
;
/**
* 树Entity
* @author JeeSpring
* @version 2018-10-11
*/
public
class
TestTree
extends
TreeEntity
<
TestTree
>
{
private
static
final
long
serialVersionUID
=
1L
;
private
String
name
;
// 名称
private
Integer
sort
;
// 排序
private
TestTree
parent
;
// 父级编号
private
String
parentIds
;
// 所有父级编号
public
TestTree
()
{
super
();
}
public
TestTree
(
String
id
){
super
(
id
);
}
@Override
@Length
(
min
=
1
,
max
=
100
,
message
=
"名称长度必须介于 1 和 100 之间"
)
public
String
getName
()
{
return
name
;
}
@Override
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
}
@Override
@NotNull
(
message
=
"排序不能为空"
)
public
Integer
getSort
()
{
return
sort
;
}
@Override
public
void
setSort
(
Integer
sort
)
{
this
.
sort
=
sort
;
}
@Override
@JsonBackReference
@NotNull
(
message
=
"父级编号不能为空"
)
public
TestTree
getParent
()
{
return
parent
;
}
@Override
public
void
setParent
(
TestTree
parent
)
{
this
.
parent
=
parent
;
}
@Override
@Length
(
min
=
1
,
max
=
2000
,
message
=
"所有父级编号长度必须介于 1 和 2000 之间"
)
public
String
getParentIds
()
{
return
parentIds
;
}
@Override
public
void
setParentIds
(
String
parentIds
)
{
this
.
parentIds
=
parentIds
;
}
@Override
public
String
getParentId
()
{
return
parent
!=
null
&&
parent
.
getId
()
!=
null
?
parent
.
getId
()
:
"0"
;
}
}
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/java/com/jeespring/modules/test/rest/one/FormLeaveRestController.java
0 → 100644
View file @
44ab1569
/**
* * Copyright © 2015-2020 <a href="https://gitee.com/JeeHuangBingGui/jeeSpringCloud">JeeSpringCloud</a> All rights reserved..
*/
package
com.jeespring.modules.test.rest.one
;
import
java.util.List
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.shiro.authz.annotation.Logical
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.ui.Model
;
import
org.springframework.web.bind.annotation.ModelAttribute
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.servlet.mvc.support.RedirectAttributes
;
import
com.google.common.collect.Lists
;
import
com.jeespring.common.utils.DateUtils
;
import
com.jeespring.common.config.Global
;
import
com.jeespring.common.persistence.Page
;
import
com.jeespring.common.web.AbstractBaseController
;
import
com.jeespring.common.utils.StringUtils
;
import
com.jeespring.common.utils.excel.ExportExcel
;
import
com.jeespring.common.utils.excel.ImportExcel
;
import
com.jeespring.modules.test.entity.one.FormLeave
;
import
com.jeespring.modules.test.service.one.IFormLeaveService
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.jeespring.common.web.Result
;
import
com.jeespring.common.web.ResultFactory
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.web.bind.annotation.*
;
/**
* 请假Controller
* @author JeeSpring
* @version 2018-10-12
*/
@RestController
@RequestMapping
(
value
=
"/rest/test/one/formLeave"
)
@Api
(
value
=
"请假接口"
,
description
=
"请假接口"
)
public
class
FormLeaveRestController
extends
AbstractBaseController
{
@Autowired
private
IFormLeaveService
formLeaveService
;
/**
* 请假信息
*/
@RequestMapping
(
value
=
{
"get"
},
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"请假信息(Content-Type为text/html)"
,
notes
=
"请假信息(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"id"
,
value
=
"请假id"
,
required
=
false
,
dataType
=
"String"
,
paramType
=
"query"
)
public
Result
getRequestParam
(
@RequestParam
(
required
=
false
)
String
id
)
{
return
get
(
id
);
}
@RequestMapping
(
value
=
{
"get/json"
},
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"请假信息(Content-Type为application/json)"
,
notes
=
"请假信息(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"id"
,
value
=
"请假id"
,
required
=
false
,
dataType
=
"String"
,
paramType
=
"body"
)
public
Result
getRequestBody
(
@RequestBody
(
required
=
false
)
String
id
)
{
return
get
(
id
);
}
private
Result
get
(
String
id
)
{
FormLeave
entity
=
null
;
if
(
StringUtils
.
isNotBlank
(
id
)){
entity
=
formLeaveService
.
getCache
(
id
);
//entity = formLeaveService.get(id);
}
if
(
entity
==
null
){
entity
=
new
FormLeave
();
}
Result
result
=
ResultFactory
.
getSuccessResult
();
result
.
setResultObject
(
entity
);
return
result
;
}
/**
* 请假列表(不包含页信息)
*/
//RequiresPermissions("test:one:formLeave:findList")
@RequestMapping
(
value
=
{
"findList"
},
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"请假列表(不包含页信息)(Content-Type为text/html)"
,
notes
=
"请假列表(不包含页信息)(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"formLeave"
,
value
=
"请假"
,
dataType
=
"FormLeave"
,
paramType
=
"query"
)
public
Result
findListRequestParam
(
FormLeave
formLeave
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
return
findList
(
formLeave
,
model
);
}
@RequestMapping
(
value
=
{
"findList/json"
},
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"请假列表(不包含页信息)(Content-Type为application/json)"
,
notes
=
"请假列表(不包含页信息)(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"formLeave"
,
value
=
"请假"
,
dataType
=
"FormLeave"
,
paramType
=
"body"
)
public
Result
findListRequestBody
(
@RequestBody
FormLeave
formLeave
,
Model
model
)
{
return
findList
(
formLeave
,
model
);
}
private
Result
findList
(
FormLeave
formLeave
,
Model
model
)
{
List
<
FormLeave
>
list
=
formLeaveService
.
findListCache
(
formLeave
);
//List<FormLeave> list = formLeaveService.findList(formLeave);
Result
result
=
ResultFactory
.
getSuccessResult
();
result
.
setResultObject
(
list
);
return
result
;
}
/**
* 请假列表(包含页信息)
*/
//RequiresPermissions("test:one:formLeave:list")
@RequestMapping
(
value
=
{
"list"
},
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"请假列表(包含页信息)(Content-Type为text/html)"
,
notes
=
"请假列表(包含页信息)(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"formLeave"
,
value
=
"请假"
,
dataType
=
"FormLeave"
,
paramType
=
"query"
)
public
Result
listRequestParam
(
FormLeave
formLeave
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
return
list
(
formLeave
,
model
);
}
@RequestMapping
(
value
=
{
"list/json"
},
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"请假列表(包含页信息)(Content-Type为application/json)"
,
notes
=
"请假列表(包含页信息)(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"formLeave"
,
value
=
"请假"
,
dataType
=
"FormLeave"
,
paramType
=
"body"
)
public
Result
listRequestBody
(
@RequestBody
FormLeave
formLeave
,
Model
model
)
{
return
list
(
formLeave
,
model
);
}
private
Result
list
(
FormLeave
formLeave
,
Model
model
)
{
Page
<
FormLeave
>
page
=
formLeaveService
.
findPageCache
(
new
Page
<
FormLeave
>(
formLeave
.
getPageNo
(),
formLeave
.
getPageSize
(),
formLeave
.
getOrderBy
()),
formLeave
);
//Page<FormLeave> page = formLeaveService.findPage(new Page<FormLeave>(formLeave.getPageNo(),formLeave.getPageSize(),formLeave.getOrderBy()), formLeave);
Result
result
=
ResultFactory
.
getSuccessResult
();
result
.
setResultObject
(
page
);
return
result
;
}
/**
* 请假获取列表第一条记录
*/
//RequiresPermissions("test:one:formLeave:listFrist")
@RequestMapping
(
value
=
{
"listFrist"
},
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"请假获取列表第一条记录(Content-Type为text/html)"
,
notes
=
"请假获取列表第一条记录(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"formLeave"
,
value
=
"请假"
,
dataType
=
"FormLeave"
,
paramType
=
"query"
)
public
Result
listFristRequestParam
(
FormLeave
formLeave
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
return
listFrist
(
formLeave
,
model
);
}
@RequestMapping
(
value
=
{
"listFrist/json"
},
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"请假获取列表第一条记录(Content-Type为application/json)"
,
notes
=
"请假获取列表第一条记录(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"formLeave"
,
value
=
"请假"
,
dataType
=
"FormLeave"
,
paramType
=
"body"
)
public
Result
listFristRequestBody
(
@RequestBody
FormLeave
formLeave
,
Model
model
)
{
return
listFrist
(
formLeave
,
model
);
}
private
Result
listFrist
(
FormLeave
formLeave
,
Model
model
)
{
Page
<
FormLeave
>
page
=
formLeaveService
.
findPageCache
(
new
Page
<
FormLeave
>(
formLeave
.
getPageNo
(),
formLeave
.
getPageSize
(),
formLeave
.
getOrderBy
()),
formLeave
);
//Page<FormLeave> page = formLeaveService.findPage(new Page<FormLeave>(formLeave.getPageNo(),formLeave.getPageSize(),formLeave.getOrderBy()), formLeave);
Result
result
=
ResultFactory
.
getSuccessResult
();
if
(
page
.
getList
().
size
()>
0
){
result
.
setResultObject
(
page
.
getList
().
get
(
0
));
}
else
{
result
=
ResultFactory
.
getErrorResult
(
"没有记录!"
);
}
return
result
;
}
/**
* 保存请假
*/
//RequiresPermissions(value={"test:one:formLeave:add","test:one:formLeave:edit"},logical=Logical.OR)
@RequestMapping
(
value
=
"save"
,
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"保存请假(Content-Type为text/html)"
,
notes
=
"保存请假(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"formLeave"
,
value
=
"请假"
,
dataType
=
"FormLeave"
,
paramType
=
"query"
)
public
Result
saveRequestParam
(
FormLeave
formLeave
,
Model
model
,
RedirectAttributes
redirectAttributes
)
{
return
save
(
formLeave
,
model
,
redirectAttributes
);
}
@RequestMapping
(
value
=
"save/json"
,
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"保存请假(Content-Type为application/json)"
,
notes
=
"保存请假(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"formLeave"
,
value
=
"请假"
,
dataType
=
"FormLeave"
,
paramType
=
"body"
)
public
Result
saveRequestBody
(
@RequestBody
FormLeave
formLeave
,
Model
model
,
RedirectAttributes
redirectAttributes
)
{
return
save
(
formLeave
,
model
,
redirectAttributes
);
}
private
Result
save
(
FormLeave
formLeave
,
Model
model
,
RedirectAttributes
redirectAttributes
)
{
if
(!
beanValidator
(
model
,
formLeave
)){
Result
result
=
ResultFactory
.
getErrorResult
(
"数据验证失败"
);
}
formLeaveService
.
save
(
formLeave
);
Result
result
=
ResultFactory
.
getSuccessResult
(
"保存请假成功"
);
return
result
;
}
/**
* 删除请假
*/
//RequiresPermissions("test:one:formLeave:del")
@RequestMapping
(
value
=
"delete"
,
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"删除请假(Content-Type为text/html)"
,
notes
=
"删除请假(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"formLeave"
,
value
=
"请假"
,
dataType
=
"FormLeave"
,
paramType
=
"query"
)
public
Result
deleteRequestParam
(
FormLeave
formLeave
,
RedirectAttributes
redirectAttributes
)
{
return
delete
(
formLeave
,
redirectAttributes
);
}
@RequestMapping
(
value
=
"delete/json"
,
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"删除请假(Content-Type为application/json)"
,
notes
=
"删除请假(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"formLeave"
,
value
=
"请假"
,
dataType
=
"FormLeave"
,
paramType
=
"body"
)
public
Result
deleteRequestBody
(
@RequestBody
FormLeave
formLeave
,
RedirectAttributes
redirectAttributes
)
{
return
delete
(
formLeave
,
redirectAttributes
);
}
private
Result
delete
(
FormLeave
formLeave
,
RedirectAttributes
redirectAttributes
)
{
formLeaveService
.
delete
(
formLeave
);
Result
result
=
ResultFactory
.
getSuccessResult
(
"删除请假成功"
);
return
result
;
}
/**
* 删除请假(逻辑删除,更新del_flag字段为1,在表包含字段del_flag时,可以调用此方法,将数据隐藏)
*/
@RequestMapping
(
value
=
"deleteByLogic"
,
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"逻辑删除请假(Content-Type为text/html)"
,
notes
=
"逻辑删除请假(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"formLeave"
,
value
=
"请假"
,
dataType
=
"FormLeave"
,
paramType
=
"query"
)
public
Result
deleteByLogicRequestParam
(
FormLeave
formLeave
,
RedirectAttributes
redirectAttributes
)
{
return
deleteByLogic
(
formLeave
,
redirectAttributes
);
}
/**
* 删除请假(逻辑删除,更新del_flag字段为1,在表包含字段del_flag时,可以调用此方法,将数据隐藏)
*/
@RequestMapping
(
value
=
"deleteByLogic/json"
,
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"逻辑删除请假(Content-Type为application/json)"
,
notes
=
"逻辑删除请假(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"formLeave"
,
value
=
"请假"
,
dataType
=
"FormLeave"
,
paramType
=
"body"
)
public
Result
deleteByLogicRequestBody
(
@RequestBody
FormLeave
formLeave
,
RedirectAttributes
redirectAttributes
)
{
return
deleteByLogic
(
formLeave
,
redirectAttributes
);
}
private
Result
deleteByLogic
(
FormLeave
formLeave
,
RedirectAttributes
redirectAttributes
)
{
formLeaveService
.
deleteByLogic
(
formLeave
);
Result
result
=
ResultFactory
.
getSuccessResult
(
"删除请假成功"
);
return
result
;
}
/**
* 批量删除请假
*/
//RequiresPermissions("test:one:formLeave:del")
@RequestMapping
(
value
=
"deleteAll"
,
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"批量删除请假(Content-Type为text/html)"
,
notes
=
"批量删除请假(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"ids"
,
value
=
"请假ids,用,隔开"
,
required
=
false
,
dataType
=
"String"
,
paramType
=
"query"
)
public
Result
deleteAllRequestParam
(
String
ids
,
RedirectAttributes
redirectAttributes
)
{
return
deleteAll
(
ids
,
redirectAttributes
);
}
@RequestMapping
(
value
=
"deleteAll/json"
,
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"批量删除请假(Content-Type为application/json)"
,
notes
=
"批量删除请假(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"ids"
,
value
=
"请假ids,用,隔开"
,
required
=
false
,
dataType
=
"String"
,
paramType
=
"body"
)
public
Result
deleteAllRequestBody
(
@RequestBody
String
ids
,
RedirectAttributes
redirectAttributes
)
{
return
deleteAll
(
ids
,
redirectAttributes
);
}
private
Result
deleteAll
(
String
ids
,
RedirectAttributes
redirectAttributes
)
{
String
[]
idArray
=
ids
.
split
(
","
);
for
(
String
id
:
idArray
){
formLeaveService
.
delete
(
formLeaveService
.
get
(
id
));
}
Result
result
=
ResultFactory
.
getSuccessResult
(
"删除请假成功"
);
return
result
;
}
/**
* 批量删除请假(逻辑删除,更新del_flag字段为1,在表包含字段del_flag时,可以调用此方法,将数据隐藏)
*/
@RequestMapping
(
value
=
"deleteAllByLogic"
,
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"逻辑批量删除请假(Content-Type为text/html)"
,
notes
=
"逻辑批量删除请假(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"ids"
,
value
=
"请假ids,用,隔开"
,
required
=
false
,
dataType
=
"String"
,
paramType
=
"query"
)
public
Result
deleteAllByLogicRequestParam
(
String
ids
,
RedirectAttributes
redirectAttributes
)
{
return
deleteAllByLogic
(
ids
,
redirectAttributes
);
}
/**
* 批量删除请假(逻辑删除,更新del_flag字段为1,在表包含字段del_flag时,可以调用此方法,将数据隐藏)
*/
@RequestMapping
(
value
=
"deleteAllByLogic/json"
,
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"逻辑批量删除请假(Content-Type为application/json)"
,
notes
=
"逻辑批量删除请假(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"ids"
,
value
=
"请假ids,用,隔开"
,
required
=
false
,
dataType
=
"String"
,
paramType
=
"body"
)
public
Result
deleteAllByLogicRequestBody
(
@RequestBody
String
ids
,
RedirectAttributes
redirectAttributes
)
{
return
deleteAllByLogic
(
ids
,
redirectAttributes
);
}
private
Result
deleteAllByLogic
(
String
ids
,
RedirectAttributes
redirectAttributes
)
{
String
[]
idArray
=
ids
.
split
(
","
);
for
(
String
id
:
idArray
){
formLeaveService
.
deleteByLogic
(
formLeaveService
.
get
(
id
));
}
Result
result
=
ResultFactory
.
getSuccessResult
(
"删除请假成功"
);
return
result
;
}
}
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/java/com/jeespring/modules/test/rest/onetomany/TestDataMainRestController.java
0 → 100644
View file @
44ab1569
/**
* * Copyright © 2015-2020 <a href="https://gitee.com/JeeHuangBingGui/jeeSpringCloud">JeeSpringCloud</a> All rights reserved..
*/
package
com.jeespring.modules.test.rest.onetomany
;
import
java.util.List
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.shiro.authz.annotation.Logical
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.ui.Model
;
import
org.springframework.web.bind.annotation.ModelAttribute
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.servlet.mvc.support.RedirectAttributes
;
import
com.google.common.collect.Lists
;
import
com.jeespring.common.utils.DateUtils
;
import
com.jeespring.common.config.Global
;
import
com.jeespring.common.persistence.Page
;
import
com.jeespring.common.web.AbstractBaseController
;
import
com.jeespring.common.utils.StringUtils
;
import
com.jeespring.common.utils.excel.ExportExcel
;
import
com.jeespring.common.utils.excel.ImportExcel
;
import
com.jeespring.modules.test.entity.onetomany.TestDataMain
;
import
com.jeespring.modules.test.service.onetomany.ITestDataMainService
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.jeespring.common.web.Result
;
import
com.jeespring.common.web.ResultFactory
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.web.bind.annotation.*
;
/**
* 订票Controller
* @author JeeSpring
* @version 2018-10-12
*/
@RestController
@RequestMapping
(
value
=
"/rest/test/onetomany/testDataMain"
)
@Api
(
value
=
"订票接口"
,
description
=
"订票接口"
)
public
class
TestDataMainRestController
extends
AbstractBaseController
{
@Autowired
private
ITestDataMainService
testDataMainService
;
/**
* 订票信息
*/
@RequestMapping
(
value
=
{
"get"
},
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"订票信息(Content-Type为text/html)"
,
notes
=
"订票信息(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"id"
,
value
=
"订票id"
,
required
=
false
,
dataType
=
"String"
,
paramType
=
"query"
)
public
Result
getRequestParam
(
@RequestParam
(
required
=
false
)
String
id
)
{
return
get
(
id
);
}
@RequestMapping
(
value
=
{
"get/json"
},
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"订票信息(Content-Type为application/json)"
,
notes
=
"订票信息(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"id"
,
value
=
"订票id"
,
required
=
false
,
dataType
=
"String"
,
paramType
=
"body"
)
public
Result
getRequestBody
(
@RequestBody
(
required
=
false
)
String
id
)
{
return
get
(
id
);
}
private
Result
get
(
String
id
)
{
TestDataMain
entity
=
null
;
if
(
StringUtils
.
isNotBlank
(
id
)){
entity
=
testDataMainService
.
getCache
(
id
);
//entity = testDataMainService.get(id);
}
if
(
entity
==
null
){
entity
=
new
TestDataMain
();
}
Result
result
=
ResultFactory
.
getSuccessResult
();
result
.
setResultObject
(
entity
);
return
result
;
}
/**
* 订票列表(不包含页信息)
*/
//RequiresPermissions("test:onetomany:testDataMain:findList")
@RequestMapping
(
value
=
{
"findList"
},
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"订票列表(不包含页信息)(Content-Type为text/html)"
,
notes
=
"订票列表(不包含页信息)(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"testDataMain"
,
value
=
"订票"
,
dataType
=
"TestDataMain"
,
paramType
=
"query"
)
public
Result
findListRequestParam
(
TestDataMain
testDataMain
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
return
findList
(
testDataMain
,
model
);
}
@RequestMapping
(
value
=
{
"findList/json"
},
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"订票列表(不包含页信息)(Content-Type为application/json)"
,
notes
=
"订票列表(不包含页信息)(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"testDataMain"
,
value
=
"订票"
,
dataType
=
"TestDataMain"
,
paramType
=
"body"
)
public
Result
findListRequestBody
(
@RequestBody
TestDataMain
testDataMain
,
Model
model
)
{
return
findList
(
testDataMain
,
model
);
}
private
Result
findList
(
TestDataMain
testDataMain
,
Model
model
)
{
List
<
TestDataMain
>
list
=
testDataMainService
.
findListCache
(
testDataMain
);
//List<TestDataMain> list = testDataMainService.findList(testDataMain);
Result
result
=
ResultFactory
.
getSuccessResult
();
result
.
setResultObject
(
list
);
return
result
;
}
/**
* 订票列表(包含页信息)
*/
//RequiresPermissions("test:onetomany:testDataMain:list")
@RequestMapping
(
value
=
{
"list"
},
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"订票列表(包含页信息)(Content-Type为text/html)"
,
notes
=
"订票列表(包含页信息)(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"testDataMain"
,
value
=
"订票"
,
dataType
=
"TestDataMain"
,
paramType
=
"query"
)
public
Result
listRequestParam
(
TestDataMain
testDataMain
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
return
list
(
testDataMain
,
model
);
}
@RequestMapping
(
value
=
{
"list/json"
},
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"订票列表(包含页信息)(Content-Type为application/json)"
,
notes
=
"订票列表(包含页信息)(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"testDataMain"
,
value
=
"订票"
,
dataType
=
"TestDataMain"
,
paramType
=
"body"
)
public
Result
listRequestBody
(
@RequestBody
TestDataMain
testDataMain
,
Model
model
)
{
return
list
(
testDataMain
,
model
);
}
private
Result
list
(
TestDataMain
testDataMain
,
Model
model
)
{
Page
<
TestDataMain
>
page
=
testDataMainService
.
findPageCache
(
new
Page
<
TestDataMain
>(
testDataMain
.
getPageNo
(),
testDataMain
.
getPageSize
(),
testDataMain
.
getOrderBy
()),
testDataMain
);
//Page<TestDataMain> page = testDataMainService.findPage(new Page<TestDataMain>(testDataMain.getPageNo(),testDataMain.getPageSize(),testDataMain.getOrderBy()), testDataMain);
Result
result
=
ResultFactory
.
getSuccessResult
();
result
.
setResultObject
(
page
);
return
result
;
}
/**
* 订票获取列表第一条记录
*/
//RequiresPermissions("test:onetomany:testDataMain:listFrist")
@RequestMapping
(
value
=
{
"listFrist"
},
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"订票获取列表第一条记录(Content-Type为text/html)"
,
notes
=
"订票获取列表第一条记录(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"testDataMain"
,
value
=
"订票"
,
dataType
=
"TestDataMain"
,
paramType
=
"query"
)
public
Result
listFristRequestParam
(
TestDataMain
testDataMain
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
return
listFrist
(
testDataMain
,
model
);
}
@RequestMapping
(
value
=
{
"listFrist/json"
},
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"订票获取列表第一条记录(Content-Type为application/json)"
,
notes
=
"订票获取列表第一条记录(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"testDataMain"
,
value
=
"订票"
,
dataType
=
"TestDataMain"
,
paramType
=
"body"
)
public
Result
listFristRequestBody
(
@RequestBody
TestDataMain
testDataMain
,
Model
model
)
{
return
listFrist
(
testDataMain
,
model
);
}
private
Result
listFrist
(
TestDataMain
testDataMain
,
Model
model
)
{
Page
<
TestDataMain
>
page
=
testDataMainService
.
findPageCache
(
new
Page
<
TestDataMain
>(
testDataMain
.
getPageNo
(),
testDataMain
.
getPageSize
(),
testDataMain
.
getOrderBy
()),
testDataMain
);
//Page<TestDataMain> page = testDataMainService.findPage(new Page<TestDataMain>(testDataMain.getPageNo(),testDataMain.getPageSize(),testDataMain.getOrderBy()), testDataMain);
Result
result
=
ResultFactory
.
getSuccessResult
();
if
(
page
.
getList
().
size
()>
0
){
result
.
setResultObject
(
page
.
getList
().
get
(
0
));
}
else
{
result
=
ResultFactory
.
getErrorResult
(
"没有记录!"
);
}
return
result
;
}
/**
* 保存订票
*/
//RequiresPermissions(value={"test:onetomany:testDataMain:add","test:onetomany:testDataMain:edit"},logical=Logical.OR)
@RequestMapping
(
value
=
"save"
,
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"保存订票(Content-Type为text/html)"
,
notes
=
"保存订票(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"testDataMain"
,
value
=
"订票"
,
dataType
=
"TestDataMain"
,
paramType
=
"query"
)
public
Result
saveRequestParam
(
TestDataMain
testDataMain
,
Model
model
,
RedirectAttributes
redirectAttributes
)
{
return
save
(
testDataMain
,
model
,
redirectAttributes
);
}
@RequestMapping
(
value
=
"save/json"
,
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"保存订票(Content-Type为application/json)"
,
notes
=
"保存订票(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"testDataMain"
,
value
=
"订票"
,
dataType
=
"TestDataMain"
,
paramType
=
"body"
)
public
Result
saveRequestBody
(
@RequestBody
TestDataMain
testDataMain
,
Model
model
,
RedirectAttributes
redirectAttributes
)
{
return
save
(
testDataMain
,
model
,
redirectAttributes
);
}
private
Result
save
(
TestDataMain
testDataMain
,
Model
model
,
RedirectAttributes
redirectAttributes
)
{
if
(!
beanValidator
(
model
,
testDataMain
)){
Result
result
=
ResultFactory
.
getErrorResult
(
"数据验证失败"
);
}
testDataMainService
.
save
(
testDataMain
);
Result
result
=
ResultFactory
.
getSuccessResult
(
"保存订票成功"
);
return
result
;
}
/**
* 删除订票
*/
//RequiresPermissions("test:onetomany:testDataMain:del")
@RequestMapping
(
value
=
"delete"
,
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"删除订票(Content-Type为text/html)"
,
notes
=
"删除订票(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"testDataMain"
,
value
=
"订票"
,
dataType
=
"TestDataMain"
,
paramType
=
"query"
)
public
Result
deleteRequestParam
(
TestDataMain
testDataMain
,
RedirectAttributes
redirectAttributes
)
{
return
delete
(
testDataMain
,
redirectAttributes
);
}
@RequestMapping
(
value
=
"delete/json"
,
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"删除订票(Content-Type为application/json)"
,
notes
=
"删除订票(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"testDataMain"
,
value
=
"订票"
,
dataType
=
"TestDataMain"
,
paramType
=
"body"
)
public
Result
deleteRequestBody
(
@RequestBody
TestDataMain
testDataMain
,
RedirectAttributes
redirectAttributes
)
{
return
delete
(
testDataMain
,
redirectAttributes
);
}
private
Result
delete
(
TestDataMain
testDataMain
,
RedirectAttributes
redirectAttributes
)
{
testDataMainService
.
delete
(
testDataMain
);
Result
result
=
ResultFactory
.
getSuccessResult
(
"删除订票成功"
);
return
result
;
}
/**
* 删除订票(逻辑删除,更新del_flag字段为1,在表包含字段del_flag时,可以调用此方法,将数据隐藏)
*/
@RequestMapping
(
value
=
"deleteByLogic"
,
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"逻辑删除订票(Content-Type为text/html)"
,
notes
=
"逻辑删除订票(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"testDataMain"
,
value
=
"订票"
,
dataType
=
"TestDataMain"
,
paramType
=
"query"
)
public
Result
deleteByLogicRequestParam
(
TestDataMain
testDataMain
,
RedirectAttributes
redirectAttributes
)
{
return
deleteByLogic
(
testDataMain
,
redirectAttributes
);
}
/**
* 删除订票(逻辑删除,更新del_flag字段为1,在表包含字段del_flag时,可以调用此方法,将数据隐藏)
*/
@RequestMapping
(
value
=
"deleteByLogic/json"
,
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"逻辑删除订票(Content-Type为application/json)"
,
notes
=
"逻辑删除订票(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"testDataMain"
,
value
=
"订票"
,
dataType
=
"TestDataMain"
,
paramType
=
"body"
)
public
Result
deleteByLogicRequestBody
(
@RequestBody
TestDataMain
testDataMain
,
RedirectAttributes
redirectAttributes
)
{
return
deleteByLogic
(
testDataMain
,
redirectAttributes
);
}
private
Result
deleteByLogic
(
TestDataMain
testDataMain
,
RedirectAttributes
redirectAttributes
)
{
testDataMainService
.
deleteByLogic
(
testDataMain
);
Result
result
=
ResultFactory
.
getSuccessResult
(
"删除订票成功"
);
return
result
;
}
/**
* 批量删除订票
*/
//RequiresPermissions("test:onetomany:testDataMain:del")
@RequestMapping
(
value
=
"deleteAll"
,
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"批量删除订票(Content-Type为text/html)"
,
notes
=
"批量删除订票(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"ids"
,
value
=
"订票ids,用,隔开"
,
required
=
false
,
dataType
=
"String"
,
paramType
=
"query"
)
public
Result
deleteAllRequestParam
(
String
ids
,
RedirectAttributes
redirectAttributes
)
{
return
deleteAll
(
ids
,
redirectAttributes
);
}
@RequestMapping
(
value
=
"deleteAll/json"
,
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"批量删除订票(Content-Type为application/json)"
,
notes
=
"批量删除订票(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"ids"
,
value
=
"订票ids,用,隔开"
,
required
=
false
,
dataType
=
"String"
,
paramType
=
"body"
)
public
Result
deleteAllRequestBody
(
@RequestBody
String
ids
,
RedirectAttributes
redirectAttributes
)
{
return
deleteAll
(
ids
,
redirectAttributes
);
}
private
Result
deleteAll
(
String
ids
,
RedirectAttributes
redirectAttributes
)
{
String
[]
idArray
=
ids
.
split
(
","
);
for
(
String
id
:
idArray
){
testDataMainService
.
delete
(
testDataMainService
.
get
(
id
));
}
Result
result
=
ResultFactory
.
getSuccessResult
(
"删除订票成功"
);
return
result
;
}
/**
* 批量删除订票(逻辑删除,更新del_flag字段为1,在表包含字段del_flag时,可以调用此方法,将数据隐藏)
*/
@RequestMapping
(
value
=
"deleteAllByLogic"
,
method
={
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@ApiOperation
(
value
=
"逻辑批量删除订票(Content-Type为text/html)"
,
notes
=
"逻辑批量删除订票(Content-Type为text/html)"
)
@ApiImplicitParam
(
name
=
"ids"
,
value
=
"订票ids,用,隔开"
,
required
=
false
,
dataType
=
"String"
,
paramType
=
"query"
)
public
Result
deleteAllByLogicRequestParam
(
String
ids
,
RedirectAttributes
redirectAttributes
)
{
return
deleteAllByLogic
(
ids
,
redirectAttributes
);
}
/**
* 批量删除订票(逻辑删除,更新del_flag字段为1,在表包含字段del_flag时,可以调用此方法,将数据隐藏)
*/
@RequestMapping
(
value
=
"deleteAllByLogic/json"
,
method
={
RequestMethod
.
POST
})
@ApiOperation
(
value
=
"逻辑批量删除订票(Content-Type为application/json)"
,
notes
=
"逻辑批量删除订票(Content-Type为application/json)"
)
@ApiImplicitParam
(
name
=
"ids"
,
value
=
"订票ids,用,隔开"
,
required
=
false
,
dataType
=
"String"
,
paramType
=
"body"
)
public
Result
deleteAllByLogicRequestBody
(
@RequestBody
String
ids
,
RedirectAttributes
redirectAttributes
)
{
return
deleteAllByLogic
(
ids
,
redirectAttributes
);
}
private
Result
deleteAllByLogic
(
String
ids
,
RedirectAttributes
redirectAttributes
)
{
String
[]
idArray
=
ids
.
split
(
","
);
for
(
String
id
:
idArray
){
testDataMainService
.
deleteByLogic
(
testDataMainService
.
get
(
id
));
}
Result
result
=
ResultFactory
.
getSuccessResult
(
"删除订票成功"
);
return
result
;
}
}
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/java/com/jeespring/modules/test/service/one/FormLeaveService.java
0 → 100644
View file @
44ab1569
/**
* * Copyright © 2015-2020 <a href="https://gitee.com/JeeHuangBingGui/jeeSpringCloud">JeeSpringCloud</a> All rights reserved..
*/
package
com.jeespring.modules.test.service.one
;
import
java.util.List
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
com.jeespring.common.persistence.Page
;
import
com.jeespring.common.service.AbstractBaseService
;
import
com.jeespring.modules.test.entity.one.FormLeave
;
import
com.jeespring.modules.test.dao.one.FormLeaveDao
;
import
com.jeespring.modules.test.service.one.IFormLeaveService
;
import
com.alibaba.fastjson.JSON
;
import
com.jeespring.common.redis.RedisUtils
;
import
com.jeespring.common.security.MD5Tools
;
//import com.alibaba.dubbo.config.annotation.Service;
import
com.jeespring.common.config.Global
;
/**
* 请假Service
* @author JeeSpring
* @version 2018-10-12
*/
//启用dubbo服务器时,要去掉下面注解
//com.alibaba.dubbo.config.annotation.Service(interfaceClass = ISysServerService.class,version = "1.0.0", timeout = 60000)
@org
.
springframework
.
stereotype
.
Service
@Transactional
(
readOnly
=
true
)
public
class
FormLeaveService
extends
AbstractBaseService
<
FormLeaveDao
,
FormLeave
>
implements
IFormLeaveService
{
/**
* redis caches
*/
@Autowired
private
RedisUtils
redisUtils
;
@Override
public
FormLeave
get
(
String
id
)
{
//获取数据库数据
FormLeave
formLeave
=
super
.
get
(
id
);
return
formLeave
;
}
@Override
public
FormLeave
getCache
(
String
id
)
{
//获取缓存数据
FormLeave
formLeave
=(
FormLeave
)
redisUtils
.
get
(
RedisUtils
.
getIdKey
(
FormLeaveService
.
class
.
getName
(),
id
));
if
(
formLeave
!=
null
)
{
return
formLeave
;
}
//获取数据库数据
formLeave
=
super
.
get
(
id
);
//设置缓存数据
redisUtils
.
set
(
RedisUtils
.
getIdKey
(
FormLeaveService
.
class
.
getName
(),
id
),
formLeave
);
return
formLeave
;
}
@Override
public
List
<
FormLeave
>
total
(
FormLeave
formLeave
)
{
//获取数据库数据
List
<
FormLeave
>
formLeaveList
=
super
.
total
(
formLeave
);
return
formLeaveList
;
}
@Override
public
List
<
FormLeave
>
totalCache
(
FormLeave
formLeave
)
{
//获取缓存数据
String
totalKey
=
RedisUtils
.
getTotalKey
(
FormLeaveService
.
class
.
getName
(),
JSON
.
toJSONString
(
formLeave
));
List
<
FormLeave
>
formLeaveList
=(
List
<
FormLeave
>)
redisUtils
.
get
(
totalKey
);
if
(
formLeaveList
!=
null
)
{
return
formLeaveList
;
}
//获取数据库数据
formLeaveList
=
super
.
total
(
formLeave
);
//设置缓存数据
redisUtils
.
set
(
totalKey
,
formLeaveList
);
return
formLeaveList
;
}
@Override
public
List
<
FormLeave
>
findList
(
FormLeave
formLeave
)
{
//获取数据库数据
List
<
FormLeave
>
formLeaveList
=
super
.
findList
(
formLeave
);
//设置缓存数据
return
formLeaveList
;
}
@Override
public
List
<
FormLeave
>
findListCache
(
FormLeave
formLeave
)
{
//获取缓存数据
String
findListKey
=
RedisUtils
.
getFindListKey
(
FormLeaveService
.
class
.
getName
(),
JSON
.
toJSONString
(
formLeave
));
List
<
FormLeave
>
formLeaveList
=(
List
<
FormLeave
>)
redisUtils
.
get
(
findListKey
);
if
(
formLeaveList
!=
null
)
{
return
formLeaveList
;
}
//获取数据库数据
formLeaveList
=
super
.
findList
(
formLeave
);
//设置缓存数据
redisUtils
.
set
(
findListKey
,
formLeaveList
);
return
formLeaveList
;
}
public
FormLeave
findListFirst
(
FormLeave
formLeave
)
{;
//获取数据库数据
List
<
FormLeave
>
formLeaveList
=
super
.
findList
(
formLeave
);
if
(
formLeaveList
.
size
()>
0
)
{
formLeave
=
formLeaveList
.
get
(
0
);
}
return
formLeave
;
}
public
FormLeave
findListFirstCache
(
FormLeave
formLeave
)
{
//获取缓存数据
String
findListFirstKey
=
RedisUtils
.
getFindListFirstKey
(
FormLeaveService
.
class
.
getName
(),
JSON
.
toJSONString
(
formLeave
));
FormLeave
formLeaveRedis
=(
FormLeave
)
redisUtils
.
get
(
findListFirstKey
);
if
(
formLeaveRedis
!=
null
)
{
return
formLeaveRedis
;
}
//获取数据库数据
List
<
FormLeave
>
formLeaveList
=
super
.
findList
(
formLeave
);
if
(
formLeaveList
.
size
()>
0
)
{
formLeave
=
formLeaveList
.
get
(
0
);
}
else
{
formLeave
=
new
FormLeave
();
}
//设置缓存数据
redisUtils
.
set
(
findListFirstKey
,
formLeave
);
return
formLeave
;
}
@Override
public
Page
<
FormLeave
>
findPage
(
Page
<
FormLeave
>
page
,
FormLeave
formLeave
)
{
//获取数据库数据
Page
<
FormLeave
>
pageReuslt
=
super
.
findPage
(
page
,
formLeave
);
return
pageReuslt
;
}
@Override
public
Page
<
FormLeave
>
findPageCache
(
Page
<
FormLeave
>
page
,
FormLeave
formLeave
)
{
//获取缓存数据
String
findPageKey
=
RedisUtils
.
getFindPageKey
(
FormLeaveService
.
class
.
getName
(),
JSON
.
toJSONString
(
page
)+
JSON
.
toJSONString
(
formLeave
));
Page
<
FormLeave
>
pageReuslt
=(
Page
<
FormLeave
>)
redisUtils
.
get
(
findPageKey
);
if
(
pageReuslt
!=
null
)
{
return
pageReuslt
;
}
//获取数据库数据
pageReuslt
=
super
.
findPage
(
page
,
formLeave
);
//设置缓存数据
redisUtils
.
set
(
findPageKey
,
pageReuslt
);
return
pageReuslt
;
}
@Override
@Transactional
(
readOnly
=
false
)
public
void
save
(
FormLeave
formLeave
)
{
//保存数据库记录
super
.
save
(
formLeave
);
//设置清除缓存数据
redisUtils
.
remove
(
RedisUtils
.
getIdKey
(
FormLeaveService
.
class
.
getName
(),
formLeave
.
getId
()));
//清除列表和页面缓存数据
redisUtils
.
removePattern
(
RedisUtils
.
getFindListKeyPattern
(
FormLeaveService
.
class
.
getName
()));
redisUtils
.
removePattern
(
RedisUtils
.
getFinPageKeyPattern
(
FormLeaveService
.
class
.
getName
()));
}
@Override
@Transactional
(
readOnly
=
false
)
public
void
delete
(
FormLeave
formLeave
)
{
//清除记录缓存数据
redisUtils
.
remove
(
RedisUtils
.
getIdKey
(
FormLeaveService
.
class
.
getName
(),
formLeave
.
getId
()));
//删除数据库记录
super
.
delete
(
formLeave
);
//清除列表和页面缓存数据
redisUtils
.
removePattern
(
RedisUtils
.
getFindListKeyPattern
(
FormLeaveService
.
class
.
getName
()));
redisUtils
.
removePattern
(
RedisUtils
.
getFinPageKeyPattern
(
FormLeaveService
.
class
.
getName
()));
}
@Override
@Transactional
(
readOnly
=
false
)
public
void
deleteByLogic
(
FormLeave
formLeave
)
{
//清除记录缓存数据
redisUtils
.
remove
(
RedisUtils
.
getIdKey
(
FormLeaveService
.
class
.
getName
(),
formLeave
.
getId
()));
//逻辑删除数据库记录
super
.
deleteByLogic
(
formLeave
);
//清除列表和页面缓存数据
redisUtils
.
removePattern
(
RedisUtils
.
getFindListKeyPattern
(
FormLeaveService
.
class
.
getName
()));
redisUtils
.
removePattern
(
RedisUtils
.
getFinPageKeyPattern
(
FormLeaveService
.
class
.
getName
()));
}
}
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/java/com/jeespring/modules/test/service/one/IFormLeaveService.java
0 → 100644
View file @
44ab1569
/**
* * Copyright © 2015-2020 <a href="https://gitee.com/JeeHuangBingGui/jeeSpringCloud">JeeSpringCloud</a> All rights reserved..
*/
package
com.jeespring.modules.test.service.one
;
import
com.jeespring.common.persistence.InterfaceBaseService
;
import
com.jeespring.modules.server.entity.SysServer
;
import
com.jeespring.modules.test.entity.one.FormLeave
;
/**
* I请假Service
* @author JeeSpring
* @version 2018-10-12
*/
public
interface
IFormLeaveService
extends
InterfaceBaseService
<
FormLeave
>
{
}
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/java/com/jeespring/modules/test/service/onetomany/ITestDataMainService.java
0 → 100644
View file @
44ab1569
/**
* * Copyright © 2015-2020 <a href="https://gitee.com/JeeHuangBingGui/jeeSpringCloud">JeeSpringCloud</a> All rights reserved..
*/
package
com.jeespring.modules.test.service.onetomany
;
import
com.jeespring.common.persistence.InterfaceBaseService
;
import
com.jeespring.modules.server.entity.SysServer
;
import
com.jeespring.modules.test.entity.onetomany.TestDataMain
;
/**
* I订票Service
* @author JeeSpring
* @version 2018-10-12
*/
public
interface
ITestDataMainService
extends
InterfaceBaseService
<
TestDataMain
>
{
}
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/java/com/jeespring/modules/test/service/onetomany/TestDataMainService.java
0 → 100644
View file @
44ab1569
/**
* * Copyright © 2015-2020 <a href="https://gitee.com/JeeHuangBingGui/jeeSpringCloud">JeeSpringCloud</a> All rights reserved..
*/
package
com.jeespring.modules.test.service.onetomany
;
import
java.util.List
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
com.jeespring.common.persistence.Page
;
import
com.jeespring.common.service.AbstractBaseService
;
import
com.jeespring.common.utils.StringUtils
;
import
com.alibaba.fastjson.JSON
;
import
com.jeespring.common.redis.RedisUtils
;
import
com.jeespring.common.security.MD5Tools
;
import
com.jeespring.modules.test.entity.onetomany.TestDataMain
;
import
com.jeespring.modules.test.dao.onetomany.TestDataMainDao
;
import
com.jeespring.modules.test.entity.onetomany.TestDataChild
;
import
com.jeespring.modules.test.dao.onetomany.TestDataChildDao
;
import
com.jeespring.modules.test.entity.onetomany.TestDataChild2
;
import
com.jeespring.modules.test.dao.onetomany.TestDataChild2Dao
;
import
com.jeespring.modules.test.entity.onetomany.TestDataChild3
;
import
com.jeespring.modules.test.dao.onetomany.TestDataChild3Dao
;
//import com.alibaba.dubbo.config.annotation.Service;
import
com.jeespring.common.config.Global
;
/**
* 订票Service
* @author JeeSpring
* @version 2018-10-12
*/
//com.alibaba.dubbo.config.annotation.Service(interfaceClass = ISysServerService.class,version = "1.0.0", timeout = 60000)
@org
.
springframework
.
stereotype
.
Service
@Transactional
(
readOnly
=
true
)
public
class
TestDataMainService
extends
AbstractBaseService
<
TestDataMainDao
,
TestDataMain
>
implements
ITestDataMainService
{
/**
* redis caches
*/
@Autowired
private
RedisUtils
redisUtils
;
@Autowired
private
TestDataChildDao
testDataChildDao
;
@Autowired
private
TestDataChild2Dao
testDataChild2Dao
;
@Autowired
private
TestDataChild3Dao
testDataChild3Dao
;
@Override
public
TestDataMain
get
(
String
id
)
{
//获取数据库数据
TestDataMain
testDataMain
=
super
.
get
(
id
);
if
(
testDataMain
==
null
)
{
return
new
TestDataMain
();
}
testDataMain
.
setTestDataChildList
(
testDataChildDao
.
findList
(
new
TestDataChild
(
testDataMain
)));
testDataMain
.
setTestDataChild2List
(
testDataChild2Dao
.
findList
(
new
TestDataChild2
(
testDataMain
)));
testDataMain
.
setTestDataChild3List
(
testDataChild3Dao
.
findList
(
new
TestDataChild3
(
testDataMain
)));
return
testDataMain
;
}
@Override
public
TestDataMain
getCache
(
String
id
)
{
//获取缓存数据
TestDataMain
testDataMain
=(
TestDataMain
)
redisUtils
.
get
(
RedisUtils
.
getIdKey
(
TestDataMainService
.
class
.
getName
(),
id
));
if
(
testDataMain
!=
null
)
{
return
testDataMain
;
}
//获取数据库数据
testDataMain
=
super
.
get
(
id
);
if
(
testDataMain
==
null
)
{
return
new
TestDataMain
();
}
testDataMain
.
setTestDataChildList
(
testDataChildDao
.
findList
(
new
TestDataChild
(
testDataMain
)));
testDataMain
.
setTestDataChild2List
(
testDataChild2Dao
.
findList
(
new
TestDataChild2
(
testDataMain
)));
testDataMain
.
setTestDataChild3List
(
testDataChild3Dao
.
findList
(
new
TestDataChild3
(
testDataMain
)));
//设置缓存数据
redisUtils
.
set
(
RedisUtils
.
getIdKey
(
TestDataMainService
.
class
.
getName
(),
id
),
testDataMain
);
return
testDataMain
;
}
@Override
public
List
<
TestDataMain
>
total
(
TestDataMain
testDataMain
)
{
//获取数据库数据
List
<
TestDataMain
>
testDataMainList
=
super
.
total
(
testDataMain
);
return
testDataMainList
;
}
@Override
public
List
<
TestDataMain
>
totalCache
(
TestDataMain
testDataMain
)
{
//获取缓存数据
String
totalKey
=
RedisUtils
.
getTotalKey
(
TestDataMainService
.
class
.
getName
(),
JSON
.
toJSONString
(
testDataMain
));
List
<
TestDataMain
>
testDataMainList
=(
List
<
TestDataMain
>)
redisUtils
.
get
(
totalKey
);
if
(
testDataMainList
!=
null
)
{
return
testDataMainList
;
}
//获取数据库数据
testDataMainList
=
super
.
total
(
testDataMain
);
//设置缓存数据
redisUtils
.
set
(
totalKey
,
testDataMainList
);
return
testDataMainList
;
}
public
TestDataMain
findListFirst
(
TestDataMain
testDataMain
)
{
//获取数据库数据
List
<
TestDataMain
>
testDataMainList
=
super
.
findList
(
testDataMain
);
if
(
testDataMainList
.
size
()>
0
)
{
testDataMain
=
testDataMainList
.
get
(
0
);
}
return
testDataMain
;
}
public
TestDataMain
findListFirstCache
(
TestDataMain
testDataMain
)
{
//获取缓存数据
String
findListFirstKey
=
RedisUtils
.
getFindListFirstKey
(
TestDataMainService
.
class
.
getName
(),
JSON
.
toJSONString
(
testDataMain
));
TestDataMain
testDataMainRedis
=(
TestDataMain
)
redisUtils
.
get
(
findListFirstKey
);
if
(
testDataMainRedis
!=
null
)
{
return
testDataMainRedis
;
}
//获取数据库数据
List
<
TestDataMain
>
testDataMainList
=
super
.
findList
(
testDataMain
);
if
(
testDataMainList
.
size
()>
0
)
{
testDataMain
=
testDataMainList
.
get
(
0
);
}
else
{
testDataMain
=
new
TestDataMain
();
}
//设置缓存数据
redisUtils
.
set
(
findListFirstKey
,
testDataMain
);
return
testDataMain
;
}
@Override
public
List
<
TestDataMain
>
findList
(
TestDataMain
testDataMain
)
{
//获取缓存数据
String
findListKey
=
RedisUtils
.
getFindListKey
(
TestDataMainService
.
class
.
getName
(),
JSON
.
toJSONString
(
testDataMain
));
List
<
TestDataMain
>
testDataMainList
=(
List
<
TestDataMain
>)
redisUtils
.
get
(
findListKey
);
if
(
testDataMainList
!=
null
)
{
return
testDataMainList
;
}
//获取数据库数据
testDataMainList
=
super
.
findList
(
testDataMain
);
//设置缓存数据
redisUtils
.
set
(
findListKey
,
testDataMainList
);
return
testDataMainList
;
}
@Override
public
List
<
TestDataMain
>
findListCache
(
TestDataMain
testDataMain
)
{
//获取缓存数据
String
findListKey
=
RedisUtils
.
getFindListKey
(
TestDataMainService
.
class
.
getName
(),
JSON
.
toJSONString
(
testDataMain
));
List
<
TestDataMain
>
testDataMainList
=(
List
<
TestDataMain
>)
redisUtils
.
get
(
findListKey
);
if
(
testDataMainList
!=
null
)
{
return
testDataMainList
;
}
//获取数据库数据
testDataMainList
=
super
.
findList
(
testDataMain
);
//设置缓存数据
redisUtils
.
set
(
findListKey
,
testDataMainList
);
return
testDataMainList
;
}
@Override
public
Page
<
TestDataMain
>
findPage
(
Page
<
TestDataMain
>
page
,
TestDataMain
testDataMain
)
{
//获取数据库数据
Page
<
TestDataMain
>
pageReuslt
=
super
.
findPage
(
page
,
testDataMain
);
return
pageReuslt
;
}
@Override
public
Page
<
TestDataMain
>
findPageCache
(
Page
<
TestDataMain
>
page
,
TestDataMain
testDataMain
)
{
//获取缓存数据
String
findPageKey
=
RedisUtils
.
getFindPageKey
(
TestDataMainService
.
class
.
getName
(),
JSON
.
toJSONString
(
page
)+
JSON
.
toJSONString
(
testDataMain
));
Page
<
TestDataMain
>
pageReuslt
=(
Page
<
TestDataMain
>)
redisUtils
.
get
(
findPageKey
);
if
(
pageReuslt
!=
null
)
{
return
pageReuslt
;
}
//获取数据库数据
pageReuslt
=
super
.
findPage
(
page
,
testDataMain
);
//设置缓存数据
redisUtils
.
set
(
findPageKey
,
pageReuslt
);
return
pageReuslt
;
}
@Override
@Transactional
(
readOnly
=
false
)
public
void
save
(
TestDataMain
testDataMain
)
{
//保存数据库记录
super
.
save
(
testDataMain
);
for
(
TestDataChild
testDataChild
:
testDataMain
.
getTestDataChildList
()){
if
(
testDataChild
.
getId
()
==
null
){
continue
;
}
if
(
TestDataChild
.
DEL_FLAG_NORMAL
.
equals
(
testDataChild
.
getDelFlag
())){
if
(
StringUtils
.
isBlank
(
testDataChild
.
getId
())){
testDataChild
.
setTestDataMain
(
testDataMain
);
testDataChild
.
preInsert
();
testDataChildDao
.
insert
(
testDataChild
);
}
else
{
testDataChild
.
preUpdate
();
testDataChildDao
.
update
(
testDataChild
);
}
}
else
{
testDataChildDao
.
delete
(
testDataChild
);
}
}
for
(
TestDataChild2
testDataChild2
:
testDataMain
.
getTestDataChild2List
()){
if
(
testDataChild2
.
getId
()
==
null
){
continue
;
}
if
(
TestDataChild2
.
DEL_FLAG_NORMAL
.
equals
(
testDataChild2
.
getDelFlag
())){
if
(
StringUtils
.
isBlank
(
testDataChild2
.
getId
())){
testDataChild2
.
setTestDataMain
(
testDataMain
);
testDataChild2
.
preInsert
();
testDataChild2Dao
.
insert
(
testDataChild2
);
}
else
{
testDataChild2
.
preUpdate
();
testDataChild2Dao
.
update
(
testDataChild2
);
}
}
else
{
testDataChild2Dao
.
delete
(
testDataChild2
);
}
}
for
(
TestDataChild3
testDataChild3
:
testDataMain
.
getTestDataChild3List
()){
if
(
testDataChild3
.
getId
()
==
null
){
continue
;
}
if
(
TestDataChild3
.
DEL_FLAG_NORMAL
.
equals
(
testDataChild3
.
getDelFlag
())){
if
(
StringUtils
.
isBlank
(
testDataChild3
.
getId
())){
testDataChild3
.
setTestDataMain
(
testDataMain
);
testDataChild3
.
preInsert
();
testDataChild3Dao
.
insert
(
testDataChild3
);
}
else
{
testDataChild3
.
preUpdate
();
testDataChild3Dao
.
update
(
testDataChild3
);
}
}
else
{
testDataChild3Dao
.
delete
(
testDataChild3
);
}
}
//设置清除缓存数据
redisUtils
.
remove
(
RedisUtils
.
getIdKey
(
TestDataMainService
.
class
.
getName
(),
testDataMain
.
getId
()));
//清除列表和页面缓存数据
redisUtils
.
removePattern
(
RedisUtils
.
getFindListKeyPattern
(
TestDataMainService
.
class
.
getName
()));
redisUtils
.
removePattern
(
RedisUtils
.
getFinPageKeyPattern
(
TestDataMainService
.
class
.
getName
()));
}
@Override
@Transactional
(
readOnly
=
false
)
public
void
delete
(
TestDataMain
testDataMain
)
{
//清除记录缓存数据
redisUtils
.
remove
(
RedisUtils
.
getIdKey
(
TestDataMainService
.
class
.
getName
(),
testDataMain
.
getId
()));
//删除数据库记录
super
.
delete
(
testDataMain
);
testDataChildDao
.
delete
(
new
TestDataChild
(
testDataMain
));
testDataChild2Dao
.
delete
(
new
TestDataChild2
(
testDataMain
));
testDataChild3Dao
.
delete
(
new
TestDataChild3
(
testDataMain
));
//清除列表和页面缓存数据
redisUtils
.
removePattern
(
RedisUtils
.
getFindListKeyPattern
(
TestDataMainService
.
class
.
getName
()));
redisUtils
.
removePattern
(
RedisUtils
.
getFinPageKeyPattern
(
TestDataMainService
.
class
.
getName
()));
}
@Override
@Transactional
(
readOnly
=
false
)
public
void
deleteByLogic
(
TestDataMain
testDataMain
)
{
//清除记录缓存数据
redisUtils
.
remove
(
RedisUtils
.
getIdKey
(
TestDataMainService
.
class
.
getName
(),
testDataMain
.
getId
()));
//逻辑删除数据库记录
super
.
deleteByLogic
(
testDataMain
);
testDataChildDao
.
deleteByLogic
(
new
TestDataChild
(
testDataMain
));
testDataChild2Dao
.
deleteByLogic
(
new
TestDataChild2
(
testDataMain
));
testDataChild3Dao
.
deleteByLogic
(
new
TestDataChild3
(
testDataMain
));
//清除列表和页面缓存数据
redisUtils
.
removePattern
(
RedisUtils
.
getFindListKeyPattern
(
TestDataMainService
.
class
.
getName
()));
redisUtils
.
removePattern
(
RedisUtils
.
getFinPageKeyPattern
(
TestDataMainService
.
class
.
getName
()));
}
}
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/java/com/jeespring/modules/test/service/tree/TestTreeService.java
0 → 100644
View file @
44ab1569
/**
* * Copyright © 2015-2020 <a href="https://gitee.com/JeeHuangBingGui/jeeSpringCloud">JeeSpringCloud</a> All rights reserved..
*/
package
com.jeespring.modules.test.service.tree
;
import
java.util.List
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
com.jeespring.common.service.TreeService
;
import
com.jeespring.common.utils.StringUtils
;
import
com.jeespring.modules.test.entity.tree.TestTree
;
import
com.jeespring.modules.test.dao.tree.TestTreeDao
;
/**
* 树Service
* @author JeeSpring
* @version 2018-10-11
*/
@Service
@Transactional
(
readOnly
=
true
)
public
class
TestTreeService
extends
TreeService
<
TestTreeDao
,
TestTree
>
{
@Override
public
TestTree
get
(
String
id
)
{
return
super
.
get
(
id
);
}
@Override
public
List
<
TestTree
>
findList
(
TestTree
testTree
)
{
if
(
StringUtils
.
isNotBlank
(
testTree
.
getParentIds
())){
testTree
.
setParentIds
(
","
+
testTree
.
getParentIds
()+
","
);
}
return
super
.
findList
(
testTree
);
}
@Override
@Transactional
(
readOnly
=
false
)
public
void
save
(
TestTree
testTree
)
{
super
.
save
(
testTree
);
}
@Override
@Transactional
(
readOnly
=
false
)
public
void
delete
(
TestTree
testTree
)
{
super
.
delete
(
testTree
);
}
}
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/java/com/jeespring/modules/test/web/one/FormLeaveController.java
0 → 100644
View file @
44ab1569
/**
* * Copyright © 2015-2020 <a href="https://gitee.com/JeeHuangBingGui/jeeSpringCloud">JeeSpringCloud</a> All rights reserved..
*/
package
com.jeespring.modules.test.web.one
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.shiro.authz.annotation.Logical
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.ui.Model
;
import
org.springframework.web.bind.annotation.ModelAttribute
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.servlet.mvc.support.RedirectAttributes
;
import
com.google.common.collect.Lists
;
import
com.jeespring.common.utils.DateUtils
;
import
com.jeespring.common.config.Global
;
import
com.jeespring.common.persistence.Page
;
import
com.jeespring.common.web.AbstractBaseController
;
import
com.jeespring.common.utils.StringUtils
;
import
com.jeespring.common.utils.excel.ExportExcel
;
import
com.jeespring.common.utils.excel.ImportExcel
;
import
com.jeespring.modules.test.entity.one.FormLeave
;
import
com.jeespring.modules.test.service.one.FormLeaveService
;
import
com.jeespring.modules.test.service.one.IFormLeaveService
;
import
com.alibaba.dubbo.config.annotation.Reference
;
/**
* 请假Controller
* @author JeeSpring
* @version 2018-10-12
*/
@Controller
@RequestMapping
(
value
=
"${adminPath}/test/one/formLeave"
)
public
class
FormLeaveController
extends
AbstractBaseController
{
//调用dubbo服务器是,要去Reference注解,注解Autowired
//@Reference(version = "1.0.0")
@Autowired
private
IFormLeaveService
formLeaveService
;
@ModelAttribute
public
FormLeave
get
(
@RequestParam
(
required
=
false
)
String
id
)
{
FormLeave
entity
=
null
;
if
(
StringUtils
.
isNotBlank
(
id
)){
entity
=
formLeaveService
.
getCache
(
id
);
//entity = formLeaveService.get(id);
}
if
(
entity
==
null
){
entity
=
new
FormLeave
();
}
return
entity
;
}
/**
* 请假统计页面
*/
@RequiresPermissions
(
"test:one:formLeave:total"
)
@RequestMapping
(
value
=
{
"total"
})
public
String
totalView
(
FormLeave
formLeave
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
total
(
formLeave
,
request
,
response
,
model
);
return
"modules/test/one/formLeaveTotal"
;
}
private
void
total
(
FormLeave
formLeave
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
if
(
StringUtils
.
isEmpty
(
formLeave
.
getTotalType
())){
formLeave
.
setTotalType
(
"%Y-%m-%d"
);
}
//X轴的数据
List
<
String
>
xAxisData
=
new
ArrayList
<
String
>();
//Y轴的数据
Map
<
String
,
List
<
Double
>>
yAxisData
=
new
HashMap
<
String
,
List
<
Double
>>();
List
<
Double
>
countList
=
new
ArrayList
<
Double
>();
List
<
Double
>
sumList
=
new
ArrayList
<
Double
>();
if
(
formLeave
.
getOrderBy
()==
""
){
formLeave
.
setOrderBy
(
"totalDate"
);
}
List
<
FormLeave
>
list
=
formLeaveService
.
totalCache
(
formLeave
);
//List<FormLeave> list = formLeaveService.total(formLeave);
model
.
addAttribute
(
"list"
,
list
);
for
(
FormLeave
formLeaveItem:
list
){
//x轴数据
xAxisData
.
add
(
formLeaveItem
.
getTotalDate
());
countList
.
add
(
Double
.
valueOf
(
formLeaveItem
.
getTotalCount
()));
}
yAxisData
.
put
(
"数量"
,
countList
);
request
.
setAttribute
(
"xAxisData"
,
xAxisData
);
request
.
setAttribute
(
"yAxisData"
,
yAxisData
);
model
.
addAttribute
(
"sumTotalCount"
,
list
.
stream
().
mapToInt
(
FormLeave:
:
getTotalCount
).
sum
());
//饼图数据
Map
<
String
,
Object
>
orientData
=
new
HashMap
<
String
,
Object
>();
for
(
FormLeave
formLeaveItem:
list
){
orientData
.
put
(
formLeaveItem
.
getTotalDate
(),
formLeaveItem
.
getTotalCount
());
}
model
.
addAttribute
(
"orientData"
,
orientData
);
}
@RequiresPermissions
(
"test:one:formLeave:total"
)
@RequestMapping
(
value
=
{
"totalMap"
})
public
String
totalMap
(
FormLeave
formLeave
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
if
(
StringUtils
.
isEmpty
(
formLeave
.
getTotalType
())){
formLeave
.
setTotalType
(
"%Y-%m-%d"
);
}
List
<
FormLeave
>
list
=
formLeaveService
.
totalCache
(
formLeave
);
//List<FormLeave> list = formLeaveService.total(formLeave);
model
.
addAttribute
(
"sumTotalCount"
,
list
.
stream
().
mapToInt
(
FormLeave:
:
getTotalCount
).
sum
());
model
.
addAttribute
(
"list"
,
list
);
return
"modules/test/one/formLeaveTotalMap"
;
}
/**
* 请假列表页面
*/
@RequiresPermissions
(
"test:one:formLeave:list"
)
@RequestMapping
(
value
=
{
"list"
,
""
})
public
String
list
(
FormLeave
formLeave
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
Page
<
FormLeave
>
page
=
formLeaveService
.
findPageCache
(
new
Page
<
FormLeave
>(
request
,
response
),
formLeave
);
//Page<FormLeave> page = formLeaveService.findPage(new Page<FormLeave>(request, response), formLeave);
model
.
addAttribute
(
"page"
,
page
);
formLeave
.
setOrderBy
(
"totalDate"
);
total
(
formLeave
,
request
,
response
,
model
);
return
"modules/test/one/formLeaveList"
;
}
/**
* 请假列表页面
*/
@RequiresPermissions
(
"test:one:formLeave:list"
)
@RequestMapping
(
value
=
{
"listVue"
})
public
String
listVue
(
FormLeave
formLeave
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
Page
<
FormLeave
>
page
=
formLeaveService
.
findPageCache
(
new
Page
<
FormLeave
>(
request
,
response
),
formLeave
);
//Page<FormLeave> page = formLeaveService.findPage(new Page<FormLeave>(request, response), formLeave);
model
.
addAttribute
(
"page"
,
page
);
return
"modules/test/one/formLeaveListVue"
;
}
/**
* 请假列表页面
*/
//RequiresPermissions("test:one:formLeave:select")
@RequestMapping
(
value
=
{
"select"
})
public
String
select
(
FormLeave
formLeave
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
Page
<
FormLeave
>
page
=
formLeaveService
.
findPageCache
(
new
Page
<
FormLeave
>(
request
,
response
),
formLeave
);
//Page<FormLeave> page = formLeaveService.findPage(new Page<FormLeave>(request, response), formLeave);
model
.
addAttribute
(
"page"
,
page
);
return
"modules/test/one/formLeaveSelect"
;
}
/**
* 查看,增加,编辑请假表单页面
*/
@RequiresPermissions
(
value
={
"test:one:formLeave:view"
,
"test:one:formLeave:add"
,
"test:one:formLeave:edit"
},
logical
=
Logical
.
OR
)
@RequestMapping
(
value
=
"form"
)
public
String
form
(
FormLeave
formLeave
,
Model
model
,
HttpServletRequest
request
,
HttpServletResponse
response
)
{
model
.
addAttribute
(
"action"
,
request
.
getParameter
(
"action"
));
model
.
addAttribute
(
"formLeave"
,
formLeave
);
if
(
request
.
getParameter
(
"ViewFormType"
)!=
null
&&
"FormTwo"
.
equals
(
request
.
getParameter
(
"ViewFormType"
)))
{
return
"modules/test/one/formLeaveFormTwo"
;
}
return
"modules/test/one/formLeaveForm"
;
}
/**
* 保存请假
*/
@RequiresPermissions
(
value
={
"test:one:formLeave:add"
,
"test:one:formLeave:edit"
},
logical
=
Logical
.
OR
)
@RequestMapping
(
value
=
"save"
)
public
String
save
(
FormLeave
formLeave
,
Model
model
,
RedirectAttributes
redirectAttributes
,
HttpServletRequest
request
,
HttpServletResponse
response
)
{
if
(!
beanValidator
(
model
,
formLeave
)){
return
form
(
formLeave
,
model
,
request
,
response
);
}
formLeaveService
.
save
(
formLeave
);
addMessage
(
redirectAttributes
,
"保存请假成功"
);
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/one/formLeave/?repage"
;
}
/**
* 删除请假
*/
@RequiresPermissions
(
"test:one:formLeave:del"
)
@RequestMapping
(
value
=
"delete"
)
public
String
delete
(
FormLeave
formLeave
,
RedirectAttributes
redirectAttributes
)
{
formLeaveService
.
delete
(
formLeave
);
addMessage
(
redirectAttributes
,
"删除请假成功"
);
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/one/formLeave/?repage"
;
}
/**
* 删除请假(逻辑删除,更新del_flag字段为1,在表包含字段del_flag时,可以调用此方法,将数据隐藏)
*/
@RequiresPermissions
(
value
={
"test:one:formLeave:del"
,
"test:one:formLeave:delByLogic"
},
logical
=
Logical
.
OR
)
@RequestMapping
(
value
=
"deleteByLogic"
)
public
String
deleteByLogic
(
FormLeave
formLeave
,
RedirectAttributes
redirectAttributes
)
{
formLeaveService
.
deleteByLogic
(
formLeave
);
addMessage
(
redirectAttributes
,
"逻辑删除请假成功"
);
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/one/formLeave/?repage"
;
}
/**
* 批量删除请假
*/
@RequiresPermissions
(
"test:one:formLeave:del"
)
@RequestMapping
(
value
=
"deleteAll"
)
public
String
deleteAll
(
String
ids
,
RedirectAttributes
redirectAttributes
)
{
String
[]
idArray
=
ids
.
split
(
","
);
for
(
String
id
:
idArray
){
formLeaveService
.
delete
(
formLeaveService
.
get
(
id
));
}
addMessage
(
redirectAttributes
,
"删除请假成功"
);
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/one/formLeave/?repage"
;
}
/**
* 批量删除请假(逻辑删除,更新del_flag字段为1,在表包含字段del_flag时,可以调用此方法,将数据隐藏)
*/
@RequiresPermissions
(
value
={
"test:one:formLeave:del"
,
"test:one:formLeave:delByLogic"
},
logical
=
Logical
.
OR
)
@RequestMapping
(
value
=
"deleteAllByLogic"
)
public
String
deleteAllByLogic
(
String
ids
,
RedirectAttributes
redirectAttributes
)
{
String
[]
idArray
=
ids
.
split
(
","
);
for
(
String
id
:
idArray
){
formLeaveService
.
deleteByLogic
(
formLeaveService
.
get
(
id
));
}
addMessage
(
redirectAttributes
,
"删除请假成功"
);
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/one/formLeave/?repage"
;
}
/**
* 导出excel文件
*/
@RequiresPermissions
(
"test:one:formLeave:export"
)
@RequestMapping
(
value
=
"export"
,
method
=
RequestMethod
.
POST
)
public
String
exportFile
(
FormLeave
formLeave
,
HttpServletRequest
request
,
HttpServletResponse
response
,
RedirectAttributes
redirectAttributes
)
{
try
{
String
fileName
=
"请假"
+
DateUtils
.
getDate
(
"yyyyMMddHHmmss"
)+
".xlsx"
;
Page
<
FormLeave
>
page
=
formLeaveService
.
findPage
(
new
Page
<
FormLeave
>(
request
,
response
,
-
1
),
formLeave
);
new
ExportExcel
(
"请假"
,
FormLeave
.
class
).
setDataList
(
page
.
getList
()).
write
(
response
,
fileName
).
dispose
();
return
null
;
}
catch
(
Exception
e
)
{
addMessage
(
redirectAttributes
,
"导出请假记录失败!失败信息:"
+
e
.
getMessage
());
}
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/one/formLeave/?repage"
;
}
/**
* 导入Excel数据
*/
@RequiresPermissions
(
"test:one:formLeave:import"
)
@RequestMapping
(
value
=
"import"
,
method
=
RequestMethod
.
POST
)
public
String
importFile
(
MultipartFile
file
,
RedirectAttributes
redirectAttributes
)
{
try
{
int
successNum
=
0
;
ImportExcel
ei
=
new
ImportExcel
(
file
,
1
,
0
);
List
<
FormLeave
>
list
=
ei
.
getDataList
(
FormLeave
.
class
);
for
(
FormLeave
formLeave
:
list
){
formLeaveService
.
save
(
formLeave
);
}
addMessage
(
redirectAttributes
,
"已成功导入 "
+
successNum
+
" 条请假记录"
);
}
catch
(
Exception
e
)
{
addMessage
(
redirectAttributes
,
"导入请假失败!失败信息:"
+
e
.
getMessage
());
}
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/one/formLeave/?repage"
;
}
/**
* 下载导入请假数据模板
*/
@RequiresPermissions
(
"test:one:formLeave:import"
)
@RequestMapping
(
value
=
"import/template"
)
public
String
importFileTemplate
(
HttpServletResponse
response
,
RedirectAttributes
redirectAttributes
)
{
try
{
String
fileName
=
"请假数据导入模板.xlsx"
;
List
<
FormLeave
>
list
=
Lists
.
newArrayList
();
new
ExportExcel
(
"请假数据"
,
FormLeave
.
class
,
1
).
setDataList
(
list
).
write
(
response
,
fileName
).
dispose
();
return
null
;
}
catch
(
Exception
e
)
{
addMessage
(
redirectAttributes
,
"导入模板下载失败!失败信息:"
+
e
.
getMessage
());
}
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/one/formLeave/?repage"
;
}
}
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/java/com/jeespring/modules/test/web/onetomany/TestDataMainController.java
0 → 100644
View file @
44ab1569
/**
* * Copyright © 2015-2020 <a href="https://gitee.com/JeeHuangBingGui/jeeSpringCloud">JeeSpringCloud</a> All rights reserved..
*/
package
com.jeespring.modules.test.web.onetomany
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.shiro.authz.annotation.Logical
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.ui.Model
;
import
org.springframework.web.bind.annotation.ModelAttribute
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.servlet.mvc.support.RedirectAttributes
;
import
com.google.common.collect.Lists
;
import
com.jeespring.common.utils.DateUtils
;
import
com.jeespring.common.config.Global
;
import
com.jeespring.common.persistence.Page
;
import
com.jeespring.common.web.AbstractBaseController
;
import
com.jeespring.common.utils.StringUtils
;
import
com.jeespring.common.utils.excel.ExportExcel
;
import
com.jeespring.common.utils.excel.ImportExcel
;
import
com.jeespring.modules.test.entity.onetomany.TestDataMain
;
import
com.jeespring.modules.test.service.onetomany.TestDataMainService
;
import
com.jeespring.modules.test.service.onetomany.ITestDataMainService
;
import
com.alibaba.dubbo.config.annotation.Reference
;
/**
* 订票Controller
* @author JeeSpring
* @version 2018-10-12
*/
@Controller
@RequestMapping
(
value
=
"${adminPath}/test/onetomany/testDataMain"
)
public
class
TestDataMainController
extends
AbstractBaseController
{
//调用dubbo服务器是,要去Reference注解,注解Autowired
//@Reference(version = "1.0.0")
@Autowired
private
ITestDataMainService
testDataMainService
;
@ModelAttribute
public
TestDataMain
get
(
@RequestParam
(
required
=
false
)
String
id
)
{
TestDataMain
entity
=
null
;
if
(
StringUtils
.
isNotBlank
(
id
)){
entity
=
testDataMainService
.
getCache
(
id
);
//entity = testDataMainService.get(id);
}
if
(
entity
==
null
){
entity
=
new
TestDataMain
();
}
return
entity
;
}
/**
* 订票统计页面
*/
@RequiresPermissions
(
"test:onetomany:testDataMain:total"
)
@RequestMapping
(
value
=
{
"total"
})
public
String
totalView
(
TestDataMain
testDataMain
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
total
(
testDataMain
,
request
,
response
,
model
);
return
"modules/test/onetomany/testDataMainTotal"
;
}
private
void
total
(
TestDataMain
testDataMain
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
if
(
StringUtils
.
isEmpty
(
testDataMain
.
getTotalType
())){
testDataMain
.
setTotalType
(
"%Y-%m-%d"
);
}
//X轴的数据
List
<
String
>
xAxisData
=
new
ArrayList
<
String
>();
//Y轴的数据
Map
<
String
,
List
<
Double
>>
yAxisData
=
new
HashMap
<
String
,
List
<
Double
>>();
List
<
Double
>
countList
=
new
ArrayList
<
Double
>();
List
<
Double
>
sumList
=
new
ArrayList
<
Double
>();
if
(
testDataMain
.
getOrderBy
()==
""
){
testDataMain
.
setOrderBy
(
"totalDate"
);
}
List
<
TestDataMain
>
list
=
testDataMainService
.
totalCache
(
testDataMain
);
//List<TestDataMain> list = testDataMainService.total(testDataMain);
model
.
addAttribute
(
"list"
,
list
);
for
(
TestDataMain
testDataMainItem:
list
){
//x轴数据
xAxisData
.
add
(
testDataMainItem
.
getTotalDate
());
countList
.
add
(
Double
.
valueOf
(
testDataMainItem
.
getTotalCount
()));
}
yAxisData
.
put
(
"数量"
,
countList
);
request
.
setAttribute
(
"xAxisData"
,
xAxisData
);
request
.
setAttribute
(
"yAxisData"
,
yAxisData
);
model
.
addAttribute
(
"sumTotalCount"
,
list
.
stream
().
mapToInt
(
TestDataMain:
:
getTotalCount
).
sum
());
//饼图数据
Map
<
String
,
Object
>
orientData
=
new
HashMap
<
String
,
Object
>();
for
(
TestDataMain
testDataMainItem:
list
){
orientData
.
put
(
testDataMainItem
.
getTotalDate
(),
testDataMainItem
.
getTotalCount
());
}
model
.
addAttribute
(
"orientData"
,
orientData
);
}
@RequiresPermissions
(
"test:onetomany:testDataMain:total"
)
@RequestMapping
(
value
=
{
"totalMap"
})
public
String
totalMap
(
TestDataMain
testDataMain
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
if
(
StringUtils
.
isEmpty
(
testDataMain
.
getTotalType
())){
testDataMain
.
setTotalType
(
"%Y-%m-%d"
);
}
List
<
TestDataMain
>
list
=
testDataMainService
.
totalCache
(
testDataMain
);
//List<TestDataMain> list = testDataMainService.total(testDataMain);
model
.
addAttribute
(
"sumTotalCount"
,
list
.
stream
().
mapToInt
(
TestDataMain:
:
getTotalCount
).
sum
());
model
.
addAttribute
(
"list"
,
list
);
return
"modules/test/onetomany/testDataMainTotalMap"
;
}
/**
* 订票列表页面
*/
@RequiresPermissions
(
"test:onetomany:testDataMain:list"
)
@RequestMapping
(
value
=
{
"list"
,
""
})
public
String
list
(
TestDataMain
testDataMain
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
Page
<
TestDataMain
>
page
=
testDataMainService
.
findPageCache
(
new
Page
<
TestDataMain
>(
request
,
response
),
testDataMain
);
//Page<TestDataMain> page = testDataMainService.findPage(new Page<TestDataMain>(request, response), testDataMain);
model
.
addAttribute
(
"page"
,
page
);
testDataMain
.
setOrderBy
(
"totalDate"
);
total
(
testDataMain
,
request
,
response
,
model
);
return
"modules/test/onetomany/testDataMainList"
;
}
/**
* 订票列表页面
*/
@RequiresPermissions
(
"test:onetomany:testDataMain:list"
)
@RequestMapping
(
value
=
{
"listVue"
})
public
String
listVue
(
TestDataMain
testDataMain
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
Page
<
TestDataMain
>
page
=
testDataMainService
.
findPageCache
(
new
Page
<
TestDataMain
>(
request
,
response
),
testDataMain
);
//Page<TestDataMain> page = testDataMainService.findPage(new Page<TestDataMain>(request, response), testDataMain);
model
.
addAttribute
(
"page"
,
page
);
return
"modules/test/onetomany/testDataMainListVue"
;
}
/**
* 订票列表页面
*/
//RequiresPermissions("test:onetomany:testDataMain:select")
@RequestMapping
(
value
=
{
"select"
})
public
String
select
(
TestDataMain
testDataMain
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
Page
<
TestDataMain
>
page
=
testDataMainService
.
findPageCache
(
new
Page
<
TestDataMain
>(
request
,
response
),
testDataMain
);
//Page<TestDataMain> page = testDataMainService.findPage(new Page<TestDataMain>(request, response), testDataMain);
model
.
addAttribute
(
"page"
,
page
);
return
"modules/test/onetomany/testDataMainSelect"
;
}
/**
* 查看,增加,编辑订票表单页面
*/
@RequiresPermissions
(
value
={
"test:onetomany:testDataMain:view"
,
"test:onetomany:testDataMain:add"
,
"test:onetomany:testDataMain:edit"
},
logical
=
Logical
.
OR
)
@RequestMapping
(
value
=
"form"
)
public
String
form
(
TestDataMain
testDataMain
,
Model
model
,
HttpServletRequest
request
,
HttpServletResponse
response
)
{
model
.
addAttribute
(
"action"
,
request
.
getParameter
(
"action"
));
model
.
addAttribute
(
"testDataMain"
,
testDataMain
);
if
(
request
.
getParameter
(
"ViewFormType"
)!=
null
&&
"FormTwo"
.
equals
(
request
.
getParameter
(
"ViewFormType"
)))
{
return
"modules/test/onetomany/testDataMainFormTwo"
;
}
return
"modules/test/onetomany/testDataMainForm"
;
}
/**
* 保存订票
*/
@RequiresPermissions
(
value
={
"test:onetomany:testDataMain:add"
,
"test:onetomany:testDataMain:edit"
},
logical
=
Logical
.
OR
)
@RequestMapping
(
value
=
"save"
)
public
String
save
(
TestDataMain
testDataMain
,
Model
model
,
RedirectAttributes
redirectAttributes
,
HttpServletRequest
request
,
HttpServletResponse
response
)
{
if
(!
beanValidator
(
model
,
testDataMain
)){
return
form
(
testDataMain
,
model
,
request
,
response
);
}
testDataMainService
.
save
(
testDataMain
);
addMessage
(
redirectAttributes
,
"保存订票成功"
);
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/onetomany/testDataMain/?repage"
;
}
/**
* 删除订票
*/
@RequiresPermissions
(
"test:onetomany:testDataMain:del"
)
@RequestMapping
(
value
=
"delete"
)
public
String
delete
(
TestDataMain
testDataMain
,
RedirectAttributes
redirectAttributes
)
{
testDataMainService
.
delete
(
testDataMain
);
addMessage
(
redirectAttributes
,
"删除订票成功"
);
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/onetomany/testDataMain/?repage"
;
}
/**
* 删除订票(逻辑删除,更新del_flag字段为1,在表包含字段del_flag时,可以调用此方法,将数据隐藏)
*/
@RequiresPermissions
(
value
={
"test:onetomany:testDataMain:del"
,
"test:onetomany:testDataMain:delByLogic"
},
logical
=
Logical
.
OR
)
@RequestMapping
(
value
=
"deleteByLogic"
)
public
String
deleteByLogic
(
TestDataMain
testDataMain
,
RedirectAttributes
redirectAttributes
)
{
testDataMainService
.
deleteByLogic
(
testDataMain
);
addMessage
(
redirectAttributes
,
"逻辑删除订票成功"
);
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/onetomany/testDataMain/?repage"
;
}
/**
* 批量删除订票
*/
@RequiresPermissions
(
"test:onetomany:testDataMain:del"
)
@RequestMapping
(
value
=
"deleteAll"
)
public
String
deleteAll
(
String
ids
,
RedirectAttributes
redirectAttributes
)
{
String
[]
idArray
=
ids
.
split
(
","
);
for
(
String
id
:
idArray
){
testDataMainService
.
delete
(
testDataMainService
.
get
(
id
));
}
addMessage
(
redirectAttributes
,
"删除订票成功"
);
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/onetomany/testDataMain/?repage"
;
}
/**
* 批量删除订票(逻辑删除,更新del_flag字段为1,在表包含字段del_flag时,可以调用此方法,将数据隐藏)
*/
@RequiresPermissions
(
value
={
"test:onetomany:testDataMain:del"
,
"test:onetomany:testDataMain:delByLogic"
},
logical
=
Logical
.
OR
)
@RequestMapping
(
value
=
"deleteAllByLogic"
)
public
String
deleteAllByLogic
(
String
ids
,
RedirectAttributes
redirectAttributes
)
{
String
[]
idArray
=
ids
.
split
(
","
);
for
(
String
id
:
idArray
){
testDataMainService
.
deleteByLogic
(
testDataMainService
.
get
(
id
));
}
addMessage
(
redirectAttributes
,
"删除订票成功"
);
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/onetomany/testDataMain/?repage"
;
}
/**
* 导出excel文件
*/
@RequiresPermissions
(
"test:onetomany:testDataMain:export"
)
@RequestMapping
(
value
=
"export"
,
method
=
RequestMethod
.
POST
)
public
String
exportFile
(
TestDataMain
testDataMain
,
HttpServletRequest
request
,
HttpServletResponse
response
,
RedirectAttributes
redirectAttributes
)
{
try
{
String
fileName
=
"订票"
+
DateUtils
.
getDate
(
"yyyyMMddHHmmss"
)+
".xlsx"
;
Page
<
TestDataMain
>
page
=
testDataMainService
.
findPage
(
new
Page
<
TestDataMain
>(
request
,
response
,
-
1
),
testDataMain
);
new
ExportExcel
(
"订票"
,
TestDataMain
.
class
).
setDataList
(
page
.
getList
()).
write
(
response
,
fileName
).
dispose
();
return
null
;
}
catch
(
Exception
e
)
{
addMessage
(
redirectAttributes
,
"导出订票记录失败!失败信息:"
+
e
.
getMessage
());
}
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/onetomany/testDataMain/?repage"
;
}
/**
* 导入Excel数据
*/
@RequiresPermissions
(
"test:onetomany:testDataMain:import"
)
@RequestMapping
(
value
=
"import"
,
method
=
RequestMethod
.
POST
)
public
String
importFile
(
MultipartFile
file
,
RedirectAttributes
redirectAttributes
)
{
try
{
int
successNum
=
0
;
ImportExcel
ei
=
new
ImportExcel
(
file
,
1
,
0
);
List
<
TestDataMain
>
list
=
ei
.
getDataList
(
TestDataMain
.
class
);
for
(
TestDataMain
testDataMain
:
list
){
testDataMainService
.
save
(
testDataMain
);
}
addMessage
(
redirectAttributes
,
"已成功导入 "
+
successNum
+
" 条订票记录"
);
}
catch
(
Exception
e
)
{
addMessage
(
redirectAttributes
,
"导入订票失败!失败信息:"
+
e
.
getMessage
());
}
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/onetomany/testDataMain/?repage"
;
}
/**
* 下载导入订票数据模板
*/
@RequiresPermissions
(
"test:onetomany:testDataMain:import"
)
@RequestMapping
(
value
=
"import/template"
)
public
String
importFileTemplate
(
HttpServletResponse
response
,
RedirectAttributes
redirectAttributes
)
{
try
{
String
fileName
=
"订票数据导入模板.xlsx"
;
List
<
TestDataMain
>
list
=
Lists
.
newArrayList
();
new
ExportExcel
(
"订票数据"
,
TestDataMain
.
class
,
1
).
setDataList
(
list
).
write
(
response
,
fileName
).
dispose
();
return
null
;
}
catch
(
Exception
e
)
{
addMessage
(
redirectAttributes
,
"导入模板下载失败!失败信息:"
+
e
.
getMessage
());
}
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/onetomany/testDataMain/?repage"
;
}
}
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/java/com/jeespring/modules/test/web/tree/TestTreeController.java
0 → 100644
View file @
44ab1569
/**
* * Copyright © 2015-2020 <a href="https://gitee.com/JeeHuangBingGui/jeeSpringCloud">JeeSpringCloud</a> All rights reserved..
*/
package
com.jeespring.modules.test.web.tree
;
import
java.util.List
;
import
java.util.Map
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.shiro.authz.annotation.Logical
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.ui.Model
;
import
org.springframework.web.bind.annotation.ModelAttribute
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
org.springframework.web.servlet.mvc.support.RedirectAttributes
;
import
com.google.common.collect.Lists
;
import
com.google.common.collect.Maps
;
import
com.jeespring.common.config.Global
;
import
com.jeespring.common.web.AbstractBaseController
;
import
com.jeespring.common.utils.StringUtils
;
import
com.jeespring.modules.test.entity.tree.TestTree
;
import
com.jeespring.modules.test.service.tree.TestTreeService
;
/**
* 树Controller
* @author JeeSpring
* @version 2018-10-11
*/
@Controller
@RequestMapping
(
value
=
"${adminPath}/test/tree/testTree"
)
public
class
TestTreeController
extends
AbstractBaseController
{
@Autowired
private
TestTreeService
testTreeService
;
@ModelAttribute
public
TestTree
get
(
@RequestParam
(
required
=
false
)
String
id
)
{
TestTree
entity
=
null
;
if
(
StringUtils
.
isNotBlank
(
id
)){
entity
=
testTreeService
.
get
(
id
);
}
if
(
entity
==
null
){
entity
=
new
TestTree
();
}
return
entity
;
}
/**
* 树列表页面
*/
//@RequiresPermissions("test:tree:testTree:list")
@RequestMapping
(
value
=
{
"list"
,
""
})
public
String
list
(
TestTree
testTree
,
HttpServletRequest
request
,
HttpServletResponse
response
,
Model
model
)
{
List
<
TestTree
>
list
=
testTreeService
.
findList
(
testTree
);
model
.
addAttribute
(
"list"
,
list
);
return
"modules/test/tree/testTreeList"
;
}
/**
* 查看,增加,编辑树表单页面
*/
//@RequiresPermissions(value={"test:tree:testTree:view","test:tree:testTree:add","test:tree:testTree:edit"},logical=Logical.OR)
@RequestMapping
(
value
=
"form"
)
public
String
form
(
TestTree
testTree
,
Model
model
)
{
if
(
testTree
.
getParent
()!=
null
&&
StringUtils
.
isNotBlank
(
testTree
.
getParent
().
getId
())){
testTree
.
setParent
(
testTreeService
.
get
(
testTree
.
getParent
().
getId
()));
// 获取排序号,最末节点排序号+30
if
(
StringUtils
.
isBlank
(
testTree
.
getId
())){
TestTree
testTreeChild
=
new
TestTree
();
testTreeChild
.
setParent
(
new
TestTree
(
testTree
.
getParent
().
getId
()));
List
<
TestTree
>
list
=
testTreeService
.
findList
(
testTree
);
if
(
list
.
size
()
>
0
){
testTree
.
setSort
(
list
.
get
(
list
.
size
()-
1
).
getSort
());
if
(
testTree
.
getSort
()
!=
null
){
testTree
.
setSort
(
testTree
.
getSort
()
+
30
);
}
}
}
}
if
(
testTree
.
getSort
()
==
null
){
testTree
.
setSort
(
30
);
}
model
.
addAttribute
(
"testTree"
,
testTree
);
return
"modules/test/tree/testTreeForm"
;
}
/**
* 保存树
*/
//@RequiresPermissions(value={"test:tree:testTree:add","test:tree:testTree:edit"},logical=Logical.OR)
@RequestMapping
(
value
=
"save"
)
public
String
save
(
TestTree
testTree
,
Model
model
,
RedirectAttributes
redirectAttributes
)
{
if
(!
beanValidator
(
model
,
testTree
)){
return
form
(
testTree
,
model
);
}
testTreeService
.
save
(
testTree
);
addMessage
(
redirectAttributes
,
"保存树成功"
);
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/tree/testTree/?repage"
;
}
/**
* 删除树
*/
//@RequiresPermissions("test:tree:testTree:del")
@RequestMapping
(
value
=
"delete"
)
public
String
delete
(
TestTree
testTree
,
RedirectAttributes
redirectAttributes
)
{
testTreeService
.
delete
(
testTree
);
addMessage
(
redirectAttributes
,
"删除树成功"
);
return
"redirect:"
+
Global
.
getAdminPath
()+
"/test/tree/testTree/?repage"
;
}
//@RequiresPermissions("user")
@ResponseBody
@RequestMapping
(
value
=
"treeData"
)
public
List
<
Map
<
String
,
Object
>>
treeData
(
@RequestParam
(
required
=
false
)
String
extId
,
HttpServletResponse
response
)
{
List
<
Map
<
String
,
Object
>>
mapList
=
Lists
.
newArrayList
();
List
<
TestTree
>
list
=
testTreeService
.
findList
(
new
TestTree
());
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++){
TestTree
e
=
list
.
get
(
i
);
if
(
StringUtils
.
isBlank
(
extId
)
||
(
extId
!=
null
&&
!
extId
.
equals
(
e
.
getId
())
&&
e
.
getParentIds
().
indexOf
(
","
+
extId
+
","
)==-
1
)){
Map
<
String
,
Object
>
map
=
Maps
.
newHashMap
();
map
.
put
(
"id"
,
e
.
getId
());
map
.
put
(
"pId"
,
e
.
getParentId
());
map
.
put
(
"name"
,
e
.
getName
());
mapList
.
add
(
map
);
}
}
return
mapList
;
}
}
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/resources/act/build.xml
0 → 100644
View file @
44ab1569
<?xml version="1.0" encoding="UTF-8"?>
<project
name=
"act"
default=
"welcome"
>
<!-- properties from key value -->
<property
name=
"designs"
value=
"designs"
/>
<property
name=
"deployments"
value=
"deployments"
/>
<!-- 显示欢迎信息以及操作提示 -->
<target
name=
"welcome"
>
<echo>
Activiti打包程序,请输入命令后操作!
</echo>
</target>
<!-- 请假流程定义打包 -->
<target
name=
"oa.leave"
>
<echo>
打包流程定义:请假流程
</echo>
<copy
file=
"${designs}/oa/leave/leave.bpmn"
tofile=
"${designs}/oa/leave/leave.bpmn20.xml"
/>
<zip
destfile=
"${deployments}/oa/leave/leave.bar"
basedir=
"${designs}/oa/leave"
update=
"true"
includes=
"*.xml,*.png"
/>
<delete
file=
"${designs}/oa/leave/leave.bpmn20.xml"
/>
</target>
<!-- 请假流程定义打包-自定义表单 -->
<target
name=
"oa.test_audit"
>
<echo>
打包流程定义:测试审核流程
</echo>
<copy
file=
"${designs}/oa/test_audit/test_audit.bpmn"
tofile=
"${designs}/oa/test_audit/test_audit.bpmn20.xml"
/>
<zip
destfile=
"${deployments}/oa/test_audit/test_audit.bar"
basedir=
"${designs}/oa/test_audit"
update=
"true"
includes=
"*.xml,*.png"
/>
<delete
file=
"${designs}/oa/test_audit/test_audit.bpmn20.xml"
/>
</target>
</project>
JeeSpringCloud/jeespring-webDubboProvider/src/main/resources/act/deployments/oa/test_audit/test_audit.bar
0 → 100644
View file @
44ab1569
File added
JeeSpringCloud/jeespring-webDubboProvider/src/main/resources/act/designs/oa/leave/leave.bpmn
0 → 100644
View file @
44ab1569
<?xml version="1.0" encoding="UTF-8"?>
<definitions
xmlns=
"http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xmlns:activiti=
"http://activiti.org/bpmn"
xmlns:bpmndi=
"http://www.omg.org/spec/BPMN/20100524/DI"
xmlns:omgdc=
"http://www.omg.org/spec/DD/20100524/DC"
xmlns:omgdi=
"http://www.omg.org/spec/DD/20100524/DI"
typeLanguage=
"http://www.w3.org/2001/XMLSchema"
expressionLanguage=
"http://www.w3.org/1999/XPath"
targetNamespace=
"com.thinkgem.jeesite.modules.oa.leave"
>
<process
id=
"leave"
name=
"请假流程"
isExecutable=
"true"
>
<documentation>
请假流程演示
</documentation>
<startEvent
id=
"startevent1"
name=
"Start"
activiti:initiator=
"applyUserId"
></startEvent>
<userTask
id=
"deptLeaderAudit"
name=
"部门领导审批"
activiti:candidateGroups=
"dept"
></userTask>
<exclusiveGateway
id=
"exclusivegateway5"
name=
"Exclusive Gateway"
></exclusiveGateway>
<userTask
id=
"modifyApply"
name=
"调整申请"
activiti:assignee=
"${applyUserId}"
>
<extensionElements>
<activiti:taskListener
event=
"complete"
delegateExpression=
"${leaveModifyProcessor}"
></activiti:taskListener>
</extensionElements>
</userTask>
<userTask
id=
"hrAudit"
name=
"人事审批"
activiti:candidateGroups=
"hr"
></userTask>
<exclusiveGateway
id=
"exclusivegateway6"
name=
"Exclusive Gateway"
></exclusiveGateway>
<userTask
id=
"reportBack"
name=
"销假"
activiti:assignee=
"${applyUserId}"
>
<extensionElements>
<activiti:taskListener
event=
"complete"
delegateExpression=
"${leaveReportProcessor}"
></activiti:taskListener>
</extensionElements>
</userTask>
<endEvent
id=
"endevent1"
name=
"End"
></endEvent>
<exclusiveGateway
id=
"exclusivegateway7"
name=
"Exclusive Gateway"
></exclusiveGateway>
<sequenceFlow
id=
"flow2"
sourceRef=
"startevent1"
targetRef=
"deptLeaderAudit"
></sequenceFlow>
<sequenceFlow
id=
"flow3"
sourceRef=
"deptLeaderAudit"
targetRef=
"exclusivegateway5"
></sequenceFlow>
<sequenceFlow
id=
"flow4"
name=
"不同意"
sourceRef=
"exclusivegateway5"
targetRef=
"modifyApply"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${!deptLeaderPass}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"flow5"
name=
"同意"
sourceRef=
"exclusivegateway5"
targetRef=
"hrAudit"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${deptLeaderPass}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"flow6"
sourceRef=
"hrAudit"
targetRef=
"exclusivegateway6"
></sequenceFlow>
<sequenceFlow
id=
"flow7"
name=
"同意"
sourceRef=
"exclusivegateway6"
targetRef=
"reportBack"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${hrPass}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"flow8"
sourceRef=
"reportBack"
targetRef=
"endevent1"
></sequenceFlow>
<sequenceFlow
id=
"flow9"
name=
"不同意"
sourceRef=
"exclusivegateway6"
targetRef=
"modifyApply"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${!hrPass}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"flow10"
name=
"重新申请"
sourceRef=
"exclusivegateway7"
targetRef=
"deptLeaderAudit"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${reApply}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"flow11"
sourceRef=
"modifyApply"
targetRef=
"exclusivegateway7"
></sequenceFlow>
<sequenceFlow
id=
"flow12"
name=
"结束流程"
sourceRef=
"exclusivegateway7"
targetRef=
"endevent1"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${!reApply}]]>
</conditionExpression>
</sequenceFlow>
</process>
<bpmndi:BPMNDiagram
id=
"BPMNDiagram_leave"
>
<bpmndi:BPMNPlane
bpmnElement=
"leave"
id=
"BPMNPlane_leave"
>
<bpmndi:BPMNShape
bpmnElement=
"startevent1"
id=
"BPMNShape_startevent1"
>
<omgdc:Bounds
height=
"35.0"
width=
"35.0"
x=
"10.0"
y=
"90.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"deptLeaderAudit"
id=
"BPMNShape_deptLeaderAudit"
>
<omgdc:Bounds
height=
"55.0"
width=
"105.0"
x=
"90.0"
y=
"80.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"exclusivegateway5"
id=
"BPMNShape_exclusivegateway5"
>
<omgdc:Bounds
height=
"40.0"
width=
"40.0"
x=
"250.0"
y=
"87.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"modifyApply"
id=
"BPMNShape_modifyApply"
>
<omgdc:Bounds
height=
"55.0"
width=
"105.0"
x=
"218.0"
y=
"190.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"hrAudit"
id=
"BPMNShape_hrAudit"
>
<omgdc:Bounds
height=
"55.0"
width=
"105.0"
x=
"358.0"
y=
"80.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"exclusivegateway6"
id=
"BPMNShape_exclusivegateway6"
>
<omgdc:Bounds
height=
"40.0"
width=
"40.0"
x=
"495.0"
y=
"87.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"reportBack"
id=
"BPMNShape_reportBack"
>
<omgdc:Bounds
height=
"55.0"
width=
"105.0"
x=
"590.0"
y=
"80.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"endevent1"
id=
"BPMNShape_endevent1"
>
<omgdc:Bounds
height=
"35.0"
width=
"35.0"
x=
"625.0"
y=
"283.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"exclusivegateway7"
id=
"BPMNShape_exclusivegateway7"
>
<omgdc:Bounds
height=
"40.0"
width=
"40.0"
x=
"250.0"
y=
"280.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge
bpmnElement=
"flow2"
id=
"BPMNEdge_flow2"
>
<omgdi:waypoint
x=
"45.0"
y=
"107.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"90.0"
y=
"107.0"
></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow3"
id=
"BPMNEdge_flow3"
>
<omgdi:waypoint
x=
"195.0"
y=
"107.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"250.0"
y=
"107.0"
></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow4"
id=
"BPMNEdge_flow4"
>
<omgdi:waypoint
x=
"270.0"
y=
"127.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"270.0"
y=
"190.0"
></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds
height=
"14.0"
width=
"36.0"
x=
"10.0"
y=
"0.0"
></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow5"
id=
"BPMNEdge_flow5"
>
<omgdi:waypoint
x=
"290.0"
y=
"107.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"358.0"
y=
"107.0"
></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds
height=
"14.0"
width=
"24.0"
x=
"-24.0"
y=
"-17.0"
></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow6"
id=
"BPMNEdge_flow6"
>
<omgdi:waypoint
x=
"463.0"
y=
"107.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"495.0"
y=
"107.0"
></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow7"
id=
"BPMNEdge_flow7"
>
<omgdi:waypoint
x=
"535.0"
y=
"107.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"590.0"
y=
"107.0"
></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds
height=
"14.0"
width=
"24.0"
x=
"-22.0"
y=
"-17.0"
></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow8"
id=
"BPMNEdge_flow8"
>
<omgdi:waypoint
x=
"642.0"
y=
"135.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"642.0"
y=
"283.0"
></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow9"
id=
"BPMNEdge_flow9"
>
<omgdi:waypoint
x=
"515.0"
y=
"127.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"514.0"
y=
"217.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"323.0"
y=
"217.0"
></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds
height=
"14.0"
width=
"36.0"
x=
"24.0"
y=
"3.0"
></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow10"
id=
"BPMNEdge_flow10"
>
<omgdi:waypoint
x=
"250.0"
y=
"300.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"142.0"
y=
"299.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"142.0"
y=
"135.0"
></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds
height=
"14.0"
width=
"48.0"
x=
"8.0"
y=
"-1.0"
></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow11"
id=
"BPMNEdge_flow11"
>
<omgdi:waypoint
x=
"270.0"
y=
"245.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"270.0"
y=
"280.0"
></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow12"
id=
"BPMNEdge_flow12"
>
<omgdi:waypoint
x=
"290.0"
y=
"300.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"625.0"
y=
"300.0"
></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds
height=
"14.0"
width=
"48.0"
x=
"-15.0"
y=
"-20.0"
></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</definitions>
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/resources/act/designs/oa/leave/leave.png
0 → 100644
View file @
44ab1569
12.8 KB
JeeSpringCloud/jeespring-webDubboProvider/src/main/resources/act/designs/oa/test_audit/test_audit.bpmn
0 → 100644
View file @
44ab1569
<?xml version='1.0' encoding='UTF-8'?>
<definitions
xmlns=
"http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xmlns:activiti=
"http://activiti.org/bpmn"
xmlns:bpmndi=
"http://www.omg.org/spec/BPMN/20100524/DI"
xmlns:omgdc=
"http://www.omg.org/spec/DD/20100524/DC"
xmlns:omgdi=
"http://www.omg.org/spec/DD/20100524/DI"
typeLanguage=
"http://www.w3.org/2001/XMLSchema"
expressionLanguage=
"http://www.w3.org/1999/XPath"
targetNamespace=
"http://www.activiti.org/test"
>
<process
id=
"test_audit"
name=
"流程审批测试流程"
isExecutable=
"true"
>
<startEvent
id=
"start"
name=
"启动审批"
activiti:initiator=
"apply"
activiti:formKey=
"/oa/testAudit/form"
/>
<endEvent
id=
"end"
name=
"结束审批"
/>
<userTask
id=
"modify"
name=
"员工薪酬档级修改"
activiti:assignee=
"${apply}"
/>
<userTask
id=
"audit"
name=
"薪酬主管初审"
activiti:assignee=
"admin"
/>
<exclusiveGateway
id=
"sid-C28BB5F6-013D-4570-B432-61B380C1F46F"
/>
<userTask
id=
"audit2"
name=
"集团人力资源部部长审核"
activiti:assignee=
"admin"
/>
<exclusiveGateway
id=
"sid-ED46FE41-A0FD-496D-86DC-2C97AF5735F0"
/>
<sequenceFlow
id=
"sid-EF2F51BB-1D99-4F0B-ACF2-B6C1300A7D2B"
sourceRef=
"audit2"
targetRef=
"sid-ED46FE41-A0FD-496D-86DC-2C97AF5735F0"
/>
<userTask
id=
"audit3"
name=
"集团人力资源部分管领导审核"
activiti:assignee=
"admin"
/>
<exclusiveGateway
id=
"sid-FE485B2D-9A23-4236-BD0D-D788CA6E30E4"
/>
<sequenceFlow
id=
"sid-3DBCD661-5720-4480-8156-748BE0275FEF"
sourceRef=
"audit3"
targetRef=
"sid-FE485B2D-9A23-4236-BD0D-D788CA6E30E4"
/>
<userTask
id=
"audit4"
name=
"集团总经理审批"
activiti:assignee=
"admin"
/>
<exclusiveGateway
id=
"sid-3F53B6BD-F8F3-496B-AC08-50630BD11477"
/>
<userTask
id=
"apply_end"
name=
"薪酬档级兑现"
activiti:assignee=
"admin"
/>
<sequenceFlow
id=
"sid-02DB2AD9-1332-4198-AC8D-22A35169D15C"
sourceRef=
"audit4"
targetRef=
"sid-3F53B6BD-F8F3-496B-AC08-50630BD11477"
/>
<sequenceFlow
id=
"sid-2AB7C01A-50EE-4AAC-8C8F-F6E1935B3DA7"
sourceRef=
"audit"
targetRef=
"sid-C28BB5F6-013D-4570-B432-61B380C1F46F"
/>
<sequenceFlow
id=
"sid-36E50C8B-6C7C-4968-B02D-EBAA425BF4BE"
sourceRef=
"start"
targetRef=
"audit"
/>
<sequenceFlow
id=
"sid-7D723190-1432-411D-A4A4-774225E54CD9"
name=
"是"
sourceRef=
"sid-3F53B6BD-F8F3-496B-AC08-50630BD11477"
targetRef=
"apply_end"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${pass==1}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"sid-D44CAD43-0271-4920-A524-9B8533E52550"
name=
"是"
sourceRef=
"sid-FE485B2D-9A23-4236-BD0D-D788CA6E30E4"
targetRef=
"audit4"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${pass==1}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"sid-53258502-43EE-4DE8-B1A4-DBD11922B8AF"
name=
"否"
sourceRef=
"sid-C28BB5F6-013D-4570-B432-61B380C1F46F"
targetRef=
"modify"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${pass==0}]]>
</conditionExpression>
</sequenceFlow>
<exclusiveGateway
id=
"sid-5FED02D6-C388-48C6-870E-097DB2131EA0"
/>
<sequenceFlow
id=
"sid-163DBC60-DBC9-438B-971A-67738FB7715A"
sourceRef=
"modify"
targetRef=
"sid-5FED02D6-C388-48C6-870E-097DB2131EA0"
/>
<sequenceFlow
id=
"sid-72258A41-203E-428C-B71D-CA3506252D73"
name=
"是"
sourceRef=
"sid-C28BB5F6-013D-4570-B432-61B380C1F46F"
targetRef=
"audit2"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${pass==1}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"sid-8448EF4A-B62E-4899-ABC2-0E2DB2AE6838"
name=
"重新申请"
sourceRef=
"sid-5FED02D6-C388-48C6-870E-097DB2131EA0"
targetRef=
"audit"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${pass==1}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"sid-A7589084-4623-4FEA-A774-00A70DDC1D20"
name=
"是"
sourceRef=
"sid-ED46FE41-A0FD-496D-86DC-2C97AF5735F0"
targetRef=
"audit3"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${pass==1}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"sid-FA618636-3708-4D0C-8514-29A4BB8BC926"
name=
"否"
sourceRef=
"sid-ED46FE41-A0FD-496D-86DC-2C97AF5735F0"
targetRef=
"modify"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${pass==0}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"sid-1525BFF4-3E9D-4D8A-BF80-1F63AFE16289"
name=
"否"
sourceRef=
"sid-FE485B2D-9A23-4236-BD0D-D788CA6E30E4"
targetRef=
"modify"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${pass==0}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"sid-35CC8C6C-1067-4398-991C-CCF955115965"
name=
"否"
sourceRef=
"sid-3F53B6BD-F8F3-496B-AC08-50630BD11477"
targetRef=
"modify"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${pass==0}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"sid-BDB0AAB2-7E50-4D35-80EE-CE0BECDD9F57"
sourceRef=
"apply_end"
targetRef=
"end"
/>
<sequenceFlow
id=
"sid-44AFB9C1-4057-4C48-B1F2-1EC897A52CB7"
name=
"销毁"
sourceRef=
"sid-5FED02D6-C388-48C6-870E-097DB2131EA0"
targetRef=
"end"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${pass==0}]]>
</conditionExpression>
</sequenceFlow>
</process>
<bpmndi:BPMNDiagram
id=
"BPMNDiagram_test_audit"
>
<bpmndi:BPMNPlane
bpmnElement=
"test_audit"
id=
"BPMNPlane_test_audit"
>
<bpmndi:BPMNShape
bpmnElement=
"start"
id=
"BPMNShape_start"
>
<omgdc:Bounds
height=
"30.0"
width=
"30.0"
x=
"30.0"
y=
"245.0"
/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"end"
id=
"BPMNShape_end"
>
<omgdc:Bounds
height=
"28.0"
width=
"28.0"
x=
"975.0"
y=
"356.0"
/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"modify"
id=
"BPMNShape_modify"
>
<omgdc:Bounds
height=
"58.0"
width=
"102.0"
x=
"209.0"
y=
"135.0"
/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"audit"
id=
"BPMNShape_audit"
>
<omgdc:Bounds
height=
"57.0"
width=
"96.0"
x=
"105.0"
y=
"231.5"
/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"sid-C28BB5F6-013D-4570-B432-61B380C1F46F"
id=
"BPMNShape_sid-C28BB5F6-013D-4570-B432-61B380C1F46F"
>
<omgdc:Bounds
height=
"40.0"
width=
"40.0"
x=
"240.0"
y=
"240.0"
/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"audit2"
id=
"BPMNShape_audit2"
>
<omgdc:Bounds
height=
"80.0"
width=
"100.0"
x=
"210.0"
y=
"330.0"
/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"sid-ED46FE41-A0FD-496D-86DC-2C97AF5735F0"
id=
"BPMNShape_sid-ED46FE41-A0FD-496D-86DC-2C97AF5735F0"
>
<omgdc:Bounds
height=
"40.0"
width=
"40.0"
x=
"345.0"
y=
"350.0"
/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"audit3"
id=
"BPMNShape_audit3"
>
<omgdc:Bounds
height=
"80.0"
width=
"100.0"
x=
"420.0"
y=
"330.0"
/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"sid-FE485B2D-9A23-4236-BD0D-D788CA6E30E4"
id=
"BPMNShape_sid-FE485B2D-9A23-4236-BD0D-D788CA6E30E4"
>
<omgdc:Bounds
height=
"40.0"
width=
"40.0"
x=
"555.0"
y=
"350.0"
/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"audit4"
id=
"BPMNShape_audit4"
>
<omgdc:Bounds
height=
"80.0"
width=
"100.0"
x=
"630.0"
y=
"330.0"
/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"sid-3F53B6BD-F8F3-496B-AC08-50630BD11477"
id=
"BPMNShape_sid-3F53B6BD-F8F3-496B-AC08-50630BD11477"
>
<omgdc:Bounds
height=
"40.0"
width=
"40.0"
x=
"765.0"
y=
"350.0"
/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"apply_end"
id=
"BPMNShape_apply_end"
>
<omgdc:Bounds
height=
"80.0"
width=
"100.0"
x=
"840.0"
y=
"330.0"
/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"sid-5FED02D6-C388-48C6-870E-097DB2131EA0"
id=
"BPMNShape_sid-5FED02D6-C388-48C6-870E-097DB2131EA0"
>
<omgdc:Bounds
height=
"40.0"
width=
"40.0"
x=
"240.0"
y=
"45.0"
/>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge
bpmnElement=
"sid-3DBCD661-5720-4480-8156-748BE0275FEF"
id=
"BPMNEdge_sid-3DBCD661-5720-4480-8156-748BE0275FEF"
>
<omgdi:waypoint
x=
"520.0"
y=
"370.0"
/>
<omgdi:waypoint
x=
"555.0"
y=
"370.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-44AFB9C1-4057-4C48-B1F2-1EC897A52CB7"
id=
"BPMNEdge_sid-44AFB9C1-4057-4C48-B1F2-1EC897A52CB7"
>
<omgdi:waypoint
x=
"280.0"
y=
"65.0"
/>
<omgdi:waypoint
x=
"989.0"
y=
"65.0"
/>
<omgdi:waypoint
x=
"989.0"
y=
"356.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-8448EF4A-B62E-4899-ABC2-0E2DB2AE6838"
id=
"BPMNEdge_sid-8448EF4A-B62E-4899-ABC2-0E2DB2AE6838"
>
<omgdi:waypoint
x=
"240.0"
y=
"65.0"
/>
<omgdi:waypoint
x=
"153.0"
y=
"65.0"
/>
<omgdi:waypoint
x=
"153.0"
y=
"231.5"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-A7589084-4623-4FEA-A774-00A70DDC1D20"
id=
"BPMNEdge_sid-A7589084-4623-4FEA-A774-00A70DDC1D20"
>
<omgdi:waypoint
x=
"385.0"
y=
"370.0"
/>
<omgdi:waypoint
x=
"420.0"
y=
"370.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-35CC8C6C-1067-4398-991C-CCF955115965"
id=
"BPMNEdge_sid-35CC8C6C-1067-4398-991C-CCF955115965"
>
<omgdi:waypoint
x=
"785.0"
y=
"350.0"
/>
<omgdi:waypoint
x=
"785.0"
y=
"164.0"
/>
<omgdi:waypoint
x=
"311.0"
y=
"164.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-EF2F51BB-1D99-4F0B-ACF2-B6C1300A7D2B"
id=
"BPMNEdge_sid-EF2F51BB-1D99-4F0B-ACF2-B6C1300A7D2B"
>
<omgdi:waypoint
x=
"310.0"
y=
"370.0"
/>
<omgdi:waypoint
x=
"345.0"
y=
"370.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-7D723190-1432-411D-A4A4-774225E54CD9"
id=
"BPMNEdge_sid-7D723190-1432-411D-A4A4-774225E54CD9"
>
<omgdi:waypoint
x=
"805.0"
y=
"370.0"
/>
<omgdi:waypoint
x=
"840.0"
y=
"370.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-2AB7C01A-50EE-4AAC-8C8F-F6E1935B3DA7"
id=
"BPMNEdge_sid-2AB7C01A-50EE-4AAC-8C8F-F6E1935B3DA7"
>
<omgdi:waypoint
x=
"201.0"
y=
"260.0"
/>
<omgdi:waypoint
x=
"240.0"
y=
"260.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-D44CAD43-0271-4920-A524-9B8533E52550"
id=
"BPMNEdge_sid-D44CAD43-0271-4920-A524-9B8533E52550"
>
<omgdi:waypoint
x=
"595.0"
y=
"370.0"
/>
<omgdi:waypoint
x=
"630.0"
y=
"370.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-FA618636-3708-4D0C-8514-29A4BB8BC926"
id=
"BPMNEdge_sid-FA618636-3708-4D0C-8514-29A4BB8BC926"
>
<omgdi:waypoint
x=
"365.0"
y=
"350.0"
/>
<omgdi:waypoint
x=
"365.0"
y=
"164.0"
/>
<omgdi:waypoint
x=
"311.0"
y=
"164.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-02DB2AD9-1332-4198-AC8D-22A35169D15C"
id=
"BPMNEdge_sid-02DB2AD9-1332-4198-AC8D-22A35169D15C"
>
<omgdi:waypoint
x=
"730.0"
y=
"370.0"
/>
<omgdi:waypoint
x=
"765.0"
y=
"370.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-36E50C8B-6C7C-4968-B02D-EBAA425BF4BE"
id=
"BPMNEdge_sid-36E50C8B-6C7C-4968-B02D-EBAA425BF4BE"
>
<omgdi:waypoint
x=
"60.0"
y=
"260.0"
/>
<omgdi:waypoint
x=
"105.0"
y=
"260.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-53258502-43EE-4DE8-B1A4-DBD11922B8AF"
id=
"BPMNEdge_sid-53258502-43EE-4DE8-B1A4-DBD11922B8AF"
>
<omgdi:waypoint
x=
"260.0"
y=
"240.0"
/>
<omgdi:waypoint
x=
"260.0"
y=
"193.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-163DBC60-DBC9-438B-971A-67738FB7715A"
id=
"BPMNEdge_sid-163DBC60-DBC9-438B-971A-67738FB7715A"
>
<omgdi:waypoint
x=
"260.0"
y=
"135.0"
/>
<omgdi:waypoint
x=
"260.0"
y=
"85.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-BDB0AAB2-7E50-4D35-80EE-CE0BECDD9F57"
id=
"BPMNEdge_sid-BDB0AAB2-7E50-4D35-80EE-CE0BECDD9F57"
>
<omgdi:waypoint
x=
"940.0"
y=
"370.0"
/>
<omgdi:waypoint
x=
"975.0"
y=
"370.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-1525BFF4-3E9D-4D8A-BF80-1F63AFE16289"
id=
"BPMNEdge_sid-1525BFF4-3E9D-4D8A-BF80-1F63AFE16289"
>
<omgdi:waypoint
x=
"575.0"
y=
"350.0"
/>
<omgdi:waypoint
x=
"575.0"
y=
"164.0"
/>
<omgdi:waypoint
x=
"311.0"
y=
"164.0"
/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"sid-72258A41-203E-428C-B71D-CA3506252D73"
id=
"BPMNEdge_sid-72258A41-203E-428C-B71D-CA3506252D73"
>
<omgdi:waypoint
x=
"260.0"
y=
"280.0"
/>
<omgdi:waypoint
x=
"260.0"
y=
"330.0"
/>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</definitions>
\ No newline at end of file
JeeSpringCloud/jeespring-webDubboProvider/src/main/resources/act/designs/oa/test_audit/test_audit.png
0 → 100644
View file @
44ab1569
21 KB
JeeSpringCloud/jeespring-webDubboProvider/src/main/resources/application.yml
0 → 100644
View file @
44ab1569
server
:
port
:
9996
tomcat
:
uri-encoding
:
UTF-8
basedir
:
/data/jeespring/tomcat
max-threads
:
2000
min-spare-threads
:
10
accesslog
:
pattern
:
common
enabled
:
true
directory
:
../logs
prefix
:
jeespring_access_log
suffix
:
.log
request-attributes-enabled
:
true
rename-on-rotate
:
true
ssl
:
key-store
:
classpath:keystore.p12
key-store-password
:
jeespring
keyStoreType
:
PKCS12
keyAlias
:
tomcat
#启动热部署
jsp-servlet.init-parameters.development
:
true
http
:
port
:
8886
logging
:
level
:
root
:
INFO
#WARN、DEBUG、INFO;DEBUG: 设置为DEBUG会打印SQL语句
com.jeespring
:
WARN
com.jeespring.modules.cms
:
DEBUG
com.company
:
DEBUG
org.apache.shiro.cache.ehcache.EhCacheManager
:
WARN
#如果不需要启用安全验证 spring boot admin
management
:
security
:
#enabled: false
info
:
#定义各种额外的详情给服务端显示
app
:
name
:
"
@project.name@"
#从pom.xml中获取
description
:
"
@project.description@"
version
:
"
@project.version@"
spring-boot-version
:
"
@project.parent.version@"
spring
:
#dubbo的消费者和提供者配置,默认为消费者dubboConsumer。如果要启用提供者,请配置为dubboProvider。
#profiles:
#active: dubboConsumer
application
:
name
:
jeeSpring
#spring boot admin
boot
:
admin
:
#client:
#prefer-ip: true # 解决windows下运行时无法识别主机名的问题
#url: http://localhost:8999
#数据库的配置
datasource
:
type
:
com.alibaba.druid.pool.DruidDataSource
#mysql
driverClassName
:
com.mysql.jdbc.Driver
url
:
jdbc:mysql://127.0.0.1:3306/jeespring?useUnicode=true&characterEncoding=utf-8
#oracle
#driverClassName: oracle.jdbc.driver.OracleDriver
#jdbc:oracle:thin:@127.0.0.1:1521:orcl
username
:
root
password
:
root
# 下面为连接池的补充设置,应用到上面所有数据源中
# 初始化大小,最小,最大
initialSize
:
5
minIdle
:
3
maxActive
:
20
# 配置获取连接等待超时的时间
maxWait
:
60000
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
timeBetweenEvictionRunsMillis
:
60000
# 配置一个连接在池中最小生存的时间,单位是毫秒
minEvictableIdleTimeMillis
:
30000
validationQuery
:
SELECT 'x' FROM DUAL
testWhileIdle
:
true
testOnBorrow
:
false
testOnReturn
:
false
# 打开PSCache,并且指定每个连接上PSCache的大小
poolPreparedStatements
:
true
maxPoolPreparedStatementPerConnectionSize
:
20
# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
filters
:
stat,wall,slf4j
# 通过connectProperties属性来打开mergeSql功能;慢SQL记录
connectionProperties
:
druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
# 合并多个DruidDataSource的监控数据
useGlobalDataSourceStat
:
true
#springMvc的配置
mvc
:
view
:
prefix
:
/WEB-INF/views/
suffix
:
.jsp
servlet
:
load-on-startup
:
1
#spring-ehcache的配置
cache
:
type
:
ehcache
ehcache
:
config
:
classpath:ehcache.xml
#spring-redis的配置
redis
:
hostName
:
127.0.0.1
port
:
6379
password
:
123456
pool
:
maxActive
:
8
maxWait
:
-1
maxIdle
:
8
minIdle
:
0
timeout
:
0
keyPrefix
:
JeeSpring_
#Redis key 前缀
run
:
true
#Redis是否启动
listFlush
:
true
#list记录根据添加修改删除自动清除
expireTime
:
900
#缓存有效时间15分钟
expireTimeShiro
:
1800
#缓存有效时间30分钟
######################################### 使用activemq队列是,取消下面注解
activemq
:
broker-url
:
tcp://localhost:61616
in-memory
:
true
# Specify if the default broker URL should be in memory. Ignored if an explicit broker has been specified.
password
:
admin
# Login password of the broker.
user
:
admin
# Login user of the broker.
packages
:
trust-all
:
true
# Trust all packages.
trusted
:
# Comma-separated list of specific packages to trust (when not trusting all packages).
pool
:
configuration.*
:
# See PooledConnectionFactory.
enabled
:
true
# Whether a PooledConnectionFactory should be created instead of a regular ConnectionFactory.
expiry-timeout
:
0
# Connection expiration timeout in milliseconds.
idle-timeout
:
30000
# Connection idle timeout in milliseconds.
max-connections
:
1
# Maximum number of pooled connections.
#mybatis的配置
mybatis
:
config-location
:
classpath:/mybatis-config.xml
mapper-locations
:
classpath*:/mappings/**/*.xml
type-aliases-package
:
com.jeespring,com.company
#admin页面管理Path
adminPath
:
/admin
frontPath
:
/cms
urlSuffix
:
.html
#分页配置
page
:
pageSize
:
10
#文件上传的路径
userfiles
:
basedir
:
/data/jeespring/upload
#系统发生邮件服务账号密码
email
:
from
:
516821420@qq.com
fromName
:
jeespring
username
:
516821420@qq.com
password
:
nxpnalicxljjcaec
job
:
company
:
companyScheduledTaskService
:
run
:
0 0/1 9-19 * * ?
#朝九晚五工作时间内每半小时
#run: 0 0 10,14,16 * * ? 每天上午10点,下午2点,4点
#run: 0 0 12 * * ?" 每天中午12点触发
jeeSrping
:
JeeSpringScheduledTaskService
:
run
:
5000
#run: 0 0 10,14,16 * * ? 每天上午10点,下午2点,4点
#run: 0 0 12 * * ?" 每天中午12点触发
demoMode
:
false
demoModeDescription
:
演示版启用,为系统能正常演示,暂时不允许操作!系统配置可开启正式版!功能全开源!每周周一再更新!
# Shiro权限配置
shiro
:
redis
:
false
#启动shiro redis缓存,单点登录,##单点登录性能有带提升##
user
:
# 登录地址
loginUrl
:
/admin/login
# 权限认证失败地址
unauthorizedUrl
:
/admin/login
cookie
:
# 设置Cookie的域名 默认空,即当前访问的域名
domain
:
# 设置cookie的有效访问路径
path
:
/
# 设置HttpOnly属性
httpOnly
:
true
# 设置Cookie的过期时间,天为单位
maxAge
:
30
session
:
# Session超时时间(默认30分钟)
expireTime
:
30
# 同步session到数据库的周期(默认1分钟)
dbSyncPeriod
:
1
# 相隔多久检查一次session的有效性,默认就是10分钟
validationInterval
:
10
#dubbo客户端,使用dubbo时,请启动zookeeper
#dubbo:
# application:
# name: consumer
# registry:
# address: zookeeper://127.0.0.1:2181
# scan:
# base-packages: com.jeespring.modules.server.web
# run: true
#dubbo服务端
#dubbo:
application
:
name
:
provider
registry
:
address
:
zookeeper://127.0.0.1:2181
protocol
:
name
:
dubbo
port
:
20880
scan
:
base-packages
:
com.jeespring.modules.server.service
run
:
true
security
:
basic
:
enabled
:
false
\ No newline at end of file
Prev
1
2
3
Next
Write
Preview
Supports
Markdown
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