Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Z
zhongtong-avi-service
Project
Project
Details
Activity
Releases
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
中通客车项目
zhongtong-avi-service
Commits
a8892fdc
Commit
a8892fdc
authored
Nov 01, 2019
by
夏东伟
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mes工单模块开发
parent
d69f676d
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
159 additions
and
53 deletions
+159
-53
BasicInfoController.java
...ongtong/avi/equipment/controller/BasicInfoController.java
+15
-1
MesWorkOrderInfo.java
...star/zhongtong/avi/equipment/domain/MesWorkOrderInfo.java
+39
-44
MesWorkOrderMapper.java
...ar/zhongtong/avi/equipment/mapper/MesWorkOrderMapper.java
+13
-0
BasicInfoService.java
...tar/zhongtong/avi/equipment/service/BasicInfoService.java
+87
-8
MesWorkOrderMapper.xml
src/main/resources/mapper/mysql/MesWorkOrderMapper.xml
+5
-0
No files found.
src/main/java/net/vtstar/zhongtong/avi/equipment/controller/BasicInfoController.java
View file @
a8892fdc
...
...
@@ -13,6 +13,7 @@ import net.vtstar.zhongtong.avi.equipment.service.BasicInfoService;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.util.Assert
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.validation.Valid
;
...
...
@@ -79,7 +80,7 @@ public class BasicInfoController {
" \"code\": \"工位编号,字符串类型\"\n"
+
" \"keyStation\": \"是否为关键工位,boolean\"\n"
+
"}"
)
@PostMapping
(
"/stationPage"
)
@PostMapping
(
"/stationPage"
)
public
Return
pageListStation
(
@RequestBody
SearchVo
pageFilter
)
{
return
Return
.
success
(
new
PageInfo
<>(
basicInfoService
.
findPageStation
(
pageFilter
.
toJSONObject
())));
}
...
...
@@ -131,4 +132,17 @@ public class BasicInfoController {
ParamAssert
.
notNull
(
areaId
,
"区域ID为NULL!"
);
return
Return
.
success
(
basicInfoService
.
getPaintshopLane
(
areaId
));
}
@ApiOperation
(
"工单导入"
)
@PostMapping
(
value
=
"/upload"
)
@ResponseBody
public
Return
uploadExcel
(
@RequestParam
(
"file"
)
MultipartFile
file
)
{
ParamAssert
.
notNull
(
file
,
"导入文件不能为空!"
);
Boolean
resolveExcel
=
basicInfoService
.
resolveExcel
(
file
);
if
(
resolveExcel
)
{
return
Return
.
success
();
}
else
{
return
Return
.
failed
(
"工单导入失败!"
);
}
}
}
src/main/java/net/vtstar/zhongtong/avi/equipment/domain/MesWorkOrderInfo.java
View file @
a8892fdc
...
...
@@ -4,17 +4,14 @@ import io.swagger.annotations.ApiModel;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
net.vtstar.user.search.Search
;
import
org.hibernate.validator.constraints.Length
;
import
net.vtstar.zhongtong.avi.global.web.Show
;
import
javax.persistence.Column
;
import
javax.persistence.Id
;
import
javax.persistence.Table
;
import
javax.validation.constraints.NotNull
;
import
java.util.Date
;
/**
* @Author: xiadongwei
* @Date: 2019/10/2
0
9:31
* @Date: 2019/10/2
9
9:31
*/
@ApiModel
(
"涂装车间工单表"
)
@Data
...
...
@@ -22,53 +19,51 @@ import java.util.Date;
@Table
(
name
=
"mes_work_order_info"
)
public
class
MesWorkOrderInfo
{
@Id
private
Long
id
;
@ApiModelProperty
(
notes
=
"车间编号"
)
@NotNull
(
message
=
"车间编号不能为空"
)
@Length
(
max
=
20
,
message
=
"车间编号长度不能大于{max}"
)
@Column
(
name
=
"workshop_code"
)
@Show
(
label
=
"销售订单号"
)
@ApiModelProperty
(
notes
=
"销售订单号"
)
@Column
(
name
=
"sales_order_no"
)
@Search
private
String
workshopCode
;
private
String
salesOrderNo
;
@ApiModelProperty
(
notes
=
"车间名称"
)
@NotNull
(
message
=
"车间名称不能为空"
)
@Length
(
max
=
50
,
message
=
"车间名称长度不能大于{max}"
)
@Column
(
name
=
"workshop_name"
)
@Show
(
label
=
"主计划工单号"
)
@ApiModelProperty
(
notes
=
"主计划工单号"
)
@Column
(
name
=
"master_work_order_no"
)
@Search
private
String
workshopName
;
private
String
masterWorkOrderNo
;
@ApiModelProperty
(
notes
=
"设备分类"
)
@NotNull
(
message
=
"设备分类不能为空"
)
@Length
(
max
=
50
,
message
=
"设备分类长度不能大于{max}"
)
@Column
(
name
=
"equip_type"
)
@Show
(
label
=
"车间计划工单号"
)
@ApiModelProperty
(
notes
=
"车间计划工单号"
)
@Column
(
name
=
"work_order_no"
)
@Search
private
String
equipType
;
private
String
workOrderNo
;
@ApiModelProperty
(
notes
=
"设备编号"
)
@NotNull
(
message
=
"设备名称不能为空"
)
@Length
(
max
=
100
,
message
=
"设备编号长度不能大于{max}"
)
@Column
(
name
=
"equip_code"
)
@Search
private
String
equipCode
;
@Show
(
label
=
"车型"
)
@ApiModelProperty
(
notes
=
"车型"
)
@Column
(
name
=
"vehicle_model"
)
private
String
vehicleModel
;
@ApiModelProperty
(
notes
=
"设备名称"
)
@Length
(
max
=
100
,
message
=
"设备名称长度不能大于{max}"
)
@Column
(
name
=
"alias"
)
@Search
private
String
alias
;
@Show
(
label
=
"订单数量"
)
@ApiModelProperty
(
notes
=
"订单数量"
)
@Column
(
name
=
"order_quantity"
)
private
Integer
orderQuantity
;
@Show
(
label
=
"单位"
)
@ApiModelProperty
(
notes
=
"单位"
)
@Column
(
name
=
"unit"
)
private
String
unit
;
@
ApiModelProperty
(
notes
=
"设备厂商
"
)
@
Length
(
max
=
100
,
message
=
"设备厂商长度不能大于{max}
"
)
@Column
(
name
=
"
equip_factory
"
)
private
String
equipFactory
;
@
Show
(
label
=
"车间
"
)
@
ApiModelProperty
(
notes
=
"车间
"
)
@Column
(
name
=
"
workshop
"
)
private
String
workshop
;
@ApiModelProperty
(
notes
=
"创建时间"
)
@Column
(
name
=
"create_time"
)
private
Date
createTime
;
@Show
(
label
=
"产线"
)
@ApiModelProperty
(
notes
=
"产线"
)
@Column
(
name
=
"production_line"
)
private
String
productionLine
;
@ApiModelProperty
(
notes
=
"更新时间"
)
@Column
(
name
=
"update_time"
)
private
Date
updateTime
;
@Show
(
label
=
"读取标识"
)
@ApiModelProperty
(
notes
=
"读取标识"
)
@Column
(
name
=
"reading_id"
)
private
String
readingId
;
}
src/main/java/net/vtstar/zhongtong/avi/equipment/mapper/MesWorkOrderMapper.java
0 → 100644
View file @
a8892fdc
package
net
.
vtstar
.
zhongtong
.
avi
.
equipment
.
mapper
;
import
net.vtstar.user.mybatis.BaseMapper
;
import
net.vtstar.zhongtong.avi.equipment.domain.MesWorkOrderInfo
;
import
org.apache.ibatis.annotations.Mapper
;
/**
* @Author: xiadongwei
* @Date: 2019/9/20 9:31
*/
@Mapper
public
interface
MesWorkOrderMapper
extends
BaseMapper
<
MesWorkOrderInfo
>
{
}
src/main/java/net/vtstar/zhongtong/avi/equipment/service/BasicInfoService.java
View file @
a8892fdc
...
...
@@ -8,19 +8,22 @@ import net.vtstar.user.mybatis.provider.OrderBy;
import
net.vtstar.user.mybatis.provider.WhereFilter
;
import
net.vtstar.user.search.service.SearchService
;
import
net.vtstar.utils.asserts.ParamAssert
;
import
net.vtstar.zhongtong.avi.equipment.domain.
EquipInfo
;
import
net.vtstar.zhongtong.avi.equipment.
domain.PaintshopArea
;
import
net.vtstar.zhongtong.avi.equipment.domain.PaintshopLane
;
import
net.vtstar.zhongtong.avi.equipment.domain.PaintshopStation
;
import
net.vtstar.zhongtong.avi.equipment.mapper.BasicInfoMapper
;
import
net.vtstar.zhongtong.avi.equipment.mapper.PaintshopAreaMapper
;
import
net.vtstar.zhongtong.avi.equipment.mapper.PaintshopLaneMapper
;
import
net.vtstar.zhongtong.avi.equipment.mapper.PaintshopStationMapper
;
import
net.vtstar.zhongtong.avi.equipment.domain.
*
;
import
net.vtstar.zhongtong.avi.equipment.
mapper.*
;
import
org.apache.poi.hssf.usermodel.HSSFWorkbook
;
import
org.apache.poi.ss.usermodel.Cell
;
import
org.apache.poi.ss.usermodel.Row
;
import
org.apache.poi.ss.usermodel.Sheet
;
import
org.apache.poi.ss.usermodel.Workbook
;
import
org.apache.poi.xssf.usermodel.XSSFWorkbook
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.Assert
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.StringUtils
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
...
...
@@ -47,6 +50,12 @@ public class BasicInfoService {
@Autowired
private
PaintshopLaneMapper
paintshopLaneMapper
;
@Autowired
private
MesWorkOrderMapper
mesWorkOrderMapper
;
private
static
final
String
SUFFIX_2003
=
".xls"
;
private
static
final
String
SUFFIX_2007
=
".xlsx"
;
/**
* 分页查询设备
*/
...
...
@@ -208,4 +217,74 @@ public class BasicInfoService {
addFilter
(
"area_id"
,
Operation
.
EQUAL
,
areaId
);
}},
PaintshopLane
.
class
);
}
public
Boolean
resolveExcel
(
MultipartFile
file
)
{
List
<
MesWorkOrderInfo
>
list
=
new
ArrayList
<>();
//获取文件的名字
String
originalFilename
=
file
.
getOriginalFilename
();
Workbook
workbook
=
null
;
try
{
if
(
originalFilename
.
endsWith
(
SUFFIX_2003
))
{
workbook
=
new
HSSFWorkbook
(
file
.
getInputStream
());
}
else
if
(
originalFilename
.
endsWith
(
SUFFIX_2007
))
{
workbook
=
new
XSSFWorkbook
(
file
.
getInputStream
());
}
}
catch
(
Exception
e
)
{
log
.
error
(
"读取文件错误: {}"
,
e
.
getMessage
());
return
false
;
}
ParamAssert
.
notNull
(
workbook
,
"文件名 :"
+
originalFilename
+
"不符合EXCEL的格式要求!标准格式:.xls/.xlsx"
);
//获取所有的工作表的的数量
int
numOfSheet
=
workbook
.
getNumberOfSheets
();
//遍历这个这些表
for
(
int
i
=
0
;
i
<
numOfSheet
;
i
++)
{
//获取一个sheet也就是一个工作簿
Sheet
sheet
=
workbook
.
getSheetAt
(
i
);
int
lastRowNum
=
sheet
.
getLastRowNum
();
//从第一行开始第一行一般是标题
for
(
int
j
=
1
;
j
<=
lastRowNum
;
j
++)
{
Row
row
=
sheet
.
getRow
(
j
);
if
(
null
==
row
)
{
continue
;
}
MesWorkOrderInfo
workOrder
=
new
MesWorkOrderInfo
();
//车间计划工单号
if
(
row
.
getCell
(
0
)
!=
null
)
{
row
.
getCell
(
0
).
setCellType
(
Cell
.
CELL_TYPE_STRING
);
String
workOrderNo
=
row
.
getCell
(
0
).
getStringCellValue
();
if
(
StringUtils
.
isEmpty
(
workOrderNo
)){
continue
;
}
workOrder
.
setWorkOrderNo
(
workOrderNo
);
}
//车型
if
(
row
.
getCell
(
1
)
!=
null
)
{
row
.
getCell
(
1
).
setCellType
(
Cell
.
CELL_TYPE_STRING
);
String
vehicleModel
=
row
.
getCell
(
1
).
getStringCellValue
();
if
(
null
==
vehicleModel
){
continue
;
}
workOrder
.
setVehicleModel
(
vehicleModel
);
}
//单位
if
(
row
.
getCell
(
2
)
!=
null
)
{
row
.
getCell
(
2
).
setCellType
(
Cell
.
CELL_TYPE_STRING
);
String
unit
=
row
.
getCell
(
2
).
getStringCellValue
();
workOrder
.
setUnit
(
unit
);
}
//产线
if
(
row
.
getCell
(
3
)
!=
null
)
{
row
.
getCell
(
3
).
setCellType
(
Cell
.
CELL_TYPE_STRING
);
String
productionLine
=
row
.
getCell
(
3
).
getStringCellValue
();
workOrder
.
setProductionLine
(
productionLine
);
}
list
.
add
(
workOrder
);
}
}
if
(
CollectionUtils
.
isEmpty
(
list
)){
return
false
;
}
mesWorkOrderMapper
.
insertList
(
list
);
return
true
;
}
}
src/main/resources/mapper/mysql/MesWorkOrderMapper.xml
0 → 100644
View file @
a8892fdc
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper
namespace=
"net.vtstar.zhongtong.avi.equipment.mapper.MesWorkOrderMapper"
>
</mapper>
\ No newline at end of file
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