Browse Source

1. 更新條碼歷程

PTD
Ray 3 years ago
parent
commit
a1a6727a25
  1. 42
      AMESCoreStudio.Web/Controllers/PCSController.cs
  2. 6
      AMESCoreStudio.Web/ViewModels/PCS/PCS009ViewModel.cs
  3. 8
      AMESCoreStudio.Web/Views/PCS/PCS001R.cshtml
  4. 8
      AMESCoreStudio.Web/Views/PCS/PCS003.cshtml
  5. 65
      AMESCoreStudio.Web/Views/PCS/PCS009.cshtml
  6. 116
      AMESCoreStudio.Web/Views/PCS/PCS009R.cshtml
  7. 8
      AMESCoreStudio.WebApi/Models/AMES/BarcodeStation.cs

42
AMESCoreStudio.Web/Controllers/PCSController.cs

@ -27,10 +27,11 @@ namespace AMESCoreStudio.Web.Controllers
public readonly IPCS _pcsApi; public readonly IPCS _pcsApi;
public readonly IBAS _basApi; public readonly IBAS _basApi;
public readonly IPPS _ppsApi; public readonly IPPS _ppsApi;
public readonly IFQC _fqcApi;
public readonly IFileServerProvider _fileServerProvider; public readonly IFileServerProvider _fileServerProvider;
private readonly IWebHostEnvironment _env; private readonly IWebHostEnvironment _env;
public PCSController(ILogger<PCSController> logger, ISYS sysApi, IPCS pcsApi, IBAS basApi, IPPS ppsApi public PCSController(ILogger<PCSController> logger, ISYS sysApi, IPCS pcsApi, IBAS basApi, IPPS ppsApi, IFQC fqcApi
, IFileServerProvider fileServerProvider, IWebHostEnvironment env) , IFileServerProvider fileServerProvider, IWebHostEnvironment env)
{ {
_logger = logger; _logger = logger;
@ -38,6 +39,7 @@ namespace AMESCoreStudio.Web.Controllers
_pcsApi = pcsApi; _pcsApi = pcsApi;
_basApi = basApi; _basApi = basApi;
_ppsApi = ppsApi; _ppsApi = ppsApi;
_fqcApi = fqcApi;
_fileServerProvider = fileServerProvider; _fileServerProvider = fileServerProvider;
_env = env; _env = env;
} }
@ -1873,12 +1875,28 @@ namespace AMESCoreStudio.Web.Controllers
return View(); return View();
} }
/// <summary>
/// PCS009 Query By 包裝箱號
/// </summary>
/// <param name="boxNo">包裝箱號</param>
/// <returns></returns>
public async Task<IActionResult> PCS009QueryAsync(string boxNo)
{
var result = await _fqcApi.GetBarcodeInfoesByBoxNo(boxNo);
if (result.Count != 0)
{
return Json(new Table() { code = 0, msg = "", data = result, count = result.Count });
}
return Json(new Table() { count = 0, data = null });
}
public async Task<IActionResult> PCS009R() public async Task<IActionResult> PCS009R(PCS009ViewModel model)
{ {
var result = new PCS009RViewModel(); var result = new PCS009RViewModel();
var result_barcodeinfo = _pcsApi.GetBarcodeInfoesByNo("WO0002A10001").InvokeAsync().Result.FirstOrDefault(); var result_barcodeinfo = _pcsApi.GetBarcodeInfoesByNo(model.BarCodeNo).InvokeAsync().Result.FirstOrDefault();
if (result_barcodeinfo == null) if (result_barcodeinfo == null)
{ {
@ -1903,7 +1921,7 @@ namespace AMESCoreStudio.Web.Controllers
{ {
WipNo = wipinfo.WipNO, WipNo = wipinfo.WipNO,
ItemNo = wipinfo.GetWipAtt.WipNO, ItemNo = wipinfo.GetWipAtt.WipNO,
UnitNo = wipinfo.UnitNO + "[" + wipinfo.GetFactoryUnit.UnitName + "]", UnitNo = wipinfo.GetFactoryUnit.UnitCode + "[" + wipinfo.GetFactoryUnit.UnitName + "]",
Line = wipinfo.GetLineInfo.LineDesc, Line = wipinfo.GetLineInfo.LineDesc,
ECN = wipinfo.GetWipAtt.ECN, ECN = wipinfo.GetWipAtt.ECN,
ECO = wipinfo.GetWipAtt.EAN, ECO = wipinfo.GetWipAtt.EAN,
@ -1920,7 +1938,7 @@ namespace AMESCoreStudio.Web.Controllers
{ {
result.BarCodeLogs.Add(new BarCodeLog result.BarCodeLogs.Add(new BarCodeLog
{ {
Station = barcodestation.RuleStationID.ToString(), Station = barcodestation.GetRuleStation.StationDesc,
RuleStation = barcodestation.RuleStatus, RuleStation = barcodestation.RuleStatus,
SysType = barcodestation.Systype, SysType = barcodestation.Systype,
User = barcodestation.CreateUserID.ToString(), User = barcodestation.CreateUserID.ToString(),
@ -1934,9 +1952,9 @@ namespace AMESCoreStudio.Web.Controllers
{ {
result.BarCodeKPs.Add(new BarCodeKP result.BarCodeKPs.Add(new BarCodeKP
{ {
Station = barcodeitem.RuleStationID.ToString(), Station = barcodeitem.S.StationDesc,
KPPartNo = barcodeitem.PartNo, KPPartNo = barcodeitem.PartNo,
KPItemNo = barcodeitem.ItemNo, KPItemNo = barcodeitem.KpItemNo,
InputDate = barcodeitem.CreateDate.ToString() InputDate = barcodeitem.CreateDate.ToString()
}); });
} }
@ -1947,11 +1965,11 @@ namespace AMESCoreStudio.Web.Controllers
{ {
result.KPChanges.Add(new KPChange result.KPChanges.Add(new KPChange
{ {
KPPartNo = barcodeitemchange.PartNoOld, KPPartNo = barcodeitemchange.PartNoOld,
KPItemNo = barcodeitemchange.ItemNo, KPItemNo = barcodeitemchange.ItemNo,
ChangeType = barcodeitemchange.ChangeType, ChangeType = barcodeitemchange.ChangeType,
Date = barcodeitemchange.CreateDate.ToString(), Date = barcodeitemchange.CreateDate.ToString(),
User = barcodeitemchange.CreateUserID.ToString() User = barcodeitemchange.CreateUserID.ToString()
}); });
} }

6
AMESCoreStudio.Web/ViewModels/PCS/PCS009ViewModel.cs

@ -10,6 +10,12 @@ namespace AMESCoreStudio.Web.ViewModels.PCS
{ {
public class PCS009ViewModel public class PCS009ViewModel
{ {
public PCS009ViewModel()
{
}
/// <summary> /// <summary>
/// 內部條碼 /// 內部條碼
/// </summary> /// </summary>

8
AMESCoreStudio.Web/Views/PCS/PCS001R.cshtml

@ -259,12 +259,12 @@
@foreach (var index in Model.ruleStations) @foreach (var index in Model.ruleStations)
{ {
<tr> <tr>
<th> <td>
@index.UnitNoName @index.UnitNoName
</th> </td>
<th> <td>
@index.FlowRuleName @index.FlowRuleName
</th> </td>
<td> <td>
@index.StationDesc @index.StationDesc
</td> </td>

8
AMESCoreStudio.Web/Views/PCS/PCS003.cshtml

@ -264,12 +264,12 @@
@foreach (var index in Model.ruleStations) @foreach (var index in Model.ruleStations)
{ {
<tr> <tr>
<th> <td>
@index.UnitNoName @index.UnitNoName
</th> </td>
<th> <td>
@index.FlowRuleName @index.FlowRuleName
</th> </td>
<td> <td>
@index.StationDesc @index.StationDesc
</td> </td>

65
AMESCoreStudio.Web/Views/PCS/PCS009.cshtml

@ -29,7 +29,7 @@
<div class="layui-card"> <div class="layui-card">
<form enctype="multipart/form-data" class="layui-form"> <form enctype="multipart/form-data" id="myForm" method="post" class="layui-form">
<div class="layui-card-header"> <div class="layui-card-header">
<div class="layui-form-item"> <div class="layui-form-item">
<div class="layui-inline"><i class="fa fa-file-text-o fa-fw"></i> @ViewBag.Title</div> <div class="layui-inline"><i class="fa fa-file-text-o fa-fw"></i> @ViewBag.Title</div>
@ -41,7 +41,7 @@
<div class="layui-inline"> <div class="layui-inline">
<label class="layui-form-label">內部條碼:</label> <label class="layui-form-label">內部條碼:</label>
<div class="layui-input-inline"> <div class="layui-input-inline">
<input id="itemNO" name="itemNO" autocomplete="off" class="layui-input"> <input asp-for="BarCodeNo" class="layui-input">
</div> </div>
</div> </div>
</div> </div>
@ -49,7 +49,7 @@
<div class="layui-inline"> <div class="layui-inline">
<label class="layui-form-label">組件條碼:</label> <label class="layui-form-label">組件條碼:</label>
<div class="layui-input-inline"> <div class="layui-input-inline">
<input id="itemNO" name="itemNO" autocomplete="off" class="layui-input"> <input asp-for="PartNo" class="layui-input">
</div> </div>
</div> </div>
</div> </div>
@ -57,7 +57,7 @@
<div class="layui-inline"> <div class="layui-inline">
<label class="layui-form-label">外部條碼:</label> <label class="layui-form-label">外部條碼:</label>
<div class="layui-input-inline"> <div class="layui-input-inline">
<input id="itemNO" name="itemNO" autocomplete="off" class="layui-input"> <input asp-for="ExtraBarCodeNo" class="layui-input">
</div> </div>
</div> </div>
</div> </div>
@ -65,13 +65,14 @@
<div class="layui-inline"> <div class="layui-inline">
<label class="layui-form-label">包裝箱號:</label> <label class="layui-form-label">包裝箱號:</label>
<div class="layui-input-inline"> <div class="layui-input-inline">
<input id="fileName" name="fileName" autocomplete="off" class="layui-input"> <input asp-for="BoxNo" class="layui-input">
</div> </div>
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<div class="layui-inline layui-show-xs-block"> <div class="layui-inline layui-show-xs-block">
<a class="layui-btn layui-btn-primary layui-border-blue layui-icon layui-icon-sm" onclick="result()"><i class="layui-icon layui-icon-sm">&#xe615;</i></a> <a class="layui-btn layui-btn-primary layui-border-blue layui-icon layui-icon-sm" lay-submit onclick="result()"><i class="layui-icon layui-icon-sm">&#xe615;</i></a>
@*<input type="submit" class="layui-btn layui-btn-primary layui-border-blue layui-icon layui-icon-sm" lay-submit onclick="result()"><i class="layui-icon layui-icon-sm">&#xe615;</i></input>*@
</div> </div>
</div> </div>
</div> </div>
@ -87,9 +88,57 @@
layui.use(['form', 'layer', 'laydate'], function () { layui.use(['form', 'layer', 'laydate'], function () {
var form = layui.form; var form = layui.form;
}); });
//通过行tool檢視,lay-event="detail"
function detail(obj) {
if (obj.data.barcodeNo) {
hg.open('檢視工單資料', '/PCS/PCS009R?BarCodeNo=' + obj.data.barcodeNo, '', '', true);
}
}
function result() { function result() {
hg.open('條碼生產歷程', '/PCS/PCS009R', '', '', true); var BarCodeNo = $("#BarCodeNo").val();
}; var PartNo = $("#PartNo").val();
var ExtraBarCodeNo = $("#ExtraBarCodeNo").val();
var BoxNo = $("#BoxNo").val();
if (BoxNo != '') {
var tableCols = [[
{
field: 'barcodeNo',
width: 150,
title: '內部條碼',
sort: true
},
{
field: 'extraBarcodeNo',
title: '客戶條碼',
width: 200,
sort: true
},
{
field: 'right',
width: 100,
title: '操作',
fixed: 'right',
templet: function (d) {
return '<a class="layui-btn layui-btn-warm layui-icon layui-icon-list layui-btn-xs" lay-event="detail">檢視</a>'
/* < a class="layui-btn layui-btn-normal layui-btn-xs layui-icon layui-icon-edit" lay - event="edit" > 修改</a > '*/
}
}]
];
var table = hg.table.datatable('query', 'query查詢', '/PCS/PCS009Query?boxNo=' + BoxNo, {}, tableCols, '', false, 'full-100');
hg.msghide("重新載入資料..");
table;
}
else {
var query = "?BarCodeNo=" + BarCodeNo + "&PartNo=" + PartNo + "&ExtraBarCodeNo=" + ExtraBarCodeNo;
hg.open('條碼生產歷程', '/PCS/PCS009R' + query, '', '', true);
}
};
</script> </script>
} }

116
AMESCoreStudio.Web/Views/PCS/PCS009R.cshtml

@ -25,7 +25,7 @@
<div class="layui-col-xs2"> <div class="layui-col-xs2">
<div class="layui-form-item"> <div class="layui-form-item">
<div class="layui-input-block" style="margin-left:auto;"> <div class="layui-input-block" style="margin-left:auto;">
<input asp-for="BarCodeNo" type="text" class="layui-input"> <label class="layui-form-label" style="text-align: left; width: 150px;">@Model.BarCodeNo</label>
</div> </div>
</div> </div>
</div> </div>
@ -35,7 +35,7 @@
<div class="layui-col-xs2"> <div class="layui-col-xs2">
<div class="layui-form-item"> <div class="layui-form-item">
<div class="layui-input-block" style="margin-left:auto;"> <div class="layui-input-block" style="margin-left:auto;">
<input asp-for="ExtraBarCodeNo" type="text" class="layui-input"> <label class="layui-form-label" style="text-align: left; width: 150px;">@Model.ExtraBarCodeNo</label>
</div> </div>
</div> </div>
</div> </div>
@ -45,7 +45,7 @@
<div class="layui-col-xs2"> <div class="layui-col-xs2">
<div class="layui-form-item"> <div class="layui-form-item">
<div class="layui-input-block" style="margin-left:auto;"> <div class="layui-input-block" style="margin-left:auto;">
<input asp-for="BoxNo" type="text" class="layui-input"> <label class="layui-form-label" style="text-align: left; width: 150px;">@Model.BoxNo</label>
</div> </div>
</div> </div>
</div> </div>
@ -86,49 +86,81 @@
<fieldset class="layui-elem-field layui-field-title"> <fieldset class="layui-elem-field layui-field-title">
<legend style="color: #e18917">工單資料</legend> <legend style="color: #e18917">工單資料</legend>
</fieldset> </fieldset>
@*<table id="rulestionOld" class="layui-table"> <table id="rulestionOld" class="layui-table">
<thead>
<tr>
<th>
生產單位
</th>
<th>
流程名稱
</th>
<th>
站別描述
</th>
<th>
站別順序
</th>
<th>
站別類型
</th>
</tr>
</thead>
<tbody> <tbody>
@foreach (var index in Model.ruleStations) @foreach (var index in Model.WinInfos)
{ {
<tr> <tr>
<th>
@index.UnitNoName
</th>
<th>
@index.FlowRuleName
</th>
<td> <td>
@index.StationDesc 工單號碼:
</td>
<td>
@index.WipNo
</td> </td>
<td> <td>
@index.Sequence 料號:
</td> </td>
<td> <td>
@index.StationType @index.ItemNo
</td>
<td>
94/96/97BOM版本:
</td>
<td>
</td>
</tr>
<tr>
<td>
生產單位:
</td>
<td>
@index.UnitNo
</td>
<td>
線別:
</td>
<td>
@index.Line
</td>
<td>
ECN:
</td>
<td>
@index.ECN
</td>
</tr>
<tr>
<td>
建置日期:
</td>
<td>
@index.CreateDate
</td>
<td>
DATE CODE:
</td>
<td>
@index.DateCode
</td>
<td>
客戶料號:
</td>
<td>
@index.CustomerItemNo
</td>
</tr>
<tr>
<td>
Remarks:
</td>
<td>
@index.Remarks
</td> </td>
</tr> </tr>
} }
</tbody> </tbody>
</table>*@ </table>
</div> </div>
<div class="layui-row"> <div class="layui-row">
<fieldset class="layui-elem-field layui-field-title"> <fieldset class="layui-elem-field layui-field-title">
@ -158,12 +190,12 @@
@foreach (var index in Model.BarCodeLogs) @foreach (var index in Model.BarCodeLogs)
{ {
<tr> <tr>
<th> <td>
@index.Station @index.Station
</th> </td>
<th> <td>
@index.RuleStation @index.RuleStation
</th> </td>
<td> <td>
@index.SysType @index.SysType
</td> </td>
@ -203,12 +235,12 @@
@foreach (var index in Model.BarCodeKPs) @foreach (var index in Model.BarCodeKPs)
{ {
<tr> <tr>
<th> <td>
@index.Station @index.Station
</th> </td>
<th> <td>
@index.KPPartNo @index.KPPartNo
</th> </td>
<td> <td>
@index.KPItemNo @index.KPItemNo
</td> </td>

8
AMESCoreStudio.WebApi/Models/AMES/BarcodeStation.cs

@ -2,6 +2,7 @@
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Runtime.Serialization; using System.Runtime.Serialization;
using AMESCoreStudio.WebApi.Models.BAS;
#nullable disable #nullable disable
@ -111,5 +112,12 @@ namespace AMESCoreStudio.WebApi.Models.AMES
[DataMember] [DataMember]
[Display(Name = "建立時間")] [Display(Name = "建立時間")]
public DateTime CreateDate { get; set; } = DateTime.Now; public DateTime CreateDate { get; set; } = DateTime.Now;
/// <summary>
/// 工單-基本資料
/// </summary>
[ForeignKey("RuleStationID")]
[DataMember]
public virtual RuleStation GetRuleStation { get; set; }
} }
} }

Loading…
Cancel
Save