SGGL_HBAZ/SGGL/BLL/HSSE/CostGoods/CostManageItemService.cs

180 lines
8.3 KiB
C#
Raw 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.Text;
using System.Web.UI.WebControls;
namespace BLL
{
/// <summary>
/// 费用管理明细
/// </summary>
public static class CostManageItemService
{
public static Model.SGGLDB db = Funs.DB;
/// <summary>
/// 根据主键删除费用管理明细
/// </summary>
/// <param name="costManageItemId"></param>
/// <returns></returns>
public static Model.CostGoods_CostManageItem GetCostManageItemById(string costManageItemId)
{
return Funs.DB.CostGoods_CostManageItem.FirstOrDefault(e => e.CostManageItemId == costManageItemId);
}
/// <summary>
/// 根据费用管理主键获取所有相关明细信息
/// </summary>
/// <param name="costManageId"></param>
/// <returns></returns>
public static List<Model.CostGoods_CostManageItem> GetCostManageItemByCostManageId(string costManageId)
{
return (from x in Funs.DB.CostGoods_CostManageItem where x.CostManageId == costManageId select x).ToList();
}
/// <summary>
/// 根据项目Id单位Id和月份获取安全费用管理明细
/// </summary>
/// <param name="costManageId"></param>
/// <returns></returns>
public static List<Model.CostGoods_CostManageItem> GetCostManageItemByUnitIdAndDate(string projectId, string unidId, DateTime date)
{
return (from x in Funs.DB.CostGoods_CostManageItem
join y in Funs.DB.CostGoods_CostManage
on x.CostManageId equals y.CostManageId
where y.ProjectId == projectId && y.UnitId == unidId
&& y.CostManageDate.Value.Year == date.Year && y.CostManageDate.Value.Month == date.Month
select x).ToList();
}
/// <summary>
/// 添加费用管理明细
/// </summary>
/// <param name="costManageItem"></param>
public static void AddCostManageItem(Model.CostGoods_CostManageItem costManageItem)
{
Model.SGGLDB db = Funs.DB;
Model.CostGoods_CostManageItem newCostManageItem = new Model.CostGoods_CostManageItem
{
CostManageItemId = costManageItem.CostManageItemId,
CostManageId = costManageItem.CostManageId,
InvestCostProject = costManageItem.InvestCostProject,
UseReason = costManageItem.UseReason,
Counts = costManageItem.Counts,
PriceMoney = costManageItem.PriceMoney,
AuditCounts = costManageItem.AuditCounts,
AuditPriceMoney = costManageItem.AuditPriceMoney,
Remark = costManageItem.Remark
};
db.CostGoods_CostManageItem.InsertOnSubmit(newCostManageItem);
db.SubmitChanges();
}
/// <summary>
/// 修改费用管理明细
/// </summary>
/// <param name="costManageItem"></param>
public static void UpdateCostManageItem(Model.CostGoods_CostManageItem costManageItem)
{
Model.SGGLDB db = Funs.DB;
Model.CostGoods_CostManageItem newCostManageItem = db.CostGoods_CostManageItem.FirstOrDefault(e => e.CostManageItemId == costManageItem.CostManageItemId);
if (newCostManageItem != null)
{
newCostManageItem.CostManageId = costManageItem.CostManageId;
newCostManageItem.InvestCostProject = costManageItem.InvestCostProject;
newCostManageItem.UseReason = costManageItem.UseReason;
newCostManageItem.Counts = costManageItem.Counts;
newCostManageItem.PriceMoney = costManageItem.PriceMoney;
newCostManageItem.AuditCounts = costManageItem.AuditCounts;
newCostManageItem.AuditPriceMoney = costManageItem.AuditPriceMoney;
newCostManageItem.Remark = costManageItem.Remark;
db.SubmitChanges();
}
}
/// <summary>
/// 根据费用管理主键删除所有相关明细信息
/// </summary>
/// <param name="costManageId"></param>
public static void DeleteCostManageItemByCostManageId(string costManageId)
{
Model.SGGLDB db = Funs.DB;
var q = (from x in db.CostGoods_CostManageItem where x.CostManageId == costManageId select x).ToList();
if (q != null)
{
db.CostGoods_CostManageItem.DeleteAllOnSubmit(q);
db.SubmitChanges();
}
}
/// <summary>
/// 根据主键删除费用管理信息
/// </summary>
/// <param name="costManageItemId"></param>
public static void DeleteCostManageItemById(string costManageItemId)
{
Model.SGGLDB db = Funs.DB;
Model.CostGoods_CostManageItem costManageItem = db.CostGoods_CostManageItem.FirstOrDefault(e => e.CostManageItemId == costManageItemId);
if (costManageItem != null)
{
db.CostGoods_CostManageItem.DeleteOnSubmit(costManageItem);
db.SubmitChanges();
}
}
/// <summary>
/// 投入费用项目下拉框内容
/// </summary>
/// <returns></returns>
public static ListItem[] GetInvestCostProjectList()
{
ListItem[] lis = new ListItem[29];
lis[0] = new ListItem("内业管理", "内业管理");
lis[1] = new ListItem("检测器材", "检测器材");
lis[2] = new ListItem("警示警戒", "警示警戒");
lis[3] = new ListItem("安全奖励", "安全奖励");
lis[4] = new ListItem("其他", "其他");
lis[5] = new ListItem("安全技术", "安全技术");
lis[6] = new ListItem("工业卫生", "工业卫生");
lis[7] = new ListItem("安全用电", "安全用电");
lis[8] = new ListItem("高处作业及基坑", "高处作业及基坑");
lis[9] = new ListItem("临边洞口防护", "临边洞口防护");
lis[10] = new ListItem("受限空间内作业", "受限空间内作业");
lis[11] = new ListItem("动火作业", "动火作业");
lis[12] = new ListItem("机械装备防护", "机械装备防护");
lis[13] = new ListItem("吊装运输和起重", "吊装运输和起重");
lis[14] = new ListItem("硼砂作业", "硼砂作业");
lis[15] = new ListItem("拆除工程", "拆除工程");
lis[16] = new ListItem("试压试车与有害介质作业", "试压试车与有害介质作业");
lis[17] = new ListItem("特种作业防护", "特种作业防护");
lis[18] = new ListItem("应急管理", "应急管理");
lis[19] = new ListItem("非常措施", "非常措施");
lis[20] = new ListItem("其他安全措施", "其他安全措施");
lis[21] = new ListItem("装置区封闭管理", "装置区封闭管理");
lis[22] = new ListItem("防爆施工器具", "防爆施工器具");
lis[23] = new ListItem("标识标签与锁定", "标识标签与锁定");
lis[24] = new ListItem("关键场所封闭", "关键场所封闭");
lis[25] = new ListItem("催化剂加装还原", "催化剂加装还原");
lis[26] = new ListItem("联动和化工试车", "联动和化工试车");
lis[27] = new ListItem("教育培训", "教育培训");
lis[28] = new ListItem("防护控制和排放", "防护控制和排放");
return lis;
}
public static decimal? GetCostsByUnitId(string unitId, DateTime startTime, DateTime endTime)
{
Model.SGGLDB db = Funs.DB;
var q = (from x in db.CostGoods_CostManageItem
join y in db.CostGoods_CostManage
on x.CostManageId equals y.CostManageId
where y.UnitId == unitId && y.States == BLL.Const.State_2 && y.CostManageDate >= startTime && y.CostManageDate < endTime
select x).ToList();
if (q.Count > 0)
{
return q.Sum(e => (e.AuditCounts * e.AuditPriceMoney));
}
return null;
}
}
}