diff --git a/AMESCoreStudio.Web/AMESCoreStudio.Web.csproj b/AMESCoreStudio.Web/AMESCoreStudio.Web.csproj index 67bc8342..0ab26e5e 100644 --- a/AMESCoreStudio.Web/AMESCoreStudio.Web.csproj +++ b/AMESCoreStudio.Web/AMESCoreStudio.Web.csproj @@ -41,8 +41,4 @@ - - - - diff --git a/AMESCoreStudio.Web/Controllers/SPCController.cs b/AMESCoreStudio.Web/Controllers/SPCController.cs new file mode 100644 index 00000000..a8365d1c --- /dev/null +++ b/AMESCoreStudio.Web/Controllers/SPCController.cs @@ -0,0 +1,886 @@ +using Microsoft.AspNetCore.Mvc; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using AMESCoreStudio.Web.Models; +using Newtonsoft.Json; +using AMESCoreStudio.WebApi; +using System.Collections.Generic; +using Microsoft.AspNetCore.Mvc.Rendering; +using AMESCoreStudio.WebApi.Models.AMES; +using AMESCoreStudio.WebApi.Models.BAS; +using AMESCoreStudio.CommonTools.Result; + +namespace AMESCoreStudio.Web.Controllers +{ + public class SPCController : Controller + { + private readonly ILogger _logger; + public readonly ISPC _spcApi; + public readonly IWHS _whsApi; + public readonly IBAS _basApi; + public readonly IPCS _pcsApi; + public readonly ISYS _sysApi; + public readonly IPPS _ppsApi; + + public SPCController(ILogger logger, ISPC spcApi, IWHS whsApi,IBAS basApi, IPCS pcsApi, ISYS sysApi, IPPS ppsApi) + { + _logger = logger; + _spcApi = spcApi; + _whsApi = whsApi; + _basApi = basApi; + _pcsApi = pcsApi; + _sysApi = sysApi; + _ppsApi = ppsApi; + } + + + #region + private void GetFlagList() + { + + var FlagList = new List(); + + + FlagList.Add(new SelectListItem("Y", "Y")); + FlagList.Add(new SelectListItem("N", "N")); + + ViewBag.FlagList = FlagList; + } + private async Task GetWorkGroupsList() + { + var result = await _whsApi.GetWorkGroups(); + + var GroupList = new List(); + for (int i = 0; i < result.Count; i++) + { + GroupList.Add(new SelectListItem(result[i].GroupName, result[i].GroupID.ToString())); + } + ViewBag.GroupList = GroupList; + } + private async Task GetWorkClassList() + { + var result = await _whsApi.GetWorkClasses(); + + var GroupList = new List(); + for (int i = 0; i < result.Count; i++) + { + GroupList.Add(new SelectListItem(result[i].ClassName, result[i].ClassID.ToString())); + } + ViewBag.WClassList = GroupList; + } + private async Task GetFactoryUnitsList() + { + var result = await _basApi.GetFactoryUnits(); + + var UnitItems = new List(); + UnitItems.Add(new SelectListItem("全部", "0")); + for (int i = 0; i < result.Count; i++) + { + UnitItems.Add(new SelectListItem(result[i].UnitName, result[i].UnitNo.ToString())); + } + ViewBag.FactoryUnit = UnitItems; + } + private async Task GetFactoryUnitsList2() + { + var result = await _basApi.GetFactoryUnits(); + + var UnitItems = new List(); + for (int i = 0; i < result.Count; i++) + { + UnitItems.Add(new SelectListItem(result[i].UnitName, result[i].UnitNo.ToString())); + } + UnitItems.Add(new SelectListItem("其他", "0")); + + ViewBag.FactoryUnit = UnitItems; + } + private async Task GetFactoryList() + { + var result = await _basApi.GetFactoryInfoes(); + + var FactoryItems = new List(); + for (int i = 0; i < result.Count; i++) + { + FactoryItems.Add(new SelectListItem(result[i].FactoryNameCh, result[i].FactoryID.ToString())); + } + ViewBag.FactoryList = FactoryItems; + } + private async Task GetLineList2() + { + var result = await _basApi.GetLineInfoes(); + + var LineItems = new List(); + for (int i = 0; i < result.Count; i++) + { + LineItems.Add(new SelectListItem(result[i].LineDesc, result[i].LineID.ToString())); + } + ViewBag.LineList = LineItems; + } + private async Task GetDeptList() + { + var result = await _sysApi.GetDeptInfoes(); + + var DeptItems = new List(); + DeptItems.Add(new SelectListItem("N/A", "0")); + for (int i = 0; i < result.Count; i++) + { + DeptItems.Add(new SelectListItem(result[i].DeptName, result[i].DeptID.ToString())); + } + ViewBag.DeptList = DeptItems; + } + private async Task GetDeptList2() + { + var result = await _sysApi.GetDeptInfoes(); + + var DeptItems = new List(); + for (int i = 0; i < result.Count; i++) + { + DeptItems.Add(new SelectListItem(result[i].DeptName, result[i].DeptID.ToString())); + } + ViewBag.DeptList = DeptItems; + } + private void GetSideList() + { + + var SideItems = new List() ; + SideItems.Add(new SelectListItem("N/A", "N/A")); + SideItems.Add(new SelectListItem("正面", "正面")); + SideItems.Add(new SelectListItem("背面", "背面")); + + ViewBag.SideList = SideItems; + } + private void GetClassList() + { + + var ClassItems = new List(); + ClassItems.Add(new SelectListItem("白班", "1")); + ClassItems.Add(new SelectListItem("夜班", "2")); + + ViewBag.ClassList = ClassItems; + } + private async Task GetStationListByUnit(string unit) + { + var result = await _basApi.GetStationses(); + + var StationItems = new List(); + StationItems.Add(new SelectListItem("N/A", "0")); + for (int i = 0; i < result.Count; i++) + { + if(result[i].UnitNo==unit) + StationItems.Add(new SelectListItem(result[i].StationName, result[i].StationID.ToString())); + } + if(StationItems.Count==0) + StationItems.Add(new SelectListItem("N/A", "")); + + ViewBag.StationList = StationItems; + } + + + #endregion + #region + private void GetTESTList() + { + + var FlagList = new List(); + + + FlagList.Add(new SelectListItem("Y", "Y")); + FlagList.Add(new SelectListItem("N", "N")); + + ViewBag.FlagList = FlagList; + } + private async Task GetInspectionTypesList() + { + var result = await _spcApi.GetInspectionTypes(); + + var GroupList = new List(); + for (int i = 0; i < result.Count; i++) + { + GroupList.Add(new SelectListItem(result[i].InspectionNo, result[i].InspectionTypeID.ToString())); + } + ViewBag.TypesList = GroupList; + } + private async Task GetInspectionFormsList() + { + var result = await _spcApi.GetInspectionForms(); + + var GroupList = new List(); + for (int i = 0; i < result.Count; i++) + { + GroupList.Add(new SelectListItem(result[i].InspectionName, result[i].InspectionFormID.ToString())); + } + ViewBag.FromsList = GroupList; + } + private async Task GetFactoryUnitsList3() + { + var result = await _basApi.GetFactoryUnits(); + + var UnitItems = new List(); + for (int i = 0; i < result.Count; i++) + { + UnitItems.Add(new SelectListItem(result[i].UnitName, result[i].UnitNo.ToString())); + } + ViewBag.FactoryUnit = UnitItems; + } + private async Task GetStationList() + { + var result = await _basApi.GetStationses(); + + var StationItems = new List(); + StationItems.Add(new SelectListItem("N/A", "0")); + for (int i = 0; i < result.Count; i++) + { + StationItems.Add(new SelectListItem(result[i].StationName, result[i].StationID.ToString())); + } + ViewBag.StationList = StationItems; + } + private async Task GetLineList() + { + var result = await _basApi.GetLineInfoes(); + + var LineItems = new List(); + LineItems.Add(new SelectListItem("N/A", "0")); + for (int i = 0; i < result.Count; i++) + { + LineItems.Add(new SelectListItem(result[i].LineDesc, result[i].LineID.ToString())); + } + ViewBag.LineList = LineItems; + } + + #endregion + + #region SPC001 巡檢類別維護相關 + + public IActionResult SPC001() + { + return View(); + } + + //新增頁面 + public IActionResult SPC001C() + { + return View(); + } + + //修改页面 + [HttpGet] + public async Task SPC001UAsync(int id) + { + var result = await _spcApi.GetInspectionType(id); + + if (result.Count == 0) + { + return View(); + } + return View(result[0]); + } + + public async Task SPC001DAsync(int id) + { + var result = await _spcApi.DeleteInspectionType(id); + return Json(new Result() { success = true, msg = "" }); + } + + //頁面提交,id=0 添加,id>0 修改 + [HttpPost] + public async Task SPC001CSaveAsync(InspectionType model) + { + if (ModelState.IsValid) + { + IResultModel result; + + result = await _spcApi.PostInspectionType(JsonConvert.SerializeObject(model)); + + + if (!result.Success) + { + var _msg = "添加成功!"; + return RedirectToAction("Refresh", "Home", new { msg = _msg }); + } + else + { + if (result.Errors.Count > 0) + { + ModelState.AddModelError(result.Errors[0].Id, result.Errors[0].Msg); + } + else + { + ModelState.AddModelError("error", result.Msg); + } + } + } + return View("SPC001C", model); + } + + public async Task SPC001USaveAsync(InspectionType model) + { + if (ModelState.IsValid) + { + IResultModel result; + + result = await _spcApi.PutInspectionType(model.InspectionTypeID, JsonConvert.SerializeObject(model)); + + if (!result.Success) + { + var _msg = "修改成功!"; + return RedirectToAction("Refresh", "Home", new { msg = _msg }); + } + else + { + if (result.Errors.Count > 0) + { + ModelState.AddModelError(result.Errors[0].Id, result.Errors[0].Msg); + } + else + { + ModelState.AddModelError("error", result.Msg); + } + } + } + return View("SPC001U", model); + } + + [ResponseCache(Duration = 0)] + [HttpGet] + public async Task GetInspectionTypesAsync() + { + var result = await _spcApi.GetInspectionTypes(); + + if (result.Count > 0) + { + return Json(new Table() { code = 0, msg = "", data = result, count = result.Count }); + } + + return Json(new Table() { count = 0, data = null }); + } + + #endregion + + #region SPC002巡檢表單維護相關 + + public async Task SPC002() + { + await GetInspectionTypesList(); + return View(); + } + + //新增頁面 + public async Task SPC002C() + { + await GetInspectionTypesList(); + await GetFactoryUnitsList3(); + return View(); + } + + //修改页面 + [HttpGet] + public async Task SPC002UAsync(int id) + { + await GetInspectionTypesList(); + await GetFactoryUnitsList3(); + var result = await _spcApi.GetInspectionForm(id); + + if (result.Count == 0) + { + return View(); + } + return View(result[0]); + } + + public async Task SPC002DAsync(int id) + { + var result = await _spcApi.DeleteInspectionForm(id); + return Json(new Result() { success = true, msg = "" }); + } + + //頁面提交,id=0 添加,id>0 修改 + [HttpPost] + public async Task SPC002CSaveAsync(InspectionForm model) + { + if (ModelState.IsValid) + { + IResultModel result; + + result = await _spcApi.PostInspectionForm(JsonConvert.SerializeObject(model)); + + + if (!result.Success) + { + var _msg = "添加成功!"; + return RedirectToAction("Refresh", "Home", new { msg = _msg }); + } + else + { + if (result.Errors.Count > 0) + { + ModelState.AddModelError(result.Errors[0].Id, result.Errors[0].Msg); + } + else + { + ModelState.AddModelError("error", result.Msg); + } + } + } + return View("SPC002C", model); + } + + public async Task SPC002USaveAsync(InspectionForm model) + { + if (ModelState.IsValid) + { + IResultModel result; + + result = await _spcApi.PutInspectionForm(model.InspectionFormID, JsonConvert.SerializeObject(model)); + + if (!result.Success) + { + var _msg = "修改成功!"; + return RedirectToAction("Refresh", "Home", new { msg = _msg }); + } + else + { + if (result.Errors.Count > 0) + { + ModelState.AddModelError(result.Errors[0].Id, result.Errors[0].Msg); + } + else + { + ModelState.AddModelError("error", result.Msg); + } + } + } + return View("SPC002U", model); + } + + [ResponseCache(Duration = 0)] + [HttpGet] + public async Task GetInspectionFormsAsync() + { + var result = await _spcApi.GetInspectionForms(); + + if (result.Count > 0) + { + return Json(new Table() { code = 0, msg = "", data = result, count = result.Count }); + } + + return Json(new Table() { count = 0, data = null }); + } + [HttpGet] + public async Task GetInspectionFormsByQueryAsync(int id,string status) + { + if(id == 0) + return Json(new Table() { count = 0, data = null }); + + var result = await _spcApi.GetInspectionFormsByQuery(id, status); + + if (result.Count > 0) + { + return Json(new Table() { code = 0, msg = "", data = result, count = result.Count }); + } + + return Json(new Table() { count = 0, data = null }); + } + + #endregion + + #region SPC003巡檢細項維護相關 + public async Task SPC003() + { + await GetInspectionTypesList(); + await GetInspectionFormsList(); + return View(); + } + //新增頁面 + public async Task SPC003C(int id) + { + //await GetStationListByUnit(unit); + var result = await _spcApi.GetInspectionForm(id); + ViewBag.FormID = result[0].InspectionFormID; + ViewBag.FormName = "正在新增["+result[0].InspectionName+"]細項"; + return View(); + } + //修改页面 + [HttpGet] + public async Task SPC003UAsync(int id) + { + var result = await _spcApi.GetInspectionItem(id); + + if (result.Count == 0) + { + return View(); + } + + var resultForm = await _spcApi.GetInspectionForm(result[0].InspectionFormID); + ViewBag.FormID = resultForm[0].InspectionFormID; + ViewBag.FormName = "正在修改[" + resultForm[0].InspectionName + "]細項"; + return View(result[0]); + } + public async Task SPC003DAsync(int id) + { + var result = await _spcApi.DeleteInspectionItem(id); + return Json(new Result() { success = true, msg = "" }); + } + [HttpPost] + public async Task SPC003CSaveAsync(InspectionItem model) + { + if (ModelState.IsValid) + { + IResultModel result; + + result = await _spcApi.PostInspectionItem(JsonConvert.SerializeObject(model)); + + if (result.Success) + { + var _msg = "添加成功!"; + return RedirectToAction("Refresh", "Home", new { msg = _msg }); + } + else + { + if (result.Errors.Count > 0) + { + ModelState.AddModelError(result.Errors[0].Id, result.Errors[0].Msg); + } + else + { + ModelState.AddModelError("error", result.Msg); + } + } + } + return View("SPC003C", model); + } + public async Task SPC003USaveAsync(InspectionItem model) + { + if (ModelState.IsValid) + { + IResultModel result; + + result = await _spcApi.PutInspectionItem(model.InspectionItemID, JsonConvert.SerializeObject(model)); + + if (result.Success) + { + var _msg = "修改成功!"; + return RedirectToAction("Refresh", "Home", new { msg = _msg }); + } + else + { + if (result.Errors.Count > 0) + { + ModelState.AddModelError(result.Errors[0].Id, result.Errors[0].Msg); + } + else + { + ModelState.AddModelError("error", result.Msg); + } + } + } + return View("SPC003U", model); + } + + [ResponseCache(Duration = 0)] + [HttpGet] + public async Task GetInspectionItemsAsync() + { + var result = await _spcApi.GetInspectionItems(); + + if (result.Count > 0) + { + return Json(new Table() { code = 0, msg = "", data = result, count = result.Count }); + } + + return Json(new Table() { count = 0, data = null }); + } + + public async Task GetInspectionItemsByFormIDAsync(int id) + { + var result = await _spcApi.GetInspectionItemsByFormID(id); + + if (result.Count > 0) + { + return Json(new Table() { code = 0, msg = "", data = result, count = result.Count }); + } + + return Json(new Table() { count = 0, data = null }); + } + + #endregion + + #region SPC004巡檢結果維護相關 + + public async Task SPC004() + { + await GetFactoryUnitsList2(); + await GetFactoryList(); + return View(); + } + //新增頁面 + public async Task SPC004C() + { + //製程單位 + await GetFactoryUnitsList2(); + //廠別 + await GetFactoryList(); + //線別 + await GetLineList(); + //站別 + await GetStationList(); + //班別 + GetClassList(); + //其他部門 + await GetDeptList(); + return View(); + } + //修改页面 + [HttpGet] + public async Task SPC004UAsync(int id,string type) + { + //製程單位 + await GetFactoryUnitsList2(); + //廠別 + await GetFactoryList(); + //線別 + await GetLineList(); + //站別 + await GetStationList(); + //班別 + GetClassList(); + //其他部門 + await GetDeptList(); + ViewBag.type = type; + + var result = await _whsApi.GetSupportUser(id); + + if (result.Count == 0) + { + return View(); + } + return View(result[0]); + } + public async Task SPC008DAsync(int id) + { + var result = await _whsApi.DeleteSupportUser(id); + return Json(new Result() { success = true, msg = "" }); + } + [HttpPost] + public async Task SPC008CSaveAsync(SupportUser model) + { + if (ModelState.IsValid) + { + IResultModel result; + + result = await _whsApi.PostSupportUser(JsonConvert.SerializeObject(model)); + + + if (result.Success) + { + var _msg = "添加成功!"; + return RedirectToAction("Refresh", "Home", new { msg = _msg }); + } + else + { + if (result.Errors.Count > 0) + { + ModelState.AddModelError(result.Errors[0].Id, result.Errors[0].Msg); + } + else + { + ModelState.AddModelError("error", result.Msg); + } + } + } + return View("SPC008C", model); + } + public async Task SPC008USaveAsync(SupportUser model) + { + if (ModelState.IsValid) + { + IResultModel result; + + result = await _whsApi.PutSupportUser(model.SupportID, JsonConvert.SerializeObject(model)); + + if (result.Success) + { + var _msg = "修改成功!"; + return RedirectToAction("Refresh", "Home", new { msg = _msg }); + } + else + { + if (result.Errors.Count > 0) + { + ModelState.AddModelError(result.Errors[0].Id, result.Errors[0].Msg); + } + else + { + ModelState.AddModelError("error", result.Msg); + } + } + } + return View("SPC008U", model); + } + [ResponseCache(Duration = 0)] + [HttpGet] + public async Task GetSupportUsersAsync() + { + var result = await _whsApi.GetSupportUsers(); + + if (result.Count > 0) + { + return Json(new Table() { code = 0, msg = "", data = result, count = result.Count }); + } + + return Json(new Table() { count = 0, data = null }); + } + public async Task GetSupportUser2Async(string f, string type, string unit, string sd, string ed) + { + + var result = await _whsApi.GetSupportUserByQuery( f,type, unit, sd, ed); + + if (result.Count > 0) + { + return Json(new Table() { code = 0, msg = "", data = result, count = result.Count }); + } + + return Json(new Table() { count = 0, data = null }); + } + + #endregion + + #region SPC005巡檢結果資料維護相關 + + public async Task SPC005() + { + + await GetInspectionTypesList(); + await GetInspectionFormsList(); + + return View(); + } + + //新增頁面 + public async Task SPC005C(int id) + { + var result = await _spcApi.GetInspectionForm(id); + ViewBag.FormID = result[0].InspectionFormID; + ViewBag.FormName = "正在新增[" + result[0].InspectionName + "]細項"; + await GetStationList(); + await GetLineList(); + return View(); + } + + //修改页面 + [HttpGet] + public async Task SPC005UAsync(int id) + { + //廠別 + await GetFactoryList(); + //製程單位 + await GetFactoryUnitsList3(); + //線別 + await GetLineList2(); + //站別 + await GetStationList(); + //班別 + GetClassList(); + var result = await _whsApi.GetWorkManPower(id); + + if (result.Count == 0) + { + return View(); + } + return View(result[0]); + } + + public async Task SPC005DAsync(int id) + { + var result = await _whsApi.DeleteWorkManPower(id); + return Json(new Result() { success = true, msg = "" }); + } + + //頁面提交,id=0 添加,id>0 修改 + [HttpPost] + public async Task SPC005CSaveAsync(WorkManPower model) + { + if (ModelState.IsValid) + { + IResultModel result; + + result = await _whsApi.PostWorkManPower(JsonConvert.SerializeObject(model)); + + + if (result.Success) + { + var _msg = "添加成功!"; + return RedirectToAction("Refresh", "Home", new { msg = _msg }); + } + else + { + if (result.Errors.Count > 0) + { + ModelState.AddModelError(result.Errors[0].Id, result.Errors[0].Msg); + } + else + { + ModelState.AddModelError("error", result.Msg); + } + } + } + return View("SPC006C", model); + } + + public async Task SPC005USaveAsync(WorkManPower model) + { + if (ModelState.IsValid) + { + IResultModel result; + + result = await _whsApi.PutWorkManPower(model.PowerID, JsonConvert.SerializeObject(model)); + + if (result.Success) + { + var _msg = "修改成功!"; + return RedirectToAction("Refresh", "Home", new { msg = _msg }); + } + else + { + if (result.Errors.Count > 0) + { + ModelState.AddModelError(result.Errors[0].Id, result.Errors[0].Msg); + } + else + { + ModelState.AddModelError("error", result.Msg); + } + } + } + return View("SPC006U", model); + } + + [ResponseCache(Duration = 0)] + [HttpGet] + public async Task GetInspectionResultMastersAsync() + { + var result = await _spcApi.GetInspectionResultMasters(); + + if (result.Count > 0) + { + return Json(new Table() { code = 0, msg = "", data = result, count = result.Count }); + } + + return Json(new Table() { count = 0, data = null }); + } + + public async Task GetInspectionResultMastersByFormIdAsync(int id) + { + var result = await _spcApi.GetInspectionResultMastersByFormId(id); + + if (result.Count > 0) + { + return Json(new Table() { code = 0, msg = "", data = result, count = result.Count }); + } + + return Json(new Table() { count = 0, data = null }); + } + #endregion + + + + } +} diff --git a/AMESCoreStudio.Web/HttpApis/AMES/ISPC.cs b/AMESCoreStudio.Web/HttpApis/AMES/ISPC.cs new file mode 100644 index 00000000..9f7539a1 --- /dev/null +++ b/AMESCoreStudio.Web/HttpApis/AMES/ISPC.cs @@ -0,0 +1,241 @@ +using System.Collections.Generic; +using WebApiClient; +using WebApiClient.Attributes; +using AMESCoreStudio.WebApi; +using Microsoft.AspNetCore.Mvc; +using AMESCoreStudio.WebApi.Models.AMES; +using AMESCoreStudio.WebApi.Models.BAS; +using AMESCoreStudio.CommonTools.Result; + +namespace AMESCoreStudio.Web +{ + [JsonReturn] + public interface ISPC:IHttpApi + { + #region SPC001 巡檢類別維護 + + /// + /// 新增巡檢類別 + /// + /// + [WebApiClient.Attributes.HttpPost("api/InspectionTypes")] + ITask> PostInspectionType([FromBody, RawJsonContent] string model); + + /// + /// 更新巡檢類別 + /// + /// + [WebApiClient.Attributes.HttpPut("api/InspectionTypes/{id}")] + ITask> PutInspectionType(int id, [FromBody, RawJsonContent] string model); + + /// + /// 刪除巡檢類別 + /// + /// + [WebApiClient.Attributes.HttpDelete("api/InspectionTypes/{id}")] + ITask> DeleteInspectionType(int id); + + /// + /// 根據ID獲取指定巡檢類別資料 + /// + /// + [WebApiClient.Attributes.HttpGet("api/InspectionTypes/{id}")] + ITask> GetInspectionType(int id); + + /// + /// 獲取巡檢類別資料 + /// + /// + [WebApiClient.Attributes.HttpGet("api/InspectionTypes")] + ITask> GetInspectionTypes(); + + #endregion + + #region SPC002 巡檢表單维護 + + /// + /// 新增巡檢表單 + /// + /// + [WebApiClient.Attributes.HttpPost("api/InspectionForms")] + ITask> PostInspectionForm([FromBody, RawJsonContent] string model); + + /// + /// 更新巡檢表單 + /// + /// + [WebApiClient.Attributes.HttpPut("api/InspectionForms/{id}")] + ITask> PutInspectionForm(int id, [FromBody, RawJsonContent] string model); + + /// + /// 刪除巡檢表單维 + /// + /// + [WebApiClient.Attributes.HttpDelete("api/InspectionForms/{id}")] + ITask> DeleteInspectionForm(int id); + + /// + /// 根據ID獲取指定巡檢表單資料 + /// + /// + [WebApiClient.Attributes.HttpGet("api/InspectionForms/{id}")] + ITask> GetInspectionForm(int id); + + /// + /// 獲取指定巡檢表單資料By Query + /// + /// + [WebApiClient.Attributes.HttpGet("api/InspectionForms/Query/{id}/{status}")] + ITask> GetInspectionFormsByQuery(int id,string status); + + /// + /// 獲取巡檢表單資料 + /// + /// + [WebApiClient.Attributes.HttpGet("api/InspectionForms")] + ITask> GetInspectionForms(); + + #endregion + + #region SPC003 巡檢細項維護 + + /// + /// 新增巡檢細項 + /// + /// + [WebApiClient.Attributes.HttpPost("api/InspectionItems")] + ITask> PostInspectionItem([FromBody, RawJsonContent] string model); + + /// + /// 更新巡檢細項 + /// + /// + [WebApiClient.Attributes.HttpPut("api/InspectionItems/{id}")] + ITask> PutInspectionItem(int id, [FromBody, RawJsonContent] string model); + + /// + /// 刪除巡檢細項 + /// + /// + [WebApiClient.Attributes.HttpDelete("api/InspectionItems/{id}")] + ITask DeleteInspectionItem(int id); + + /// + /// 根據ID獲取指定巡檢細項資料 + /// + /// + [WebApiClient.Attributes.HttpGet("api/InspectionItems/{id}")] + ITask> GetInspectionItem(int id); + + /// + /// 根據ID獲取指定巡檢細項資料 + /// + /// + [WebApiClient.Attributes.HttpGet("api/InspectionItems/Form/{id}")] + ITask> GetInspectionItemsByFormID(int id); + + /// + /// 獲取巡檢細項資料 + /// + /// + [WebApiClient.Attributes.HttpGet("api/InspectionItems")] + ITask> GetInspectionItems(); + + #endregion + + #region SPC004 每日工時資料維護 + + /// + /// 新增每日工時 + /// + /// + [WebApiClient.Attributes.HttpPost("api/WorkManPowers")] + ITask> PostWorkManPower([FromBody, RawJsonContent] string model); + + /// + /// 更新每日工時 + /// + /// + [WebApiClient.Attributes.HttpPut("api/WorkManPowers/{id}")] + ITask> PutWorkManPower(int id, [FromBody, RawJsonContent] string model); + + /// + /// 刪除每日工時 + /// + /// + [WebApiClient.Attributes.HttpDelete("api/WorkManPowers/{id}")] + ITask> DeleteWorkManPower(int id); + + /// + /// 根據ID獲取指定每日工時資料 + /// + /// + [WebApiClient.Attributes.HttpGet("api/WorkManPowers/{id}")] + ITask> GetWorkManPower(int id); + + /// + /// 獲取每日工時資料 + /// + /// + [WebApiClient.Attributes.HttpGet("api/WorkManPowers")] + ITask> GetWorkManPowers(); + + /// + /// 查詢每日工時 + /// + /// + [WebApiClient.Attributes.HttpGet("api/WorkManPowers/Query/{factoryid}/{unitid}/{lineid}/{classID}/{stationID}/{userNo}/{deptID}/{sdate}/{edate}")] + ITask> GetWorkManPowersByQuery(string factoryid, string unitid, string lineid, string classID, string stationID, string userNo, string deptID, string sdate, string edate); + + #endregion + + #region SPC005 巡檢結果維護 + + /// + /// 新增巡檢結果MASTER + /// + /// + [WebApiClient.Attributes.HttpPost("api/InspectionResultMasters")] + ITask> PostInspectionResultMaster([FromBody, RawJsonContent] string model); + + /// + /// 更新巡檢結果MASTER + /// + /// + [WebApiClient.Attributes.HttpPut("api/InspectionResultMasters/{id}")] + ITask> PutInspectionResultMaster(string id, [FromBody, RawJsonContent] string model); + + /// + /// 刪除巡檢結果MASTER + /// + /// + [WebApiClient.Attributes.HttpDelete("api/InspectionResultMasters/{id}")] + ITask> DeleteInspectionResultMaster(string id); + + /// + /// 根據ID獲取指定巡檢結果MASTER + /// + /// + [WebApiClient.Attributes.HttpGet("api/InspectionResultMasters/{id}")] + ITask> GetInspectionResultMaster(string id); + + /// + /// 獲取巡檢結果MASTER + /// + /// + [WebApiClient.Attributes.HttpGet("api/InspectionResultMasters")] + ITask> GetInspectionResultMasters(); + + /// + /// 根据巡檢結果MASTER + /// + /// + [WebApiClient.Attributes.HttpGet("api/InspectionResultMasters/Form/{id}")] + ITask> GetInspectionResultMastersByFormId(int id); + + #endregion + + + + } +} diff --git a/AMESCoreStudio.Web/Views/SPC/SPC001.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC001.cshtml new file mode 100644 index 00000000..9d083825 --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC001.cshtml @@ -0,0 +1,94 @@ +@{ + ViewData["Title"] = "巡檢類別資料維護"; + Layout = "~/Views/Shared/_AMESLayout.cshtml"; +} + + + + + + @ViewBag.Title + + + + + + + + +@section Scripts{ + +} \ No newline at end of file diff --git a/AMESCoreStudio.Web/Views/SPC/SPC001C.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC001C.cshtml new file mode 100644 index 00000000..e3c4425a --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC001C.cshtml @@ -0,0 +1,61 @@ +@model AMESCoreStudio.WebApi.Models.AMES.InspectionType + + +@{ ViewData["Title"] = "SPC001C"; + Layout = "~/Views/Shared/_FormLayout.cshtml"; } + + + + + + + + + + + + + + + + + + + + + + + 是 + 否 + + + + @Html.ValidationMessage("error") + + + + + + + + +@section Scripts { + @{ await Html.RenderPartialAsync("_ValidationScriptsPartial"); + await Html.RenderPartialAsync("_FileinputScriptsPartial"); } + + + + +} + diff --git a/AMESCoreStudio.Web/Views/SPC/SPC001U.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC001U.cshtml new file mode 100644 index 00000000..520bf004 --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC001U.cshtml @@ -0,0 +1,61 @@ +@model AMESCoreStudio.WebApi.Models.AMES.InspectionType + + +@{ ViewData["Title"] = "SPC001U"; + Layout = "~/Views/Shared/_FormLayout.cshtml"; } + + + + + + + + + + + + + + + + + + + + + + + 是 + 否 + + + + @Html.ValidationMessage("error") + + + + + + + + +@section Scripts { + @{ await Html.RenderPartialAsync("_ValidationScriptsPartial"); + await Html.RenderPartialAsync("_FileinputScriptsPartial"); } + + + + +} + diff --git a/AMESCoreStudio.Web/Views/SPC/SPC002.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC002.cshtml new file mode 100644 index 00000000..4a796aa5 --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC002.cshtml @@ -0,0 +1,159 @@ +@{ + ViewData["Title"] = "巡檢表單資料維護"; + Layout = "~/Views/Shared/_AMESLayout.cshtml"; +} + + + + + + @ViewBag.Title + + + + + + + + + + 巡檢類型: + + + 請選擇 + + + + + + + 狀態: + + + 有效 + 無效 + + + + + + + + + + + + + + + + + + +@section Scripts{ + +} \ No newline at end of file diff --git a/AMESCoreStudio.Web/Views/SPC/SPC002C.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC002C.cshtml new file mode 100644 index 00000000..5e95e510 --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC002C.cshtml @@ -0,0 +1,70 @@ +@model AMESCoreStudio.WebApi.Models.AMES.InspectionForm + + +@{ ViewData["Title"] = "SPC002C"; + Layout = "~/Views/Shared/_FormLayout.cshtml"; } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 請選擇 + + + + @Html.ValidationMessage("error") + + + + + + + + +@section Scripts { + @{ await Html.RenderPartialAsync("_ValidationScriptsPartial"); + await Html.RenderPartialAsync("_FileinputScriptsPartial"); } + + + + +} + diff --git a/AMESCoreStudio.Web/Views/SPC/SPC002U.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC002U.cshtml new file mode 100644 index 00000000..d7ebd0bf --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC002U.cshtml @@ -0,0 +1,70 @@ +@model AMESCoreStudio.WebApi.Models.AMES.InspectionForm + + +@{ ViewData["Title"] = "SPC002U"; + Layout = "~/Views/Shared/_FormLayout.cshtml"; } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 請選擇 + + + + @Html.ValidationMessage("error") + + + + + + + + +@section Scripts { + @{ await Html.RenderPartialAsync("_ValidationScriptsPartial"); + await Html.RenderPartialAsync("_FileinputScriptsPartial"); } + + + + +} + diff --git a/AMESCoreStudio.Web/Views/SPC/SPC003.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC003.cshtml new file mode 100644 index 00000000..6ada3051 --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC003.cshtml @@ -0,0 +1,207 @@ +@{ + ViewData["Title"] = "巡檢表單細項資料維護"; + Layout = "~/Views/Shared/_AMESLayout.cshtml"; +} + + + + + + @ViewBag.Title + + + + + + + + + + 巡檢類型: + + + 請選擇 + + + + + + + 巡檢表單: + + + 請選擇 + + + + + + + + + + + + + + + + + + +@section Scripts{ + +} \ No newline at end of file diff --git a/AMESCoreStudio.Web/Views/SPC/SPC003C.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC003C.cshtml new file mode 100644 index 00000000..dca6ea73 --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC003C.cshtml @@ -0,0 +1,60 @@ +@model AMESCoreStudio.WebApi.Models.AMES.InspectionItem + + +@{ ViewData["Title"] = "SPC003C"; + Layout = "~/Views/Shared/_FormLayout.cshtml"; } + + + + + + + + + + + + + + + + + + + + + + + + + + + @Html.ValidationMessage("error") + + + + + + + + +@section Scripts { + @{ await Html.RenderPartialAsync("_ValidationScriptsPartial"); + await Html.RenderPartialAsync("_FileinputScriptsPartial"); } + + + + +} + diff --git a/AMESCoreStudio.Web/Views/SPC/SPC003U.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC003U.cshtml new file mode 100644 index 00000000..67d0054c --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC003U.cshtml @@ -0,0 +1,60 @@ +@model AMESCoreStudio.WebApi.Models.AMES.InspectionItem + + +@{ ViewData["Title"] = "SPC003U"; + Layout = "~/Views/Shared/_FormLayout.cshtml"; } + + + + + + + + + + + + + + + + + + + + + + + + + + + @Html.ValidationMessage("error") + + + + + + + + +@section Scripts { + @{ await Html.RenderPartialAsync("_ValidationScriptsPartial"); + await Html.RenderPartialAsync("_FileinputScriptsPartial"); } + + + + +} + diff --git a/AMESCoreStudio.Web/Views/SPC/SPC004.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC004.cshtml new file mode 100644 index 00000000..1a7d60bb --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC004.cshtml @@ -0,0 +1,412 @@ +@{ + ViewData["Title"] = "巡檢表單細項資料維護"; + Layout = "~/Views/Shared/_AMESLayout.cshtml"; +} + + + + + + @ViewBag.Title + + + + + + + + + + 巡檢類型: + + + 請選擇 + + + + + + + 巡檢表單: + + + 請選擇 + + + + + + + + + + + + + + + + + + 巡檢類型: + + + 請選擇 + + + + + + + 巡檢表單: + + + 請選擇 + + + + + + + 巡檢表單: + + + 請選擇 + + + + + + + + + + + + + + + + + + + +@section Scripts{ + + + + + + +} + + + + diff --git a/AMESCoreStudio.Web/Views/SPC/SPC004C.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC004C.cshtml new file mode 100644 index 00000000..dca6ea73 --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC004C.cshtml @@ -0,0 +1,60 @@ +@model AMESCoreStudio.WebApi.Models.AMES.InspectionItem + + +@{ ViewData["Title"] = "SPC003C"; + Layout = "~/Views/Shared/_FormLayout.cshtml"; } + + + + + + + + + + + + + + + + + + + + + + + + + + + @Html.ValidationMessage("error") + + + + + + + + +@section Scripts { + @{ await Html.RenderPartialAsync("_ValidationScriptsPartial"); + await Html.RenderPartialAsync("_FileinputScriptsPartial"); } + + + + +} + diff --git a/AMESCoreStudio.Web/Views/SPC/SPC004U.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC004U.cshtml new file mode 100644 index 00000000..3084bb0c --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC004U.cshtml @@ -0,0 +1,60 @@ +@model AMESCoreStudio.WebApi.Models.AMES.InspectionItem + + +@{ ViewData["Title"] = "SPC003U"; + Layout = "~/Views/Shared/_FormLayout.cshtml"; } + + + + + + + + + + + + + + + + + + + + + + + + + + + @Html.ValidationMessage("error") + + + + + + + + +@section Scripts { + @{ await Html.RenderPartialAsync("_ValidationScriptsPartial"); + await Html.RenderPartialAsync("_FileinputScriptsPartial"); } + + + + +} + diff --git a/AMESCoreStudio.Web/Views/SPC/SPC005.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC005.cshtml new file mode 100644 index 00000000..ac846d76 --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC005.cshtml @@ -0,0 +1,210 @@ +@{ + ViewData["Title"] = "巡檢結果資料維護"; + Layout = "~/Views/Shared/_AMESLayout.cshtml"; +} + + + + + + @ViewBag.Title + + + + + + + + + + 巡檢類型: + + + 請選擇 + + + + + + + 巡檢表單: + + + 請選擇 + + + + + + + + + + + + + + + + + + +@section Scripts{ + + + + + +} \ No newline at end of file diff --git a/AMESCoreStudio.Web/Views/SPC/SPC005C.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC005C.cshtml new file mode 100644 index 00000000..e3e6c292 --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC005C.cshtml @@ -0,0 +1,248 @@ +@model AMESCoreStudio.WebApi.Models.AMES.InspectionResultMaster + + +@{ ViewData["Title"] = "SPC005C"; + Layout = "~/Views/Shared/_AMESLayout.cshtml"; + //Layout = "~/Views/Shared/_FormLayout.cshtml"; +} + + + + + + + @* + + + + + + + + + + + + + + + + + + + + + + + + + @Html.ValidationMessage("error") + + + + + + + + *@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @Html.ValidationMessage("error") + 查詢 + + + + + + + + + +@section Scripts { + @{ await Html.RenderPartialAsync("_ValidationScriptsPartial"); + await Html.RenderPartialAsync("_FileinputScriptsPartial"); } + + + + + + + + + +} + diff --git a/AMESCoreStudio.Web/Views/SPC/SPC005U.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC005U.cshtml new file mode 100644 index 00000000..3084bb0c --- /dev/null +++ b/AMESCoreStudio.Web/Views/SPC/SPC005U.cshtml @@ -0,0 +1,60 @@ +@model AMESCoreStudio.WebApi.Models.AMES.InspectionItem + + +@{ ViewData["Title"] = "SPC003U"; + Layout = "~/Views/Shared/_FormLayout.cshtml"; } + + + + + + + + + + + + + + + + + + + + + + + + + + + @Html.ValidationMessage("error") + + + + + + + + +@section Scripts { + @{ await Html.RenderPartialAsync("_ValidationScriptsPartial"); + await Html.RenderPartialAsync("_FileinputScriptsPartial"); } + + + + +} + diff --git a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.dll b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.dll index d80ac8d7..29f44568 100644 Binary files a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.dll and b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.dll differ diff --git a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.pdb b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.pdb index 35574d92..d9682652 100644 Binary files a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.pdb and b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.pdb differ diff --git a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.dll b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.dll index 0ef7e6d5..5498bf12 100644 Binary files a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.dll and b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.dll differ diff --git a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.pdb b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.pdb index 3648f405..f73ac0a7 100644 Binary files a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.pdb and b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.pdb differ diff --git a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.dll b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.dll index 1f48514c..e27f08bf 100644 Binary files a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.dll and b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.dll differ diff --git a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.pdb b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.pdb index 4a394e88..18db3cfa 100644 Binary files a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.pdb and b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.pdb differ diff --git a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.dll b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.dll index 1d4850c1..0eaca881 100644 Binary files a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.dll and b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.dll differ diff --git a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.pdb b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.pdb index 38236cc5..eb353bc3 100644 Binary files a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.pdb and b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.pdb differ diff --git a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.xml b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.xml index dba9d9bc..6adb3f4f 100644 --- a/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.xml +++ b/AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.xml @@ -112,6 +112,12 @@ + + + 查詢工單站別在製條碼資料 + + + 用工單號碼获取该條碼资料 @@ -119,6 +125,20 @@ 工單號碼 + + + 用客戶序號找條碼资料 + + 客戶序號 + + + + + 用包裝箱號获取该條碼资料 + + 包裝箱號 + + 更新條碼资料 @@ -322,6 +342,12 @@ barcodeID + + + 查詢工單站別條碼資料 + + + 用工單ID查是否有過站紀錄 @@ -905,11 +931,49 @@ 檢驗單明細資料檔 + + + By 入庫單號 序號 + + 入庫單號 + 序號 + + 入庫單資料檔 + + + 取最新入庫單號 + + + + + + + FQC查詢 by Table + + 內部序號 + 工單號碼 + 外箱號碼 + 入庫單號碼 + 入庫時間起 + 入庫時間迄 + 抽驗結果 + 頁數 + 筆數 + + + + + FQC抽驗資料 + + 入庫單號碼 + 序號 + + 更新入庫單 @@ -976,11 +1040,306 @@ FQC檢驗結果明細資料檔 + + + + + FQCID + + + + + 更新FQC檢驗結果明細 + + + + + + + 新增FQC檢驗結果明細 + + + + 檢驗單結果資料檔 + + + 用入庫單號 and 序號找資料 + + 入庫單號 + 序號 + + + + + 更新FQC檢驗單結果 + + + + + + + 新增FQC檢驗單結果 + + + + + + + 巡檢表單维护 + + + + + + + + + + + 获取全部巡檢表單 + + + + + + 用ID获取该巡檢表單 + + + + + + + 获取该巡檢表單By Query + + + + + + + + 更新巡檢表單资料 + + + + + + + + 新增巡檢表單资料 + + + + + + + 删除巡檢表單资料 + + + + + + + 巡檢細項维护 + + + + + + + + + + + 获取全部巡檢細項 + + + + + + 用ID获取该巡檢細項资料 + + + + + + + 用FormID获取该巡檢細項资料 + + + + + + + 更新巡檢細項料 + + + + + + + + 新增巡檢細項资料 + + + + + + + 删除巡檢細項资料 + + + + + + + 巡檢類別資料维护 + + + + + + + + + + + 获取全部巡檢類別資料 + + + + + + 用ID获取该巡檢類別資料 + + + + + + + 更新巡檢類別資料 + + + + + + + + 新增巡檢類別資料 + + + + + + + 删除巡檢類別資料 + + + + + + + 巡檢類別資料维护 + + + + + + + + + + + 获取全部巡檢類別資料 + + + + + + 用ID获取该巡檢類別資料 + + + + + + + 用FormID获取该巡檢結果资料 + + + + + + + 更新巡檢類別資料 + + + + + + + + 新增巡檢類別資料 + + + + + + + 删除巡檢類別資料 + + + + + + + 巡檢類別資料维护 + + + + + + + + + + + 获取全部巡檢類別資料 + + + + + + 用ID获取该巡檢類別資料 + + + + + + + 更新巡檢類別資料 + + + + + + + + 新增巡檢類別資料 + + + + + + + 删除巡檢類別資料 + + + + @@ -1172,7 +1531,7 @@ - 料號基本資料檔Controller + 料號對應組件資料檔Controller @@ -1244,33 +1603,64 @@ ItemID - + - 料號站別工項資料檔 + + - + - 料號站別工項資料檔 by ItemID + SOPFile資料查詢 - ItemID - + - 料號属性代碼基本檔 + SOPFile資料查詢 by ID - + + - + - 料號属性代碼基本檔資料 + SOP文件查詢 + 料號 + 生產單位 + 檔案名稱 + 狀態 + 建立日期起 + 建立日期迄 - + - 料號属性代碼基本檔 + 料號站別工項資料檔 + + + + + 料號站別工項資料檔 by ItemID + + ItemID + + + + + 料號属性代碼基本檔 + + + + + + 料號属性代碼基本檔資料 + + + + + + 料號属性代碼基本檔 MatPropertyID @@ -1585,7 +1975,7 @@ - + @@ -1607,7 +1997,7 @@ - + @@ -1798,6 +2188,21 @@ 抽驗標準資料檔 + + + ByQuotID + + QuotID + + + + + 根據抽驗係數與數量 回傳CritID + + QuotID + 抽驗數量 + + 更新抽驗標準 @@ -1917,6 +2322,20 @@ 抽驗批退資料檔 + + + 更新抽驗批退 + + + + + + + 新增抽驗批退 + + + + 組件類別資料維護 @@ -2484,7 +2903,7 @@ - + 工單條碼區間設定檔 @@ -2538,6 +2957,25 @@ + + + 檢驗结果維護資料檔 + + + + + ByWipID + + WipID + + + + + 更新工單箱號資料檔 + + + + @@ -2555,6 +2993,12 @@ + + + 查詢工單資料QRS009 + + + 查詢工單資料 by SelectParameter @@ -2699,7 +3143,7 @@ - + 工單MAC資料檔 @@ -2729,18 +3173,11 @@ - SOPFile資料查詢 - - - - - - SOPFile資料查詢 by ID + 工單投產纪錄資料文件 - - + SOP文件查詢 @@ -2752,28 +3189,39 @@ 建立日期迄 - + - + 工單各站數量資料檔 - - + - 工單投產纪錄資料文件 + 基本查詢 + 工單ID + 流程ID - + - SOP文件查詢 + 基本查詢 - 料號 - 生產單位 - 檔案名稱 - 狀態 - 建立日期起 - 建立日期迄 + 工單ID + 流程ID + + + + + 更新工單各站數量 + + + + + + + 新增工單各站數量 + + @@ -3012,6 +3460,13 @@ + + + 過站判斷 + + + + 判斷工單狀態 @@ -3022,16 +3477,6 @@ 流程 - - - 判斷序號狀態 - - - - - - - 內部序號查詢工單號碼 @@ -3077,14 +3522,23 @@ 作業站編號 - + 確認工單狀態 - 工單號碼 - 生產單位 - 流程 - 線別 + 工單號碼 + 生產單位 + 流程 + 線別 + 作業站 + + + + + 判斷序號狀態 + + 工單號碼 + 內部序號 @@ -3106,16 +3560,24 @@ 內部序號找BarCodeID - + 內部條碼 + 0:找不到 + + + + 料號找料號ID + + 料號 0:找不到 - + 取得上一個作業站RuleStationID - 工單號碼 - 作業站ID - 0:沒有上一站 + 工單ID + 目前作業站ID + 該工單號碼過站資料 + true:false @@ -3629,6 +4091,13 @@ + + + 根據下一站別IDD查詢 + + + + 更新流程規則資料 @@ -4457,7 +4926,7 @@ - 條碼鎖定ID + 工單號碼 @@ -4467,12 +4936,12 @@ - 工單號碼 + 生產單位 - 鎖定狀態(0:鎖定;1:解鎖) + List @@ -4535,2704 +5004,3410 @@ 解鎖日期 - + - MaterialKpDtp Select Dto + 入庫單資料檔 Dto - + - 料號KP_ID + 入庫單號碼 - + - 料號Name + 序號 - + - KP料號名稱 + h入庫單號碼 - + - KP料號NO + h序號 - + - 順序 + FqcID - + - 前置碼 + 工單號碼 - + - 長度 + 料號 - + - 站(前段) + 品名/機種 - + - 創建者ID + 本批完成量 - + - 創建日期 + 抽驗狀態 P-PASS(允收);R-REJECT(批退); A-初始狀態 - + - 更新者ID + 抽驗數量 - + - 更新日期 + PASS數量 - + - 抽驗標準資料檔 DTO + 不良數 - + - 抽驗標準ID + 允收數量 - + - 係數名稱 + 拒收數量 - + - 抽樣代碼 + 判定備註 - + - 抽樣點數 + 手動判定備註 - + - 抽樣數量 + 入庫單備註 - + - 允收數量 + 箱號 - + - 拒收數量 + 總數量 - + - 建立日期 + 已抽驗數 - + - 更新UserID + PASS數量 - + - 更新日期 + FAIL數量 - + - 檢驗項目維護資料檔 DTO + 入庫單資料檔 Dto - + - 檢驗項目ID + 入庫單號碼 - + - 檢驗類別名稱 + 順序ID - + - 檢驗項目中文 + 工單號碼 - + - 檢驗項目英文 + 料號 - + - 建立UserID + 品名/機種 - + - 建立日期 + 箱號/條碼 - + - 更新UserID + 抽驗狀態 P-PASS(允收);R-REJECT(批退); A-初始狀態 - + - 更新日期 + 產品類別 STANDARD(標準品),Order(訂單) - + - WipInfo Select Dto + 建立UserID - + - 工單號碼 + 建立日期 - + - 生產單位 + 更新UserID - + - 線別ID + 更新日期 - + - 日期查詢開始 + 入庫單資料檔 Dto - + - 日期查詢結束 + 入庫單號碼 - + - 料號 + 序號 - + - WipInfo Select Dto + FqcID - + - 工單鎖定ID + 箱號 - + - 工單號碼 + 生產序號 - + - 鎖定狀態(0:鎖定;1:解鎖) + 外部序號 - + - 料號 + 狀態 P-PASS;F-FAIL;C-CPN - + - 鎖定原因 - - - - - 解鎖原因 - - - - - 站別ID + 不良代碼 - + - 鎖定類型 + 不良備註 - + - 鎖定原因類別(0-3C認證工單;1-驗證工單;3-維修換料待分析) + MaterialKpDtp Select Dto - + - 鎖定人員 + 料號KP_ID - + - 鎖定日期 + 料號Name - + - 解鎖人員 + KP料號名稱 - + - 解鎖日期 + KP料號NO - + - WipMasterData Dto + 順序 - + - 工單號碼 + 前置碼 - + - 生產單位 + 長度 - + - 線別ID + 站(前段) - + - 日期查詢開始 + 創建者ID - + - 日期查詢結束 + 創建日期 - + - 料號 + 更新者ID - + - 是否有過站 + 更新日期 - + WipInfo Select Dto - + - WIP_SOP_ID + MATERIAL_SOP_ID - + 料號 - + 生產單位 - + 上傳檔案名稱 - + 存放檔案名稱 - + 檔案路徑 - + Y:使用中N:停用 - + 建立UserID - + 建立日期 - + 更新UserID - + 更新日期 - + - + 抽驗標準資料檔 DTO - + - 编号 + 抽驗標準ID - + - 账户编号 + 係數名稱 - + - 登录平台 + 抽樣代碼 - + - 最后登录时间戳 + 抽樣點數 - + - 最后登录IP + 抽樣數量 - + - + 允收數量 - + - 公告編號 + 拒收數量 - + - 公告標題 + 建立日期 - + - 公告內容 + 更新UserID - + - 公告時間 + 更新日期 - + - 公告天數 + 檢驗項目維護資料檔 DTO - + - 建立人員 + 檢驗項目ID - + - 建立時間 + 檢驗類別名稱 - + - 修改人員 + 檢驗項目中文 - + - 修改時間 + 檢驗項目英文 - + - + 建立UserID - + - + 建立日期 - + - 用户名 + 更新UserID - + - 密码 + 更新日期 - + - 平台 + WipInfo Select Dto - + - 登錄IP + 工單號碼 - + - 报错信息 + 生產單位 - + - + 線別ID - + - 认证信息 + 日期查詢開始 - + - 账户类型 + 日期查詢結束 - + - 系统操作员 + 料號 - + - 普通管理员 + WipInfo Select Dto - + - 部门类别 + 工單鎖定ID - + - 廠別 + 工單號碼 - + - 部門 + 鎖定狀態(0:鎖定;1:解鎖) - + - + 料號 - + - 外部異常 + 鎖定原因 - + - 內部異常 + 解鎖原因 - + - 平台类型 + 站別ID - + - 未知 + 鎖定類型 - + - Web + 鎖定原因類別(0-3C認證工單;1-驗證工單;3-維修換料待分析) - + - Mobile + 鎖定人員 - + - WeChat + 鎖定日期 - + - 激活状态 + 解鎖人員 - + - 未激活 + 解鎖日期 - + - 正常 + WipMasterData Dto - + - 禁用 + 工單號碼 - + - 注销 + 生產單位 - + - + 線別ID - + - + 日期查詢開始 - - + - + 日期查詢結束 - - + - + 料號 - + - + 是否有過站 - + - + (過站資料)BarCodeCheck Dto - + - + 工單號碼 - + - + 內部條碼 - + - + 過站狀態 M:一般 S:維修 - + - + 生產單位 - + - + 作業站 - + - + 線別站 - + - + 紀錄組件或不良代碼 - + - + 治具條碼 - + - 工廠 + 紀錄組件或不良代碼 - + - 單位 + 刷入類型 NG or KP(Item_No) - - ClassInfo - 線別 + + + 刷入組件資料或不良代碼 - + - 班别資料 + 組件:舊組件序號 - - TIME_SEGMENT - 生產時段 + + + 治具條碼 - + - 工作臺類別 + 刷入治具條碼 - + - 工作臺 + - + - 責任單位資料 + 编号 - + - 郵件群组類别 + 账户编号 - + - 郵件群组資料 + 登录平台 - + - 測試代號 + 最后登录时间戳 - + - List + 最后登录IP - + - 正背面 + - + - 工單性質 + 公告編號 - + - 產品別 + 公告標題 - + - 工單機種資料 + 公告內容 - + - 工單基本資料文件 + 公告時間 - + - 流程資料 + 公告天數 - + - 流程站別資料 + 建立人員 - + - 流程規則資料 + 建立時間 - + - 條碼狀態資料 + 修改人員 - + - 異常群組資料 + 修改時間 - +