采购单详情界面

This commit is contained in:
陈淳
2023-01-06 18:39:54 +08:00
parent fd018555fa
commit 4ff771b8a6
11 changed files with 480 additions and 188 deletions

View File

@@ -26,8 +26,20 @@ namespace Yi.Framework.ApiMicroservice.Controllers.ERP
{
var result = await _purchaseDetailsService.PageListAsync(input, page);
return Result.Success().SetData(result);
}
[HttpGet]
[Route("{id}")]
public async Task<Result> GetListByPurchaseId(long id)
{
var result = await _purchaseDetailsService.GetListByPurchaseIdAsync(id);
return Result.Success().SetData(result);
}
/// <summary>
/// 单查
/// </summary>

View File

@@ -18,5 +18,7 @@ namespace Yi.Framework.DtoModel.ERP.Purchase
public string SupplierName { get; set; } = string.Empty;
public PurchaseStateEnum PurchaseState { get; set; }
}
}

View File

@@ -5,6 +5,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Yi.Framework.Model.Base;
using Yi.Framework.Model.ERP.Entitys;
namespace Yi.Framework.DtoModel.ERP.PurchaseDetails
{
@@ -16,5 +17,17 @@ namespace Yi.Framework.DtoModel.ERP.PurchaseDetails
public long TotalNumber { get; set; }
public long CompleteNumber { get; set; }
public string? Remarks { get; set; }
public long PurchaseId { get; set; }
}
public static class PurchaseDetailsCreateUpdateInputExtensions
{
public static List<PurchaseDetailsCreateUpdateInput> SetPurchaseId(this List<PurchaseDetailsCreateUpdateInput> purchaseDetailsEntities, long purchaseId)
{
purchaseDetailsEntities.ForEach(u => u.PurchaseId = purchaseId);
return purchaseDetailsEntities;
}
}
}

View File

@@ -12,5 +12,7 @@ namespace Yi.Framework.Interface.ERP
public interface IPurchaseDetailsService : ICrudAppService<PurchaseDetailsGetListOutput, long, PurchaseDetailsCreateUpdateInput>
{
Task<PageModel<List<PurchaseDetailsGetListOutput>>> PageListAsync(PurchaseDetailsGetListInput input, PageParModel page);
Task<List<PurchaseDetailsGetListOutput>> GetListByPurchaseIdAsync(long purchaseId);
}
}

View File

@@ -20,7 +20,7 @@ namespace Yi.Framework.Model.ERP.Entitys
/// </summary>
[JsonConverter(typeof(ValueToStringConverter))]
[SugarColumn(IsPrimaryKey = true)]
public long Id { get; set; }
public long Id { get; set; }
/// <summary>
/// 租户id
@@ -35,28 +35,28 @@ namespace Yi.Framework.Model.ERP.Entitys
/// <summary>
/// 物料id
/// </summary>
public long MaterialId { get; set; }
public long MaterialId { get; set; }
/// <summary>
/// 物料名称
/// </summary>
public string MaterialName { get; set; }=string.Empty;
public string MaterialName { get; set; } = string.Empty;
/// <summary>
/// 物料单位
/// </summary>
public string MaterialUnit { get; set; }=string.Empty ;
public string MaterialUnit { get; set; } = string.Empty;
/// <summary>
/// 单价
/// </summary>
public float UnitPrice { get; set; }
public float UnitPrice { get; set; }
/// <summary>
/// 总数量
/// </summary>
public long TotalNumber { get; set; }
public long TotalNumber { get; set; }
/// <summary>
/// 已完成数量
/// </summary>
@@ -65,5 +65,9 @@ namespace Yi.Framework.Model.ERP.Entitys
/// 备注
/// </summary>
public string? Remarks { get; set; }
}
}

View File

@@ -15,7 +15,7 @@
<ItemGroup>
<PackageReference Include="NEST" Version="7.16.0" />
<PackageReference Include="SqlSugarCore" Version="5.1.3.43-preview03" />
<PackageReference Include="SqlSugarCore" Version="5.1.3.43-preview04" />
</ItemGroup>
<ItemGroup>

View File

@@ -16,6 +16,12 @@ namespace Yi.Framework.Service.ERP
{
public class PurchaseDetailsService : CrudAppService<PurchaseDetailsEntity, PurchaseDetailsGetListOutput, long, PurchaseDetailsCreateUpdateInput>, IPurchaseDetailsService
{
public async Task<List<PurchaseDetailsGetListOutput>> GetListByPurchaseIdAsync(long purchaseId)
{
var data= await Repository._DbQueryable.Where(u => u.PurchaseId == purchaseId).ToListAsync();
return await MapToGetListOutputDtos(data);
}
public async Task<PageModel<List<PurchaseDetailsGetListOutput>>> PageListAsync(PurchaseDetailsGetListInput input, PageParModel page)
{
RefAsync<int> totalNumber = 0;

View File

@@ -8,6 +8,7 @@ using System.Threading.Tasks;
using Yi.Framework.Common.Attribute;
using Yi.Framework.Common.Models;
using Yi.Framework.DtoModel.ERP.Purchase;
using Yi.Framework.DtoModel.ERP.PurchaseDetails;
using Yi.Framework.Interface.ERP;
using Yi.Framework.Model.Base;
using Yi.Framework.Model.ERP.Entitys;
@@ -49,7 +50,9 @@ namespace Yi.Framework.Service.ERP
TryToSetTenantId(entity);
var purchaseId = await Repository.InsertReturnSnowflakeIdAsync(entity);
entity.Id = purchaseId;
await _purchaseDetailsService.CreateAsync(input.PurchaseDetails);
await _purchaseDetailsService.CreateAsync(input.PurchaseDetails.SetPurchaseId(purchaseId));
uow.Commit();
}
return await MapToGetListOutputDtoAsync(entity); ;