| | |
| | | using Microsoft.Extensions.DependencyInjection; |
| | | using Microsoft.AspNetCore.Http; |
| | | using WIDESEA_WMS.IRepositories; |
| | | using Newtonsoft.Json; |
| | | using WIDESEA_Comm.LogInfo; |
| | | using WIDESEA_Core.FreeDB; |
| | | using WIDESEA_Core.ManageUser; |
| | | using OfficeOpenXml.FormulaParsing.Excel.Functions.Text; |
| | | using static System.Collections.Specialized.BitVector32; |
| | | |
| | | namespace WIDESEA_WMS.Services |
| | | { |
| | | public class Parm |
| | | { |
| | | public List<string> data { get; set; } |
| | | public int type { get; set; } |
| | | } |
| | | public partial class dt_stationinfoService |
| | | { |
| | | private readonly IHttpContextAccessor _httpContextAccessor; |
| | |
| | | //å¤ç§æ·ä¼ç¨å°è¿init代ç ï¼å
¶ä»æ
åµå¯ä»¥ä¸ç¨ |
| | | //base.Init(dbRepository); |
| | | } |
| | | FreeDB freeDB = new FreeDB(); |
| | | /// <summary> |
| | | /// 设置ç¼åæ¶ç¦ç¨å¯ç¨ |
| | | /// </summary> |
| | | /// <param name="json"></param> |
| | | /// <returns></returns> |
| | | public WebResponseContent SetStationEnable(object json) |
| | | { |
| | | WebResponseContent webResponse = new WebResponseContent(); |
| | | try |
| | | { |
| | | var Tel = UserContext.Current.UserInfo.Tel; |
| | | var data = JsonConvert.DeserializeObject<Parm>(json.ToString()); |
| | | //var updateList = FreeDB.DB.Select<dt_stationinfo>().Where(t => data.data.Contains(t.id.ToString())).ToList(); |
| | | var updateList = _repository.Find(x => data.data.Contains(x.id.ToString())).ToList(); |
| | | if (!string.IsNullOrEmpty(Tel)) |
| | | { |
| | | var types = Tel.Split(','); |
| | | foreach (var update in updateList) |
| | | { |
| | | var OK = false; |
| | | foreach (var type in types) |
| | | { |
| | | if (update.stationCode.Contains(type)) |
| | | OK = true; |
| | | } |
| | | if (!OK) throw new Exception("å½åè´¦å·æ ç¦ç¨æé!"); |
| | | } |
| | | } |
| | | |
| | | var res = freeDB.Update<dt_stationinfo>() |
| | | .Set(t => t.enable, data.type == 1) |
| | | .Where(t => data.data.Contains(t.id.ToString())) |
| | | .ExecuteAffrows(); |
| | | |
| | | var msg = data.type == 1 ? "å¯ç¨" : "ç¦ç¨"; |
| | | WriteDBLog.Write($"æå¨{msg}ç«ç¹ ", $"{string.Join('ã', updateList.Select(t => t.stationCode).ToArray())}", LogState.Sucess, "WMS", UserContext.Current.UserName); |
| | | |
| | | webResponse.OK(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | WriteDBLog.Write($"æå¨å¯ç¨æç¦ç¨ç«ç¹ ", new { éè¯¯ä¿¡æ¯ = ex.Message, æ°æ® = json }, LogState.Error, "WMS", UserContext.Current.UserName); |
| | | webResponse.Error(ex.Message); |
| | | } |
| | | return webResponse; |
| | | } |
| | | |
| | | public WebResponseContent SendAGVTask(object json) |
| | | { |
| | | WebResponseContent webResponse = new WebResponseContent(); |
| | | try |
| | | { |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | |
| | | } |
| | | return webResponse; |
| | | } |
| | | |
| | | public override WebResponseContent Add(SaveModel saveDataModel) |
| | | { |
| | | |
| | | return base.Add(saveDataModel); |
| | | } |
| | | |
| | | |
| | | |
| | | public override WebResponseContent Update(SaveModel saveModel) |
| | | { |
| | | WebResponseContent webResponse = new WebResponseContent(); |
| | | var station = _repository.FindFirst(x => x.id.ToString() == saveModel.MainData["id"].ToString()); |
| | | station.location_state = saveModel.MainData["location_state"].ToString(); |
| | | //station.bindSN = saveModel.MainData["bindSN"].ToString(); |
| | | var SNS = saveModel.MainData["bindSN"].ToString().Split(","); |
| | | List<string> list = new List<string>(); |
| | | foreach (var SN in SNS) |
| | | { |
| | | if (!string.IsNullOrEmpty(SN)) |
| | | list.Add(SN); |
| | | } |
| | | station.bindSN = string.Join(",", list); |
| | | station.quantity = list.Count; |
| | | station.stationType = saveModel.MainData["stationType"].ToString(); |
| | | station.heatNumber = saveModel.MainData["heatNumber"].ToString(); |
| | | station.Number = saveModel.MainData["Number"].ToString(); |
| | | station.billetID = saveModel.MainData["billetID"].ToString(); |
| | | station.remark = saveModel.MainData["remark"].ToString(); |
| | | station.tray_type = saveModel.MainData["tray_type"].ToString(); |
| | | if (list.Count == 0) |
| | | { |
| | | //station.tray_status = "EmptyTray"; |
| | | station.stationType = string.Empty; |
| | | station.heatNumber = string.Empty; |
| | | station.Number = string.Empty; |
| | | } |
| | | station.tray_status = string.IsNullOrEmpty(station.stationType) ? "EmptyTray" : "StrogeTray"; |
| | | if (station.location_state == "Empty" && !string.IsNullOrEmpty(station.stationType)) |
| | | { |
| | | webResponse.Error("å¾å·ä¸ä¸ºç©º,è´§ä½ç¶æä¸è½è®¾ç½®ä¸ºç©ºè´§ä½ï¼"); |
| | | } |
| | | //station.tray_status = list.Count == 0 ? "EmptyTray" : "StrogeTray"; |
| | | if (station.location_state == "Empty") |
| | | { |
| | | station.stationType = string.Empty; |
| | | station.heatNumber = string.Empty; |
| | | station.Number = string.Empty; |
| | | station.billetID = string.Empty; |
| | | station.tray_status = string.Empty; |
| | | station.bindSN = string.Empty; |
| | | station.quantity = 0; |
| | | //if (!station.stationCode.Contains("S") && !station.stationCode.Contains("X") && !station.stationCode.Contains("W01001004") && !station.stationCode.Contains("W01001005")) |
| | | // station.tray_type = string.Empty; |
| | | } |
| | | var count = _repository.Update(station, true); |
| | | if (count > 0) |
| | | webResponse.OK(); |
| | | else |
| | | webResponse.Error(); |
| | | return webResponse; |
| | | } |
| | | |
| | | } |
| | | } |