/// <summary> /// 初始化一个<see cref="InStorOutputDto"/>类型的新实例 /// </summary> public InStorOutputDto(InStor entity) { Id = entity.Id; InstorVoucher = entity.InstorVoucher; MatId = entity.MatId; SupId = entity.SupId; InstorPrice = entity.InstorPrice; InstorNum = entity.InstorNum; InstorDate = entity.InstorDate; Abolishflag = entity.Abolishflag; InstorName = entity.InstorName; StorName = entity.StorName; InstorVerifyState = entity.InstorVerifyState; VerifyOpinion = entity.VerifyOpinion; RecoilState = entity.RecoilState; InstorRemark = entity.InstorRemark; RecoilDate = entity.RecoilDate; RecoilReason = entity.RecoilReason; RecoilEmpId = entity.RecoilEmpId; AbolishDate = entity.AbolishDate; AbolishReason = entity.AbolishReason; AbolishEmpId = entity.AbolishEmpId; SupCloseAccuntsFlag = entity.SupCloseAccuntsFlag; SupCloseAccuntsDate = entity.SupCloseAccuntsDate; SupCloseAccuntsEmpId = entity.SupCloseAccuntsEmpId; SupCloseAccuntsRemark = entity.SupCloseAccuntsRemark; CreatorId = entity.CreatorId; CreatedTime = entity.CreatedTime; LastUpdaterId = entity.LastUpdaterId; LastUpdatedTime = entity.LastUpdatedTime; }
/// <summary> /// 更新入库反冲信息 /// </summary> /// <param name="dtos">包含更新信息的入库信息DTO信息</param> /// <returns>业务操作结果</returns> public virtual async Task <OperationResult> UpdateRecoilInStors(InStorInputDto[] dtos) { Check.Validate <InStorInputDto, int>(dtos, nameof(dtos)); //强制修改反冲状态 if (dtos[0].RecoilNum != 0) { dtos[0].RecoilState = true; } //修改库存信息 MatBasedata matdb = await MatBasedataRepository.GetAsync(dtos[0].MatId); matdb.CurrStock = matdb.CurrStock - dtos[0].RecoilNum; MatBasedataRepository.Update(matdb); //累计反冲数量 InStor Instordb = await InStorRepository.GetAsync(dtos[0].Id); dtos[0].RecoilNum = dtos[0].RecoilNum + Instordb.RecoilNum; return(await InStorRepository.UpdateAsync(dtos).ConfigureAwait(false)); }