339 lines
8.9 KiB
C#
339 lines
8.9 KiB
C#
using Microsoft.AspNetCore.Http;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
using HRM.BO;
|
|
using HRM.DA;
|
|
|
|
namespace HRM.UI.Controllers.Payroll
|
|
{
|
|
[Route("api/settlement")]
|
|
[ApiController]
|
|
public class SettlementController : ControllerBase
|
|
{
|
|
private readonly IFSHeadService _fsHeadService;
|
|
private readonly IFSTranService _fsTranService;
|
|
private readonly IFSTranDetailService _fsTranDetailService;
|
|
|
|
public SettlementController(IFSHeadService fsHeadService,
|
|
IFSTranService fsTranService,
|
|
IFSTranDetailService fsTranDetailService)
|
|
{
|
|
this._fsHeadService = fsHeadService;
|
|
this._fsTranService = fsTranService;
|
|
this._fsTranDetailService = fsTranDetailService;
|
|
}
|
|
|
|
// FSHead
|
|
[HttpGet("getFSHeadById/{id}")]
|
|
public ActionResult GetFSHeadById(int id)
|
|
{
|
|
FSHead fsHead = new FSHead();
|
|
try
|
|
{
|
|
fsHead = _fsHeadService.Get(id);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok(fsHead);
|
|
}
|
|
|
|
[HttpGet("getAllFSHead")]
|
|
public ActionResult GetAllFSHead()
|
|
{
|
|
List<FSHead> fsHeads = new List<FSHead>();
|
|
try
|
|
{
|
|
fsHeads = _fsHeadService.Get();
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok(fsHeads);
|
|
}
|
|
|
|
[HttpGet("getFSHeadByStatus/{status}")]
|
|
public ActionResult GetFSHeadByStatus(EnumStatus status)
|
|
{
|
|
List<FSHead> fsHeads = new List<FSHead>();
|
|
try
|
|
{
|
|
fsHeads = _fsHeadService.Get(status);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok(fsHeads);
|
|
}
|
|
|
|
[HttpPost]
|
|
[Route("saveFSHead")]
|
|
public ActionResult SaveFSHead(FSHead fsHead)
|
|
{
|
|
try
|
|
{
|
|
_fsHeadService.Save(fsHead);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok();
|
|
}
|
|
|
|
|
|
[HttpPost]
|
|
[Route("deleteFSHead")]
|
|
public ActionResult DeleteFSHead(int id)
|
|
{
|
|
try
|
|
{
|
|
_fsHeadService.Delete(id);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok();
|
|
}
|
|
|
|
// FSTran
|
|
[HttpGet("getFSTranById/{id}")]
|
|
public ActionResult GetFSTranById(int id)
|
|
{
|
|
FSTran item = new FSTran();
|
|
try
|
|
{
|
|
item = _fsTranService.Get(id);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok(item);
|
|
}
|
|
|
|
[HttpGet("getFSTranByEmpId/{empId}")]
|
|
public ActionResult getFSTranByEmpId(int empId)
|
|
{
|
|
FSTran item = new FSTran();
|
|
try
|
|
{
|
|
item = _fsTranService.GetWithEmpID(empId);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok(item);
|
|
}
|
|
|
|
[HttpGet("getAllFSTran")]
|
|
public ActionResult GetAllFSTran()
|
|
{
|
|
List<FSTran> items = new List<FSTran>();
|
|
try
|
|
{
|
|
items = _fsTranService.Get();
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok(items);
|
|
}
|
|
|
|
[HttpGet("getFSTranByStatus/{status}")]
|
|
public ActionResult GetFSTranByStatus(EnumStatus status)
|
|
{
|
|
List<FSTran> items = new List<FSTran>();
|
|
try
|
|
{
|
|
items = _fsTranService.Get(status);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok(items);
|
|
}
|
|
|
|
[HttpGet("getFSTranByDateRange/{fromDate}/{toDate}")]
|
|
public ActionResult GetFSTranByDateRange(DateTime fromDate, DateTime toDate)
|
|
{
|
|
List<FSTran> items = new List<FSTran>();
|
|
try
|
|
{
|
|
items = _fsTranService.Get(fromDate, toDate,true);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok(items);
|
|
}
|
|
|
|
[HttpGet("getFSTranByEmpIds/{empIds}")]
|
|
public ActionResult GetFSTranByEmpIds(string empIds)
|
|
{
|
|
List<FSTran> items = new List<FSTran>();
|
|
try
|
|
{
|
|
items = _fsTranService.Get(empIds);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok(items);
|
|
}
|
|
|
|
[HttpGet("getPFAmount/{employeeNo}")]
|
|
public ActionResult GetPFAmount(string employeeNo)
|
|
{
|
|
double ans;
|
|
try
|
|
{
|
|
ans = _fsTranService.GetPFAmount(employeeNo);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok(ans);
|
|
}
|
|
|
|
[HttpPost]
|
|
[Route("saveFSTran")]
|
|
public ActionResult SaveFSTran(FSTran fsTran)
|
|
{
|
|
try
|
|
{
|
|
_fsTranService.Save(fsTran);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok();
|
|
}
|
|
|
|
[HttpPost]
|
|
[Route("deleteFSTran")]
|
|
public ActionResult DeleteFSTran(int id)
|
|
{
|
|
try
|
|
{
|
|
_fsTranService.Delete(id);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok();
|
|
}
|
|
|
|
// FSTranDetail
|
|
[HttpGet("getFSTranDetailById/{id}")]
|
|
public ActionResult GetFSTranDetailById(int id)
|
|
{
|
|
FSTranDetail item = new FSTranDetail();
|
|
try
|
|
{
|
|
item = _fsTranDetailService.Get(id);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok(item);
|
|
}
|
|
|
|
[HttpGet("getDetail/{tranId}")]
|
|
public ActionResult GetDetail(int tranId)
|
|
{
|
|
List<FSTranDetail> items = new List<FSTranDetail>();
|
|
try
|
|
{
|
|
items = _fsTranDetailService.GetDetail(tranId);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok(items);
|
|
}
|
|
|
|
[HttpGet("getDetailByEmp/{empId}")]
|
|
public ActionResult GetDetailByEmp(int empId)
|
|
{
|
|
List<FSTranDetail> items = new List<FSTranDetail>();
|
|
try
|
|
{
|
|
items = _fsTranDetailService.GetDetailByEmp(empId);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok(items);
|
|
}
|
|
|
|
|
|
|
|
[HttpPost]
|
|
[Route("saveFSTranDetail")]
|
|
public ActionResult SaveFSTranDetail(FSTranDetail item)
|
|
{
|
|
try
|
|
{
|
|
_fsTranDetailService.Save(item);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok();
|
|
}
|
|
|
|
[HttpPost]
|
|
[Route("deleteFSTranDetail")]
|
|
public ActionResult DeleteFSTranDetail(int id)
|
|
{
|
|
try
|
|
{
|
|
_fsTranDetailService.Delete(id);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
|
}
|
|
|
|
return Ok();
|
|
}
|
|
}
|
|
} |