70 lines
2.7 KiB
C#
70 lines
2.7 KiB
C#
![]() |
using Back.Data.Models;
|
|||
|
using Back.Services;
|
|||
|
using Back.Services.Warehouse;
|
|||
|
using Microsoft.AspNetCore.Authorization;
|
|||
|
using Microsoft.AspNetCore.Http;
|
|||
|
using Microsoft.AspNetCore.Mvc;
|
|||
|
using Shared.DTOs.Warehouse;
|
|||
|
using Shared.Enums;
|
|||
|
using System.ComponentModel.Design;
|
|||
|
|
|||
|
namespace Back.Controllers.Warehouse
|
|||
|
{
|
|||
|
[Route("api/[controller]")]
|
|||
|
[Authorize]
|
|||
|
[ApiController]
|
|||
|
public class ReceiptController : ControllerBase
|
|||
|
{
|
|||
|
private readonly ReceiptService _receiptService;
|
|||
|
private readonly servUser _servUser;
|
|||
|
[HttpGet("{ItemID}")]
|
|||
|
public async Task<IActionResult> Get(int ItemID)
|
|||
|
{
|
|||
|
var claim = HttpContext.User.Claims.First(c => c.Type == "UserID");
|
|||
|
var UserID = claim.Value;
|
|||
|
var user = await _servUser.GetUserByUserID(Convert.ToInt32(UserID));
|
|||
|
var CompanyID = user.RolUsers.First().CompanyID;
|
|||
|
return Ok(await _receiptService.Get(ItemID, CompanyID));
|
|||
|
}
|
|||
|
[HttpGet("AllReceip")]
|
|||
|
public async Task<IActionResult> GetAll(TypeReceipt? Type = null, int CODID = 0)
|
|||
|
{
|
|||
|
var claim = HttpContext.User.Claims.First(c => c.Type == "UserID");
|
|||
|
var UserID = claim.Value;
|
|||
|
var user = await _servUser.GetUserByUserID(Convert.ToInt32(UserID));
|
|||
|
var CompanyID = user.RolUsers.First().CompanyID;
|
|||
|
return Ok(await _receiptService.GetAll(CompanyID, Type, CODID));
|
|||
|
}
|
|||
|
[HttpPost("ADD")]
|
|||
|
public async Task<IActionResult> AddReceipt(ReceiptDto item)
|
|||
|
{
|
|||
|
// validate ADD
|
|||
|
var newmodel = await _receiptService.ADD(item);
|
|||
|
if (newmodel != null) return Ok(newmodel);
|
|||
|
else return BadRequest(new List<string> { "خطا در صدور" });
|
|||
|
}
|
|||
|
|
|||
|
[HttpPut("Update")]
|
|||
|
public async Task<IActionResult> UpdateReceipt(ReceiptDto item)
|
|||
|
{
|
|||
|
// validate Update
|
|||
|
var Updatemodel = await _receiptService.Update(item);
|
|||
|
if (Updatemodel != null) return Ok(Updatemodel);
|
|||
|
else return BadRequest(new List<string> { "خطا در ویرایش" });
|
|||
|
}
|
|||
|
[HttpDelete("{ItemID}")]
|
|||
|
public async Task<IActionResult> DeleteReceipt(int ItemID)
|
|||
|
{
|
|||
|
// validate Delete
|
|||
|
var claim = HttpContext.User.Claims.First(c => c.Type == "UserID");
|
|||
|
var UserID = claim.Value;
|
|||
|
var user = await _servUser.GetUserByUserID(Convert.ToInt32(UserID));
|
|||
|
var CompanyID = user.RolUsers.First().CompanyID;
|
|||
|
|
|||
|
var Deletemodel = await _receiptService.Delete(ItemID, CompanyID);
|
|||
|
if (Deletemodel) return Ok();
|
|||
|
else return BadRequest(new List<string> { "خطا در حذف" });
|
|||
|
}
|
|||
|
}
|
|||
|
}
|