集团主数据在建项目数据分析

This commit is contained in:
2026-06-10 21:07:27 +08:00
parent 855eec9965
commit ea1acf5f93
27 changed files with 2917 additions and 78 deletions
@@ -0,0 +1,77 @@
--公司级:集团主数据在建项目数据分析
--有英文的加英文菜单名称【MenuEnName】
--Analysis of master data project
--注:菜单放在【集团主数据在建项目使用情况】菜单下面;根据定制单位代码处理
--SELECT SuperMenu,MenuType,* FROM Sys_Menu WHERE MenuName='集团主数据在建项目使用情况'
--公司级:集团主数据在建项目数据分析
IF NOT EXISTS (SELECT * FROM Sys_Menu WHERE MenuId = '204ACA82-15B4-4C80-AE9F-ACF25CE79888')
BEGIN
INSERT INTO dbo.Sys_Menu (MenuId, MenuName,Url, SortIndex, SuperMenu, MenuType, IsOffice, IsEnd, IsUsed)
VALUES (N'204ACA82-15B4-4C80-AE9F-ACF25CE79888', N'集团主数据在建项目数据分析', N'ProjectData/MasterProjectDataAnalysis.aspx', 16, '75AA6177-8AAD-4AA4-BC4E-3883FB095A65', 'Menu_SysSet', 1,1, 1);
END
GO
--删除已关联项目填写的原因
delete from Project_MasterDataUsage
where pro_id in (select distinct MasterSysId from Base_Project)
GO
--drop table Project_MasterDataAnalysis
--GO
--集团主数据在建项目数据分析
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'Project_MasterDataAnalysis') AND type = N'U')
BEGIN
CREATE TABLE [dbo].[Project_MasterDataAnalysis](
[Id] [nvarchar](50) NOT NULL,
[CollCropCode] [nvarchar](100) NOT NULL,
[UnitId] [nvarchar](50) NOT NULL,
[ReportDate] [datetime] NOT NULL,
[DataDate] [datetime] NOT NULL,
[Total] [int] NOT NULL,
[MasterTotal] [int] NOT NULL,
[QHSETotal] [int] NOT NULL,
[ZhengChang] [int] NOT NULL,
[DaiJian] [int] NOT NULL,
[BuYong] [int] NOT NULL,
[YuLiXiang] [int] NOT NULL,
[CreateUser] [nvarchar](200) NOT NULL,
CONSTRAINT [PK_Project_MasterDataAnalysis] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
ALTER TABLE [dbo].[Project_MasterDataAnalysis] ADD CONSTRAINT [DF_Project_MasterDataAnalysis_DataDate] DEFAULT (getdate()) FOR [DataDate]
ALTER TABLE [dbo].[Project_MasterDataAnalysis] ADD CONSTRAINT [DF_Project_MasterDataAnalysis_Total] DEFAULT ((0)) FOR [Total]
ALTER TABLE [dbo].[Project_MasterDataAnalysis] ADD CONSTRAINT [DF_Project_MasterDataAnalysis_MasterTotal] DEFAULT ((0)) FOR [MasterTotal]
ALTER TABLE [dbo].[Project_MasterDataAnalysis] ADD CONSTRAINT [DF_Project_MasterDataAnalysis_QHSETotal] DEFAULT ((0)) FOR [QHSETotal]
ALTER TABLE [dbo].[Project_MasterDataAnalysis] ADD CONSTRAINT [DF_Project_MasterDataAnalysis_ZhengChang] DEFAULT ((0)) FOR [ZhengChang]
ALTER TABLE [dbo].[Project_MasterDataAnalysis] ADD CONSTRAINT [DF_Project_MasterDataAnalysis_DaiJian] DEFAULT ((0)) FOR [DaiJian]
ALTER TABLE [dbo].[Project_MasterDataAnalysis] ADD CONSTRAINT [DF_Project_MasterDataAnalysis_BuYong] DEFAULT ((0)) FOR [BuYong]
ALTER TABLE [dbo].[Project_MasterDataAnalysis] ADD CONSTRAINT [DF_Project_MasterDataAnalysis_YuLiXiang] DEFAULT ((0)) FOR [YuLiXiang]
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'数据主键Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Project_MasterDataAnalysis', @level2type=N'COLUMN',@level2name=N'Id'
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'二级单位信用代码' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Project_MasterDataAnalysis', @level2type=N'COLUMN',@level2name=N'CollCropCode'
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'二级单位Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Project_MasterDataAnalysis', @level2type=N'COLUMN',@level2name=N'UnitId'
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'上报日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Project_MasterDataAnalysis', @level2type=N'COLUMN',@level2name=N'ReportDate'
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'数据汇总日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Project_MasterDataAnalysis', @level2type=N'COLUMN',@level2name=N'DataDate'
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'总数(正常+待建+预立项)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Project_MasterDataAnalysis', @level2type=N'COLUMN',@level2name=N'Total'
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主数据在建项目总数' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Project_MasterDataAnalysis', @level2type=N'COLUMN',@level2name=N'MasterTotal'
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'企业在建项目总数' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Project_MasterDataAnalysis', @level2type=N'COLUMN',@level2name=N'QHSETotal'
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'正常' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Project_MasterDataAnalysis', @level2type=N'COLUMN',@level2name=N'ZhengChang'
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'待建' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Project_MasterDataAnalysis', @level2type=N'COLUMN',@level2name=N'DaiJian'
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'申请不用' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Project_MasterDataAnalysis', @level2type=N'COLUMN',@level2name=N'BuYong'
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'预立项' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Project_MasterDataAnalysis', @level2type=N'COLUMN',@level2name=N'YuLiXiang'
END
GO
+1
View File
@@ -711,6 +711,7 @@
<Compile Include="Person\Person_TrainingPlanService.cs" />
<Compile Include="ProjectData\MainItemService.cs" />
<Compile Include="ProjectData\ProjectData_CodeTemplateRuleService.cs" />
<Compile Include="ProjectData\ProjectMasterDataAnalysisService.cs" />
<Compile Include="ProjectData\ProjectMasterDataUsageService.cs" />
<Compile Include="ProjectData\ProjectSateService.cs" />
<Compile Include="ProjectData\ProjectService.cs" />
@@ -18,6 +18,22 @@ namespace BLL
return Funs.DB.DCGL_Check_CheckRectify.FirstOrDefault(e => e.CheckRectifyId == checkRectifyId);
}
/// <summary>
/// 根据主表ID撤回整改
/// </summary>
/// <param name="checkRectifyId">主表ID</param>
public static void RevokeByRectifyId(string checkRectifyId)
{
var items = (from x in Funs.DB.DCGL_Check_CheckRectify
where x.CheckRectifyId == checkRectifyId && x.HandleState == "3"
select x).ToList();
foreach (var item in items)
{
item.HandleState = "2";
Funs.DB.SubmitChanges();
}
}
/// <summary>
/// 添加督查检查整改
/// </summary>
@@ -0,0 +1,244 @@
using Model;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
namespace BLL
{
/// <summary>
/// 集团主数据在建项目数据分析
/// </summary>
public static class ProjectMasterDataAnalysisService
{
/// <summary>
/// 根据主键获取分析数据
/// </summary>
/// <param name="useId"></param>
/// <returns></returns>
public static Model.Project_MasterDataAnalysis GetProjectMasterDataAnalysisById(string Id)
{
return Funs.DB.Project_MasterDataAnalysis.FirstOrDefault(e => e.Id == Id);
}
/// <summary>
/// 根据CollCropCode获取分析数据【取最近一条】
/// </summary>
/// <param name="CollCropCode"></param>
/// <returns></returns>
public static Model.Project_MasterDataAnalysis GetProjectMasterDataAnalysisByCollCropCode(string CollCropCode)
{
return Funs.DB.Project_MasterDataAnalysis.OrderByDescending(x => x.DataDate).FirstOrDefault(e => e.CollCropCode == CollCropCode);
}
/// <summary>
/// 获取分析数据【取最近一条】
/// </summary>
/// <returns></returns>
public static Model.Project_MasterDataAnalysis GetLastProjectMasterDataAnalysis()
{
return Funs.DB.Project_MasterDataAnalysis.OrderByDescending(x => x.DataDate).FirstOrDefault();
}
/// <summary>
/// 添加分析数据
/// </summary>
/// <param name="model"></param>
public static void AddProjectMasterDataAnalysis(Model.Project_MasterDataAnalysis model)
{
Model.SGGLDB db = Funs.DB;
Model.Project_MasterDataAnalysis newModel = new Model.Project_MasterDataAnalysis
{
Id = model.Id,
CollCropCode = model.CollCropCode,
UnitId = model.UnitId,
ReportDate = model.ReportDate,
DataDate = model.DataDate,
Total = model.Total,
MasterTotal = model.MasterTotal,
QHSETotal = model.QHSETotal,
ZhengChang = model.ZhengChang,
DaiJian = model.DaiJian,
BuYong = model.BuYong,
YuLiXiang = model.YuLiXiang,
//ZiJian = model.ZiJian,
CreateUser = model.CreateUser,
};
db.Project_MasterDataAnalysis.InsertOnSubmit(newModel);
db.SubmitChanges();
}
/// <summary>
/// 修改分析数据
/// </summary>
/// <param name="model"></param>
public static void UpdateProjectMasterDataAnalysis(Model.Project_MasterDataAnalysis model)
{
Model.SGGLDB db = Funs.DB;
Model.Project_MasterDataAnalysis newModel = db.Project_MasterDataAnalysis.FirstOrDefault(e => e.Id == model.Id);
if (newModel != null)
{
//newModel.Id = model.Id;
//newModel.CollCropCode = model.CollCropCode;
//newModel.UnitId = model.UnitId;
//newModel.ReportDate = model.ReportDate;
//newModel.DataDate = model.DataDate;
newModel.Total = model.Total;
newModel.MasterTotal = model.MasterTotal;
newModel.QHSETotal = model.QHSETotal;
newModel.ZhengChang = model.ZhengChang;
newModel.DaiJian = model.DaiJian;
newModel.BuYong = model.BuYong;
newModel.YuLiXiang = model.YuLiXiang;
//newModel.ZiJian = model.ZiJian;
db.SubmitChanges();
}
}
/// <summary>
/// 根据主键删除分析数据
/// </summary>
/// <param name="Id"></param>
public static void DeleteProjectMasterDataAnalysisById(string Id)
{
Model.SGGLDB db = Funs.DB;
Model.Project_MasterDataAnalysis model = db.Project_MasterDataAnalysis.FirstOrDefault(e => e.Id == Id);
if (model != null)
{
db.Project_MasterDataAnalysis.DeleteOnSubmit(model);
db.SubmitChanges();
}
}
/// <summary>
/// 获取最近的汇总记录【近一小时】
/// </summary>
/// <returns></returns>
public static List<Model.Project_MasterDataAnalysis> GetRecentHourAnalysisReportList()
{
var list = (from x in Funs.DB.Project_MasterDataAnalysis
where x.DataDate > DateTime.Now.AddHours(-1)
orderby x.DataDate descending
select x).ToList();
return list;
}
#region
/// <summary>
/// 集团主数据在建项目使用情况上报
/// </summary>
/// <param name="userName"></param>
/// <param name="message"></param>
/// <returns></returns>
public static string ReportProjectMasterDataAnalysis(string userName,ref string message)
{
string code = "0";
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
#region
//获取集团在建主数据
List<Model.Ads_pms_pro_info_build> masterProDatas = ProjectService.GetMasterProjectDataInfos();
//获取集团在建主数据
List<Model.Base_Project> projects = ProjectService.GetProjectWorkList();
int masterTotal = masterProDatas.Count();
int qhseTotal = projects.Count();
//1、正常
int zhengChang = (from x in masterProDatas
join pro in db.Base_Project on x.Pro_id equals pro.MasterSysId into proGroup
from pro in proGroup.DefaultIfEmpty()
where pro != null && pro.MasterSysId != null
//&& pro.ProjectState == Const.ProjectState_1
select x).Count();
//2、待建
int daiJian = (from x in masterProDatas
join pro in db.Base_Project on x.Pro_id equals pro.MasterSysId into proGroup
from pro in proGroup.DefaultIfEmpty()
join use in db.Project_MasterDataUsage on x.Pro_id equals use.Pro_id into useGroup
from use in useGroup.DefaultIfEmpty()
where pro == null && (use == null || (use != null && (use.Reason == null || use.Reason == "")))
select x).Count();
//3、申请不用
int buYong = (from x in masterProDatas
join pro in db.Base_Project on x.Pro_id equals pro.MasterSysId into proGroup
from pro in proGroup.DefaultIfEmpty()
join use in db.Project_MasterDataUsage on x.Pro_id equals use.Pro_id into useGroup
from use in useGroup.DefaultIfEmpty()
where pro == null && use != null && use.Reason != null && use.Reason != ""
select x).Count();
//4、预立项
int yuLiXiang = (from x in projects where x.MasterSysId == null select x).Count();
var thisUnit = CommonService.GetIsThisUnit();
var now = DateTime.Now;
//保存汇总数据
Model.Project_MasterDataAnalysis analysis = new Project_MasterDataAnalysis
{
Id = SQLHelper.GetNewID(typeof(Model.Project_MasterDataAnalysis)),
CollCropCode = thisUnit.CollCropCode,
UnitId = thisUnit.UnitId,
ReportDate = now.Date,
DataDate = now,
Total = zhengChang + daiJian + yuLiXiang,
MasterTotal = masterTotal,
QHSETotal = qhseTotal,
ZhengChang = zhengChang,
DaiJian = daiJian,
BuYong = buYong,
YuLiXiang = yuLiXiang,
CreateUser = userName
};
#endregion
#region
string filePath = Funs.SGGLUrl;
try
{
//var upReport = GetLastProjectMasterDataAnalysis();
var upReport = analysis;
string baseurl = SysConstSetService.CNCECPath + "/api/Common/ProjectMasterDataAnalysis";
string contenttype = "application/json;charset=unicode";
Hashtable newToken = new Hashtable
{
{ "token", ServerService.GetToken().Token }
};
var pushContent = JsonConvert.SerializeObject(upReport);
//ErrLogInfo.WriteLog($"【集团主数据在建项目使用情况上报】:{pushContent}");
var strJosn = APIGetHttpService.Http(baseurl, "Post", contenttype, newToken, pushContent);
if (!string.IsNullOrEmpty(strJosn))
{
//ErrLogInfo.WriteLog($"【集团主数据在建项目使用情况上报】:{strJosn}");
JObject obj = JObject.Parse(strJosn);
code = obj["code"].ToString();
message = obj["message"].ToString();
if (code == "1")
{
AddProjectMasterDataAnalysis(upReport);
}
}
}
catch (Exception ex)
{
ErrLogInfo.WriteLog("【集团主数据在建项目使用情况上报】上传到服务器", ex);
}
#endregion
return code;
}
}
#endregion
}
}
@@ -1,7 +1,8 @@
using System;
using Model;
using System;
using System.Collections.Generic;
using System.Linq;
using static BLL.UnitHazardRegisterService;
namespace BLL
{
@@ -38,6 +39,46 @@ namespace BLL
}
}
/// <summary>
/// 根据主表ID驳回所有明细
/// </summary>
/// <param name="registerId">主表ID</param>
public static void RejectItemsByRegisterId(string registerId)
{
var items = (from x in Funs.DB.Supervise_UnitHazardRegisterItem
where x.UnitHazardRegisterId == registerId && x.CompleteStatus == 1
select x).ToList();
foreach (var item in items)
{
item.CompleteStatus = 0;
Funs.DB.SubmitChanges();
}
}
/// <summary>
/// 根据ItemID驳回明细整改
/// </summary>
/// <param name="ItemId">主表ID</param>
public static void RejectItemByRegisterItemId(string ItemId)
{
var item = (from x in Funs.DB.Supervise_UnitHazardRegisterItem
where x.UnitHazardRegisterItemId == ItemId && x.CompleteStatus == 1
select x).FirstOrDefault();
if (item != null)
{
item.CompleteStatus = 0;
Funs.DB.SubmitChanges();
var obj = (from x in Funs.DB.Supervise_UnitHazardRegister
where x.UnitHazardRegisterId == item.UnitHazardRegisterId && x.States == (int)StateInt.
select x).FirstOrDefault();
if (obj != null)
{
obj.States = (int)StateInt.;
Funs.DB.SubmitChanges();
}
}
}
/// <summary>
/// 删除明细记录
/// </summary>
@@ -214,10 +255,10 @@ namespace BLL
ProjectId = r.ProjectId,
CheckUnitName = u.UnitName,
States = r.States,
ProblemStatesName = i.CompleteStatus==1 ? "已整改":"未整改",
ProblemStatesName = i.CompleteStatus == 1 ? "已整改" : "未整改",
ProblemStates = i.CompleteStatus,
InsResponsibleUserId = r.InsResponsibleUserId,
InsResponsibleUserName= user.UserName
InsResponsibleUserName = user.UserName
};
// 应用检查大类过滤
@@ -281,17 +322,24 @@ namespace BLL
var thisUnit = BLL.CommonService.GetIsThisUnit();
if (thisUnit.UnitId != input.UnitId)
{
// 先获取用户有权限的项目ID列表
var projectIds = (from p in Funs.DB.Base_Project
where p.UnitId == input.UnitId
select p.ProjectId).ToList();
//// 先获取用户有权限的项目ID列表
//var projectIds = (from p in Funs.DB.Base_Project
// where p.UnitId == input.UnitId
// select p.ProjectId).ToList();
//// 过滤查询结果
//query = query.Where(x => Funs.DB.Supervise_UnitHazardRegister
// .Any(r => Funs.DB.Supervise_UnitHazardRegisterItem
// .Any(i => i.UnitHazardRegisterItemId == x.UnitHazardRegisterItemId &&
// i.UnitHazardRegisterId == r.UnitHazardRegisterId &&
// projectIds.Contains(r.ProjectId))));
// 过滤查询结果
query = query.Where(x => Funs.DB.Supervise_UnitHazardRegister
.Any(r => Funs.DB.Supervise_UnitHazardRegisterItem
.Any(i => i.UnitHazardRegisterItemId == x.UnitHazardRegisterItemId &&
i.UnitHazardRegisterId == r.UnitHazardRegisterId &&
projectIds.Contains(r.ProjectId))));
input.UnitId == r.CheckUnitId)));
}
}
@@ -26,10 +26,10 @@ namespace BLL
public enum StateInt : int
{
= 0,
= 1,
= 2,
= 3,
= 0,
= 1,
= 2,
= 3,
}
#endregion Enums
@@ -51,6 +51,7 @@ namespace BLL
CheckDate = register.CheckDate,
CheckMainType = register.CheckMainType,
CheckType = register.CheckType,
InspectionUnit = register.InspectionUnit,
ProjectId = register.ProjectId,
CheckUnitId = register.CheckUnitId,
CheckTeam = register.CheckTeam,
@@ -59,7 +60,7 @@ namespace BLL
InsResponsibleUserId = register.InsResponsibleUserId,
EvaluationResult = register.EvaluationResult,
AttachUrl = register.AttachUrl,
States = register.States??0,
States = register.States ?? 0,
CompileMan = register.CompileMan,
CreateDate = DateTime.Now
};
@@ -102,6 +103,22 @@ namespace BLL
}
}
}
/// <summary>
/// 驳回企业级检查记录
/// </summary>
/// <param name="registerId">检查记录ID</param>
public static void RejectUnitHazardRegisterById(string registerId)
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
var register = db.Supervise_UnitHazardRegister.FirstOrDefault(e => e.UnitHazardRegisterId == registerId);
if (register != null)
{
register.States = (int)StateInt.;
db.SubmitChanges();
}
}
}
/// <summary>
/// 根据项目和时间段获取检查数量
@@ -118,8 +135,8 @@ namespace BLL
}
public static int GetCount(string checkMainType)
{
return (from x in Funs.DB.Supervise_UnitHazardRegister
where x.CheckMainType ==checkMainType
return (from x in Funs.DB.Supervise_UnitHazardRegister
where x.CheckMainType == checkMainType
select x.UnitHazardRegisterId).Count();
}
/// <summary>
@@ -143,11 +160,27 @@ namespace BLL
if (register == null)
{
return false;
}
}
// 只有"待提交"状态可以删除,其他状态不能删除
return register.States <= (int)StateInt.;
}
/// <summary>
/// 判断是否可以驳回检查记录整改结果
/// </summary>
/// <param name="registerId">检查记录ID</param>
/// <returns>true=可以驳回,false=不能驳回</returns>
public static bool CanRejectRegister(string registerId)
{
var register = GetUnitHazardRegisterById(registerId);
if (register == null)
{
return false;
}
// 只有"已闭环"和"部分整改"状态可以撤回,其他状态不能撤回
return register.States == (int)StateInt. || register.States == (int)StateInt.;
}
/// <summary>
/// 获取企业级检查列表(使用input对象,返回总数)
/// </summary>
@@ -171,6 +204,9 @@ namespace BLL
on new { MainType = x.CheckMainType, TypeCode = x.CheckType }
equals new { MainType = ct.CheckMainType, TypeCode = ct.CheckTypeCode } into ctGroup
from ct in ctGroup.DefaultIfEmpty()
join inu in db.Base_Unit
on x.InspectionUnit equals inu.UnitId into inuGroup
from inu in inuGroup.DefaultIfEmpty()
join u in db.Base_Unit
on x.CheckUnitId equals u.UnitId into uGroup
from u in uGroup.DefaultIfEmpty()
@@ -185,7 +221,9 @@ namespace BLL
CheckMainTypeName = x.CheckMainType == "0" ? "安全" : "质量",
CheckType = x.CheckType,
CheckTypeName = ct.CheckTypeName,
InspectionUnitName = inu.UnitName,
CheckObjectText = p.ProjectName,
CheckUnitId = x.CheckUnitId,
CheckUnitName = u.UnitName,
CheckTeam = x.CheckTeam,
EvaluationResult = x.EvaluationResult,
@@ -219,6 +257,10 @@ namespace BLL
{
query = query.Where(x => x.ProjectId != null && x.ProjectId == input.ProjectId);
}
if (input != null && !string.IsNullOrEmpty(input.CheckUnitId) && input.CheckUnitId != CommonService.GetThisUnitId())
{
query = query.Where(x => x.CheckUnitId != null && x.CheckUnitId == input.CheckUnitId);
}
// 获取总数
totalCount = query.Count();
@@ -235,7 +277,7 @@ namespace BLL
.Skip(pageIndex * pageSize)
.Take(pageSize)
.ToList();
}
}
/// <summary>
/// 更新企业级检查记录
@@ -253,6 +295,7 @@ namespace BLL
newRegister.CheckDate = register.CheckDate;
newRegister.CheckMainType = register.CheckMainType;
newRegister.CheckType = register.CheckType;
newRegister.InspectionUnit = register.InspectionUnit;
newRegister.ProjectId = register.ProjectId;
newRegister.CheckUnitId = register.CheckUnitId;
newRegister.CheckTeam = register.CheckTeam;
@@ -40,6 +40,8 @@
<Items>
<f:Button ID="btnGet" Text="获取" ToolTip="从集团获取督查检查整改" Icon="FolderPage" runat="server" OnClick="btnGet_Click">
</f:Button>
<f:Button ID="btnRevoke" Icon="ArrowUndo" ConfirmText="确定撤回当前整改?" OnClick="btnRevoke_Click" Text="撤回" Hidden="true" runat="server">
</f:Button>
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" ToolTip="导出" Icon="FolderUp" Text="导出"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
@@ -18,6 +18,10 @@ namespace FineUIPro.Web.DCGL.ServerCheck
{
if (!IsPostBack)
{
if (this.CurrUser.UserId == Const.hfnbdId || this.CurrUser.UserId == Const.sysglyId)
{//管理员有权限驳回
this.btnRevoke.Hidden = false;
}
getCheck();
proType = Request.Params["proType"] ?? string.Empty;
this.GetButtonPower();
@@ -27,6 +31,28 @@ namespace FineUIPro.Web.DCGL.ServerCheck
BindGrid();
}
}
protected void btnRevoke_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length > 0)
{
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string itemId = Grid1.DataKeys[rowIndex][0].ToString();
var item = BLL.DCGLCheckRectifyService.GetCheckRectifyByCheckRectifyId(itemId);
if (item != null)
{
BLL.DCGLCheckRectifyService.RevokeByRectifyId(itemId);
}
}
BindGrid();
ShowNotify("操作成功!", MessageBoxIcon.Success);
}
else
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
}
/// <summary>
/// 绑定数据
@@ -68,6 +68,15 @@ namespace FineUIPro.Web.DCGL.ServerCheck
/// </remarks>
protected global::FineUIPro.Button btnGet;
/// <summary>
/// btnRevoke 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnRevoke;
/// <summary>
/// btnOut 控件。
/// </summary>
+8
View File
@@ -1721,6 +1721,7 @@
<Content Include="ProjectData\MainItemEdit.aspx" />
<Content Include="ProjectData\MainItemView.aspx" />
<Content Include="ProjectData\MasterProjectData.aspx" />
<Content Include="ProjectData\MasterProjectDataAnalysis.aspx" />
<Content Include="ProjectData\MasterProjectDataUsage.aspx" />
<Content Include="ProjectData\ProjectInformation.aspx" />
<Content Include="ProjectData\ProjectList.aspx" />
@@ -16250,6 +16251,13 @@
<Compile Include="ProjectData\MasterProjectData.aspx.designer.cs">
<DependentUpon>MasterProjectData.aspx</DependentUpon>
</Compile>
<Compile Include="ProjectData\MasterProjectDataAnalysis.aspx.cs">
<DependentUpon>MasterProjectDataAnalysis.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="ProjectData\MasterProjectDataAnalysis.aspx.designer.cs">
<DependentUpon>MasterProjectDataAnalysis.aspx</DependentUpon>
</Compile>
<Compile Include="ProjectData\MasterProjectDataUsage.aspx.cs">
<DependentUpon>MasterProjectDataUsage.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
@@ -19,23 +19,18 @@
}
.ThreeMonthPause {
/*background-color: darkgray;*/
background-color: blueviolet;
}
.MonthPause {
/*background-color: darkgray;*/
background-color: red;
}
.WeekPause {
/*background-color: darkgray;*/
background-color: deeppink;
}
.DayPause {
/*background-color: darkgray;*/
background-color: hotpink;
}
.Pause {
/*background-color: darkgray;*/
background-color: red;
}
</style>
@@ -170,9 +165,9 @@
</Columns>
</f:GroupField>
</Columns>
<Listeners>
<%--<Listeners>
<f:Listener Event="dataload" Handler="onGridDataLoad" />
</Listeners>
</Listeners>--%>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
@@ -260,9 +255,9 @@
</Columns>
</f:GroupField>
</Columns>
<Listeners>
<%--<Listeners>
<f:Listener Event="dataload" Handler="onGridDataLoad" />
</Listeners>
</Listeners>--%>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator2" runat="server">
</f:ToolbarSeparator>
@@ -288,11 +283,11 @@
__doPostBack(null, 'reloadGrid');
}
function onGridDataLoad(event) {
this.mergeColumns(['Pro_name', 'Pro_code', 'Start_date', 'Pro_status'], {
depends: true
});
}
// function onGridDataLoad(event) {
// this.mergeColumns(['Pro_name', 'Pro_code', 'Start_date', 'Pro_status'], {
// depends: true
// });
// }
</script>
</body>
</html>
@@ -83,7 +83,7 @@ namespace FineUIPro.Web.ProjectData
Relate = pro != null && pro.MasterSysId != null ? 1 : 2,
RelateName = pro != null && pro.MasterSysId != null ? "已关联" : "未关联",
UseId = use != null ? use.Id : null,
//Use = use == null ? "" : (use != null && use.Is_use == true) ? "已使用" : "未使用",
//Use = use == null ? "" : (use != null && use.Is_use == true) ? "已使用" : "未使用",
ReasonType = use != null ? use.ReasonType : "",
Reason = use != null ? use.Reason : "",
//Situation = use != null ? use.Situation : "",
@@ -0,0 +1,390 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MasterProjectDataAnalysis.aspx.cs" Inherits="FineUIPro.Web.ProjectData.MasterProjectDataAnalysis" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>集团在建项目清单</title>
<link href="../res/css/common.css" rel="stylesheet" type="text/css" />
<style type="text/css">
.f-grid-row .f-grid-cell-inner {
white-space: normal;
word-break: break-all;
}
/* 增强合计行样式 - 使用多种选择器确保生效 */
.f-grid-row-summary .f-grid-cell,
.f-grid-summary-row .f-grid-cell-inner {
font-weight: bold !important;
color: red !important;
}
.Pause {
background-color: red;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<Items>
<f:TabStrip ID="TabStrip1" ShowBorder="true" TabPosition="Top"
EnableTabCloseMenu="false" ActiveTabIndex="0" runat="server" OnTabIndexChanged="TabStrip1_TabIndexChanged" AutoPostBack="true">
<Tabs>
<f:Tab Title="已关联" TitleToolTip="主数据有,且单位已关联的项目" BodyPadding="10px" runat="server">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="已关联" Height="720px"
EnableCollapse="true" runat="server" BoxFlex="1" EnableColumnLines="true" EnableSummary="true" SummaryPosition="Bottom"
DataKeyNames="Pid" DataIDField="Pid" AllowSorting="true" SortField="Start_date DESC,StartDate" SortDirection="DESC"
OnSort="Grid1_Sort" AllowPaging="false" IsDatabasePaging="false" PageSize="1000000" OnPageIndexChange="Grid1_PageIndexChange"
EnableTextSelection="True">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:TextBox runat="server" Label="主数据编号" ID="txtProCode" EmptyText="输入主数据项目编号"
AutoPostBack="true" OnTextChanged="TextBox_TextChanged" Width="260px" LabelWidth="100px" LabelAlign="Right">
</f:TextBox>
<f:TextBox runat="server" Label="主数据名称" ID="txtProName" EmptyText="输入主数据项目名称"
AutoPostBack="true" OnTextChanged="TextBox_TextChanged" Width="260px" LabelWidth="100px">
</f:TextBox>
<f:DatePicker runat="server" Label="主数据开工日期" ID="txtStartTime" EmptyText="开始日期" LabelAlign="Right" LabelWidth="120px" Width="220px" AutoPostBack="true" OnTextChanged="TextBox_TextChanged">
</f:DatePicker>
<f:Label ID="Label5" runat="server" Text="至">
</f:Label>
<f:DatePicker runat="server" ID="txtEndTime" LabelAlign="Right" EmptyText="结束日期" Width="110px" AutoPostBack="true" OnTextChanged="TextBox_TextChanged">
</f:DatePicker>
</Items>
</f:Toolbar>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:TextBox runat="server" Label="项目编号" ID="txtProjectCode" EmptyText="输入QHSE项目编号"
AutoPostBack="true" OnTextChanged="TextBox_TextChanged" Width="260px" LabelWidth="90px" LabelAlign="Right">
</f:TextBox>
<f:TextBox runat="server" Label="项目名称" ID="txtProjectName" EmptyText="输入QHSE项目名称"
AutoPostBack="true" OnTextChanged="TextBox_TextChanged" Width="260px" LabelWidth="90px">
</f:TextBox>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" ToolTip="导出" Icon="FolderUp"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField ColumnID="tfNumber" Width="55px" HeaderText="序号" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="lblNumber" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:GroupField ColumnID="GroupField1" runat="server" HeaderText="集团主数据" HeaderTextAlign="Center">
<Columns>
<f:RenderField Width="260px" ColumnID="Pro_name" DataField="Pro_name"
FieldType="String" HeaderText="项目名称" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="160px" ColumnID="Pro_code" DataField="Pro_code"
FieldType="String" HeaderText="项目编号" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="180px" ColumnID="Org_name" DataField="Org_name"
FieldType="String" HeaderText="所属单位" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="160px" ColumnID="Con_mode_desc" DataField="Con_mode_desc"
FieldType="String" HeaderText="承包方式" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Pro_nature" DataField="Pro_nature"
FieldType="String" HeaderText="性质" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="110px" ColumnID="Start_date" DataField="Start_date" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="开工时间" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="140px" ColumnID="Amount" DataField="Amount"
FieldType="String" HeaderText="合同额/规模(亿)" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Pro_status" DataField="Pro_status"
FieldType="String" HeaderText="状态" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
</Columns>
</f:GroupField>
<f:GroupField ColumnID="GroupField2" runat="server" HeaderText="QHSE系统" HeaderTextAlign="Center">
<Columns>
<f:RenderField Width="260px" ColumnID="ProjectName" DataField="ProjectName"
FieldType="String" HeaderText="项目名称" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="160px" ColumnID="ProjectCode" DataField="ProjectCode"
FieldType="String" HeaderText="项目编号" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="110px" ColumnID="StartDate" DataField="StartDate" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="开工时间" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:TemplateField ColumnID="tfState" Width="110px" HeaderText="状态" HeaderTextAlign="Center" TextAlign="Center"
EnableLock="true" Locked="False">
<ItemTemplate>
<asp:Label ID="lblState" runat="server" Text='<%# ConvertProjectState(Eval("ProjectState")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
</Columns>
</f:GroupField>
</Columns>
</f:Grid>
</Items>
</f:Tab>
<f:Tab Title="待建" TitleToolTip="主数据有,单位没建,且没有原因说明" BodyPadding="10px" runat="server">
<Items>
<f:Grid ID="Grid2" ShowBorder="true" ShowHeader="false" Title="待建" Height="720px"
EnableCollapse="true" runat="server" BoxFlex="1" EnableColumnLines="true" EnableSummary="true" SummaryPosition="Bottom"
DataKeyNames="Pid" DataIDField="Pid" AllowSorting="true" SortField="Start_date" SortDirection="DESC"
OnSort="Grid2_Sort" AllowPaging="false" IsDatabasePaging="false" PageSize="1000000" OnPageIndexChange="Grid2_PageIndexChange"
EnableTextSelection="True">
<Toolbars>
<f:Toolbar ID="Toolbar3" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:TextBox runat="server" Label="主数据编号" ID="txtProCode2" EmptyText="输入主数据项目编号"
AutoPostBack="true" OnTextChanged="TextBox2_TextChanged" Width="260px" LabelWidth="100px" LabelAlign="Right">
</f:TextBox>
<f:TextBox runat="server" Label="主数据名称" ID="txtProName2" EmptyText="输入主数据项目名称"
AutoPostBack="true" OnTextChanged="TextBox2_TextChanged" Width="260px" LabelWidth="100px">
</f:TextBox>
<f:DatePicker runat="server" Label="主数据开工日期" ID="txtStartTime2" EmptyText="开始日期" LabelAlign="Right" LabelWidth="120px" Width="220px" AutoPostBack="true" OnTextChanged="TextBox2_TextChanged">
</f:DatePicker>
<f:Label ID="Label1" runat="server" Text="至">
</f:Label>
<f:DatePicker runat="server" ID="txtEndTime2" LabelAlign="Right" EmptyText="结束日期" Width="110px" AutoPostBack="true" OnTextChanged="TextBox2_TextChanged">
</f:DatePicker>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnOut2" OnClick="btnOut2_Click" runat="server" ToolTip="导出" Icon="FolderUp"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField ColumnID="tfPageIndex" Width="55px" HeaderText="序号" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="lblPageIndex" runat="server" Text='<%# Grid2.PageIndex * Grid2.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="260px" ColumnID="Pro_name" DataField="Pro_name" ExpandUnusedSpace="true"
FieldType="String" HeaderText="项目名称" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="160px" ColumnID="Pro_code" DataField="Pro_code"
FieldType="String" HeaderText="项目编号" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="180px" ColumnID="Org_name" DataField="Org_name" ExpandUnusedSpace="true"
FieldType="String" HeaderText="所属单位" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="160px" ColumnID="Con_mode_desc" DataField="Con_mode_desc"
FieldType="String" HeaderText="承包方式" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Pro_nature" DataField="Pro_nature"
FieldType="String" HeaderText="性质" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="110px" ColumnID="Start_date" DataField="Start_date" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="开工时间" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="140px" ColumnID="Amount" DataField="Amount"
FieldType="String" HeaderText="合同额/规模(亿)" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Pro_status" DataField="Pro_status"
FieldType="String" HeaderText="状态" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
</Columns>
</f:Grid>
</Items>
</f:Tab>
<f:Tab Title="申请不用" TitleToolTip="主数据有,单位没建,有原因说明" BodyPadding="10px" runat="server">
<Items>
<f:Grid ID="Grid3" ShowBorder="true" ShowHeader="false" Title="申请不用" Height="720px"
EnableCollapse="true" runat="server" BoxFlex="1" EnableColumnLines="true" EnableSummary="true" SummaryPosition="Bottom"
DataKeyNames="Pid" DataIDField="Pid" AllowSorting="true" SortField="Start_date" SortDirection="DESC"
OnSort="Grid3_Sort" AllowPaging="false" IsDatabasePaging="false" PageSize="1000000" OnPageIndexChange="Grid3_PageIndexChange"
EnableTextSelection="True">
<Toolbars>
<f:Toolbar ID="Toolbar4" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:TextBox runat="server" Label="主数据编号" ID="txtProCode3" EmptyText="输入主数据项目编号"
AutoPostBack="true" OnTextChanged="TextBox3_TextChanged" Width="260px" LabelWidth="100px" LabelAlign="Right">
</f:TextBox>
<f:TextBox runat="server" Label="主数据名称" ID="txtProName3" EmptyText="输入主数据项目名称"
AutoPostBack="true" OnTextChanged="TextBox3_TextChanged" Width="260px" LabelWidth="100px">
</f:TextBox>
<f:DatePicker runat="server" Label="主数据开工日期" ID="txtStartTime3" EmptyText="开始日期" LabelAlign="Right" LabelWidth="120px" Width="220px" AutoPostBack="true" OnTextChanged="TextBox3_TextChanged">
</f:DatePicker>
<f:Label ID="Label2" runat="server" Text="至">
</f:Label>
<f:DatePicker runat="server" ID="txtEndTime3" LabelAlign="Right" EmptyText="结束日期" Width="110px" AutoPostBack="true" OnTextChanged="TextBox3_TextChanged">
</f:DatePicker>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnOut3" OnClick="btnOut3_Click" runat="server" ToolTip="导出" Icon="FolderUp"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField ColumnID="tfPageNo" Width="55px" HeaderText="序号" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="lblPageNo" runat="server" Text='<%# Grid3.PageIndex * Grid3.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField MinWidth="260px" ColumnID="Pro_name" DataField="Pro_name" ExpandUnusedSpace="true"
FieldType="String" HeaderText="项目名称" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="160px" ColumnID="Pro_code" DataField="Pro_code"
FieldType="String" HeaderText="项目编号" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField MinWidth="180px" ColumnID="Org_name" DataField="Org_name" ExpandUnusedSpace="true"
FieldType="String" HeaderText="所属单位" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="160px" ColumnID="Con_mode_desc" DataField="Con_mode_desc"
FieldType="String" HeaderText="承包方式" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="90px" ColumnID="Pro_nature" DataField="Pro_nature"
FieldType="String" HeaderText="性质" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="110px" ColumnID="Start_date" DataField="Start_date" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="开工时间" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField MinWidth="140px" ColumnID="Amount" DataField="Amount"
FieldType="String" HeaderText="合同额/规模(亿)" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="90px" ColumnID="Pro_status" DataField="Pro_status"
FieldType="String" HeaderText="状态" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="130px" ColumnID="ReasonType" DataField="ReasonType"
FieldType="String" HeaderText="原因类型" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="330px" ColumnID="Reason" DataField="Reason" ExpandUnusedSpace="true"
FieldType="String" HeaderText="未关联原因情况说明" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
</Columns>
</f:Grid>
</Items>
</f:Tab>
<f:Tab Title="预立项" TitleToolTip="QHSE没有关联主数据的在建项目" BodyPadding="10px" runat="server">
<Items>
<f:Grid ID="Grid4" ShowBorder="true" ShowHeader="false" Title="预立项" Height="720px"
EnableCollapse="true" runat="server" BoxFlex="1" EnableColumnLines="true" EnableSummary="true" SummaryPosition="Bottom"
DataKeyNames="Pid" DataIDField="Pid" AllowSorting="true" SortField="StartDate" SortDirection="DESC"
OnSort="Grid4_Sort" AllowPaging="false" IsDatabasePaging="false" PageSize="1000000" OnPageIndexChange="Grid4_PageIndexChange"
EnableTextSelection="True">
<Toolbars>
<f:Toolbar ID="Toolbar5" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:TextBox runat="server" Label="项目编号" ID="txtProjectCode4" EmptyText="输入QHSE项目编号"
AutoPostBack="true" OnTextChanged="TextBox4_TextChanged" Width="260px" LabelWidth="90px" LabelAlign="Right">
</f:TextBox>
<f:TextBox runat="server" Label="项目名称" ID="txtProjectName4" EmptyText="输入QHSE项目名称"
AutoPostBack="true" OnTextChanged="TextBox4_TextChanged" Width="260px" LabelWidth="90px">
</f:TextBox>
<f:DatePicker runat="server" Label="开工日期" ID="txtStartTime4" EmptyText="开始日期" LabelAlign="Right" LabelWidth="120px" Width="220px" AutoPostBack="true" OnTextChanged="TextBox4_TextChanged">
</f:DatePicker>
<f:Label ID="Label3" runat="server" Text="至">
</f:Label>
<f:DatePicker runat="server" ID="txtEndTime4" LabelAlign="Right" EmptyText="结束日期" Width="110px" AutoPostBack="true" OnTextChanged="TextBox4_TextChanged">
</f:DatePicker>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnOut4" OnClick="btnOut4_Click" runat="server" ToolTip="导出" Icon="FolderUp"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField ColumnID="tfPageNum" Width="55px" HeaderText="序号" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="lblPageNum" runat="server" Text='<%# Grid4.PageIndex * Grid4.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="220px" ColumnID="ProjectCode" DataField="ProjectCode"
FieldType="String" HeaderText="项目编号" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="260px" ColumnID="ProjectName" DataField="ProjectName" ExpandUnusedSpace="true"
FieldType="String" HeaderText="项目名称" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="StartDate" DataField="StartDate" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="开工时间" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:TemplateField ColumnID="tfProState" Width="120px" HeaderText="状态" HeaderTextAlign="Center" TextAlign="Center"
EnableLock="true" Locked="False">
<ItemTemplate>
<asp:Label ID="lblProState" runat="server" Text='<%# ConvertProjectState(Eval("ProjectState")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
</Columns>
</f:Grid>
</Items>
</f:Tab>
<f:Tab Title="数据汇总" TitleToolTip="每日数据汇总" BodyPadding="10px" runat="server">
<Items>
<f:Grid ID="Grid9" ShowBorder="true" ShowHeader="false" Title="数据汇总" Height="720px"
EnableCollapse="true" runat="server" BoxFlex="1" EnableColumnLines="true" EnableSummary="false" SummaryPosition="Bottom"
DataKeyNames="Id" DataIDField="Id" AllowSorting="true" SortField="ReportDate DESC,DataDate" SortDirection="DESC"
OnSort="Grid9_Sort" AllowPaging="false" IsDatabasePaging="false" PageSize="1000000" OnPageIndexChange="Grid9_PageIndexChange"
EnableTextSelection="True">
<Toolbars>
<f:Toolbar ID="Toolbar6" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:DatePicker runat="server" Label="上报日期" ID="txtStartTime9" EmptyText="开始日期" LabelAlign="Right" LabelWidth="120px" Width="240px" AutoPostBack="true" OnTextChanged="TextBox9_TextChanged">
</f:DatePicker>
<f:Label ID="Label4" runat="server" Text="至">
</f:Label>
<f:DatePicker runat="server" ID="txtEndTime9" LabelAlign="Right" EmptyText="结束日期" Width="130px" AutoPostBack="true" OnTextChanged="TextBox9_TextChanged">
</f:DatePicker>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnReport" OnClick="btnReport_Click" runat="server" Text="汇总上报" ToolTip="汇总上报" Icon="WorldGo" EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
<f:Button ID="btnOut9" OnClick="btnOut9_Click" runat="server" ToolTip="导出" Icon="FolderUp" EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField ColumnID="tfNum" Width="55px" HeaderText="序号" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="lblNum" runat="server" Text='<%# Grid9.PageIndex * Grid9.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="140px" ColumnID="ReportDate" DataField="ReportDate" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="上报日期" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Total" DataField="Total"
FieldType="String" HeaderText="总数" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<%--<f:RenderField Width="120px" ColumnID="MasterTotal" DataField="MasterTotal"
FieldType="String" HeaderText="主数据在建项目总数" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="QHSETotal" DataField="QHSETotal"
FieldType="String" HeaderText="企业在建项目总数" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>--%>
<f:RenderField Width="120px" ColumnID="ZhengChang" DataField="ZhengChang"
FieldType="String" HeaderText="已关联" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="DaiJian" DataField="DaiJian"
FieldType="String" HeaderText="待建" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="140px" ColumnID="BuYong" DataField="BuYong"
FieldType="String" HeaderText="申请不用" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="YuLiXiang" DataField="YuLiXiang"
FieldType="String" HeaderText="预立项" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="180px" ColumnID="CreateUser" DataField="CreateUser" ExpandUnusedSpace="true"
FieldType="String" HeaderText="上报人" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="160px" ColumnID="DataDate" DataField="DataDate" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd HH:mm" HeaderText="汇总时间" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
</Columns>
</f:Grid>
</Items>
</f:Tab>
</Tabs>
</f:TabStrip>
</Items>
</f:Panel>
</form>
<script type="text/javascript">
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
</script>
</body>
</html>
@@ -0,0 +1,857 @@
using BLL;
using Model;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using AspNet = System.Web.UI.WebControls;
namespace FineUIPro.Web.ProjectData
{
public partial class MasterProjectDataAnalysis : PageBase
{
/// <summary>
/// 集团在建主数据
/// </summary>
public static List<Model.Ads_pms_pro_info_build> masterProDatas = new List<Model.Ads_pms_pro_info_build>();
///// <summary>
///// QHSE施工中项目集合
///// </summary>
//public static List<Model.Base_Project> getProjects = new List<Model.Base_Project>();
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//获取集团在建主数据
masterProDatas = ProjectService.GetMasterProjectDataInfos();
////获取QHSE施工中项目集合
//getProjects = ProjectService.GetProjectWorkList();
TabStrip1_TabIndexChanged(null, null);
}
}
/// <summary>
/// 页签切换事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void TabStrip1_TabIndexChanged(object sender, EventArgs e)
{
if (TabStrip1.ActiveTabIndex == 0)
{
this.Panel1.Title = "已关联";
this.BindGrid();
}
else if (TabStrip1.ActiveTabIndex == 1)
{
this.Panel1.Title = "待建";
this.BindGrid2();
}
else if (TabStrip1.ActiveTabIndex == 2)
{
this.Panel1.Title = "申请不用";
this.BindGrid3();
}
else if (TabStrip1.ActiveTabIndex == 3)
{
this.Panel1.Title = "预立项";
this.BindGrid4();
}
else if (TabStrip1.ActiveTabIndex == 4)
{
this.Panel1.Title = "数据汇总";
this.BindGrid9();
}
//else if (TabStrip1.ActiveTabIndex == 4)
//{
// this.Panel1.Title = "自建";
// //this.BindGrid5();
//}
}
#endregion
#region
#region
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
var list = new List<MasterProjectDataInfo>();
var db = Funs.DB;
var query = (from x in masterProDatas
join pro in db.Base_Project on x.Pro_id equals pro.MasterSysId into proGroup
from pro in proGroup.DefaultIfEmpty()
//join use in db.Project_MasterDataUsage on x.Pro_id equals use.Pro_id into useGroup
//from use in useGroup.DefaultIfEmpty()
where pro != null && pro.MasterSysId != null
//&& pro.ProjectState == Const.ProjectState_1
select new MasterProjectDataInfo
{
//Pid = $"{x.Pro_id}|{(pro != null ? $"{pro.ProjectId}" : "")}|{(use != null ? use.Id : "")}",
Pid = $"{x.Pro_id}|{(pro != null ? $"{pro.ProjectId}" : "")}",
Pro_id = x.Pro_id,
Pro_name = x.Pro_name,
Pro_code = x.Pro_code,
Start_date = x.Start_date,
Con_mode_desc = x.Con_mode_desc,
Pro_nature = x.Pro_nature,
Pro_status = x.Pro_status,
Org_name = x.Org_name,
Amount = ConvertAmount(x.Ori_amt_sum_vat_fc, x.Amt_add_sum_vat_fc_local),
ProjectId = pro != null ? pro.ProjectId : null,
ProjectName = pro != null ? pro.ProjectName : "",
ProjectCode = pro != null ? pro.ProjectCode : "",
StartDate = pro != null ? pro.StartDate : null,
ProjectState = pro != null ? pro.ProjectState : "",
Relate = pro != null && pro.MasterSysId != null ? 1 : 2,
RelateName = pro != null && pro.MasterSysId != null ? "已关联" : "未关联",
}).ToList();
string startDate = this.txtStartTime.Text.Trim();
string endDate = this.txtEndTime.Text.Trim();
if (!string.IsNullOrWhiteSpace(startDate))
{
query = query.Where(x => Funs.GetNewDateTime(x.Start_date) >= Funs.GetNewDateTime(startDate)).ToList();
}
if (!string.IsNullOrWhiteSpace(endDate))
{
query = query.Where(x => Funs.GetNewDateTime(x.Start_date) <= Funs.GetNewDateTime(endDate)).ToList();
}
query = query.OrderByDescending(x => x.StartDate).ToList();
list.AddRange(query);
////// 获取施工中的项目
//getProjects = getProjects.Where(x => x.MasterSysId == null).OrderByDescending(x => x.StartDate).ToList();
//foreach (var pro in getProjects)
//{
// list.Add(new MasterProjectDataInfo
// {
// Pid = $"|{pro.ProjectId}",
// Pro_id = "",
// Pro_name = "",
// Pro_code = "",
// Start_date = "",
// Con_mode_desc = "",
// Pro_nature = "",
// Pro_status = "",
// Org_name = "",
// Amount = "",
// ProjectId = pro != null ? pro.ProjectId : null,
// ProjectName = pro != null ? pro.ProjectName : "",
// ProjectCode = pro != null ? pro.ProjectCode : "",
// StartDate = pro != null ? pro.StartDate : null,
// ProjectState = pro != null ? pro.ProjectState : "",
// Relate = 3,
// RelateName = "未对应",
// UseId = null,
// //Use = use == null ? "" : (use != null && use.Is_use == true) ? "已使用" : "未使用",
// ReasonType = "",
// Reason = "",
// //Situation = use != null ? use.Situation : "",
// //Remark = use != null ? use.Remark : "",
// });
//}
string proName = this.txtProName.Text.Trim();
string proCode = this.txtProCode.Text.Trim();
string projectName = this.txtProjectName.Text.Trim();
string projectCode = this.txtProjectCode.Text.Trim();
//int relate = int.Parse(this.rblIsRelate.SelectedValue);
if (!string.IsNullOrEmpty(proName))
{
list = list.Where(x => x.Pro_name.Contains(proName)).ToList();
}
if (!string.IsNullOrEmpty(proCode))
{
list = list.Where(x => x.Pro_code.Contains(proCode)).ToList();
}
if (!string.IsNullOrEmpty(projectName))
{
list = list.Where(x => x.ProjectName.Contains(projectName)).ToList();
}
if (!string.IsNullOrEmpty(projectCode))
{
list = list.Where(x => x.ProjectCode.Contains(projectCode)).ToList();
}
//if (relate > 0)
//{
// list = list.Where(x => x.Relate == relate).ToList();
//}
DataTable tb = Funs.LINQToDataTable(list);
Grid1.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
int totalNum = list.Count();
JObject summary = new JObject();
summary.Add("tfNumber", "合计");
summary.Add("Pro_name", totalNum);
Grid1.SummaryData = summary;
}
/// <summary>
/// 合同额(亿)
/// </summary>
/// <param name="Ori_amt">合同含税金额原始存档(元)</param>
/// <param name="Amt_add">增补合同本币含税金额(元)</param>
/// <returns></returns>
protected string ConvertAmount(decimal? Ori_amt, decimal? Amt_add)
{
string result = string.Empty;
Ori_amt = Ori_amt == null ? 0 : Ori_amt;
Amt_add = Amt_add == null ? 0 : Amt_add;
decimal? all = Amt_add + Ori_amt;
if (all != null)
{
double amount = all == null ? 0 : (Math.Round((double)(all / 100000000m), 2));
result = amount.ToString();
}
return result;
}
/// <summary>
/// 项目状态
/// </summary>
/// <param name="addType"></param>
/// <returns></returns>
protected string ConvertProjectState(object state)
{
string result = string.Empty;
string stateStr = state.ToString();
if (state != null && !string.IsNullOrWhiteSpace(stateStr))
{
result = stateStr == "2" ? "暂停中" : stateStr == "3" ? "已完工" : "施工中";
}
return result;
}
#endregion
#region Grid
protected void TextBox_TextChanged(object sender, EventArgs e)
{
this.BindGrid();
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
this.BindGrid();
}
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
{
this.BindGrid();
}
#endregion
#region
/// <summary>
/// 导出按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnOut_Click(object sender, EventArgs e)
{
Response.ClearContent();
string filename = Funs.GetNewFileName();
Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("集团主数据在建项目数据分析(正常)" + filename, System.Text.Encoding.UTF8) + ".xls");
Response.ContentType = "application/excel";
Response.ContentEncoding = System.Text.Encoding.UTF8;
this.Grid1.PageSize = this.Grid1.RecordCount;
this.BindGrid();
Response.Write(GetGridMultiHeaderTableHtml2(Grid1));
//Response.Write(GetGridTableHtml(Grid1));
Response.End();
}
#endregion
#endregion
#region
#region
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid2()
{
var list = new List<MasterProjectDataInfo>();
var db = Funs.DB;
var query = (from x in masterProDatas
join pro in db.Base_Project on x.Pro_id equals pro.MasterSysId into proGroup
from pro in proGroup.DefaultIfEmpty()
join use in db.Project_MasterDataUsage on x.Pro_id equals use.Pro_id into useGroup
from use in useGroup.DefaultIfEmpty()
where pro == null && (use == null || (use != null && (use.Reason == null || use.Reason == "")))
select new MasterProjectDataInfo
{
//Pid = $"{x.Pro_id}|{(pro != null ? $"{pro.ProjectId}" : "")}|{(use != null ? use.Id : "")}",
//Pid = $"{x.Pro_id}|{(pro != null ? $"{pro.ProjectId}" : "")}",
Pid = x.Pro_id,
Pro_id = x.Pro_id,
Pro_name = x.Pro_name,
Pro_code = x.Pro_code,
Start_date = x.Start_date,
Con_mode_desc = x.Con_mode_desc,
Pro_nature = x.Pro_nature,
Pro_status = x.Pro_status,
Org_name = x.Org_name,
Amount = ConvertAmount(x.Ori_amt_sum_vat_fc, x.Amt_add_sum_vat_fc_local)
}).ToList();
string startDate = this.txtStartTime2.Text.Trim();
string endDate = this.txtEndTime2.Text.Trim();
if (!string.IsNullOrWhiteSpace(startDate))
{
query = query.Where(x => Funs.GetNewDateTime(x.Start_date) >= Funs.GetNewDateTime(startDate)).ToList();
}
if (!string.IsNullOrWhiteSpace(endDate))
{
query = query.Where(x => Funs.GetNewDateTime(x.Start_date) <= Funs.GetNewDateTime(endDate)).ToList();
}
query = query.OrderByDescending(x => x.StartDate).ToList();
list.AddRange(query);
string proName = this.txtProName2.Text.Trim();
string proCode = this.txtProCode2.Text.Trim();
if (!string.IsNullOrEmpty(proName))
{
list = list.Where(x => x.Pro_name.Contains(proName)).ToList();
}
if (!string.IsNullOrEmpty(proCode))
{
list = list.Where(x => x.Pro_code.Contains(proCode)).ToList();
}
DataTable tb = Funs.LINQToDataTable(list);
Grid2.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(Grid2, tb);
Grid2.DataSource = table;
Grid2.DataBind();
int totalNum = list.Count();
JObject summary = new JObject();
summary.Add("tfPageIndex", "合计");
summary.Add("Pro_name", totalNum);
Grid2.SummaryData = summary;
}
#endregion
#region Grid
protected void TextBox2_TextChanged(object sender, EventArgs e)
{
this.BindGrid2();
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid2_PageIndexChange(object sender, GridPageEventArgs e)
{
this.BindGrid2();
}
protected void Grid2_Sort(object sender, FineUIPro.GridSortEventArgs e)
{
this.BindGrid2();
}
#endregion
#region
/// <summary>
/// 导出按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnOut2_Click(object sender, EventArgs e)
{
Response.ClearContent();
string filename = Funs.GetNewFileName();
Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("集团主数据在建项目数据分析(待建)" + filename, System.Text.Encoding.UTF8) + ".xls");
Response.ContentType = "application/excel";
Response.ContentEncoding = System.Text.Encoding.UTF8;
this.Grid2.PageSize = this.Grid2.RecordCount;
this.BindGrid2();
Response.Write(GetGridMultiHeaderTableHtml2(Grid2));
//Response.Write(GetGridTableHtml(Grid2));
Response.End();
}
#endregion
#endregion
#region
#region
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid3()
{
var list = new List<MasterProjectDataInfo>();
var db = Funs.DB;
var query = (from x in masterProDatas
join pro in db.Base_Project on x.Pro_id equals pro.MasterSysId into proGroup
from pro in proGroup.DefaultIfEmpty()
join use in db.Project_MasterDataUsage on x.Pro_id equals use.Pro_id into useGroup
from use in useGroup.DefaultIfEmpty()
where pro == null && use != null && use.Reason != null && use.Reason != ""
select new MasterProjectDataInfo
{
//Pid = $"{x.Pro_id}|{(pro != null ? $"{pro.ProjectId}" : "")}|{(use != null ? use.Id : "")}",
//Pid = $"{x.Pro_id}|{(pro != null ? $"{pro.ProjectId}" : "")}",
Pid = x.Pro_id,
Pro_id = x.Pro_id,
Pro_name = x.Pro_name,
Pro_code = x.Pro_code,
Start_date = x.Start_date,
Con_mode_desc = x.Con_mode_desc,
Pro_nature = x.Pro_nature,
Pro_status = x.Pro_status,
Org_name = x.Org_name,
Amount = ConvertAmount(x.Ori_amt_sum_vat_fc, x.Amt_add_sum_vat_fc_local),
ReasonType = use != null ? use.ReasonType : "",
Reason = use != null ? use.Reason : "",
}).ToList();
string startDate = this.txtStartTime3.Text.Trim();
string endDate = this.txtEndTime3.Text.Trim();
if (!string.IsNullOrWhiteSpace(startDate))
{
query = query.Where(x => Funs.GetNewDateTime(x.Start_date) >= Funs.GetNewDateTime(startDate)).ToList();
}
if (!string.IsNullOrWhiteSpace(endDate))
{
query = query.Where(x => Funs.GetNewDateTime(x.Start_date) <= Funs.GetNewDateTime(endDate)).ToList();
}
//query = query.OrderByDescending(x => x.StartDate).ToList();
list.AddRange(query);
string proName = this.txtProName3.Text.Trim();
string proCode = this.txtProCode3.Text.Trim();
if (!string.IsNullOrEmpty(proName))
{
list = list.Where(x => x.Pro_name.Contains(proName)).ToList();
}
if (!string.IsNullOrEmpty(proCode))
{
list = list.Where(x => x.Pro_code.Contains(proCode)).ToList();
}
DataTable tb = Funs.LINQToDataTable(list);
Grid3.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(Grid3, tb);
Grid3.DataSource = table;
Grid3.DataBind();
int totalNum = list.Count();
JObject summary = new JObject();
summary.Add("tfPageNo", "合计");
summary.Add("Pro_name", totalNum);
Grid3.SummaryData = summary;
}
#endregion
#region Grid
protected void TextBox3_TextChanged(object sender, EventArgs e)
{
this.BindGrid3();
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid3_PageIndexChange(object sender, GridPageEventArgs e)
{
this.BindGrid3();
}
protected void Grid3_Sort(object sender, FineUIPro.GridSortEventArgs e)
{
this.BindGrid3();
}
#endregion
#region
/// <summary>
/// 导出按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnOut3_Click(object sender, EventArgs e)
{
Response.ClearContent();
string filename = Funs.GetNewFileName();
Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("集团主数据在建项目数据分析(申请不用)" + filename, System.Text.Encoding.UTF8) + ".xls");
Response.ContentType = "application/excel";
Response.ContentEncoding = System.Text.Encoding.UTF8;
this.Grid3.PageSize = this.Grid3.RecordCount;
this.BindGrid3();
Response.Write(GetGridMultiHeaderTableHtml2(Grid3));
//Response.Write(GetGridTableHtml(Grid3));
Response.End();
}
#endregion
#endregion
#region
#region
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid4()
{
//var list = new List<MasterProjectDataInfo>();
var db = Funs.DB;
var projects = ProjectService.GetProjectWorkList();
var list = (from x in projects
where x.MasterSysId == null
select new MasterProjectDataInfo
{
Pid = x.ProjectId,
ProjectId = x.ProjectId,
ProjectName = x.ProjectName,
ProjectCode = x.ProjectCode,
StartDate = x.StartDate,
ProjectState = x.ProjectState,
}).ToList();
string projectName = this.txtProjectName4.Text.Trim();
string projectCode = this.txtProjectCode4.Text.Trim();
if (!string.IsNullOrEmpty(projectName))
{
list = list.Where(x => x.ProjectName.Contains(projectName)).ToList();
}
if (!string.IsNullOrEmpty(projectCode))
{
list = list.Where(x => x.ProjectCode.Contains(projectCode)).ToList();
}
string startDate = this.txtStartTime4.Text.Trim();
string endDate = this.txtEndTime4.Text.Trim();
if (!string.IsNullOrWhiteSpace(startDate))
{
list = list.Where(x => x.StartDate >= Funs.GetNewDateTime(startDate)).ToList();
}
if (!string.IsNullOrWhiteSpace(endDate))
{
list = list.Where(x => x.StartDate <= Funs.GetNewDateTime(endDate)).ToList();
}
//list = list.OrderByDescending(x => x.StartDate).ToList();
//list.AddRange(query);
DataTable tb = Funs.LINQToDataTable(list);
Grid4.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(Grid4, tb);
Grid4.DataSource = table;
Grid4.DataBind();
int totalNum = list.Count();
JObject summary = new JObject();
summary.Add("tfPageNum", "合计");
summary.Add("ProjectCode", totalNum);
Grid4.SummaryData = summary;
}
#endregion
#region Grid
protected void TextBox4_TextChanged(object sender, EventArgs e)
{
this.BindGrid4();
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid4_PageIndexChange(object sender, GridPageEventArgs e)
{
this.BindGrid4();
}
protected void Grid4_Sort(object sender, FineUIPro.GridSortEventArgs e)
{
this.BindGrid4();
}
#endregion
#region
/// <summary>
/// 导出按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnOut4_Click(object sender, EventArgs e)
{
Response.ClearContent();
string filename = Funs.GetNewFileName();
Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("集团主数据在建项目数据分析(预立项)" + filename, System.Text.Encoding.UTF8) + ".xls");
Response.ContentType = "application/excel";
Response.ContentEncoding = System.Text.Encoding.UTF8;
this.Grid4.PageSize = this.Grid4.RecordCount;
this.BindGrid4();
Response.Write(GetGridMultiHeaderTableHtml2(Grid4));
//Response.Write(GetGridTableHtml(Grid4));
Response.End();
}
#endregion
#endregion
#region
#region
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid9()
{
var db = Funs.DB;
var list = (from x in db.Project_MasterDataAnalysis
orderby x.ReportDate descending,x.DataDate descending
select x).ToList().Take(30);
string startDate = this.txtStartTime9.Text.Trim();
string endDate = this.txtEndTime9.Text.Trim();
if (!string.IsNullOrWhiteSpace(startDate))
{
list = list.Where(x => x.ReportDate >= Funs.GetNewDateTime(startDate)).ToList();
}
if (!string.IsNullOrWhiteSpace(endDate))
{
list = list.Where(x => x.ReportDate <= Funs.GetNewDateTime(endDate)).ToList();
}
DataTable tb = Funs.LINQToDataTable(list);
Grid9.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(Grid9, tb);
Grid9.DataSource = table;
Grid9.DataBind();
}
#endregion
#region Grid
protected void TextBox9_TextChanged(object sender, EventArgs e)
{
this.BindGrid9();
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid9_PageIndexChange(object sender, GridPageEventArgs e)
{
this.BindGrid9();
}
protected void Grid9_Sort(object sender, FineUIPro.GridSortEventArgs e)
{
this.BindGrid9();
}
#endregion
#region
/// <summary>
/// 导出按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnOut9_Click(object sender, EventArgs e)
{
Response.ClearContent();
string filename = Funs.GetNewFileName();
Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("集团主数据在建项目数据分析(数据汇总)" + filename, System.Text.Encoding.UTF8) + ".xls");
Response.ContentType = "application/excel";
Response.ContentEncoding = System.Text.Encoding.UTF8;
this.Grid9.PageSize = this.Grid9.RecordCount;
this.BindGrid9();
Response.Write(GetGridMultiHeaderTableHtml2(Grid9));
//Response.Write(GetGridTableHtml(Grid9));
Response.End();
}
#endregion
#region
/// <summary>
/// 汇总上报
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnReport_Click(object sender, EventArgs e)
{
var reportList = ProjectMasterDataAnalysisService.GetRecentHourAnalysisReportList();
if (reportList.Any())
{
Alert.ShowInTop("近一小时内已汇总上报,请勿频繁上报!", MessageBoxIcon.Warning);
return;
}
else
{
string message = string.Empty;
string code = ProjectMasterDataAnalysisService.ReportProjectMasterDataAnalysis(this.CurrUser.UserName,ref message);
if (code == "1")
{
this.BindGrid9();
ShowNotify(message, MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
return;
}
else
{
Alert.ShowInParent(message, MessageBoxIcon.Error);
}
}
}
#endregion
#endregion
#region
/// <summary>
/// 多表头导出方法
/// </summary>
/// <param name="grid"></param>
/// <returns></returns>
public string GetGridMultiHeaderTableHtml2(Grid grid)
{
StringBuilder sb = new StringBuilder();
sb.Append("<meta http-equiv=\"content-type\" content=\"application/excel; charset=UTF-8\"/>");
sb.Append("<table cellspacing=\"0\" rules=\"all\" border=\"1\" style=\"border-collapse:collapse;\">");
MultiHeaderTable mht = new MultiHeaderTable();
mht.ResolveMultiHeaderTable(grid.Columns);
foreach (List<object[]> rows in mht.MultiTable)
{
sb.Append("<tr>");
foreach (object[] cell in rows)
{
int rowspan = Convert.ToInt32(cell[0]);
int colspan = Convert.ToInt32(cell[1]);
GridColumn column = cell[2] as GridColumn;
if (column.Hidden == false)
{
sb.AppendFormat("<th{0}{1}{2}>{3}</th>",
rowspan != 1 ? " rowspan=\"" + rowspan + "\"" : "",
colspan != 1 ? " colspan=\"" + colspan + "\"" : "",
colspan != 1 ? " style=\"text-align:center;\"" : "",
column.HeaderText);
}
}
sb.Append("</tr>");
}
foreach (GridRow row in grid.Rows)
{
sb.Append("<tr>");
//if (row.Grid.gr.Hidden == false) {
foreach (GridColumn column in mht.Columns)
{
if (column.ColumnID != "ckbIsSelected" && column.ColumnID != "Punish" && column.ColumnID != "Del")
{
string html = row.Values[column.ColumnIndex].ToString();
if (column.ColumnID == "tfNumber")
{
html = (row.FindControl("lblNumber") as AspNet.Label).Text;
}
else if (column.ColumnID == "tfPageIndex")
{
html = (row.FindControl("lblPageIndex") as AspNet.Label).Text;
}
else if (column.ColumnID == "tfPageNo")
{
html = (row.FindControl("lblPageNo") as AspNet.Label).Text;
}
else if (column.ColumnID == "tfPageNum")
{
html = (row.FindControl("lblPageNum") as AspNet.Label).Text;
}
else if (column.ColumnID == "tfNum")
{
html = (row.FindControl("lblNum") as AspNet.Label).Text;
}
else if (column.ColumnID == "tfState")
{
html = (row.FindControl("lblState") as AspNet.Label).Text;
}
else if (column.ColumnID == "tfProState")
{
html = (row.FindControl("lblProState") as AspNet.Label).Text;
}
else if (column.ColumnID == "tfStatus")
{
html = (row.FindControl("lblStatus") as AspNet.Label).Text;
}
sb.AppendFormat("<td>{0}</td>", html);
}
}
//}
sb.Append("</tr>");
}
sb.Append("</table>");
return sb.ToString();
}
#endregion
}
}
@@ -0,0 +1,494 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.ProjectData
{
public partial class MasterProjectDataAnalysis
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// TabStrip1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TabStrip TabStrip1;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Toolbar2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar2;
/// <summary>
/// txtProCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtProCode;
/// <summary>
/// txtProName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtProName;
/// <summary>
/// txtStartTime 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtStartTime;
/// <summary>
/// Label5 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label5;
/// <summary>
/// txtEndTime 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtEndTime;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// txtProjectCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtProjectCode;
/// <summary>
/// txtProjectName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtProjectName;
/// <summary>
/// btnOut 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnOut;
/// <summary>
/// lblNumber 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNumber;
/// <summary>
/// lblState 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblState;
/// <summary>
/// Grid2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid2;
/// <summary>
/// Toolbar3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar3;
/// <summary>
/// txtProCode2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtProCode2;
/// <summary>
/// txtProName2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtProName2;
/// <summary>
/// txtStartTime2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtStartTime2;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label1;
/// <summary>
/// txtEndTime2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtEndTime2;
/// <summary>
/// btnOut2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnOut2;
/// <summary>
/// lblPageIndex 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblPageIndex;
/// <summary>
/// Grid3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid3;
/// <summary>
/// Toolbar4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar4;
/// <summary>
/// txtProCode3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtProCode3;
/// <summary>
/// txtProName3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtProName3;
/// <summary>
/// txtStartTime3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtStartTime3;
/// <summary>
/// Label2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label2;
/// <summary>
/// txtEndTime3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtEndTime3;
/// <summary>
/// btnOut3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnOut3;
/// <summary>
/// lblPageNo 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblPageNo;
/// <summary>
/// Grid4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid4;
/// <summary>
/// Toolbar5 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar5;
/// <summary>
/// txtProjectCode4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtProjectCode4;
/// <summary>
/// txtProjectName4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtProjectName4;
/// <summary>
/// txtStartTime4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtStartTime4;
/// <summary>
/// Label3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label3;
/// <summary>
/// txtEndTime4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtEndTime4;
/// <summary>
/// btnOut4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnOut4;
/// <summary>
/// lblPageNum 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblPageNum;
/// <summary>
/// lblProState 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblProState;
/// <summary>
/// Grid9 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid9;
/// <summary>
/// Toolbar6 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar6;
/// <summary>
/// txtStartTime9 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtStartTime9;
/// <summary>
/// Label4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label4;
/// <summary>
/// txtEndTime9 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtEndTime9;
/// <summary>
/// btnReport 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnReport;
/// <summary>
/// btnOut9 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnOut9;
/// <summary>
/// lblNum 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNum;
}
}
@@ -32,38 +32,38 @@
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<rows>
<Rows>
<f:FormRow>
<items>
<Items>
<f:TextBox ID="txtPro_code" runat="server" Label="主数据项目编号" LabelWidth="120px" LabelAlign="Right" Readonly="true">
</f:TextBox>
</items>
</Items>
</f:FormRow>
<f:FormRow>
<items>
<Items>
<f:TextBox ID="txtPro_name" runat="server" Label="主数据项目名称" LabelWidth="120px" LabelAlign="Right" Readonly="true">
</f:TextBox>
</items>
</Items>
</f:FormRow>
<f:FormRow>
<items>
<Items>
<f:TextBox ID="txtProjectcode" runat="server" Label="QHSE项目编号" LabelWidth="120px" LabelAlign="Right" Readonly="true">
</f:TextBox>
</items>
</Items>
</f:FormRow>
<f:FormRow>
<items>
<Items>
<f:TextBox ID="txtProjectname" runat="server" Label="QHSE项目名称" LabelWidth="120px" LabelAlign="Right" Readonly="true">
</f:TextBox>
</items>
</Items>
</f:FormRow>
<f:FormRow>
<items>
<Items>
<f:RadioButtonList runat="server" ID="rblIsRelate" Label="是否关联使用" LabelWidth="120px" Readonly="true" Enabled="true" LabelAlign="Right">
<f:RadioItem Text="已关联" Value="1" />
<f:RadioItem Text="未关联" Value="0" />
</f:RadioButtonList>
</items>
</Items>
</f:FormRow>
<%--<f:FormRow>
<Items>
@@ -74,7 +74,7 @@
</Items>
</f:FormRow>--%>
<f:FormRow>
<items>
<Items>
<f:RadioButtonList runat="server" ID="rblReasonType" Label="原因类型" LabelWidth="120px" LabelAlign="Right" Required="true" ShowRedStar="true">
<f:RadioItem Text="已完工" Value="已完工" />
<f:RadioItem Text="业主统筹" Value="业主统筹" />
@@ -83,15 +83,15 @@
<f:RadioItem Text="停缓建" Value="停缓建" />
<f:RadioItem Text="其他原因" Value="其他原因" />
</f:RadioButtonList>
</items>
</Items>
</f:FormRow>
<f:FormRow>
<items>
<Items>
<f:TextArea ID="txtReason" runat="server" Label="原因说明" EmptyText="请填写未关联使用集团主数据项目的原因情况说明(不超过100字)" LabelAlign="Right" LabelWidth="120px">
</f:TextArea>
<%--<f:TextArea ID="txtReason" runat="server" Label="原因说明" EmptyText="请填写原因说明" LabelAlign="Right" LabelWidth="120px" ShowRedStar="true">
</f:TextArea>--%>
</items>
</Items>
</f:FormRow>
<%--<f:FormRow>
<Items>
@@ -106,32 +106,32 @@
</Items>
</f:FormRow>--%>
<f:FormRow ID="Next">
<items>
<Items>
<f:RadioButtonList ID="cbNext" runat="server" Label="下一步" AutoPostBack="true" OnSelectedIndexChanged="cbNext_SelectedIndexChanged" LabelWidth="120px">
<f:RadioItem Text="已完成" Value="0" Selected="true" />
<f:RadioItem Text="下一步审批人" Value="1" />
</f:RadioButtonList>
<f:Label runat="server" ID="lb"></f:Label>
</items>
</Items>
</f:FormRow>
<f:FormRow ID="HandleMan" Hidden="true">
<items>
<Items>
<f:DropDownBox runat="server" ID="drpHandleMan" EmptyText="请从下拉表格中选择" Label="审批人"
MatchFieldWidth="false" EnableMultiSelect="false" LabelWidth="120px">
<poppanel>
<PopPanel>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" runat="server" DataIDField="UserId" DataTextField="UserName"
DataKeyNames="UserId" AllowSorting="true" SortField="UserName" SortDirection="ASC" EnableColumnLines="true"
Hidden="true" Width="800px" Height="520px" EnableMultiSelect="false" KeepCurrentSelection="true" PageSize="10000">
<toolbars>
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server">
<items>
<Items>
<f:TextBox runat="server" Label="查询" ID="txtUserName" EmptyText="输入查询条件" FocusOnPageLoad="true"
AutoPostBack="true" OnTextChanged="TextBox_TextChanged" Width="250px" LabelWidth="80px">
</f:TextBox>
</items>
</Items>
</f:Toolbar>
</toolbars>
<columns>
</Toolbars>
<Columns>
<f:RowNumberField EnablePagingNumber="true" HeaderText="序号" Width="50px"
HeaderTextAlign="Center" TextAlign="Center" />
<f:RenderField Width="90px" ColumnID="UserCode" DataField="UserCode" SortField="UserCode"
@@ -146,33 +146,33 @@
SortField="RoleName" FieldType="String" HeaderText="角色" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
</columns>
</Columns>
</f:Grid>
</poppanel>
</PopPanel>
</f:DropDownBox>
</items>
</Items>
</f:FormRow>
<f:FormRow ID="Audit" Hidden="true">
<items>
<Items>
<f:RadioButtonList ID="rblHandleState" runat="server" Label="审核结果" LabelWidth="120px">
<f:RadioItem Text="通过" Value="1" />
<f:RadioItem Text="不通过" Value="0" />
</f:RadioButtonList>
<f:Label runat="server" ID="Label1"></f:Label>
</items>
</Items>
</f:FormRow>
</rows>
<toolbars>
</Rows>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<items>
<Items>
<f:HiddenField ID="hfGpsAreId" runat="server"></f:HiddenField>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnSave" OnClick="btnSave_Click" Icon="SystemSave" ValidateForms="SimpleForm1" runat="server" ToolTip="提交" Text="提交">
</f:Button>
</items>
</Items>
</f:Toolbar>
</toolbars>
</Toolbars>
</f:Form>
@@ -4,7 +4,6 @@ using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
namespace FineUIPro.Web.ProjectData
{
@@ -75,7 +75,7 @@
<f:FormRow>
<Items>
<f:DropDownBox runat="server" ID="drpMasterBox1" Label="集团主数据" EmptyText="请从下拉表格中选择集团主数据项目" DataControlID="Grid1"
EnableMultiSelect="false" MatchFieldWidth="false" ShowRedStar="true" AutoPostBack="true" OnTextChanged="MasterData_Changed">
EnableMultiSelect="false" MatchFieldWidth="false" AutoPostBack="true" OnTextChanged="MasterData_Changed">
<PopPanel>
<f:Panel ID="Panel7" runat="server" BodyPadding="10px" Width="1280px" Height="520px" Hidden="true"
ShowBorder="true" ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
@@ -49,6 +49,9 @@
<f:Button ID="btnDelete" Icon="Delete" ConfirmText="确定删除当前数据?"
OnClick="btnDelete_Click" Text="删除" Hidden="true" runat="server">
</f:Button>
<f:Button ID="btnReject" Icon="ArrowUndo" ConfirmText="确定驳回当前整改?"
OnClick="btnReject_Click" Text="驳回" Hidden="true" runat="server">
</f:Button>
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" ToolTip="导出" Icon="FolderUp" Text="导出"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
@@ -1,7 +1,9 @@
using BLL;
using FineUIPro.Web.SysManage;
using Model;
using System;
using System.Linq;
using Model;
using static BLL.UnitHazardRegisterService;
namespace FineUIPro.Web.ZHGL.Supervise
{
@@ -113,11 +115,10 @@ namespace FineUIPro.Web.ZHGL.Supervise
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
if (UnitHazardRegisterService.CanDeleteRegister(rowID) || (this.CurrUser.UserId ==Const.hfnbdId || this.CurrUser.UserId == Const.sysglyId))
if (UnitHazardRegisterService.CanDeleteRegister(rowID) || (this.CurrUser.UserId == Const.hfnbdId || this.CurrUser.UserId == Const.sysglyId))
{
BLL.UnitHazardRegisterItemService.DeleteItemsByRegisterId(rowID);
BLL.UnitHazardRegisterService.DeleteUnitHazardRegisterById(rowID);
}
else
{
@@ -131,6 +132,44 @@ namespace FineUIPro.Web.ZHGL.Supervise
}
}
protected void btnReject_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length > 0)
{
int succ = 0;
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
var register = UnitHazardRegisterService.GetUnitHazardRegisterById(rowID);
if (register != null)
{
if (register.CompileMan == this.CurrUser.UserId || (this.CurrUser.UserId == Const.hfnbdId || this.CurrUser.UserId == Const.sysglyId))
{
if (register.States == (int)StateInt. || register.States == (int)StateInt.)
{
BLL.UnitHazardRegisterItemService.RejectItemsByRegisterId(rowID);
BLL.UnitHazardRegisterService.RejectUnitHazardRegisterById(rowID);
succ++;
}
else
{
ShowNotify($"检查({register.UnitHazardRegisterCode})暂未整改,无需驳回!", MessageBoxIcon.Warning);
}
}
else
{
ShowNotify($"非管理员和编制人,检查({register.UnitHazardRegisterCode})无法驳回!", MessageBoxIcon.Warning);
}
}
}
BindGrid();
if (succ > 0)
{
ShowNotify("操作成功!", MessageBoxIcon.Success);
}
}
}
protected void btnOut_Click(object sender, EventArgs e)
{
string type = Request["type"] ?? "0";
@@ -160,7 +199,11 @@ namespace FineUIPro.Web.ZHGL.Supervise
{
if (buttonList.Contains(BLL.Const.BtnAdd)) btnNew.Hidden = false;
if (buttonList.Contains(BLL.Const.BtnModify)) btnEdit.Hidden = false;
if (buttonList.Contains(BLL.Const.BtnDelete)) btnDelete.Hidden = false;
if (buttonList.Contains(BLL.Const.BtnDelete))
{
btnDelete.Hidden = false;
btnReject.Hidden = false;
}
}
}
}
@@ -113,6 +113,15 @@ namespace FineUIPro.Web.ZHGL.Supervise
/// </remarks>
protected global::FineUIPro.Button btnDelete;
/// <summary>
/// btnReject 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnReject;
/// <summary>
/// btnOut 控件。
/// </summary>
@@ -62,6 +62,9 @@
<f:TextBox runat="server" Label="问题描述" ID="txtProblem" EmptyText="输入查询条件" AutoPostBack="true"
OnTextChanged="TextBox_TextChanged" LabelAlign="right" Width="300px" LabelWidth="90px">
</f:TextBox>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnReject" Icon="ArrowUndo" ConfirmText="确定驳回当前整改?" OnClick="btnReject_Click" Text="驳回" Hidden="true" runat="server">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
@@ -85,11 +88,11 @@
<f:DropDownList ID="drpProblemStates" runat="server" Label="问题整改状态" AutoPostBack="true" EmptyText="-请选择-" AutoSelectFirstItem="false"
OnSelectedIndexChanged="TextBox_TextChanged" LabelWidth="120px" LabelAlign="Right" Width="220px">
<f:ListItem Text="待整改" Value="0" />
<f:ListItem Text="已整改" Value="1" />
<f:ListItem Text="已整改" Value="1" />
</f:DropDownList>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnEdit" Icon="Pencil" runat="server" OnClick="btnEdit_Click" Text="编辑" Hidden="true">
<f:Button ID="btnEdit" Icon="Pencil" runat="server" OnClick="btnEdit_Click" Text="编辑" Hidden="true">
</f:Button>
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" ToolTip="导出" Icon="FolderUp" Text="导出"
EnableAjax="false" DisableControlBeforePostBack="false">
@@ -146,7 +149,7 @@
<asp:Label ID="lbImageUrl2" runat="server" Text='<%# BLL.UploadAttachmentService.ConvertImageUrlByImage(Eval("UnitHazardRegisterItemId")+"-R") %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<%-- <f:RenderField Width="80px" ColumnID="StatesName" DataField="StatesName"
<%-- <f:RenderField Width="80px" ColumnID="StatesName" DataField="StatesName"
SortField="StatesName" FieldType="String" HeaderText="检查单状态" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>--%>
@@ -3,6 +3,7 @@ using Model;
using System;
using System.Linq;
using System.Text;
using static BLL.UnitHazardRegisterService;
using AspNet = System.Web.UI.WebControls;
namespace FineUIPro.Web.ZHGL.Supervise
@@ -19,6 +20,10 @@ namespace FineUIPro.Web.ZHGL.Supervise
{
Grid1.PageSize = this.CurrUser.PageSize.Value;
}
if (this.CurrUser != null && (this.CurrUser.UserId == Const.hfnbdId || this.CurrUser.UserId == Const.sysglyId))
{//管理员有权限驳回
this.btnReject.Hidden = false;
}
this.ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
// 绑定表格
@@ -97,7 +102,7 @@ namespace FineUIPro.Web.ZHGL.Supervise
/// <summary>
/// 排序
/// </summary>
protected void Grid1_Sort(object sender,GridSortEventArgs e)
protected void Grid1_Sort(object sender, GridSortEventArgs e)
{
BindGrid();
}
@@ -135,6 +140,34 @@ namespace FineUIPro.Web.ZHGL.Supervise
BindGrid();
}
protected void btnReject_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length > 0)
{
int succ = 0;
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string itemId = Grid1.DataKeys[rowIndex][0].ToString();
var item = BLL.UnitHazardRegisterItemService.GetUnitHazardRegisterItemById(itemId);
if (item != null)
{
BLL.UnitHazardRegisterItemService.RejectItemByRegisterItemId(itemId);
succ++;
}
}
BindGrid();
if (succ > 0)
{
ShowNotify("操作成功!", MessageBoxIcon.Success);
}
}
else
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
}
/// <summary>
/// Grid行双击事件
/// </summary>
@@ -86,6 +86,15 @@ namespace FineUIPro.Web.ZHGL.Supervise
/// </remarks>
protected global::FineUIPro.TextBox txtProblem;
/// <summary>
/// btnReject 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnReject;
/// <summary>
/// Toolbar2 控件。
/// </summary>
+142 -1
View File
@@ -13,7 +13,6 @@ using System.Text;
using System.Threading;
using System.Web;
using System.Web.UI;
using static FineUIPro.Web.CQMS.Performance.Performance;
using AspNet = System.Web.UI.WebControls;
namespace FineUIPro.Web
@@ -1323,6 +1322,148 @@ namespace FineUIPro.Web
}
#region
/// <summary>
/// 处理多表头的类
/// </summary>
public class MultiHeaderTable
{
// 包含 rowspancolspan 的多表头,方便生成 HTML 的 table 标签
public List<List<object[]>> MultiTable = new List<List<object[]>>();
// 最终渲染的列数组
public List<GridColumn> Columns = new List<GridColumn>();
public void ResolveMultiHeaderTable(GridColumnCollection columns)
{
List<object[]> row = new List<object[]>();
foreach (GridColumn column in columns)
{
object[] cell = new object[4];
cell[0] = 1; // rowspan
cell[1] = 1; // colspan
cell[2] = column;
cell[3] = null;
row.Add(cell);
}
ResolveMultiTable(row, 0);
ResolveColumns(row);
}
private void ResolveColumns(List<object[]> row)
{
foreach (object[] cell in row)
{
GroupField groupField = cell[2] as GroupField;
if (groupField != null && groupField.Columns.Count > 0)
{
List<object[]> subrow = new List<object[]>();
foreach (GridColumn column in groupField.Columns)
{
subrow.Add(new object[]
{
1,
1,
column,
groupField
});
}
ResolveColumns(subrow);
}
else
{
Columns.Add(cell[2] as GridColumn);
}
}
}
private void ResolveMultiTable(List<object[]> row, int level)
{
List<object[]> nextrow = new List<object[]>();
foreach (object[] cell in row)
{
GroupField groupField = cell[2] as GroupField;
if (groupField != null && groupField.Columns.Count > 0)
{
// 如果当前列包含子列,则更改当前列的 colspan,以及增加父列(向上递归)的colspan
cell[1] = Convert.ToInt32(groupField.Columns.Count);
PlusColspan(level - 1, cell[3] as GridColumn, groupField.Columns.Count - 1);
foreach (GridColumn column in groupField.Columns)
{
nextrow.Add(new object[]
{
1,
1,
column,
groupField
});
}
}
}
MultiTable.Add(row);
// 如果当前下一行,则增加上一行(向上递归)中没有子列的列的 rowspan
if (nextrow.Count > 0)
{
PlusRowspan(level);
ResolveMultiTable(nextrow, level + 1);
}
}
private void PlusRowspan(int level)
{
if (level < 0)
{
return;
}
foreach (object[] cells in MultiTable[level])
{
GroupField groupField = cells[2] as GroupField;
if (groupField != null && groupField.Columns.Count > 0)
{
// ...
}
else
{
cells[0] = Convert.ToInt32(cells[0]) + 1;
}
}
PlusRowspan(level - 1);
}
private void PlusColspan(int level, GridColumn parent, int plusCount)
{
if (level < 0)
{
return;
}
foreach (object[] cells in MultiTable[level])
{
GridColumn column = cells[2] as GridColumn;
if (column == parent)
{
cells[1] = Convert.ToInt32(cells[1]) + plusCount;
PlusColspan(level - 1, cells[3] as GridColumn, plusCount);
}
}
}
}
#endregion
#endregion
+361
View File
@@ -2024,6 +2024,9 @@ namespace Model
partial void InsertProject_Installation(Project_Installation instance);
partial void UpdateProject_Installation(Project_Installation instance);
partial void DeleteProject_Installation(Project_Installation instance);
partial void InsertProject_MasterDataAnalysis(Project_MasterDataAnalysis instance);
partial void UpdateProject_MasterDataAnalysis(Project_MasterDataAnalysis instance);
partial void DeleteProject_MasterDataAnalysis(Project_MasterDataAnalysis instance);
partial void InsertProject_MasterDataUsage(Project_MasterDataUsage instance);
partial void UpdateProject_MasterDataUsage(Project_MasterDataUsage instance);
partial void DeleteProject_MasterDataUsage(Project_MasterDataUsage instance);
@@ -8239,6 +8242,14 @@ namespace Model
}
}
public System.Data.Linq.Table<Project_MasterDataAnalysis> Project_MasterDataAnalysis
{
get
{
return this.GetTable<Project_MasterDataAnalysis>();
}
}
public System.Data.Linq.Table<Project_MasterDataUsage> Project_MasterDataUsage
{
get
@@ -320610,6 +320621,356 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Project_MasterDataAnalysis")]
public partial class Project_MasterDataAnalysis : INotifyPropertyChanging, INotifyPropertyChanged
{
private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
private string _Id;
private string _CollCropCode;
private string _UnitId;
private System.DateTime _ReportDate;
private System.DateTime _DataDate;
private int _Total;
private int _MasterTotal;
private int _QHSETotal;
private int _ZhengChang;
private int _DaiJian;
private int _BuYong;
private int _YuLiXiang;
private string _CreateUser;
#region
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
partial void OnCreated();
partial void OnIdChanging(string value);
partial void OnIdChanged();
partial void OnCollCropCodeChanging(string value);
partial void OnCollCropCodeChanged();
partial void OnUnitIdChanging(string value);
partial void OnUnitIdChanged();
partial void OnReportDateChanging(System.DateTime value);
partial void OnReportDateChanged();
partial void OnDataDateChanging(System.DateTime value);
partial void OnDataDateChanged();
partial void OnTotalChanging(int value);
partial void OnTotalChanged();
partial void OnMasterTotalChanging(int value);
partial void OnMasterTotalChanged();
partial void OnQHSETotalChanging(int value);
partial void OnQHSETotalChanged();
partial void OnZhengChangChanging(int value);
partial void OnZhengChangChanged();
partial void OnDaiJianChanging(int value);
partial void OnDaiJianChanged();
partial void OnBuYongChanging(int value);
partial void OnBuYongChanged();
partial void OnYuLiXiangChanging(int value);
partial void OnYuLiXiangChanged();
partial void OnCreateUserChanging(string value);
partial void OnCreateUserChanged();
#endregion
public Project_MasterDataAnalysis()
{
OnCreated();
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="NVarChar(50) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
public string Id
{
get
{
return this._Id;
}
set
{
if ((this._Id != value))
{
this.OnIdChanging(value);
this.SendPropertyChanging();
this._Id = value;
this.SendPropertyChanged("Id");
this.OnIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CollCropCode", DbType="NVarChar(100) NOT NULL", CanBeNull=false)]
public string CollCropCode
{
get
{
return this._CollCropCode;
}
set
{
if ((this._CollCropCode != value))
{
this.OnCollCropCodeChanging(value);
this.SendPropertyChanging();
this._CollCropCode = value;
this.SendPropertyChanged("CollCropCode");
this.OnCollCropCodeChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UnitId", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
public string UnitId
{
get
{
return this._UnitId;
}
set
{
if ((this._UnitId != value))
{
this.OnUnitIdChanging(value);
this.SendPropertyChanging();
this._UnitId = value;
this.SendPropertyChanged("UnitId");
this.OnUnitIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ReportDate", DbType="DateTime NOT NULL")]
public System.DateTime ReportDate
{
get
{
return this._ReportDate;
}
set
{
if ((this._ReportDate != value))
{
this.OnReportDateChanging(value);
this.SendPropertyChanging();
this._ReportDate = value;
this.SendPropertyChanged("ReportDate");
this.OnReportDateChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DataDate", DbType="DateTime NOT NULL")]
public System.DateTime DataDate
{
get
{
return this._DataDate;
}
set
{
if ((this._DataDate != value))
{
this.OnDataDateChanging(value);
this.SendPropertyChanging();
this._DataDate = value;
this.SendPropertyChanged("DataDate");
this.OnDataDateChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Total", DbType="Int NOT NULL")]
public int Total
{
get
{
return this._Total;
}
set
{
if ((this._Total != value))
{
this.OnTotalChanging(value);
this.SendPropertyChanging();
this._Total = value;
this.SendPropertyChanged("Total");
this.OnTotalChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_MasterTotal", DbType="Int NOT NULL")]
public int MasterTotal
{
get
{
return this._MasterTotal;
}
set
{
if ((this._MasterTotal != value))
{
this.OnMasterTotalChanging(value);
this.SendPropertyChanging();
this._MasterTotal = value;
this.SendPropertyChanged("MasterTotal");
this.OnMasterTotalChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_QHSETotal", DbType="Int NOT NULL")]
public int QHSETotal
{
get
{
return this._QHSETotal;
}
set
{
if ((this._QHSETotal != value))
{
this.OnQHSETotalChanging(value);
this.SendPropertyChanging();
this._QHSETotal = value;
this.SendPropertyChanged("QHSETotal");
this.OnQHSETotalChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ZhengChang", DbType="Int NOT NULL")]
public int ZhengChang
{
get
{
return this._ZhengChang;
}
set
{
if ((this._ZhengChang != value))
{
this.OnZhengChangChanging(value);
this.SendPropertyChanging();
this._ZhengChang = value;
this.SendPropertyChanged("ZhengChang");
this.OnZhengChangChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DaiJian", DbType="Int NOT NULL")]
public int DaiJian
{
get
{
return this._DaiJian;
}
set
{
if ((this._DaiJian != value))
{
this.OnDaiJianChanging(value);
this.SendPropertyChanging();
this._DaiJian = value;
this.SendPropertyChanged("DaiJian");
this.OnDaiJianChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_BuYong", DbType="Int NOT NULL")]
public int BuYong
{
get
{
return this._BuYong;
}
set
{
if ((this._BuYong != value))
{
this.OnBuYongChanging(value);
this.SendPropertyChanging();
this._BuYong = value;
this.SendPropertyChanged("BuYong");
this.OnBuYongChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_YuLiXiang", DbType="Int NOT NULL")]
public int YuLiXiang
{
get
{
return this._YuLiXiang;
}
set
{
if ((this._YuLiXiang != value))
{
this.OnYuLiXiangChanging(value);
this.SendPropertyChanging();
this._YuLiXiang = value;
this.SendPropertyChanged("YuLiXiang");
this.OnYuLiXiangChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CreateUser", DbType="NVarChar(200) NOT NULL", CanBeNull=false)]
public string CreateUser
{
get
{
return this._CreateUser;
}
set
{
if ((this._CreateUser != value))
{
this.OnCreateUserChanging(value);
this.SendPropertyChanging();
this._CreateUser = value;
this.SendPropertyChanged("CreateUser");
this.OnCreateUserChanged();
}
}
}
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void SendPropertyChanging()
{
if ((this.PropertyChanging != null))
{
this.PropertyChanging(this, emptyChangingEventArgs);
}
}
protected virtual void SendPropertyChanged(String propertyName)
{
if ((this.PropertyChanged != null))
{
this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Project_MasterDataUsage")]
public partial class Project_MasterDataUsage : INotifyPropertyChanging, INotifyPropertyChanged
{
+29 -1
View File
@@ -1,9 +1,10 @@
using BLL;
using Model;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Linq;
using System.Web.Http;
using Newtonsoft.Json;
namespace WebAPI.Controllers
{
@@ -171,5 +172,32 @@ namespace WebAPI.Controllers
return responeData;
}
#endregion
#region
/// <summary>
/// 汇总上报集团主数据在建项目数据分析
/// </summary>
/// <returns></returns>
[HttpPost]
public ReturnData PushProjectMasterDataAnalysisData()
{
Model.ReturnData responeData = new Model.ReturnData();
string message = string.Empty;
string code = ProjectMasterDataAnalysisService.ReportProjectMasterDataAnalysis("定时任务", ref message);
if (code == "1")
{
responeData.code = 1;
}
else
{
responeData.code = 0;
}
responeData.message = message;
return responeData;
}
#endregion
}
}