Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
L
Laisi_AutoMES2
Overview
Overview
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
jiawei.su
Laisi_AutoMES2
Commits
226cc8ac
Commit
226cc8ac
authored
Jan 26, 2021
by
yiyu.li
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://test.siger-data.com:9000/jiawei.su/Laisi_AutoMES2
parents
586b378c
07ecb922
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
107 additions
and
63 deletions
+107
-63
AutomationController.cs
Server/Apis/Siger.ApiACC/Controllers/AutomationController.cs
+64
-48
AutomationLocationController.cs
.../Siger.ApiACC/Controllers/AutomationLocationController.cs
+5
-3
AutomationOperateController.cs
...s/Siger.ApiACC/Controllers/AutomationOperateController.cs
+0
-3
LocationController.cs
Server/Apis/Siger.ApiWMS/Controllers/LocationController.cs
+2
-2
FixtureTools.cs
.../Siger.Middlelayer.Utility/ImportEntities/FixtureTools.cs
+2
-0
siger_automation_location.cs
...layer.AccRepository/Entities/siger_automation_location.cs
+7
-1
siger_automation_task_list.cs
...ayer.AccRepository/Entities/siger_automation_task_list.cs
+5
-0
AutomationLocationRepository.cs
...ccRepository/Repositories/AutomationLocationRepository.cs
+10
-5
ResponseAutomationInfo.cs
...dlelayer.AccRepository/Response/ResponseAutomationInfo.cs
+3
-0
ResponseAutomationLocation.cs
...ayer.AccRepository/Response/ResponseAutomationLocation.cs
+4
-1
DB.script
Server/Infrastructure/Script/DB.script
+5
-0
No files found.
Server/Apis/Siger.ApiACC/Controllers/AutomationController.cs
View file @
226cc8ac
...
@@ -20,6 +20,7 @@ using static Siger.Middlelayer.Share.Enum.ModuleEnum.Automation;
...
@@ -20,6 +20,7 @@ using static Siger.Middlelayer.Share.Enum.ModuleEnum.Automation;
using
Siger.Middlelayer.Repository.Entities
;
using
Siger.Middlelayer.Repository.Entities
;
using
NPOI.SS.Formula.Functions
;
using
NPOI.SS.Formula.Functions
;
using
Siger.Middlelayer.AccRepository.Response
;
using
Siger.Middlelayer.AccRepository.Response
;
using
Siger.Middlelayer.Common.Helpers
;
namespace
Siger.ApiACC.Controllers
namespace
Siger.ApiACC.Controllers
{
{
...
@@ -37,9 +38,11 @@ namespace Siger.ApiACC.Controllers
...
@@ -37,9 +38,11 @@ namespace Siger.ApiACC.Controllers
private
readonly
IAutomationLocationRepository
_automationLocation
;
private
readonly
IAutomationLocationRepository
_automationLocation
;
private
readonly
IProductionBeatSetRepository
_productionBeatSet
;
private
readonly
IProductionBeatSetRepository
_productionBeatSet
;
private
readonly
IAutomationFixtureToolsProductRepository
_automationFixtureToolsProduct
;
private
readonly
IAutomationFixtureToolsProductRepository
_automationFixtureToolsProduct
;
private
readonly
IAutomationFixtureToolsRepository
_automationFixtureTools
;
public
AutomationController
(
IUnitOfWork
unitOfWork
,
ISigerProjectLevelSectionRepository
sigerProjectLevelSection
,
IAutomationLineMode
automationLineMode
,
IAutomationMachineStatus
automationMachineStatus
,
ISigerDict
sigerDict
,
IAutomationTaskListRepository
automationTaskList
,
public
AutomationController
(
IUnitOfWork
unitOfWork
,
ISigerProjectLevelSectionRepository
sigerProjectLevelSection
,
IAutomationLineMode
automationLineMode
,
IAutomationMachineStatus
automationMachineStatus
,
ISigerDict
sigerDict
,
IAutomationTaskListRepository
automationTaskList
,
ISigerProjectMachineAttributionRepository
sigerProjectMachineAttribution
,
IAutomationFixtureMonitor
automationFixtureMonitor
,
IAutomationLocationRepository
automationLocation
,
IProductionBeatSetRepository
productionBeatSet
,
IAutomationFixtureToolsProductRepository
automationFixtureToolsProduct
)
ISigerProjectMachineAttributionRepository
sigerProjectMachineAttribution
,
IAutomationFixtureMonitor
automationFixtureMonitor
,
IAutomationLocationRepository
automationLocation
,
IProductionBeatSetRepository
productionBeatSet
,
IAutomationFixtureToolsProductRepository
automationFixtureToolsProduct
,
IAutomationFixtureToolsRepository
automationFixtureTools
)
{
{
_unitOfWork
=
unitOfWork
;
_unitOfWork
=
unitOfWork
;
_sigerProjectLevelSection
=
sigerProjectLevelSection
;
_sigerProjectLevelSection
=
sigerProjectLevelSection
;
...
@@ -52,6 +55,7 @@ namespace Siger.ApiACC.Controllers
...
@@ -52,6 +55,7 @@ namespace Siger.ApiACC.Controllers
_automationLocation
=
automationLocation
;
_automationLocation
=
automationLocation
;
_productionBeatSet
=
productionBeatSet
;
_productionBeatSet
=
productionBeatSet
;
_automationFixtureToolsProduct
=
automationFixtureToolsProduct
;
_automationFixtureToolsProduct
=
automationFixtureToolsProduct
;
_automationFixtureTools
=
automationFixtureTools
;
}
}
/// <summary>
/// <summary>
...
@@ -114,7 +118,7 @@ namespace Siger.ApiACC.Controllers
...
@@ -114,7 +118,7 @@ namespace Siger.ApiACC.Controllers
var
section
=
_sigerProjectLevelSection
.
Get
(
f
=>
f
.
id
==
machineAttr
.
station
);
var
section
=
_sigerProjectLevelSection
.
Get
(
f
=>
f
.
id
==
machineAttr
.
station
);
if
(
section
!=
null
)
if
(
section
!=
null
)
{
{
Logger
.
WriteLineInfo
(
$"MachineStatus 设备状态 触发自动任务检查"
);
Logger
.
WriteLineInfo
(
$"MachineStatus 设备
{
section
.
title
}
状态 触发自动任务检查"
);
AutoProcess
(
section
.
parentid
,
stationDicts
);
AutoProcess
(
section
.
parentid
,
stationDicts
);
}
}
}
}
...
@@ -287,22 +291,12 @@ namespace Siger.ApiACC.Controllers
...
@@ -287,22 +291,12 @@ namespace Siger.ApiACC.Controllers
taskObj
.
status
=
status
;
taskObj
.
status
=
status
;
_automationTaskList
.
Update
(
taskObj
);
_automationTaskList
.
Update
(
taskObj
);
var
machineStatus
=
_automationMachineStatus
.
Get
(
f
=>
f
.
section
==
taskObj
.
sectionid
);
//PLC 反馈结束.
if
(
machineStatus
==
null
)
{
throw
new
BadRequestException
(
AccEnum
.
MachineDisable
);
}
machineStatus
.
status
=
status
;
_automationMachineStatus
.
Update
(
machineStatus
);
//PLC 反馈结束. 工装监控 解除设备绑定
if
(
status
==
(
int
)
TaskResultStatus
.
Complated
)
if
(
status
==
(
int
)
TaskResultStatus
.
Complated
)
{
{
var
uploadStation
=
stationDicts
.
Where
(
f
=>
f
.
dkey
==
DictKeyValConst
.
UploadloadStation
);
var
uploadStation
=
stationDicts
.
Where
(
f
=>
f
.
dkey
==
DictKeyValConst
.
UploadloadStation
);
var
uploadStations
=
uploadStation
.
Select
(
f
=>
f
.
dval
).
ToList
();
var
uploadStations
=
uploadStation
.
Select
(
f
=>
f
.
dval
).
ToList
();
if
(
taskObj
.
action
==
TaskAction
.
Step_SXLW_LK
)
if
(
taskObj
.
action
==
TaskAction
.
Step_SXLW_LK
)
{
{
// 业务入口: 上料位-》 入库 如果是上料工装 安装完成 ,绑定 储位与装配
// 业务入口: 上料位-》 入库 如果是上料工装 安装完成 ,绑定 储位与装配
...
@@ -314,47 +308,55 @@ namespace Siger.ApiACC.Controllers
...
@@ -314,47 +308,55 @@ namespace Siger.ApiACC.Controllers
Logger
.
WriteLineInfo
(
$"PlCfeeback 未找到该工装储位信息"
);
Logger
.
WriteLineInfo
(
$"PlCfeeback 未找到该工装储位信息"
);
throw
new
BadRequestException
(
AccEnum
.
MachineDisable
);
throw
new
BadRequestException
(
AccEnum
.
MachineDisable
);
}
}
location
.
fixturetools
=
taskObj
.
fixtureguid
;
location
.
fixturename
=
taskObj
.
fixturename
;
location
.
ordernumber
=
taskObj
.
ordercode
;
location
.
ordernumber
=
taskObj
.
ordercode
;
location
.
productcode
=
taskObj
.
productcode
;
location
.
productcode
=
taskObj
.
productcode
;
location
.
productid
=
taskObj
.
productid
;
location
.
productid
=
taskObj
.
productid
;
location
.
sn
=
taskObj
.
sn
;
location
.
sn
=
taskObj
.
sn
;
_automationLocation
.
Update
(
location
);
_automationLocation
.
Update
(
location
);
var
monitor
=
_automationFixtureMonitor
.
Get
(
f
=>
f
.
section
==
taskObj
.
sectionid
);
monitor
.
section
=
0
;
_automationFixtureMonitor
.
Update
(
monitor
);
}
}
}
}
else
if
(
taskObj
.
action
==
TaskAction
.
Step_LK_CJT
||
taskObj
.
action
==
TaskAction
.
Step_LK_JGZX
||
taskObj
.
action
==
TaskAction
.
Step_LK_SXLW
)
else
if
(
taskObj
.
action
==
TaskAction
.
Step_LK_CJT
||
taskObj
.
action
==
TaskAction
.
Step_LK_JGZX
||
taskObj
.
action
==
TaskAction
.
Step_LK_SXLW
)
{
{
//出库
//出库
var
location
=
_automationLocation
.
Get
(
f
=>
f
.
fixturetools
==
taskObj
.
fixtureguid
);
var
location
=
_automationLocation
.
Get
(
f
=>
f
.
fixturetools
==
taskObj
.
fixtureguid
);
if
(
location
=
=
null
)
if
(
location
!
=
null
)
{
{
location
.
ordernumber
=
""
;
location
.
ordernumber
=
""
;
location
.
productcode
=
""
;
location
.
productcode
=
""
;
location
.
productid
=
0
;
location
.
productid
=
0
;
location
.
sn
=
""
;
location
.
sn
=
""
;
}
}
}
else
{
//更新 CNC 状态
//更新 CNC 状态
var
monitor
=
_automationFixtureMonitor
.
Get
(
f
=>
f
.
section
==
taskObj
.
sectionid
);
var
monitor
=
_automationFixtureMonitor
.
Get
(
f
=>
f
.
section
==
taskObj
.
sectionid
);
if
(
monitor
==
null
)
if
(
monitor
==
null
)
{
{
_automationFixtureMonitor
.
Insert
(
new
siger_automation_fixture_tools_monitor
_automationFixtureMonitor
.
Insert
(
new
siger_automation_fixture_tools_monitor
{
{
ordernumber
=
taskObj
.
ordercode
,
ordernumber
=
taskObj
.
ordercode
,
productCode
=
taskObj
.
productcode
,
productCode
=
taskObj
.
productcode
,
//productNam
//productNam
section
=
taskObj
.
sectionid
,
section
=
taskObj
.
sectionid
,
status
=
status
,
status
=
status
,
sn
=
taskObj
.
sn
,
sn
=
taskObj
.
sn
,
fixtureguid
=
taskObj
.
fixtureguid
,
fixtureguid
=
taskObj
.
fixtureguid
,
//fixturename=,
//fixturename=,
locationId
=
taskObj
.
locationid
,
locationId
=
taskObj
.
locationid
,
createtime
=
DateTime
.
Now
,
createtime
=
DateTime
.
Now
,
projectId
=
PID
,
projectId
=
PID
,
route
=
0
,
route
=
0
,
updatetime
=
DateTime
.
Now
,
updatetime
=
DateTime
.
Now
,
});
});
}
else
}
else
{
{
monitor
.
ordernumber
=
taskObj
.
ordercode
;
monitor
.
ordernumber
=
taskObj
.
ordercode
;
monitor
.
productCode
=
taskObj
.
productcode
;
monitor
.
productCode
=
taskObj
.
productcode
;
...
@@ -373,6 +375,7 @@ namespace Siger.ApiACC.Controllers
...
@@ -373,6 +375,7 @@ namespace Siger.ApiACC.Controllers
/// 创建自动 Task任务
/// 创建自动 Task任务
/// </summary>
/// </summary>
/// <param name="line"></param>
/// <param name="line"></param>
/// <param name="fixture"></param>
/// <param name="stationDicts"></param>
/// <param name="stationDicts"></param>
void
AutoProcess
(
int
line
,
IEnumerable
<
SigerTrDict
>
stationDicts
)
void
AutoProcess
(
int
line
,
IEnumerable
<
SigerTrDict
>
stationDicts
)
{
{
...
@@ -418,24 +421,23 @@ namespace Siger.ApiACC.Controllers
...
@@ -418,24 +421,23 @@ namespace Siger.ApiACC.Controllers
return
;
return
;
}
}
//优先级1 :清洗机完成 。待下料
//优先级1 :清洗机完成 。待下料
var
cleanMachine
=
machineStatusList
.
FirstOrDefault
(
f
=>
f
.
machineid
==
dictClean
.
dval
.
ToInt
());
var
cleanMachine
=
machineStatusList
.
FirstOrDefault
(
f
=>
f
.
section
==
dictClean
.
dval
.
ToInt
());
if
(
cleanMachine
!=
null
)
if
(
cleanMachine
!=
null
)
{
{
if
(
cleanMachine
.
status
==
(
int
)
Automation
.
MachineStatus
.
Complated
)
if
(
cleanMachine
.
status
==
(
int
)
Automation
.
MachineStatus
.
Complated
)
{
{
Logger
.
WriteLineInfo
(
$"AutoProcess 有清洗机完成,创建清洗机Task"
);
Logger
.
WriteLineInfo
(
$"AutoProcess 有清洗机完成,创建清洗机Task"
);
// var fixtureToolsObj = _automationFixtureTools.GetProductFixtureLocation(PID,);
var
monitor
=
_automationFixtureMonitor
.
Get
(
f
=>
f
.
section
==
cleanMachine
.
section
);
var
monitor
=
_automationFixtureMonitor
.
Get
(
f
=>
f
.
section
==
cleanMachine
.
section
);
if
(
monitor
==
null
)
if
(
monitor
!=
null
)
{
{
Logger
.
WriteLineInfo
(
$"AutoProcess 找不到CNC监控信息"
);
CreateTask
(
cleanMachine
,
TaskActionType
.
Unload
,
TaskAction
.
Step_QXJ_LK
,
monitor
.
fixtureguid
,
monitor
.
ordernumber
,
monitor
.
sn
,
"无程序"
,
monitor
.
productId
,
monitor
.
productCode
,
monitor
.
locationId
);
return
;
}
CreateTask
(
cleanMachine
,
TaskActionType
.
Unload
,
TaskAction
.
Step_QXJ_LK
,
monitor
.
fixtureguid
,
monitor
.
ordernumber
,
monitor
.
sn
,
"无程序"
,
monitor
.
productCode
,
monitor
.
locationId
);
return
;
//完成当前任务 退出
return
;
//完成当前任务 退出
}
}
}
}
}
//优先级2 :其他设备待上料 (立库->加工中心)
//优先级2 :其他设备待上料 (立库->加工中心)
...
@@ -443,17 +445,27 @@ namespace Siger.ApiACC.Controllers
...
@@ -443,17 +445,27 @@ namespace Siger.ApiACC.Controllers
if
(
freeMachine
!=
null
)
if
(
freeMachine
!=
null
)
{
{
Logger
.
WriteLineInfo
(
$"AutoProcess 普通空闲,创建普通设备上料Task"
);
Logger
.
WriteLineInfo
(
$"AutoProcess 普通空闲,创建普通设备上料Task"
);
var
location
=
SelectLocation
(
freeMachine
.
machineid
);
var
location
=
SelectLocation
(
freeMachine
.
machineid
);
if
(
location
==
null
)
if
(
location
!=
null
)
{
{
Logger
.
WriteLineInfo
(
$"AutoProcess 找不到储位信息"
);
_automationFixtureMonitor
.
Insert
(
new
siger_automation_fixture_tools_monitor
return
;
{
}
productId
=
PID
,
CreateTask
(
freeMachine
,
TaskActionType
.
Load
,
TaskAction
.
Step_LK_JGZX
,
location
.
fixture
,
location
.
ordernumber
,
location
.
sn
,
location
.
pn
,
location
.
productCode
,
location
.
location
);
productCode
=
location
.
productCode
,
//productName=location.productCode
fixtureguid
=
location
.
fixture
,
fixturename
=
location
.
fixturename
,
ordernumber
=
location
.
ordernumber
,
locationId
=
location
.
location
,
section
=
freeMachine
.
section
,
sn
=
location
.
sn
,
createtime
=
DateTime
.
Now
,
updatetime
=
DateTime
.
Now
});
CreateTask
(
freeMachine
,
TaskActionType
.
Load
,
TaskAction
.
Step_LK_JGZX
,
location
.
fixture
,
location
.
ordernumber
,
location
.
sn
,
location
.
pn
,
location
.
productId
,
location
.
productCode
,
location
.
location
);
return
;
//完成当前任务 退出
return
;
//完成当前任务 退出
}
}
}
//优先级3:其他设备下料 (加工中心 ->立库)
//优先级3:其他设备下料 (加工中心 ->立库)
if
(
cleanMachine
!=
null
)
if
(
cleanMachine
!=
null
)
{
{
...
@@ -462,14 +474,13 @@ namespace Siger.ApiACC.Controllers
...
@@ -462,14 +474,13 @@ namespace Siger.ApiACC.Controllers
{
{
Logger
.
WriteLineInfo
(
$"AutoProcess 普通空闲,创建普通设备下料Task "
);
Logger
.
WriteLineInfo
(
$"AutoProcess 普通空闲,创建普通设备下料Task "
);
var
monitor
=
_automationFixtureMonitor
.
Get
(
f
=>
f
.
section
==
fullMachine
.
section
);
var
monitor
=
_automationFixtureMonitor
.
Get
(
f
=>
f
.
section
==
cleanMachine
.
section
);
if
(
monitor
==
null
)
if
(
monitor
==
null
)
{
{
Logger
.
WriteLineInfo
(
$"AutoProcess 找不到CNC监控信息"
);
Logger
.
WriteLineInfo
(
$"AutoProcess 找不到CNC监控信息"
);
return
;
return
;
}
}
CreateTask
(
fullMachine
,
TaskActionType
.
Unload
,
TaskAction
.
Step_JGZX_QXJ
,
monitor
.
fixtureguid
,
monitor
.
ordernumber
,
monitor
.
sn
,
"无程序"
,
monitor
.
productCode
,
monitor
.
locationId
);
CreateTask
(
fullMachine
,
TaskActionType
.
Unload
,
TaskAction
.
Step_JGZX_QXJ
,
monitor
.
fixtureguid
,
monitor
.
ordernumber
,
monitor
.
sn
,
"无程序"
,
monitor
.
productId
,
monitor
.
productCode
,
monitor
.
locationId
);
return
;
//完成当前任务 退出
return
;
//完成当前任务 退出
}
}
...
@@ -489,7 +500,7 @@ namespace Siger.ApiACC.Controllers
...
@@ -489,7 +500,7 @@ namespace Siger.ApiACC.Controllers
/// <param name="sn">工件</param>
/// <param name="sn">工件</param>
/// <param name="productCode">产品CODE</param>
/// <param name="productCode">产品CODE</param>
/// <param name="locationid">储位ID</param>
/// <param name="locationid">储位ID</param>
void
CreateTask
(
siger_automation_machine_status
machineStatus
,
TaskActionType
actionType
,
TaskAction
taskAction
,
string
guid
,
string
orderno
,
string
sn
,
string
program
,
string
productCode
,
int
locationid
)
void
CreateTask
(
siger_automation_machine_status
machineStatus
,
TaskActionType
actionType
,
TaskAction
taskAction
,
string
guid
,
string
orderno
,
string
sn
,
string
program
,
int
productId
,
string
productCode
,
int
locationid
)
{
{
var
taskNo
=
_automationTaskList
.
CrateTaskNumber
(
Automation
.
TaskTrigerType
.
Auto
);
var
taskNo
=
_automationTaskList
.
CrateTaskNumber
(
Automation
.
TaskTrigerType
.
Auto
);
_automationTaskList
.
Insert
(
new
siger_automation_task_list
_automationTaskList
.
Insert
(
new
siger_automation_task_list
...
@@ -508,12 +519,13 @@ namespace Siger.ApiACC.Controllers
...
@@ -508,12 +519,13 @@ namespace Siger.ApiACC.Controllers
operater
=
0
,
operater
=
0
,
status
=
1
,
status
=
1
,
fixtureguid
=
guid
,
fixtureguid
=
guid
,
productcode
=
productCode
,
productid
=
productId
,
productcode
=
productCode
,
programnumber
=
program
,
programnumber
=
program
,
locationid
=
locationid
,
locationid
=
locationid
,
ordercode
=
orderno
,
ordercode
=
orderno
,
sn
=
sn
,
sn
=
sn
,
remark
=
"自动任务"
remark
=
EnumHelper
.
GetEnumDesc
(
taskAction
)
});
});
...
@@ -569,9 +581,13 @@ namespace Siger.ApiACC.Controllers
...
@@ -569,9 +581,13 @@ namespace Siger.ApiACC.Controllers
return
new
ResponseAutomationLocationRouteInfo
return
new
ResponseAutomationLocationRouteInfo
{
{
fixture
=
result
.
fixturetools
,
fixture
=
result
.
fixturetools
,
//fixturename=result.n
ordernumber
=
result
.
ordernumber
,
ordernumber
=
result
.
ordernumber
,
location
=
result
.
locationid
,
location
=
result
.
locationid
,
productId
=
result
.
productid
,
productCode
=
result
.
productcode
,
productCode
=
result
.
productcode
,
//productName=result.pr
sn
=
result
.
sn
,
sn
=
result
.
sn
,
pn
=
valiateBeat
.
process_number
,
pn
=
valiateBeat
.
process_number
,
route
=
valiateBeat
.
route_name
route
=
valiateBeat
.
route_name
...
...
Server/Apis/Siger.ApiACC/Controllers/AutomationLocationController.cs
View file @
226cc8ac
...
@@ -71,7 +71,7 @@ namespace Siger.ApiACC.Controllers
...
@@ -71,7 +71,7 @@ namespace Siger.ApiACC.Controllers
item
.
materialstate
=
4
;
//无工装有工件
item
.
materialstate
=
4
;
//无工装有工件
}
}
var
loca
=
locations
.
FirstOrDefault
(
q
=>
q
.
locationid
==
item
.
loca
id
);
var
loca
=
locations
.
FirstOrDefault
(
q
=>
q
.
id
==
item
.
location
id
);
if
(
loca
!=
null
)
if
(
loca
!=
null
)
{
{
var
locas
=
GetParentLocations
(
loca
.
id
,
locations
);
var
locas
=
GetParentLocations
(
loca
.
id
,
locations
);
...
@@ -211,7 +211,8 @@ namespace Siger.ApiACC.Controllers
...
@@ -211,7 +211,8 @@ namespace Siger.ApiACC.Controllers
var
entity
=
new
siger_automation_location
var
entity
=
new
siger_automation_location
{
{
guid
=
Guid
.
NewGuid
().
ToString
(),
guid
=
Guid
.
NewGuid
().
ToString
(),
locationid
=
location
.
id
,
locationid
=
location
.
locationid
,
location_cid
=
location
.
id
,
fixturetools
=
fixturetool
.
guid
,
fixturetools
=
fixturetool
.
guid
,
productid
=
fixturetoolProduct
!=
null
?
fixturetoolProduct
.
productid
:
0
,
productid
=
fixturetoolProduct
!=
null
?
fixturetoolProduct
.
productid
:
0
,
productcode
=
fixturetoolProduct
!=
null
?
fixturetoolProduct
.
productcode
:
""
,
productcode
=
fixturetoolProduct
!=
null
?
fixturetoolProduct
.
productcode
:
""
,
...
@@ -263,7 +264,8 @@ namespace Siger.ApiACC.Controllers
...
@@ -263,7 +264,8 @@ namespace Siger.ApiACC.Controllers
throw
new
BadRequestException
(
RequestEnum
.
DataExist
);
throw
new
BadRequestException
(
RequestEnum
.
DataExist
);
}
}
entity
.
locationid
=
location
.
id
;
entity
.
locationid
=
location
.
locationid
;
entity
.
location_cid
=
location
.
id
;
entity
.
fixturetools
=
fixturetool
.
guid
;
entity
.
fixturetools
=
fixturetool
.
guid
;
entity
.
attachment
=
req
.
fileurl
;
entity
.
attachment
=
req
.
fileurl
;
entity
.
filename
=
req
.
filename
;
entity
.
filename
=
req
.
filename
;
...
...
Server/Apis/Siger.ApiACC/Controllers/AutomationOperateController.cs
View file @
226cc8ac
...
@@ -357,9 +357,6 @@ namespace Siger.ApiACC.Controllers
...
@@ -357,9 +357,6 @@ namespace Siger.ApiACC.Controllers
}
}
//移出 上料位
//移出 上料位
monitor
.
status
=
(
int
)
Automation
.
MachineStatus
.
Waiting
;
monitor
.
status
=
(
int
)
Automation
.
MachineStatus
.
Waiting
;
var
taskNo
=
_automationTaskList
.
CrateTaskNumber
(
Automation
.
TaskTrigerType
.
Manual
);
var
taskNo
=
_automationTaskList
.
CrateTaskNumber
(
Automation
.
TaskTrigerType
.
Manual
);
_automationTaskList
.
Insert
(
new
siger_automation_task_list
_automationTaskList
.
Insert
(
new
siger_automation_task_list
{
{
...
...
Server/Apis/Siger.ApiWMS/Controllers/LocationController.cs
View file @
226cc8ac
...
@@ -940,7 +940,7 @@ namespace Siger.ApiWMS.Controllers
...
@@ -940,7 +940,7 @@ namespace Siger.ApiWMS.Controllers
if
(
Location
.
id
==
locationTypeId
)
if
(
Location
.
id
==
locationTypeId
)
{
{
var
locationIdExist
=
location
.
Get
(
q
=>
q
.
projectid
==
ProjectId
&&
q
.
status
==
(
int
)
RowState
.
Valid
&&
q
.
typeid
==
locationTypeId
&&
var
locationIdExist
=
location
.
Get
(
q
=>
q
.
projectid
==
ProjectId
&&
q
.
status
==
(
int
)
RowState
.
Valid
&&
q
.
typeid
==
locationTypeId
&&
q
.
locationid
==
req
.
storeID
.
ToInt
());
q
.
locationid
==
req
.
storeID
.
ToInt
()
&&
q
.
storageid
==
req
.
warehouseid
);
if
(
locationIdExist
!=
null
)
if
(
locationIdExist
!=
null
)
{
{
throw
new
BadRequestException
(
RequestEnum
.
IDExist
);
throw
new
BadRequestException
(
RequestEnum
.
IDExist
);
...
@@ -1074,7 +1074,7 @@ namespace Siger.ApiWMS.Controllers
...
@@ -1074,7 +1074,7 @@ namespace Siger.ApiWMS.Controllers
if
(
Location
.
id
==
locationTypeId
)
if
(
Location
.
id
==
locationTypeId
)
{
{
var
locationIdExist
=
location
.
Get
(
q
=>
q
.
projectid
==
ProjectId
&&
q
.
status
==
(
int
)
RowState
.
Valid
&&
q
.
typeid
==
locationTypeId
&&
var
locationIdExist
=
location
.
Get
(
q
=>
q
.
projectid
==
ProjectId
&&
q
.
status
==
(
int
)
RowState
.
Valid
&&
q
.
typeid
==
locationTypeId
&&
q
.
locationid
==
req
.
storeID
.
ToInt
()
&&
q
.
id
!=
Location
.
locationid
.
ToInt
());
q
.
locationid
==
req
.
storeID
.
ToInt
()
&&
q
.
id
!=
Location
.
locationid
.
ToInt
()
&&
q
.
storageid
==
req
.
warehouseid
);
if
(
locationIdExist
!=
null
)
if
(
locationIdExist
!=
null
)
{
{
throw
new
BadRequestException
(
RequestEnum
.
IDExist
);
throw
new
BadRequestException
(
RequestEnum
.
IDExist
);
...
...
Server/Common/Siger.Middlelayer.Utility/ImportEntities/FixtureTools.cs
View file @
226cc8ac
...
@@ -190,6 +190,8 @@ namespace Siger.Middlelayer.Utility.ImportEntities
...
@@ -190,6 +190,8 @@ namespace Siger.Middlelayer.Utility.ImportEntities
public
class
AutomationLocationTemplate
:
ImportBase
public
class
AutomationLocationTemplate
:
ImportBase
{
{
[
ExcelColumn
(
"*仓库名称"
)]
public
string
Warehouse
{
get
;
set
;
}
[
ExcelColumn
(
"*储位ID"
)]
[
ExcelColumn
(
"*储位ID"
)]
public
string
LocationId
{
get
;
set
;
}
public
string
LocationId
{
get
;
set
;
}
...
...
Server/Infrastructure/Repositories/Siger.Middlelayer.AccRepository/Entities/siger_automation_location.cs
View file @
226cc8ac
...
@@ -11,6 +11,10 @@ namespace Siger.Middlelayer.AccRepository.Entities
...
@@ -11,6 +11,10 @@ namespace Siger.Middlelayer.AccRepository.Entities
{
{
public
string
guid
{
get
;
set
;
}
public
string
guid
{
get
;
set
;
}
/// <summary>
/// <summary>
/// 储位自增ID
/// </summary>
public
int
location_cid
{
get
;
set
;
}
/// <summary>
/// 储位位置
/// 储位位置
/// </summary>
/// </summary>
public
int
locationid
{
get
;
set
;
}
public
int
locationid
{
get
;
set
;
}
...
@@ -18,9 +22,11 @@ namespace Siger.Middlelayer.AccRepository.Entities
...
@@ -18,9 +22,11 @@ namespace Siger.Middlelayer.AccRepository.Entities
/// 工装GUID
/// 工装GUID
/// </summary>
/// </summary>
public
string
fixturetools
{
get
;
set
;
}
public
string
fixturetools
{
get
;
set
;
}
public
string
fixturename
{
get
;
set
;
}
public
int
productid
{
get
;
set
;
}
public
int
productid
{
get
;
set
;
}
public
string
productcode
{
get
;
set
;
}
public
string
productcode
{
get
;
set
;
}
public
string
productname
{
get
;
set
;
}
/// <summary>
/// <summary>
/// 工件对应的工单号
/// 工件对应的工单号
/// </summary>
/// </summary>
...
...
Server/Infrastructure/Repositories/Siger.Middlelayer.AccRepository/Entities/siger_automation_task_list.cs
View file @
226cc8ac
...
@@ -20,6 +20,10 @@ namespace Siger.Middlelayer.AccRepository.Entities
...
@@ -20,6 +20,10 @@ namespace Siger.Middlelayer.AccRepository.Entities
/// </summary>
/// </summary>
public
string
fixtureguid
{
get
;
set
;
}
public
string
fixtureguid
{
get
;
set
;
}
/// <summary>
/// <summary>
/// 工装Name
/// </summary>
public
string
fixturename
{
get
;
set
;
}
/// <summary>
/// 工位ID
/// 工位ID
/// </summary>
/// </summary>
public
int
sectionid
{
get
;
set
;
}
public
int
sectionid
{
get
;
set
;
}
...
@@ -47,6 +51,7 @@ namespace Siger.Middlelayer.AccRepository.Entities
...
@@ -47,6 +51,7 @@ namespace Siger.Middlelayer.AccRepository.Entities
/// 产品code
/// 产品code
/// </summary>
/// </summary>
public
string
productcode
{
get
;
set
;
}
public
string
productcode
{
get
;
set
;
}
public
string
productname
{
get
;
set
;
}
/// <summary>
/// <summary>
/// 工序ID
/// 工序ID
/// </summary>
/// </summary>
...
...
Server/Infrastructure/Repositories/Siger.Middlelayer.AccRepository/Repositories/AutomationLocationRepository.cs
View file @
226cc8ac
...
@@ -29,7 +29,7 @@ namespace Siger.Middlelayer.AccRepository.Repositories
...
@@ -29,7 +29,7 @@ namespace Siger.Middlelayer.AccRepository.Repositories
var
query
=
from
q
in
_context
.
siger_automation_location
var
query
=
from
q
in
_context
.
siger_automation_location
join
t
in
_context
.
siger_automation_fixture_tools
on
q
.
fixturetools
equals
t
.
guid
join
t
in
_context
.
siger_automation_fixture_tools
on
q
.
fixturetools
equals
t
.
guid
join
c
in
_context
.
siger_automation_fixture_tools_category
on
t
.
category
equals
c
.
guid
join
c
in
_context
.
siger_automation_fixture_tools_category
on
t
.
category
equals
c
.
guid
join
l
in
_context
.
siger_wms_storage_location
on
q
.
locationid
equals
l
.
id
join
l
in
_context
.
siger_wms_storage_location
on
q
.
location
_c
id
equals
l
.
id
join
w
in
_context
.
siger_wms_storage
on
l
.
storageid
equals
w
.
id
join
w
in
_context
.
siger_wms_storage
on
l
.
storageid
equals
w
.
id
join
u
in
_context
.
siger_project_user
on
q
.
updator
equals
u
.
mid
into
uu
join
u
in
_context
.
siger_project_user
on
q
.
updator
equals
u
.
mid
into
uu
from
u
in
uu
.
DefaultIfEmpty
()
from
u
in
uu
.
DefaultIfEmpty
()
...
@@ -100,14 +100,14 @@ namespace Siger.Middlelayer.AccRepository.Repositories
...
@@ -100,14 +100,14 @@ namespace Siger.Middlelayer.AccRepository.Repositories
var
query
=
from
q
in
_context
.
siger_automation_location
var
query
=
from
q
in
_context
.
siger_automation_location
join
t
in
_context
.
siger_automation_fixture_tools
on
q
.
fixturetools
equals
t
.
guid
join
t
in
_context
.
siger_automation_fixture_tools
on
q
.
fixturetools
equals
t
.
guid
join
c
in
_context
.
siger_automation_fixture_tools_category
on
t
.
category
equals
c
.
guid
join
c
in
_context
.
siger_automation_fixture_tools_category
on
t
.
category
equals
c
.
guid
join
l
in
_context
.
siger_wms_storage_location
on
q
.
locationid
equals
l
.
id
join
l
in
_context
.
siger_wms_storage_location
on
q
.
location
_c
id
equals
l
.
id
join
w
in
_context
.
siger_wms_storage
on
l
.
storageid
equals
w
.
id
join
w
in
_context
.
siger_wms_storage
on
l
.
storageid
equals
w
.
id
where
q
.
projectId
==
projectid
&&
q
.
status
==
(
int
)
RowState
.
Valid
where
q
.
projectId
==
projectid
&&
q
.
status
==
(
int
)
RowState
.
Valid
select
new
ResponseAutomationLocationList
select
new
ResponseAutomationLocationList
{
{
id
=
q
.
id
,
id
=
q
.
id
,
fixtureguid
=
t
.
guid
,
fixtureguid
=
t
.
guid
,
locationid
=
l
.
id
,
locationid
=
l
.
location
id
,
location
=
l
.
realname
,
location
=
l
.
realname
,
locationcode
=
l
.
serial_number
,
locationcode
=
l
.
serial_number
,
wavehouseid
=
w
.
id
,
wavehouseid
=
w
.
id
,
...
@@ -142,7 +142,12 @@ namespace Siger.Middlelayer.AccRepository.Repositories
...
@@ -142,7 +142,12 @@ namespace Siger.Middlelayer.AccRepository.Repositories
{
{
errors
.
Add
(
$"
{
rowIndex
}
,
{(
int
)
RequestEnum
.
FixtureToolNotFound
}
"
);
errors
.
Add
(
$"
{
rowIndex
}
,
{(
int
)
RequestEnum
.
FixtureToolNotFound
}
"
);
}
}
var
location
=
_context
.
siger_wms_storage_location
.
FirstOrDefault
(
q
=>
q
.
locationid
==
item
.
LocationId
.
ToInt
()
&&
q
.
projectId
==
projectid
&&
q
.
status
==
(
int
)
RowState
.
Valid
);
var
warehouse
=
_context
.
siger_wms_storage
.
FirstOrDefault
(
q
=>
q
.
status
==
(
int
)
RowState
.
Valid
&&
q
.
projectId
==
projectid
&&
q
.
name
==
item
.
Warehouse
);
if
(
warehouse
==
null
)
{
errors
.
Add
(
$"
{
rowIndex
}
,
{(
int
)
RequestEnum
.
WaveHouseIDNotExist
}
"
);
}
var
location
=
_context
.
siger_wms_storage_location
.
FirstOrDefault
(
q
=>
q
.
locationid
==
item
.
LocationId
.
ToInt
()
&&
q
.
storageid
==
warehouse
.
id
&&
q
.
projectId
==
projectid
&&
q
.
status
==
(
int
)
RowState
.
Valid
);
if
(
location
==
null
||
item
.
LocationId
.
ToInt
()
<=
0
)
if
(
location
==
null
||
item
.
LocationId
.
ToInt
()
<=
0
)
{
{
errors
.
Add
(
$"
{
rowIndex
}
,
{(
int
)
RequestEnum
.
LocationNull
}
"
);
errors
.
Add
(
$"
{
rowIndex
}
,
{(
int
)
RequestEnum
.
LocationNull
}
"
);
...
@@ -166,7 +171,7 @@ namespace Siger.Middlelayer.AccRepository.Repositories
...
@@ -166,7 +171,7 @@ namespace Siger.Middlelayer.AccRepository.Repositories
var
entity
=
new
siger_automation_location
var
entity
=
new
siger_automation_location
{
{
guid
=
Guid
.
NewGuid
().
ToString
(),
guid
=
Guid
.
NewGuid
().
ToString
(),
locationid
=
item
.
LocationId
.
ToInt
()
,
locationid
=
location
.
id
,
fixturetools
=
fixturetool
.
guid
,
fixturetools
=
fixturetool
.
guid
,
attachment
=
""
,
attachment
=
""
,
filename
=
""
,
filename
=
""
,
...
...
Server/Infrastructure/Repositories/Siger.Middlelayer.AccRepository/Response/ResponseAutomationInfo.cs
View file @
226cc8ac
...
@@ -32,10 +32,13 @@ namespace Siger.Middlelayer.AccRepository.Response
...
@@ -32,10 +32,13 @@ namespace Siger.Middlelayer.AccRepository.Response
public
class
ResponseAutomationLocationRouteInfo
public
class
ResponseAutomationLocationRouteInfo
{
{
public
string
fixture
{
get
;
set
;
}
public
string
fixture
{
get
;
set
;
}
public
string
fixturename
{
get
;
set
;
}
public
string
ordernumber
{
get
;
set
;
}
public
string
ordernumber
{
get
;
set
;
}
public
string
sn
{
get
;
set
;
}
public
string
sn
{
get
;
set
;
}
public
int
location
{
get
;
set
;
}
public
int
location
{
get
;
set
;
}
public
int
productId
{
get
;
set
;
}
public
string
productCode
{
get
;
set
;
}
public
string
productCode
{
get
;
set
;
}
public
string
productName
{
get
;
set
;
}
public
string
route
{
get
;
set
;
}
public
string
route
{
get
;
set
;
}
public
string
pn
{
get
;
set
;
}
public
string
pn
{
get
;
set
;
}
...
...
Server/Infrastructure/Repositories/Siger.Middlelayer.AccRepository/Response/ResponseAutomationLocation.cs
View file @
226cc8ac
...
@@ -8,9 +8,12 @@ namespace Siger.Middlelayer.AccRepository.Response
...
@@ -8,9 +8,12 @@ namespace Siger.Middlelayer.AccRepository.Response
{
{
public
int
id
{
get
;
set
;
}
public
int
id
{
get
;
set
;
}
/// <summary>
/// <summary>
/// 储位
位置
/// 储位
自增ID
/// </summary>
/// </summary>
public
int
locationid
{
get
;
set
;
}
public
int
locationid
{
get
;
set
;
}
/// <summary>
/// 储位填写ID
/// </summary>
public
int
locaid
{
get
;
set
;
}
public
int
locaid
{
get
;
set
;
}
public
string
location
{
get
;
set
;
}
public
string
location
{
get
;
set
;
}
public
int
wavehouseid
{
get
;
set
;
}
public
int
wavehouseid
{
get
;
set
;
}
...
...
Server/Infrastructure/Script/DB.script
View file @
226cc8ac
...
@@ -270,8 +270,11 @@ CREATE TABLE IF NOT EXISTS `siger_automation_location` (
...
@@ -270,8 +270,11 @@ CREATE TABLE IF NOT EXISTS `siger_automation_location` (
`guid` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`guid` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`locationid` int(11) NOT NULL DEFAULT 0 COMMENT '储位位置',
`locationid` int(11) NOT NULL DEFAULT 0 COMMENT '储位位置',
`fixturetools` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '工装GUID',
`fixturetools` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '工装GUID',
`fixturename` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '工装GUID',
`productid` int(11) NULL DEFAULT 0 COMMENT '产品ID',
`productid` int(11) NULL DEFAULT 0 COMMENT '产品ID',
`productid` int(11) NULL DEFAULT 0 COMMENT '产品ID',
`productcode` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '产品CODE',
`productcode` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '产品CODE',
`productname` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '产品name',
`ordernumber` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '工件对应工单号',
`ordernumber` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '工件对应工单号',
`sn` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '工件',
`sn` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '工件',
`routeid` int(11) NULL DEFAULT 0,
`routeid` int(11) NULL DEFAULT 0,
...
@@ -333,6 +336,7 @@ CREATE TABLE IF NOT EXISTS `siger_automation_task_list` (
...
@@ -333,6 +336,7 @@ CREATE TABLE IF NOT EXISTS `siger_automation_task_list` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`id` int(11) NOT NULL AUTO_INCREMENT,
`no` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`no` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`fixtureguid` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '工装GUID',
`fixtureguid` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '工装GUID',
`fixturename` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '工装name',
`sectionid` int(11) NOT NULL DEFAULT 0 COMMENT '工位ID',
`sectionid` int(11) NOT NULL DEFAULT 0 COMMENT '工位ID',
`trigger` int(1) NOT NULL DEFAULT 0 COMMENT '触发方',
`trigger` int(1) NOT NULL DEFAULT 0 COMMENT '触发方',
`tasktype` int(1) NOT NULL DEFAULT 0 COMMENT '任务类型',
`tasktype` int(1) NOT NULL DEFAULT 0 COMMENT '任务类型',
...
@@ -340,6 +344,7 @@ CREATE TABLE IF NOT EXISTS `siger_automation_task_list` (
...
@@ -340,6 +344,7 @@ CREATE TABLE IF NOT EXISTS `siger_automation_task_list` (
`ordercode` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '工单号',
`ordercode` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '工单号',
`productid` int(11) NOT NULL DEFAULT 0 COMMENT '产品ID',
`productid` int(11) NOT NULL DEFAULT 0 COMMENT '产品ID',
`productcode` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '产品CODE',
`productcode` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '产品CODE',
`productname` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '产品NAME',
`processid` int(11) NOT NULL DEFAULT 0 COMMENT '工序ID',
`processid` int(11) NOT NULL DEFAULT 0 COMMENT '工序ID',
`programnumber` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '程序号',
`programnumber` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '程序号',
`locationid` int(11) NOT NULL COMMENT '储位位置',
`locationid` int(11) NOT NULL COMMENT '储位位置',
...
...
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