Browse Source

Revert "1. 補資料上傳"

This reverts commit 0e490c7518.
PTD
ray 2 years ago
parent
commit
30032ac077
  1. 1
      AMESCoreStudio.Web/AMESCoreStudio.Web.csproj.user
  2. 112
      AMESCoreStudio.Web/Controllers/PCSController.cs
  3. 7
      AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs
  4. 4
      AMESCoreStudio.Web/Models/LoginViewModel.cs
  5. 8
      AMESCoreStudio.Web/ViewModels/PCS/PCS036ViewModel.cs
  6. 40
      AMESCoreStudio.Web/Views/PCS/PCS001N.cshtml
  7. 12
      AMESCoreStudio.Web/Views/PCS/PCS036.cshtml
  8. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.dll
  9. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.pdb
  10. 51
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.deps.json
  11. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.dll
  12. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.exe
  13. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.pdb
  14. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.dll
  15. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.pdb
  16. 28
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.deps.json
  17. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.dll
  18. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.exe
  19. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.pdb
  20. 2315
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.xml
  21. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/Microsoft.EntityFrameworkCore.SqlServer.dll
  22. 15
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/appsettings.json
  23. 4
      AMESCoreStudio.WebApi/AMESCoreStudio.WebApi.csproj
  24. 4
      AMESCoreStudio.WebApi/AMESCoreStudio.WebApi.csproj.user
  25. 116
      AMESCoreStudio.WebApi/Controllers/AMES/UnbindExtraBarcodeController.cs
  26. 8
      AMESCoreStudio.WebApi/Controllers/BLL/BarCodeCheckController.cs
  27. 72
      AMESCoreStudio.WebApi/Models/AMES/UnbindExtraBarcode.cs
  28. 26
      AMESCoreStudio.WebApi/Models/AMESContext.cs
  29. 12
      AMESCoreStudio.WebApi/appsettings.json
  30. BIN
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.dll
  31. BIN
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.pdb
  32. 28
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.deps.json
  33. BIN
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.dll
  34. BIN
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.exe
  35. BIN
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.pdb
  36. 2315
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.xml
  37. BIN
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/Microsoft.EntityFrameworkCore.SqlServer.dll
  38. 11
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/appsettings.json
  39. 23
      其他專案資料/Oracle EF Core.docx

1
AMESCoreStudio.Web/AMESCoreStudio.Web.csproj.user

@ -11,6 +11,5 @@
<Controller_SelectedScaffolderID>MvcControllerEmptyScaffolder</Controller_SelectedScaffolderID> <Controller_SelectedScaffolderID>MvcControllerEmptyScaffolder</Controller_SelectedScaffolderID>
<Controller_SelectedScaffolderCategoryPath>root/Common/MVC/Controller</Controller_SelectedScaffolderCategoryPath> <Controller_SelectedScaffolderCategoryPath>root/Common/MVC/Controller</Controller_SelectedScaffolderCategoryPath>
<ShowAllFiles>true</ShowAllFiles> <ShowAllFiles>true</ShowAllFiles>
<NameOfLastUsedPublishProfile>C:\Users\USER\Desktop\MES\AMES0916\AMESCoreStudio.Web\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
</PropertyGroup> </PropertyGroup>
</Project> </Project>

112
AMESCoreStudio.Web/Controllers/PCSController.cs

@ -1785,8 +1785,13 @@ namespace AMESCoreStudio.Web.Controllers
// //
if (model.WipKps != null) if (model.WipKps != null)
{ {
await _pcsApi.DeleteMaterialKpByItem(materialItem.ItemID); // 判斷料號KP有資料 沒有資料時 一起新增到料號KP
bool addMasterKP = false;
var materialKp = await _pcsApi.GetMaterialKpByItemID(materialItem.ItemID);
if (materialKp.Count() == 0)
addMasterKP = true;
// KeyParts
// 先比對新舊ID 當舊ID有 新的沒有代表已刪除 // 先比對新舊ID 當舊ID有 新的沒有代表已刪除
var resultOld_WipKp = await _pcsApi.GetWipKpByWipNo(model.wipInfo.WipNO); var resultOld_WipKp = await _pcsApi.GetWipKpByWipNo(model.wipInfo.WipNO);
var delete_WipKpID = resultOld_WipKp.Select(s => s.WipKpID).Except(model.WipKps.Select(s => s.WipKpID)); var delete_WipKpID = resultOld_WipKp.Select(s => s.WipKpID).Except(model.WipKps.Select(s => s.WipKpID));
@ -1794,32 +1799,34 @@ namespace AMESCoreStudio.Web.Controllers
{ {
await _pcsApi.DeleteWipKp(id); await _pcsApi.DeleteWipKp(id);
} }
foreach (var item in model.WipKps.Where(w => w.WipKpID != -1)) foreach (var item in model.WipKps.Where(w => w.WipKpID != -1))
{ {
item.WipNo = model.wipInfo.WipNO; item.WipNo = model.wipInfo.WipNO;
item.ItemNo = model.wipAtt.ItemNO; item.ItemNo = model.wipAtt.ItemNO;
item.UnitNo = model.wipInfo.UnitNO;
if (item.WipKpID == 0) if (item.WipKpID == 0)
await _pcsApi.PostWipKp(JsonConvert.SerializeObject(item)); await _pcsApi.PostWipKp(JsonConvert.SerializeObject(item));
else else
await _pcsApi.PutWipKp(JsonConvert.SerializeObject(item)); await _pcsApi.PutWipKp(JsonConvert.SerializeObject(item));
// 新增到料號KP // 判斷料號KP有資料 沒有資料時 一起新增到料號KP
await _pcsApi.PostMaterialKp(JsonConvert.SerializeObject(new MaterialKp if (addMasterKP)
{ {
ItemID = materialItem.ItemID, await _pcsApi.PostMaterialKp(JsonConvert.SerializeObject(new MaterialKp
KpName = item.KpName, {
KpNo = item.KpNo, ItemID = materialID,
KpSeq = Convert.ToInt32(item.KpSeq), KpName = item.KpName,
Length = item.Length, KpNo = item.KpNo,
StationType = item.UnitNo, KpSeq = Convert.ToInt32(item.KpSeq),
IsRepeat = "N", Length = item.Length,
Title = item.Title, StationType = item.UnitNo,
CreateUserID = UserID, IsRepeat = "N",
UpdateUserID = UserID Title = item.Title,
})); CreateUserID = UserID,
UpdateUserID = UserID
}));
}
} }
model.WipKps = model.WipKps.Where(w => w.WipKpID != -1).ToList();
} }
// 將料號KP新增到WIP_KP 上 // 將料號KP新增到WIP_KP 上
else else
@ -1832,7 +1839,7 @@ namespace AMESCoreStudio.Web.Controllers
{ {
WipNo = model.wipInfo.WipNO, WipNo = model.wipInfo.WipNO,
ItemNo = model.wipAtt.ItemNO, ItemNo = model.wipAtt.ItemNO,
UnitNo = item.StationType, UnitNo = model.wipInfo.UnitNO,
KpName = item.KpName, KpName = item.KpName,
KpNo = item.KpNo, KpNo = item.KpNo,
KpSeq = item.KpSeq, KpSeq = item.KpSeq,
@ -1904,7 +1911,6 @@ namespace AMESCoreStudio.Web.Controllers
else else
await _pcsApi.PutWipKp(JsonConvert.SerializeObject(item)); await _pcsApi.PutWipKp(JsonConvert.SerializeObject(item));
} }
model.WipKps = model.WipKps.Where(w => w.WipKpID != -1).ToList();
} }
} }
@ -2406,28 +2412,14 @@ namespace AMESCoreStudio.Web.Controllers
// 判斷工單號碼是否已經投入 // 判斷工單號碼是否已經投入
if (await _pcsApi.GetWipInfoCheckStart(q.FirstOrDefault().WipNO) == "Y") if (await _pcsApi.GetWipInfoCheckStart(q.FirstOrDefault().WipNO) == "Y")
{ {
var _msg = "工單號碼【" + q.FirstOrDefault().WipNO + "】,已開始投入,不可修改!"; var _msg = "工單號碼【" + q.FirstOrDefault().WipNO + "】,工單已開始投入,不可修改!";
return RedirectToAction("Refresh", "Home", new { msg = _msg }); return RedirectToAction("Refresh", "Home", new { msg = _msg });
} }
// 判斷工單號碼是否已經開線 // 判斷工單號碼是否已經開線
if (await _pcsApi.GetWipInfoCheckStartLine(q.FirstOrDefault().WipNO) == "Y") if (await _pcsApi.GetWipInfoCheckStartLine(q.FirstOrDefault().WipNO) == "Y")
{ {
var _msg = "工單號碼【" + q.FirstOrDefault().WipNO + "】,已開線,不可修改!"; var _msg = "工單號碼【" + q.FirstOrDefault().WipNO + "】,工單已開線,不可修改!";
return RedirectToAction("Refresh", "Home", new { msg = _msg });
}
// 判斷是否完工
if (q.Where(w => w.StatusNO == "E").Any())
{
var _msg = "工單號碼【" + q.FirstOrDefault().WipNO + "】,已經投入完工,不可修改";
return RedirectToAction("Refresh", "Home", new { msg = _msg });
}
// 判斷是否刪除
if (q.Where(w => w.StatusNO == "C").Any())
{
var _msg = "工單號碼【" + q.FirstOrDefault().WipNO + "】,已刪除,不可修改";
return RedirectToAction("Refresh", "Home", new { msg = _msg }); return RedirectToAction("Refresh", "Home", new { msg = _msg });
} }
@ -2776,8 +2768,8 @@ namespace AMESCoreStudio.Web.Controllers
} }
} }
} }
// KeyParts // KeyParts
// 判斷料號KP有資料 沒有資料時 一起新增到料號KP // 判斷料號KP有資料 沒有資料時 一起新增到料號KP
// 2022.10.12 取消判斷 刪除料號KP,在逐一新增 // 2022.10.12 取消判斷 刪除料號KP,在逐一新增
var materialItem = await _pcsApi.GetMaterialItemByItemNO(model.wipAtt.ItemNO); var materialItem = await _pcsApi.GetMaterialItemByItemNO(model.wipAtt.ItemNO);
@ -2786,6 +2778,14 @@ namespace AMESCoreStudio.Web.Controllers
await _pcsApi.DeleteMaterialKpByItem(materialItem.ItemID); await _pcsApi.DeleteMaterialKpByItem(materialItem.ItemID);
} }
//bool addMasterKP = false;
//if (materialItem != null)
//{
// var materialKp = await _pcsApi.GetMaterialKpByItemID(materialItem.ItemID);
// if (materialKp.Count() == 0)
// addMasterKP = true;
//}
// 先比對新舊ID 當舊ID有 新的沒有代表已刪除 // 先比對新舊ID 當舊ID有 新的沒有代表已刪除
var resultOld_WipKp = await _pcsApi.GetWipKpByWipNo(model.wipInfo.WipNO); var resultOld_WipKp = await _pcsApi.GetWipKpByWipNo(model.wipInfo.WipNO);
var delete_WipKpID = resultOld_WipKp.Select(s => s.WipKpID).Except(model.WipKps.Select(s => s.WipKpID)); var delete_WipKpID = resultOld_WipKp.Select(s => s.WipKpID).Except(model.WipKps.Select(s => s.WipKpID));
@ -2818,7 +2818,6 @@ namespace AMESCoreStudio.Web.Controllers
UpdateUserID = UserID UpdateUserID = UserID
})); }));
} }
model.WipKps = model.WipKps.Where(w => w.WipKpID != -1).ToList();
// 治具 // 治具
// 先比對新舊ID 當舊ID有 新的沒有代表已刪除 // 先比對新舊ID 當舊ID有 新的沒有代表已刪除
@ -2838,7 +2837,6 @@ namespace AMESCoreStudio.Web.Controllers
else else
await _pcsApi.PutWipOutfit(JsonConvert.SerializeObject(item)); await _pcsApi.PutWipOutfit(JsonConvert.SerializeObject(item));
} }
model.WipOutfits = model.WipOutfits.Where(w => w.WipOutfitID != -1);
// SOP // SOP
// 先比對新舊ID 當舊ID有 新的沒有代表已刪除 // 先比對新舊ID 當舊ID有 新的沒有代表已刪除
@ -2857,7 +2855,6 @@ namespace AMESCoreStudio.Web.Controllers
else else
await _pcsApi.PutWipSop(JsonConvert.SerializeObject(item)); await _pcsApi.PutWipSop(JsonConvert.SerializeObject(item));
} }
model.WipSops = model.WipSops.Where(w => w.WipSOPID != -1);
// 檔案上傳 // 檔案上傳
string FileName = string.Empty; string FileName = string.Empty;
@ -2966,20 +2963,6 @@ namespace AMESCoreStudio.Web.Controllers
var q = await _pcsApi.GetWipInfo(id); var q = await _pcsApi.GetWipInfo(id);
if (q.Count != 0) if (q.Count != 0)
{ {
// 判斷是否完工
if (q.Where(w => w.StatusNO == "E").Any())
{
var _msg = "工單號碼【" + q.FirstOrDefault().WipNO + "】,已經投入完工,不可修改";
return RedirectToAction("Refresh", "Home", new { msg = _msg });
}
// 判斷是否刪除
if (q.Where(w => w.StatusNO == "C").Any())
{
var _msg = "工單號碼【" + q.FirstOrDefault().WipNO + "】,已刪除,不可修改";
return RedirectToAction("Refresh", "Home", new { msg = _msg });
}
model.wipInfo = q.FirstOrDefault(); model.wipInfo = q.FirstOrDefault();
model.wipAtt = await _pcsApi.GetWipAtt(model.wipInfo.WipNO); model.wipAtt = await _pcsApi.GetWipAtt(model.wipInfo.WipNO);
model.wipBarcodes = await _pcsApi.GetWipBarcode(model.wipInfo.WipNO); model.wipBarcodes = await _pcsApi.GetWipBarcode(model.wipInfo.WipNO);
@ -3333,6 +3316,14 @@ namespace AMESCoreStudio.Web.Controllers
await _pcsApi.DeleteMaterialKpByItem(materialItem.ItemID); await _pcsApi.DeleteMaterialKpByItem(materialItem.ItemID);
} }
//bool addMasterKP = false;
//if (materialItem != null)
//{
// var materialKp = await _pcsApi.GetMaterialKpByItemID(materialItem.ItemID);
// if (materialKp.Count() == 0)
// addMasterKP = true;
//}
// 先比對新舊ID 當舊ID有 新的沒有代表已刪除 // 先比對新舊ID 當舊ID有 新的沒有代表已刪除
var resultOld_WipKp = await _pcsApi.GetWipKpByWipNo(model.wipInfo.WipNO); var resultOld_WipKp = await _pcsApi.GetWipKpByWipNo(model.wipInfo.WipNO);
var delete_WipKpID = resultOld_WipKp.Select(s => s.WipKpID).Except(model.WipKps.Select(s => s.WipKpID)); var delete_WipKpID = resultOld_WipKp.Select(s => s.WipKpID).Except(model.WipKps.Select(s => s.WipKpID));
@ -3365,7 +3356,6 @@ namespace AMESCoreStudio.Web.Controllers
UpdateUserID = UserID UpdateUserID = UserID
})); }));
} }
model.WipKps = model.WipKps.Where(w => w.WipKpID != -1).ToList();
// 治具 // 治具
// 先比對新舊ID 當舊ID有 新的沒有代表已刪除 // 先比對新舊ID 當舊ID有 新的沒有代表已刪除
@ -3385,7 +3375,6 @@ namespace AMESCoreStudio.Web.Controllers
else else
await _pcsApi.PutWipOutfit(JsonConvert.SerializeObject(item)); await _pcsApi.PutWipOutfit(JsonConvert.SerializeObject(item));
} }
model.WipOutfits = model.WipOutfits.Where(w => w.WipOutfitID != -1);
// SOP // SOP
// 先比對新舊ID 當舊ID有 新的沒有代表已刪除 // 先比對新舊ID 當舊ID有 新的沒有代表已刪除
@ -3404,7 +3393,6 @@ namespace AMESCoreStudio.Web.Controllers
else else
await _pcsApi.PutWipSop(JsonConvert.SerializeObject(item)); await _pcsApi.PutWipSop(JsonConvert.SerializeObject(item));
} }
model.WipSops = model.WipSops.Where(w => w.WipSOPID != -1);
// 檔案上傳 // 檔案上傳
string FileName = string.Empty; string FileName = string.Empty;
@ -7809,21 +7797,9 @@ namespace AMESCoreStudio.Web.Controllers
// _msg += "解除綁定失敗"; // _msg += "解除綁定失敗";
//} //}
} }
_msg += "條碼區間解除綁定成功";
} }
_msg = "條碼區間【" + model.BarCodeNoStr + "】 ~ 【" + model.BarCodeNoEnd + "】解除綁定成功";
} }
// 新增Log
var unbindExtraBarcode = new UnbindExtraBarcode
{
StartBarcodeNo = select == "0" ? model.BarCodeNo : model.BarCodeNoStr,
EndBarcodeNo = select == "0" ? model.BarCodeNo : model.BarCodeNoEnd,
UnbindReason = model.Remark,
CreateUserID = GetLogInUserID()
};
await _pcsApi.PostUnbindExtraBarcode(JsonConvert.SerializeObject(unbindExtraBarcode));
ModelState.AddModelError("error", _msg); ModelState.AddModelError("error", _msg);
return View(model); return View(model);
} }

7
AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs

@ -1375,12 +1375,5 @@ namespace AMESCoreStudio.Web
/// <param name="wipNo">工單號碼</param> /// <param name="wipNo">工單號碼</param>
[WebApiClient.Attributes.HttpGet("api/BarCodeCheck/CheckBarCodeByWipNo")] [WebApiClient.Attributes.HttpGet("api/BarCodeCheck/CheckBarCodeByWipNo")]
ITask<ResultModel<string>> CheckBarCodeByWipNo(string barcode, string wipNo); ITask<ResultModel<string>> CheckBarCodeByWipNo(string barcode, string wipNo);
/// <summary>
/// 新增解除綁定出貨序號箱號Log
/// </summary>
/// <returns></returns>
[WebApiClient.Attributes.HttpPost("api/UnbindExtraBarcode")]
ITask<ResultModel<UnbindExtraBarcode>> PostUnbindExtraBarcode([FromBody, RawJsonContent] string model);
} }
} }

4
AMESCoreStudio.Web/Models/LoginViewModel.cs

@ -12,9 +12,9 @@ namespace AMESCoreStudio.Web
public class LoginViewModel public class LoginViewModel
{ {
[Required] [Required]
public string LoginNo { get; set; } = "admin"; public string LoginNo { get; set; }
[Required] [Required]
public string LoginPassword { get; set; }="admin"; public string LoginPassword { get; set; }
public string Language { get; set; } public string Language { get; set; }
} }

8
AMESCoreStudio.Web/ViewModels/PCS/PCS036ViewModel.cs

@ -30,13 +30,5 @@ namespace AMESCoreStudio.Web.ViewModels.PCS
/// </summary> /// </summary>
public string BarCodeNoEnd { get; set; } public string BarCodeNoEnd { get; set; }
/// <summary>
/// 備註
/// </summary>
[Display(Name = "解除綁定備註")]
[Required(ErrorMessage = "{0},不能空白")]
[StringLength(100)]
public string Remark { get; set; }
} }
} }

40
AMESCoreStudio.Web/Views/PCS/PCS001N.cshtml

@ -300,9 +300,6 @@
<th> <th>
長度 長度
</th> </th>
<th>
生產單位代號
</th>
<th> <th>
</th> </th>
@ -328,9 +325,6 @@
<td> <td>
<input onkeypress="if( event.keyCode == 13 ) { return false; }" class="layui-input" asp-for="@index.Length" name="WipKps[@k].Length" /> <input onkeypress="if( event.keyCode == 13 ) { return false; }" class="layui-input" asp-for="@index.Length" name="WipKps[@k].Length" />
</td> </td>
<td>
<select asp-for="@index.UnitNo" name="WipKps[@k].UnitNo" asp-items="@ViewBag.FactoryUnitByWipNo" class=""></select>
</td>
<td> <td>
<a class="layui-btn layui-btn-danger layui-btn-xs layui-icon layui-icon-delete" onclick="Remove(this);">刪除</a> <a class="layui-btn layui-btn-danger layui-btn-xs layui-icon layui-icon-delete" onclick="Remove(this);">刪除</a>
</td> </td>
@ -707,12 +701,6 @@
$('#KPTableAdd').click(); $('#KPTableAdd').click();
$('#KPTableAdd').on('click', function () { $('#KPTableAdd').on('click', function () {
let No = parseInt($('#WipKpCount').val()); let No = parseInt($('#WipKpCount').val());
var FactoryUnit = getFactoryUnitByWipNoList();
var Select = "<select name=WipKps[" + No + "].UnitNo>";
$.each(FactoryUnit, function (index, item) {
Select += '<option value=' + item.value + '>' + item.text + '</option>';
});
Select += '</select>';
var Items = getItemsList(); var Items = getItemsList();
var SelectKPNo = "<select name=WipKps[" + No + "].KpNo>"; var SelectKPNo = "<select name=WipKps[" + No + "].KpNo>";
$.each(Items, function (index, item) { $.each(Items, function (index, item) {
@ -722,11 +710,10 @@
var contactdiv = '<tr>' + var contactdiv = '<tr>' +
'<td><input type="hidden" value="" name="WipKps[' + No + '].WipKpID" />' + '<td><input type="hidden" value="" name="WipKps[' + No + '].WipKpID" />' +
'<input onkeypress="if( event.keyCode == 13 ) { return false; }" class="layui-input" name="WipKps[' + No + '].KpName" /></td>' + '<input onkeypress="if( event.keyCode == 13 ) { return false; }" class="layui-input" name="WipKps[' + No + '].KpName" /></td>' +
'<td>' + SelectKPNo + '</td>' + '<td>'+SelectKPNo+'</td>' +
'<td><input onkeypress="if( event.keyCode == 13 ) { return false; }" class="layui-input" name="WipKps[' + No + '].KpSeq" value=' + (No + 1) + ' /></td>' + '<td><input onkeypress="if( event.keyCode == 13 ) { return false; }" class="layui-input" name="WipKps[' + No + '].KpSeq" value=' + (No+1)+' /></td>' +
'<td><input onkeypress="if( event.keyCode == 13 ) { return false; }" class="layui-input" name="WipKps[' + No + '].Title" /></td>' + '<td><input onkeypress="if( event.keyCode == 13 ) { return false; }" class="layui-input" name="WipKps[' + No + '].Title" /></td>' +
'<td><input onkeypress="if( event.keyCode == 13 ) { return false; }" class="layui-input" name="WipKps[' + No + '].Length" /></td>' + '<td><input onkeypress="if( event.keyCode == 13 ) { return false; }" class="layui-input" name="WipKps[' + No + '].Length" /></td>' +
'<td>' + Select + '</td>' +
'<td><a class="layui-btn layui-btn-danger layui-btn-xs layui-icon layui-icon-delete" onclick="Remove(this);">刪除</a></td>' + '<td><a class="layui-btn layui-btn-danger layui-btn-xs layui-icon layui-icon-delete" onclick="Remove(this);">刪除</a></td>' +
'</tr>'; '</tr>';
@ -816,29 +803,6 @@
return false; return false;
} }
}); });
//生產單位By工單號碼選單
function getFactoryUnitByWipNoList()
{
var a;
$.ajax(
{
url: "@Url.Action("GetFactoryUnitByWipNoJson", "PCS")",
dataType: 'json',
data: { "wipNo": $("#wipInfo_WipNO").val()},
async:false,
type: 'post',
success: function (result)
{
a = result.data;
},
error: function (result)
{
alert(result);
}
});
return a;
};
</script> </script>
} }

12
AMESCoreStudio.Web/Views/PCS/PCS036.cshtml

@ -33,23 +33,15 @@
<input type="radio" name="select" value="1" title="條碼區間解除" /> <input type="radio" name="select" value="1" title="條碼區間解除" />
</div> </div>
<div class="layui-input-inline"> <div class="layui-input-inline">
<input class="layui-input" asp-for="BarCodeNoStr" autocomplete="off"/> <input class="layui-input" asp-for="BarCodeNoStr" />
</div> </div>
<div class="layui-form-mid">~</div> <div class="layui-form-mid">~</div>
<div class="layui-input-inline"> <div class="layui-input-inline">
<input class="layui-input" asp-for="BarCodeNoEnd" autocomplete="off"/> <input class="layui-input" asp-for="BarCodeNoEnd" />
</div> </div>
</div> </div>
</div> </div>
<div class="layui-form-item">
<label class="layui-form-label">備註</label>
<div class="layui-input-block">
<input class="layui-input" asp-for="Remark" onkeypress="if( event.keyCode == 13 ) { return false; }" />
<span asp-validation-for="Remark" class="layui-bg-red"></span>
</div>
</div>
<span style="color: firebrick;word-break: break-all;" class="text-danger offset-sm-3">@Html.ValidationMessage("error")</span> <span style="color: firebrick;word-break: break-all;" class="text-danger offset-sm-3">@Html.ValidationMessage("error")</span>
<div class="layui-form-item"> <div class="layui-form-item">
<div class="layui-input-block"> <div class="layui-input-block">

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.dll

Binary file not shown.

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.pdb

Binary file not shown.

51
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.deps.json

@ -40,7 +40,6 @@
"Microsoft.VisualStudio.Web.CodeGeneration.Design": "3.1.5", "Microsoft.VisualStudio.Web.CodeGeneration.Design": "3.1.5",
"System.CodeDom": "6.0.0", "System.CodeDom": "6.0.0",
"System.Data.SqlClient": "4.8.3", "System.Data.SqlClient": "4.8.3",
"System.IO.Packaging": "5.0.0",
"System.Text.Encoding.CodePages": "6.0.0", "System.Text.Encoding.CodePages": "6.0.0",
"WebApiClient.JIT": "1.1.4", "WebApiClient.JIT": "1.1.4",
"Microsoft.AspNetCore.Antiforgery": "3.1.0.0", "Microsoft.AspNetCore.Antiforgery": "3.1.0.0",
@ -404,7 +403,7 @@
"DocumentFormat.OpenXml/2.7.2": { "DocumentFormat.OpenXml/2.7.2": {
"dependencies": { "dependencies": {
"NETStandard.Library": "1.6.1", "NETStandard.Library": "1.6.1",
"System.IO.Packaging": "5.0.0" "System.IO.Packaging": "4.0.0"
}, },
"runtime": { "runtime": {
"lib/netstandard1.3/DocumentFormat.OpenXml.dll": { "lib/netstandard1.3/DocumentFormat.OpenXml.dll": {
@ -862,15 +861,15 @@
"lib/netstandard2.1/Microsoft.EntityFrameworkCore.Relational.dll": {} "lib/netstandard2.1/Microsoft.EntityFrameworkCore.Relational.dll": {}
} }
}, },
"Microsoft.EntityFrameworkCore.SqlServer/3.1.30": { "Microsoft.EntityFrameworkCore.SqlServer/3.1.23": {
"dependencies": { "dependencies": {
"Microsoft.Data.SqlClient": "1.1.3", "Microsoft.Data.SqlClient": "1.1.3",
"Microsoft.EntityFrameworkCore.Relational": "5.0.1" "Microsoft.EntityFrameworkCore.Relational": "5.0.1"
}, },
"runtime": { "runtime": {
"lib/netstandard2.0/Microsoft.EntityFrameworkCore.SqlServer.dll": { "lib/netstandard2.0/Microsoft.EntityFrameworkCore.SqlServer.dll": {
"assemblyVersion": "3.1.30.0", "assemblyVersion": "3.1.23.0",
"fileVersion": "3.100.3022.47610" "fileVersion": "3.100.2322.12304"
} }
}, },
"compile": { "compile": {
@ -2083,15 +2082,29 @@
"System.Runtime": "4.3.0" "System.Runtime": "4.3.0"
} }
}, },
"System.IO.Packaging/5.0.0": { "System.IO.Packaging/4.0.0": {
"dependencies": {
"System.Collections": "4.3.0",
"System.Diagnostics.Debug": "4.3.0",
"System.Globalization": "4.3.0",
"System.IO": "4.3.0",
"System.IO.Compression": "4.3.0",
"System.IO.FileSystem": "4.3.0",
"System.IO.FileSystem.Primitives": "4.3.0",
"System.Resources.ResourceManager": "4.3.0",
"System.Runtime": "4.3.0",
"System.Runtime.Extensions": "4.3.0",
"System.Text.Encoding": "4.3.0",
"System.Xml.ReaderWriter": "4.3.0"
},
"runtime": { "runtime": {
"lib/netstandard2.0/System.IO.Packaging.dll": { "lib/netstandard1.3/System.IO.Packaging.dll": {
"assemblyVersion": "5.0.0.0", "assemblyVersion": "4.0.0.0",
"fileVersion": "5.0.20.51904" "fileVersion": "1.0.24212.1"
} }
}, },
"compile": { "compile": {
"ref/netstandard2.0/System.IO.Packaging.dll": {} "ref/netstandard1.3/System.IO.Packaging.dll": {}
} }
}, },
"System.Linq/4.3.0": { "System.Linq/4.3.0": {
@ -2789,7 +2802,7 @@
"Microsoft.AspNetCore.Mvc.NewtonsoftJson": "3.1.20", "Microsoft.AspNetCore.Mvc.NewtonsoftJson": "3.1.20",
"Microsoft.EntityFrameworkCore": "5.0.8", "Microsoft.EntityFrameworkCore": "5.0.8",
"Microsoft.EntityFrameworkCore.Proxies": "5.0.8", "Microsoft.EntityFrameworkCore.Proxies": "5.0.8",
"Microsoft.EntityFrameworkCore.SqlServer": "3.1.30", "Microsoft.EntityFrameworkCore.SqlServer": "3.1.23",
"Microsoft.VisualStudio.Web.CodeGeneration.Design": "3.1.5", "Microsoft.VisualStudio.Web.CodeGeneration.Design": "3.1.5",
"Oracle.EntityFrameworkCore": "5.21.1", "Oracle.EntityFrameworkCore": "5.21.1",
"Swashbuckle.AspNetCore": "6.1.4" "Swashbuckle.AspNetCore": "6.1.4"
@ -4600,12 +4613,12 @@
"path": "microsoft.entityframeworkcore.relational/5.0.1", "path": "microsoft.entityframeworkcore.relational/5.0.1",
"hashPath": "microsoft.entityframeworkcore.relational.5.0.1.nupkg.sha512" "hashPath": "microsoft.entityframeworkcore.relational.5.0.1.nupkg.sha512"
}, },
"Microsoft.EntityFrameworkCore.SqlServer/3.1.30": { "Microsoft.EntityFrameworkCore.SqlServer/3.1.23": {
"type": "package", "type": "package",
"serviceable": true, "serviceable": true,
"sha512": "sha512-ylH8ha+qNDxPY5swU700ChdvrkC4CDnSif7GW8we9MNwKULsqnC0C/ufOHtIvIUHF+fFdM4GQM32HwxvBzVbLw==", "sha512": "sha512-jfTL7M74a1TCrg6+BgUnWDz6gd2ouXeAqJO84ILb1AUUQVVDScJFJpAjJcY7AqkAW1VinL4TYfSiNSfX1AhUsg==",
"path": "microsoft.entityframeworkcore.sqlserver/3.1.30", "path": "microsoft.entityframeworkcore.sqlserver/3.1.23",
"hashPath": "microsoft.entityframeworkcore.sqlserver.3.1.30.nupkg.sha512" "hashPath": "microsoft.entityframeworkcore.sqlserver.3.1.23.nupkg.sha512"
}, },
"Microsoft.Extensions.ApiDescription.Server/3.0.0": { "Microsoft.Extensions.ApiDescription.Server/3.0.0": {
"type": "package", "type": "package",
@ -5349,12 +5362,12 @@
"path": "system.io.filesystem.primitives/4.3.0", "path": "system.io.filesystem.primitives/4.3.0",
"hashPath": "system.io.filesystem.primitives.4.3.0.nupkg.sha512" "hashPath": "system.io.filesystem.primitives.4.3.0.nupkg.sha512"
}, },
"System.IO.Packaging/5.0.0": { "System.IO.Packaging/4.0.0": {
"type": "package", "type": "package",
"serviceable": true, "serviceable": true,
"sha512": "sha512-ebfUwKsgZF4HTwaRUj67SrJdsM4O62Fxsd6u1bSk3MNgvU8yjyfEK0xQmUFUqOYJi1IcL4HENoccl4SKVPndYw==", "sha512": "sha512-taPqPWcAj/h6e/c+zIWIVe1ddJtpV6acC6g9GpolxUcIwUaH6zc0ZbFS8kkVzBkuWv76pMalKeTzfmHtfT1pXA==",
"path": "system.io.packaging/5.0.0", "path": "system.io.packaging/4.0.0",
"hashPath": "system.io.packaging.5.0.0.nupkg.sha512" "hashPath": "system.io.packaging.4.0.0.nupkg.sha512"
}, },
"System.Linq/4.3.0": { "System.Linq/4.3.0": {
"type": "package", "type": "package",

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.dll

Binary file not shown.

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.exe

Binary file not shown.

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.pdb

Binary file not shown.

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.dll

Binary file not shown.

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.pdb

Binary file not shown.

28
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.deps.json

@ -36,8 +36,8 @@
"Microsoft.EntityFrameworkCore": "5.0.8", "Microsoft.EntityFrameworkCore": "5.0.8",
"Microsoft.EntityFrameworkCore.Design": "5.0.8", "Microsoft.EntityFrameworkCore.Design": "5.0.8",
"Microsoft.EntityFrameworkCore.Proxies": "5.0.8", "Microsoft.EntityFrameworkCore.Proxies": "5.0.8",
"Microsoft.EntityFrameworkCore.SqlServer": "3.1.30", "Microsoft.EntityFrameworkCore.SqlServer": "3.1.23",
"Microsoft.EntityFrameworkCore.Tools": "3.1.30", "Microsoft.EntityFrameworkCore.Tools": "3.1.23",
"Microsoft.VisualStudio.Web.CodeGeneration.Design": "3.1.5", "Microsoft.VisualStudio.Web.CodeGeneration.Design": "3.1.5",
"Oracle.EntityFrameworkCore": "5.21.1", "Oracle.EntityFrameworkCore": "5.21.1",
"Swashbuckle.AspNetCore": "6.1.4", "Swashbuckle.AspNetCore": "6.1.4",
@ -766,22 +766,22 @@
"lib/netstandard2.1/Microsoft.EntityFrameworkCore.Relational.dll": {} "lib/netstandard2.1/Microsoft.EntityFrameworkCore.Relational.dll": {}
} }
}, },
"Microsoft.EntityFrameworkCore.SqlServer/3.1.30": { "Microsoft.EntityFrameworkCore.SqlServer/3.1.23": {
"dependencies": { "dependencies": {
"Microsoft.Data.SqlClient": "1.1.3", "Microsoft.Data.SqlClient": "1.1.3",
"Microsoft.EntityFrameworkCore.Relational": "5.0.8" "Microsoft.EntityFrameworkCore.Relational": "5.0.8"
}, },
"runtime": { "runtime": {
"lib/netstandard2.0/Microsoft.EntityFrameworkCore.SqlServer.dll": { "lib/netstandard2.0/Microsoft.EntityFrameworkCore.SqlServer.dll": {
"assemblyVersion": "3.1.30.0", "assemblyVersion": "3.1.23.0",
"fileVersion": "3.100.3022.47610" "fileVersion": "3.100.2322.12304"
} }
}, },
"compile": { "compile": {
"lib/netstandard2.0/Microsoft.EntityFrameworkCore.SqlServer.dll": {} "lib/netstandard2.0/Microsoft.EntityFrameworkCore.SqlServer.dll": {}
} }
}, },
"Microsoft.EntityFrameworkCore.Tools/3.1.30": { "Microsoft.EntityFrameworkCore.Tools/3.1.23": {
"dependencies": { "dependencies": {
"Microsoft.EntityFrameworkCore.Design": "5.0.8" "Microsoft.EntityFrameworkCore.Design": "5.0.8"
} }
@ -4274,19 +4274,19 @@
"path": "microsoft.entityframeworkcore.relational/5.0.8", "path": "microsoft.entityframeworkcore.relational/5.0.8",
"hashPath": "microsoft.entityframeworkcore.relational.5.0.8.nupkg.sha512" "hashPath": "microsoft.entityframeworkcore.relational.5.0.8.nupkg.sha512"
}, },
"Microsoft.EntityFrameworkCore.SqlServer/3.1.30": { "Microsoft.EntityFrameworkCore.SqlServer/3.1.23": {
"type": "package", "type": "package",
"serviceable": true, "serviceable": true,
"sha512": "sha512-ylH8ha+qNDxPY5swU700ChdvrkC4CDnSif7GW8we9MNwKULsqnC0C/ufOHtIvIUHF+fFdM4GQM32HwxvBzVbLw==", "sha512": "sha512-jfTL7M74a1TCrg6+BgUnWDz6gd2ouXeAqJO84ILb1AUUQVVDScJFJpAjJcY7AqkAW1VinL4TYfSiNSfX1AhUsg==",
"path": "microsoft.entityframeworkcore.sqlserver/3.1.30", "path": "microsoft.entityframeworkcore.sqlserver/3.1.23",
"hashPath": "microsoft.entityframeworkcore.sqlserver.3.1.30.nupkg.sha512" "hashPath": "microsoft.entityframeworkcore.sqlserver.3.1.23.nupkg.sha512"
}, },
"Microsoft.EntityFrameworkCore.Tools/3.1.30": { "Microsoft.EntityFrameworkCore.Tools/3.1.23": {
"type": "package", "type": "package",
"serviceable": true, "serviceable": true,
"sha512": "sha512-8rLsh7pjMhthwRDnwrwmwSMALhLSi+tOcCxSCdPH0CpoJLijb3GhZJQMpkjaUnjjUf64DDPW9COhRfzzfHutEw==", "sha512": "sha512-1RRy8gGH4x7gFH6S6WqTXMfN3wyhjUWsfqglzl4wI9of3p9QV55Y2tikoSY7G1NbFWFfvCfiaTFZz2P1BAJcTQ==",
"path": "microsoft.entityframeworkcore.tools/3.1.30", "path": "microsoft.entityframeworkcore.tools/3.1.23",
"hashPath": "microsoft.entityframeworkcore.tools.3.1.30.nupkg.sha512" "hashPath": "microsoft.entityframeworkcore.tools.3.1.23.nupkg.sha512"
}, },
"Microsoft.Extensions.ApiDescription.Server/3.0.0": { "Microsoft.Extensions.ApiDescription.Server/3.0.0": {
"type": "package", "type": "package",

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.dll

Binary file not shown.

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.exe

Binary file not shown.

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.pdb

Binary file not shown.

2315
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.xml

File diff suppressed because it is too large

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/Microsoft.EntityFrameworkCore.SqlServer.dll

Binary file not shown.

15
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/appsettings.json

@ -11,17 +11,6 @@
} }
}, },
"AllowedHosts": "*", "AllowedHosts": "*",
"WipSpecial": "Y", //
// "WipSpecial": "Y"
"VirtualPath": [
//{
// "RealPath": "//qasrv-n/Web/ISOZone/", //
// "RequestPath": "/DocEsop" //
//}
//{
// "RealPath": "//10.1.8.1/sop/機種", //
// "RequestPath": "/test"
// //"Alias": "second"
//}
]
} }

4
AMESCoreStudio.WebApi/AMESCoreStudio.WebApi.csproj

@ -38,8 +38,8 @@
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference> </PackageReference>
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="5.0.8" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="5.0.8" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="3.1.30" /> <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="5.0.8" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="3.1.30"> <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="5.0.8">
<PrivateAssets>all</PrivateAssets> <PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference> </PackageReference>

4
AMESCoreStudio.WebApi/AMESCoreStudio.WebApi.csproj.user

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup> <PropertyGroup>
<WebStackScaffolding_ControllerDialogWidth>650.4</WebStackScaffolding_ControllerDialogWidth> <WebStackScaffolding_ControllerDialogWidth>650</WebStackScaffolding_ControllerDialogWidth>
<Controller_SelectedScaffolderID>ApiControllerWithContextScaffolder</Controller_SelectedScaffolderID> <Controller_SelectedScaffolderID>ApiControllerWithContextScaffolder</Controller_SelectedScaffolderID>
<Controller_SelectedScaffolderCategoryPath>root/Common/Api</Controller_SelectedScaffolderCategoryPath> <Controller_SelectedScaffolderCategoryPath>root/Common/Api</Controller_SelectedScaffolderCategoryPath>
<WebStackScaffolding_IsLayoutPageSelected>True</WebStackScaffolding_IsLayoutPageSelected> <WebStackScaffolding_IsLayoutPageSelected>True</WebStackScaffolding_IsLayoutPageSelected>
@ -12,6 +12,6 @@
<WebStackScaffolding_IsAsyncSelected>False</WebStackScaffolding_IsAsyncSelected> <WebStackScaffolding_IsAsyncSelected>False</WebStackScaffolding_IsAsyncSelected>
<ShowAllFiles>false</ShowAllFiles> <ShowAllFiles>false</ShowAllFiles>
<WebStackScaffolding_IsViewGenerationSelected>True</WebStackScaffolding_IsViewGenerationSelected> <WebStackScaffolding_IsViewGenerationSelected>True</WebStackScaffolding_IsViewGenerationSelected>
<NameOfLastUsedPublishProfile>C:\Users\USER\Desktop\MES\AMES0916\AMESCoreStudio.WebApi\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile> <NameOfLastUsedPublishProfile>D:\jh-ames-git\AMESCoreStudio.WebApi\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
</PropertyGroup> </PropertyGroup>
</Project> </Project>

116
AMESCoreStudio.WebApi/Controllers/AMES/UnbindExtraBarcodeController.cs

@ -1,116 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using AMESCoreStudio.WebApi;
using AMESCoreStudio.WebApi.Models.AMES;
using AMESCoreStudio.WebApi.DTO.AMES;
using AMESCoreStudio.CommonTools.Result;
using AMESCoreStudio.WebApi.Enum;
namespace AMESCoreStudio.WebApi.Controllers.AMES
{
/// <summary>
/// 解除綁定出貨序號箱號資料檔
/// </summary>
[Route("api/[controller]")]
[ApiController]
public class UnbindExtraBarcodeController : ControllerBase
{
private readonly AMESContext _context;
public UnbindExtraBarcodeController(AMESContext context)
{
_context = context;
}
[HttpGet]
public async Task<ActionResult<IEnumerable<UnbindExtraBarcode>>> GetUnbindExtraBarcode()
{
return await _context.UnbindExtraBarcodes.ToListAsync();
}
[HttpGet("{id}")]
public async Task<ActionResult<UnbindExtraBarcode>> GetUnbindExtraBarcode(int id)
{
var unbindExtraBarcode = await _context.UnbindExtraBarcodes.FindAsync(id);
if (unbindExtraBarcode == null)
{
return NotFound();
}
return unbindExtraBarcode;
}
/// <summary>
/// 更新解除綁定出貨序號箱號資料檔
/// </summary>
/// <param name="unbindExtraBarcode"></param>
/// <returns></returns>
[HttpPut]
public async Task<ResultModel<UnbindExtraBarcode>> PutUnbindExtraBarcode(UnbindExtraBarcode unbindExtraBarcode)
{
ResultModel<UnbindExtraBarcode> result = new ResultModel<UnbindExtraBarcode>();
_context.Entry(unbindExtraBarcode).State = EntityState.Modified;
try
{
await _context.SaveChangesAsync();
result.Success = true;
result.Msg = "OK";
}
catch (Exception ex)
{
result.Success = false;
result.Msg = ex.InnerException.Message;
}
return result;
}
/// <summary>
/// 新增解除綁定出貨序號箱號資料檔
/// </summary>
/// <param name="unbindExtraBarcode"></param>
/// <returns></returns>
[HttpPost]
public async Task<ResultModel<UnbindExtraBarcode>> PostUnbindExtraBarcode(UnbindExtraBarcode unbindExtraBarcode)
{
ResultModel<UnbindExtraBarcode> result = new ResultModel<UnbindExtraBarcode>();
Helper helper = new Helper(_context);
unbindExtraBarcode.UnbindBarcodeId = helper.GetIDKey("UNBIND_BARCODE_ID").Result;
_context.UnbindExtraBarcodes.Add(unbindExtraBarcode);
try
{
await _context.SaveChangesAsync();
result.Success = true;
result.Msg = "OK";
}
catch (Exception ex)
{
result.Success = false;
result.Msg = ex.InnerException.Message;
}
return result;
}
// DELETE: api/FqcItem/5
[HttpDelete("{id}")]
public async Task<ActionResult<UnbindExtraBarcode>> DeleteUnbindExtraBarcode(int id)
{
var unbindExtraBarcode = await _context.UnbindExtraBarcodes.FindAsync(id);
if (unbindExtraBarcode == null)
{
return NotFound();
}
_context.UnbindExtraBarcodes.Remove(unbindExtraBarcode);
await _context.SaveChangesAsync();
return unbindExtraBarcode;
}
}
}

8
AMESCoreStudio.WebApi/Controllers/BLL/BarCodeCheckController.cs

@ -1640,18 +1640,14 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
return resultModel; return resultModel;
} }
if (WipNoItem.Where(w => w.StatusNO == "E").Any()) if (WipNoItem.Where(w => w.StatusNO == "E").Any())
{ {
resultModel.Msg = "工單號碼【" + wipNo + "】,該工單已經投入完工,請切換工單"; resultModel.Msg = "工單號碼【" + wipNo + "】,該工單已經投入完工,請切換工單";
return resultModel; return resultModel;
} }
if (WipNoItem.Where(w => w.StatusNO == "C").Any())
{
resultModel.Msg = "工單號碼【" + wipNo + "】,該工單已刪除,請切換工單";
return resultModel;
}
// 判斷是否是投入站 // 判斷是否是投入站
var RuleStation = await _context.RuleStations.Where(w => w.FlowRuleID == flowRuleID && w.StationID == stationID) var RuleStation = await _context.RuleStations.Where(w => w.FlowRuleID == flowRuleID && w.StationID == stationID)
.FirstOrDefaultAsync(); .FirstOrDefaultAsync();

72
AMESCoreStudio.WebApi/Models/AMES/UnbindExtraBarcode.cs

@ -1,72 +0,0 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
using System.Runtime.Serialization;
#nullable disable
namespace AMESCoreStudio.WebApi.Models.AMES
{
/// <summary>
/// 解除綁定出貨序號箱號資料檔
/// </summary>
[Table("UNBIND_EXTRA_BARCODE", Schema = "JHAMES")]
public partial class UnbindExtraBarcode
{
/// <summary>
/// 解除綁定ID
/// </summary>
[Key]
[Column("UNBIND_BARCODE_ID")]
[DataMember]
public int UnbindBarcodeId { get; set; }
/// <summary>
/// 起始生產條碼
/// </summary>
[Display(Name = "起始生產條碼")]
[Required(ErrorMessage = "{0},不能空白")]
[Column("START_BARCODE_NO")]
[StringLength(30)]
[DataMember]
public string StartBarcodeNo { get; set; }
/// <summary>
/// 結束生產條碼
/// </summary>
[Display(Name = "結束生產條碼")]
[Required(ErrorMessage = "{0},不能空白")]
[Column("END_BARCODE_NO")]
[StringLength(30)]
[DataMember]
public string EndBarcodeNo { get; set; }
/// <summary>
/// 解除綁定備註
/// </summary>
[Display(Name = "解除綁定備註")]
[Required(ErrorMessage = "{0},不能空白")]
[Column("UNBIND_REASON")]
[StringLength(100)]
[DataMember]
public string UnbindReason { get; set; }
/// <summary>
/// 建立UserID
/// </summary>
[Column("CREATE_USERID")]
[Required]
[DataMember]
public int CreateUserID { get; set; } = 0;
/// <summary>
/// 建立日期
/// </summary>
[Required]
[Column("CREATE_DATE")]
[DataMember]
public DateTime CreateDate { get; set; } = DateTime.Now;
}
}

26
AMESCoreStudio.WebApi/Models/AMESContext.cs

@ -351,9 +351,9 @@ namespace AMESCoreStudio.WebApi
/// </summary> /// </summary>
public DbSet<CycleTime> CycleTimes { get; set; } public DbSet<CycleTime> CycleTimes { get; set; }
/// <summary> ///// <summary>
/// 不良現象原因代碼資料 ///// 不良現象原因代碼資料
/// </summary> ///// </summary>
public DbSet<NGReason> NGReasons { get; set; } public DbSet<NGReason> NGReasons { get; set; }
/// <summary> /// <summary>
@ -397,9 +397,6 @@ namespace AMESCoreStudio.WebApi
//public virtual DbSet<WipSop> WipSops { get; set; } //public virtual DbSet<WipSop> WipSops { get; set; }
public virtual DbSet<MaterialSop> MaterialSops { get; set; } public virtual DbSet<MaterialSop> MaterialSops { get; set; }
/// <summary>
/// 料號基本資料檔
/// </summary>
public virtual DbSet<MaterialItem> MaterialItems { get; set; } public virtual DbSet<MaterialItem> MaterialItems { get; set; }
/// <summary> /// <summary>
@ -728,14 +725,14 @@ namespace AMESCoreStudio.WebApi
/// </summary> /// </summary>
public virtual DbSet<OutfitCommodityInfo> OutfitCommodityInfoes { get; set; } public virtual DbSet<OutfitCommodityInfo> OutfitCommodityInfoes { get; set; }
/// <summary> ///// <summary>
/// 設備規格資料檔 ///// 設備規格資料檔
/// </summary> ///// </summary>
public virtual DbSet<OutfitVarityInfo> OutfitVarityInfoes { get; set; } public virtual DbSet<OutfitVarityInfo> OutfitVarityInfoes { get; set; }
/// <summary> ///// <summary>
/// 廠商資料檔 ///// 廠商資料檔
/// </summary> ///// </summary>
public virtual DbSet<OutfitVendorInfo> OutfitVendorInfoes { get; set; } public virtual DbSet<OutfitVendorInfo> OutfitVendorInfoes { get; set; }
/// <summary> /// <summary>
@ -868,11 +865,6 @@ namespace AMESCoreStudio.WebApi
/// FQC 報表自動派送維護 /// FQC 報表自動派送維護
/// </summary> /// </summary>
public virtual DbSet<FqcNoticeMail> FqcNoticeMails { get; set; } public virtual DbSet<FqcNoticeMail> FqcNoticeMails { get; set; }
/// <summary>
/// 解除綁定出貨序號箱號資料檔
/// </summary>
public virtual DbSet<UnbindExtraBarcode> UnbindExtraBarcodes { get; set; }
} }
} }

12
AMESCoreStudio.WebApi/appsettings.json

@ -7,15 +7,17 @@
} }
}, },
"ConnectionStrings": { "ConnectionStrings": {
//"AMESContext1": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=xe)));User Id=JHAMES;Password=JHAMES;", "AMESContext2": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=gdb)));User Id=JHAMES;Password=AMES666;",
"AMESContext": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=61.216.68.18)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=jhdb)));User Id=JHSYS;Password=ASYS666;" "AMESContext": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=61.216.68.18)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=jhdb)));User Id=JHSYS;Password=ASYS666;"
//"AMESContext": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=61.216.68.18)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=jhdb)));User Id=system;Password=admin;" //"AMESContext": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=61.216.68.18)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=jhdb)));User Id=system;Password=admin;"
//"AMESContextO": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=61.216.68.18)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=cpadb)));User Id=JHSYS;Password=ASYS666;" //"AMESContextO": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=61.216.68.18)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=cpadb)));User Id=JHSYS;Password=ASYS666;"
}, },
"MailSmtpServer": "smtp.topviewcorp.com", "WebSiteUrl": "",
"MailSmtpServer": "",
"MailSmtpPort": "25", "MailSmtpPort": "25",
"MailFrom": "BB.Wang@Topviewcorp.com", "MailFrom": "",
"MailUser": "BB.Wang", "MailUser": "",
"MailUserPassword": "BBWang22", "MailUserPassword": "",
//"MailTo": "",
"AllowedHosts": "*" "AllowedHosts": "*"
} }

BIN
AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.dll

Binary file not shown.

BIN
AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.pdb

Binary file not shown.

28
AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.deps.json

@ -36,8 +36,8 @@
"Microsoft.EntityFrameworkCore": "5.0.8", "Microsoft.EntityFrameworkCore": "5.0.8",
"Microsoft.EntityFrameworkCore.Design": "5.0.8", "Microsoft.EntityFrameworkCore.Design": "5.0.8",
"Microsoft.EntityFrameworkCore.Proxies": "5.0.8", "Microsoft.EntityFrameworkCore.Proxies": "5.0.8",
"Microsoft.EntityFrameworkCore.SqlServer": "3.1.30", "Microsoft.EntityFrameworkCore.SqlServer": "3.1.23",
"Microsoft.EntityFrameworkCore.Tools": "3.1.30", "Microsoft.EntityFrameworkCore.Tools": "3.1.23",
"Microsoft.VisualStudio.Web.CodeGeneration.Design": "3.1.5", "Microsoft.VisualStudio.Web.CodeGeneration.Design": "3.1.5",
"Oracle.EntityFrameworkCore": "5.21.1", "Oracle.EntityFrameworkCore": "5.21.1",
"Swashbuckle.AspNetCore": "6.1.4", "Swashbuckle.AspNetCore": "6.1.4",
@ -766,22 +766,22 @@
"lib/netstandard2.1/Microsoft.EntityFrameworkCore.Relational.dll": {} "lib/netstandard2.1/Microsoft.EntityFrameworkCore.Relational.dll": {}
} }
}, },
"Microsoft.EntityFrameworkCore.SqlServer/3.1.30": { "Microsoft.EntityFrameworkCore.SqlServer/3.1.23": {
"dependencies": { "dependencies": {
"Microsoft.Data.SqlClient": "1.1.3", "Microsoft.Data.SqlClient": "1.1.3",
"Microsoft.EntityFrameworkCore.Relational": "5.0.8" "Microsoft.EntityFrameworkCore.Relational": "5.0.8"
}, },
"runtime": { "runtime": {
"lib/netstandard2.0/Microsoft.EntityFrameworkCore.SqlServer.dll": { "lib/netstandard2.0/Microsoft.EntityFrameworkCore.SqlServer.dll": {
"assemblyVersion": "3.1.30.0", "assemblyVersion": "3.1.23.0",
"fileVersion": "3.100.3022.47610" "fileVersion": "3.100.2322.12304"
} }
}, },
"compile": { "compile": {
"lib/netstandard2.0/Microsoft.EntityFrameworkCore.SqlServer.dll": {} "lib/netstandard2.0/Microsoft.EntityFrameworkCore.SqlServer.dll": {}
} }
}, },
"Microsoft.EntityFrameworkCore.Tools/3.1.30": { "Microsoft.EntityFrameworkCore.Tools/3.1.23": {
"dependencies": { "dependencies": {
"Microsoft.EntityFrameworkCore.Design": "5.0.8" "Microsoft.EntityFrameworkCore.Design": "5.0.8"
} }
@ -4274,19 +4274,19 @@
"path": "microsoft.entityframeworkcore.relational/5.0.8", "path": "microsoft.entityframeworkcore.relational/5.0.8",
"hashPath": "microsoft.entityframeworkcore.relational.5.0.8.nupkg.sha512" "hashPath": "microsoft.entityframeworkcore.relational.5.0.8.nupkg.sha512"
}, },
"Microsoft.EntityFrameworkCore.SqlServer/3.1.30": { "Microsoft.EntityFrameworkCore.SqlServer/3.1.23": {
"type": "package", "type": "package",
"serviceable": true, "serviceable": true,
"sha512": "sha512-ylH8ha+qNDxPY5swU700ChdvrkC4CDnSif7GW8we9MNwKULsqnC0C/ufOHtIvIUHF+fFdM4GQM32HwxvBzVbLw==", "sha512": "sha512-jfTL7M74a1TCrg6+BgUnWDz6gd2ouXeAqJO84ILb1AUUQVVDScJFJpAjJcY7AqkAW1VinL4TYfSiNSfX1AhUsg==",
"path": "microsoft.entityframeworkcore.sqlserver/3.1.30", "path": "microsoft.entityframeworkcore.sqlserver/3.1.23",
"hashPath": "microsoft.entityframeworkcore.sqlserver.3.1.30.nupkg.sha512" "hashPath": "microsoft.entityframeworkcore.sqlserver.3.1.23.nupkg.sha512"
}, },
"Microsoft.EntityFrameworkCore.Tools/3.1.30": { "Microsoft.EntityFrameworkCore.Tools/3.1.23": {
"type": "package", "type": "package",
"serviceable": true, "serviceable": true,
"sha512": "sha512-8rLsh7pjMhthwRDnwrwmwSMALhLSi+tOcCxSCdPH0CpoJLijb3GhZJQMpkjaUnjjUf64DDPW9COhRfzzfHutEw==", "sha512": "sha512-1RRy8gGH4x7gFH6S6WqTXMfN3wyhjUWsfqglzl4wI9of3p9QV55Y2tikoSY7G1NbFWFfvCfiaTFZz2P1BAJcTQ==",
"path": "microsoft.entityframeworkcore.tools/3.1.30", "path": "microsoft.entityframeworkcore.tools/3.1.23",
"hashPath": "microsoft.entityframeworkcore.tools.3.1.30.nupkg.sha512" "hashPath": "microsoft.entityframeworkcore.tools.3.1.23.nupkg.sha512"
}, },
"Microsoft.Extensions.ApiDescription.Server/3.0.0": { "Microsoft.Extensions.ApiDescription.Server/3.0.0": {
"type": "package", "type": "package",

BIN
AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.dll

Binary file not shown.

BIN
AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.exe

Binary file not shown.

BIN
AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.pdb

Binary file not shown.

2315
AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.xml

File diff suppressed because it is too large

BIN
AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/Microsoft.EntityFrameworkCore.SqlServer.dll

Binary file not shown.

11
AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/appsettings.json

@ -7,15 +7,16 @@
} }
}, },
"ConnectionStrings": { "ConnectionStrings": {
//"AMESContext1": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=xe)));User Id=JHAMES;Password=JHAMES;", "AMESContext2": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=gdb)));User Id=JHAMES;Password=AMES666;",
"AMESContext": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=61.216.68.18)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=jhdb)));User Id=JHSYS;Password=ASYS666;" "AMESContext": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=61.216.68.18)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=jhdb)));User Id=JHSYS;Password=ASYS666;"
//"AMESContext": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=61.216.68.18)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=jhdb)));User Id=system;Password=admin;" //"AMESContext": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=61.216.68.18)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=jhdb)));User Id=system;Password=admin;"
//"AMESContextO": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=61.216.68.18)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=cpadb)));User Id=JHSYS;Password=ASYS666;" //"AMESContextO": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=61.216.68.18)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=cpadb)));User Id=JHSYS;Password=ASYS666;"
}, },
"MailSmtpServer": "smtp.topviewcorp.com", "MailSmtpServer": "",
"MailSmtpPort": "25", "MailSmtpPort": "25",
"MailFrom": "BB.Wang@Topviewcorp.com", "MailForm": "",
"MailUser": "BB.Wang", "MailUser": "",
"MailUserPassword": "BBWang22", "MailUserPassword": "",
//"MailTo": "",
"AllowedHosts": "*" "AllowedHosts": "*"
} }

23
其他專案資料/Oracle EF Core.docx

@ -1,23 +0,0 @@
套件管理器主控台(檢視>其他視窗>套件管理器主控台)下以下指令 PS.記得選指定專案
PM 下指令
Scaffold-DbContext "Data Source=10.0.123.30:1521/shop.aten.com.tw;Password=s20f07s28;User Id=sfs;"
Oracle.EntityFrameworkCore -OutputDir Models -Force -Context "AppDBContext"
-OutputDir 資料夾名稱
-Context Context名稱
-Force 覆寫現有檔案
-NoOnConfiguring 不要產生 DbContext.OnConfiguring
-Tables 不設定參數,預設全部table
Scaffold-DbContext "Data Source=10.0.123.30:1521/shop.aten.com.tw;Password=s20f07s28;User Id=sfs;" Oracle.EntityFrameworkCore -OutputDir Models/test -Force -Context "AppDBContext" -NoOnConfiguring -DataAnnotations
詳細參數說明
https://docs.microsoft.com/zh-tw/ef/core/cli/powershell#common-parameters
AMES 專案測試
在Models/aaa 建立Model 跟 DBconntext
Scaffold-DbContext "Data Source=61.216.68.18:1521/JHDB;Password=AMES666;User Id=JHAMES;" Oracle.EntityFrameworkCore -OutputDir Models/aaa -DataAnnotations -Tables "Table名稱" -ContextNamespace "DB"
DBconntext 所產生的ModelBuilder(功能跟DataAnnotations一樣,但ModelBuilder優先度高 可設定一個以上主key) 可以剪貼放到AMESContext.cs
Loading…
Cancel
Save