using Masuit.Tools; using Newtonsoft.Json; using System.Text.Json.Nodes; using System.Xml.Serialization; using WIDESEA.Common; using WIDESEA_Common; using WIDESEA_Common.ZY; using WIDESEA_Core; using WIDESEA_Core.Enums; using WIDESEA_Core.Helper; using WIDESEA_Model.Models; namespace WIDESEA_StoragIntegrationServices { public partial class ToAPPService { /// /// 保存制动盘数据 /// /// /// public WebResponseContent SaveZDPInfo(SaveModel saveModel) { WebResponseContent content = new WebResponseContent(); try { //如当前存在未开始入库的车轮或制动盘数据,则禁止保存新数据 以防数据混乱 var waitInbound = _InWheels_MesRepository.QueryFirst(x => x.Wheels_CurrentStatue == "0"); if (waitInbound != null) throw new Exception("当前存在未开始入库的制动盘,请先入库后再保存信息!"); //制动盘条码 string clCode = saveModel.MainData["code"].ToString(); if (string.IsNullOrEmpty(clCode)) throw new Exception($"制动盘条码不能为空"); var clinfo = _InZdp_MesRepository.QueryFirst(x => x.Zdp_code == clCode); if (clinfo != null) throw new Exception("制动盘条码录入信息已存在"); //检测库存是否已存在 _ZdpStockRepository.QueryFirst(x => x.Zdp_code == clCode); if (clinfo != null) throw new Exception("库内已存在,请检查库存"); //序列号 //string madeUnit = saveModel.MainData["xlh"].ToString(); //制动盘号 string ZPH = saveModel.MainData["ZPH"].ToString(); //车型 string Cartype = saveModel.MainData["chexing"].ToString(); //新旧 string newOrOld = saveModel.MainData["neworold"].ToString(); //位置(侧/中) string POS = saveModel.MainData["POS"].ToString(); // 螺栓型号 string LSXH = saveModel.MainData["LSXH"].ToString(); //材质(铸钢) string MAT = saveModel.MainData["MAT"].ToString(); //产地(进口/国产) string SITE = saveModel.MainData["SITE"].ToString(); //毂孔直径A1 string GKA1 = saveModel.MainData["GKA1"].ToString(); //毂孔直径A2 string GKA2 = saveModel.MainData["GKA2"].ToString(); //毂孔直径A3 string GKA3 = saveModel.MainData["GKA3"].ToString(); //毂孔直径A string GKA = saveModel.MainData["GKA"].ToString(); //毂孔直径B1 string GKB1 = saveModel.MainData["GKB1"].ToString(); //毂孔直径B2 string GKB2 = saveModel.MainData["GKB2"].ToString(); //毂孔直径A3 string GKB3 = saveModel.MainData["GKB3"].ToString(); //毂孔直径A string GKB = saveModel.MainData["GKB"].ToString(); //毂孔直径C1 string GKC1 = saveModel.MainData["GKC1"].ToString(); //毂孔直径C2 string GKC2 = saveModel.MainData["GKC2"].ToString(); //毂孔直径C3 string GKC3 = saveModel.MainData["GKC3"].ToString(); //毂孔直径A string GKC = saveModel.MainData["GKC"].ToString(); //毂孔直径 string GKJZ = saveModel.MainData["GKJZ"].ToString(); //螺栓侧剩余磨耗 string LSCSYMH = saveModel.MainData["LSCSYMH"].ToString(); //螺母侧剩余磨耗 string LMCSYMH = saveModel.MainData["LMCSYMH"].ToString(); //入库日期 string rksj = saveModel.MainData["rksj"].ToString(); if (_locationRepository.QueryData(x => x.LocationStatus == (int)LocationEnum.Free && x.EnalbeStatus == 1).Count < 2) throw new Exception($"库位数量不足,不允许入库"); Dt_InZdp_mes dt_InZdp_ = new Dt_InZdp_mes { Zdp_code = clCode, // 主键或编号 Zdp_ZPH = ZPH, // 制动盘号 Zdp_chexing = Cartype, // 车型 Zdp_neworold = newOrOld, // 新旧 Zdp_POS = POS, // 位置(侧/中) Zdp_LSXH = LSXH, // 螺栓型号 Zdp_MAT = MAT, // 材质(铸钢) Zdp_SITE = SITE, // 产地(进口/国产) Zdp_GKA1 = GKA1, // 毂孔直径A1 Zdp_GKA2 = GKA2, // 毂孔直径A2 Zdp_GKA3 = GKA3, // 毂孔直径A3 Zdp_GKA = GKA, // 毂孔直径A Zdp_GKB1 = GKB1, // 毂孔直径B1 Zdp_GKB2 = GKB2, // 毂孔直径B2 Zdp_GKB3 = GKB3, // 毂孔直径B3 Zdp_GKB = GKB, // 毂孔直径B Zdp_GKC1 = GKC1, // 毂孔直径C1 Zdp_GKC2 = GKC2, // 毂孔直径C2 Zdp_GKC3 = GKC3, // 毂孔直径C3 Zdp_GKC = GKC, // 毂孔直径C Zdp_GKJZ = GKJZ, // 毂孔直径基准 Zdp_LSCSYMH = LSCSYMH, // 螺栓侧剩余磨耗 Zdp_LMCSYMH = LMCSYMH, // 螺母侧剩余磨耗 Zdp_rksj = rksj, // 入库日期 Zdp_CurrentStatue="0" }; if (_InZdp_MesRepository.AddData(dt_InZdp_) > 0) { return content.OK("保存成功"); } else { return content.Error("保存失败"); } } catch (Exception ex) { return content.Error($"{ex.Message}"); } } } }