180 lines
8.3 KiB
C#
180 lines
8.3 KiB
C#
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;
|
||
}
|
||
}
|
||
} |