using System.Collections.Generic; using WebApiClient; using WebApiClient.Attributes; using AMESCoreStudio.WebApi; using Microsoft.AspNetCore.Mvc; using AMESCoreStudio.WebApi.Models.AMES; using AMESCoreStudio.CommonTools.Result; using AMESCoreStudio.WebApi.DTO.AMES; namespace AMESCoreStudio.Web { [JsonReturn] public interface IPCB : IHttpApi { #region FQC001 檢驗類別維護 /// <summary> /// 新增檢驗類別維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPost("api/QcGroup")] ITask<ResultModel<QcGroup>> PostQcGroup([FromBody, RawJsonContent] string model); /// <summary> /// 更新檢驗類別維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPut("api/QcGroup")] ITask<ResultModel<QcGroup>> PutQcGroup([FromBody, RawJsonContent] string model); /// <summary> /// 刪除檢驗類別維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpDelete("api/QcGroup/{id}")] ITask<ResultModel<string>> DeleteQcGroup(int id); /// <summary> /// 查詢檢驗類別維護 /// </summary> /// <param name="page">頁數</param> /// <param name="limit"></param> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/QcGroup/QcGroupQuery")] ITask<ResultModel<QcGroup>> GetQcGroupQuery(int page = 0, int limit = 10); /// <summary> /// 查詢檢驗類別維護 ID /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/QcGroup/{id}")] ITask<QcGroup> GetQcGroup(int id); #endregion #region FQC002 檢驗項目維護 /// <summary> /// 新增檢驗項目維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPost("api/QcItem")] ITask<ResultModel<QcItem>> PostQcItem([FromBody, RawJsonContent] string model); /// <summary> /// 更新檢驗項目維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPut("api/QcItem")] ITask<ResultModel<QcItem>> PutQcItem([FromBody, RawJsonContent] string model); /// <summary> /// 刪除檢驗項目維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpDelete("api/QcItem/{id}")] ITask<ResultModel<string>> DeleteQcItem(int id); /// <summary> /// 查詢檢驗項目維護 /// </summary> /// <param name="groupID">檢驗類別ID</param> /// <param name="page">頁數</param> /// <param name="limit">比數</param> /// <param name="itemNo">料號</param> /// <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); /// <summary> /// 查詢檢驗項目維護 ID /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/QcItem/{id}")] ITask<QcItem> GetQcItem(int id); /// <summary> /// 查詢檢驗項目維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/QcGroup")] ITask<List<QcGroup>> GetQcGroup(); #endregion #region FQC003 檢驗結果維護 /// <summary> /// 新增檢驗結果維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPost("api/FqcResult")] ITask<ResultModel<FqcResult>> PostFqcResult([FromBody, RawJsonContent] string model); /// <summary> /// 更新檢驗結果維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPut("api/FqcResult")] ITask<ResultModel<FqcResult>> PutFqcResult([FromBody, RawJsonContent] string model); /// <summary> /// 刪除檢驗結果維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpDelete("api/FqcResult/{id}")] ITask<ResultModel<string>> DeleteFqcResult(string id); /// <summary> /// 查詢檢驗結果維護 /// </summary> /// <param name="page">頁數</param> /// <param name="limit"></param> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/FqcResult/FqcResultQuery")] ITask<ResultModel<FqcResult>> GetFqcResultQuery(int page = 0, int limit = 10); /// <summary> /// 查詢檢驗結果維護 ID /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/FqcResult/{id}")] ITask<FqcResult> GetFqcResult(string id); #endregion #region FQC004 抽驗係數維護 /// <summary> /// 新增抽驗係數維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPost("api/QcQuot")] ITask<ResultModel<QcQuot>> PostQcQuot([FromBody, RawJsonContent] string model); /// <summary> /// 更新抽驗係數維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPut("api/QcQuot")] ITask<ResultModel<QcQuot>> PutQcQuot([FromBody, RawJsonContent] string model); /// <summary> /// 刪除抽驗係數維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpDelete("api/QcQuot/{id}")] ITask<ResultModel<string>> DeleteQcQuot(int id); /// <summary> /// 查詢抽驗係數維護 /// </summary> /// <param name="page">頁數</param> /// <param name="limit"></param> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/QcQuot/QcQuotQuery")] ITask<ResultModel<QcQuot>> GetQcQuotQuery(int page = 0, int limit = 10); /// <summary> /// 查詢抽驗係數維護 ID /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/QcQuot/{id}")] ITask<QcQuot> GetQcQuot(int id); #endregion #region FQC005 抽驗標準維護 /// <summary> /// 新增抽驗標準維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPost("api/QcCriterion")] ITask<ResultModel<QcCriterion>> PostQcCriterion([FromBody, RawJsonContent] string model); /// <summary> /// 更新抽驗標準維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPut("api/QcCriterion")] ITask<ResultModel<QcCriterion>> PutQcCriterion([FromBody, RawJsonContent] string model); /// <summary> /// 刪除抽驗標準維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpDelete("api/QcCriterion/{id}")] ITask<ResultModel<string>> DeleteQcCriterion(int id); /// <summary> /// 查詢抽驗標準維護 /// </summary> /// <param name="quotID">抽驗係數ID</param> /// <param name="page">頁數</param> /// <param name="limit"></param> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/QcCriterion/QcCriterionQuery")] ITask<ResultModel<QcCriterionDto>> GetQcCriterionQuery(int quotID, int page, int limit); /// <summary> /// 查詢抽驗標準維護 ID /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/QcCriterion/{id}")] ITask<QcCriterion> GetQcCriterion(int id); /// <summary> /// 查詢檢驗項目維護 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/QcQuot")] ITask<List<QcQuot>> GetQcQuot(); /// <summary> /// 查詢抽驗標準 ByQuotID /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/QcCriterion/ByQuotID/{id}")] ITask<List<QcCriterion>> GetQcCriterionByQuotID(int id); #endregion #region FQC006 FQC狀態維護 /// <summary> /// 新增過站狀態檔 /// </summary> /// <param name="model"></param> /// <returns></returns> [WebApiClient.Attributes.HttpPost("api/StatusType")] ITask<ResultModel<StatusType>> PostStatusType([FromBody, RawJsonContent] string model); /// <summary> /// 更新過站狀態檔 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPut("api/StatusType")] ITask<ResultModel<StatusType>> PutStatusType([FromBody, RawJsonContent] string model); /// <summary> /// 刪除過站狀態檔 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpDelete("api/StatusType/{id}")] ITask<ResultModel<string>> DeleteStatusType(string id); /// <summary> /// 查詢過站狀態檔 Query /// </summary> /// <param name="page">頁數</param> /// <param name="limit"></param> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/StatusType/StatusTypeQuery")] ITask<ResultModel<StatusType>> GetStatusTypeQuery(int page = 0, int limit = 10); /// <summary> /// 查詢過站狀態檔 ID /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/StatusType/{id}")] ITask<StatusType> GetStatusType(string id); /// <summary> /// 過站狀態檔-List /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/StatusType")] ITask<List<StatusType>> GetStatusType(); #endregion #region FQC007 FQC抽驗作業 /// <summary> /// 新增FQC檢驗單結果 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPost("api/FqcResultMaster")] ITask<ResultModel<FqcResultMaster>> PostFqcResultMaster([FromBody, RawJsonContent] string model); /// <summary> /// 更新FQC檢驗單結果 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPut("api/FqcResultMaster")] ITask<ResultModel<FqcResultMaster>> PutFqcResultMaster([FromBody, RawJsonContent] string model); /// <summary> /// 新增FQC檢驗結果明細 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPost("api/FqcResultDetail")] ITask<ResultModel<FqcResultDetail>> PostFqcResultDetail([FromBody, RawJsonContent] string model); /// <summary> /// 更新入庫單 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPut("api/FqcInhouseMaster")] ITask<ResultModel<FqcInhouseMaster>> PutFqcInhouseMaster([FromBody, RawJsonContent] string model); /// <summary> /// 新增抽驗批退 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPost("api/QngInfo")] ITask<ResultModel<QngInfo>> PostQngInfo([FromBody, RawJsonContent] string model); /// <summary> /// 查詢過站狀態檔 ID /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/FqcInhouseMaster/FqcQuery/{inhouseNo}")] ITask<ResultModel<FqcDto>> GetFqcQuery(string inhouseNo, int? seqid = 1); /// <summary> /// 獲取不良現象群組資料 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/NGGroups")] ITask<List<NGGroup>> GetNGGroups(int page = 0, int limit = 10); /// <summary> /// 根据群組代碼獲取不良現象類別資料 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/NGClasses/Group/{no}")] ITask<List<NGClass>> GetNGClassesByGroup(string no, int page = 0, int limit = 10); /// <summary> /// 不良現象-List /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/NGReasons/Class/{no}")] ITask<List<NGReason>> GetNGReasonsByClass(string no, int page = 0, int limit = 1000); /// <summary> /// 用內部序號取BarCode資料 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/BarcodeInfoes/No/{id}")] ITask<List<BarcodeInfo>> GetBarcodeInfoesByNo(string id); /// <summary> /// 用客戶序號取BarCode資料 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/BarcodeInfoes/ByExtraNo/{extraNo}")] ITask<List<BarcodeInfo>> GetBarcodeInfoesByExtraNo(string extraNo); /// <summary> /// 用包裝箱號取BarCode資料 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/BarcodeInfoes/ByBoxNo/{boxNo}")] ITask<List<BarcodeInfo>> GetBarcodeInfoesByBoxNo(string boxNo); /// <summary> /// 用入庫單號與序號取檢驗單結果 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/FqcResultMaster/ByInhouseNo/{inhouseNo}/{seq}")] ITask<List<FqcResultMaster>> GetFqcResultMasterByInhouseNo(string inhouseNo, int seq); /// <summary> /// 用入庫單號與序號取檢驗單明细資料 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/FqcInhouseDetail/{inhouseNo}/{seq}")] ITask<List<FqcInhouseDetail>> GetFqcInhouseDetail(string inhouseNo, int seq); /// <summary> /// 用FQCID取檢驗結果明細 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/FqcResultDetail/{id}")] ITask<List<FqcResultDetail>> GetFqcResultDetail(int id); /// <summary> /// 用id取檢驗單結果 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/FqcResultMaster/{id}")] ITask<FqcResultMaster> GetFqcResultMaster(int id); /// <summary> /// 用id取檢驗單結果 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/FqcInhouseMaster/{inhouseNo}/{seqID}")] ITask<FqcInhouseMaster> GetFqcInhouseMaster(string inhouseNo, int seqID); /// <summary> /// 新增 檢驗結果上傳圖檔資料表 /// </summary> /// <param name="model"></param> /// <returns></returns> [WebApiClient.Attributes.HttpPost("api/FqcResultMasterBlob")] ITask<ResultModel<FqcResultMasterBlob>> PostFqcResultMasterBlob([FromBody, RawJsonContent] string model); /// <summary> /// 查詢 檢驗結果上傳圖檔資料表 By FQCID /// </summary> /// <param name="id"></param> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/FqcResultMasterBlob/ByFQCID/{id}")] ITask<List<FqcResultMasterBlob>> GetFqcResultMasterBlobByFqcID(int id); /// <summary> /// WipFqcItem 查詢工單綁定檢驗工項 /// </summary> /// <param name="id">料號</param> [WebApiClient.Attributes.HttpGet("api/WipFqcItem/ByWipNo/{id}")] ITask<List<WipFqcItem>> GetWipFqcItemByWipNo(string id); /// <summary> /// WipFqcItem 新增工單綁定檢驗工項 /// </summary> [WebApiClient.Attributes.HttpPost("api/WipFqcItem")] ITask<ResultModel<WipFqcItem>> PostWipFqcItem([FromBody, RawJsonContent] string model); /// <summary> /// WipFqcItem 刪除工單綁定檢驗工項 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpDelete("api/WipFqcItem/{id}")] ITask<ResultModel<string>> DeleteWipFqcItem(int id); /// <summary> /// FQC抽驗過站 /// </summary> /// <param name="inhouseNo">入庫單號</param> /// <param name="seqID">順序</param> /// <param name="userID">UserID</param> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/BarCodeCheck/PassIngByFQC")] ITask<ResultModel<string>> PassingByFQC(string inhouseNo, int seqID, int userID); /// <summary> /// FQC 細項資料 /// </summary> /// <param name="inhouseNo">入庫單號</param> /// <param name="seqID">順序</param> /// <param name="boxNo">箱號</param> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/FqcInhouseDetail/FqcInhouseDetailByFQC007V")] ITask<ResultModel<FqcResultDto>> FQC007V(string inhouseNo, int seqID, string boxNo); #endregion #region PCB013 鋼板量測紀錄 /// <summary> /// 鋼板資料查詢 /// </summary> /// <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/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); /// <summary> /// 新增鋼板資料 /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpPost("api/SteelPlateMeasure")] ITask<ResultModel<SteelPlateMeasure>> PostSteelPlateMeasure([FromBody, RawJsonContent] string model); [WebApiClient.Attributes.HttpGet("api/SteelPlateMeasure/BySteelPlateID/{id}")] ITask<ResultModel<SteelPlateMeasureDto>> GetSteelPlateMeasureBySteelPlateID(int id, int page = 0, int limit = 10); #endregion #region PCB014 錫膏使用管控 /// <summary> /// 錫膏資料查詢 /// </summary> /// <param name="solderPasteNo">錫膏編號</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 solderPasteNo = null, string pcbPartNo = null , string side = null, string status = null, int page = 0, int limit = 10); /// <summary> /// 新增錫膏資料 /// </summary> /// <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> /// 查詢錫膏資料 ID /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/SolderPasteInfo/{id}")] ITask<SolderPasteInfo> GetSolderPasteInfo(int id); /// <summary> /// 查詢錫膏資料 By No /// </summary> /// <returns></returns> [WebApiClient.Attributes.HttpGet("api/SolderPasteInfo/ByNo/{id}")] ITask<List<SolderPasteInfo>> GetSolderPasteInfoByNo(string id); #endregion } }