/*
*所有关于Dt_inboundorder_detail_hty类的业务代码应在此处编写
*可使用repository.调用常用方法,获取EF/Dapper等信息
*如果需要事务请使用repository.DbContextBeginTransaction
*也可使用DBServerProvider.手动获取数据库相关信息
*用户信息、权限、角色等使用UserContext.Current操作
*Dt_inboundorder_detail_htyService对增、删、改查、导入、导出、审核业务代码扩展参照ServiceFunFilter
*/
using WIDESEA.Core.BaseProvider;
using WIDESEA.Core.Extensions.AutofacManager;
using WIDESEA.Entity.DomainModels;
using System.Linq;
using WIDESEA.Core.Utilities;
using System.Linq.Expressions;
using WIDESEA.Core.Extensions;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.AspNetCore.Http;
using WIDESEA.Services.IRepositories;
using System;
using WIDESEA.Services.IServices;
using WIDESEA.Core.ManageUser;
using WIDESEA.Services.Repositories;
using WIDESEA.Common;
using System.Collections.Generic;
namespace WIDESEA.Services.Services
{
public partial class Dt_inboundorder_detail_htyService
{
private readonly IHttpContextAccessor _httpContextAccessor;
private readonly IDt_inboundorder_detail_htyRepository _repository;//访问数据库
[ActivatorUtilitiesConstructor]
public Dt_inboundorder_detail_htyService(
IDt_inboundorder_detail_htyRepository dbRepository,
IHttpContextAccessor httpContextAccessor
)
: base(dbRepository)
{
_httpContextAccessor = httpContextAccessor;
_repository = dbRepository;
//多租户会用到这init代码,其他情况可以不用
//base.Init(dbRepository);
}
///
/// 添加入库订单明细历史数据
///
///
///
public WebResponseContent AddToHistory(List delKeys)
{
WebResponseContent content = new WebResponseContent();
try
{
List headIds = new List();
for (int i = 0; i < delKeys.Count(); i++)
{
IRepository repositoryDetail = Dt_inboundorder_detailRepository.Instance;
Dt_inboundorder_detail detail = repositoryDetail.FindFirst(a => a.inorderdtl_id == new System.Guid(delKeys[i].ToString()));
IRepository headhty = Dt_inboundorder_head_htyRepository.Instance;
Dt_inboundorder_head_hty _Inboundorder_Head_Hty = headhty.FindFirst(d => d.inorderhead_sourceid == detail.inorderdtl_headid);
detail.inorderdtl_state = ((int)OrderState.WMSClosed).ToString();
Dt_inboundorder_detail_hty detail_Hty = new Dt_inboundorder_detail_hty
{
inorderdtl_areaid = detail.inorderdtl_areaid,
inorderdtl_batch = detail.inorderdtl_batch,
inorderdtl_batch_cus = detail.inorderdtl_batch_cus,
inorderdtl_checkoutby = detail.inorderdtl_checkoutby,
inorderdtl_checktype = detail.inorderdtl_checktype,
inorderdtl_compeletor = UserContext.Current.UserTrueName,
inorderdtl_createtime = detail.inorderdtl_createtime,
inorderdtl_creator = detail.inorderdtl_creator,
inorderdtl_depart = detail.inorderdtl_depart,
inorderdtl_expiredate = detail.inorderdtl_expiredate,
inorderdtl_finishedqty = detail.inorderdtl_finishedqty,
inorderdtl_finishtime = DateTime.Now,
inorderdtl_grade = detail.inorderdtl_grade,
inorderdtl_headid = detail.inorderdtl_headid,
inorderdtl_isupload = detail.inorderdtl_isupload,
inorderdtl_item = detail.inorderdtl_item,
inorderdtl_loadtime = detail.inorderdtl_loadtime,
inorderdtl_materielid = detail.inorderdtl_materielid,
inorderdtl_number = detail.inorderdtl_number,
inorderdtl_operatetype = "删除",
inorderdtl_prodtdate = detail.inorderdtl_prodtdate,
inorderdtl_progressqty = detail.inorderdtl_progressqty,
inorderdtl_qty = detail.inorderdtl_qty,
inorderdtl_sourceid = _Inboundorder_Head_Hty.inorderhead_id.ToString(),
inorderdtl_state = detail.inorderdtl_state,
inorderdtl_supply = detail.inorderdtl_supply
};
//Add(detail_Hty);//将删除数据添加到历史数据表
repository.Add(detail_Hty,true);
//if (!headIds.Contains(detail.inorderdtl_headid))
// headIds.Add(detail.inorderdtl_headid);
//IDt_inboundorder_detailService detailService = Dt_inboundorder_detailService.Instance;
//detailService.Del(new object[] { detail.inorderdtl_id.ToString() }, false);
}
//content.Data = headIds;
content.Status = true;
}
catch (Exception ex)
{
content.Status = false;
content.Message = ex.Message;
}
return content;
}
}
}