| | |
| | | using MES.Service.DB; |
| | | using Masuit.Tools; |
| | | using MES.Service.DB; |
| | | using MES.Service.Dto.webApi; |
| | | using MES.Service.Modes; |
| | | using SqlSugar; |
| | | using System.Globalization; |
| | | |
| | | namespace MES.Service.service.BasicData; |
| | | |
| | |
| | | private bool UpdateData(SqlSugarScope db, MesRohIn mesRohIn, |
| | | List<MesRohInData> mesRohInDatas) |
| | | { |
| | | var decimals = mesRohInDatas.Select(s => s.Id).ToArray(); |
| | | var decimals = mesRohInDatas.Select(s => s.Guid).ToArray(); |
| | | |
| | | var update = db.Deleteable<MesRohIn>() |
| | | .Where(a => a.Id == mesRohIn.Id) |
| | | .Where(a => a.Guid == mesRohIn.Guid) |
| | | .ExecuteCommand() > 0; |
| | | |
| | | var insertOrUpdate = db |
| | | .Deleteable<MesRohInData>() |
| | | .Where(s => decimals.Contains(s.Id)) |
| | | .Where(s => decimals.Contains(s.Guid)) |
| | | .ExecuteCommand() > 0; |
| | | |
| | | if (update && insertOrUpdate) return true; |
| | |
| | | private bool SaveOrUpdateData(SqlSugarScope db, MesRohIn mesRohIn, |
| | | List<MesRohInData> mesRohInDatas) |
| | | { |
| | | if (mesRohIn.Id != null) |
| | | db.Deleteable<MesRohIn>().Where(s => s.Id == mesRohIn.Id) |
| | | if (mesRohIn.Guid != null) |
| | | db.Deleteable<MesRohIn>().Where(s => s.Guid == mesRohIn.Guid) |
| | | .ExecuteCommand(); |
| | | |
| | | if (mesRohInDatas.Count > 0) |
| | | db.Deleteable<MesRohInData>() |
| | | .Where(s => s.ErpId == mesRohIn.EbelnK3id).ExecuteCommand(); |
| | | |
| | | var orUpdate = base.Insert(mesRohIn); |
| | | var baOrUpdate = rohInDataManager.InsertRange(mesRohInDatas); |
| | | var orUpdate = db.Insertable(mesRohIn) |
| | | .IgnoreColumns(true).ExecuteCommand() > 0; |
| | | |
| | | |
| | | var baOrUpdate = db.Insertable(mesRohInDatas).PageSize(1) |
| | | .IgnoreColumnsNull() |
| | | .ExecuteCommand() > 0; |
| | | |
| | | if (orUpdate && baOrUpdate) return true; |
| | | throw new NotImplementedException("插入或更新失败"); |
| | | } |
| | |
| | | var eid = long.Parse(rohIn.id); |
| | | var mesRohIn = new MesRohIn(); |
| | | |
| | | |
| | | var single = base.GetSingle(it => it.EbelnK3id == eid); |
| | | if (single != null) mesRohIn.Id = single.Id; |
| | | if (single != null) mesRohIn.Guid = single.Guid; |
| | | |
| | | mesRohIn.EbelnK3id = eid; |
| | | mesRohIn.BillNo = rohIn.FBillNo; |
| | |
| | | mesRohIn.CancellationPerson = rohIn.FCancellerId; |
| | | |
| | | if (rohIn.FCancelDate != null) |
| | | mesRohIn.CancellationDate = |
| | | DateTime.ParseExact(rohIn.FCancelDate, |
| | | "yyyy-MM-dd HH:mm:ss", null); |
| | | if (!mesRohIn.CancellationPerson.IsNullOrEmpty()) |
| | | mesRohIn.CancellationDate = |
| | | DateTime.ParseExact(rohIn.FCancelDate, |
| | | "yyyy-MM-dd HH:mm:ss", null); |
| | | |
| | | mesRohIn.CreateBy = rohIn.FCreatorId; |
| | | |
| | |
| | | mesRohIn.FixedTelephone = rohIn.FixedTelephone; |
| | | mesRohIn.Address = rohIn.Address; |
| | | mesRohIn.Acctype = rohIn.Acctype; |
| | | |
| | | mesRohIn.SynchronousDate = DateTime.Now; |
| | | |
| | | return mesRohIn; |
| | | } |
| | |
| | | { |
| | | var entity = new MesRohInData |
| | | { |
| | | EbelnK3id = Convert.ToDecimal(s.id), |
| | | EbelnK3id = Convert.ToDecimal(s.id), |
| | | ErpId = Convert.ToDecimal(s.Eid), |
| | | BillNo = s.FBillNo, |
| | | ItemId = s.FMaterialId, |
| | |
| | | BusinessClose = s.FMRPCloseStatus, |
| | | BusinessFreeze = s.FMRPFreezeStatus, |
| | | Freezer = s.FFreezerId, |
| | | FreezeTime = s.FFreezeDate != null |
| | | ? DateTime.ParseExact(s.FFreezeDate, |
| | | "yyyy-MM-dd HH:mm:ss", null) |
| | | : null, |
| | | //FreezeTime = !string.IsNullOrEmpty(s.FFreezeDate) |
| | | // && DateTime.TryParseExact(s.FFreezeDate, |
| | | // new[] { "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd" }, // 支持多种格式 |
| | | // CultureInfo.InvariantCulture, |
| | | // DateTimeStyles.None, |
| | | // out var parsedDate) |
| | | // && parsedDate > new DateTime(1900, 1, 1) |
| | | // ? parsedDate |
| | | // : (DateTime?)null, |
| | | BusinessTerminate = s.FMRPTerminateStatus, |
| | | Terminator = s.FTerminaterId, |
| | | TerminateTime = s.FTerminateDate != null |
| | | ? DateTime.ParseExact(s.FTerminateDate, |
| | | "yyyy-MM-dd HH:mm:ss", null) |
| | | : null, |
| | | //TerminateTime = s.FTerminateDate != null |
| | | // ? DateTime.ParseExact(s.FTerminateDate, |
| | | // "yyyy-MM-dd HH:mm:ss", null) |
| | | // : null, |
| | | TotalReceivedQty = Convert.ToDecimal(s.FReceiveQty), //累计收料数 |
| | | RemainingReceivedQty = |
| | | Convert.ToDecimal(s.FRemainReceiveQty), |
| | | TotalStoredQty = Convert.ToDecimal(s.FStockInQty), //累计入库数 |
| | | RemainingStoredQty = Convert.ToDecimal(s.FRemainStockINQty), |
| | | TotalReturnedQty = Convert.ToDecimal(s.FMrbQty), |
| | | ReturnableReceivedQty = Convert.ToDecimal(s.FCHECKRETQTY), //收料可退数 |
| | | ReturnableReceivedQty = |
| | | Convert.ToDecimal(s.FCHECKRETQTY), //收料可退数 |
| | | ReturnableStoredQty = Convert.ToDecimal(s.FSTOCKRETQTY), //库存可退数 |
| | | SourceDocumentType = s.FSrcBillTypeId, |
| | | SourceDocumentId = s.FSrcBillNo, |
| | |
| | | ReceivingDepartment = s.FReceiveDeptId |
| | | }; |
| | | |
| | | if (s.FFreezeDate != null) |
| | | if (!s.FFreezerId.IsNullOrEmpty()) |
| | | entity.FreezeTime = |
| | | DateTime.ParseExact(s.FFreezeDate, |
| | | "yyyy-MM-dd HH:mm:ss", null); |
| | | |
| | | if (s.FTerminateDate != null) |
| | | if (!s.FTerminaterId.IsNullOrEmpty()) |
| | | entity.TerminateTime = |
| | | DateTime.ParseExact(s.FTerminateDate, |
| | | "yyyy-MM-dd HH:mm:ss", null); |
| | | |
| | | var single = rohInDataManager.GetSingle(it => |
| | | it.EbelnK3id == entity.EbelnK3id); |
| | | if (single != null) entity.Id = single.Id; |
| | | if (single != null) entity.Guid = single.Guid; |
| | | |
| | | return entity; |
| | | }).ToList(); |