CNCEC_SUBQHSE_WUHUAN/SGGL/WebAPI/Controllers/HSSE/EquipmentQualityController.cs

259 lines
10 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using BLL;
namespace WebAPI.Controllers
{
/// <summary>
/// 机具设备资质
/// </summary>
public class EquipmentQualityController : ApiController
{
#region equipmentQualityId获取机具设备资质信息
/// <summary>
/// 根据equipmentQualityId获取机具设备资质信息
/// </summary>
/// <param name="equipmentQualityId"></param>
/// <returns></returns>
public Model.ResponeData getEquipmentQualityByEquipmentQualityId(string equipmentQualityId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIEquipmentQualityService.getEquipmentQualityByEquipmentQualityIdFactoryCode(equipmentQualityId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region factoryCode获取机具设备资质信息
/// <summary>
/// 根据factoryCode获取机具设备资质信息
/// </summary>
/// <param name="factoryCode"></param>
/// <returns></returns>
public Model.ResponeData getEquipmentQualityByFactoryCode(string factoryCode)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIEquipmentQualityService.getEquipmentQualityByEquipmentQualityIdFactoryCode(factoryCode);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region projectIdunitid获取机具设备资质信息
/// <summary>
/// 根据projectId、unitid获取机具设备资质信息
/// </summary>
/// <param name="projectId"></param>
/// <param name="unitId"></param>
/// <param name="pageIndex"></param>
/// <returns></returns>
public Model.ResponeData getEquipmentQualityByProjectIdUnitId(string projectId, string unitId, int pageIndex)
{
var responeData = new Model.ResponeData();
try
{
var getDataList = APIEquipmentQualityService.getEquipmentQualityList(projectId, unitId, null);
int pageCount = getDataList.Count();
if (pageCount > 0 && pageIndex > 0)
{
getDataList = getDataList.Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList();
}
responeData.data = new { pageCount, getDataList };
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region projectIdunitid获取机具设备资质信息-
/// <summary>
/// 根据projectId、unitid获取机具设备资质信息
/// </summary>
/// <param name="projectId"></param>
/// <param name="unitId"></param>
/// <param name="pageIndex"></param>
/// <param name="strParam">查询条件</param>
/// <returns></returns>
public Model.ResponeData getEquipmentQualityByProjectIdUnitIdQuery(string projectId, string unitId, string strParam, int pageIndex)
{
var responeData = new Model.ResponeData();
try
{
var getDataList = APIEquipmentQualityService.getEquipmentQualityList(projectId, unitId, strParam);
int pageCount = getDataList.Count();
if (pageCount > 0 && pageIndex > 0)
{
getDataList = getDataList.Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList();
}
responeData.data = new { pageCount, getDataList };
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region projectIdunitid获取特岗机具设备资质资质各状态数
/// <summary>
/// 根据projectId、unitid获取特岗机具设备资质资质各状态数
/// </summary>
/// <param name="projectId"></param>
/// <param name="unitId"></param>
/// <returns></returns>
public Model.ResponeData getEquipmentQualityCount(string projectId, string unitId)
{
var responeData = new Model.ResponeData();
try
{
var getDataList = new Model.SGGLDB(Funs.ConnString).QualityAudit_EquipmentQuality.Where(x => x.ProjectId == projectId);
if (ProjectUnitService.GetProjectUnitTypeByProjectIdUnitId(projectId, unitId))
{
getDataList = getDataList.Where(x => x.UnitId == unitId);
}
////总数
int tatalCount = getDataList.Count();
////过期
int count1 = getDataList.Where(x => x.LimitDate < DateTime.Now).Count();
////即将过期
int count2 = getDataList.Where(x => x.LimitDate >= DateTime.Now && x.LimitDate < DateTime.Now.AddMonths(1)).Count();
responeData.data = new { tatalCount, count1, count2 };
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region projectIdunitid获取特岗机具设备资质资质信息
/// <summary>
/// 根据projectId、unitid获取特岗机具设备资质资质信息
/// </summary>
/// <param name="projectId">项目ID</param>
/// <param name="unitId">单位ID</param>
/// <param name="type">数据类型0-已过期1-即将过期</param>
/// <param name="pageIndex">分页</param>
/// <returns></returns>
public Model.ResponeData getEquipmentQualityByProjectIdUnitId(string projectId, string unitId, string type, int pageIndex)
{
var responeData = new Model.ResponeData();
try
{
IQueryable<Model.View_QualityAudit_EquipmentQuality> q = from x in new Model.SGGLDB(Funs.ConnString).View_QualityAudit_EquipmentQuality
where x.ProjectId == projectId
select x;
if (ProjectUnitService.GetProjectUnitTypeByProjectIdUnitId(projectId, unitId))
{
q = q.Where(x => x.UnitId == unitId);
}
if (type == "0")
{
q = q.Where(x => x.LimitDate < DateTime.Now);
}
else if (type == "1")
{
q = q.Where(x => x.LimitDate >= DateTime.Now && x.LimitDate < DateTime.Now.AddMonths(1));
}
int pageCount = q.Count();
if (pageCount == 0)
{
responeData.data = new { pageCount, q};
}
else
{
var getDataList = from x in q.OrderBy(u => u.LimitDate).Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize)
select new
{
x.EquipmentQualityId,
x.ProjectId,
x.EquipmentQualityCode,
x.UnitId,
x.UnitName,
x.SpecialEquipmentId,
x.SpecialEquipmentName,
x.EquipmentQualityName,
x.SizeModel,
x.FactoryCode,
x.CertificateCode,
CheckDate = string.Format("{0:yyyy-MM-dd}", x.CheckDate),
LimitDate = string.Format("{0:yyyy-MM-dd}", x.LimitDate),
InDate = string.Format("{0:yyyy-MM-dd}", x.InDate),
OutDate = string.Format("{0:yyyy-MM-dd}", x.OutDate),
x.ApprovalPerson,
x.CarNum,
x.Remark,
x.CompileMan,
x.CompileManName,
CompileDate = string.Format("{0:yyyy-MM-dd}", x.CompileDate),
AttachUrl = x.AttachUrl.Replace('\\', '/')
};
responeData.data = new { pageCount, getDataList };
}
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region QualityAudit_EquipmentQuality
/// <summary>
/// 保存QualityAudit_EquipmentQuality
/// </summary>
/// <param name="newitem">机具设备资质</param>
/// <returns></returns>
[HttpPost]
public Model.ResponeData SaveEquipmentQuality([FromBody] Model.EquipmentQualityItem newitem)
{
var responeData = new Model.ResponeData();
try
{
APIEquipmentQualityService.SaveEquipmentQuality(newitem);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
}
}