using Cksoft.Data;
using Cksoft.Data.Repository;
using Cksoft.Unity;
using Cksoft.Unity.Log4NetConfig;
using DllEapDal;
using DllEapEntity.Dtos;
using DllEapEntity.PM;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Text;
namespace DllEapBll.Controllers
{
///
/// 保养记录
///
[Authorize]
[ApiController]
[Route("eap/api/[controller]/[action]")]
public class PMHistoryController : ControllerBase
{
///
/// 保养记录列表
///
///
///
///
///
///
///
///
[HttpGet]
public LayuiModel Get(string filter, string sort, int pageIndex = 1, int pageSize = 10, string sortField = "a.ID", string sortOrder = "ascend")
{
if (!string.IsNullOrEmpty(sort))
{
var arr = sort.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
if (arr != null && arr.Length > 0)
{
sortField = arr[0];
sortOrder = arr[1];
}
}
if (sortOrder == "descend")
{
sortOrder = "desc";
}
else
{
sortOrder = "asc";
}
int start, end;
start = (pageIndex - 1) * pageSize + 1;
end = start + pageSize;
using (IDatabase db = DbFactory.Base("eapslave"))
{
db.BeginTrans();
var dal = new PMHistoryDal(db);
var total = dal.GetCount(filter);
string errorinfo = string.Empty;
var roles = dal.Get(start, pageSize, sortOrder, sortField, filter, errorinfo);
return new LayuiModel
{
code = 1,
count = total,
data = roles,
msg = ""
};
}
}
///
/// 保养记录详情
///
///
///
[HttpGet]
public PMHistory GetSingle(int id)
{
using (IDatabase db = DbFactory.Base("eapslave"))
{
var dal = new PMHistoryDal(db);
return dal.Get(id);
}
}
///
/// 新增/修改保养记录
///
///
///
[HttpPost]
public EapResponse Add([FromBody] PMHistory programMst)
{
string usercode = Request.Headers["usercode"];
using (IDatabase db = DbFactory.Base("eap"))
{
db.BeginTrans();
var dal = new PMHistoryDal(db);
string errorinfo = string.Empty;
var response = new EapResponse() { Code = 1, Msg = string.Empty };
int id = -1;
if (programMst.ID == 0)
{
id = dal.Add(programMst, usercode, ref errorinfo);
}
else
{
id = dal.Update(programMst, usercode, ref errorinfo);
}
if (id < 0)
{
db.Rollback();
response.Code = -1;
response.Msg = errorinfo;
}
else
{
db.Commit();
LogHelper.LogFatal("新增PMHistory-->" + Json.ToJson(programMst), "用户操作", usercode);
}
response.Id = id;
return response;
}
}
///
/// 删除记录
///
///
///
[HttpPost]
public EapResponse Delete([FromBody] int id)
{
IDatabase db = null;
string errormsg = string.Empty;
try
{
db = DbFactory.Base("eap");
var dal = new PMHistoryDal(db);
db.BeginTrans();
var model = dal.Get(id);
var res = dal.Delete(id, ref errormsg);
if (res < 0)
{
db.Rollback();
return new EapResponse()
{
Code = -1,
Msg = errormsg
};
}
db.Commit();
LogHelper.LogFatal("删除PMHistory-->:" + Json.ToJson(model), "用户操作", Request.Headers["usercode"]);
return new EapResponse()
{
Code = 1,
Msg = ""
};
}
catch (Exception e)
{
errormsg = e.Message;
return new EapResponse
{
Code = -1,
Msg = errormsg
};
}
finally
{
if (db != null)
db.Close();
}
}
}
}