You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
1.6 KiB

using System.Threading.Tasks;
2 years ago
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Volo.Abp.Caching;
using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Basedata.Domain;
using Win_in.Sfs.Basedata.Domain.Shared;
namespace Win_in.Sfs.Basedata.Application;
[Authorize]
[Route($"{BasedataConsts.RootPath}purchase-price-sheet")]
public class PurchasePriceSheetAppService : SfsBaseDataAppServiceBase<PurchasePriceSheet, PurchasePriceSheetDTO, SfsBaseDataRequestInputBase, PurchasePriceSheetEditInput, PurchasePriceSheetImportInput>, IPurchasePriceSheetAppService
{
private readonly IPurchasePriceSheetRepository _purchasePriceSheetRepository;
2 years ago
public PurchasePriceSheetAppService(IPurchasePriceSheetRepository repository, IDistributedCache<PurchasePriceSheetDTO> cache) : base(repository, cache)
{
_purchasePriceSheetRepository= repository;
2 years ago
base.CreatePolicyName = PurchasePriceSheetPermissions.Create;
base.UpdatePolicyName = PurchasePriceSheetPermissions.Update;
base.DeletePolicyName = PurchasePriceSheetPermissions.Delete;
}
/// <summary>
/// 根据供应零件号查询
/// </summary>
/// <param name="supplierCode"></param>
/// <param name="itemCode"></param>
/// <returns></returns>
[HttpGet("by-item-code")]
public virtual async Task<PurchasePriceSheetDTO> GetByItemCodeAsync(string itemCode)
{
var entity = await _purchasePriceSheetRepository.FindAsync(p => p.ItemCode== itemCode).ConfigureAwait(false);
var dto = ObjectMapper.Map<PurchasePriceSheet, PurchasePriceSheetDTO>(entity);
return dto;
}
2 years ago
}