| | |
| | | using Newtonsoft.Json.Linq; |
| | | using System.ServiceModel; |
| | | using System.IO; |
| | | using NewPdaSqlServer.Dto.Warehouse; |
| | | |
| | | namespace NewPdaSqlServer.Controllers.AGV; |
| | | |
| | |
| | | |
| | | //ç«åºéæ£ |
| | | [HttpPost("DefineTask_001")] |
| | | public ResponseResult DefineTask_001(dynamic queryObj) |
| | | public ResponseResult DefineTask_001(DefineTask001Dto dto) |
| | | { |
| | | try |
| | | { |
| | |
| | | var factory = new ChannelFactory<IImesInterface>(binding, endpoint); |
| | | |
| | | var channel = factory.CreateChannel(); |
| | | string result = channel.DefineTask_001("GS2025070700001","TEST.01","AGVæµè¯ç©æåç§°", "AGVæµè¯ç©æè§æ ¼",100,"å°",1); |
| | | //string result = channel.DefineTask_001("GS2025070700001","TEST.01","AGVæµè¯ç©æåç§°", "AGVæµè¯ç©æè§æ ¼",100,"å°",1); |
| | | string result = channel.DefineTask_001( |
| | | dto.MesId, |
| | | dto.MatId, |
| | | dto.MatName, |
| | | dto.MatStandard, |
| | | dto.MatNumber, |
| | | dto.MatUnit, |
| | | dto.Postition); |
| | | |
| | | ((IClientChannel)channel).Close(); |
| | | |
| | | return new ResponseResult |
| | |
| | | |
| | | //ç«åºæ£éª |
| | | [HttpPost("DefineTask_002")] |
| | | public ResponseResult DefineTask_002(dynamic queryObj) |
| | | public ResponseResult DefineTask_002(DefineTask002Dto dto) |
| | | { |
| | | try |
| | | { |
| | |
| | | var factory = new ChannelFactory<IImesInterface>(binding, endpoint); |
| | | |
| | | var channel = factory.CreateChannel(); |
| | | string result = channel.DefineTask_002("GS2025070900010", "åæ ¼"); |
| | | //string result = channel.DefineTask_002("GS2025070900010", "åæ ¼"); |
| | | string result = channel.DefineTask_002( |
| | | dto.MesId, |
| | | dto.MatStatus); |
| | | |
| | | ((IClientChannel)channel).Close(); |
| | | |
| | | return new ResponseResult |
| | |
| | | |
| | | //ç«åºå¼å« |
| | | [HttpPost("DefineTask_005")] |
| | | public ResponseResult DefineTask_005(dynamic queryObj) |
| | | public ResponseResult DefineTask_005(DefineTask005Dto dto) |
| | | { |
| | | try |
| | | { |
| | |
| | | var factory = new ChannelFactory<IImesInterface>(binding, endpoint); |
| | | |
| | | var channel = factory.CreateChannel(); |
| | | string result = channel.DefineTask_005(2); |
| | | //string result = channel.DefineTask_005(2); |
| | | string result = channel.DefineTask_005( |
| | | dto.Postition); |
| | | ((IClientChannel)channel).Close(); |
| | | |
| | | return new ResponseResult |
| | |
| | | |
| | | //ç«åºå
¥åº |
| | | [HttpPost("DefineTask_006")] |
| | | public ResponseResult DefineTask_006(dynamic queryObj) |
| | | public ResponseResult DefineTask_006(DefineTask006Dto dto) |
| | | { |
| | | try |
| | | { |
| | |
| | | var factory = new ChannelFactory<IImesInterface>(binding, endpoint); |
| | | |
| | | var channel = factory.CreateChannel(); |
| | | string result = channel.DefineTask_006("C2025070400040", "2.02.51.463", "管线饮水æº", "C638-1HA(ä¸åVGX-SR-1A-XMç½)", 48, "å°", 4); |
| | | //string result = channel.DefineTask_006("C2025070400040", "2.02.51.463", "管线饮水æº", "C638-1HA(ä¸åVGX-SR-1A-XMç½)", 48, "å°", 4); |
| | | string result = channel.DefineTask_006( |
| | | dto.MesId, |
| | | dto.MatId, |
| | | dto.MatName, |
| | | dto.MatStandard, |
| | | dto.MatNumber, |
| | | dto.MatUnit, |
| | | dto.Postition); |
| | | ((IClientChannel)channel).Close(); |
| | | |
| | | return new ResponseResult |
| | |
| | | [OperationContract(Action = "http://tempuri.org/ImesInterface/DefineTask_006", |
| | | ReplyAction = "http://tempuri.org/ImesInterface/DefineTask_006Response")] |
| | | string DefineTask_006(string MesId,string MatId,string MatName,string MatStandard,int MatNumber,string MatUnit,int Postition); |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | |
| | | |
| | | #region pdaè°ç¨AGVç¸å
³ |
| | | /// <summary> |
| | | /// AGV鿣 |
| | | /// </summary> |
| | | [HttpPost("handleAGVInspection")] |
| | | public ResponseResult HandleAGVInspection([FromBody] dynamic query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.HandleAGVInspection(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// AGVå¼å« |
| | | /// </summary> |
| | | [HttpPost("handleAGVCall")] |
| | | public ResponseResult HandleAGVCall([FromBody] dynamic query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.HandleAGVCall(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// AGVæ£éªå¤ç |
| | | /// </summary> |
| | | [HttpPost("handleAgvJy")] |
| | | public ResponseResult HandleAgvJy([FromBody] dynamic query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.HandleAgvJy(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// AGVå
¥ç«åº |
| | | /// </summary> |
| | | [HttpPost("handleAgvRk")] |
| | | public ResponseResult HandleAgvRk([FromBody] dynamic query) |
| | | { |
| | | try |
| | | { |
| | | dynamic resultInfos = new ExpandoObject(); |
| | | resultInfos.tbBillList = m.HandleAgvRk(query); |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "OK", |
| | | data = resultInfos |
| | | }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | namespace NewPdaSqlServer.Dto.Warehouse; |
| | | using System.ComponentModel.DataAnnotations; |
| | | /// <summary> |
| | | /// ç«åºéæ£æ°æ®ä¼ è¾å¯¹è±¡ |
| | | /// </summary> |
| | | public class DefineTask001Dto |
| | | { |
| | | /// <summary> |
| | | /// MES任塿 è¯ |
| | | /// </summary> |
| | | [Required(ErrorMessage = "MES任塿 è¯å¿
å¡«")] |
| | | public string MesId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æç¼ç |
| | | /// </summary> |
| | | [Required(ErrorMessage = "ç©æç¼ç å¿
å¡«")] |
| | | public string MatId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æåç§° |
| | | /// </summary> |
| | | public string MatName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æè§æ ¼ |
| | | /// </summary> |
| | | public string MatStandard { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©ææ°é |
| | | /// </summary> |
| | | [Range(1, int.MaxValue, ErrorMessage = "ç©ææ°éå¿
须大äº0ä¸ä¸ºæ´æ°")] |
| | | public int MatNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æåä½ |
| | | /// </summary> |
| | | [Required(ErrorMessage = "ç©æåä½å¿
å¡«")] |
| | | public string MatUnit { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 䏿ä½ç½® |
| | | /// </summary> |
| | | [Range(1, int.MaxValue, ErrorMessage = "ææä½ç½®ç¼å·å¿
å¡«")] |
| | | public int Postition { get; set; } |
| | | } |
| | | |
| | | |
| | | |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using System.ComponentModel.DataAnnotations; |
| | | namespace NewPdaSqlServer.Dto.Warehouse{ |
| | | |
| | | public class DefineTask002Dto |
| | | { |
| | | /// <summary> |
| | | /// æ¡ç ç¼å· |
| | | /// </summary> |
| | | [Required(ErrorMessage = "MES任塿 è¯å¿
å¡«")] |
| | | public string MesId { get; set; } |
| | | /// <summary> |
| | | /// æ£éªç¶æ |
| | | /// </summary> |
| | | [Required(ErrorMessage = "æ£éªç¶æå¿
å¡«")] |
| | | public string MatStatus { get; set; } |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using System.ComponentModel.DataAnnotations; |
| | | namespace NewPdaSqlServer.Dto.Warehouse{ |
| | | |
| | | public class DefineTask005Dto |
| | | { |
| | | /// <summary> |
| | | /// å¼å«ç¹ä½ |
| | | /// </summary> |
| | | [Range(1, int.MaxValue, ErrorMessage = "ææä½ç½®ç¼å·å¿
å¡«")] |
| | | public int Postition { get; set; } |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
¶Ô±ÈÐÂÎļþ |
| | |
| | | namespace NewPdaSqlServer.Dto.Warehouse; |
| | | using System.ComponentModel.DataAnnotations; |
| | | |
| | | /// <summary> |
| | | /// ç«åºå
¥åºæ°æ®ä¼ è¾å¯¹è±¡ |
| | | /// </summary> |
| | | public class DefineTask006Dto |
| | | { |
| | | /// <summary> |
| | | /// MES任塿 è¯ |
| | | /// </summary> |
| | | [Required(ErrorMessage = "MES任塿 è¯å¿
å¡«")] |
| | | public string MesId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æç¼ç |
| | | /// </summary> |
| | | [Required(ErrorMessage = "ç©æç¼ç å¿
å¡«")] |
| | | public string MatId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æåç§° |
| | | /// </summary> |
| | | public string MatName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æè§æ ¼ |
| | | /// </summary> |
| | | public string MatStandard { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©ææ°é |
| | | /// </summary> |
| | | [Range(1, int.MaxValue, ErrorMessage = "ç©ææ°éå¿
须大äº0ä¸ä¸ºæ´æ°")] |
| | | public int MatNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æåä½ |
| | | /// </summary> |
| | | public string MatUnit { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æå¨æ¥¼å± |
| | | /// </summary> |
| | | [Range(1, int.MaxValue, ErrorMessage = "æå¨æ¥¼å±å¿
å¡«")] |
| | | public int Postition { get; set; } |
| | | } |
| | | |
| | | |
| | | |
| | |
| | | |
| | | var sqlParams = new List<SugarParameter> { new("@barcode", p_item_barcode), new("@billNo", p_bill_no) }; |
| | | |
| | | var sql1 = @" SELECT TOP 1 A.rkCkId |
| | | FROM MES_QA_ITEMS_DETECT_01 A |
| | | LEFT JOIN MES_INV_ITEM_BARCODES B ON A.item_id = B.ITEM_ID |
| | | WHERE order_type = 'å
¶å®å
¥åºæ£' |
| | | AND A.lot_no = @billNo |
| | | AND ITEM_BARCODE = @barcode "; |
| | | // var sql1 = @" SELECT TOP 1 A.rkCkId |
| | | //FROM MES_QA_ITEMS_DETECT_01 A |
| | | // LEFT JOIN MES_INV_ITEM_BARCODES B ON A.item_id = B.ITEM_ID |
| | | //WHERE order_type = 'å
¶å®å
¥åºæ£' |
| | | // AND A.lot_no = @billNo |
| | | // AND ITEM_BARCODE = @barcode "; |
| | | |
| | | var appDepotInfo = Db.Ado.SqlQuery<dynamic>(sql1, sqlParams).First(); |
| | | // var appDepotInfo = Db.Ado.SqlQuery<dynamic>(sql1, sqlParams).First(); |
| | | |
| | | if(appDepotInfo.rkCkId != c_depot_id) |
| | | throw new Exception($"该 {p_section_code} 对åºçä»åº ä¸ æ£éªå¤å®çå
¥åºä»åºä¸ä¸è´ï¼è¯·ç¡®è®¤ï¼"); |
| | | |
| | | |
| | | |
| | | var mesDepost = Db.Queryable<MesDepots>() |
| | |
| | | |
| | | if (qtrk == null) throw new Exception("å
¶ä»å
¥åºç³è¯·åä¸åå¨ï¼"); |
| | | |
| | | |
| | | if (qtrk.Qt008 != c_depot_id.ToString()) |
| | | throw new Exception($"该 {p_section_code} 对åºçä»åº ä¸ æ£éªå¤å®çå
¥åºä»åºä¸ä¸è´ï¼è¯·ç¡®è®¤ï¼"); |
| | | |
| | | var sql = @"SELECT c.item_no ItemNo,c.item_name ItemName,c.item_model ItemModel, |
| | | ISNULL(A.qd007,0) FQty,ISNULL(A.qd008,0) SQty,ISNULL(A.qd007,0) - ISNULL(A.qd008,0) DSQty |
| | | FROM MES_ITEM_QTRR_DETAIL A |
| | |
| | | return XtItem; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// AGV鿣 |
| | | /// </summary> |
| | | /// <param name="query"></param> |
| | | /// <returns></returns> |
| | | /// <exception cref="ArgumentNullException"></exception> |
| | | /// <exception cref="ArgumentException"></exception> |
| | | /// <exception cref="Exception"></exception> |
| | | public dynamic HandleAGVInspection(dynamic query) |
| | | { |
| | | if (query == null) throw new ArgumentNullException(nameof(query)); |
| | | |
| | | if (string.IsNullOrEmpty(query.userAccount?.ToString())) |
| | | throw new ArgumentException("ç¨æ·è´¦å·ä¸è½ä¸ºç©º", nameof(query.userAccount)); |
| | | |
| | | if (string.IsNullOrEmpty(query.KbBar?.ToString())) |
| | | throw new ArgumentException("塿¿æ¡ç ä¸è½ä¸ºç©º", nameof(query.KbBar)); |
| | | |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | using (var cmd = new SqlCommand("prc_pda_AgvSj", conn)) |
| | | { |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | var parameters = new SqlParameter[] |
| | | { |
| | | new("@pi_user", SqlDbType.NVarChar, 100) { Value = query.userAccount }, |
| | | new("@pi_kb_barcode", SqlDbType.NVarChar, 100) { Value = query.KbBar }, |
| | | new("@outMsg", SqlDbType.NVarChar, 2500) { Direction = ParameterDirection.Output }, |
| | | new("@outSum", SqlDbType.Int) { Direction = ParameterDirection.Output } |
| | | }; |
| | | |
| | | cmd.Parameters.AddRange(parameters); |
| | | conn.Open(); |
| | | cmd.ExecuteNonQuery(); |
| | | |
| | | var result = new |
| | | { |
| | | message = parameters[2].Value?.ToString(), |
| | | status = Convert.ToInt32(parameters[3].Value) |
| | | }; |
| | | |
| | | if (result.status <= 0) |
| | | throw new Exception(result.message); |
| | | |
| | | return result; |
| | | } |
| | | } |
| | | } |
| | | |
| | | public dynamic HandleAGVCall(dynamic query) |
| | | { |
| | | if (query == null) throw new ArgumentNullException(nameof(query)); |
| | | |
| | | if (string.IsNullOrEmpty(query.userAccount?.ToString())) |
| | | throw new ArgumentException("ç¨æ·è´¦å·ä¸è½ä¸ºç©º", nameof(query.userAccount)); |
| | | |
| | | if (string.IsNullOrEmpty(query.XtNum?.ToString())) |
| | | throw new ArgumentException("线ä½ç¼å·ä¸è½ä¸ºç©º", nameof(query.XtNum)); |
| | | |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | using (var cmd = new SqlCommand("prc_pda_AgvHj", conn)) |
| | | { |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | var parameters = new SqlParameter[] |
| | | { |
| | | new("@pi_user", SqlDbType.NVarChar, 100) { Value = query.userAccount }, |
| | | new("@pi_xtNum", SqlDbType.NVarChar, 100) { Value = query.XtNum }, |
| | | new("@outMsg", SqlDbType.NVarChar, 2500) { Direction = ParameterDirection.Output }, |
| | | new("@outSum", SqlDbType.Int) { Direction = ParameterDirection.Output } |
| | | }; |
| | | |
| | | cmd.Parameters.AddRange(parameters); |
| | | conn.Open(); |
| | | cmd.ExecuteNonQuery(); |
| | | |
| | | var result = new |
| | | { |
| | | message = parameters[2].Value?.ToString(), |
| | | status = Convert.ToInt32(parameters[3].Value) |
| | | }; |
| | | |
| | | if (result.status <= 0) |
| | | throw new Exception(result.message); |
| | | |
| | | return result; |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | public dynamic HandleAgvJy(dynamic query) |
| | | { |
| | | if (query == null) throw new ArgumentNullException(nameof(query)); |
| | | |
| | | // åæ°éªè¯å¼ºå |
| | | if (string.IsNullOrEmpty(query.userAccount?.ToString())) |
| | | throw new ArgumentException("ç¨æ·åä¸å
许为空", nameof(query.userAccount)); |
| | | |
| | | if (string.IsNullOrEmpty(query.KbBar?.ToString())) |
| | | throw new ArgumentException("塿¿æ¡ç ä¸å
许为空", nameof(query.KbBar)); |
| | | |
| | | if (string.IsNullOrEmpty(query.jyz?.ToString())) |
| | | throw new ArgumentException("æ£éªç»æä¸å
许为空", nameof(query.jyz)); |
| | | |
| | | var _strMsg = ""; |
| | | var _intSum = ""; |
| | | |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | using (var cmd = new SqlCommand("prc_pda_AgvJy", conn)) |
| | | { |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | |
| | | // æ·»å åå¨è¿ç¨åæ° |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@pi_user", SqlDbType.NVarChar, 100) { Value = query.userAccount }, |
| | | new("@pi_kbBarcode", SqlDbType.NVarChar, 100) { Value = query.KbBar }, |
| | | new("@pi_jyz", SqlDbType.NVarChar, 100) { Value = query.jyz }, |
| | | new("@outMsg", SqlDbType.NVarChar, 2500) { Direction = ParameterDirection.Output }, |
| | | new("@outSum", SqlDbType.Int) { Direction = ParameterDirection.Output } |
| | | }; |
| | | |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | | |
| | | conn.Open(); |
| | | cmd.ExecuteNonQuery(); |
| | | |
| | | _strMsg = parameters[3].Value?.ToString() ?? ""; |
| | | _intSum = parameters[4].Value?.ToString() ?? "-1"; |
| | | |
| | | var result = Convert.ToInt32(_intSum); |
| | | if (result <= 0) throw new Exception(_strMsg); |
| | | |
| | | return new |
| | | { |
| | | message = _strMsg, |
| | | status = result, |
| | | kbBarcode = query.KbBar |
| | | }; |
| | | } |
| | | } |
| | | } |
| | | |
| | | public dynamic HandleAgvRk(dynamic query) |
| | | { |
| | | if (query == null) throw new ArgumentNullException(nameof(query)); |
| | | |
| | | if (string.IsNullOrEmpty(query.userAccount?.ToString())) |
| | | throw new ArgumentException("ç¨æ·è´¦å·ä¸è½ä¸ºç©º", nameof(query.userAccount)); |
| | | |
| | | if (string.IsNullOrEmpty(query.KbBar?.ToString())) |
| | | throw new ArgumentException("塿¿æ¡ç ä¸è½ä¸ºç©º", nameof(query.KbBar)); |
| | | |
| | | if (string.IsNullOrEmpty(query.Postition?.ToString())) |
| | | throw new ArgumentException("楼å±ä½ç½®ä¸è½ä¸ºç©º", nameof(query.Postition)); |
| | | |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | using (var cmd = new SqlCommand("prc_pda_AgvRk", conn)) |
| | | { |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | var parameters = new SqlParameter[] |
| | | { |
| | | new("@pi_user", SqlDbType.NVarChar, 100) { Value = query.userAccount }, |
| | | new("@pi_kb_barcode", SqlDbType.NVarChar, 100) { Value = query.KbBar }, |
| | | new("@pi_kb_Postition", SqlDbType.NVarChar, 100) { Value = query.Postition }, |
| | | new("@outMsg", SqlDbType.NVarChar, 2500) { Direction = ParameterDirection.Output }, |
| | | new("@outSum", SqlDbType.Int) { Direction = ParameterDirection.Output } |
| | | }; |
| | | |
| | | cmd.Parameters.AddRange(parameters); |
| | | conn.Open(); |
| | | cmd.ExecuteNonQuery(); |
| | | |
| | | var result = new |
| | | { |
| | | message = parameters[3].Value?.ToString(), |
| | | status = Convert.ToInt32(parameters[4].Value) |
| | | }; |
| | | |
| | | if (result.status <= 0) |
| | | throw new Exception(result.message); |
| | | |
| | | return result; |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |