Browse Source

1. PCS027 組件批次刪除 UI

PTD
Ray 3 years ago
parent
commit
a080fcca18
  1. 120
      AMESCoreStudio.Web/Controllers/PCBController.cs
  2. 174
      AMESCoreStudio.Web/Controllers/PCSController.cs
  3. 81
      AMESCoreStudio.Web/HttpApis/AMES/IPCB.cs
  4. 52
      AMESCoreStudio.Web/Views/PCB/PCB013.cshtml
  5. 15
      AMESCoreStudio.Web/Views/PCB/PCB013C.cshtml
  6. 142
      AMESCoreStudio.Web/Views/PCB/PCB013U.cshtml
  7. 199
      AMESCoreStudio.Web/Views/PCB/PCB014.cshtml
  8. 121
      AMESCoreStudio.Web/Views/PCB/PCB014C.cshtml
  9. 122
      AMESCoreStudio.Web/Views/PCB/PCB014U.cshtml
  10. 122
      AMESCoreStudio.Web/Views/PCS/PCS027.cshtml
  11. 64
      AMESCoreStudio.WebApi/Controllers/AMES/SolderPasteInfoController.cs
  12. 17
      AMESCoreStudio.WebApi/Controllers/AMES/SteelPlateInfoController.cs
  13. 2
      AMESCoreStudio.WebApi/DTO/AMES/SolderPasteInfoDto.cs

120
AMESCoreStudio.Web/Controllers/PCBController.cs

@ -1428,10 +1428,130 @@ namespace AMESCoreStudio.Web.Controllers
{
return View();
}
//修改页面
[HttpGet]
public async Task<IActionResult> PCB013U(int id)
{
var result = await _pcbApi.GetSteelPlateInfo(id);
return View(result);
}
//頁面提交,id=0 添加,id>0 修改
[HttpPost]
public async Task<IActionResult> PCB013Async(SteelPlateInfo model)
{
if (ModelState.IsValid)
{
IResultModel result;
if (model.SteelPlateID == 0)
{
model.CreateUserID = GetLogInUserID();
model.CreateDate = DateTime.Now;
model.UpdateUserID = GetLogInUserID();
model.UpdateDate = DateTime.Now;
result = await _pcbApi.PostSteelPlateInfo(JsonConvert.SerializeObject(model));
}
else
{
model.UpdateUserID = GetLogInUserID();
model.UpdateDate = DateTime.Now;
result = await _pcbApi.PutSteelPlateInfo(JsonConvert.SerializeObject(model));
}
if (result.Success)
{
var _msg = model.SteelPlateID == 0 ? "新增成功!" : "修改成功!";
return RedirectToAction("Refresh", "Home", new { msg = _msg });
}
else
{
ModelState.AddModelError("error", result.Msg);
}
}
if (model.SteelPlateID == 0)
{
return View("PCB013C", model);
}
return View("PCB013U", model);
}
#endregion
#region PCB014 錫膏使用管控
public ActionResult PCB014()
{
return View();
}
public async Task<IActionResult> PCB014QueryAsync(string steelPlateNo, string pcbPartNo
, string side, string status, int page = 0, int limit = 10)
{
//IResultModel<SteelPlateInfoDto> result = await _pcbApi.GetSolderPasteInfoQuery(steelPlateNo: steelPlateNo, pcbPartNo: pcbPartNo
//, side: side, status: status, page: page, limit: limit);
//if (result.Data.Count() != 0)
//{
// return Json(new Table() { code = 0, msg = "", data = result.Data, count = result.DataTotal });
//}
return Json(new Table() { count = 0, data = null });
}
//新增頁面
public IActionResult PCB014C()
{
return View();
}
//修改页面
[HttpGet]
public async Task<IActionResult> PCB014U(int id)
{
var result = await _pcbApi.GetSolderPasteInfo(id);
return View(result);
}
//頁面提交,id=0 添加,id>0 修改
[HttpPost]
public async Task<IActionResult> PCB014Async(SteelPlateInfo model)
{
if (ModelState.IsValid)
{
IResultModel result;
if (model.SteelPlateID == 0)
{
model.CreateUserID = GetLogInUserID();
model.CreateDate = DateTime.Now;
model.UpdateUserID = GetLogInUserID();
model.UpdateDate = DateTime.Now;
result = await _pcbApi.PostSolderPasteInfo(JsonConvert.SerializeObject(model));
}
else
{
model.UpdateUserID = GetLogInUserID();
model.UpdateDate = DateTime.Now;
result = await _pcbApi.PutSolderPasteInfo(JsonConvert.SerializeObject(model));
}
if (result.Success)
{
var _msg = model.SteelPlateID == 0 ? "新增成功!" : "修改成功!";
return RedirectToAction("Refresh", "Home", new { msg = _msg });
}
else
{
ModelState.AddModelError("error", result.Msg);
}
}
if (model.SteelPlateID == 0)
{
return View("PCB014C", model);
}
return View("PCB014U", model);
}
#endregion
/// <summary>

174
AMESCoreStudio.Web/Controllers/PCSController.cs

@ -21,6 +21,7 @@ using System.Threading.Tasks;
using AMESCoreStudio.WebApi.Enum;
using Microsoft.Extensions.Localization;
using Microsoft.Extensions.Configuration;
using ClosedXML.Excel;
namespace AMESCoreStudio.Web.Controllers
{
@ -28,6 +29,7 @@ namespace AMESCoreStudio.Web.Controllers
public class PCSController : Controller
{
private readonly ILogger<PCSController> _logger;
private readonly ILogger<LoginController> _log;
public readonly ISYS _sysApi;
@ -5873,6 +5875,106 @@ namespace AMESCoreStudio.Web.Controllers
#endregion
#region PCS027 組件資料整批刪除
public async Task<IActionResult> PCS027()
{
await GetItemsList();
return View();
}
[HttpPost]
public JsonResult PCS027_Excel(IFormFile Uploader)
{
List<string> Print = new List<string>();
//通過上傳檔案流初始化Mapper
using (var workbook = new XLWorkbook(Uploader.OpenReadStream()))
{
var worksheet = workbook.Worksheet(1);
// 定義資料起始/結束 Cell
var firstCell = worksheet.FirstCellUsed();
var lastCell = worksheet.LastCellUsed();
// 使用資料起始/結束 Cell,來定義出一個資料範圍
var data = worksheet.Range(firstCell.Address, lastCell.Address);
var rowCount = data.RowCount();
var columnCount = data.ColumnCount();
for (int i = 1; i <= rowCount; i++)
{
// 取得每一欄
if (data.Cell(i, 1).Value.ToString() != null)
{
Print.Add(data.Cell(i, 0).Value.ToString());
}
}
}
//将数据Json化并传到前台视图
return Json(new { data = string.Join(",", Print) });
}
//[HttpPost]
//public async Task<IActionResult> PCS027CAsync(MaterialSop model, IFormFile formFile)
//{
// string FileName = string.Empty;
// string NewName = string.Empty;
// string FilePath = string.Empty;
// //var fileProvider = _fileServerProvider.GetProvider("/aa");
// //var fileInfo = fileProvider.GetFileInfo("/");
// if (formFile != null)
// {
// if (formFile.Length > 0)
// {
// //取得使用者上傳檔案的原始檔名
// FileName = Path.GetFileName(formFile.FileName);
// //取原始檔名中的副檔名
// var fileExt = Path.GetExtension(FileName);
// //為避免使用者上傳的檔案名稱發生重複,重新給一個亂數名稱
// NewName = Path.GetRandomFileName() + fileExt;
// //指定要寫入的路徑、檔名和副檔名
// FilePath = $"\\PDF\\";//本機目錄
// using (var stream = new FileStream(_env.WebRootPath + FilePath + NewName, FileMode.Create))
// {
// await formFile.CopyToAsync(stream);
// }
// //var fileProvider = _fileServerProvider.GetProvider("/aa");
// //var fileInfo = fileProvider.GetFileInfo(formFile.FileName);
// //fileInfo = fileProvider.GetFileInfo(formFile.FileName);
// ////遠端目錄
// //using (var stream = new FileStream(fileInfo.PhysicalPath, FileMode.Create))
// //{
// // await formFile.CopyToAsync(stream);
// //}
// IResultModel result;
// //model.FileName = FileName;
// //model.NewName = NewName;
// //model.FilePath = FilePath;// fileInfo.PhysicalPath;
// result = await _pcsApi.PostMaterialSop(JsonConvert.SerializeObject(model));
// if (result.Success)
// {
// var _msg = model.MaterialSopID == 0 ? "新增成功!" : "修改成功!";
// return RedirectToAction("Refresh", "Home", new { msg = _msg });
// }
// else
// {
// ModelState.AddModelError("error", result.Msg);
// }
// }
// }
// else
// {
// ModelState.AddModelError("error", "請選擇要上傳檔案");
// }
// await GetFactoryUnit();
// return View(model);
//}
#endregion
[ResponseCache(Duration = 0)]
[HttpGet]
public async Task<IActionResult> PCS030()
@ -6146,6 +6248,7 @@ namespace AMESCoreStudio.Web.Controllers
}
#endregion
[HttpPost]
public JsonResult TestFunc(string number)
{
@ -6180,9 +6283,6 @@ namespace AMESCoreStudio.Web.Controllers
return PartialView("~/Views/Shared/PCS/_SOPPartial", Json(new Table() { code = 0, msg = "", data = result, count = result.Count }));
}
[HttpGet]
public async Task<IActionResult> SOP()
{
@ -6312,74 +6412,6 @@ namespace AMESCoreStudio.Web.Controllers
}
}
public IActionResult PCS027()
{
return View();
}
[HttpPost]
public async Task<IActionResult> PCS027CAsync(MaterialSop model, IFormFile formFile)
{
string FileName = string.Empty;
string NewName = string.Empty;
string FilePath = string.Empty;
//var fileProvider = _fileServerProvider.GetProvider("/aa");
//var fileInfo = fileProvider.GetFileInfo("/");
if (formFile != null)
{
if (formFile.Length > 0)
{
//取得使用者上傳檔案的原始檔名
FileName = Path.GetFileName(formFile.FileName);
//取原始檔名中的副檔名
var fileExt = Path.GetExtension(FileName);
//為避免使用者上傳的檔案名稱發生重複,重新給一個亂數名稱
NewName = Path.GetRandomFileName() + fileExt;
//指定要寫入的路徑、檔名和副檔名
FilePath = $"\\PDF\\";//本機目錄
using (var stream = new FileStream(_env.WebRootPath + FilePath + NewName, FileMode.Create))
{
await formFile.CopyToAsync(stream);
}
//var fileProvider = _fileServerProvider.GetProvider("/aa");
//var fileInfo = fileProvider.GetFileInfo(formFile.FileName);
//fileInfo = fileProvider.GetFileInfo(formFile.FileName);
////遠端目錄
//using (var stream = new FileStream(fileInfo.PhysicalPath, FileMode.Create))
//{
// await formFile.CopyToAsync(stream);
//}
IResultModel result;
//model.FileName = FileName;
//model.NewName = NewName;
//model.FilePath = FilePath;// fileInfo.PhysicalPath;
result = await _pcsApi.PostMaterialSop(JsonConvert.SerializeObject(model));
if (result.Success)
{
var _msg = model.MaterialSopID == 0 ? "新增成功!" : "修改成功!";
return RedirectToAction("Refresh", "Home", new { msg = _msg });
}
else
{
ModelState.AddModelError("error", result.Msg);
}
}
}
else
{
ModelState.AddModelError("error", "請選擇要上傳檔案");
}
await GetFactoryUnit();
return View(model);
}
#endregion
//YIRU ADD -------------------------------------------------------------------------------------------------------------------------------

81
AMESCoreStudio.Web/HttpApis/AMES/IPCB.cs

@ -83,7 +83,7 @@ namespace AMESCoreStudio.Web
/// <param name="wipNo">工單號碼</param>
/// <returns></returns>
[WebApiClient.Attributes.HttpGet("api/QcItem/QcItemQuery")]
ITask<ResultModel<QcItemDto>> GetQcItemQuery(int groupID, int page, int limit,string itemNo = null,string wipNo = null);
ITask<ResultModel<QcItemDto>> GetQcItemQuery(int groupID, int page, int limit, string itemNo = null, string wipNo = null);
/// <summary>
/// 查詢檢驗項目維護 ID
@ -322,7 +322,7 @@ namespace AMESCoreStudio.Web
/// </summary>
/// <returns></returns>
[WebApiClient.Attributes.HttpGet("api/FqcInhouseMaster/FqcQuery/{inhouseNo}")]
ITask<ResultModel<FqcDto>> GetFqcQuery(string inhouseNo,int? seqid = 1);
ITask<ResultModel<FqcDto>> GetFqcQuery(string inhouseNo, int? seqid = 1);
/// <summary>
/// 獲取不良現象群組資料
@ -343,7 +343,7 @@ namespace AMESCoreStudio.Web
/// </summary>
/// <returns></returns>
[WebApiClient.Attributes.HttpGet("api/NGReasons/Class/{no}")]
ITask<List<NGReason>> GetNGReasonsByClass(string no , int page = 0, int limit = 1000);
ITask<List<NGReason>> GetNGReasonsByClass(string no, int page = 0, int limit = 1000);
/// <summary>
/// 用內部序號取BarCode資料
@ -371,7 +371,7 @@ namespace AMESCoreStudio.Web
/// </summary>
/// <returns></returns>
[WebApiClient.Attributes.HttpGet("api/FqcResultMaster/ByInhouseNo/{inhouseNo}/{seq}")]
ITask<List<FqcResultMaster>> GetFqcResultMasterByInhouseNo(string inhouseNo,int seq);
ITask<List<FqcResultMaster>> GetFqcResultMasterByInhouseNo(string inhouseNo, int seq);
/// <summary>
/// 用入庫單號與序號取檢驗單明细資料
@ -473,35 +473,78 @@ namespace AMESCoreStudio.Web
[WebApiClient.Attributes.HttpGet("api/SteelPlateInfo/SteelPlateInfoQuery")]
ITask<ResultModel<SteelPlateInfoDto>> GetSteelPlateInfoQuery(string steelPlateNo = null, string pcbPartNo = null
, string side = null, string status = null, int page = 0, int limit = 10);
/// <summary>
/// 新增鋼板資料
/// </summary>
/// <returns></returns>
[WebApiClient.Attributes.HttpPost("api/SteelPlateInfo")]
ITask<ResultModel<SteelPlateInfo>> PostSteelPlateInfo([FromBody, RawJsonContent] string model);
/// <summary>
/// 更新鋼板資料
/// </summary>
/// <returns></returns>
[WebApiClient.Attributes.HttpPut("api/SteelPlateInfo")]
ITask<ResultModel<SteelPlateInfo>> PutSteelPlateInfo([FromBody, RawJsonContent] string model);
/// <summary>
/// 查詢鋼板資料 ID
/// </summary>
/// <returns></returns>
[WebApiClient.Attributes.HttpGet("api/SteelPlateInfo/{id}")]
ITask<SteelPlateInfo> GetSteelPlateInfo(int id);
/// <summary>
/// 查詢鋼板資料 By No
/// </summary>
/// <returns></returns>
[WebApiClient.Attributes.HttpGet("api/SteelPlateInfo/ByNo/{id}")]
ITask<List<SteelPlateInfo>> GetSteelPlateInfoByNo(string id);
#endregion
#region FQC009 料號檢驗工項維護
#region PCB014 錫膏使用管控
/// <summary>
/// MaterialItem 料號基本資料檔
/// 鋼板資料查詢
/// </summary>
/// <param name="id">料號</param>
[WebApiClient.Attributes.HttpGet("api/MaterialItem/ByItemNO/{id}")]
ITask<MaterialItem> GetMaterialItemByItemNO(string id);
/// <param name="steelPlateNo">鋼板編號</param>
/// <param name="pcbPartNo">PCB板號</param>
/// <param name="side">正背面</param>
/// <param name="status">狀態</param>
/// <param name="page">頁數</param>
/// <param name="limit">筆數</param>
/// <returns></returns>
[WebApiClient.Attributes.HttpGet("api/SolderPasteInfo/SolderPasteInfoQuery")]
ITask<ResultModel<SolderPasteInfoDto>> GetSolderPasteInfoQuery(string steelPlateNo = null, string pcbPartNo = null
, string side = null, string status = null, int page = 0, int limit = 10);
/// <summary>
/// MaterialItem 料號查詢綁定檢驗工項
/// 新增鋼板資料
/// </summary>
/// <param name="id">料號</param>
[WebApiClient.Attributes.HttpGet("api/MaterialFqcItem/ByitemNo/{id}")]
ITask<List<MaterialFqcItem>> GetMaterialFqcItemsByitemNo(string id);
/// <returns></returns>
[WebApiClient.Attributes.HttpPost("api/SolderPasteInfo")]
ITask<ResultModel<SolderPasteInfo>> PostSolderPasteInfo([FromBody, RawJsonContent] string model);
/// <summary>
/// 更新鋼板資料
/// </summary>
/// <returns></returns>
[WebApiClient.Attributes.HttpPut("api/SolderPasteInfo")]
ITask<ResultModel<SolderPasteInfo>> PutSolderPasteInfo([FromBody, RawJsonContent] string model);
/// <summary>
/// MaterialItem 新增料號綁定檢驗工項
/// 查詢鋼板資料 ID
/// </summary>
[WebApiClient.Attributes.HttpPost("api/MaterialFqcItem")]
ITask<ResultModel<MaterialFqcItem>> PostMaterialFqcItem([FromBody, RawJsonContent] string model);
/// <returns></returns>
[WebApiClient.Attributes.HttpGet("api/SolderPasteInfo/{id}")]
ITask<SolderPasteInfo> GetSolderPasteInfo(int id);
/// <summary>
/// MaterialItem 刪除料號綁定檢驗工項
/// 查詢鋼板資料 By No
/// </summary>
/// <returns></returns>
[WebApiClient.Attributes.HttpDelete("api/MaterialFqcItem/{id}")]
ITask<ResultModel<string>> DeleteMaterialFqcItem(int id);
[WebApiClient.Attributes.HttpGet("api/SolderPasteInfo/ByNo/{id}")]
ITask<List<SolderPasteInfo>> GetSolderPasteInfoByNo(string id);
#endregion
}
}

52
AMESCoreStudio.Web/Views/PCB/PCB013.cshtml

@ -138,60 +138,58 @@
var tableCols = [[
{
field: 'steelPlateNo',
width: 80,
title: '委外廠',
title: '鋼板編號',
sort: true
},
{
field: 'specification',
title: '入庫時間',
sort: true
title: '規格',
},
{
field: 'pcbPartNo',
width: 150,
title: '入庫單號',
title: 'PCB板編號',
sort: true
},
{
field: 'sideName',
title: '順序',
width: 60
title: '正背面',
width: 70
},
{
field: 'boards',
title: '工單號碼',
title: '連板數',
width: 85,
sort: true
},
{
field: 'standardTension1',
title: '料號',
sort: true
title: '張力1',
width: 70
},
{
field: 'standardTension2',
title: '料號',
sort: true
title: '張力2',
width: 70
},
{
field: 'standardTension3',
title: '料號',
sort: true
title: '張力3',
width: 70
},
{
field: 'standardTension4',
title: '料號',
sort: true
title: '張力4',
width: 70
},
{
field: 'standardTension5',
title: '料號',
sort: true
title: '張力5',
width: 70
},
{
field: 'statusName',
width: 60,
title: '批量'
title: '狀態'
},
{
title: '操作',
@ -204,8 +202,8 @@
]];
//通过行tool编辑,lay-event="edit"
function edit(obj) {
if (obj.data.inhouseNo) {
hg.open('FQC抽驗作業', '/FQC/FQC007?inhouseNo=' + obj.data.inhouseNo + '&seqID=' + obj.data.seqID, '', '', true);
if (obj.data.steelPlateID) {
hg.open('修改鋼板基本資料', '/PCB/PCB013U?id=' + obj.data.steelPlateID, 700, 500);
}
}
@ -224,14 +222,4 @@
var table = hg.table.datatable('query', '鋼板資料查詢', '/PCB/PCB013Query', {}, tableCols, toolbar, true, 'full-100', ['filter', 'print', 'exports']);
// var table = hg.table.datatable('test', '條碼狀態維護', '/PCS/GetWipInfo', {}, tableCols, toolbar, true, 'full-100', ['filter', 'print', 'exports']);
</script>
<script type="text/html" id="statusName">
{{# if(d.statusName === '允收'){ }}
<span style="color: #07ab2a;">{{ d.statusName }}</span>
{{# } else if(d.statusName === '批退'){ }}
<span style="color: #d70841;">{{ d.statusName }}</span>
{{# } else { }}
{{ d.statusName }}
{{# } }}
</script>
}

15
AMESCoreStudio.Web/Views/PCB/PCB013C.cshtml

@ -59,12 +59,12 @@
<div class="layui-inline">
<label class="layui-form-label">標準張力_1</label>
<div class="layui-input-inline">
<input asp-for="StandardTension1" class="layui-input" style="width: 70px;"/>
<input asp-for="StandardTension1" onkeyup="clearNoNum(this)" class="layui-input" style="width: 70px;"/>
<span asp-validation-for="StandardTension1" class="layui-bg-red"></span>
</div>
<label class="layui-form-label">標準張力_2</label>
<div class="layui-input-inline">
<input asp-for="StandardTension2" class="layui-input" style="width: 70px;"/>
<input asp-for="StandardTension2" onkeyup="clearNoNum(this)" class="layui-input" style="width: 70px;"/>
<span asp-validation-for="StandardTension2" class="layui-bg-red"></span>
</div>
</div>
@ -74,12 +74,12 @@
<div class="layui-inline">
<label class="layui-form-label">標準張力_3</label>
<div class="layui-input-inline">
<input asp-for="StandardTension3" class="layui-input" style="width: 70px;"/>
<input asp-for="StandardTension3" onkeyup="clearNoNum(this)" class="layui-input" style="width: 70px;"/>
<span asp-validation-for="StandardTension3" class="layui-bg-red"></span>
</div>
<label class="layui-form-label">標準張力_4</label>
<div class="layui-input-inline">
<input asp-for="StandardTension4" class="layui-input" style="width: 70px;"/>
<input asp-for="StandardTension4" onkeyup="clearNoNum(this)" class="layui-input" style="width: 70px;"/>
<span asp-validation-for="StandardTension4" class="layui-bg-red"></span>
</div>
</div>
@ -88,7 +88,7 @@
<div class="layui-form-item">
<label class="layui-form-label">標準張力_5</label>
<div class="layui-input-inline">
<input asp-for="StandardTension5" class="layui-input" style="width: 70px;"/>
<input asp-for="StandardTension5" onkeyup="clearNoNum(this)" class="layui-input" style="width: 70px;"/>
<span asp-validation-for="StandardTension5" class="layui-bg-red"></span>
</div>
</div>
@ -133,6 +133,11 @@
parent.hg.msg(error);
}
});
function clearNoNum(obj) {
//先把非數字的都替換掉,除了數字和.
obj.value = obj.value.replace(/[^\d.]/g, "");
}
</script>

142
AMESCoreStudio.Web/Views/PCB/PCB013U.cshtml

@ -0,0 +1,142 @@
@model AMESCoreStudio.WebApi.Models.AMES.SteelPlateInfo
@{ Layout = "~/Views/Shared/_AMESLayout.cshtml"; }
<style>
.control-label {
justify-content: flex-end !important;
}
</style>
<div class="layui-card">
<div class="row">
<div class="col-sm-12">
<form enctype="multipart/form-data" method="post" asp-action="PCB013" class="layui-form">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<input type="hidden" asp-for="SteelPlateID" value="@Model.SteelPlateID" />
<div class="layui-form-item">
<label class="layui-form-label">鋼板編號</label>
<div class="layui-input-inline">
<input asp-for="SteelPlateNo" class="layui-input" autocomplete="off" placeholder="請輸入鋼板編號" />
<span asp-validation-for="SteelPlateNo" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">規格</label>
<div class="layui-input-inline">
<input asp-for="Specification" class="layui-input" autocomplete="off" placeholder="請輸入規格" />
<span asp-validation-for="Specification" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">PCB板料號</label>
<div class="layui-input-inline">
<input asp-for="PcbPartNo" class="layui-input" placeholder="請輸入PCB板料號" />
<span asp-validation-for="PcbPartNo" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">正背面</label>
<div class="layui-input-inline" style="width:200px;">
<input type="radio" asp-for="Side" value="11" title="B/背面" checked>
<input type="radio" asp-for="Side" value="12" title="A/正面">
</div>
<label class="layui-form-label">連板數</label>
<div class="layui-input-inline">
<input asp-for="Boards" class="layui-input" style="width: 70px;" />
<span asp-validation-for="Boards" class="layui-bg-red"></span>
</div>
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">標準張力_1</label>
<div class="layui-input-inline">
<input asp-for="StandardTension1" onkeyup="clearNoNum(this)" class="layui-input" style="width: 70px;" />
<span asp-validation-for="StandardTension1" class="layui-bg-red"></span>
</div>
<label class="layui-form-label">標準張力_2</label>
<div class="layui-input-inline">
<input asp-for="StandardTension2" onkeyup="clearNoNum(this)" class="layui-input" style="width: 70px;" />
<span asp-validation-for="StandardTension2" class="layui-bg-red"></span>
</div>
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">標準張力_3</label>
<div class="layui-input-inline">
<input asp-for="StandardTension3" onkeyup="clearNoNum(this)" class="layui-input" style="width: 70px;" />
<span asp-validation-for="StandardTension3" class="layui-bg-red"></span>
</div>
<label class="layui-form-label">標準張力_4</label>
<div class="layui-input-inline">
<input asp-for="StandardTension4" onkeyup="clearNoNum(this)" class="layui-input" style="width: 70px;" />
<span asp-validation-for="StandardTension4" class="layui-bg-red"></span>
</div>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">標準張力_5</label>
<div class="layui-input-inline">
<input asp-for="StandardTension5" onkeyup="clearNoNum(this)" class="layui-input" style="width: 70px;" />
<span asp-validation-for="StandardTension5" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">狀態</label>
<div class="layui-input-inline">
<input type="radio" asp-for="Status" value="1" title="有效" checked>
<input type="radio" asp-for="Status" value="0" title="失效">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">備註</label>
<div class="layui-input-block">
<input asp-for="Remark" class="layui-input" />
</div>
</div>
<span style="color: firebrick;word-break: break-all;" class="text-danger offset-sm-3">@Html.ValidationMessage("error")</span>
<div class="layui-row" style="text-align:center">
<div class="layui-col-md12">
<input type="submit" value="保存" class="layui-btn" />
</div>
</div>
</form>
</div>
</div>
</div>
@section Scripts {
@{ await Html.RenderPartialAsync("_ValidationScriptsPartial");
await Html.RenderPartialAsync("_FileinputScriptsPartial"); }
<script type="text/javascript">
layui.use(['form'], function () {
form = layui.form;
});
$(document).ready(function () {
var error = '@Html.ValidationMessage("error")';
if ($(error).text() != '') {
parent.hg.msg(error);
}
});
function clearNoNum(obj) {
//先把非數字的都替換掉,除了數字和.
obj.value = obj.value.replace(/[^\d.]/g, "");
}
</script>
}

199
AMESCoreStudio.Web/Views/PCB/PCB014.cshtml

@ -0,0 +1,199 @@
@{
ViewData["Title"] = "錫膏資料查詢";
Layout = "~/Views/Shared/_AMESLayout.cshtml";
}
<style type="text/css">
/*.layui-table-main .layui-table-cell {*/
/*height: auto !important;*/
/*white-space: normal;
}
.layui-table img {
max-width: 60px;
max-height: 28px;
}
.layui-tree-main {
cursor: pointer;
padding-right: 10px;
float: left;
border-width: 1px;
border-style: solid;
border-color: #e6e6e6;
margin: 10px 0;
}
.layui-table-cell {
height: auto;
white-space: normal;
}*/
</style>
<div class="layui-card">
<div class="layui-card-header">
<div class="layui-form">
<div class="layui-form-item">
<div class="layui-inline"><i class="fa fa-file-text-o fa-fw"></i> @ViewBag.Title</div>
</div>
</div>
</div>
<div class="layui-card-body">
<div class="layui-form">
<div class="layui-row">
<div class="layui-form-item">
<div class="layui-col-sm3">
<div class="layui-inline">
<label class="layui-form-label" style="width:60px">鋼板編號:</label>
<div class="layui-input-inline" style="width:150px">
<input id="steelPlateNo" name="steelPlateNo" autocomplete="off" oninput="let p=this.selectionStart;this.value=this.value.toUpperCase();this.setSelectionRange(p, p);" class="layui-input">
</div>
</div>
</div>
<div class="layui-col-sm3">
<div class="layui-inline">
<label class="layui-form-label" style="width:60px">PCB板號:</label>
<div class="layui-input-inline" style="width:150px">
<input id="pcbPartNo" name="pcbPartNo" autocomplete="off" oninput="let p=this.selectionStart;this.value=this.value.toUpperCase();this.setSelectionRange(p, p);" class="layui-input">
</div>
</div>
</div>
<div class="layui-col-sm2">
<div class="layui-inline">
<label class="layui-form-label" style="width:50px">正背面:</label>
<div class="layui-input-inline" style="width:80px">
<select id="Side" lay-filter="Side" name="Side" class="">
<option value="">全部</option>
<option value="11">B/背面</option>
<option value="12">A/正面</option>
</select>
</div>
</div>
</div>
<div class="layui-col-sm2">
<div class="layui-inline">
<label class="layui-form-label" style="width:50px">狀態:</label>
<div class="layui-input-inline" style="width:80px">
<select id="status" lay-filter="status" name="status" class="">
<option value="">全部</option>
<option value="0">失效</option>
<option value="1">有效</option>
</select>
</div>
</div>
</div>
<div class="layui-col-sm1">
<div class="layui-inline layui-show-xs-block">
<button class="layui-btn layui-btn-sm layui-btn-normal" lay-submit lay-filter="querysubmit">
<i class="layui-icon layui-icon-sm">&#xe615;</i>
</button>
</div>
</div>
</div>
</div>
</div>
<table class="layui-hide" id="query" lay-filter="query"></table>
</div>
</div>
@section Scripts{
<script type="text/javascript">
layui.use(['form', 'layer', 'laydate'], function () {
form = layui.form;
//laydate = layui.laydate;
//laydate.render({
// elem: '#dateStr'
// , trigger: 'click'
// , format: 'yyyy/MM/dd'
// , theme: 'grid'
//});
//laydate.render({
// elem: '#dateEnd'
// , trigger: 'click'
// , format: 'yyyy/MM/dd'
// , theme: 'grid'
//});
//form.on('select(factory)', function (data) {
// $("#factoryID").val(data.value);
// //roleName = data.elem[data.elem.selectedIndex].text;
// var qs = $('button[lay-filter="querysubmit"]');
// qs.click();
// //hg.msghide("刷新数据!");
// //table && table.reload();
//});
});
//监听表单提交事件
hg.form.onsubmit('querysubmit', function (data) {
hg.msghide("重新載入資料..");
table && table.reload(data);
});
var tableCols = [[
{
field: 'solderPasteNo',
title: '錫膏編號',
sort: true
},
{
field: 'description',
title: '規格描述',
},
{
field: 'receiptDate',
title: '收貨日期',
sort: true
},
{
field: 'manufactoringDate',
title: '製造日期',
sort: true
},
{
field: 'effectiveDate',
title: '有效日期',
sort: true
},
{
field: 'statusName',
width: 70,
title: '狀態'
},
{
title: '操作',
align: 'center',
width: 80,
templet: function (d) {
return '<a class="layui-btn layui-btn-warm layui-btn-xs layui-icon layui-icon-edit" lay-event="edit">修改</a>'
}
}
]];
//通过行tool编辑,lay-event="edit"
function edit(obj) {
if (obj.data.steelPlateID) {
hg.open('修改錫膏基本資料', '/PCB/PCB014U?id=' + obj.data.steelPlateID, 700, 500);
}
}
//新增按鈕
var toolbar = [{
text: '新增',
layuiicon: '&#xe608;',
class: 'layui-btn',
handler: function () {
hg.open('新增錫膏基本資料', '/PCB/PCB014C', 700, 500);
}
}];
//基本数据表格
var table = hg.table.datatable('query', '錫膏基本查詢', '/PCB/PCB014Query', {}, tableCols, toolbar, true, 'full-100', ['filter', 'print', 'exports']);
// var table = hg.table.datatable('test', '條碼狀態維護', '/PCS/GetWipInfo', {}, tableCols, toolbar, true, 'full-100', ['filter', 'print', 'exports']);
</script>
}

121
AMESCoreStudio.Web/Views/PCB/PCB014C.cshtml

@ -0,0 +1,121 @@
@model AMESCoreStudio.WebApi.Models.AMES.SolderPasteInfo
@{ Layout = "~/Views/Shared/_AMESLayout.cshtml"; }
<style>
.control-label {
justify-content: flex-end !important;
}
</style>
<div class="layui-card">
<div class="layui-form">
<div class="col-sm-12">
<form enctype="multipart/form-data" method="post" asp-action="PCB014" class="layui-form">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<div class="layui-form-item">
<label class="layui-form-label">錫膏編號</label>
<div class="layui-input-inline">
<input asp-for="SolderPasteNo" class="layui-input" autocomplete="off" placeholder="請輸入錫膏編號" />
<span asp-validation-for="SolderPasteNo" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">規格描述</label>
<div class="layui-input-inline">
<input asp-for="Description" class="layui-input" autocomplete="off" placeholder="請輸入規格描述" />
<span asp-validation-for="Description" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">收貨日期</label>
<div class="layui-input-inline">
<input asp-for="ReceiptDate" class="layui-input"/>
<span asp-validation-for="ReceiptDate" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">有效日期</label>
<div class="layui-input-inline">
<input asp-for="EffectiveDate" class="layui-input"/>
<span asp-validation-for="EffectiveDate" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">製造日期</label>
<div class="layui-input-inline">
<input asp-for="ManufactoringDate" class="layui-input"/>
<span asp-validation-for="ManufactoringDate" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">狀態</label>
<div class="layui-input-inline">
<input type="radio" asp-for="Status" value="1" title="有效" checked>
<input type="radio" asp-for="Status" value="0" title="失效">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">備註</label>
<div class="layui-input-block">
<input asp-for="Remark" class="layui-input" />
</div>
</div>
<span style="color: firebrick;word-break: break-all;" class="text-danger offset-sm-3">@Html.ValidationMessage("error")</span>
<div class="layui-row" style="text-align:center">
<div class="layui-col-md12">
<input type="submit" value="保存" class="layui-btn" />
</div>
</div>
</form>
</div>
</div>
</div>
@section Scripts {
@{ await Html.RenderPartialAsync("_ValidationScriptsPartial");
await Html.RenderPartialAsync("_FileinputScriptsPartial"); }
<script type="text/javascript">
layui.use(['form', 'laydate', 'autocomplete'], function () {
var form = layui.form,
laydate = layui.laydate;
laydate.render({
elem: '#ReceiptDate'
, trigger: 'click'
, format: 'yyyy/MM/dd'
, theme: 'grid'
});
laydate.render({
elem: '#EffectiveDate'
, trigger: 'click'
, format: 'yyyy/MM/dd'
, theme: 'grid'
});
laydate.render({
elem: '#ManufactoringDate'
, trigger: 'click'
, format: 'yyyy/MM/dd'
, theme: 'grid'
});
}
$(document).ready(function () {
var error = '@Html.ValidationMessage("error")';
if ($(error).text() != '') {
parent.hg.msg(error);
}
});
</script>
}

122
AMESCoreStudio.Web/Views/PCB/PCB014U.cshtml

@ -0,0 +1,122 @@
@model AMESCoreStudio.WebApi.Models.AMES.SolderPasteInfo
@{ Layout = "~/Views/Shared/_AMESLayout.cshtml"; }
<style>
.control-label {
justify-content: flex-end !important;
}
</style>
<div class="layui-card">
<div class="row">
<div class="col-sm-12">
<form enctype="multipart/form-data" method="post" asp-action="PCB014" class="layui-form">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<input type="hidden" asp-for="SolderPasteID" value="@Model.SolderPasteID" />
<div class="layui-form-item">
<label class="layui-form-label">錫膏編號</label>
<div class="layui-input-inline">
<input asp-for="SolderPasteNo" class="layui-input" autocomplete="off" placeholder="請輸入錫膏編號" />
<span asp-validation-for="SolderPasteNo" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">規格描述</label>
<div class="layui-input-inline">
<input asp-for="Description" class="layui-input" autocomplete="off" placeholder="請輸入規格描述" />
<span asp-validation-for="Description" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">收貨日期</label>
<div class="layui-input-inline">
<input asp-for="ReceiptDate" class="layui-input" />
<span asp-validation-for="ReceiptDate" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">有效日期</label>
<div class="layui-input-inline">
<input asp-for="EffectiveDate" class="layui-input" />
<span asp-validation-for="EffectiveDate" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">製造日期</label>
<div class="layui-input-inline">
<input asp-for="ManufactoringDate" class="layui-input" />
<span asp-validation-for="ManufactoringDate" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">狀態</label>
<div class="layui-input-inline">
<input type="radio" asp-for="Status" value="1" title="有效" checked>
<input type="radio" asp-for="Status" value="0" title="失效">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">備註</label>
<div class="layui-input-block">
<input asp-for="Remark" class="layui-input" />
</div>
</div>
<span style="color: firebrick;word-break: break-all;" class="text-danger offset-sm-3">@Html.ValidationMessage("error")</span>
<div class="layui-row" style="text-align:center">
<div class="layui-col-md12">
<input type="submit" value="保存" class="layui-btn" />
</div>
</div>
</form>
</div>
</div>
</div>
@section Scripts {
@{ await Html.RenderPartialAsync("_ValidationScriptsPartial");
await Html.RenderPartialAsync("_FileinputScriptsPartial"); }
<script type="text/javascript">
layui.use(['form', 'laydate', 'autocomplete'], function () {
var form = layui.form,
laydate = layui.laydate;
laydate.render({
elem: '#ReceiptDate'
, trigger: 'click'
, format: 'yyyy/MM/dd'
, theme: 'grid'
});
laydate.render({
elem: '#EffectiveDate'
, trigger: 'click'
, format: 'yyyy/MM/dd'
, theme: 'grid'
});
laydate.render({
elem: '#ManufactoringDate'
, trigger: 'click'
, format: 'yyyy/MM/dd'
, theme: 'grid'
});
}
$(document).ready(function () {
var error = '@Html.ValidationMessage("error")';
if ($(error).text() != '') {
parent.hg.msg(error);
}
});
</script>
}

122
AMESCoreStudio.Web/Views/PCS/PCS027.cshtml

@ -1,7 +1,6 @@
@model AMESCoreStudio.WebApi.Models.AMES.MaterialSop
@{ ViewData["Title"] = "PCS030C";
@{ ViewData["Title"] = "組件批次刪除作業";
Layout = "~/Views/Shared/_AMESLayout.cshtml";
}
@ -12,64 +11,109 @@
</style>
<div class="layui-card">
<div class="col-sm-12">
<form enctype="multipart/form-data" method="post" asp-action="PCS030C" class="layui-form">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<input type="hidden" asp-for="MaterialSopID" />
<div class="layui-form-item">
<div class="layui-inline">
<label asp-for="ItemNo" class="layui-form-label"></label>
<div class="layui-input-inline">
<input asp-for="ItemNo" class="layui-input" placeholder="請輸入料號" />
<span asp-validation-for="ItemNo" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-card-header">
<div class="layui-inline"><i class="fa fa-file-text-o fa-fw"></i> @ViewBag.Title</div>
</div>
<form enctype="multipart/form-data" method="post" asp-action="PCS027" class="layui-form">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<div class="layui-row">
<div class="layui-col-xs1">
<label class="layui-form-label">組件類別</label>
</div>
<div class="layui-col-xs2">
<select asp-items="@ViewBag.ItemsList" class="">
<option value="">全部</option>
</select>
</div>
</div>
<div class="layui-row">
<div class="layui-col-xs1">
<input type="radio" name="a" value="P" title="工單號碼" checked="">
</div>
<div class="layui-col-xs2">
<input asp-for="ItemNo" class="layui-input" placeholder="請輸入料號" />
</div>
</div>
<div class="layui-form-item">
<label asp-for="UnitNo" class="layui-form-label"></label>
<div class="layui-input-inline">
<select lay-filter="unit" asp-for="UnitNo" asp-items="@ViewBag.FactoryUnitList" class=""></select>
</div>
<input id="unitNo" type="hidden" name="unitNo" value="0" />
<div class="layui-row">
<div class="layui-col-xs1">
<input type="radio" name="a" value="V" title="內部號碼">
</div>
<div class="layui-col-xs2">
<input asp-for="ItemNo" class="layui-input" placeholder="請輸入料號" />
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline">
<label asp-for="FileName" class="layui-form-label"></label>
<div class="layui-row">
<div class="layui-col-xs1">
<input type="radio" name="a" value="R" title="多筆條碼">
</div>
<div class="layui-col-xs3">
<label class="layui-btn">
<input type="file" id="formFile" accept="application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet">
</label>
</div>
<div class="layui-col-xs2">
<a class="layui-btn layui-btn-sm layui-btn-normal" id="attachment" title="文件上傳" lay-submit lay-filter="attachment">
<i class="layui-icon layui-icon-sm">&#xe62f;</i>
</a>
</div>
</div>
<label class="layui-btn">
<input type="file" name="formFile" style="display:none;">
<i class="layui-icon">&#xe67c;</i>上傳文件
</label>
</div>
<div class="layui-row">
<div class="layui-col-xs1">
<label class="layui-form-label"></label>
</div>
<div class="layui-col-xs11">
<textarea class="layui-textarea" type="text"></textarea>
</div>
</div>
<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-input-block">
<input type="submit" value="保存" class="layui-btn" />
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<input type="submit" value="查詢" class="layui-btn" />
</div>
</form>
</div>
</div>
<table class="layui-hide" id="query" lay-filter="query"></table>
</form>
</div>
@section Scripts {
@{ await Html.RenderPartialAsync("_ValidationScriptsPartial");
await Html.RenderPartialAsync("_FileinputScriptsPartial"); }
<script type="text/javascript">
layui.use(['form'], function () {
form = layui.form;
});
layui.use(['form'], function () {
form = layui.form;
});
$(document).ready(function () {
var error = '@Html.ValidationMessage("error")';
if ($(error).text() != '') {
parent.hg.msg(error);
}
});
$(function () {
$("#attachment").click(function () {
var files = $('#formFile').prop("files");
formData = new FormData();
formData.append("Uploader", files[0]);
$.ajax({
type: "POST",
url: "@Url.Action("PCS027_Excel", "PCS")",
contentType: false,
processData: false,
cache: false,
data: formData,
success: function (message) {
alert(message.data);
},
error: function () {
alert("上传文件出现错误!");
}
});
});
});
</script>
}

64
AMESCoreStudio.WebApi/Controllers/AMES/SolderPasteInfoController.cs

@ -7,6 +7,7 @@ using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using AMESCoreStudio.WebApi;
using AMESCoreStudio.WebApi.Models.AMES;
using AMESCoreStudio.WebApi.DTO.AMES;
using AMESCoreStudio.CommonTools.Result;
namespace AMESCoreStudio.WebApi.Controllers.AMES
@ -46,6 +47,67 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
return solderPasteInfo;
}
/// <summary>
/// 錫膏資料查詢
/// </summary>
/// <param name="solderPasteNo">錫膏編號</param>
/// <param name="pcbPartNo">PCB板號</param>
/// <param name="side">正背面</param>
/// <param name="status">狀態</param>
/// <param name="page">頁數</param>
/// <param name="limit">筆數</param>
/// <returns></returns>
[HttpGet("SolderPasteInfoQuery")]
public async Task<ResultModel<SolderPasteInfoDto>> GetSolderPasteInfo(string solderPasteNo, string pcbPartNo, string side
, string status, int page = 0, int limit = 10)
{
var q = await _context.SolderPasteInfos.ToListAsync();
if (!string.IsNullOrWhiteSpace(solderPasteNo))
{
q = q.Where(w => w.SolderPasteNo.Contains(solderPasteNo)).ToList();
}
//if (!string.IsNullOrWhiteSpace(pcbPartNo))
//{
// q = q.Where(w => w.PcbPartNo.Contains(pcbPartNo)).ToList();
//}
//if (!string.IsNullOrWhiteSpace(side))
//{
// q = q.Where(w => w.Side.ToString() == side).ToList();
//}
if (!string.IsNullOrWhiteSpace(status))
{
q = q.Where(w => w.Status == status).ToList();
}
ResultModel<SolderPasteInfoDto> result = new ResultModel<SolderPasteInfoDto>();
// Table 頁數
if (page > 0)
{
q = q.Skip((page - 1) * limit).Take(limit).ToList();
}
// 紀錄筆數
result.DataTotal = q.Count();
result.Data = q.Select(s => new SolderPasteInfoDto
{
SolderPasteID = s.SolderPasteID,
SolderPasteNo = s.SolderPasteNo,
Description = s.Description,
EffectiveDate = s.EffectiveDate,
ManufactoringDate = s.ManufactoringDate,
ReceiptDate = s.ReceiptDate,
StatusName = s.Status == "0" ? "失效" : "有效",
Remark = s.Remark
}).ToList();
return result;
}
/// <summary>
/// 更新錫膏基本資料檔
/// </summary>
@ -56,8 +118,6 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
{
ResultModel<SolderPasteInfo> result = new ResultModel<SolderPasteInfo>();
_context.Entry(solderPasteInfo).State = EntityState.Modified;
solderPasteInfo.UpdateDate = DateTime.Now;
solderPasteInfo.UpdateUserID = 0;
try
{

17
AMESCoreStudio.WebApi/Controllers/AMES/SteelPlateInfoController.cs

@ -47,6 +47,21 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
return steelPlateInfo;
}
/// <summary>
/// By 鋼板編號 查詢
/// </summary>
/// <param name="id">鋼板編號</param>
/// <returns></returns>
[HttpGet("ByNo/{id}")]
public async Task<ActionResult<IEnumerable<SteelPlateInfo>>> GetSteelPlateInfoByNo(string id)
{
var steelPlateInfos = await _context.SteelPlateInfos.Where(w => w.SteelPlateNo == id.ToUpper())
.ToListAsync();
return steelPlateInfos;
}
/// <summary>
/// 鋼板資料查詢
/// </summary>
@ -123,8 +138,6 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
{
ResultModel<SteelPlateInfo> result = new ResultModel<SteelPlateInfo>();
_context.Entry(steelPlateInfo).State = EntityState.Modified;
steelPlateInfo.UpdateDate = DateTime.Now;
steelPlateInfo.UpdateUserID = 0;
try
{

2
AMESCoreStudio.WebApi/DTO/AMES/SolderPasteInfoDto.cs

@ -44,7 +44,7 @@ namespace AMESCoreStudio.WebApi.DTO.AMES
/// <summary>
/// 狀態 0=失效 ; 1=有效
/// </summary>
public string Status { get; set; } = "1";
public string StatusName { get; set; } = "1";
/// <summary>
/// 備註

Loading…
Cancel
Save