Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-boot-biz
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
项目统一框架
amos-boot-biz
Commits
e2860535
Commit
e2860535
authored
Jul 09, 2021
by
suhuiguang
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'developer' of
http://172.16.10.76/moa/amos-boot-biz
into developer
parents
d0fb128c
667c954e
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
233 additions
and
8 deletions
+233
-8
OptionDto.java
.../java/com/yeejoin/amos/boot/biz/common/dto/OptionDto.java
+23
-0
AmosFeignService.java
.../yeejoin/amos/boot/biz/common/feign/AmosFeignService.java
+44
-0
DateUtils.java
...ava/com/yeejoin/amos/boot/biz/common/utils/DateUtils.java
+78
-8
ExcelUtils.java
...va/com/yeejoin/amos/boot/biz/common/utils/ExcelUtils.java
+43
-0
DutyCarController.java
.../boot/module/common/biz/controller/DutyCarController.java
+15
-0
IDutyCommonService.java
...os/boot/module/common/biz/service/IDutyCommonService.java
+2
-0
DutyCommonServiceImpl.java
...module/common/biz/service/impl/DutyCommonServiceImpl.java
+28
-0
No files found.
amos-boot-biz-common/src/main/java/com/yeejoin/amos/boot/biz/common/dto/OptionDto.java
0 → 100644
View file @
e2860535
package
com
.
yeejoin
.
amos
.
boot
.
biz
.
common
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
lombok.Data
;
import
java.io.Serializable
;
/**
* 下拉列表通用返回实体
*
* @author system_generator
* @date 2021-07-06
*/
@Data
@ApiModel
(
value
=
"OptionDto"
,
description
=
"下拉列表通用返回实体"
)
public
class
OptionDto
implements
Serializable
{
private
String
key
;
private
String
label
;
private
String
labelDesc
;
}
amos-boot-biz-common/src/main/java/com/yeejoin/amos/boot/biz/common/feign/AmosFeignService.java
View file @
e2860535
package
com
.
yeejoin
.
amos
.
boot
.
biz
.
common
.
feign
;
package
com
.
yeejoin
.
amos
.
boot
.
biz
.
common
.
feign
;
import
com.yeejoin.amos.boot.biz.common.dto.OptionDto
;
import
com.yeejoin.amos.component.feign.utils.FeignUtil
;
import
com.yeejoin.amos.component.feign.utils.FeignUtil
;
import
com.yeejoin.amos.feign.systemctl.Systemctl
;
import
com.yeejoin.amos.feign.systemctl.Systemctl
;
import
com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel
;
import
com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
import
org.apache.logging.log4j.Logger
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.ObjectUtils
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -32,4 +35,45 @@ public class AmosFeignService {
...
@@ -32,4 +35,45 @@ public class AmosFeignService {
dictionaryModel
=
FeignUtil
.
remoteCall
(()
->
Systemctl
.
dictionarieClient
.
dictValues
(
dictCode
));
dictionaryModel
=
FeignUtil
.
remoteCall
(()
->
Systemctl
.
dictionarieClient
.
dictValues
(
dictCode
));
return
dictionaryModel
;
return
dictionaryModel
;
}
}
/**
* 根据Code查询指定的字典信息.
*
* @param dictCode
* @param isScreen 是否过滤数据
* @return
*/
public
List
<
OptionDto
>
listDictionaryByDictCode
(
String
dictCode
,
boolean
isScreen
)
{
List
<
DictionarieValueModel
>
dictionarieModel
=
null
;
try
{
dictionarieModel
=
FeignUtil
.
remoteCall
(()
->
Systemctl
.
dictionarieClient
.
dictValues
(
dictCode
));
return
getOptionsMo
(
dictionarieModel
,
isScreen
);
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
"获取字典数据出错"
);
}
}
/**
* 返回数据转成key - value键值对
*
* @param dictionariesModel
* @param isScreen 是否过滤数据
* @return
*/
private
List
<
OptionDto
>
getOptionsMo
(
List
<
DictionarieValueModel
>
dictionariesModel
,
boolean
isScreen
)
{
List
<
OptionDto
>
optionsMoList
=
new
ArrayList
();
dictionariesModel
.
forEach
(
dictionaries
->
{
if
(
isScreen
&&
ObjectUtils
.
isEmpty
(
dictionaries
.
getDictDataDesc
()))
{
return
;
}
OptionDto
optionsMo
=
new
OptionDto
();
optionsMo
.
setKey
(
dictionaries
.
getDictDataKey
());
optionsMo
.
setLabel
(
dictionaries
.
getDictDataValue
());
optionsMo
.
setLabelDesc
(
dictionaries
.
getDictDataDesc
());
optionsMoList
.
add
(
optionsMo
);
}
);
return
optionsMoList
;
}
}
}
amos-boot-biz-common/src/main/java/com/yeejoin/amos/boot/biz/common/utils/DateUtils.java
View file @
e2860535
...
@@ -5,8 +5,7 @@ import org.apache.commons.lang3.StringUtils;
...
@@ -5,8 +5,7 @@ import org.apache.commons.lang3.StringUtils;
import
java.text.ParseException
;
import
java.text.ParseException
;
import
java.text.ParsePosition
;
import
java.text.ParsePosition
;
import
java.text.SimpleDateFormat
;
import
java.text.SimpleDateFormat
;
import
java.util.Calendar
;
import
java.util.*
;
import
java.util.Date
;
/**
/**
* @description: 时间工具类
* @description: 时间工具类
...
@@ -25,6 +24,15 @@ public class DateUtils {
...
@@ -25,6 +24,15 @@ public class DateUtils {
public
static
final
String
HOUR_ONLY_PATTERN
=
"HH"
;
public
static
final
String
HOUR_ONLY_PATTERN
=
"HH"
;
/**
/**
* 获取 当前年、半年、季度、月、日、小时 开始结束时间
*/
private
static
final
SimpleDateFormat
shortSdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
private
static
final
SimpleDateFormat
longHourSdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH"
);
private
static
final
SimpleDateFormat
longSdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
private
static
final
Calendar
calendar
=
Calendar
.
getInstance
();
private
static
final
SimpleDateFormat
shortDateNew
=
new
SimpleDateFormat
(
"yyyy/M/d"
);
/**
* 获取当前时间
* 获取当前时间
*
*
* @return 当前日期时间
* @return 当前日期时间
...
@@ -521,15 +529,65 @@ public class DateUtils {
...
@@ -521,15 +529,65 @@ public class DateUtils {
}
}
/**
/**
*
当前日期毫秒.xls
*
根据年月返回第一天
*
*
* @param yearParam
* @param monthParam
* @return
* @return
*/
*/
public
static
String
formatName
()
{
public
static
Date
getFirstDayByMonth
(
int
yearParam
,
int
monthParam
)
{
Calendar
calen
=
Calendar
.
getInstance
();
Calendar
c
=
Calendar
.
getInstance
(
Locale
.
CHINA
);
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyyMMddhhmmss"
);
c
.
set
(
yearParam
,
monthParam
-
1
,
1
);
String
name
=
sdf
.
format
(
calen
.
getTime
());
try
{
return
name
;
Date
date
=
shortSdf
.
parse
(
shortSdf
.
format
(
c
.
getTime
())
+
" 00:00:00"
);
return
date
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
null
;
}
/**
* 获取某月的日期List
*
* @param yearParam
* @param monthParam
* @return
*/
public
static
List
<
String
>
getDayByMonth
(
int
yearParam
,
int
monthParam
)
{
List
list
=
new
ArrayList
();
Calendar
aCalendar
=
Calendar
.
getInstance
(
Locale
.
CHINA
);
aCalendar
.
set
(
yearParam
,
monthParam
-
1
,
1
);
int
year
=
aCalendar
.
get
(
Calendar
.
YEAR
);
//年份
int
month
=
aCalendar
.
get
(
Calendar
.
MONTH
)
+
1
;
//月份
int
day
=
aCalendar
.
getActualMaximum
(
Calendar
.
DATE
);
for
(
int
i
=
1
;
i
<=
day
;
i
++)
{
list
.
add
(
year
+
"/"
+
month
+
"/"
+
i
);
}
return
list
;
}
/**
* 当前月的结束时间,即2012-01-31 23:59:59
*
* @return
*/
public
static
Date
getCurrentMonthEndTime
(
Date
date
)
{
Calendar
c
=
Calendar
.
getInstance
();
c
.
setTime
(
date
);
Date
now
=
null
;
c
.
set
(
Calendar
.
DATE
,
1
);
c
.
add
(
Calendar
.
MONTH
,
1
);
c
.
add
(
Calendar
.
DATE
,
-
1
);
try
{
now
=
longSdf
.
parse
(
shortSdf
.
format
(
c
.
getTime
())
+
" 23:59:59"
);
}
catch
(
ParseException
e
)
{
e
.
printStackTrace
();
}
return
now
;
}
}
public
static
void
main
(
String
[]
args
)
throws
Exception
{
public
static
void
main
(
String
[]
args
)
throws
Exception
{
...
@@ -548,4 +606,16 @@ public class DateUtils {
...
@@ -548,4 +606,16 @@ public class DateUtils {
/*System.out.println(dateFormat(maxDateOfMonth(dateParse("2016-02", "yyyy-MM")), null));
/*System.out.println(dateFormat(maxDateOfMonth(dateParse("2016-02", "yyyy-MM")), null));
System.out.println(dateFormat(minDateOfMonth(dateParse("2016-03-31", null)), null));*/
System.out.println(dateFormat(minDateOfMonth(dateParse("2016-03-31", null)), null));*/
}
}
/**
* 当前日期毫秒.xls
*
* @return
*/
public
static
String
formatName
()
{
Calendar
calen
=
Calendar
.
getInstance
();
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyyMMddhhmmss"
);
String
name
=
sdf
.
format
(
calen
.
getTime
());
return
name
;
}
}
}
amos-boot-biz-common/src/main/java/com/yeejoin/amos/boot/biz/common/utils/ExcelUtils.java
View file @
e2860535
...
@@ -8,11 +8,15 @@ import cn.afterturn.easypoi.excel.entity.ImportParams;
...
@@ -8,11 +8,15 @@ import cn.afterturn.easypoi.excel.entity.ImportParams;
import
cn.afterturn.easypoi.excel.entity.enmus.ExcelType
;
import
cn.afterturn.easypoi.excel.entity.enmus.ExcelType
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.poi.ss.usermodel.Workbook
;
import
org.apache.poi.ss.usermodel.Workbook
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.File
;
import
java.io.File
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.io.OutputStream
;
import
java.net.URLEncoder
;
import
java.net.URLEncoder
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
...
@@ -27,6 +31,8 @@ import java.util.regex.Pattern;
...
@@ -27,6 +31,8 @@ import java.util.regex.Pattern;
**/
**/
public
class
ExcelUtils
{
public
class
ExcelUtils
{
private
final
static
Logger
log
=
LoggerFactory
.
getLogger
(
ExcelUtils
.
class
);
/**
/**
* excel 导出
* excel 导出
*
*
...
@@ -202,4 +208,41 @@ public class ExcelUtils {
...
@@ -202,4 +208,41 @@ public class ExcelUtils {
return
s
;
return
s
;
}
}
/**
* 导出Excel
*
* @param workbook workbook流
* @param fileName 文件名
* @param response 响应
*/
public
static
void
exportExcel
(
Workbook
workbook
,
String
fileName
,
HttpServletResponse
response
)
{
if
(
ObjectUtils
.
isEmpty
(
fileName
)){
fileName
=
DateUtils
.
formatName
();
}
//输出文件
try
(
OutputStream
out
=
response
.
getOutputStream
())
{
//获取文件名并转码
String
name
=
URLEncoder
.
encode
(
fileName
,
"UTF-8"
);
//编码
response
.
setCharacterEncoding
(
"UTF-8"
);
// 设置强制下载不打开
response
.
setContentType
(
"application/force-download"
);
// 下载文件的默认名称
response
.
setHeader
(
"Content-Disposition"
,
"attachment;filename="
+
name
+
".xls"
);
//输出表格
workbook
.
write
(
out
);
}
catch
(
IOException
e
)
{
log
.
error
(
"文件导出异常,详情如下:"
,
e
);
}
finally
{
try
{
if
(
workbook
!=
null
)
{
//关闭输出流
workbook
.
close
();
}
}
catch
(
IOException
e
)
{
log
.
error
(
"文件导出异常,详情如下:"
,
e
);
}
}
}
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-common-biz/src/main/java/com/yeejoin/amos/boot/module/common/biz/controller/DutyCarController.java
View file @
e2860535
...
@@ -14,6 +14,8 @@ import org.typroject.tyboot.core.restful.doc.TycloudOperation;
...
@@ -14,6 +14,8 @@ import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.text.ParseException
;
import
java.text.ParseException
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
...
@@ -109,6 +111,19 @@ public class DutyCarController extends BaseController {
...
@@ -109,6 +111,19 @@ public class DutyCarController extends BaseController {
}
}
/**
/**
* 车辆执勤导出
*
* @return ResponseModel
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
"/exportExcel"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"车辆执勤导出"
,
notes
=
"车辆执勤导出"
)
public
void
exportExcel
(
HttpServletResponse
response
,
@ApiParam
(
value
=
"开始日期"
,
required
=
true
)
@RequestParam
String
beginDate
,
@ApiParam
(
value
=
"结束日期"
,
required
=
true
)
@RequestParam
String
endDate
)
throws
ParseException
{
iDutyCarService
.
downloadList
(
beginDate
,
endDate
,
response
);
}
/**
* 值班数据删除
* 值班数据删除
* @param instanceId 实例id
* @param instanceId 实例id
* @return ResponseModel
* @return ResponseModel
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-common-biz/src/main/java/com/yeejoin/amos/boot/module/common/biz/service/IDutyCommonService.java
View file @
e2860535
...
@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.common.biz.service;
...
@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.common.biz.service;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
javax.servlet.http.HttpServletResponse
;
import
java.text.ParseException
;
import
java.text.ParseException
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
...
@@ -46,6 +47,7 @@ public interface IDutyCommonService {
...
@@ -46,6 +47,7 @@ public interface IDutyCommonService {
*/
*/
String
getGroupCode
();
String
getGroupCode
();
void
downloadList
(
String
beginDate
,
String
endDate
,
HttpServletResponse
response
)
throws
ParseException
;
/**
/**
* 值班数据入库
* 值班数据入库
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-common-biz/src/main/java/com/yeejoin/amos/boot/module/common/biz/service/impl/DutyCommonServiceImpl.java
View file @
e2860535
...
@@ -22,7 +22,9 @@ import org.typroject.tyboot.core.foundation.utils.Bean;
...
@@ -22,7 +22,9 @@ import org.typroject.tyboot.core.foundation.utils.Bean;
import
org.typroject.tyboot.core.foundation.utils.ValidationUtil
;
import
org.typroject.tyboot.core.foundation.utils.ValidationUtil
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.text.ParseException
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.*
;
import
java.util.*
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
...
@@ -172,6 +174,32 @@ public class DutyCommonServiceImpl implements IDutyCommonService {
...
@@ -172,6 +174,32 @@ public class DutyCommonServiceImpl implements IDutyCommonService {
return
null
;
return
null
;
}
}
@Override
public
void
downloadList
(
String
beginDate
,
String
endDate
,
HttpServletResponse
response
)
throws
ParseException
{
List
<
Map
<
String
,
Object
>>
maps
=
this
.
list
(
beginDate
,
endDate
);
String
groupCode
=
this
.
getGroupCode
();
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
DateUtils
.
DATE_TIME_PATTERN
);
Date
d
=
sdf
.
parse
(
beginDate
);
Calendar
calendar
=
Calendar
.
getInstance
();
calendar
.
setTime
(
d
);
List
<
String
>
dayByMonth
=
DateUtils
.
getDayByMonth
(
calendar
.
get
(
Calendar
.
YEAR
),
calendar
.
get
(
Calendar
.
MONTH
));
List
<
Map
<
String
,
Object
>>
contentList
=
new
ArrayList
<>();
String
fileName
;
if
(
0
<
maps
.
size
())
{
for
(
Map
<
String
,
Object
>
map
:
maps
)
{
}
}
if
(
"dutyCar"
.
equals
(
groupCode
))
{
fileName
=
"车辆执勤值班表"
;
}
else
{
fileName
=
"消防人员值班表"
;
}
// Workbook workbook = initExcel(appKey, orgCode, getTitleMap(year, mouth), contentList);
// ExcelUtils.exportExcel(workbook, fileName, response);
}
@Override
@Override
public
void
saveImportData
(
List
<
Map
<
String
,
Object
>>
dataList
)
{
public
void
saveImportData
(
List
<
Map
<
String
,
Object
>>
dataList
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment