using Admin.NET.Core.Service;
using Admin.NET.Application.Entity;
using Microsoft.AspNetCore.Http;
using System.Data;
using System.Web;
using System.Text;
using Furion.DatabaseAccessor;
using MaxMind.GeoIP2.Responses;
using Newtonsoft.Json;
using static SKIT.FlurlHttpClient.Wechat.Api.Events.NotifyThirdFastRegisterBetaAppEvent.Types;
namespace Admin.NET.Application;
///
/// 适配记录服务
///
[ApiDescriptionSettings(ApplicationConst.SoftwareAdapterServiceGroupName, Order = 100)]
public class RecordAdapterService : IDynamicApiController, ITransient
{
private readonly SqlSugarRepository _rep;
private readonly SqlSugarRepository _repAdapterManagement;
private readonly SqlSugarRepository _repAdapterCategories;
private readonly SqlSugarRepository _repWmsRecordReceivingDelivery;
private readonly SqlSugarRepository _repWmsStockQuanRep;
public RecordAdapterService(SqlSugarRepository rep, SqlSugarRepository repAdapterManagement, SqlSugarRepository repAdapterCategories, SqlSugarRepository repWmsRecordReceivingDelivery,
SqlSugarRepository repWmsStockQuanRep)
{
_rep = rep;
_repAdapterManagement = repAdapterManagement;
_repAdapterCategories = repAdapterCategories;
_repWmsRecordReceivingDelivery = repWmsRecordReceivingDelivery;
_repWmsStockQuanRep = repWmsStockQuanRep;
}
///
/// 分页查询适配记录
///
///
///
[HttpPost]
[ApiDescriptionSettings(Name = "Page")]
[Description("RecordAdapter/Page")]
public async Task> Page(RecordAdapterInput input)
{
var query = CommonPageFilter(input);
return await query.OrderBuilder(input, "", "Id").ToPagedListAsync(input.Page, input.PageSize);
}
///
/// 不分页查询适配记录
///
///
///
[HttpGet]
[ApiDescriptionSettings(Name = "List")]
[Description("RecordAdapter/List")]
public async Task> List([FromQuery] RecordAdapterInput input)
{
var query = CommonPageFilter(input);
return await query.OrderBuilder(input, "", "Id").Select().ToListAsync();
}
///
/// 增加适配记录
///
///
///
[HttpPost]
[ApiDescriptionSettings(Name = "Add")]
[Description("RecordAdapter/Add")]
public async Task Add(AddRecordAdapterInput input)
{
var entity = input.Adapt();
//重复性验证
await CheckExist(entity);
await _rep.InsertAsync(entity);
return entity.Id;
}
///
/// CC调用更改适配器记录状态
///
///
///
[HttpPost]
[ApiDescriptionSettings(Name = "UpdateAdapterRecordByCC")]
[Description("RecordAdapter/UpdateAdapterRecordByCC")]
[AllowAnonymous]
public async Task UpdateAdapterRecordByCC(UpdateAdapterRecordByCCInput input)
{
var entity = await _rep.AsQueryable().Where(p => input.RecordAdapterIdList.Contains(p.Id)).ToListAsync();
var RecordReceivingDeliveryIDList = new List();
var wmsRecordReceivingDelivery = new List();
var stockList = new List();
foreach (var item in entity)
{
var stockModel = new WmsStockQuan();
var BaoWen = new AdminResult