Browse Source

1. 錫膏程式上傳

PTD
Ray 2 years ago
parent
commit
83ed59ce25
  1. 22
      AMESCoreStudio.Web/Controllers/PCBController.cs
  2. 16
      AMESCoreStudio.Web/HttpApis/AMES/IPCB.cs
  3. 37
      AMESCoreStudio.Web/Views/PCB/PCB014.cshtml
  4. 119
      AMESCoreStudio.Web/Views/PCB/PCB014C.cshtml
  5. 10
      AMESCoreStudio.Web/Views/PCB/PCB014U.cshtml
  6. 5
      AMESCoreStudio.WebApi/Controllers/AMES/SolderPasteInfoController.cs
  7. 14
      AMESCoreStudio.WebApi/Models/AMES/SolderPasteInfo.cs

22
AMESCoreStudio.Web/Controllers/PCBController.cs

@ -220,16 +220,14 @@ namespace AMESCoreStudio.Web.Controllers
return View(); return View();
} }
public async Task<IActionResult> PCB014QueryAsync(string steelPlateNo, string pcbPartNo public async Task<IActionResult> PCB014QueryAsync(string solderPasteNo, string status, int page = 0, int limit = 10)
, string side, string status, int page = 0, int limit = 10)
{ {
//IResultModel<SteelPlateInfoDto> result = await _pcbApi.GetSolderPasteInfoQuery(steelPlateNo: steelPlateNo, pcbPartNo: pcbPartNo IResultModel<SolderPasteInfoDto> result = await _pcbApi.GetSolderPasteInfoQuery(solderPasteNo: solderPasteNo, status: status, page: page, limit: limit);
//, side: side, status: status, page: page, limit: limit);
//if (result.Data.Count() != 0) if (result.Data.Count() != 0)
//{ {
// return Json(new Table() { code = 0, msg = "", data = result.Data, count = result.DataTotal }); return Json(new Table() { code = 0, msg = "", data = result.Data, count = result.DataTotal });
//} }
return Json(new Table() { count = 0, data = null }); return Json(new Table() { count = 0, data = null });
} }
@ -249,12 +247,12 @@ namespace AMESCoreStudio.Web.Controllers
//頁面提交,id=0 添加,id>0 修改 //頁面提交,id=0 添加,id>0 修改
[HttpPost] [HttpPost]
public async Task<IActionResult> PCB014Async(SteelPlateInfo model) public async Task<IActionResult> PCB014Async(SolderPasteInfo model)
{ {
if (ModelState.IsValid) if (ModelState.IsValid)
{ {
IResultModel result; IResultModel result;
if (model.SteelPlateID == 0) if (model.SolderPasteID == 0)
{ {
model.CreateUserID = GetLogInUserID(); model.CreateUserID = GetLogInUserID();
model.CreateDate = DateTime.Now; model.CreateDate = DateTime.Now;
@ -271,7 +269,7 @@ namespace AMESCoreStudio.Web.Controllers
if (result.Success) if (result.Success)
{ {
var _msg = model.SteelPlateID == 0 ? "新增成功!" : "修改成功!"; var _msg = model.SolderPasteID == 0 ? "新增成功!" : "修改成功!";
return RedirectToAction("Refresh", "Home", new { msg = _msg }); return RedirectToAction("Refresh", "Home", new { msg = _msg });
} }
else else
@ -281,7 +279,7 @@ namespace AMESCoreStudio.Web.Controllers
} }
} }
if (model.SteelPlateID == 0) if (model.SolderPasteID == 0)
{ {
return View("PCB014C", model); return View("PCB014C", model);
} }

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

@ -516,42 +516,40 @@ namespace AMESCoreStudio.Web
#region PCB014 錫膏使用管控 #region PCB014 錫膏使用管控
/// <summary> /// <summary>
/// 鋼板資料查詢 /// 錫膏資料查詢
/// </summary> /// </summary>
/// <param name="steelPlateNo">鋼板編號</param> /// <param name="solderPasteNo">錫膏編號</param>
/// <param name="pcbPartNo">PCB板號</param>
/// <param name="side">正背面</param>
/// <param name="status">狀態</param> /// <param name="status">狀態</param>
/// <param name="page">頁數</param> /// <param name="page">頁數</param>
/// <param name="limit">筆數</param> /// <param name="limit">筆數</param>
/// <returns></returns> /// <returns></returns>
[WebApiClient.Attributes.HttpGet("api/SolderPasteInfo/SolderPasteInfoQuery")] [WebApiClient.Attributes.HttpGet("api/SolderPasteInfo/SolderPasteInfoQuery")]
ITask<ResultModel<SolderPasteInfoDto>> GetSolderPasteInfoQuery(string steelPlateNo = null, string pcbPartNo = null ITask<ResultModel<SolderPasteInfoDto>> GetSolderPasteInfoQuery(string solderPasteNo = null, string pcbPartNo = null
, string side = null, string status = null, int page = 0, int limit = 10); , string side = null, string status = null, int page = 0, int limit = 10);
/// <summary> /// <summary>
/// 新增鋼板資料 /// 新增錫膏資料
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[WebApiClient.Attributes.HttpPost("api/SolderPasteInfo")] [WebApiClient.Attributes.HttpPost("api/SolderPasteInfo")]
ITask<ResultModel<SolderPasteInfo>> PostSolderPasteInfo([FromBody, RawJsonContent] string model); ITask<ResultModel<SolderPasteInfo>> PostSolderPasteInfo([FromBody, RawJsonContent] string model);
/// <summary> /// <summary>
/// 更新鋼板資料 /// 更新錫膏資料
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[WebApiClient.Attributes.HttpPut("api/SolderPasteInfo")] [WebApiClient.Attributes.HttpPut("api/SolderPasteInfo")]
ITask<ResultModel<SolderPasteInfo>> PutSolderPasteInfo([FromBody, RawJsonContent] string model); ITask<ResultModel<SolderPasteInfo>> PutSolderPasteInfo([FromBody, RawJsonContent] string model);
/// <summary> /// <summary>
/// 查詢鋼板資料 ID /// 查詢錫膏資料 ID
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[WebApiClient.Attributes.HttpGet("api/SolderPasteInfo/{id}")] [WebApiClient.Attributes.HttpGet("api/SolderPasteInfo/{id}")]
ITask<SolderPasteInfo> GetSolderPasteInfo(int id); ITask<SolderPasteInfo> GetSolderPasteInfo(int id);
/// <summary> /// <summary>
/// 查詢鋼板資料 By No /// 查詢錫膏資料 By No
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[WebApiClient.Attributes.HttpGet("api/SolderPasteInfo/ByNo/{id}")] [WebApiClient.Attributes.HttpGet("api/SolderPasteInfo/ByNo/{id}")]

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

@ -45,29 +45,9 @@
<div class="layui-form-item"> <div class="layui-form-item">
<div class="layui-col-sm3"> <div class="layui-col-sm3">
<div class="layui-inline"> <div class="layui-inline">
<label class="layui-form-label" style="width:60px">鋼板編號:</label> <label class="layui-form-label" style="width:60px">錫膏編號:</label>
<div class="layui-input-inline" style="width:150px"> <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"> <input id="solderPasteNo" name="solderPasteNo" 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>
</div> </div>
@ -148,17 +128,20 @@
{ {
field: 'receiptDate', field: 'receiptDate',
title: '收貨日期', title: '收貨日期',
sort: true sort: true,
templet: '<div>{{ layui.util.toDateString(d.receiptDate, "yyyy/MM/dd") }}</div>'
}, },
{ {
field: 'manufactoringDate', field: 'manufactoringDate',
title: '製造日期', title: '製造日期',
sort: true sort: true,
templet: '<div>{{ layui.util.toDateString(d.manufactoringDate, "yyyy/MM/dd") }}</div>'
}, },
{ {
field: 'effectiveDate', field: 'effectiveDate',
title: '有效日期', title: '有效日期',
sort: true sort: true,
templet: '<div>{{ layui.util.toDateString(d.effectiveDate, "yyyy/MM/dd") }}</div>'
}, },
{ {
field: 'statusName', field: 'statusName',
@ -176,8 +159,8 @@
]]; ]];
//通过行tool编辑,lay-event="edit" //通过行tool编辑,lay-event="edit"
function edit(obj) { function edit(obj) {
if (obj.data.steelPlateID) { if (obj.data.solderPasteID) {
hg.open('修改錫膏基本資料', '/PCB/PCB014U?id=' + obj.data.steelPlateID, 700, 500); hg.open('修改錫膏基本資料', '/PCB/PCB014U?id=' + obj.data.solderPasteID, 700, 500);
} }
} }

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

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

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

@ -19,7 +19,7 @@
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">錫膏編號</label> <label class="layui-form-label">錫膏編號</label>
<div class="layui-input-inline"> <div class="layui-input-inline">
<input asp-for="SolderPasteNo" class="layui-input" autocomplete="off" placeholder="請輸入錫膏編號" /> <input asp-for="SolderPasteNo" class="layui-input" autocomplete="off" placeholder="請輸入錫膏編號" readonly="" />
<span asp-validation-for="SolderPasteNo" class="layui-bg-red"></span> <span asp-validation-for="SolderPasteNo" class="layui-bg-red"></span>
</div> </div>
</div> </div>
@ -87,9 +87,9 @@
await Html.RenderPartialAsync("_FileinputScriptsPartial"); } await Html.RenderPartialAsync("_FileinputScriptsPartial"); }
<script type="text/javascript"> <script type="text/javascript">
layui.use(['form', 'laydate', 'autocomplete'], function () { layui.use(['form', 'laydate'], function () {
var form = layui.form, var form = layui.form,
laydate = layui.laydate; laydate = layui.laydate
laydate.render({ laydate.render({
elem: '#ReceiptDate' elem: '#ReceiptDate'
@ -109,13 +109,15 @@
, format: 'yyyy/MM/dd' , format: 'yyyy/MM/dd'
, theme: 'grid' , theme: 'grid'
}); });
} });
$(document).ready(function () { $(document).ready(function () {
var error = '@Html.ValidationMessage("error")'; var error = '@Html.ValidationMessage("error")';
if ($(error).text() != '') { if ($(error).text() != '') {
parent.hg.msg(error); parent.hg.msg(error);
} }
}); });
</script> </script>

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

@ -51,15 +51,12 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
/// 錫膏資料查詢 /// 錫膏資料查詢
/// </summary> /// </summary>
/// <param name="solderPasteNo">錫膏編號</param> /// <param name="solderPasteNo">錫膏編號</param>
/// <param name="pcbPartNo">PCB板號</param>
/// <param name="side">正背面</param>
/// <param name="status">狀態</param> /// <param name="status">狀態</param>
/// <param name="page">頁數</param> /// <param name="page">頁數</param>
/// <param name="limit">筆數</param> /// <param name="limit">筆數</param>
/// <returns></returns> /// <returns></returns>
[HttpGet("SolderPasteInfoQuery")] [HttpGet("SolderPasteInfoQuery")]
public async Task<ResultModel<SolderPasteInfoDto>> GetSolderPasteInfo(string solderPasteNo, string pcbPartNo, string side public async Task<ResultModel<SolderPasteInfoDto>> GetSolderPasteInfo(string solderPasteNo , string status, int page = 0, int limit = 10)
, string status, int page = 0, int limit = 10)
{ {
var q = await _context.SolderPasteInfos.ToListAsync(); var q = await _context.SolderPasteInfos.ToListAsync();

14
AMESCoreStudio.WebApi/Models/AMES/SolderPasteInfo.cs

@ -13,6 +13,7 @@ namespace AMESCoreStudio.WebApi.Models.AMES
/// 錫膏基本資料檔 /// 錫膏基本資料檔
/// </summary> /// </summary>
[Table("SOLDER_PASTE_INFO", Schema = "JHAMES")] [Table("SOLDER_PASTE_INFO", Schema = "JHAMES")]
[DataContract]
public partial class SolderPasteInfo public partial class SolderPasteInfo
{ {
/// <summary> /// <summary>
@ -48,7 +49,10 @@ namespace AMESCoreStudio.WebApi.Models.AMES
/// </summary> /// </summary>
[DataMember] [DataMember]
[Display(Name = "收貨日期")] [Display(Name = "收貨日期")]
[Column("RECEIPT_DATE", TypeName = "DATE")] [Column("RECEIPT_DATE")]
[Required(ErrorMessage = "{0},不能空白")]
[DataType(DataType.Text), DisplayFormat(DataFormatString = "{0:yyyy/MM/dd}", ApplyFormatInEditMode = true)]
public DateTime ReceiptDate { get; set; } public DateTime ReceiptDate { get; set; }
/// <summary> /// <summary>
@ -56,7 +60,9 @@ namespace AMESCoreStudio.WebApi.Models.AMES
/// </summary> /// </summary>
[DataMember] [DataMember]
[Display(Name = "製造日期")] [Display(Name = "製造日期")]
[Column("MANUFACTORING_DATE", TypeName = "DATE")] [Column("MANUFACTORING_DATE")]
[Required(ErrorMessage = "{0},不能空白")]
[DataType(DataType.Text), DisplayFormat(DataFormatString = "{0:yyyy/MM/dd}", ApplyFormatInEditMode = true)]
public DateTime ManufactoringDate { get; set; } public DateTime ManufactoringDate { get; set; }
/// <summary> /// <summary>
@ -64,7 +70,9 @@ namespace AMESCoreStudio.WebApi.Models.AMES
/// </summary> /// </summary>
[DataMember] [DataMember]
[Display(Name = "有效日期")] [Display(Name = "有效日期")]
[Column("EFFECTIVE_DATE", TypeName = "DATE")] [Column("EFFECTIVE_DATE")]
[Required(ErrorMessage = "{0},不能空白")]
[DataType(DataType.Text), DisplayFormat(DataFormatString = "{0:yyyy/MM/dd}", ApplyFormatInEditMode = true)]
public DateTime EffectiveDate { get; set; } public DateTime EffectiveDate { get; set; }
/// <summary> /// <summary>

Loading…
Cancel
Save