diff --git a/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs b/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs
index 4cf16599..68b158de 100644
--- a/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs
+++ b/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs
@@ -642,7 +642,7 @@ namespace AMESCoreStudio.Web
/// 料號流程資料檔查詢
///
///
- [WebApiClient.Attributes.HttpGet("api/MaterialFlow/Query/{itemno}/{unitNo}")]
+ [WebApiClient.Attributes.HttpGet("api/MaterialFlows/ByWip/{itemno}/{unitNo}")]
ITask> GetMaterialFlowsByQuery(string itemno , string unitno);
///
diff --git a/AMESCoreStudio.WebApi/Controllers/AMES/MaterialFlowController.cs b/AMESCoreStudio.WebApi/Controllers/AMES/MaterialFlowController.cs
deleted file mode 100644
index 90904cbd..00000000
--- a/AMESCoreStudio.WebApi/Controllers/AMES/MaterialFlowController.cs
+++ /dev/null
@@ -1,183 +0,0 @@
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Threading.Tasks;
-using Microsoft.EntityFrameworkCore;
-using AMESCoreStudio.WebApi.Models.BAS;
-using AMESCoreStudio.CommonTools.Result;
-
-namespace AMESCoreStudio.WebApi.Controllers.AMES
-{
- ///
- /// 料號基本資料檔Controller
- ///
- [Route("api/[controller]")]
- [ApiController]
- public class MaterialFlowController : ControllerBase
- {
- private readonly AMESContext _context;
-
- ///
- /// 建構式
- ///
- ///
- public MaterialFlowController(AMESContext context)
- {
- _context = context;
- }
-
- ///
- /// 查詢料號流程資料檔
- ///
- ///
- // GET: api/
- [HttpGet]
- public async Task>> GetMaterialFlows()
- {
- IQueryable q = _context.MaterialFlows;
- q = q.OrderBy(p => p.MFID);
- var MaterialFlows = await q.ToListAsync();
- return MaterialFlows;
- }
-
-
- ///
- /// 料號流程資料檔
- ///
- /// ItemID
- ///
- [HttpGet("{id}")]
- public async Task> GetMaterialFlow(int id)
- {
- IQueryable q = _context.MaterialFlows;
- var result = await q.Where(p => p.MFID == id).ToListAsync();
- return result;
- }
-
- ///
- /// 料號流程查詢
- ///
- /// 料號
- /// 站別
- ///
- [HttpGet("Query/{itemno}/{unitNo}")]
- public async Task>> GetMaterialFlowsByQuery(string itemno, string unitNo)
- {
- IQueryable q = _context.MaterialFlows;
-
- MaterialItemController materialItemController = new MaterialItemController(_context);
- var MaterialItem = materialItemController.GetMaterialItemByItemNO(itemno);
-
- if (MaterialItem != null)
- q = q.Where(w => w.ItemID == MaterialItem.Result.ItemID && w.UnitNo == unitNo);
- else
- q = q.Where(w => w.ItemID == -1);
-
- var materialFlows = await q.ToListAsync();
-
- return materialFlows;
- }
-
- ///
- /// 新增料號流程資料檔
- ///
- ///
- ///
- [HttpPost]
- public async Task> PostMaterialFlows([FromBody] MaterialFlow MaterialFlow)
- {
- ResultModel result = new ResultModel();
- Helper helper = new Helper(_context);
- MaterialFlow.MFID = helper.GetIDKey("MF_ID").Result;
-
- _context.MaterialFlows.Add(MaterialFlow);
- try
- {
- await _context.SaveChangesAsync();
- result.Success = true;
- result.Msg = "OK";
- }
- catch (Exception ex)
- {
- result.Success = false;
- result.Msg = ex.InnerException.Message;
- }
- return result;
-
- }
-
-
- ///
- /// 修改料號流程資料檔
- ///
- ///
- [HttpPut("{id}")]
- public async Task> PutMaterialFlows(int id, [FromBody] MaterialFlow materialFlow)
- {
- ResultModel result = new ResultModel();
- if (id != materialFlow.MFID)
- {
- result.Success = false;
- result.Msg = "料號錯誤";
- return result;
- }
- //_
- //_context.Attach(materialFlow);
- //// 指定更新某個欄位
- //_context.Entry(materialFlow).Property(p => p.FlowSEQ).IsModified = true;
- //_context.Entry(materialFlow).Property(p => p.ItemID).IsModified = true;
- //_context.Entry(materialFlow).Property(p => p.FlowRuleID).IsModified = true;
- //_context.Entry(materialFlow).Property(p => p.UnitNo).IsModified = true;
- _context.Entry(materialFlow).State = EntityState.Modified;
- try
- {
- await _context.SaveChangesAsync();
- result.Success = true;
- result.Msg = "OK";
- return result;
- }
- catch (DbUpdateConcurrencyException ex)
- {
- result.Success = false;
- result.Msg = ex.InnerException.Message;
- return result;
- //throw;
-
- }
- }
-
- ///
- /// Delete料號流程
- ///
- ///
- ///
- // DELETE: api/StandardWorkTimes/5
- [HttpDelete("{id}")]
- public async Task> DeleteMaterialFlow(int id)
- {
- ResultModel result = new ResultModel();
-
- var materialFlow = await _context.MaterialFlows.Where(m => m.MFID == id).FirstOrDefaultAsync();
- if (materialFlow == null)
- {
- result.Success = false;
- result.Msg = "序號不存在";
- return result;
- }
-
- _context.MaterialFlows.Remove(materialFlow);
- await _context.SaveChangesAsync();
-
- result.Success = true;
- result.Msg = "OK";
- return result;
- }
-
- private bool MaterialFlowExists(int id)
- {
- return _context.MaterialFlows.Any(e => e.MFID == id);
- }
- }
-}
diff --git a/AMESCoreStudio.WebApi/Controllers/BAS/MaterialFlowsController.cs b/AMESCoreStudio.WebApi/Controllers/BAS/MaterialFlowsController.cs
index e6895570..5c15a761 100644
--- a/AMESCoreStudio.WebApi/Controllers/BAS/MaterialFlowsController.cs
+++ b/AMESCoreStudio.WebApi/Controllers/BAS/MaterialFlowsController.cs
@@ -84,6 +84,30 @@ namespace AMESCoreStudio.WebApi.Controllers.BAS
return materialFlows;
}
+ ///
+ /// 料號流程查詢 By工單
+ ///
+ /// 料號
+ /// 站別
+ ///
+ [HttpGet("ByWip/{itemno}/{unitNo}")]
+ public async Task>> GetMaterialFlowsByWip(string itemno, string unitNo)
+ {
+ IQueryable q = _context.MaterialFlows;
+
+ AMES.MaterialItemController materialItemController = new AMES.MaterialItemController(_context);
+ var MaterialItem = materialItemController.GetMaterialItemByItemNO(itemno);
+
+ if (MaterialItem != null)
+ q = q.Where(w => w.ItemID == MaterialItem.Result.ItemID && w.UnitNo == unitNo);
+ else
+ q = q.Where(w => w.ItemID == -1);
+
+ var materialFlows = await q.ToListAsync();
+
+ return materialFlows;
+ }
+
///
/// 新增料號流程資料檔
///
diff --git a/AMESCoreStudio.WebApi/Controllers/BLL/BarCodeCheckController.cs b/AMESCoreStudio.WebApi/Controllers/BLL/BarCodeCheckController.cs
index 0c2710ae..c548bea3 100644
--- a/AMESCoreStudio.WebApi/Controllers/BLL/BarCodeCheckController.cs
+++ b/AMESCoreStudio.WebApi/Controllers/BLL/BarCodeCheckController.cs
@@ -1514,6 +1514,12 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
BarcodeInfoesController barcodeInfoesController = new BarcodeInfoesController(_context);
var barcodeInfo = barcodeInfoesController.GetBarcodeInfoes(barCodeID).Result.Value.FirstOrDefault();
+ if (barcodeInfo == null)
+ {
+ resultModel.Msg = "找不到上一個作業站過站紀錄,請確認";
+ return resultModel;
+ }
+
if (ruleSations.Where(w => w.RuleStationID == barcodeInfo.RuleStationID
&& w.RuleStatus == barcodeInfo.RuleStatus).Count() == 0
)