20210618
This commit is contained in:
parent
e7cb804684
commit
65a719e331
|
@ -0,0 +1,41 @@
|
|||
delete from Sys_ButtonToMenu where MenuId in (select MenuId from Sys_Menu where MenuType='Menu_PDigData')
|
||||
go
|
||||
delete from Sys_Menu where MenuType='Menu_PDigData'
|
||||
go
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('B0A4F8E9-143E-410A-AAD7-348EC72ADA0B','劳务实名制对接','',10,'0','Menu_PDigData',0,0,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('ECC3A343-A0CC-48BB-BA81-904FE2BE8D9B','同步设置','ZHGL/RealName/SynchroSet.aspx',10,'B0A4F8E9-143E-410A-AAD7-348EC72ADA0B','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
|
||||
VALUES('B453D00F-93EB-49CD-BF5A-9169314856CB','ECC3A343-A0CC-48BB-BA81-904FE2BE8D9B','保存',1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('86369F0D-0E01-4206-BF62-60A29B880EF5','基础数据','ZHGL/RealName/BasicData.aspx',20,'B0A4F8E9-143E-410A-AAD7-348EC72ADA0B','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
|
||||
VALUES('E4A82EEE-C172-483C-B726-47115FB6CCFC','86369F0D-0E01-4206-BF62-60A29B880EF5','保存',1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('46B15547-BB67-43F8-86AE-D8DB8928EFE4','同步记录','ZHGL/RealName/SynchroRecord.aspx',30,'B0A4F8E9-143E-410A-AAD7-348EC72ADA0B','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('1BF93DE5-4145-4828-8692-038F3ABD519C','项目考勤','',20,'0','Menu_PDigData',0,0,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('56E3E7B8-65D4-4121-930D-8B7EFC2F1645','出入记录','Door/InOutList.aspx',10,'1BF93DE5-4145-4828-8692-038F3ABD519C','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('637F560D-4F3F-498F-B47D-8BB7EA33A2F6','人员考勤','Door/InOutRecord.aspx',20,'1BF93DE5-4145-4828-8692-038F3ABD519C','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('E0F7DDC3-C1B3-4F9E-9B7E-086AEB1E28B1','人员考勤图形分析','Door/InOutRecordChart.aspx',30,'1BF93DE5-4145-4828-8692-038F3ABD519C','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('E6B5DAD1-8B9A-47AC-B7A8-33AB3B0B630C','单位考勤','Door/InOutManHours.aspx',40,'1BF93DE5-4145-4828-8692-038F3ABD519C','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('984AB874-D5CB-4077-8ADB-6E154F5B636C','缺勤人员','Door/AbsenceDuty.aspx',50,'1BF93DE5-4145-4828-8692-038F3ABD519C','Menu_PDigData',0,1,1)
|
||||
GO
|
|
@ -0,0 +1,91 @@
|
|||
CREATE PROC [dbo].[SP_InOutList]
|
||||
@projectId NVARCHAR(50) = NULL,
|
||||
@unitId NVARCHAR(50) = NULL,
|
||||
@name NVARCHAR(50) = NULL,
|
||||
@type NVARCHAR(10)=NULL,
|
||||
@startTime DATETIME = NULL,
|
||||
@endTime DATETIME = NULL
|
||||
AS
|
||||
/*出入记录*/
|
||||
BEGIN
|
||||
IF(@type='1')
|
||||
BEGIN
|
||||
SELECT NEWID
|
||||
,ValidEventID AS ID
|
||||
,V.ProjectId
|
||||
,EmployName
|
||||
,DepartmentID
|
||||
,DepartmentName AS DepartName
|
||||
,AreaID,AreaName
|
||||
,EmployNO
|
||||
,CAST(V.CardNO AS nvarchar(20)) AS CardID
|
||||
,RecordDateTime AS DateTimeRecord
|
||||
,RecordAll AS RecordDes
|
||||
,(CASE WHEN InOrOut=2 THEN '出门' ELSE '进门' END) AS InOrOut
|
||||
,P.UnitId
|
||||
,P.TeamGroupId
|
||||
FROM t_d_validcardevent V
|
||||
LEFT JOIN SitePerson_Person AS P ON V.IDCardNo=P.IdentityCard AND V.ProjectId=P.ProjectId
|
||||
WHERE V.ProjectId = @ProjectId
|
||||
AND (RecordDateTime >= @startTime OR @startTime IS NULL)
|
||||
AND (RecordDateTime <= @endTime OR @endTime IS NULL)
|
||||
AND (P.UnitId = @unitId OR @unitId IS NULL)
|
||||
AND (EmployName like ('%'+@name+'%') OR @name IS NULL)
|
||||
ORDER BY RecordDateTime DESC
|
||||
END
|
||||
ELSE IF(@type='2')
|
||||
BEGIN
|
||||
SELECT NewID
|
||||
,ID
|
||||
,V.ProjectId
|
||||
,EmployName
|
||||
,DepartmentID
|
||||
,DepartName
|
||||
,AreaID
|
||||
,AreaName
|
||||
,EmployNO
|
||||
,CAST(V.CardID AS nvarchar(20)) AS CardID
|
||||
,RoleID
|
||||
,DateTimeRecord
|
||||
,RecordDes
|
||||
,InOrOut
|
||||
,P.UnitId,P.TeamGroupId
|
||||
FROM t_d_facerecord V
|
||||
LEFT JOIN SitePerson_Person AS P ON V.EmployNO=P.IdentityCard AND V.ProjectId=P.ProjectId
|
||||
WHERE V.ProjectId = @ProjectId AND V.RoleID = '微信端'
|
||||
AND (DateTimeRecord >= @startTime OR @startTime IS NULL)
|
||||
AND (DateTimeRecord <= @endTime OR @endTime IS NULL)
|
||||
AND (P.UnitId = @unitId OR @unitId IS NULL)
|
||||
AND (EmployName like ('%'+@name+'%') OR @name IS NULL)
|
||||
ORDER BY DateTimeRecord DESC
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT NewID
|
||||
,ID
|
||||
,V.ProjectId
|
||||
,EmployName
|
||||
,DepartmentID
|
||||
,DepartName
|
||||
,AreaID
|
||||
,AreaName
|
||||
,EmployNO
|
||||
,CAST(V.CardID AS nvarchar(20)) AS CardID
|
||||
,RoleID
|
||||
,DateTimeRecord
|
||||
,RecordDes
|
||||
,InOrOut
|
||||
,P.UnitId,P.TeamGroupId
|
||||
FROM t_d_facerecord V
|
||||
LEFT JOIN SitePerson_Person AS P ON V.EmployNO=P.IdentityCard AND V.ProjectId=P.ProjectId
|
||||
WHERE V.ProjectId = @ProjectId AND V.RoleID != '微信端'
|
||||
AND (DateTimeRecord >= @startTime OR @startTime IS NULL)
|
||||
AND (DateTimeRecord <= @endTime OR @endTime IS NULL)
|
||||
AND (P.UnitId = @unitId OR @unitId IS NULL)
|
||||
AND (EmployName like ('%'+@name+'%') OR @name IS NULL)
|
||||
ORDER BY DateTimeRecord DESC
|
||||
END
|
||||
END
|
||||
GO
|
||||
|
||||
|
|
@ -1,26 +1,41 @@
|
|||
--DELETE FROM Sys_Menu WHERE MenuId='1BF93DE5-4145-4828-8692-038F3ABD519C' OR SuperMenu='1BF93DE5-4145-4828-8692-038F3ABD519C'
|
||||
--GO
|
||||
--INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
--VALUES('1BF93DE5-4145-4828-8692-038F3ABD519C','项目考勤','',10,'0','Menu_PDigData',0,0,1)
|
||||
--GO
|
||||
--delete from Sys_ButtonToMenu where MenuId in (select MenuId from Sys_Menu where MenuType='Menu_PDigData')
|
||||
--go
|
||||
--delete from Sys_Menu where MenuType='Menu_PDigData'
|
||||
--go
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('56E3E7B8-65D4-4121-930D-8B7EFC2F1645','出入记录','Door/InOutList.aspx',10,'0','Menu_PDigData',0,1,1)
|
||||
VALUES('B0A4F8E9-143E-410A-AAD7-348EC72ADA0B','劳务实名制对接','',10,'0','Menu_PDigData',0,0,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('ECC3A343-A0CC-48BB-BA81-904FE2BE8D9B','同步设置','ZHGL/RealName/SynchroSet.aspx',10,'B0A4F8E9-143E-410A-AAD7-348EC72ADA0B','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
|
||||
VALUES('B453D00F-93EB-49CD-BF5A-9169314856CB','ECC3A343-A0CC-48BB-BA81-904FE2BE8D9B','保存',1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('86369F0D-0E01-4206-BF62-60A29B880EF5','基础数据','ZHGL/RealName/BasicData.aspx',20,'B0A4F8E9-143E-410A-AAD7-348EC72ADA0B','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
|
||||
VALUES('E4A82EEE-C172-483C-B726-47115FB6CCFC','86369F0D-0E01-4206-BF62-60A29B880EF5','保存',1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('46B15547-BB67-43F8-86AE-D8DB8928EFE4','同步记录','ZHGL/RealName/SynchroRecord.aspx',30,'B0A4F8E9-143E-410A-AAD7-348EC72ADA0B','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('637F560D-4F3F-498F-B47D-8BB7EA33A2F6','人员考勤','Door/InOutRecord.aspx',20,'0','Menu_PDigData',0,1,1)
|
||||
VALUES('1BF93DE5-4145-4828-8692-038F3ABD519C','项目考勤','',20,'0','Menu_PDigData',0,0,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('E0F7DDC3-C1B3-4F9E-9B7E-086AEB1E28B1','人员考勤图形分析','Door/InOutRecordChart.aspx',25,'0','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('E6B5DAD1-8B9A-47AC-B7A8-33AB3B0B630C','单位考勤','Door/InOutManHours.aspx',30,'0','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('984AB874-D5CB-4077-8ADB-6E154F5B636C','缺勤人员','Door/AbsenceDuty.aspx',40,'0','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
--INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
--VALUES('8114BAA1-0D5D-404E-A798-95B6C833A7F3','考勤统计','Door/InOutstatistics.aspx',40,'1BF93DE5-4145-4828-8692-038F3ABD519C','Menu_HSSE',0,1,1)
|
||||
--GO
|
||||
--INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
--VALUES('7F4D841D-E8A5-424A-BEDB-D46B6042092B','考勤统计(按岗位)','Door/InOutPoststatistics.aspx',50,'1BF93DE5-4145-4828-8692-038F3ABD519C','Menu_HSSE',0,1,1)
|
||||
--GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('56E3E7B8-65D4-4121-930D-8B7EFC2F1645','出入记录','Door/InOutList.aspx',10,'1BF93DE5-4145-4828-8692-038F3ABD519C','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('637F560D-4F3F-498F-B47D-8BB7EA33A2F6','人员考勤','Door/InOutRecord.aspx',20,'1BF93DE5-4145-4828-8692-038F3ABD519C','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('E0F7DDC3-C1B3-4F9E-9B7E-086AEB1E28B1','人员考勤图形分析','Door/InOutRecordChart.aspx',30,'1BF93DE5-4145-4828-8692-038F3ABD519C','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('E6B5DAD1-8B9A-47AC-B7A8-33AB3B0B630C','单位考勤','Door/InOutManHours.aspx',40,'1BF93DE5-4145-4828-8692-038F3ABD519C','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
VALUES('984AB874-D5CB-4077-8ADB-6E154F5B636C','缺勤人员','Door/AbsenceDuty.aspx',50,'1BF93DE5-4145-4828-8692-038F3ABD519C','Menu_PDigData',0,1,1)
|
||||
GO
|
||||
|
|
|
@ -254,6 +254,7 @@
|
|||
<Compile Include="CQMS\WBS\WorkPackageProjectService.cs" />
|
||||
<Compile Include="CQMS\WBS\WorkPackageService.cs" />
|
||||
<Compile Include="DigData\HSEDataCollectService.cs" />
|
||||
<Compile Include="DoorServer\InOutService.cs" />
|
||||
<Compile Include="DoorServer\DoorServerService.cs" />
|
||||
<Compile Include="DropListService.cs" />
|
||||
<Compile Include="GlobalSuppressions.cs" />
|
||||
|
|
|
@ -4683,6 +4683,20 @@ namespace BLL
|
|||
public const string UndergroundPipeCompletionMenuId = "C7037A5D-D8A6-4C1C-A5B8-2083C31C0A7B";
|
||||
#endregion
|
||||
|
||||
#region 项目考勤
|
||||
/// <summary>
|
||||
/// 同步设置
|
||||
/// </summary>
|
||||
public const string ServerRealNameSynchroSetMenuId = "ECC3A343-A0CC-48BB-BA81-904FE2BE8D9B";
|
||||
/// <summary>
|
||||
/// 基础数据
|
||||
/// </summary>
|
||||
public const string ServerRealNameBasicDataMenuId = "86369F0D-0E01-4206-BF62-60A29B880EF5";
|
||||
/// <summary>
|
||||
/// 同步记录
|
||||
/// </summary>
|
||||
public const string ServerRealNameSynchroRecordMenuId = "46B15547-BB67-43F8-86AE-D8DB8928EFE4";
|
||||
#endregion
|
||||
/// <summary>
|
||||
/// 不参与规则设置菜单
|
||||
/// </summary>
|
||||
|
|
|
@ -6,7 +6,7 @@ using System.Text;
|
|||
namespace BLL
|
||||
{
|
||||
/// <summary>
|
||||
/// 事故类型
|
||||
/// 考勤
|
||||
/// </summary>
|
||||
public static class DoorServerService
|
||||
{
|
||||
|
|
|
@ -0,0 +1,143 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
/// <summary>
|
||||
/// 考勤
|
||||
/// </summary>
|
||||
public static class InOutService
|
||||
{
|
||||
public static Model.SGGLDB db = Funs.DB;
|
||||
/// <summary>
|
||||
/// 记录数
|
||||
/// </summary>
|
||||
public static int count
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 定义变量
|
||||
/// </summary>
|
||||
private static IQueryable<Model.T_d_facerecord> qq = from x in db.T_d_facerecord
|
||||
orderby x.DateTimeRecord descending
|
||||
select x;
|
||||
private static IQueryable<Model.T_d_validcardevent> qq1 = from x in db.T_d_validcardevent
|
||||
orderby x.RecordDateTime descending
|
||||
select x;
|
||||
|
||||
/// <summary>
|
||||
/// 获取分页列表
|
||||
/// </summary>
|
||||
/// <param name="PageIndex">页码</param>
|
||||
/// <param name="PageSize">每页数量</param>
|
||||
/// <returns></returns>
|
||||
public static IEnumerable getListData(string projectId, string type, string unitId, string name, string startDate, string endDate, int PageIndex, int PageSize)
|
||||
{
|
||||
if (type == "1")
|
||||
{
|
||||
IQueryable<Model.T_d_validcardevent> q1 = qq1.Where(x => x.ProjectId == projectId);
|
||||
|
||||
if (!string.IsNullOrEmpty(startDate))
|
||||
{
|
||||
q1 = q1.Where(e => e.RecordDateTime >= Funs.GetNewDateTime(startDate));
|
||||
}
|
||||
if (!string.IsNullOrEmpty(endDate))
|
||||
{
|
||||
q1 = q1.Where(e => e.RecordDateTime <= Funs.GetNewDateTime(endDate));
|
||||
}
|
||||
if (!string.IsNullOrEmpty(unitId))
|
||||
{
|
||||
q1 = from x in q1
|
||||
join y in db.SitePerson_Person on x.IDCardNo equals y.IdentityCard
|
||||
where y.UnitId == unitId
|
||||
select x;
|
||||
}
|
||||
if (!string.IsNullOrEmpty(name))
|
||||
{
|
||||
q1 = q1.Where(e => e.EmployName.Contains(name));
|
||||
}
|
||||
count = q1.Count();
|
||||
if (count == 0)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
return from x in q1.Skip(PageSize * PageIndex).Take(PageSize)
|
||||
select new
|
||||
{
|
||||
x.NewID,
|
||||
x.ProjectId,
|
||||
x.EmployName,
|
||||
x.DepartmentID,
|
||||
DepartName = x.DepartmentName,
|
||||
x.AreaID,
|
||||
x.AreaName,
|
||||
x.EmployNO,
|
||||
CardID = x.CardNO,
|
||||
DateTimeRecord = x.RecordDateTime,
|
||||
RecordDes = x.RecordAll,
|
||||
InOrOut = (x.InOrOut == 2 ? "出门" : "进门"),
|
||||
};
|
||||
}
|
||||
else
|
||||
{
|
||||
IQueryable<Model.T_d_facerecord> q = qq.Where(x => x.ProjectId == projectId);
|
||||
if (type == "2")
|
||||
{
|
||||
q = q.Where(e => e.RoleID == "微信端");
|
||||
}
|
||||
else
|
||||
{
|
||||
q = q.Where(e => e.RoleID != "微信端");
|
||||
}
|
||||
if (!string.IsNullOrEmpty(startDate))
|
||||
{
|
||||
q = q.Where(e => e.DateTimeRecord >= Funs.GetNewDateTime(startDate));
|
||||
}
|
||||
if (!string.IsNullOrEmpty(endDate))
|
||||
{
|
||||
q = q.Where(e => e.DateTimeRecord <= Funs.GetNewDateTime(endDate));
|
||||
}
|
||||
if (!string.IsNullOrEmpty(unitId))
|
||||
{
|
||||
q = from x in q
|
||||
join y in db.SitePerson_Person on x.EmployNO equals y.IdentityCard
|
||||
where y.UnitId == unitId
|
||||
select x;
|
||||
}
|
||||
if (!string.IsNullOrEmpty(name))
|
||||
{
|
||||
q = q.Where(e => e.EmployName.Contains(name));
|
||||
}
|
||||
count = q.Count();
|
||||
if (count == 0)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
return from x in q.Skip(PageSize * PageIndex).Take(PageSize)
|
||||
select new
|
||||
{
|
||||
x.NewID,
|
||||
x.ProjectId,
|
||||
x.EmployName,
|
||||
x.DepartmentID,
|
||||
x.DepartName,
|
||||
x.AreaID,
|
||||
x.AreaName,
|
||||
x.EmployNO,
|
||||
x.CardID,
|
||||
x.DateTimeRecord,
|
||||
x.RecordDes,
|
||||
x.InOrOut,
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -681,7 +681,7 @@ namespace BLL
|
|||
foreach (var item in getUnit)
|
||||
{
|
||||
item.RealNamePushTime = DateTime.Now;
|
||||
db.SubmitChanges();
|
||||
Funs.DB.SubmitChanges();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -345,7 +345,6 @@ namespace FineUIPro.Web.AttachFile
|
|||
{
|
||||
try
|
||||
{
|
||||
|
||||
string savedName = item.Value<string>("savedName");
|
||||
string folder = item.Value<string>("folder");
|
||||
string xnUrl = AttachPath + "\\" + savedName;
|
||||
|
|
|
@ -33,7 +33,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive
|
|||
if (!IsPostBack)
|
||||
{
|
||||
GetButtonPower();
|
||||
BLL.UnitService.InitUnitDownList(this.drpUnitIds, this.CurrUser.LoginProjectId, false);
|
||||
BLL.UnitService.GetUnit(this.drpUnitIds, this.CurrUser.LoginProjectId, false);
|
||||
BLL.CNProfessionalService.InitCNProfessionalDownList(this.drpCNProfessionalId, true);
|
||||
|
||||
this.DataDistributionId = Request.Params["DataDistributionId"];
|
||||
|
|
|
@ -34,7 +34,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive
|
|||
{
|
||||
GetButtonPower();
|
||||
this.DataReceivingId = Request.Params["DataReceivingId"];
|
||||
BLL.UnitService.InitUnitDownList(this.drpUnitIds, this.CurrUser.LoginProjectId, false);
|
||||
BLL.UnitService.GetUnit(this.drpUnitIds, this.CurrUser.LoginProjectId, false);
|
||||
Model.Comprehensive_DataReceiving dataReceiving = BLL.DataReceivingService.GetDataReceivingById(this.DataReceivingId);
|
||||
if (dataReceiving != null)
|
||||
{
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
<Toolbars>
|
||||
<f:Toolbar ID="ToolSearch" Position="Top" runat="server" ToolbarAlign="Left">
|
||||
<Items>
|
||||
<f:DropDownList ID="sdrpUnitId" runat="server" Label="报验单位" LabelAlign="Right">
|
||||
<f:DropDownList ID="sdrpUnitId" runat="server" Label="发出单位" LabelAlign="Right">
|
||||
</f:DropDownList>
|
||||
<f:DropDownList ID="drpProfessionalId" runat="server" Label="专业" LabelAlign="Right" LabelWidth="60px"></f:DropDownList>
|
||||
<f:TextBox runat="server" ID="txtNCRCode" Label="NCR单号" LabelAlign="Right"></f:TextBox>
|
||||
|
|
|
@ -21,7 +21,7 @@ namespace FineUIPro.Web.Comprehensive
|
|||
if (!IsPostBack)
|
||||
{
|
||||
GetButtonPower();
|
||||
BLL.UnitService.InitUnitDownList(this.sdrpUnitId, this.CurrUser.LoginProjectId, true);
|
||||
BLL.UnitService.GetUnit(this.sdrpUnitId, this.CurrUser.LoginProjectId, true);
|
||||
BLL.CNProfessionalService.InitCNProfessionalDownList(this.drpProfessionalId, true);
|
||||
BindGrid();
|
||||
}
|
||||
|
|
|
@ -35,8 +35,8 @@ namespace FineUIPro.Web.CQMS.Comprehensive
|
|||
{
|
||||
GetButtonPower();
|
||||
BLL.UnitWorkService.InitUnitWorkDownList(this.drpUnitWorkIds, this.CurrUser.LoginProjectId, false);
|
||||
BLL.UnitService.InitUnitDownList(this.drpUnitIds, this.CurrUser.LoginProjectId, false);
|
||||
BLL.UnitService.InitUnitDownList(this.drpSendUnit, this.CurrUser.LoginProjectId, true);
|
||||
BLL.UnitService.GetUnit(this.drpUnitIds, this.CurrUser.LoginProjectId, false);
|
||||
BLL.UnitService.GetUnit(this.drpSendUnit, this.CurrUser.LoginProjectId, true);
|
||||
BLL.CNProfessionalService.InitCNProfessionalDownList(this.drpCNProfessionalId, true);
|
||||
this.NCRManagementId = Request.Params["NCRManagementId"];
|
||||
Model.Comprehensive_NCRManagement nCRManagement = BLL.NCRManagementService.GetNCRManagementById(this.NCRManagementId);
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="现场出入记录" EnableCollapse="true"
|
||||
runat="server" BoxFlex="1" DataKeyNames="NewID" AllowPaging="true"
|
||||
IsDatabasePaging="true" PageSize="20" OnPageIndexChange="Grid1_PageIndexChange"
|
||||
DataIDField="NewID" AllowSorting="true" SortField="DateTimeRecord"
|
||||
DataIDField="NewID" AllowSorting="true" SortField="DateTimeRecord"
|
||||
SortDirection="DESC" EnableColumnLines="true" OnSort="Grid1_Sort" ForceFit="true"
|
||||
EnableTextSelection="True">
|
||||
<Toolbars>
|
||||
|
@ -69,12 +69,12 @@
|
|||
SortField="AreaName" FieldType="String" HeaderText="区域" HeaderTextAlign="Center"
|
||||
TextAlign="Left">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="180px" ColumnID="EmployNO" DataField="EmployNO"
|
||||
<f:RenderField Width="190px" ColumnID="EmployNO" DataField="EmployNO"
|
||||
SortField="EmployNO" FieldType="String" HeaderText="员工号" HeaderTextAlign="Center"
|
||||
TextAlign="Left">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="100px" ColumnID="CardID" DataField="CardID" SortField="CardID"
|
||||
HeaderText="卡号" HeaderTextAlign="Center" TextAlign="Center" FieldType="String">
|
||||
HeaderText="卡号" HeaderTextAlign="Center" TextAlign="Center" FieldType="Int">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="160px" ColumnID="DateTimeRecord" DataField="DateTimeRecord" SortField="DateTimeRecord"
|
||||
HeaderText="时间" HeaderTextAlign="Center" TextAlign="Center">
|
||||
|
|
|
@ -1,10 +1,7 @@
|
|||
using BLL;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using System.Text;
|
||||
using AspNet = System.Web.UI.WebControls;
|
||||
using System.Linq;
|
||||
|
||||
namespace FineUIPro.Web.Door
|
||||
{
|
||||
|
@ -54,71 +51,12 @@ namespace FineUIPro.Web.Door
|
|||
{
|
||||
if (!string.IsNullOrEmpty(this.ProjectId))
|
||||
{
|
||||
string strSql = string.Empty;
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
if (this.rbCheckType.SelectedValue == "1")
|
||||
{
|
||||
strSql = @"SELECT NEWID,ValidEventID AS ID,V.ProjectId,EmployName,DepartmentID,DepartmentName AS DepartName,AreaID,AreaName,EmployNO,V.CardNO AS CardID
|
||||
,RecordDateTime AS DateTimeRecord,RecordAll AS RecordDes,(CASE WHEN InOrOut=2 THEN '出门' ELSE '进门' END) AS InOrOut
|
||||
,P.UnitId,P.TeamGroupId
|
||||
FROM t_d_validcardevent V
|
||||
LEFT JOIN SitePerson_Person AS P ON V.IDCardNo=P.IdentityCard AND V.ProjectId=P.ProjectId
|
||||
where V.ProjectId = @ProjectId";
|
||||
if (!string.IsNullOrEmpty(this.txtStartDate.Text))
|
||||
{
|
||||
strSql += " AND RecordDateTime >= @StartDate";
|
||||
listStr.Add(new SqlParameter("@StartDate", this.txtStartDate.Text));
|
||||
}
|
||||
if (!string.IsNullOrEmpty(this.txtEndDate.Text))
|
||||
{
|
||||
strSql += " AND RecordDateTime < @EndDate";
|
||||
listStr.Add(new SqlParameter("@EndDate", Funs.GetNewDateTime(this.txtEndDate.Text).Value.AddDays(1)));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
strSql = @"SELECT NewID,ID,V.ProjectId,EmployName,DepartmentID,DepartName,AreaID,AreaName,EmployNO,CardID,RoleID
|
||||
,DateTimeRecord,RecordDes, InOrOut ,P.UnitId,P.TeamGroupId
|
||||
FROM dbo.t_d_facerecord V
|
||||
LEFT JOIN SitePerson_Person AS P ON V.EmployNO=P.IdentityCard AND V.ProjectId=P.ProjectId
|
||||
where V.ProjectId = @ProjectId";
|
||||
if (this.rbCheckType.SelectedValue == "2")
|
||||
{
|
||||
strSql += " AND RoleID = '微信端'";
|
||||
}
|
||||
else
|
||||
{
|
||||
strSql += " AND RoleID != '微信端'";
|
||||
}
|
||||
if (!string.IsNullOrEmpty(this.txtStartDate.Text))
|
||||
{
|
||||
strSql += " AND DateTimeRecord >= @StartDate";
|
||||
listStr.Add(new SqlParameter("@StartDate", this.txtStartDate.Text));
|
||||
}
|
||||
if (!string.IsNullOrEmpty(this.txtEndDate.Text))
|
||||
{
|
||||
strSql += " AND DateTimeRecord < @EndDate";
|
||||
listStr.Add(new SqlParameter("@EndDate", Funs.GetNewDateTime(this.txtEndDate.Text).Value.AddDays(1)));
|
||||
}
|
||||
}
|
||||
listStr.Add(new SqlParameter("@ProjectId", this.ProjectId));
|
||||
if (this.drpUnit.SelectedValue != BLL.Const._Null)
|
||||
{
|
||||
strSql += " AND UnitId = @UnitId ";
|
||||
listStr.Add(new SqlParameter("@UnitId", this.drpUnit.SelectedValue));
|
||||
}
|
||||
string unitId = this.drpUnit.SelectedValue != Const._Null ? this.drpUnit.SelectedValue : null;
|
||||
string name = !string.IsNullOrEmpty(this.txtName.Text.Trim()) ? this.txtName.Text.Trim() : null;
|
||||
|
||||
if (!string.IsNullOrEmpty(this.txtName.Text.Trim()))
|
||||
{
|
||||
strSql += " AND EmployName LIKE @EmployName";
|
||||
listStr.Add(new SqlParameter("@EmployName", "%" + this.txtName.Text.Trim() + "%"));
|
||||
}
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||
Grid1.RecordCount = tb.Rows.Count;
|
||||
var table = this.GetPagedDataTable(Grid1, tb);
|
||||
|
||||
Grid1.DataSource = table;
|
||||
var getData = InOutService.getListData(this.ProjectId, this.rbCheckType.SelectedValue, unitId, name, this.txtStartDate.Text, this.txtEndDate.Text, Grid1.PageIndex , Grid1.PageSize);//Funs.DB.SP_InOutList(this.ProjectId, unitId, name, this.rbCheckType.SelectedValue, startDate, endDate, Grid1.PageIndex + 1, Grid1.PageSize);
|
||||
Grid1.RecordCount = InOutService.count;
|
||||
Grid1.DataSource = getData;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -66,3 +66,577 @@ IP地址:::1
|
|||
|
||||
出错时间:05/20/2021 11:29:14
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:InvalidCastException
|
||||
错误信息:无法将类型为“System.Int32”的对象强制转换为类型“System.String”。
|
||||
错误堆栈:
|
||||
在 System.Data.SqlClient.SqlBuffer.get_String()
|
||||
在 System.Data.SqlClient.SqlDataReader.GetString(Int32 i)
|
||||
在 Read_InOutstatisticsItem(ObjectMaterializer`1 )
|
||||
在 System.Data.Linq.SqlClient.ObjectReaderCompiler.ObjectReader`2.MoveNext()
|
||||
在 (IEnumerator )
|
||||
在 FineUIPro.Grid.CRTRkdQFrrBRFQuCddjZPswlTORP(IEnumerable , Boolean )
|
||||
在 (Grid , IEnumerable , Boolean )
|
||||
在 FineUIPro.Grid.DataBind(Boolean keepCurrentData)
|
||||
在 (Grid , Boolean )
|
||||
在 FineUIPro.Grid.DataBind()
|
||||
在 FineUIPro.Web.Door.InOutList.GetPersonStatistic() 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 78
|
||||
在 FineUIPro.Web.Door.InOutList.btnSearch_Click(Object sender, EventArgs e) 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 150
|
||||
在 FineUIPro.Button.OnClick(EventArgs e)
|
||||
在 (Button , EventArgs )
|
||||
在 FineUIPro.Button.RaisePostBackEvent(String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/26/2021 16:17:09
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/26/2021 16:17:09
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:InvalidCastException
|
||||
错误信息:无法将类型为“System.Int32”的对象强制转换为类型“System.String”。
|
||||
错误堆栈:
|
||||
在 System.Data.SqlClient.SqlBuffer.get_String()
|
||||
在 System.Data.SqlClient.SqlDataReader.GetString(Int32 i)
|
||||
在 Read_InOutstatisticsItem(ObjectMaterializer`1 )
|
||||
在 System.Data.Linq.SqlClient.ObjectReaderCompiler.ObjectReader`2.MoveNext()
|
||||
在 (IEnumerator )
|
||||
在 FineUIPro.Grid.CRTRkdQFrrBRFQuCddjZPswlTORP(IEnumerable , Boolean )
|
||||
在 (Grid , IEnumerable , Boolean )
|
||||
在 FineUIPro.Grid.DataBind(Boolean keepCurrentData)
|
||||
在 (Grid , Boolean )
|
||||
在 FineUIPro.Grid.DataBind()
|
||||
在 FineUIPro.Web.Door.InOutList.GetPersonStatistic() 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 78
|
||||
在 FineUIPro.Web.Door.InOutList.btnSearch_Click(Object sender, EventArgs e) 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 150
|
||||
在 FineUIPro.Button.OnClick(EventArgs e)
|
||||
在 (Button , EventArgs )
|
||||
在 FineUIPro.Button.RaisePostBackEvent(String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/26/2021 16:27:26
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/26/2021 16:27:26
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:InvalidCastException
|
||||
错误信息:无法将类型为“System.Int32”的对象强制转换为类型“System.String”。
|
||||
错误堆栈:
|
||||
在 System.Data.SqlClient.SqlBuffer.get_String()
|
||||
在 System.Data.SqlClient.SqlDataReader.GetString(Int32 i)
|
||||
在 Read_InOutstatisticsItem(ObjectMaterializer`1 )
|
||||
在 System.Data.Linq.SqlClient.ObjectReaderCompiler.ObjectReader`2.MoveNext()
|
||||
在 (IEnumerator )
|
||||
在 FineUIPro.Grid.CRTRkdQFrrBRFQuCddjZPswlTORP(IEnumerable , Boolean )
|
||||
在 (Grid , IEnumerable , Boolean )
|
||||
在 FineUIPro.Grid.DataBind(Boolean keepCurrentData)
|
||||
在 (Grid , Boolean )
|
||||
在 FineUIPro.Grid.DataBind()
|
||||
在 FineUIPro.Web.Door.InOutList.GetPersonStatistic() 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 78
|
||||
在 FineUIPro.Web.Door.InOutList.btnSearch_Click(Object sender, EventArgs e) 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 150
|
||||
在 FineUIPro.Button.OnClick(EventArgs e)
|
||||
在 (Button , EventArgs )
|
||||
在 FineUIPro.Button.RaisePostBackEvent(String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/26/2021 16:27:47
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/26/2021 16:27:47
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:InvalidCastException
|
||||
错误信息:指定的转换无效。
|
||||
错误堆栈:
|
||||
在 System.Data.SqlClient.SqlBuffer.get_Double()
|
||||
在 System.Data.SqlClient.SqlDataReader.GetDouble(Int32 i)
|
||||
在 Read_InOutListItem(ObjectMaterializer`1 )
|
||||
在 System.Data.Linq.SqlClient.ObjectReaderCompiler.ObjectReader`2.MoveNext()
|
||||
在 (IEnumerator )
|
||||
在 FineUIPro.Grid.CRTRkdQFrrBRFQuCddjZPswlTORP(IEnumerable , Boolean )
|
||||
在 (Grid , IEnumerable , Boolean )
|
||||
在 FineUIPro.Grid.DataBind(Boolean keepCurrentData)
|
||||
在 (Grid , Boolean )
|
||||
在 FineUIPro.Grid.DataBind()
|
||||
在 FineUIPro.Web.Door.InOutList.GetPersonStatistic() 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 78
|
||||
在 FineUIPro.Web.Door.InOutList.btnSearch_Click(Object sender, EventArgs e) 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 150
|
||||
在 FineUIPro.Button.OnClick(EventArgs e)
|
||||
在 (Button , EventArgs )
|
||||
在 FineUIPro.Button.RaisePostBackEvent(String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/26/2021 16:44:31
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/26/2021 16:44:31
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:NullReferenceException
|
||||
错误信息:未将对象引用设置到对象的实例。
|
||||
错误堆栈:
|
||||
在 (Object )
|
||||
在 FineUIPro.GridRow.kxpUEMXYxcbykrOznAFBzkoxlAnb()
|
||||
在 (GridRow )
|
||||
在 FineUIPro.GridRow.InitTemplateContainers()
|
||||
在 (GridRow )
|
||||
在 FineUIPro.Grid.BkpgFeAELTFlAvoTrOBrConfcLJbA(Int32 , Object )
|
||||
在 (Grid , Int32 , Object )
|
||||
在 FineUIPro.Grid.CRTRkdQFrrBRFQuCddjZPswlTORP(IEnumerable , Boolean )
|
||||
在 (Grid , IEnumerable , Boolean )
|
||||
在 FineUIPro.Grid.DataBind(Boolean keepCurrentData)
|
||||
在 (Grid , Boolean )
|
||||
在 FineUIPro.Grid.DataBind()
|
||||
在 FineUIPro.Web.Door.InOutList.GetPersonStatistic() 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 78
|
||||
在 FineUIPro.Web.Door.InOutList.btnSearch_Click(Object sender, EventArgs e) 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 150
|
||||
在 FineUIPro.Button.OnClick(EventArgs e)
|
||||
在 (Button , EventArgs )
|
||||
在 FineUIPro.Button.RaisePostBackEvent(String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/26/2021 16:52:53
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/26/2021 16:52:53
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:NullReferenceException
|
||||
错误信息:未将对象引用设置到对象的实例。
|
||||
错误堆栈:
|
||||
在 (Object )
|
||||
在 FineUIPro.GridRow.kxpUEMXYxcbykrOznAFBzkoxlAnb()
|
||||
在 (GridRow )
|
||||
在 FineUIPro.GridRow.InitTemplateContainers()
|
||||
在 (GridRow )
|
||||
在 FineUIPro.Grid.BkpgFeAELTFlAvoTrOBrConfcLJbA(Int32 , Object )
|
||||
在 (Grid , Int32 , Object )
|
||||
在 FineUIPro.Grid.CRTRkdQFrrBRFQuCddjZPswlTORP(IEnumerable , Boolean )
|
||||
在 (Grid , IEnumerable , Boolean )
|
||||
在 FineUIPro.Grid.DataBind(Boolean keepCurrentData)
|
||||
在 (Grid , Boolean )
|
||||
在 FineUIPro.Grid.DataBind()
|
||||
在 FineUIPro.Web.Door.InOutList.GetPersonStatistic() 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 78
|
||||
在 FineUIPro.Web.Door.InOutList.btnSearch_Click(Object sender, EventArgs e) 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 150
|
||||
在 FineUIPro.Button.OnClick(EventArgs e)
|
||||
在 (Button , EventArgs )
|
||||
在 FineUIPro.Button.RaisePostBackEvent(String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/26/2021 16:53:21
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/26/2021 16:53:21
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:InvalidOperationException
|
||||
错误信息:无法枚举查询结果多次。
|
||||
错误堆栈:
|
||||
在 System.Data.Linq.SqlClient.SqlProvider.OneTimeEnumerable`1.GetEnumerator()
|
||||
在 System.Data.Linq.SqlClient.SqlProvider.SingleResult`1.GetEnumerator()
|
||||
在 System.Data.Linq.SqlClient.SqlProvider.SingleResult`1.System.Collections.IEnumerable.GetEnumerator()
|
||||
在 (IEnumerable )
|
||||
在 FineUIPro.Grid.CRTRkdQFrrBRFQuCddjZPswlTORP(IEnumerable , Boolean )
|
||||
在 (Grid , IEnumerable , Boolean )
|
||||
在 FineUIPro.Grid.DataBind(Boolean keepCurrentData)
|
||||
在 (Grid , Boolean )
|
||||
在 FineUIPro.Grid.DataBind()
|
||||
在 FineUIPro.Web.Door.InOutList.GetPersonStatistic() 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 78
|
||||
在 FineUIPro.Web.Door.InOutList.btnSearch_Click(Object sender, EventArgs e) 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 150
|
||||
在 FineUIPro.Button.OnClick(EventArgs e)
|
||||
在 (Button , EventArgs )
|
||||
在 FineUIPro.Button.RaisePostBackEvent(String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/26/2021 16:53:54
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/26/2021 16:53:54
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:38:25
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:38:25
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:38:28
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:38:28
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:38:50
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:38:50
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:39:01
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:39:01
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:39:01
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:39:01
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:39:01
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:39:02
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:39:02
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:39:02
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:39:02
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:39:02
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:39:18
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:39:18
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:39:21
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:39:21
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:39:22
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:39:22
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:39:23
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:39:23
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:39:23
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:39:23
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:39:23
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:39:23
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:找到多个具有相同 ID“ftpl_0f01f566-35c0-48aa-b165-c02f169aefa8_0”的控件。FindControl 要求控件具有唯一的 ID。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Control.FillNamedControlsTable(Control namingContainer, ControlCollection controls)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
|
||||
在 System.Web.UI.Page.FindControl(String id)
|
||||
在 System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:39:24
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:39:24
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:NullReferenceException
|
||||
错误信息:未将对象引用设置到对象的实例。
|
||||
错误堆栈:
|
||||
在 (Object )
|
||||
在 FineUIPro.GridRow.kxpUEMXYxcbykrOznAFBzkoxlAnb()
|
||||
在 (GridRow )
|
||||
在 FineUIPro.GridRow.InitTemplateContainers()
|
||||
在 (GridRow )
|
||||
在 FineUIPro.Grid.BkpgFeAELTFlAvoTrOBrConfcLJbA(Int32 , Object )
|
||||
在 (Grid , Int32 , Object )
|
||||
在 FineUIPro.Grid.CRTRkdQFrrBRFQuCddjZPswlTORP(IEnumerable , Boolean )
|
||||
在 (Grid , IEnumerable , Boolean )
|
||||
在 FineUIPro.Grid.DataBind(Boolean keepCurrentData)
|
||||
在 (Grid , Boolean )
|
||||
在 FineUIPro.Grid.DataBind()
|
||||
在 FineUIPro.Web.Door.InOutList.GetPersonStatistic() 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 113
|
||||
在 FineUIPro.Web.Door.InOutList.btnSearch_Click(Object sender, EventArgs e) 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 119
|
||||
在 FineUIPro.Button.OnClick(EventArgs e)
|
||||
在 (Button , EventArgs )
|
||||
在 FineUIPro.Button.RaisePostBackEvent(String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 16:57:06
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 16:57:06
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:InvalidOperationException
|
||||
错误信息:查询包含对不同数据上下文上所定义项的引用。
|
||||
错误堆栈:
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.TranslateConstantTable(ITable table, SqlLink link)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.CoerceToSequence(SqlNode node)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitJoin(Expression outerSequence, Expression innerSequence, LambdaExpression outerKeySelector, LambdaExpression innerKeySelector, LambdaExpression resultSelector)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitSequenceOperatorCall(MethodCallExpression mc)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitMethodCall(MethodCallExpression mc)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitInner(Expression node)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitWhere(Expression sequence, LambdaExpression predicate)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitSequenceOperatorCall(MethodCallExpression mc)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitMethodCall(MethodCallExpression mc)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitInner(Expression node)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitSelect(Expression sequence, LambdaExpression selector)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitSequenceOperatorCall(MethodCallExpression mc)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitMethodCall(MethodCallExpression mc)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitInner(Expression node)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitAggregate(Expression sequence, LambdaExpression lambda, SqlNodeType aggType, Type returnType)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitSequenceOperatorCall(MethodCallExpression mc)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitMethodCall(MethodCallExpression mc)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.VisitInner(Expression node)
|
||||
在 System.Data.Linq.SqlClient.QueryConverter.ConvertOuter(Expression node)
|
||||
在 System.Data.Linq.SqlClient.SqlProvider.BuildQuery(Expression query, SqlNodeAnnotations annotations)
|
||||
在 System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query)
|
||||
在 System.Data.Linq.DataQuery`1.System.Linq.IQueryProvider.Execute[S](Expression expression)
|
||||
在 System.Linq.Queryable.Count[TSource](IQueryable`1 source)
|
||||
在 BLL.InOutService.getListData(String projectId, String type, String unitId, String name, String startDate, String endDate, Int32 PageIndex, Int32 PageSize) 位置 D:\WuHuan\SGGL\SGGL\BLL\DoorServer\InOutService.cs:行号 114
|
||||
在 FineUIPro.Web.Door.InOutList.GetPersonStatistic() 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 110
|
||||
在 FineUIPro.Web.Door.InOutList.btnSearch_Click(Object sender, EventArgs e) 位置 D:\WuHuan\SGGL\SGGL\FineUIPro.Web\Door\InOutList.aspx.cs:行号 119
|
||||
在 FineUIPro.Button.OnClick(EventArgs e)
|
||||
在 (Button , EventArgs )
|
||||
在 FineUIPro.Button.RaisePostBackEvent(String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:05/27/2021 17:03:25
|
||||
出错文件:http://localhost:8118/Door/InOutList.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:05/27/2021 17:03:25
|
||||
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 2.3 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.0 MiB |
|
@ -15,7 +15,7 @@
|
|||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="HSE巡检" EnableCollapse="true"
|
||||
runat="server" BoxFlex="1" DataKeyNames="HazardRegisterId" DataIDField="HazardRegisterId"
|
||||
AllowSorting="true" SortField="RectificationTime" SortDirection="DESC" OnSort="Grid1_Sort"
|
||||
AllowSorting="true" SortField="CheckTime" SortDirection="DESC" OnSort="Grid1_Sort"
|
||||
EnableColumnLines="true" AllowPaging="true" IsDatabasePaging="true" PageSize="10"
|
||||
OnPageIndexChange="Grid1_PageIndexChange" OnRowCommand="Grid1_RowCommand"
|
||||
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableTextSelection="True">
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title>日常巡检</title>
|
||||
<link href="../res/css/common.css" rel="stylesheet" type="text/css" />
|
||||
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
|
|
|
@ -166,7 +166,7 @@
|
|||
<f:Label runat="server" CssStyle="display:none"></f:Label>
|
||||
</Items>
|
||||
<Items>
|
||||
<f:DropDownList ID="DropNextRecipient" runat="server" Label="接受人" MaxLength="50" LabelWidth="110px" AutoSelectFirstItem="false" EmptyText="请选择一项" >
|
||||
<f:DropDownList ID="DropNextRecipient" runat="server" Label="接受/验收人" MaxLength="50" LabelWidth="110px" AutoSelectFirstItem="false" EmptyText="请选择一项" >
|
||||
|
||||
</f:DropDownList></Items>
|
||||
</f:FormRow>
|
||||
|
|
|
@ -24,6 +24,11 @@ namespace FineUIPro.Web.ZHGL.RealName
|
|||
this.drpCountry.SelectedValue ="101";
|
||||
|
||||
SynchroSetService.InitProjectDropDownList(this.drpProject, false);
|
||||
if (!string.IsNullOrEmpty(this.CurrUser.LoginProjectId))
|
||||
{
|
||||
this.drpProject.SelectedValue = this.CurrUser.LoginProjectId;
|
||||
this.drpProject.Readonly = true;
|
||||
}
|
||||
// 绑定表格
|
||||
this.BindGrid();
|
||||
this.BindGrid2();
|
||||
|
@ -41,7 +46,8 @@ namespace FineUIPro.Web.ZHGL.RealName
|
|||
/// <returns></returns>
|
||||
private void GetButtonPower()
|
||||
{
|
||||
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.RealNameBasicDataMenuId);
|
||||
string menuId = !string.IsNullOrEmpty(this.CurrUser.LoginProjectId) ? Const.RealNameBasicDataMenuId : Const.ServerRealNameBasicDataMenuId;
|
||||
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, menuId);
|
||||
if (buttonList.Count() > 0)
|
||||
{
|
||||
if (buttonList.Contains(BLL.Const.BtnSave))
|
||||
|
|
|
@ -38,7 +38,13 @@ namespace FineUIPro.Web.ZHGL.RealName
|
|||
{
|
||||
string strSql = @"SELECT PushLogId,ProjectId,ProjectCode,PushType,Success,Code,Message,PushTime
|
||||
FROM dbo.RealName_PushLog where 1 = 1";
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
if (!string.IsNullOrEmpty(this.CurrUser.LoginProjectId))
|
||||
{
|
||||
string pcode= ProjectService.GetProjectCodeByProjectId(this.CurrUser.LoginProjectId);
|
||||
strSql += " AND ProjectCode = @ProjectCode";
|
||||
listStr.Add(new SqlParameter("@ProjectCode", pcode));
|
||||
}
|
||||
if (!string.IsNullOrEmpty(this.txtStartDate.Text))
|
||||
{
|
||||
strSql += " AND PushTime >= @StartDate";
|
||||
|
|
|
@ -1,8 +1,5 @@
|
|||
using BLL;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Configuration;
|
||||
using System.Linq;
|
||||
|
||||
|
@ -22,18 +19,13 @@ namespace FineUIPro.Web.ZHGL.RealName
|
|||
///权限
|
||||
this.GetButtonPower();
|
||||
ProjectService.InitAllProjectShortNameDropDownList(this.drpProject, this.CurrUser.UserId, false);
|
||||
var getSynchroSet = SynchroSetService.GetSynchroSetByUnitId(Const.UnitId_CWCEC, this.drpProject.SelectedValue);
|
||||
if (getSynchroSet != null)
|
||||
if (!string.IsNullOrEmpty(this.CurrUser.LoginProjectId))
|
||||
{
|
||||
this.txtapiUrl.Text = getSynchroSet.ApiUrl;
|
||||
this.txtclientId.Text = getSynchroSet.ClientId;
|
||||
this.txtUserName.Text = getSynchroSet.UserName;
|
||||
this.txtword.Text = getSynchroSet.Password;
|
||||
this.txtintervaltime.Text = getSynchroSet.Intervaltime.ToString();
|
||||
this.drpProject.SelectedValue = this.CurrUser.LoginProjectId;
|
||||
this.drpProject.Readonly = true;
|
||||
}
|
||||
|
||||
this.txtapiUrl.Text = Funs.RealNameApiUrl;
|
||||
this.txtintervaltime.Text = ConfigurationManager.AppSettings["Intervaltime"];
|
||||
this.SetPage();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -102,7 +94,8 @@ namespace FineUIPro.Web.ZHGL.RealName
|
|||
/// <returns></returns>
|
||||
private void GetButtonPower()
|
||||
{
|
||||
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.RealNameSynchroSetMenuId);
|
||||
string menuId = !string.IsNullOrEmpty(this.CurrUser.LoginProjectId) ? Const.RealNameSynchroSetMenuId : Const.ServerRealNameSynchroSetMenuId;
|
||||
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, menuId);
|
||||
if (buttonList.Count() > 0)
|
||||
{
|
||||
if (buttonList.Contains(BLL.Const.BtnSave))
|
||||
|
@ -225,12 +218,22 @@ namespace FineUIPro.Web.ZHGL.RealName
|
|||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void drpProject_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
this.SetPage();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
protected void SetPage()
|
||||
{
|
||||
this.txtclientId.Text = string.Empty;
|
||||
this.txtUserName.Text = string.Empty;
|
||||
this.txtword.Text = string.Empty;
|
||||
this.txtapiUrl.Text = Funs.RealNameApiUrl;
|
||||
this.txtintervaltime.Text = ConfigurationManager.AppSettings["Intervaltime"];
|
||||
|
||||
string proCode = BLL.ProjectService.GetProjectCodeByProjectId(this.drpProject.SelectedValue);
|
||||
string proCode = BLL.ProjectService.GetProjectCodeByProjectId(this.drpProject.SelectedValue);
|
||||
if (!string.IsNullOrEmpty(proCode))
|
||||
{
|
||||
var getSynchroSet = SynchroSetService.GetSynchroSetByUnitId(Const.UnitId_CWCEC, proCode);
|
||||
|
|
|
@ -39,10 +39,6 @@
|
|||
<TreeNode id="E6703F32-4E42-4D03-84B3-5EC0E8E48E0F" Text="质量共检" NavigateUrl="CQMS/Check/JointCheck.aspx"></TreeNode>
|
||||
<TreeNode id="D3B1433E-00DE-432B-A30A-0EFB513480A8" Text="问题统计" NavigateUrl="CQMS/Check/JointCheckStatistics.aspx"></TreeNode>
|
||||
</TreeNode>
|
||||
<TreeNode id="5DFD5DF9-6356-460C-9DA8-F8AFCEA2F997" Text="国外项目" NavigateUrl=""><TreeNode id="2571D7F5-4DA4-46E1-8C7F-B926302A52BF" Text="ITP清单" NavigateUrl="CQMS/Foreign/ITPListProject.aspx"></TreeNode>
|
||||
<TreeNode id="64BC5460-E2CE-4C58-82A6-843A512573F4" Text="控制点表格清单" NavigateUrl="CQMS/Foreign/ControlPointList.aspx"></TreeNode>
|
||||
<TreeNode id="04F678E5-983A-4000-A480-7D8D9E3C13C5" Text="控制点检查检测" NavigateUrl="CQMS/Foreign/ControlPointCheck.aspx"></TreeNode>
|
||||
</TreeNode>
|
||||
<TreeNode id="E632DCA0-5A68-49C4-90CE-793EFC693C4A" Text="资料管理" NavigateUrl=""><TreeNode id="151BFF86-5B2D-4852-A846-690EA4D4DB51" Text="标准规范" NavigateUrl="CQMS/DataBase/ConstructionStandardListProject.aspx"></TreeNode>
|
||||
<TreeNode id="3A50A067-6FF2-43EF-BFF3-C04E7E66F8F9" Text="资料库" NavigateUrl="CQMS/DataBase/DataBaseProject.aspx"></TreeNode>
|
||||
</TreeNode>
|
||||
|
|
|
@ -12,4 +12,5 @@
|
|||
<TreeNode id="19FB0C6D-E2CA-4352-B635-060347D45C4A" Text="成绩排名" NavigateUrl="PersonManage/Test/TestRanking.aspx"></TreeNode>
|
||||
</TreeNode>
|
||||
<TreeNode id="0E46F8F2-69DB-4F54-BCA0-1F3CBE57DA10" Text="人员初步规划" NavigateUrl="Person/PersonPlan.aspx"></TreeNode>
|
||||
<TreeNode id="1E490AB0-B211-4F17-8B2A-C7A840DD9D72" Text="人员初步规划图形分析" NavigateUrl="Person/PersonPlanChart.aspx"></TreeNode>
|
||||
</Tree>
|
|
@ -0,0 +1,135 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace Model
|
||||
{
|
||||
/// <summary>
|
||||
/// 出入记录
|
||||
/// </summary>
|
||||
public class InOutListItem
|
||||
{
|
||||
///// <summary>
|
||||
///// ID
|
||||
///// </summary>
|
||||
//public Double RowNumber
|
||||
//{
|
||||
// get;
|
||||
// set;
|
||||
//}
|
||||
/// <summary>
|
||||
/// NEWID
|
||||
/// </summary>
|
||||
public string NewID
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// ProjectId
|
||||
/// </summary>
|
||||
public string ProjectId
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// EmployName
|
||||
/// </summary>
|
||||
public string EmployName
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// DepartmentID
|
||||
/// </summary>
|
||||
public string DepartmentID
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// DepartName
|
||||
/// </summary>
|
||||
public string DepartName
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// AreaID
|
||||
/// </summary>
|
||||
public string AreaID
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// AreaName
|
||||
/// </summary>
|
||||
public string AreaName
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// EmployNO
|
||||
/// </summary>
|
||||
public string EmployNO
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// CardID
|
||||
/// </summary>
|
||||
public string CardID
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// DateTimeRecord
|
||||
/// </summary>
|
||||
public DateTime? DateTimeRecord
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// RecordDes
|
||||
/// </summary>
|
||||
public string RecordDes
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// InOrOut
|
||||
/// </summary>
|
||||
public string InOrOut
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// UnitId
|
||||
/// </summary>
|
||||
public string UnitId
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// TeamGroupId
|
||||
/// </summary>
|
||||
public string TeamGroupId
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -157,6 +157,7 @@
|
|||
<Compile Include="CQMS\SteelItem.cs" />
|
||||
<Compile Include="CQMS\WelderItem.cs" />
|
||||
<Compile Include="DoorServer\AbsenceDutyItem.cs" />
|
||||
<Compile Include="DoorServer\InOutListItem.cs" />
|
||||
<Compile Include="DoorServer\t_d_departmentItem.cs" />
|
||||
<Compile Include="DoorServer\t_d_employinfoItem.cs" />
|
||||
<Compile Include="DoorServer\InOutstatisticsItem.cs" />
|
||||
|
|
|
@ -61,7 +61,7 @@ namespace Model
|
|||
IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)MethodInfo.GetCurrentMethod()), projectId, states, pageIndex, pageSize);
|
||||
return (ISingleResult<RectifyNoticesItem>)result.ReturnValue;
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// »ñÈ¡ÏÖ³¡µ¥Î»¿¼ÇÚ
|
||||
/// </summary>
|
||||
|
@ -74,7 +74,7 @@ namespace Model
|
|||
[Function(Name = "[dbo].[spInOutManHoursReport]")]
|
||||
public IEnumerable<InOutstatisticsItem> spInOutManHoursReport([Parameter(DbType = "nvarchar(50)")] string projectId, [Parameter(DbType = "nvarchar(max)")] string unitId, [Parameter(DbType = "nvarchar(max)")] string postId, [Parameter(DbType = "DateTime")] DateTime? startTime, [Parameter(DbType = "DateTime")] DateTime? endTime)
|
||||
{
|
||||
IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)MethodInfo.GetCurrentMethod()), projectId, unitId, postId, startTime,endTime);
|
||||
IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)MethodInfo.GetCurrentMethod()), projectId, unitId, postId, startTime, endTime);
|
||||
return (ISingleResult<InOutstatisticsItem>)result.ReturnValue;
|
||||
}
|
||||
|
||||
|
|
|
@ -32,6 +32,7 @@ namespace WebAPI.Controllers
|
|||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = ex.Message;
|
||||
ErrLogInfo.WriteLog(ex, "WX接口-订阅推送", "CommonController.getSubscribeMessage");
|
||||
}
|
||||
|
||||
return responeData;
|
||||
|
|
|
@ -237,7 +237,7 @@ namespace WebAPI.Controllers
|
|||
{
|
||||
if (facerecord != null)
|
||||
{
|
||||
var getFacerecord = db.T_d_facerecord.FirstOrDefault(x => x.ID == facerecord.ID && x.ProjectId == facerecord.ProjectId);
|
||||
var getFacerecord = db.T_d_facerecord.FirstOrDefault(x => x.ID == facerecord.ID && x.ProjectId == facerecord.ProjectId && x.RoleID ==facerecord.RoleID);
|
||||
if (getFacerecord == null)
|
||||
{
|
||||
Model.T_d_facerecord newFacerecord = new Model.T_d_facerecord()
|
||||
|
|
Loading…
Reference in New Issue