提交代码
This commit is contained in:
parent
ab8edaa2a9
commit
546e2764a1
|
@ -30,3 +30,51 @@ go
|
|||
values('CCAFE438-A71E-41D9-A727-AC5A5C92D2A8','9EBA628D-E725-4A0B-B765-171F405D0821','±£´æ',4)
|
||||
go
|
||||
|
||||
|
||||
CREATE TABLE [dbo].[Driver_MeetingMinutes](
|
||||
[MeetingMinutesId] [nvarchar](50) NOT NULL,
|
||||
[ProjectId] [nvarchar](50) NULL,
|
||||
[MinutesCode] [nvarchar](50) NULL,
|
||||
[MeetingType] [nchar](10) NULL,
|
||||
[CompileMan] [nvarchar](50) NULL,
|
||||
[CompileDate] [datetime] NULL,
|
||||
[Statues] [nvarchar](50) NULL,
|
||||
CONSTRAINT [PK_Driver_MeetingMinutes] PRIMARY KEY CLUSTERED
|
||||
(
|
||||
[MeetingMinutesId] ASC
|
||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
) ON [PRIMARY]
|
||||
GO
|
||||
|
||||
ALTER TABLE [dbo].[Driver_MeetingMinutes] WITH CHECK ADD CONSTRAINT [FK_Driver_MeetingMinutes_Base_Project] FOREIGN KEY([ProjectId])
|
||||
REFERENCES [dbo].[Base_Project] ([ProjectId])
|
||||
GO
|
||||
|
||||
ALTER TABLE [dbo].[Driver_MeetingMinutes] CHECK CONSTRAINT [FK_Driver_MeetingMinutes_Base_Project]
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Driver_MeetingMinutes', @level2type=N'COLUMN',@level2name=N'MeetingMinutesId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Driver_MeetingMinutes', @level2type=N'COLUMN',@level2name=N'ProjectId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'纪要编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Driver_MeetingMinutes', @level2type=N'COLUMN',@level2name=N'MinutesCode'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'类型(1-生产调度会,2-开车周例会,3-开车专题会)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Driver_MeetingMinutes', @level2type=N'COLUMN',@level2name=N'MeetingType'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'编制人' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Driver_MeetingMinutes', @level2type=N'COLUMN',@level2name=N'CompileMan'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'编制日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Driver_MeetingMinutes', @level2type=N'COLUMN',@level2name=N'CompileDate'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'状态' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Driver_MeetingMinutes', @level2type=N'COLUMN',@level2name=N'Statues'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'会议纪要表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Driver_MeetingMinutes'
|
||||
GO
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,183 @@
|
|||
--cd C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools
|
||||
--SqlMetal /views /server:wq /database:SGGLDB_WH /code:C:\Model.cs /namespace:Model
|
||||
|
||||
delete Sys_Menu where MenuId='AC5BC922-FA5E-4141-8458-7DE89434A8E7'
|
||||
delete Sys_Menu where MenuId='BEAE1E66-5783-489B-A268-F46491AE1257'
|
||||
delete Sys_Menu where MenuId='D8DF6DDB-3CDD-41C0-B374-1AAE40802B68'
|
||||
delete Sys_Menu where MenuId='C2E827C4-6E04-4EB6-8E51-B43FCBD3753F'
|
||||
delete Sys_Menu where MenuId='AF4EEC31-73E9-4F36-BEA7-2A92468F324E'
|
||||
delete Sys_Menu where MenuId='7400F47B-3F45-4142-B21F-3BECCABBB202'
|
||||
delete Sys_Menu where MenuId='F2D170C3-6CA5-439D-8CC7-81E4FB906B1F'
|
||||
delete Sys_Menu where MenuId='A7BBF5F1-F145-43D1-9227-7EC24099BBEC'
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)VALUES('AC5BC922-FA5E-4141-8458-7DE89434A8E7','检查表模板',null,'TestRun/Produce/InspectTemplate.aspx',2,'F4827DE7-FDA6-42B6-A495-616EEFC4C8A5','Menu_TestRun',0,1,1)
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)VALUES('BEAE1E66-5783-489B-A268-F46491AE1257','性能考核管理',null,'TestRun/Produce/SubInspectTerm.aspx',3,'F4827DE7-FDA6-42B6-A495-616EEFC4C8A5','Menu_TestRun',0,1,1)
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)VALUES('D8DF6DDB-3CDD-41C0-B374-1AAE40802B68','性能考核确认',null,'TestRun/Produce/SubWorkInspect.aspx',4,'F4827DE7-FDA6-42B6-A495-616EEFC4C8A5','Menu_TestRun',0,1,1)
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)VALUES('C2E827C4-6E04-4EB6-8E51-B43FCBD3753F','检查表尾项管理',null,'TestRun/Produce/InspectTailTermList.aspx',5,'F4827DE7-FDA6-42B6-A495-616EEFC4C8A5','Menu_TestRun',0,1,1)
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)VALUES('AF4EEC31-73E9-4F36-BEA7-2A92468F324E','尾项处理',null,'TestRun/Produce/TailTermHandleList.aspx',6,'F4827DE7-FDA6-42B6-A495-616EEFC4C8A5','Menu_TestRun',0,1,1)
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)VALUES('7400F47B-3F45-4142-B21F-3BECCABBB202','尾项审核',null,'TestRun/Produce/TailTermApproveList.aspx',7,'F4827DE7-FDA6-42B6-A495-616EEFC4C8A5','Menu_TestRun',0,1,1)
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)VALUES('F2D170C3-6CA5-439D-8CC7-81E4FB906B1F','检查表会签',null,'TestRun/Produce/InspectWanderAboutList.aspx',8,'F4827DE7-FDA6-42B6-A495-616EEFC4C8A5','Menu_TestRun',0,1,1)
|
||||
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)VALUES('A7BBF5F1-F145-43D1-9227-7EC24099BBEC','检查表流转全部通过',null,'TestRun/Produce/InspectWanderAboutAllPassList.aspx',9,'F4827DE7-FDA6-42B6-A495-616EEFC4C8A5','Menu_TestRun',0,1,1)
|
||||
go
|
||||
|
||||
--==生产性能考核条件检查模板信息表
|
||||
if object_id(N'ProduceRun_WorkInspectTemplate',N'U') is not null
|
||||
drop table dbo.ProduceRun_WorkInspectTemplate
|
||||
CREATE TABLE dbo.ProduceRun_WorkInspectTemplate(
|
||||
WorkInspectId varchar(50) NOT NULL,--主键
|
||||
WorkInspectName varchar(500) NULL,--检查事项名称
|
||||
Remark nvarchar(150) NULL,--备注
|
||||
AddUser varchar(50) NULL,--添加人
|
||||
AddTime datetime NULL,--添加日期
|
||||
Sort int NULL,--排序
|
||||
CONSTRAINT PK_ProduceRun_WorkInspectTemplate PRIMARY KEY CLUSTERED
|
||||
(
|
||||
WorkInspectId ASC
|
||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
) ON [PRIMARY]
|
||||
GO
|
||||
|
||||
--==生产性能考核条件检查表
|
||||
delete ProduceRun_WorkInspectTemplate where WorkInspectId='A95825BD-709E-46DB-AEFD-1E7C9C1BF524'
|
||||
delete ProduceRun_WorkInspectTemplate where WorkInspectId='55CB964B-A82A-4BBC-BC2D-040E31C7CC36'
|
||||
delete ProduceRun_WorkInspectTemplate where WorkInspectId='EE35FF88-6E30-4797-AE46-0623B9BD3E81'
|
||||
delete ProduceRun_WorkInspectTemplate where WorkInspectId='C679A7B8-4244-42E5-96C8-B5A941FF5130'
|
||||
delete ProduceRun_WorkInspectTemplate where WorkInspectId='30470FF1-0BA2-4DE0-8CDB-DF812C0AC4B8'
|
||||
delete ProduceRun_WorkInspectTemplate where WorkInspectId='E369582C-25FB-49EF-B3ED-4A7EDF8CA61C'
|
||||
delete ProduceRun_WorkInspectTemplate where WorkInspectId='2255D8C6-B12D-4035-B56A-11A5815B7C4F'
|
||||
delete ProduceRun_WorkInspectTemplate where WorkInspectId='015D647D-ECB4-4252-BA9E-C60190D63F0A'
|
||||
delete ProduceRun_WorkInspectTemplate where WorkInspectId='6CDFE6DD-E113-4A07-B5F4-083343672A9E'
|
||||
INSERT INTO dbo.ProduceRun_WorkInspectTemplate(WorkInspectId,WorkInspectName,Remark,AddUser,AddTime,Sort)
|
||||
VALUES('A95825BD-709E-46DB-AEFD-1E7C9C1BF524','在规定的负荷条件下暴露出的问题已经解决,各项工艺指标已处于稳定状态。','','',GETDATE(),1)
|
||||
INSERT INTO dbo.ProduceRun_WorkInspectTemplate(WorkInspectId,WorkInspectName,Remark,AddUser,AddTime,Sort)
|
||||
VALUES('55CB964B-A82A-4BBC-BC2D-040E31C7CC36','全厂相关装置处于稳定运行状态。','','',GETDATE(),2)
|
||||
INSERT INTO dbo.ProduceRun_WorkInspectTemplate(WorkInspectId,WorkInspectName,Remark,AddUser,AddTime,Sort)
|
||||
VALUES('EE35FF88-6E30-4797-AE46-0623B9BD3E81','生产考核方案已制定,并经审核批准。','','',GETDATE(),3)
|
||||
INSERT INTO dbo.ProduceRun_WorkInspectTemplate(WorkInspectId,WorkInspectName,Remark,AddUser,AddTime,Sort)
|
||||
VALUES('C679A7B8-4244-42E5-96C8-B5A941FF5130','测试专用工具和仪表齐备,调校合格,处于有效期内。','','',GETDATE(),4)
|
||||
INSERT INTO dbo.ProduceRun_WorkInspectTemplate(WorkInspectId,WorkInspectName,Remark,AddUser,AddTime,Sort)
|
||||
VALUES('30470FF1-0BA2-4DE0-8CDB-DF812C0AC4B8','测试人员的组织、任务已明确、落实。','','',GETDATE(),5)
|
||||
INSERT INTO dbo.ProduceRun_WorkInspectTemplate(WorkInspectId,WorkInspectName,Remark,AddUser,AddTime,Sort)
|
||||
VALUES('E369582C-25FB-49EF-B3ED-4A7EDF8CA61C','测试项目、分析项目、分析方法已确定。','','',GETDATE(),6)
|
||||
INSERT INTO dbo.ProduceRun_WorkInspectTemplate(WorkInspectId,WorkInspectName,Remark,AddUser,AddTime,Sort)
|
||||
VALUES('2255D8C6-B12D-4035-B56A-11A5815B7C4F','原料、燃料、化学药品等物质数量、规格、质量符合设计文件的要求。','','',GETDATE(),7)
|
||||
INSERT INTO dbo.ProduceRun_WorkInspectTemplate(WorkInspectId,WorkInspectName,Remark,AddUser,AddTime,Sort)
|
||||
VALUES('015D647D-ECB4-4252-BA9E-C60190D63F0A','水、电、气(汽)、原料、燃料、化学药品等确保连续稳定供应。','','',GETDATE(),8)
|
||||
INSERT INTO dbo.ProduceRun_WorkInspectTemplate(WorkInspectId,WorkInspectName,Remark,AddUser,AddTime,Sort)
|
||||
VALUES('6CDFE6DD-E113-4A07-B5F4-083343672A9E','自控仪表、报警和联锁装置已投入稳定运行。','','',GETDATE(),9)
|
||||
go
|
||||
|
||||
--==工作包检查表
|
||||
if object_id(N'ProduceRun_SubInspectTerm',N'U') is not null
|
||||
drop table dbo.ProduceRun_SubInspectTerm
|
||||
CREATE TABLE dbo.ProduceRun_SubInspectTerm(
|
||||
SubInspectId varchar(50) NOT NULL,--主键
|
||||
ProjectId varchar(50) NULL,--项目主键
|
||||
Contractor varchar(50) null,--承包商
|
||||
Owner varchar(50) null,--业主
|
||||
ProcessPatent varchar(50) null,--工艺专利商
|
||||
ContractorIsAllPass int NULL,--承包商是否通过0/null:未通过 1:通过
|
||||
OwnerIsAllPass int NULL,--业主是否通过0/null:未通过 1:通过
|
||||
ProcessPatentIsAllPass int NULL,--工艺专利商是否通过0/null:未通过 1:通过
|
||||
ContractorAllPassData datetime null,--承包商通过日期
|
||||
OwnerAllPassData datetime null,--业主通过日期
|
||||
ProcessPatentAllPassData datetime null,--工艺专利商通过日期
|
||||
InspectionIsAllPass int NULL,--检查结果0/null:未通过 1:通过
|
||||
WanderIsComplete int null,--检查表流转是否全部通过0:未通过1:通过
|
||||
WanderCompleteData datetime null,--检查表流转完成日期
|
||||
IsUnifyWanderAbout int null,--是否统一流转0:否1:是
|
||||
UnifyWanderAboutData datetime null,--统一流转时间
|
||||
UnifyWanderAboutOpinion varchar(max) null,--统一流转备注
|
||||
InspectIsClose int null,--任务单是否关闭0:未关闭1:已关闭
|
||||
InspectCloseData datetime null,--任务单关闭日期
|
||||
InspectTime datetime NULL,--检查时间
|
||||
AddUser varchar(50) NULL,--添加人
|
||||
AddTime datetime NULL,--添加日期
|
||||
CONSTRAINT PK_ProduceRun_SubInspectTerm PRIMARY KEY CLUSTERED
|
||||
(
|
||||
SubInspectId ASC
|
||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
) ON [PRIMARY]
|
||||
GO
|
||||
|
||||
--==工作包检查项表
|
||||
if object_id(N'ProduceRun_SubInspectTermItem',N'U') is not null
|
||||
drop table dbo.ProduceRun_SubInspectTermItem
|
||||
CREATE TABLE dbo.ProduceRun_SubInspectTermItem(
|
||||
TermItemId varchar(50) NOT NULL,--主键
|
||||
ProjectId varchar(50) NULL,--项目主键
|
||||
SubInspectId varchar(50) NULL,--检查表主键
|
||||
GroupName varchar(50) NULL,--分组名称
|
||||
WorkInspectId varchar(50) NOT NULL,--工作包模板项主键
|
||||
WorkInspectName varchar(500) NULL,--检查事项名称
|
||||
InspectedUser varchar(50) NULL,--检查人主键
|
||||
InspectionResults int NULL,--检查结果0:未通过 1:通过
|
||||
InspectionIllustrate varchar(200) NULL,--检查说明
|
||||
Contractor varchar(50) null,--承包商
|
||||
Owner varchar(50) null,--业主
|
||||
ProcessPatent varchar(50) null,--工艺专利商
|
||||
ContractorIsPass int NULL,--承包商是否通过0/null:未通过 1:通过
|
||||
OwnerIsPass int NULL,--业主是否通过0/null:未通过 1:通过
|
||||
ProcessPatentIsPass int NULL,--工艺专利商是否通过0/null:未通过 1:通过
|
||||
ContractorRemark varchar(1000) NULL,--承包商备注
|
||||
OwnerRemark varchar(1000) NULL,--业主备注
|
||||
ProcessPatentRemark varchar(1000) NULL,--工艺专利商备注
|
||||
Remark varchar(200) NULL,--备注
|
||||
AddUser varchar(50) NULL,--添加人
|
||||
AddTime datetime NULL,--添加日期
|
||||
Sort int NULL,--排序
|
||||
CONSTRAINT PK_ProduceRun_SubInspectTermItem PRIMARY KEY CLUSTERED
|
||||
(
|
||||
TermItemId ASC
|
||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
) ON [PRIMARY]
|
||||
GO
|
||||
|
||||
--==检查表尾项管理
|
||||
if object_id(N'ProduceRun_InspectTailTerm',N'U') is not null
|
||||
drop table dbo.ProduceRun_InspectTailTerm
|
||||
CREATE TABLE dbo.ProduceRun_InspectTailTerm(
|
||||
TailTermId varchar(50) NOT NULL,--主键
|
||||
ProjectId varchar(50) NULL,--项目主键
|
||||
ProjectName varchar(50) NULL,--项目名称
|
||||
TailTermCode varchar(50) NULL,--巡检编号
|
||||
ConstructionUnit varchar(50) NULL,--施工单位
|
||||
SubInspectId varchar(50) NULL,--工作包检查表主键
|
||||
TermItemId varchar(50) NULL,--检查项主键
|
||||
QuestionDesc varchar(max) NULL,--问题描述
|
||||
RectifyOpinion varchar(max) NULL,--整改意见
|
||||
RectifyTime datetime NULL,--尾项提出时间
|
||||
InspectUser varchar(50) NULL,--检查人
|
||||
HandleUser varchar(50) NULL,--处理人
|
||||
ApproveUser varchar(50) NULL,--审核人
|
||||
AdjustCompleteTime datetime NULL,--要求整改完成时间
|
||||
ApproveState int NULL,--0:待提交处理1:待处理2:处理退回3:审核退回4:待审核5:审核通过
|
||||
AddUser varchar(50) NULL,--添加人
|
||||
AddTime datetime NULL,--添加日期
|
||||
CONSTRAINT PK_ProduceRun_InspectTailTerm PRIMARY KEY CLUSTERED
|
||||
(
|
||||
TailTermId ASC
|
||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
) ON [PRIMARY]
|
||||
GO
|
||||
|
||||
--==检查项处理/审核记录
|
||||
if object_id(N'ProduceRun_InspectTermApproveRecords',N'U') is not null
|
||||
drop table dbo.ProduceRun_InspectTermApproveRecords
|
||||
CREATE TABLE dbo.ProduceRun_InspectTermApproveRecords(
|
||||
InspectTermId varchar(50) NOT NULL,--主键
|
||||
ProjectId varchar(50) NULL,--项目主键
|
||||
TermItemId varchar(50) NULL,--检查项主键
|
||||
TailTermId varchar(50) NULL,--尾项主键
|
||||
ApproveOpinion varchar(max) NULL,--审核意见
|
||||
ApproveTime datetime NULL,--操作时间
|
||||
ApproveUser varchar(50) NULL,--操作人
|
||||
ApproveType int NULL,--记录类型0:处理记录1:审核记录
|
||||
ApproveState int NULL,--0:退回1:通过
|
||||
AddUser varchar(50) NULL,--添加人
|
||||
AddTime datetime NULL,--添加日期
|
||||
CONSTRAINT PK_ProduceRun_InspectTermApproveRecords PRIMARY KEY CLUSTERED
|
||||
(
|
||||
InspectTermId ASC
|
||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
) ON [PRIMARY]
|
||||
GO
|
|
@ -1872,6 +1872,20 @@
|
|||
<Content Include="TestRun\ProduceTestRun\TestRunRecordEdit.aspx" />
|
||||
<Content Include="TestRun\ProduceTestRun\TestRunReport.aspx" />
|
||||
<Content Include="TestRun\ProduceTestRun\TestRunReportEdit.aspx" />
|
||||
<Content Include="TestRun\Produce\InspectTailTermEdit.aspx" />
|
||||
<Content Include="TestRun\Produce\InspectTailTermList.aspx" />
|
||||
<Content Include="TestRun\Produce\InspectTemplate.aspx" />
|
||||
<Content Include="TestRun\Produce\InspectTemplateEdit.aspx" />
|
||||
<Content Include="TestRun\Produce\InspectWanderAboutAllPass.aspx" />
|
||||
<Content Include="TestRun\Produce\InspectWanderAboutAllPassList.aspx" />
|
||||
<Content Include="TestRun\Produce\InspectWanderAboutConfirm.aspx" />
|
||||
<Content Include="TestRun\Produce\InspectWanderAboutList.aspx" />
|
||||
<Content Include="TestRun\Produce\SubInspectTerm.aspx" />
|
||||
<Content Include="TestRun\Produce\SubWorkInspect.aspx" />
|
||||
<Content Include="TestRun\Produce\TailTermApprove.aspx" />
|
||||
<Content Include="TestRun\Produce\TailTermApproveList.aspx" />
|
||||
<Content Include="TestRun\Produce\TailTermHandle.aspx" />
|
||||
<Content Include="TestRun\Produce\TailTermHandleList.aspx" />
|
||||
<Content Include="TestRun\Report\FourDecisionSchedule.aspx" />
|
||||
<Content Include="TestRun\Report\PreRunSchedule.aspx" />
|
||||
<Content Include="TestRun\Report\ScheduleSetUp.aspx" />
|
||||
|
@ -16724,6 +16738,104 @@
|
|||
<Compile Include="TestRun\ProduceTestRun\TestRunReportEdit.aspx.designer.cs">
|
||||
<DependentUpon>TestRunReportEdit.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectTailTermEdit.aspx.cs">
|
||||
<DependentUpon>InspectTailTermEdit.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectTailTermEdit.aspx.designer.cs">
|
||||
<DependentUpon>InspectTailTermEdit.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectTailTermList.aspx.cs">
|
||||
<DependentUpon>InspectTailTermList.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectTailTermList.aspx.designer.cs">
|
||||
<DependentUpon>InspectTailTermList.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectTemplate.aspx.cs">
|
||||
<DependentUpon>InspectTemplate.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectTemplate.aspx.designer.cs">
|
||||
<DependentUpon>InspectTemplate.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectTemplateEdit.aspx.cs">
|
||||
<DependentUpon>InspectTemplateEdit.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectTemplateEdit.aspx.designer.cs">
|
||||
<DependentUpon>InspectTemplateEdit.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectWanderAboutAllPass.aspx.cs">
|
||||
<DependentUpon>InspectWanderAboutAllPass.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectWanderAboutAllPass.aspx.designer.cs">
|
||||
<DependentUpon>InspectWanderAboutAllPass.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectWanderAboutAllPassList.aspx.cs">
|
||||
<DependentUpon>InspectWanderAboutAllPassList.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectWanderAboutAllPassList.aspx.designer.cs">
|
||||
<DependentUpon>InspectWanderAboutAllPassList.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectWanderAboutConfirm.aspx.cs">
|
||||
<DependentUpon>InspectWanderAboutConfirm.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectWanderAboutConfirm.aspx.designer.cs">
|
||||
<DependentUpon>InspectWanderAboutConfirm.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectWanderAboutList.aspx.cs">
|
||||
<DependentUpon>InspectWanderAboutList.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\InspectWanderAboutList.aspx.designer.cs">
|
||||
<DependentUpon>InspectWanderAboutList.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\SubInspectTerm.aspx.cs">
|
||||
<DependentUpon>SubInspectTerm.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\SubInspectTerm.aspx.designer.cs">
|
||||
<DependentUpon>SubInspectTerm.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\SubWorkInspect.aspx.cs">
|
||||
<DependentUpon>SubWorkInspect.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\SubWorkInspect.aspx.designer.cs">
|
||||
<DependentUpon>SubWorkInspect.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\TailTermApprove.aspx.cs">
|
||||
<DependentUpon>TailTermApprove.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\TailTermApprove.aspx.designer.cs">
|
||||
<DependentUpon>TailTermApprove.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\TailTermApproveList.aspx.cs">
|
||||
<DependentUpon>TailTermApproveList.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\TailTermApproveList.aspx.designer.cs">
|
||||
<DependentUpon>TailTermApproveList.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\TailTermHandle.aspx.cs">
|
||||
<DependentUpon>TailTermHandle.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\TailTermHandle.aspx.designer.cs">
|
||||
<DependentUpon>TailTermHandle.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\TailTermHandleList.aspx.cs">
|
||||
<DependentUpon>TailTermHandleList.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Produce\TailTermHandleList.aspx.designer.cs">
|
||||
<DependentUpon>TailTermHandleList.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TestRun\Report\FourDecisionSchedule.aspx.cs">
|
||||
<DependentUpon>FourDecisionSchedule.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
|
||||
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
|
||||
<UseIISExpress>true</UseIISExpress>
|
||||
<Use64BitIISExpress>false</Use64BitIISExpress>
|
||||
<IISExpressSSLPort />
|
||||
|
|
|
@ -0,0 +1,181 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InspectTailTermEdit.aspx.cs" Inherits="FineUIPro.Web.TestRun.Produce.InspectTailTermEdit" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title>质量巡检</title>
|
||||
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
|
||||
<style type="text/css">
|
||||
.labcenter {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.f-grid-row .f-grid-cell-inner {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.f-grid-row.red {
|
||||
background-color: #FF7575;
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.fontred {
|
||||
color: #FF7575;
|
||||
background-image: none;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<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>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:ContentPanel ID="ContentPanel1" Title="巡检" ShowBorder="true"
|
||||
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
|
||||
runat="server">
|
||||
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true"
|
||||
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TextBox ID="txtProjectName" runat="server" Readonly="true" Label="项目名称" LabelAlign="Right" MaxLength="50">
|
||||
</f:TextBox>
|
||||
<f:TextBox ID="txtTailTermCode" runat="server" Required="true" ShowRedStar="true" Label="巡检编号" LabelAlign="Right"
|
||||
MaxLength="50">
|
||||
</f:TextBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:DropDownList ID="ddlConstructionUnit" ShowRedStar="true" runat="server" Required="true" Label="施工单位" LabelAlign="Right" EmptyText="--请选择--">
|
||||
</f:DropDownList>
|
||||
<f:DropDownList ID="ddlTermItemId" ShowRedStar="true" runat="server" Required="true" Label="检查项" LabelAlign="Right" AutoPostBack="true" OnSelectedIndexChanged="ddlTermItemId_SelectedIndexChanged" EmptyText="--请选择--">
|
||||
</f:DropDownList>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TextArea ID="txtQuestionDesc" ShowRedStar="true" Required="true" runat="server" Label="问题描述" MaxLength="3000">
|
||||
</f:TextArea>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TextArea ID="txtRectifyOpinion" runat="server" Label="整改意见" MaxLength="3000">
|
||||
</f:TextArea>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label ID="lblInspectUser" Label="提出人" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
|
||||
<f:Label ID="lblRectifyTime" Label="提出时间" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
|
||||
<f:HiddenField ID="hidInspectUserId" runat="server"></f:HiddenField>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:DropDownList ID="ddlHandleUser" runat="server" Label="处理人" Required="true" LabelAlign="Right" EnableEdit="true">
|
||||
</f:DropDownList>
|
||||
<f:DropDownList ID="ddlApproveUser" runat="server" Label="审核人" Required="true" LabelAlign="Right" EnableEdit="true">
|
||||
</f:DropDownList>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:DatePicker runat="server" Required="true" EnableEdit="false" Label="要求整改完成时间" LabelWidth="150px" EmptyText="请选择日期"
|
||||
ID="txtAdjustCompleteTime" ShowRedStar="true">
|
||||
</f:DatePicker>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Panel ID="Panel1" ShowHeader="false" ShowBorder="false" Layout="Column" runat="server">
|
||||
<Items>
|
||||
<f:Label runat="server" Text="问题图片上传:" CssStyle="padding-left:25px" Width="150px" CssClass="marginr" ShowLabel="false"></f:Label>
|
||||
<f:Button ID="imgBtnQuestionFile" Text="问题图片上传" ToolTip="问题图片上传" Icon="TableCell" runat="server"
|
||||
OnClick="imgBtnQuestionFile_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
</f:Form>
|
||||
</f:ContentPanel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow ID="plApprove2">
|
||||
<Items>
|
||||
<f:ContentPanel Title="巡检处理列表" ShowBorder="true"
|
||||
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
|
||||
runat="server">
|
||||
<f:Grid ID="gvHandle" IsFluid="true" CssClass="blockpanel" ShowBorder="true" ShowHeader="false" runat="server" EnableCollapse="false"
|
||||
DataKeyNames="InspectTermId" EnableColumnLines="true" ForceFit="true">
|
||||
<Columns>
|
||||
<f:RowNumberField />
|
||||
<f:RenderField ColumnID="ConstructionUnitName" Width="300px" DataField="ConstructionUnitName" HeaderText="施工单位" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ApproveStateName" Width="100px" DataField="ApproveStateName" HeaderText="处理状态" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ApproveTime" Width="150px" DataField="ApproveTime" HeaderText="处理时间" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ApproveOpinion" DataField="ApproveOpinion" HeaderText="处理意见" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
</f:Grid>
|
||||
</f:ContentPanel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow ID="plApprove3">
|
||||
<Items>
|
||||
<f:ContentPanel Title="巡检审批列表" ShowBorder="true"
|
||||
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
|
||||
runat="server">
|
||||
<f:Grid ID="gvApprove" IsFluid="true" CssClass="blockpanel" ShowBorder="true" ShowHeader="false" runat="server" EnableCollapse="false"
|
||||
DataKeyNames="InspectTermId" EnableColumnLines="true" ForceFit="true">
|
||||
<Columns>
|
||||
<f:RowNumberField />
|
||||
<f:RenderField ColumnID="ConstructionUnitName" Width="300px" DataField="ConstructionUnitName" HeaderText="施工单位" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ApproveStateName" Width="100px" DataField="ApproveStateName" HeaderText="审核状态" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ApproveTime" Width="150px" DataField="ApproveTime" HeaderText="审核时间" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ApproveOpinion" DataField="ApproveOpinion" HeaderText="审核意见" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
</f:Grid>
|
||||
</f:ContentPanel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
|
||||
<Items>
|
||||
<f:ToolbarFill ID="ToolbarFill1" runat="server">
|
||||
</f:ToolbarFill>
|
||||
<f:Button ID="btnSave" Icon="SystemSave" runat="server" Text="保存" ToolTip="保存" ValidateForms="SimpleForm1" OnClick="btnSave_Click">
|
||||
</f:Button>
|
||||
<f:Button ID="btnSubmit" Icon="SystemSaveNew" runat="server" Text="保存并提交处理" ToolTip="保存并提交处理" ValidateForms="SimpleForm1" OnClick="btnSubmit_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
</f:Form>
|
||||
<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Parent" EnableResize="false" OnClose="WindowAtt_Close" runat="server" IsModal="true" Width="700px"
|
||||
Height="500px">
|
||||
</f:Window>
|
||||
</form>
|
||||
<script>
|
||||
function onGridDataLoad(event) {
|
||||
this.mergeColumns(['CheckItemType']);
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,393 @@
|
|||
using BLL;
|
||||
using Model;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data.SqlClient;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
public partial class InspectTailTermEdit : PageBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 检查表尾项主键
|
||||
/// </summary>
|
||||
public string TailTermId
|
||||
{
|
||||
get { return (string)ViewState["TailTermId"]; }
|
||||
set { ViewState["TailTermId"] = value; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 检查项主键
|
||||
/// </summary>
|
||||
public string TermItemId
|
||||
{
|
||||
get { return (string)ViewState["TermItemId"]; }
|
||||
set { ViewState["TermItemId"] = value; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 是否查看
|
||||
/// </summary>
|
||||
public bool IsView
|
||||
{
|
||||
get { return (bool)ViewState["IsView"]; }
|
||||
set { ViewState["IsView"] = value; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 问题图片是否可编辑
|
||||
/// </summary>
|
||||
public int QuestionEditImg
|
||||
{
|
||||
get { return (int)ViewState["QuestionEditImg"]; }
|
||||
set { ViewState["QuestionEditImg"] = value; }
|
||||
}
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
this.TailTermId = Request["TailTermId"];
|
||||
this.TermItemId = Request["TermItemId"];
|
||||
//是否查看
|
||||
this.IsView = string.IsNullOrWhiteSpace(Request["IsView"]) ? false : bool.Parse(Request["IsView"]);
|
||||
//数据绑定
|
||||
PageInit();
|
||||
//处理和审批意见绑定
|
||||
gvRecordBrid();
|
||||
//判断是否查看
|
||||
if (IsView)
|
||||
{
|
||||
btnSave.Hidden = true;
|
||||
btnSubmit.Hidden = true;
|
||||
QuestionEditImg = -1;
|
||||
txtTailTermCode.Enabled = false;
|
||||
ddlConstructionUnit.Enabled = false;
|
||||
ddlTermItemId.Enabled = false;
|
||||
txtQuestionDesc.Enabled = false;
|
||||
txtRectifyOpinion.Enabled = false;
|
||||
ddlApproveUser.Enabled = false;
|
||||
ddlHandleUser.Enabled = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 默认绑定
|
||||
/// </summary>
|
||||
public void PageInit()
|
||||
{
|
||||
QuestionEditImg = 0;
|
||||
//施工单位
|
||||
UnitService.InitUnitByProjectIdUnitTypeDropDownList(ddlConstructionUnit, this.CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_2, false);
|
||||
//检查人绑定
|
||||
var userList = from user in Funs.DB.Sys_User
|
||||
join projectrole in Funs.DB.Project_ProjectUser on user.UserId equals projectrole.UserId
|
||||
where projectrole.ProjectId == this.CurrUser.LoginProjectId
|
||||
select user;
|
||||
var userids = new List<string>() { Const.sysglyId, Const.hfnbdId, Const.sedinId };
|
||||
var addUserList = Funs.DB.Sys_User.Where(x => userids.Contains(x.UserId));
|
||||
var users = userList.ToList();
|
||||
if (addUserList.Count() > 0)
|
||||
{
|
||||
users.AddRange(addUserList);
|
||||
}
|
||||
//检查人和审核人
|
||||
if (users.Count() > 0)
|
||||
{
|
||||
//处理人
|
||||
ddlHandleUser.DataTextField = "UserName";
|
||||
ddlHandleUser.DataValueField = "UserId";
|
||||
ddlHandleUser.DataSource = users;
|
||||
ddlHandleUser.DataBind();
|
||||
ddlHandleUser.SelectedValue = this.CurrUser.UserId;
|
||||
//审核人
|
||||
ddlApproveUser.DataTextField = "UserName";
|
||||
ddlApproveUser.DataValueField = "UserId";
|
||||
ddlApproveUser.DataSource = users;
|
||||
ddlApproveUser.DataBind();
|
||||
ddlApproveUser.SelectedValue = this.CurrUser.UserId;
|
||||
}
|
||||
var model = Funs.DB.ProduceRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == this.TailTermId);
|
||||
if (model != null)
|
||||
{
|
||||
//项目名称
|
||||
txtProjectName.Text = model.ProjectName;
|
||||
//巡检编号
|
||||
txtTailTermCode.Text = model.TailTermCode;
|
||||
//施工单位
|
||||
ddlConstructionUnit.SelectedValue = model.ConstructionUnit;
|
||||
//提出人
|
||||
var inspectModel = users.FirstOrDefault(x => x.UserId == model.InspectUser);
|
||||
if (inspectModel != null)
|
||||
{
|
||||
lblInspectUser.Text = inspectModel.UserName;
|
||||
hidInspectUserId.Text = inspectModel.UserId;
|
||||
}
|
||||
//绑定检查项
|
||||
var list = Funs.DB.ProduceRun_SubInspectTermItem.Where(x => x.InspectionResults == 0 && x.InspectedUser == this.CurrUser.UserId).ToList();
|
||||
if (list.Count() > 0)
|
||||
{
|
||||
ddlTermItemId.DataTextField = "WorkInspectName";
|
||||
ddlTermItemId.DataValueField = "TermItemId";
|
||||
ddlTermItemId.DataSource = list;
|
||||
ddlTermItemId.DataBind();
|
||||
}
|
||||
//检查项
|
||||
ddlTermItemId.SelectedValue = model.TermItemId;
|
||||
//问题描述
|
||||
txtQuestionDesc.Text = model.QuestionDesc;
|
||||
//整改意见
|
||||
txtRectifyOpinion.Text = model.RectifyOpinion;
|
||||
//提出时间
|
||||
lblRectifyTime.Text = model.RectifyTime != null ? model.RectifyTime.Value.ToString("yyyy-MM-dd") : string.Empty;
|
||||
//处理人
|
||||
ddlHandleUser.SelectedValue = model.HandleUser;
|
||||
//审核人
|
||||
ddlApproveUser.SelectedValue = model.ApproveUser;
|
||||
//整改完成日期
|
||||
txtAdjustCompleteTime.Text = model.AdjustCompleteTime != null ? model.AdjustCompleteTime.Value.ToString("yyyy-MM-dd") : string.Empty;
|
||||
if (model.ApproveState > 1)
|
||||
{
|
||||
QuestionEditImg = -1;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
this.TailTermId = Guid.NewGuid().ToString();
|
||||
var projectModel = Funs.DB.Base_Project.FirstOrDefault(e => e.ProjectId == this.CurrUser.LoginProjectId);
|
||||
if (projectModel != null)
|
||||
{
|
||||
txtProjectName.Text = projectModel.ProjectName;
|
||||
string code = projectModel.ProjectCode + "-06-CM03-XJ-";
|
||||
txtTailTermCode.Text = SQLHelper.RunProcNewId("SpGetNewCode5", "dbo.ProduceRun_InspectTailTerm", "TailTermCode", code);
|
||||
}
|
||||
if (!string.IsNullOrWhiteSpace(this.TermItemId))
|
||||
{
|
||||
var itemTerm = Funs.DB.ProduceRun_SubInspectTermItem.FirstOrDefault(x => x.InspectedUser == this.CurrUser.UserId && x.TermItemId == this.TermItemId);
|
||||
if (itemTerm != null)
|
||||
{
|
||||
var list = Funs.DB.ProduceRun_SubInspectTermItem.Where(x => x.InspectedUser == this.CurrUser.UserId && (x.InspectionResults == 0 || x.TermItemId == this.TermItemId));
|
||||
ddlTermItemId.Items.Clear();
|
||||
if (list.Count() > 0)
|
||||
{
|
||||
ddlTermItemId.DataTextField = "WorkInspectName";
|
||||
ddlTermItemId.DataValueField = "TermItemId";
|
||||
ddlTermItemId.DataSource = list;
|
||||
ddlTermItemId.DataBind();
|
||||
}
|
||||
else
|
||||
{
|
||||
ddlTermItemId.Items.Insert(0, new ListItem("==无数据==", ""));
|
||||
}
|
||||
|
||||
//检查项
|
||||
ddlTermItemId.SelectedValue = itemTerm.TermItemId;
|
||||
//提出人
|
||||
var inspectModel = users.FirstOrDefault(x => x.UserId == itemTerm.InspectedUser);
|
||||
if (inspectModel != null)
|
||||
{
|
||||
lblInspectUser.Text = inspectModel.UserName;
|
||||
hidInspectUserId.Text = inspectModel.UserId;
|
||||
}
|
||||
//提出时间
|
||||
lblRectifyTime.Text = DateTime.Now.ToString("yyyy-MM-dd");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 处理和审批意见绑定
|
||||
/// </summary>
|
||||
public void gvRecordBrid()
|
||||
{
|
||||
string strSql = @"select a.InspectTermId,a.ApproveOpinion,a.ApproveTime,a.ApproveType,a.ApproveState,(case a.ApproveType when 0 then (case a.ApproveState when 0 then '处理退回' when 1 then '处理通过' else '' end) else (case a.ApproveState when 0 then '审批退回' when 1 then '审批通过' else '' end) end) as ApproveStateName,b.ConstructionUnit,d.UnitName as ConstructionUnitName,a.AddUser,a.AddTime from ProduceRun_InspectTermApproveRecords as a inner join ProduceRun_InspectTailTerm as b on a.TailTermId=b.TailTermId inner join ProduceRun_SubInspectTermItem as c on c.TermItemId=a.TermItemId inner join Base_Unit as d on d.UnitId=b.ConstructionUnit where 1=1 and a.ProjectId=@ProjectId and a.TailTermId=@TailTermId ";
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
|
||||
listStr.Add(new SqlParameter("@TailTermId", this.TailTermId));
|
||||
strSql += " order by a.AddTime asc";
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||
//处理意见
|
||||
var handleTb = tb.AsEnumerable().Where(row => row.Field<int>("ApproveType") == 0);
|
||||
gvHandle.DataSource = handleTb;
|
||||
gvHandle.DataBind();
|
||||
//审批意见
|
||||
var approveTb = tb.AsEnumerable().Where(row => row.Field<int>("ApproveType") == 1);
|
||||
gvApprove.DataSource = approveTb;
|
||||
gvApprove.DataBind();
|
||||
}
|
||||
|
||||
#region 按钮
|
||||
|
||||
/// <summary>
|
||||
/// 保存
|
||||
/// </summary>
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(ddlConstructionUnit.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择施工单位!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddlTermItemId.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择检查项!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddlHandleUser.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择处理人!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddlApproveUser.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择审核人!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
var isAdd = false;
|
||||
var model = Funs.DB.ProduceRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == this.TailTermId);
|
||||
if (model == null)
|
||||
{
|
||||
isAdd = true;
|
||||
model = new ProduceRun_InspectTailTerm();
|
||||
model.TailTermId = this.TailTermId;
|
||||
model.ProjectId = this.CurrUser.LoginProjectId;
|
||||
}
|
||||
model.ProjectName = txtProjectName.Text;
|
||||
model.TailTermCode = txtTailTermCode.Text;
|
||||
model.ConstructionUnit = ddlConstructionUnit.SelectedValue;
|
||||
model.TermItemId = ddlTermItemId.SelectedValue;
|
||||
model.QuestionDesc = txtQuestionDesc.Text.Trim();
|
||||
model.RectifyOpinion = txtRectifyOpinion.Text.Trim();
|
||||
model.RectifyTime = DateTime.Parse(lblRectifyTime.Text);
|
||||
model.InspectUser = hidInspectUserId.Text;
|
||||
model.HandleUser = ddlHandleUser.SelectedValue;
|
||||
model.ApproveUser = ddlApproveUser.SelectedValue;
|
||||
model.AdjustCompleteTime = DateTime.Parse(txtAdjustCompleteTime.Text);
|
||||
model.ApproveState = 0;
|
||||
model.AddUser = this.CurrUser.LoginProjectId;
|
||||
model.AddTime = DateTime.Now;
|
||||
if (isAdd)
|
||||
{
|
||||
Funs.DB.ProduceRun_InspectTailTerm.InsertOnSubmit(model);
|
||||
}
|
||||
//判断尾项是否保存
|
||||
var itemModel = Funs.DB.ProduceRun_SubInspectTermItem.FirstOrDefault(x => x.TermItemId == this.TermItemId && x.InspectedUser == this.CurrUser.UserId);
|
||||
if (itemModel != null) itemModel.InspectionResults = 0;
|
||||
Funs.DB.SubmitChanges();
|
||||
ShowNotify("操作成功!", MessageBoxIcon.Success);
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 保存并提交
|
||||
/// </summary>
|
||||
protected void btnSubmit_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(ddlConstructionUnit.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择施工单位!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddlTermItemId.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择检查项!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddlHandleUser.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择处理人!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddlApproveUser.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择审核人!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
var isAdd = false;
|
||||
var model = Funs.DB.ProduceRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == this.TailTermId);
|
||||
if (model == null)
|
||||
{
|
||||
isAdd = true;
|
||||
model = new ProduceRun_InspectTailTerm();
|
||||
model.TailTermId = this.TailTermId;
|
||||
model.ProjectId = this.CurrUser.LoginProjectId;
|
||||
}
|
||||
model.ProjectName = txtProjectName.Text;
|
||||
model.TailTermCode = txtTailTermCode.Text;
|
||||
model.ConstructionUnit = ddlConstructionUnit.SelectedValue;
|
||||
model.TermItemId = ddlTermItemId.SelectedValue;
|
||||
model.QuestionDesc = txtQuestionDesc.Text.Trim();
|
||||
model.RectifyOpinion = txtRectifyOpinion.Text.Trim();
|
||||
model.RectifyTime = DateTime.Parse(lblRectifyTime.Text);
|
||||
model.InspectUser = hidInspectUserId.Text;
|
||||
model.HandleUser = ddlHandleUser.SelectedValue;
|
||||
model.ApproveUser = ddlApproveUser.SelectedValue;
|
||||
model.AdjustCompleteTime = DateTime.Parse(txtAdjustCompleteTime.Text);
|
||||
model.ApproveState = 1;
|
||||
model.AddUser = this.CurrUser.LoginProjectId;
|
||||
model.AddTime = DateTime.Now;
|
||||
if (isAdd)
|
||||
{
|
||||
Funs.DB.ProduceRun_InspectTailTerm.InsertOnSubmit(model);
|
||||
}
|
||||
//判断尾项是否保存
|
||||
var itemModel = Funs.DB.ProduceRun_SubInspectTermItem.FirstOrDefault(x => x.TermItemId == this.TermItemId && x.InspectedUser == this.CurrUser.UserId);
|
||||
if (itemModel != null) itemModel.InspectionResults = 0;
|
||||
Funs.DB.SubmitChanges();
|
||||
ShowNotify("操作成功!", MessageBoxIcon.Success);
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 问题图片
|
||||
/// </summary>
|
||||
protected void imgBtnQuestionFile_Click(object sender, EventArgs e)
|
||||
{
|
||||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/CheckControl&menuId={2}", QuestionEditImg, this.TailTermId + "q", Const.InspectTailTerm)));
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 事件
|
||||
|
||||
/// <summary>
|
||||
/// 检查项
|
||||
/// </summary>
|
||||
protected void ddlTermItemId_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
var itemUserTerm = Funs.DB.ProduceRun_SubInspectTermItem.FirstOrDefault(x => x.TermItemId == ddlTermItemId.SelectedValue);
|
||||
if (itemUserTerm != null)
|
||||
{
|
||||
//提出人
|
||||
var inspectModel = Funs.DB.Sys_User.FirstOrDefault(x => x.UserId == itemUserTerm.InspectedUser);
|
||||
if (inspectModel != null)
|
||||
{
|
||||
lblInspectUser.Text = inspectModel.UserName;
|
||||
hidInspectUserId.Text = inspectModel.UserId;
|
||||
}
|
||||
//提出时间
|
||||
lblRectifyTime.Text = DateTime.Now.ToString("yyyy-MM-dd");
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 关闭
|
||||
/// </summary>
|
||||
protected void WindowAtt_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
|
@ -0,0 +1,269 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
|
||||
|
||||
public partial class InspectTailTermEdit
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// SimpleForm1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form SimpleForm1;
|
||||
|
||||
/// <summary>
|
||||
/// ContentPanel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ContentPanel ContentPanel1;
|
||||
|
||||
/// <summary>
|
||||
/// Form2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form Form2;
|
||||
|
||||
/// <summary>
|
||||
/// txtProjectName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtProjectName;
|
||||
|
||||
/// <summary>
|
||||
/// txtTailTermCode 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtTailTermCode;
|
||||
|
||||
/// <summary>
|
||||
/// ddlConstructionUnit 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlConstructionUnit;
|
||||
|
||||
/// <summary>
|
||||
/// ddlTermItemId 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlTermItemId;
|
||||
|
||||
/// <summary>
|
||||
/// txtQuestionDesc 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextArea txtQuestionDesc;
|
||||
|
||||
/// <summary>
|
||||
/// txtRectifyOpinion 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextArea txtRectifyOpinion;
|
||||
|
||||
/// <summary>
|
||||
/// lblInspectUser 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblInspectUser;
|
||||
|
||||
/// <summary>
|
||||
/// lblRectifyTime 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblRectifyTime;
|
||||
|
||||
/// <summary>
|
||||
/// hidInspectUserId 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.HiddenField hidInspectUserId;
|
||||
|
||||
/// <summary>
|
||||
/// ddlHandleUser 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlHandleUser;
|
||||
|
||||
/// <summary>
|
||||
/// ddlApproveUser 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlApproveUser;
|
||||
|
||||
/// <summary>
|
||||
/// txtAdjustCompleteTime 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtAdjustCompleteTime;
|
||||
|
||||
/// <summary>
|
||||
/// Panel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel1;
|
||||
|
||||
/// <summary>
|
||||
/// imgBtnQuestionFile 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button imgBtnQuestionFile;
|
||||
|
||||
/// <summary>
|
||||
/// plApprove2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.FormRow plApprove2;
|
||||
|
||||
/// <summary>
|
||||
/// gvHandle 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid gvHandle;
|
||||
|
||||
/// <summary>
|
||||
/// plApprove3 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.FormRow plApprove3;
|
||||
|
||||
/// <summary>
|
||||
/// gvApprove 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid gvApprove;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill1;
|
||||
|
||||
/// <summary>
|
||||
/// btnSave 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSave;
|
||||
|
||||
/// <summary>
|
||||
/// btnSubmit 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSubmit;
|
||||
|
||||
/// <summary>
|
||||
/// WindowAtt 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window WindowAtt;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,179 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InspectTailTermList.aspx.cs" Inherits="FineUIPro.Web.TestRun.Produce.InspectTailTermList" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<script src="../../Controls/My97DatePicker/WdatePicker.js" type="text/javascript"></script>
|
||||
<title>检查表尾项管理</title>
|
||||
<style type="text/css">
|
||||
.labcenter {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.f-grid-row .f-grid-cell-inner {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.LabelColor {
|
||||
color: Red;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
.Green {
|
||||
background-color: Green;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.Yellow {
|
||||
background-color: #FFFF93;
|
||||
}
|
||||
|
||||
.Red {
|
||||
background-color: red;
|
||||
}
|
||||
|
||||
.LightGreen {
|
||||
background-color: LightGreen
|
||||
}
|
||||
|
||||
.f-grid-colheader-text {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.f-grid-cell[data-color=color1] {
|
||||
background-color: #56ff00;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.f-grid-cell[data-color=color2] {
|
||||
background-color: #e1db21;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.f-grid-cell[data-color=color3] {
|
||||
background-color: #e23129;
|
||||
color: #fff;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
|
||||
<f:Panel ID="Panel1" runat="server" ShowBorder="false" ShowHeader="false" Layout="Region">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" EnableAjax="false" ShowHeader="false" Title="检查表尾项管理" EnableCollapse="true"
|
||||
runat="server" BoxFlex="1" DataKeyNames="TailTermId,ApproveState" AllowCellEditing="true"
|
||||
ClicksToEdit="2" DataIDField="TailTermId" AllowSorting="true" SortField="AddTime"
|
||||
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true" ForceFit="true"
|
||||
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
|
||||
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" AllowFilters="true" EnableTextSelection="True" EnableMultiSelect="false" EnableCheckBoxSelect="true" OnRowDataBound="Grid1_RowDataBound">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
|
||||
<Items>
|
||||
<f:DropDownList ID="ddlApproveState" runat="server" Label="审核状态" LabelAlign="Right" EnableEdit="true">
|
||||
<f:ListItem Text="全部" Value="" />
|
||||
<f:ListItem Text="待提交处理" Value="0" />
|
||||
<f:ListItem Text="待处理" Value="1" />
|
||||
<f:ListItem Text="处理退回" Value="2" />
|
||||
<f:ListItem Text="审核退回" Value="3" />
|
||||
<f:ListItem Text="待审核" Value="4" />
|
||||
<f:ListItem Text="审核通过" Value="5" />
|
||||
</f:DropDownList>
|
||||
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" Label="开始日期" ID="txtStartTime" LabelAlign="right">
|
||||
</f:DatePicker>
|
||||
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" Label="结束日期" ID="txtEndTime" LabelAlign="right">
|
||||
</f:DatePicker>
|
||||
<f:ToolbarFill runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnQuery" OnClick="btnQuery_Click" ToolTip="查询" Icon="SystemSearch" EnablePostBack="true" runat="server"></f:Button>
|
||||
<f:Button ID="btnNew" Text="新增" ToolTip="新增" Icon="Add" runat="server" OnClick="btnNew_Click"></f:Button>
|
||||
<f:Button ID="btnModify" Text="修改" ToolTip="修改" Icon="Pencil" runat="server" OnClick="btnModify_Click"></f:Button>
|
||||
<f:Button ID="btnSubmitReview" Text="提交处理" ToolTip="提交处理" runat="server" OnClick="btnSubmitReview_Click"></f:Button>
|
||||
<f:Button ID="btnwithdraw" Text="撤回提交处理" ToolTip="撤回提交处理" runat="server" OnClick="btnwithdraw_Click"></f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:RowNumberField />
|
||||
<f:RenderField ColumnID="TailTermCode" DataField="TailTermCode" SortField="TailTermCode" HeaderText="巡检编号" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="UnitName" DataField="UnitName" HeaderText="单位名称" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="InspectUserName" DataField="InspectUserName" HeaderText="检查人" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="WorkInspectName" DataField="WorkInspectName" Width="400px" HeaderText="检查项" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="RectifyOpinion" DataField="RectifyOpinion" HeaderText="整改意见" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:BoundField DataField="RectifyTime" DataFormatString="{0:yyyy-MM-dd}" HeaderText="整改时间" />
|
||||
<f:RenderField ColumnID="InspectUserName" DataField="InspectUserName" HeaderText="检查人" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ApproveStateName" DataField="ApproveStateName" HeaderText="流程状态" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:BoundField DataField="AdjustCompleteTime" DataFormatString="{0:yyyy-MM-dd}" HeaderText="要求整改日期" />
|
||||
<f:RenderField ColumnID="ApproveUserName" DataField="HandleUserName" HeaderText="处理人" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ApproveUserName" DataField="ApproveUserName" HeaderText="审核人" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:TemplateField ColumnID="AdjustDiffDay" HeaderText="整改是否逾期" HeaderTextAlign="Center" TextAlign="Center"
|
||||
EnableLock="true" Locked="False">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="lblIsOverdue" runat="server" Text='<%# IsOverdue(Eval("AdjustDiffDay"),Eval("ApproveState")) %>'></asp:Label>
|
||||
</ItemTemplate>
|
||||
</f:TemplateField>
|
||||
</Columns>
|
||||
<Listeners>
|
||||
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
|
||||
</Listeners>
|
||||
<PageItems>
|
||||
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
|
||||
</f:ToolbarSeparator>
|
||||
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
|
||||
</f:ToolbarText>
|
||||
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
|
||||
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
|
||||
<f:ListItem Text="10" Value="10" />
|
||||
<f:ListItem Text="15" Value="15" />
|
||||
<f:ListItem Text="20" Value="20" />
|
||||
<f:ListItem Text="25" Value="25" />
|
||||
<f:ListItem Text="所有行" Value="100000" />
|
||||
</f:DropDownList>
|
||||
<f:ToolbarFill runat="server">
|
||||
</f:ToolbarFill>
|
||||
</PageItems>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Window ID="Window1" Title="检查项巡检" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Parent" EnableResize="false" runat="server" IsModal="true" OnClose="Window1_Close"
|
||||
Width="1300px" Height="660px">
|
||||
</f:Window>
|
||||
<f:Menu ID="Menu1" runat="server">
|
||||
<Items>
|
||||
<f:MenuButton ID="btnMenuModify" EnablePostBack="true" runat="server" Text="修改" Icon="Pencil"
|
||||
OnClick="btnMenuModify_Click">
|
||||
</f:MenuButton>
|
||||
<f:MenuButton ID="btnMenuView" EnablePostBack="true" runat="server" Text="查看" Icon="ApplicationViewIcons"
|
||||
OnClick="btnMenuView_Click">
|
||||
</f:MenuButton>
|
||||
<f:MenuButton ID="btnMenuDel" EnablePostBack="true" runat="server" Icon="Delete" Text="删除" ConfirmText="确定删除当前数据?"
|
||||
OnClick="btnMenuDel_Click">
|
||||
</f:MenuButton>
|
||||
</Items>
|
||||
</f:Menu>
|
||||
</form>
|
||||
<script type="text/javascript">
|
||||
var menuID = '<%= Menu1.ClientID %>';
|
||||
|
||||
// 返回false,来阻止浏览器右键菜单
|
||||
function onRowContextMenu(event, rowId) {
|
||||
F(menuID).show(); //showAt(event.pageX, event.pageY);
|
||||
return false;
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,314 @@
|
|||
using BLL;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data.SqlClient;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
public partial class InspectTailTermList : PageBase
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
#region 绑定数据
|
||||
|
||||
/// <summary>
|
||||
/// 数据绑定
|
||||
/// </summary>
|
||||
public void BindGrid()
|
||||
{
|
||||
string strSql = @"select a.TailTermId,a.ProjectId,d.ProjectCode,d.ProjectName,a.TailTermCode,a.ConstructionUnit,b.UnitName,a.SubInspectId,a.TermItemId,c.WorkInspectName,a.QuestionDesc,a.RectifyTime,a.RectifyOpinion,a.InspectUser,e.UserName as InspectUserName,a.ApproveUser,f.UserName as ApproveUserName,a.HandleUser,g.UserName as HandleUserName,a.ApproveState,(case a.ApproveState when 0 then '待提交处理' when 1 then '待处理' when 2 then '处理退回' when 3 then '审核退回' when 4 then '待审核' when 5 then '审核通过' else '' end) as ApproveStateName,a.AddTime,a.AdjustCompleteTime,DATEDIFF(DAY, GETDATE(),a.AdjustCompleteTime) as AdjustDiffDay from ProduceRun_InspectTailTerm as a inner join Base_Unit as b on a.ConstructionUnit=b.UnitId inner join ProduceRun_SubInspectTermItem as c on c.TermItemId=a.TermItemId inner join Base_Project as d on d.ProjectId=a.ProjectId inner join Sys_User as e on e.UserId=a.InspectUser inner join Sys_User as f on f.UserId=a.ApproveUser inner join Sys_User as g on g.UserId=a.HandleUser where 1=1 and a.ProjectId=@projectid and a.InspectUser=@InspectUser";
|
||||
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
listStr.Add(new SqlParameter("@projectid", this.CurrUser.LoginProjectId));
|
||||
listStr.Add(new SqlParameter("@InspectUser", this.CurrUser.UserId));
|
||||
//审核状态
|
||||
if (!string.IsNullOrWhiteSpace(ddlApproveState.SelectedValue))
|
||||
{
|
||||
strSql += " and a.ApproveState=@ApproveState";
|
||||
listStr.Add(new SqlParameter("@ApproveState", ddlApproveState.SelectedValue));
|
||||
}
|
||||
//开始时间
|
||||
if (!string.IsNullOrWhiteSpace(txtStartTime.Text))
|
||||
{
|
||||
strSql += $" and a.RectifyTime>='{DateTime.Parse(txtStartTime.Text.Trim()).ToString("yyyy-MM-dd")} 00:00:00'";
|
||||
}
|
||||
//结束时间
|
||||
if (!string.IsNullOrWhiteSpace(txtEndTime.Text))
|
||||
{
|
||||
strSql += $" and a.RectifyTime<='{DateTime.Parse(txtEndTime.Text.Trim()).ToString("yyyy-MM-dd")} 23:59:59'";
|
||||
}
|
||||
strSql += " order by a.AddTime asc";
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||
Grid1.RecordCount = tb.Rows.Count;
|
||||
var table = this.GetPagedDataTable(Grid1, tb);
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 分页
|
||||
/// </summary>
|
||||
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
||||
{
|
||||
Grid1.PageIndex = e.NewPageIndex;
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 双击事件
|
||||
/// </summary>
|
||||
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
|
||||
{
|
||||
btnMenuModify_Click(null, null);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 分页下拉框
|
||||
/// </summary>
|
||||
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
protected void Grid1_Sort(object sender, GridSortEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 行数据处理事件
|
||||
/// </summary>
|
||||
protected void Grid1_RowDataBound(object sender, GridRowEventArgs e)
|
||||
{
|
||||
DataRowView row = e.DataItem as DataRowView;
|
||||
|
||||
// 入学年份
|
||||
int diffDay = Convert.ToInt32(row["AdjustDiffDay"]);
|
||||
TemplateField AdjustDiffDay = Grid1.FindColumn("AdjustDiffDay") as TemplateField;
|
||||
int approveState = int.Parse(Grid1.DataKeys[e.RowIndex][1].ToString());
|
||||
if (approveState != 5)
|
||||
{
|
||||
if (diffDay > 0)
|
||||
{
|
||||
e.CellAttributes[AdjustDiffDay.ColumnIndex]["data-color"] = "color1";
|
||||
}
|
||||
else if (diffDay == 0)
|
||||
{
|
||||
e.CellAttributes[AdjustDiffDay.ColumnIndex]["data-color"] = "color2";
|
||||
}
|
||||
else if (diffDay < 0)
|
||||
{
|
||||
e.CellAttributes[AdjustDiffDay.ColumnIndex]["data-color"] = "color3";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 按钮
|
||||
|
||||
/// <summary>
|
||||
/// 修改
|
||||
/// </summary>
|
||||
protected void btnMenuModify_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length == 0)
|
||||
{
|
||||
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
|
||||
var passLs = new List<int>() { 0, 2 };
|
||||
var model = Funs.DB.ProduceRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == Grid1.SelectedRowID);
|
||||
if (model != null)
|
||||
{
|
||||
if (!passLs.Contains(model.ApproveState.Value))
|
||||
{
|
||||
Alert.ShowInTop("只可编辑“待提交处理”和“处理退回”的记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
}
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InspectTailTermEdit.aspx?TailTermId={0}", Grid1.SelectedRowID, "编辑 - ")));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 编辑
|
||||
/// </summary>
|
||||
protected void btnModify_Click(object sender, EventArgs e)
|
||||
{
|
||||
btnMenuModify_Click(null, null);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 新增
|
||||
/// </summary>
|
||||
protected void btnNew_Click(object sender, EventArgs e)
|
||||
{
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InspectTailTermEdit.aspx?TailTermId=", "新增 - ")));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查看
|
||||
/// </summary>
|
||||
protected void btnMenuView_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length == 0)
|
||||
{
|
||||
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InspectTailTermEdit.aspx?IsView=true&TailTermId={0}", Grid1.SelectedRowID, "查看 - ")));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 删除
|
||||
/// </summary>
|
||||
protected void btnMenuDel_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length == 0)
|
||||
{
|
||||
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
var model = Funs.DB.ProduceRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == Grid1.SelectedRowID);
|
||||
if (model != null)
|
||||
{
|
||||
if (model.ApproveState != 0)
|
||||
{
|
||||
Alert.ShowInTop("只可删除待提交的记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
|
||||
Funs.DB.ProduceRun_InspectTailTerm.DeleteOnSubmit(model);
|
||||
Funs.DB.SubmitChanges();
|
||||
BindGrid();
|
||||
Alert.ShowInTop("删除成功!", MessageBoxIcon.Success);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查询
|
||||
/// </summary>
|
||||
protected void btnQuery_Click(object sender, EventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 弹框关闭
|
||||
/// </summary>
|
||||
protected void Window1_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 提交处理
|
||||
/// </summary>
|
||||
protected void btnSubmitReview_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length == 0)
|
||||
{
|
||||
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
var passLs = new List<int>() { 0, 2 };
|
||||
var model = Funs.DB.ProduceRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == Grid1.SelectedRowID);
|
||||
if (model != null)
|
||||
{
|
||||
//0:待提交处理1:待处理2:处理退回3:审核退回4:待审核5:审核通过
|
||||
if (!passLs.Contains(model.ApproveState.Value))
|
||||
{
|
||||
Alert.ShowInTop("只可提交“待提交处理”和“处理退回”的记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
model.ApproveState = 1;
|
||||
Funs.DB.SubmitChanges();
|
||||
BindGrid();
|
||||
Alert.ShowInTop("提交成功!", MessageBoxIcon.Success);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 撤回提交
|
||||
/// </summary>
|
||||
protected void btnwithdraw_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length == 0)
|
||||
{
|
||||
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
var model = Funs.DB.ProduceRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == Grid1.SelectedRowID);
|
||||
if (model != null)
|
||||
{
|
||||
//0:待提交处理1:待处理2:处理退回3:审核退回4:待审核5:审核通过
|
||||
if (model.ApproveState != 1)
|
||||
{
|
||||
Alert.ShowInTop("只可撤回“待处理”的记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
model.ApproveState = 0;
|
||||
Funs.DB.SubmitChanges();
|
||||
BindGrid();
|
||||
Alert.ShowInTop("撤回成功!", MessageBoxIcon.Success);
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 私有方法
|
||||
|
||||
/// <summary>
|
||||
/// 是否逾期返回
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public string IsOverdue(object diffDayVal, object approveStateVal)
|
||||
{
|
||||
var result = string.Empty;
|
||||
var diffDay = 0;
|
||||
var approveState = 0;
|
||||
if (diffDayVal != null) diffDay = int.Parse(diffDayVal.ToString());
|
||||
if (approveStateVal != null) approveStateVal = int.Parse(approveStateVal.ToString());
|
||||
if (approveState != 5)
|
||||
{
|
||||
if (diffDay > 0)
|
||||
{
|
||||
result = "未逾期";
|
||||
}
|
||||
else if (diffDay == 0)
|
||||
{
|
||||
result = "即将逾期";
|
||||
}
|
||||
else if (diffDay < 0)
|
||||
{
|
||||
result = "已逾期";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
result = "整改完毕";
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,215 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
|
||||
|
||||
public partial class InspectTailTermList
|
||||
{
|
||||
|
||||
/// <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>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlApproveState 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlApproveState;
|
||||
|
||||
/// <summary>
|
||||
/// txtStartTime 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtStartTime;
|
||||
|
||||
/// <summary>
|
||||
/// txtEndTime 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtEndTime;
|
||||
|
||||
/// <summary>
|
||||
/// btnQuery 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnQuery;
|
||||
|
||||
/// <summary>
|
||||
/// btnNew 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnNew;
|
||||
|
||||
/// <summary>
|
||||
/// btnModify 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnModify;
|
||||
|
||||
/// <summary>
|
||||
/// btnSubmitReview 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSubmitReview;
|
||||
|
||||
/// <summary>
|
||||
/// btnwithdraw 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnwithdraw;
|
||||
|
||||
/// <summary>
|
||||
/// lblIsOverdue 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label lblIsOverdue;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarSeparator1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarText1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarText ToolbarText1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlPageSize 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlPageSize;
|
||||
|
||||
/// <summary>
|
||||
/// Window1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window Window1;
|
||||
|
||||
/// <summary>
|
||||
/// Menu1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Menu Menu1;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuModify 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuModify;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuView 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuView;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuDel 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuDel;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,83 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InspectTemplate.aspx.cs" Inherits="FineUIPro.Web.TestRun.Produce.InspectTemplate" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title>工作包模板管理</title>
|
||||
<style>
|
||||
.f-grid-row .f-grid-cell-inner {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
|
||||
<f:Panel ID="Panel1" runat="server" ShowBorder="false" ShowHeader="false" Layout="Region">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="true" EnableCollapse="true" runat="server" DataIDField="WorkInspectId" DataKeyNames="WorkInspectId" AllowSorting="true" SortField="Sort" SortDirection="ASC" EnableColumnLines="true" AllowCellEditing="true" EnableMultiSelect="false" AllowPaging="true" IsDatabasePaging="true" PageSize="15" AllowFilters="true" OnPageIndexChange="Grid1_PageIndexChange" OnSort="Grid1_Sort" OnRowCommand="Grid1_RowCommand" ClicksToEdit="1">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" runat="server">
|
||||
<Items>
|
||||
<f:TextBox runat="server" Label="名称" LabelAlign="Right" ID="txtsWorkInspectName"></f:TextBox>
|
||||
<f:Button ID="btnSearch" Icon="SystemSearch" Text="搜索" ToolTip="搜索" EnablePostBack="true" runat="server" OnClick="btnSearch_Click"></f:Button>
|
||||
<f:ToolbarFill ID="ToolbarFill" runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnAdd" ToolTip="新增" Text="新增" Icon="Add" runat="server" OnClick="btnAdd_Click"></f:Button>
|
||||
<f:Button ID="btnEdit" ToolTip="编辑" Text="编辑" Icon="ApplicationEdit" runat="server" OnClick="btnEdit_Click"></f:Button>
|
||||
<f:Button ID="btnSave" Text="保存" ToolTip="保存" Icon="FilmSave" runat="server" OnClick="btnSave_Click"></f:Button>
|
||||
<f:TextBox runat="server" ID="hidSelectedNodeID" Hidden="true"></f:TextBox>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:RowNumberField EnablePagingNumber="true" Width="100px" HeaderTextAlign="Center" TextAlign="Center" />
|
||||
<f:RenderField HeaderText="检查事项名称" ColumnID="WorkInspectName" DataField="WorkInspectName" FieldType="String" HeaderTextAlign="Center" TextAlign="Center" Width="600px">
|
||||
<Editor>
|
||||
<f:TextBox runat="server" ID="txtWorkInspectName"></f:TextBox>
|
||||
</Editor>
|
||||
</f:RenderField>
|
||||
<f:RenderField HeaderText="备注" ColumnID="Remark" DataField="Remark" SortField="Remark"
|
||||
FieldType="String" HeaderTextAlign="Center" TextAlign="Center" Width="200px">
|
||||
<Editor>
|
||||
<f:TextBox runat="server" ID="txtRemark"></f:TextBox>
|
||||
</Editor>
|
||||
</f:RenderField>
|
||||
<f:LinkButtonField Width="100px" ConfirmText="是否确认删除当前选中数据?" ConfirmTarget="Top"
|
||||
CommandName="Delete" Icon="Delete" />
|
||||
</Columns>
|
||||
<Listeners>
|
||||
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
|
||||
</Listeners>
|
||||
<PageItems>
|
||||
<f:ToolbarSeparator ID="ToolbarSeparator2" runat="server">
|
||||
</f:ToolbarSeparator>
|
||||
<f:ToolbarText ID="ToolbarText2" runat="server" Text="每页记录数:">
|
||||
</f:ToolbarText>
|
||||
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true" OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
|
||||
<f:ListItem Text="15" Value="15" />
|
||||
<f:ListItem Text="20" Value="20" />
|
||||
<f:ListItem Text="25" Value="25" />
|
||||
<f:ListItem Text="所有行" Value="100000" />
|
||||
</f:DropDownList>
|
||||
</PageItems>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Window ID="Window1" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Parent" EnableResize="true" runat="server" IsModal="true" OnClose="Window1_Close" CloseAction="HidePostBack"
|
||||
Width="800px" Height="600px">
|
||||
</f:Window>
|
||||
</form>
|
||||
<script type="text/javascript">
|
||||
// 返回false,来阻止浏览器右键菜单
|
||||
function onRowContextMenu(event, rowId) {
|
||||
return false;
|
||||
}
|
||||
function reloadGrid() {
|
||||
__doPostBack(null, 'reloadGrid');
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,183 @@
|
|||
using BLL;
|
||||
using Model;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
public partial class InspectTemplate : PageBase
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
this.BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
#region 数据绑定
|
||||
|
||||
/// <summary>
|
||||
/// 绑定数据
|
||||
/// </summary>
|
||||
public void BindGrid()
|
||||
{
|
||||
string strSql = @"select * from ProduceRun_WorkInspectTemplate ";
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
if (!string.IsNullOrWhiteSpace(txtsWorkInspectName.Text))
|
||||
{
|
||||
strSql += "and WorkInspectName like '%" + txtsWorkInspectName.Text + "%'";
|
||||
}
|
||||
strSql += " order by Sort asc";
|
||||
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||
Grid1.RecordCount = tb.Rows.Count;
|
||||
var table = this.GetPagedDataTable(Grid1, tb);
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 搜索
|
||||
/// </summary>
|
||||
protected void btnSearch_Click(object sender, EventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 分页
|
||||
/// </summary>
|
||||
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
||||
{
|
||||
Grid1.PageIndex = e.NewPageIndex;
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
protected void Grid1_Sort(object sender, GridSortEventArgs e)
|
||||
{
|
||||
Grid1.SortDirection = e.SortDirection;
|
||||
Grid1.SortField = e.SortField;
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 分页下拉框事件
|
||||
/// </summary>
|
||||
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 行按钮事件
|
||||
/// </summary>
|
||||
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
|
||||
{
|
||||
if (e.CommandName == "Delete")
|
||||
{
|
||||
string rowID = e.RowID;
|
||||
var model = Funs.DB.ProduceRun_WorkInspectTemplate.FirstOrDefault(p => p.WorkInspectId == rowID);
|
||||
if (model != null)
|
||||
{
|
||||
Funs.DB.ProduceRun_WorkInspectTemplate.DeleteOnSubmit(model);
|
||||
Funs.DB.SubmitChanges();
|
||||
BindGrid();
|
||||
ShowNotify("删除成功!");
|
||||
}
|
||||
else
|
||||
{
|
||||
ShowNotify("删除错误!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// 保存
|
||||
/// </summary>
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
JArray mergedData = Grid1.GetMergedData();
|
||||
foreach (JObject mergedRow in mergedData)
|
||||
{
|
||||
string status = mergedRow.Value<string>("status");
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
int i = mergedRow.Value<int>("index");
|
||||
var rowid = this.Grid1.Rows[i].DataKeys[0].ToString();
|
||||
var add = false;
|
||||
ProduceRun_WorkInspectTemplate model = Funs.DB.ProduceRun_WorkInspectTemplate.FirstOrDefault(x => x.WorkInspectId == rowid);
|
||||
if (model == null)
|
||||
{
|
||||
add = true;
|
||||
model = new ProduceRun_WorkInspectTemplate();
|
||||
model.WorkInspectId = Guid.NewGuid().ToString();
|
||||
model.AddUser = this.CurrUser.UserId;
|
||||
model.AddTime = DateTime.Now;
|
||||
model.Sort = i;
|
||||
}
|
||||
model.WorkInspectName = values.Value<string>("WorkInspectName");
|
||||
model.Remark = values.Value<string>("Remark");
|
||||
if (add) Funs.DB.ProduceRun_WorkInspectTemplate.InsertOnSubmit(model);
|
||||
Funs.DB.SubmitChanges();
|
||||
}
|
||||
BindGrid();
|
||||
ShowNotify("修改成功!");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ShowNotify(ex.Message, MessageBoxIcon.Error);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 新增
|
||||
/// </summary>
|
||||
protected void btnAdd_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.hidSelectedNodeID.Text = string.Empty;
|
||||
PageContext.RegisterStartupScript(Window1.GetSaveStateReference(hidSelectedNodeID.ClientID)
|
||||
+ Window1.GetShowReference($"InspectTemplateEdit.aspx?WorkInspectId=", "新增"));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 编辑
|
||||
/// </summary>
|
||||
protected void btnEdit_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length == 0)
|
||||
{
|
||||
ShowNotify("请选择一条数据!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
var rowIndex = Grid1.SelectedRowIndex;
|
||||
var rowId = Grid1.DataKeys[rowIndex][0].ToString();
|
||||
this.hidSelectedNodeID.Text = string.Empty;
|
||||
PageContext.RegisterStartupScript(Window1.GetSaveStateReference(hidSelectedNodeID.ClientID)
|
||||
+ Window1.GetShowReference($"InspectTemplateEdit.aspx?WorkInspectId={rowId}", "编辑"));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 新增/编辑关闭
|
||||
/// </summary>
|
||||
protected void Window1_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,179 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
|
||||
|
||||
public partial class InspectTemplate
|
||||
{
|
||||
|
||||
/// <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>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// txtsWorkInspectName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtsWorkInspectName;
|
||||
|
||||
/// <summary>
|
||||
/// btnSearch 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSearch;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill;
|
||||
|
||||
/// <summary>
|
||||
/// btnAdd 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnAdd;
|
||||
|
||||
/// <summary>
|
||||
/// btnEdit 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnEdit;
|
||||
|
||||
/// <summary>
|
||||
/// btnSave 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSave;
|
||||
|
||||
/// <summary>
|
||||
/// hidSelectedNodeID 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox hidSelectedNodeID;
|
||||
|
||||
/// <summary>
|
||||
/// txtWorkInspectName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtWorkInspectName;
|
||||
|
||||
/// <summary>
|
||||
/// txtRemark 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtRemark;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarSeparator2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator2;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarText2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarText ToolbarText2;
|
||||
|
||||
/// <summary>
|
||||
/// ddlPageSize 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlPageSize;
|
||||
|
||||
/// <summary>
|
||||
/// Window1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window Window1;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,59 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InspectTemplateEdit.aspx.cs" Inherits="FineUIPro.Web.TestRun.Produce.InspectTemplateEdit" %>
|
||||
|
||||
<!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>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<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">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
|
||||
<Items>
|
||||
<f:ToolbarFill ID="ToolbarFill1" runat="server">
|
||||
</f:ToolbarFill>
|
||||
<f:Button ID="btnSave" Icon="SystemSave" runat="server" ToolTip="保存" ValidateForms="SimpleForm1" OnClick="btnSave_Click">
|
||||
</f:Button>
|
||||
<f:HiddenField ID="hdAttachUrl" runat="server">
|
||||
</f:HiddenField>
|
||||
<f:HiddenField ID="hdId" runat="server"></f:HiddenField>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:ContentPanel ID="ContentPanel2" ShowBorder="true"
|
||||
BodyPadding="10px" EnableCollapse="true" ShowHeader="false" AutoScroll="true"
|
||||
runat="server">
|
||||
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true"
|
||||
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
|
||||
<Rows>
|
||||
<f:FormRow ColumnWidth="100">
|
||||
<Items>
|
||||
<f:TextArea ID="txtWorkInspectName" runat="server" Label="检查事项名称" LabelAlign="Right" Required="true" LabelWidth="150px" MaxLength="200">
|
||||
</f:TextArea>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow ColumnWidth="50,50">
|
||||
<Items>
|
||||
<f:TextBox ID="txtRemark" runat="server" Label="备注" LabelAlign="Right" Required="true" LabelWidth="150px" MaxLength="200"></f:TextBox>
|
||||
<f:NumberBox ID="txtSort" runat="server" NoDecimal="true" Label="排序" LabelAlign="Right" Required="true" LabelWidth="150px"></f:NumberBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
</f:Form>
|
||||
</f:ContentPanel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
</f:Form>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,78 @@
|
|||
using BLL;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
public partial class InspectTemplateEdit : PageBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 主键
|
||||
/// </summary>
|
||||
public string WorkInspectId
|
||||
{
|
||||
get { return (string)ViewState["WorkInspectId"]; }
|
||||
set { ViewState["WorkInspectId"] = value; }
|
||||
}
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
this.WorkInspectId = Request.Params["WorkInspectId"];
|
||||
PageInit();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 默认绑定
|
||||
/// </summary>
|
||||
public void PageInit()
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(this.WorkInspectId))
|
||||
{
|
||||
var model = Funs.DB.ProduceRun_WorkInspectTemplate.FirstOrDefault(x => x.WorkInspectId == this.WorkInspectId);
|
||||
txtWorkInspectName.Text = model.WorkInspectName;
|
||||
txtRemark.Text = model.Remark;
|
||||
txtSort.Text = model.Sort != null ? model.Sort.ToString() : (Funs.DB.ProduceRun_WorkInspectTemplate.Count() + 1).ToString();
|
||||
}
|
||||
else
|
||||
{
|
||||
txtSort.Text = (Funs.DB.ProduceRun_WorkInspectTemplate.Count() + 1).ToString();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 保存
|
||||
/// </summary>
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
var model = Funs.DB.ProduceRun_WorkInspectTemplate.FirstOrDefault(x => x.WorkInspectId == this.WorkInspectId);
|
||||
if (model == null) model = new Model.ProduceRun_WorkInspectTemplate();
|
||||
model.WorkInspectName = txtWorkInspectName.Text;
|
||||
model.Remark = txtRemark.Text;
|
||||
model.Sort = int.Parse(txtSort.Text);
|
||||
if (string.IsNullOrWhiteSpace(this.WorkInspectId))
|
||||
{
|
||||
model.WorkInspectId = Guid.NewGuid().ToString();
|
||||
model.AddUser = this.CurrUser.UserId;
|
||||
model.AddTime = DateTime.Now;
|
||||
Funs.DB.ProduceRun_WorkInspectTemplate.InsertOnSubmit(model);
|
||||
}
|
||||
Funs.DB.SubmitChanges();
|
||||
ShowNotify("保存成功!", MessageBoxIcon.Success);
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetWriteBackValueReference(this.WorkInspectId) + ActiveWindow.GetHidePostBackReference());
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ShowNotify(ex.Message, MessageBoxIcon.Error);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,134 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
|
||||
|
||||
public partial class InspectTemplateEdit
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// SimpleForm1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form SimpleForm1;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill1;
|
||||
|
||||
/// <summary>
|
||||
/// btnSave 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSave;
|
||||
|
||||
/// <summary>
|
||||
/// hdAttachUrl 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.HiddenField hdAttachUrl;
|
||||
|
||||
/// <summary>
|
||||
/// hdId 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.HiddenField hdId;
|
||||
|
||||
/// <summary>
|
||||
/// ContentPanel2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ContentPanel ContentPanel2;
|
||||
|
||||
/// <summary>
|
||||
/// Form2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form Form2;
|
||||
|
||||
/// <summary>
|
||||
/// txtWorkInspectName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextArea txtWorkInspectName;
|
||||
|
||||
/// <summary>
|
||||
/// txtRemark 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtRemark;
|
||||
|
||||
/// <summary>
|
||||
/// txtSort 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.NumberBox txtSort;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,119 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InspectWanderAboutAllPass.aspx.cs" Inherits="FineUIPro.Web.TestRun.Produce.InspectWanderAboutAllPass" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title>全部通过</title>
|
||||
<style>
|
||||
.f-grid-row .f-grid-cell-inner {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.mycheckbox .f-field-checkbox-switch .f-field-checkbox-switch-text {
|
||||
min-width: 40px;
|
||||
}
|
||||
|
||||
.f-grid-tpl .ispass input {
|
||||
margin: 3px;
|
||||
}
|
||||
|
||||
.f-grid-tpl .ispass label {
|
||||
margin-left: 3px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
|
||||
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
|
||||
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Left">
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
|
||||
<f:ContentPanel ID="ContentPanel1" Title="全部通过" ShowBorder="true"
|
||||
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
|
||||
runat="server">
|
||||
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true"
|
||||
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label ID="lblProjectName" runat="server" Label="项目名称" LabelAlign="Right"></f:Label>
|
||||
<f:Label ID="lblProjectCode" runat="server" Label="项目号" LabelAlign="Right"></f:Label>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label ID="lblContractorName" runat="server" Label="承包商" LabelAlign="Right"></f:Label>
|
||||
<f:Label ID="lblOwnerName" runat="server" Label="业主" LabelAlign="Right"></f:Label>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label ID="lblProcessPatentName" runat="server" Label="工艺专利商" LabelAlign="Right"></f:Label>
|
||||
<f:Label ID="lblWorkPackName" runat="server" Label="工作包名称" LabelAlign="Right"></f:Label>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TextArea ID="txtUnifyWanderAboutOpinion" ShowRedStar="true" Required="true" runat="server" Label="备注" MaxLength="3000"></f:TextArea>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:ContentPanel Title="是否统一流转" ShowBorder="true" BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true" runat="server">
|
||||
<f:RadioButtonList ID="rblIsUnifyWanderAbout" Label="是否统一流转" LabelWidth="180px" LabelAlign="Right" ColumnNumber="2" runat="server" AutoColumnWidth="true">
|
||||
<f:RadioItem Text="通过" Value="1" Selected="true" />
|
||||
<f:RadioItem Text="未通过" Value="0" />
|
||||
</f:RadioButtonList>
|
||||
|
||||
<f:Panel ID="Panel3" Width="500px" ShowHeader="false" ShowBorder="false" Layout="Column" CssClass="" runat="server">
|
||||
<Items>
|
||||
<f:Label ID="lblAttach" runat="server" Label="上传附件" LabelWidth="180px" LabelAlign="Right">
|
||||
</f:Label>
|
||||
<f:Button ID="btnAttach" Icon="TableCell" EnablePostBack="true" Text="附件" runat="server" OnClick="btnAttach_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
</f:ContentPanel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
</f:Form>
|
||||
</f:ContentPanel>
|
||||
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
|
||||
<Items>
|
||||
<f:ToolbarFill ID="ToolbarFill1" runat="server">
|
||||
</f:ToolbarFill>
|
||||
<f:Button ID="btnConfirm" Icon="SystemSaveNew" runat="server" Text="确认" ToolTip="确认" ValidateForms="SimpleForm1" OnClick="btnConfirm_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
</f:Form>
|
||||
<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Parent" EnableResize="false" runat="server" IsModal="true" Width="700px"
|
||||
Height="500px">
|
||||
</f:Window>
|
||||
</form>
|
||||
<script type="text/javascript">
|
||||
// 返回false,来阻止浏览器右键菜单
|
||||
function onRowContextMenu(event, rowId) {
|
||||
return false;
|
||||
}
|
||||
function reloadGrid() {
|
||||
__doPostBack(null, 'reloadGrid');
|
||||
}
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,155 @@
|
|||
using BLL;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
public partial class InspectWanderAboutAllPass : PageBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 检查表主键
|
||||
/// </summary>
|
||||
public string SubInspectId
|
||||
{
|
||||
get { return (string)ViewState["SubInspectId"]; }
|
||||
set { ViewState["SubInspectId"] = value; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 统一处理附件
|
||||
/// </summary>
|
||||
public int UnifyImg
|
||||
{
|
||||
get { return (int)ViewState["UnifyImg"]; }
|
||||
set { ViewState["UnifyImg"] = value; }
|
||||
}
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
this.UnifyImg = 0;
|
||||
this.SubInspectId = Request["SubInspectId"];
|
||||
PageInit();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 绑定数据
|
||||
/// </summary>
|
||||
public void PageInit()
|
||||
{
|
||||
var data = from term in Funs.DB.ProduceRun_SubInspectTerm
|
||||
join pro in Funs.DB.Base_Project on term.ProjectId equals pro.ProjectId
|
||||
join ua in Funs.DB.Sys_User on term.Contractor equals ua.UserId
|
||||
join ub in Funs.DB.Sys_User on term.Owner equals ub.UserId
|
||||
join uc in Funs.DB.Sys_User on term.ProcessPatent equals uc.UserId
|
||||
where term.SubInspectId == this.SubInspectId
|
||||
select new
|
||||
{
|
||||
term.SubInspectId,
|
||||
term.ProjectId,
|
||||
pro.ProjectName,
|
||||
pro.ProjectCode,
|
||||
term.AddUser,
|
||||
term.AddTime,
|
||||
ContractorName = ua.UserName,
|
||||
OwnerName = ub.UserName,
|
||||
ProcessPatentName = uc.UserName,
|
||||
term.IsUnifyWanderAbout,
|
||||
term.UnifyWanderAboutData,
|
||||
term.UnifyWanderAboutOpinion
|
||||
};
|
||||
if (data.Count() > 0)
|
||||
{
|
||||
var model = data.FirstOrDefault();
|
||||
//项目名称
|
||||
lblProjectName.Text = model.ProjectName;
|
||||
//项目号
|
||||
lblProjectCode.Text = model.ProjectCode;
|
||||
//承包商
|
||||
lblContractorName.Text = model.ContractorName;
|
||||
//业主
|
||||
lblOwnerName.Text = model.OwnerName;
|
||||
//工艺专利商
|
||||
lblProcessPatentName.Text = model.ProcessPatentName;
|
||||
//是否统一流转
|
||||
rblIsUnifyWanderAbout.SelectedValue = model.IsUnifyWanderAbout != null ? model.IsUnifyWanderAbout.ToString() : "1";
|
||||
//审核意见
|
||||
txtUnifyWanderAboutOpinion.Text = model.UnifyWanderAboutOpinion;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 确认
|
||||
/// </summary>
|
||||
protected void btnConfirm_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (Funs.DB.AttachFile.Count(x => x.ToKeyId == this.SubInspectId + "_unify" && x.AttachUrl != null && x.AttachUrl != "") == 0)
|
||||
{
|
||||
ShowNotify("请上传附件!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
var term = Funs.DB.ProduceRun_SubInspectTerm.FirstOrDefault(x => x.SubInspectId == this.SubInspectId);
|
||||
if (term != null)
|
||||
{
|
||||
var isPass = int.Parse(rblIsUnifyWanderAbout.SelectedValue);
|
||||
term.IsUnifyWanderAbout = isPass;
|
||||
term.UnifyWanderAboutData = DateTime.Now;
|
||||
term.UnifyWanderAboutOpinion = txtUnifyWanderAboutOpinion.Text;
|
||||
term.ContractorIsAllPass = isPass;
|
||||
term.OwnerIsAllPass = isPass;
|
||||
term.ProcessPatentIsAllPass = isPass;
|
||||
term.WanderIsComplete = isPass;
|
||||
term.InspectIsClose = isPass;
|
||||
if (isPass == 1)
|
||||
{
|
||||
term.ContractorAllPassData = DateTime.Now;
|
||||
term.OwnerAllPassData = DateTime.Now;
|
||||
term.ProcessPatentAllPassData = DateTime.Now;
|
||||
term.WanderCompleteData = DateTime.Now;
|
||||
term.InspectCloseData = DateTime.Now;
|
||||
}
|
||||
else
|
||||
{
|
||||
term.ContractorAllPassData = null;
|
||||
term.OwnerAllPassData = null;
|
||||
term.ProcessPatentAllPassData = null;
|
||||
term.WanderCompleteData = null;
|
||||
term.InspectCloseData = null;
|
||||
}
|
||||
var termIetms = Funs.DB.ProduceRun_SubInspectTermItem.Where(x => x.SubInspectId == this.SubInspectId).ToList();
|
||||
if (termIetms.Count > 0)
|
||||
{
|
||||
foreach (var item in termIetms)
|
||||
{
|
||||
item.ContractorIsPass = isPass;
|
||||
item.OwnerIsPass = isPass;
|
||||
item.ProcessPatentIsPass = isPass;
|
||||
Funs.DB.SubmitChanges();
|
||||
}
|
||||
}
|
||||
ShowNotify("确认成功!", MessageBoxIcon.Success);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ShowNotify(ex.Message, MessageBoxIcon.Error);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 附件上传
|
||||
/// </summary>
|
||||
protected void btnAttach_Click(object sender, EventArgs e)
|
||||
{
|
||||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/CheckControl&menuId={2}", UnifyImg, this.SubInspectId + "_unify", Const.TestRunMenuId)));
|
||||
}
|
||||
}
|
||||
}
|
197
SGGL/FineUIPro.Web/TestRun/Produce/InspectWanderAboutAllPass.aspx.designer.cs
generated
Normal file
197
SGGL/FineUIPro.Web/TestRun/Produce/InspectWanderAboutAllPass.aspx.designer.cs
generated
Normal file
|
@ -0,0 +1,197 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
|
||||
|
||||
public partial class InspectWanderAboutAllPass
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// SimpleForm1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form SimpleForm1;
|
||||
|
||||
/// <summary>
|
||||
/// ContentPanel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ContentPanel ContentPanel1;
|
||||
|
||||
/// <summary>
|
||||
/// Form2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form Form2;
|
||||
|
||||
/// <summary>
|
||||
/// lblProjectName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblProjectName;
|
||||
|
||||
/// <summary>
|
||||
/// lblProjectCode 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblProjectCode;
|
||||
|
||||
/// <summary>
|
||||
/// lblContractorName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblContractorName;
|
||||
|
||||
/// <summary>
|
||||
/// lblOwnerName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblOwnerName;
|
||||
|
||||
/// <summary>
|
||||
/// lblProcessPatentName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblProcessPatentName;
|
||||
|
||||
/// <summary>
|
||||
/// lblWorkPackName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblWorkPackName;
|
||||
|
||||
/// <summary>
|
||||
/// txtUnifyWanderAboutOpinion 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextArea txtUnifyWanderAboutOpinion;
|
||||
|
||||
/// <summary>
|
||||
/// rblIsUnifyWanderAbout 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.RadioButtonList rblIsUnifyWanderAbout;
|
||||
|
||||
/// <summary>
|
||||
/// Panel3 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel3;
|
||||
|
||||
/// <summary>
|
||||
/// lblAttach 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblAttach;
|
||||
|
||||
/// <summary>
|
||||
/// btnAttach 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnAttach;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill1;
|
||||
|
||||
/// <summary>
|
||||
/// btnConfirm 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnConfirm;
|
||||
|
||||
/// <summary>
|
||||
/// WindowAtt 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window WindowAtt;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,127 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InspectWanderAboutAllPassList.aspx.cs" Inherits="FineUIPro.Web.TestRun.Produce.InspectWanderAboutAllPassList" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<script src="../../Controls/My97DatePicker/WdatePicker.js" type="text/javascript"></script>
|
||||
<title>检查表流转全部通过</title>
|
||||
<style type="text/css">
|
||||
.labcenter {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.f-grid-row .f-grid-cell-inner {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.LabelColor {
|
||||
color: Red;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
.Green {
|
||||
background-color: Green;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.Yellow {
|
||||
background-color: #FFFF93;
|
||||
}
|
||||
|
||||
.Red {
|
||||
background-color: red;
|
||||
}
|
||||
|
||||
.LightGreen {
|
||||
background-color: LightGreen
|
||||
}
|
||||
|
||||
.f-grid-colheader-text {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
|
||||
<f:Panel ID="Panel1" runat="server" ShowBorder="false" ShowHeader="false" Layout="Region">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" EnableAjax="false" ShowHeader="false" Title="检查表流转全部通过" EnableCollapse="true"
|
||||
runat="server" BoxFlex="1" DataKeyNames="SubInspectId" AllowCellEditing="true"
|
||||
ClicksToEdit="2" DataIDField="SubInspectId" AllowSorting="true" SortField="AddTime"
|
||||
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true" ForceFit="true"
|
||||
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
|
||||
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" AllowFilters="true" EnableTextSelection="True">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
|
||||
<Items>
|
||||
<f:ToolbarFill runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnQuery" OnClick="btnQuery_Click" ToolTip="查询" Text="搜索" Icon="SystemSearch" EnablePostBack="true" runat="server"></f:Button>
|
||||
<f:Button ID="btnAllPass" ToolTip="检查全部通过" Icon="Accept" Text="检查全部通过" runat="server" OnClick="btnAllPass_Click"></f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:RowNumberField />
|
||||
<f:RenderField ColumnID="ProjectName" DataField="ProjectName" Width="300px" HeaderText="项目名称" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ContractorName" DataField="ContractorName" Width="100px" HeaderText="承包商" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="OwnerName" DataField="OwnerName" Width="100px" HeaderText="业主" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ProcessPatentName" DataField="ProcessPatentName" Width="100px" HeaderText="工艺专利商" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="IsUnifyWanderAboutName" DataField="IsUnifyWanderAboutName" Width="100px" HeaderText="是否全部通过" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
<Listeners>
|
||||
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
|
||||
</Listeners>
|
||||
<PageItems>
|
||||
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
|
||||
</f:ToolbarSeparator>
|
||||
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
|
||||
</f:ToolbarText>
|
||||
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
|
||||
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
|
||||
<f:ListItem Text="10" Value="10" />
|
||||
<f:ListItem Text="15" Value="15" />
|
||||
<f:ListItem Text="20" Value="20" />
|
||||
<f:ListItem Text="25" Value="25" />
|
||||
<f:ListItem Text="所有行" Value="100000" />
|
||||
</f:DropDownList>
|
||||
<f:ToolbarFill runat="server">
|
||||
</f:ToolbarFill>
|
||||
|
||||
</PageItems>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Window ID="Window1" Title="检查全部通过" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Parent" EnableResize="false" runat="server" IsModal="true" CloseAction="HidePostBack" OnClose="Window1_Close" AutoScroll="true"
|
||||
Width="1300px" Height="660px">
|
||||
</f:Window>
|
||||
<f:Menu ID="Menu1" runat="server">
|
||||
<Items>
|
||||
<f:MenuButton ID="btnMenuAllPass" EnablePostBack="true" runat="server" Text="检查全部通过" Icon="Pencil"
|
||||
OnClick="btnMenuAllPass_Click">
|
||||
</f:MenuButton>
|
||||
</Items>
|
||||
</f:Menu>
|
||||
</form>
|
||||
<script type="text/javascript">
|
||||
var menuID = '<%= Menu1.ClientID %>';
|
||||
|
||||
// 返回false,来阻止浏览器右键菜单
|
||||
function onRowContextMenu(event, rowId) {
|
||||
F(menuID).show(); //showAt(event.pageX, event.pageY);
|
||||
return false;
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,123 @@
|
|||
using BLL;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data.SqlClient;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
public partial class InspectWanderAboutAllPassList : PageBase
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
#region 数据绑定
|
||||
|
||||
/// <summary>
|
||||
/// 绑定数据
|
||||
/// </summary>
|
||||
public void BindGrid()
|
||||
{
|
||||
string sqlStr = $"select a.SubInspectId,a.ProjectId,b.ProjectName,b.ProjectCode,a.AddUser,a.AddTime,c.UserName as ContractorName,d.UserName as OwnerName,e.UserName as ProcessPatentName,IsUnifyWanderAbout,(case IsUnifyWanderAbout when 1 then '是' else '否' end) as IsUnifyWanderAboutName from ProduceRun_SubInspectTerm as a inner join Base_Project as b on a.ProjectId=b.ProjectId inner join Sys_User as c on c.UserId=a.Contractor inner join Sys_User as d on d.UserId=a.Owner inner join Sys_User as e on e.UserId = a.ProcessPatent where 1 = 1 and a.InspectionIsAllPass = 1 and a.ProjectId='{this.CurrUser.LoginProjectId}' ";
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
DataTable tb = SQLHelper.GetDataTableRunText(sqlStr);
|
||||
Grid1.RecordCount = tb.Rows.Count;
|
||||
var table = this.GetPagedDataTable(Grid1, tb);
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 分页
|
||||
/// </summary>
|
||||
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
||||
{
|
||||
Grid1.PageIndex = e.NewPageIndex;
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 双击事件
|
||||
/// </summary>
|
||||
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
|
||||
{
|
||||
btnMenuAllPass_Click(null, null);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 分页下拉框
|
||||
/// </summary>
|
||||
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
protected void Grid1_Sort(object sender, GridSortEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 按钮和事件
|
||||
|
||||
/// <summary>
|
||||
/// 查询
|
||||
/// </summary>
|
||||
protected void btnQuery_Click(object sender, EventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 检查全部通过
|
||||
/// </summary>
|
||||
protected void btnAllPass_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length == 0)
|
||||
{
|
||||
Alert.ShowInTop("请选择记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (Grid1.SelectedRowIndexArray.Length > 1)
|
||||
{
|
||||
Alert.ShowInTop("只可选择一条记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InspectWanderAboutAllPass.aspx?SubInspectId={0}", Grid1.DataKeys[Grid1.SelectedRowIndex][0].ToString(), "检查全部通过 - ")));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 右击检查全部通过
|
||||
/// </summary>
|
||||
protected void btnMenuAllPass_Click(object sender, EventArgs e)
|
||||
{
|
||||
btnAllPass_Click(null, null);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 关闭
|
||||
/// </summary>
|
||||
protected void Window1_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
134
SGGL/FineUIPro.Web/TestRun/Produce/InspectWanderAboutAllPassList.aspx.designer.cs
generated
Normal file
134
SGGL/FineUIPro.Web/TestRun/Produce/InspectWanderAboutAllPassList.aspx.designer.cs
generated
Normal file
|
@ -0,0 +1,134 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
|
||||
|
||||
public partial class InspectWanderAboutAllPassList
|
||||
{
|
||||
|
||||
/// <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>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// btnQuery 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnQuery;
|
||||
|
||||
/// <summary>
|
||||
/// btnAllPass 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnAllPass;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarSeparator1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarText1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarText ToolbarText1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlPageSize 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlPageSize;
|
||||
|
||||
/// <summary>
|
||||
/// Window1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window Window1;
|
||||
|
||||
/// <summary>
|
||||
/// Menu1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Menu Menu1;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuAllPass 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuAllPass;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,137 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InspectWanderAboutConfirm.aspx.cs" Inherits="FineUIPro.Web.TestRun.Produce.InspectWanderAboutConfirm" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title>签字确认</title>
|
||||
<style>
|
||||
.f-grid-row .f-grid-cell-inner {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.mycheckbox .f-field-checkbox-switch .f-field-checkbox-switch-text {
|
||||
min-width: 40px;
|
||||
}
|
||||
|
||||
.f-grid-tpl .ispass input {
|
||||
margin: 3px;
|
||||
}
|
||||
|
||||
.f-grid-tpl .ispass label {
|
||||
margin-left: 3px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
|
||||
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
|
||||
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Left">
|
||||
<Rows>
|
||||
<f:FormRow ID="plApprove2">
|
||||
<Items>
|
||||
<f:ContentPanel ID="titleName" Title="检查项列表" ShowBorder="true"
|
||||
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
|
||||
runat="server">
|
||||
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" EnableCollapse="true" runat="server" DataIDField="TermItemId" DataKeyNames="TermItemId,InspectedUser,InspectionResults,SubInspectId,IsPass" AllowSorting="true" SortField="Sort" SortDirection="ASC" EnableColumnLines="true" AllowCellEditing="true" EnableMultiSelect="false" AllowFilters="true" OnSort="Grid1_Sort" EnableTextSelection="True" OnRowDataBound="Grid1_RowDataBound" ClicksToEdit="1">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" runat="server">
|
||||
<Items>
|
||||
<f:ToolbarFill ID="ToolbarFill" runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnExport" runat="server" Icon="ApplicationGo" Text="导出" ToolTip="导出" EnableAjax="false" OnClick="btnExport_Click"></f:Button>
|
||||
<f:Button ID="btnSave" Text="保存" ToolTip="保存" Icon="FilmSave" runat="server" OnClick="btnSave_Click"></f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:RowNumberField EnablePagingNumber="true" Width="50px" HeaderTextAlign="Center" TextAlign="Center" />
|
||||
<f:RenderField HeaderText="检查人名称" ColumnID="InspectedUserName" DataField="InspectedUserName" Width="200px"></f:RenderField>
|
||||
<f:RenderField HeaderText="检查事项" ColumnID="WorkInspectName" DataField="WorkInspectName" SortField="WorkInspectName" Width="400px"></f:RenderField>
|
||||
<f:RenderField HeaderText="检查说明" ColumnID="InspectionIllustrate" DataField="InspectionIllustrate" Width="200px"></f:RenderField>
|
||||
<f:TemplateField Width="200px" HeaderText="签字确认" ColumnID="IsPass">
|
||||
<ItemTemplate>
|
||||
<asp:RadioButtonList runat="server" RepeatLayout="Flow" CssClass="ispass" RepeatDirection="Horizontal" ID="rblIsPass" AutoPostBack="true" OnSelectedIndexChanged="rblIsPass_SelectedIndexChanged">
|
||||
<asp:ListItem Text="通过" Value="1" Selected="True"></asp:ListItem>
|
||||
<asp:ListItem Text="未通过" Value="0"></asp:ListItem>
|
||||
</asp:RadioButtonList>
|
||||
</ItemTemplate>
|
||||
</f:TemplateField>
|
||||
<f:RenderField HeaderText="备注" ColumnID="Remark" DataField="Remark" SortField="Remark"
|
||||
FieldType="String" HeaderTextAlign="Center" TextAlign="Center" Width="300px">
|
||||
<Editor>
|
||||
<f:TextBox runat="server" ID="txtRemark"></f:TextBox>
|
||||
</Editor>
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
</f:Grid>
|
||||
</f:ContentPanel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:ContentPanel ID="ContentPanel1" Title="检查项确认" ShowBorder="true"
|
||||
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
|
||||
runat="server">
|
||||
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true"
|
||||
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:RadioButtonList ID="rblIsAllPass" Label="是否同意进行预试车活动" LabelWidth="180px" LabelAlign="Right" ColumnNumber="2" runat="server" AutoColumnWidth="true" AutoPostBack="true" OnSelectedIndexChanged="rblIsAllPass_SelectedIndexChanged">
|
||||
<f:RadioItem Text="通过" Value="1" Selected="true" />
|
||||
<f:RadioItem Text="未通过" Value="0" />
|
||||
</f:RadioButtonList>
|
||||
<f:Panel ID="Panel3" Width="500px" ShowHeader="false" ShowBorder="false" Layout="Column" CssClass="" runat="server">
|
||||
<Items>
|
||||
<f:Label ID="lblAttach" runat="server" Label="上传附件" LabelWidth="180px" LabelAlign="Right">
|
||||
</f:Label>
|
||||
<f:Button ID="btnAttach" Icon="TableCell" EnablePostBack="true" Text="附件" runat="server" OnClick="btnAttach_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label ID="lblIsUnifyWanderAbout" runat="server" Label="是否统一流转通过" LabelWidth="160px" LabelAlign="Right"></f:Label>
|
||||
<f:Label ID="lblUnifyWanderAboutData" runat="server" Label="统一流转通过时间" LabelWidth="160px" LabelAlign="Right"></f:Label>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow ID="unifyfile">
|
||||
<Items>
|
||||
<f:Panel ID="Panel2" ShowHeader="false" ShowBorder="false" Layout="Column" runat="server">
|
||||
<Items>
|
||||
<f:Label runat="server" Text="统一流转通过附件:" CssStyle="padding-left:25px" Width="160px" CssClass="marginr" ShowLabel="false"></f:Label>
|
||||
<f:Button ID="btnUnifyUpload" Text="查看" ToolTip="查看" Icon="TableCell" runat="server"
|
||||
OnClick="btnUnifyUpload_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
</f:Form>
|
||||
</f:ContentPanel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
</f:Form>
|
||||
<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Parent" EnableResize="false" runat="server" IsModal="true" Width="700px"
|
||||
Height="500px">
|
||||
</f:Window>
|
||||
</form>
|
||||
<script type="text/javascript">
|
||||
// 返回false,来阻止浏览器右键菜单
|
||||
function onRowContextMenu(event, rowId) {
|
||||
return false;
|
||||
}
|
||||
function reloadGrid() {
|
||||
__doPostBack(null, 'reloadGrid');
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,649 @@
|
|||
using BLL;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NPOI.SS.UserModel;
|
||||
using NPOI.SS.Util;
|
||||
using NPOI.XSSF.UserModel;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
public partial class InspectWanderAboutConfirm : PageBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 检查表主键
|
||||
/// </summary>
|
||||
public string SubInspectId
|
||||
{
|
||||
get { return (string)ViewState["SubInspectId"]; }
|
||||
set { ViewState["SubInspectId"] = value; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 类型
|
||||
/// </summary>
|
||||
public int ConfirmType
|
||||
{
|
||||
get { return (int)ViewState["ConfirmType"]; }
|
||||
set { ViewState["ConfirmType"] = value; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 类型名称
|
||||
/// </summary>
|
||||
public string ConfirmTypeName
|
||||
{
|
||||
get { return (string)ViewState["ConfirmTypeName"]; }
|
||||
set { ViewState["ConfirmTypeName"] = value; }
|
||||
}
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
this.SubInspectId = Request.Params["SubInspectId"];
|
||||
this.ConfirmType = int.Parse(Request.Params["ConfirmType"]);
|
||||
|
||||
if (this.ConfirmType == 1)
|
||||
{
|
||||
this.ConfirmTypeName = "承包商";
|
||||
}
|
||||
if (this.ConfirmType == 2)
|
||||
{
|
||||
this.ConfirmTypeName = "业主";
|
||||
}
|
||||
if (this.ConfirmType == 3)
|
||||
{
|
||||
this.ConfirmTypeName = "工艺专利商";
|
||||
}
|
||||
this.BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#region 数据绑定
|
||||
|
||||
/// <summary>
|
||||
/// 绑定数据
|
||||
/// </summary>
|
||||
public void BindGrid(int isPass = -1)
|
||||
{
|
||||
var term = Funs.DB.ProduceRun_SubInspectTerm.FirstOrDefault(x => x.SubInspectId == this.SubInspectId);
|
||||
if (term != null)
|
||||
{
|
||||
lblIsUnifyWanderAbout.Text = term.IsUnifyWanderAbout == 1 ? "是" : "否";
|
||||
lblUnifyWanderAboutData.Text = term.UnifyWanderAboutData != null ? term.UnifyWanderAboutData.Value.ToString("yyyy-MM-dd") : string.Empty;
|
||||
unifyfile.Hidden = term.IsUnifyWanderAbout == 1 ? false : true;
|
||||
}
|
||||
var data = new List<ConfirmIsPass>();
|
||||
var queryData = from a in Funs.DB.ProduceRun_SubInspectTermItem
|
||||
join b in Funs.DB.Sys_User on a.InspectedUser equals b.UserId
|
||||
where a.SubInspectId == this.SubInspectId
|
||||
select new { a, b };
|
||||
if (queryData.Count() > 0)
|
||||
{
|
||||
var list = queryData.ToList();
|
||||
foreach (var item in list)
|
||||
{
|
||||
var model = new ConfirmIsPass();
|
||||
model.TermItemId = item.a.TermItemId;
|
||||
model.SubInspectId = item.a.SubInspectId;
|
||||
model.WorkInspectName = item.a.WorkInspectName;
|
||||
model.ConfirmType = this.ConfirmType;
|
||||
model.ConfirmTypeName = this.ConfirmTypeName;
|
||||
model.InspectedUser = item.a.InspectedUser;
|
||||
model.InspectedUserName = item.b.UserName;
|
||||
model.InspectionResults = item.a.InspectionResults.Value;
|
||||
//1=承包商=业主=工艺专利商
|
||||
if (this.ConfirmType == 1)
|
||||
{
|
||||
model.IsPass = isPass != -1 ? isPass : item.a.ContractorIsPass;
|
||||
model.Remark = item.a.ContractorRemark;
|
||||
}
|
||||
if (this.ConfirmType == 2)
|
||||
{
|
||||
model.IsPass = isPass != -1 ? isPass : item.a.OwnerIsPass;
|
||||
model.Remark = item.a.OwnerRemark;
|
||||
}
|
||||
if (this.ConfirmType == 3)
|
||||
{
|
||||
model.IsPass = isPass != -1 ? isPass : item.a.ProcessPatentIsPass;
|
||||
model.Remark = item.a.ProcessPatentRemark;
|
||||
}
|
||||
data.Add(model);
|
||||
}
|
||||
}
|
||||
Grid1.DataSource = data;
|
||||
Grid1.DataBind();
|
||||
titleName.Title = this.ConfirmType == 1 ? "承包商确认签字" : this.ConfirmType == 2 ? "业主确认签字" : this.ConfirmType == 3 ? "工艺专利商确认签字" : "";
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
protected void Grid1_Sort(object sender, GridSortEventArgs e)
|
||||
{
|
||||
Grid1.SortDirection = e.SortDirection;
|
||||
Grid1.SortField = e.SortField;
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 按钮和事件
|
||||
|
||||
/// <summary>
|
||||
/// 保存
|
||||
/// </summary>
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
JArray mergedData = Grid1.GetMergedData();
|
||||
foreach (JObject mergedRow in mergedData)
|
||||
{
|
||||
string status = mergedRow.Value<string>("status");
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
int i = mergedRow.Value<int>("index");
|
||||
GridRow row = Grid1.Rows[i];
|
||||
System.Web.UI.WebControls.RadioButtonList rblIsPass = (System.Web.UI.WebControls.RadioButtonList)row.FindControl("rblIsPass");
|
||||
var termItemId = this.Grid1.Rows[i].DataKeys[0].ToString();
|
||||
var inspectedUser = this.Grid1.Rows[i].DataKeys[1].ToString();
|
||||
var model = Funs.DB.ProduceRun_SubInspectTermItem.FirstOrDefault(x => x.TermItemId == termItemId && x.InspectedUser == inspectedUser);
|
||||
if (model != null)
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(rblIsPass.SelectedValue))
|
||||
{
|
||||
//1=承包商=业主=工艺专利商
|
||||
if (this.ConfirmType == 1)
|
||||
{
|
||||
model.ContractorIsPass = int.Parse(rblIsPass.SelectedValue);
|
||||
model.ContractorRemark = values.Value<string>("Remark");
|
||||
}
|
||||
else if (this.ConfirmType == 2)
|
||||
{
|
||||
model.OwnerIsPass = int.Parse(rblIsPass.SelectedValue);
|
||||
model.OwnerRemark = values.Value<string>("Remark");
|
||||
}
|
||||
else if (this.ConfirmType == 3)
|
||||
{
|
||||
model.ProcessPatentIsPass = int.Parse(rblIsPass.SelectedValue);
|
||||
model.ProcessPatentRemark = values.Value<string>("Remark");
|
||||
}
|
||||
}
|
||||
Funs.DB.SubmitChanges();
|
||||
}
|
||||
}
|
||||
var subInspectId = this.Grid1.Rows[0].DataKeys[3].ToString();
|
||||
var subModel = Funs.DB.ProduceRun_SubInspectTerm.FirstOrDefault(x => x.SubInspectId == subInspectId);
|
||||
if (subModel != null)
|
||||
{
|
||||
//1=承包商=业主=工艺专利商
|
||||
if (this.ConfirmType == 1)
|
||||
{
|
||||
if (Funs.DB.ProduceRun_SubInspectTermItem.Count(x => x.SubInspectId == subInspectId && x.ContractorIsPass.GetValueOrDefault() != 1) == 0)
|
||||
{
|
||||
subModel.ContractorIsAllPass = 1;
|
||||
subModel.ContractorAllPassData = DateTime.Now;
|
||||
}
|
||||
else
|
||||
{
|
||||
subModel.ContractorIsAllPass = 0;
|
||||
subModel.ContractorAllPassData = null;
|
||||
}
|
||||
}
|
||||
else if (this.ConfirmType == 2)
|
||||
{
|
||||
if (Funs.DB.ProduceRun_SubInspectTermItem.Count(x => x.SubInspectId == subInspectId && x.OwnerIsPass.GetValueOrDefault() != 1) == 0)
|
||||
{
|
||||
subModel.OwnerIsAllPass = 1;
|
||||
subModel.OwnerAllPassData = DateTime.Now;
|
||||
}
|
||||
else
|
||||
{
|
||||
subModel.OwnerIsAllPass = 0;
|
||||
subModel.OwnerAllPassData = null;
|
||||
}
|
||||
}
|
||||
else if (this.ConfirmType == 3)
|
||||
{
|
||||
if (Funs.DB.ProduceRun_SubInspectTermItem.Count(x => x.SubInspectId == subInspectId && x.ProcessPatentIsPass.GetValueOrDefault() != 1) == 0)
|
||||
{
|
||||
subModel.ProcessPatentIsAllPass = 1;
|
||||
subModel.ProcessPatentAllPassData = DateTime.Now;
|
||||
}
|
||||
else
|
||||
{
|
||||
subModel.ProcessPatentIsAllPass = 0;
|
||||
subModel.ProcessPatentAllPassData = null;
|
||||
}
|
||||
}
|
||||
//判断是否全部通过
|
||||
if (subModel.ContractorIsAllPass == 1 && subModel.OwnerIsAllPass == 1 && subModel.ProcessPatentIsAllPass == 1)
|
||||
{
|
||||
subModel.InspectIsClose = 1;
|
||||
subModel.InspectCloseData = DateTime.Now;
|
||||
subModel.WanderIsComplete = 1;
|
||||
subModel.WanderCompleteData = DateTime.Now;
|
||||
}
|
||||
else
|
||||
{
|
||||
subModel.InspectIsClose = 0;
|
||||
subModel.InspectCloseData = null;
|
||||
subModel.WanderIsComplete = 0;
|
||||
subModel.WanderCompleteData = null;
|
||||
}
|
||||
}
|
||||
Funs.DB.SubmitChanges();
|
||||
BindGrid();
|
||||
ShowNotify("保存成功!");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ShowNotify(ex.Message, MessageBoxIcon.Error);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 导出
|
||||
/// </summary>
|
||||
protected void btnExport_Click(object sender, EventArgs e)
|
||||
{
|
||||
string rootPath = Server.MapPath("~/") + Const.ExcelUrl;
|
||||
//导出文件
|
||||
string filePath = rootPath + DateTime.Now.ToString("yyyyMMddhhmmss") + "\\";
|
||||
if (!Directory.Exists(filePath))
|
||||
{
|
||||
Directory.CreateDirectory(filePath);
|
||||
}
|
||||
string ReportFileName = filePath + this.ConfirmTypeName + "确认签字.xlsx";
|
||||
//获取工作包检查表
|
||||
var termData = from a in Funs.DB.ProduceRun_SubInspectTerm
|
||||
join b in Funs.DB.Base_Project on a.ProjectId equals b.ProjectId
|
||||
select new { a.SubInspectId, a.ProjectId, b.ProjectName, b.ShortName, b.ProjectCode, a.Contractor, a.Owner, a.ProcessPatent, a.InspectionIsAllPass, a.ContractorIsAllPass, a.OwnerIsAllPass, a.ProcessPatentIsAllPass, a.InspectTime, a.AddUser, a.AddTime };
|
||||
if (termData != null)
|
||||
{
|
||||
var termModel = termData.FirstOrDefault();
|
||||
//获取工作包检查项表
|
||||
var termItems = Funs.DB.ProduceRun_SubInspectTermItem.Where(x => x.SubInspectId == this.SubInspectId).OrderBy(x => x.Sort).ToList();
|
||||
int rowIndex = 0;
|
||||
XSSFWorkbook hssfworkbook = new XSSFWorkbook();
|
||||
XSSFSheet ws = (XSSFSheet)hssfworkbook.CreateSheet(this.ConfirmTypeName + "确认签字");
|
||||
|
||||
#region 列宽
|
||||
|
||||
ws.SetColumnWidth(0, (7 * 256));
|
||||
ws.SetColumnWidth(1, (4 * 256));
|
||||
ws.SetColumnWidth(2, (4 * 256));
|
||||
ws.SetColumnWidth(3, (4 * 256));
|
||||
ws.SetColumnWidth(4, (10 * 256));
|
||||
ws.SetColumnWidth(5, (10 * 256));
|
||||
ws.SetColumnWidth(6, (10 * 256));
|
||||
ws.SetColumnWidth(7, (10 * 256));
|
||||
ws.SetColumnWidth(8, (3 * 256));
|
||||
ws.SetColumnWidth(9, (3 * 256));
|
||||
ws.SetColumnWidth(10, (3 * 256));
|
||||
ws.SetColumnWidth(11, (3 * 256));
|
||||
ws.SetColumnWidth(12, (3 * 256));
|
||||
ws.SetColumnWidth(13, (3 * 256));
|
||||
ws.SetColumnWidth(14, (3 * 256));
|
||||
ws.SetColumnWidth(15, (3 * 256));
|
||||
ws.SetColumnWidth(16, (3 * 256));
|
||||
ws.SetColumnWidth(17, (3 * 256));
|
||||
|
||||
#endregion
|
||||
|
||||
#region 样式
|
||||
//头部样式居中
|
||||
ICellStyle titleStyle = SetExcelStyle(hssfworkbook, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, VerticalAlignment.Center, HorizontalAlignment.Center, 14, true, true);
|
||||
//头部样式靠左
|
||||
ICellStyle leftTitleStyle = SetExcelStyle(hssfworkbook, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, VerticalAlignment.Center, HorizontalAlignment.Left, 14, true, true);
|
||||
//公共样式
|
||||
ICellStyle style = SetExcelStyle(hssfworkbook, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, VerticalAlignment.Center, HorizontalAlignment.Center, 10.5, true);
|
||||
//公共样式靠左
|
||||
ICellStyle leftStyle = SetExcelStyle(hssfworkbook, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, VerticalAlignment.Center, HorizontalAlignment.Left, 10.5, true);
|
||||
//公共样式靠左上对其
|
||||
ICellStyle leftTopStyle = SetExcelStyle(hssfworkbook, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, VerticalAlignment.Top, HorizontalAlignment.Left, 10.5, true);
|
||||
//公共样式加粗
|
||||
ICellStyle styleBold = SetExcelStyle(hssfworkbook, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, BorderStyle.Thin, VerticalAlignment.Center, HorizontalAlignment.Center, 10.5, true, true);
|
||||
|
||||
#endregion
|
||||
|
||||
#region 头部
|
||||
|
||||
ws = ExcelCreateRowTitle(ws, hssfworkbook, style, rowIndex, rowIndex + 5, 0, 17);
|
||||
//行1
|
||||
var region = new CellRangeAddress(rowIndex, rowIndex + 2, 0, 0);
|
||||
ws.AddMergedRegion(region);
|
||||
byte[] bytes = File.ReadAllBytes(Server.MapPath("~/") + "Images\\Template.png");
|
||||
int pictureIdx = hssfworkbook.AddPicture(bytes, PictureType.JPEG);
|
||||
IDrawing patriarch = ws.CreateDrawingPatriarch();
|
||||
IClientAnchor anchor = patriarch.CreateAnchor(0, 0, 0, 0, 0, rowIndex, 1, rowIndex + 2);
|
||||
IPicture pict = patriarch.CreatePicture(anchor, pictureIdx);
|
||||
//pict.Resize();
|
||||
region = new CellRangeAddress(rowIndex, rowIndex + 2, 1, 3);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex).GetCell(1).SetCellValue("中国五环工程有限公司");
|
||||
ws.GetRow(rowIndex).GetCell(1).CellStyle =
|
||||
ws.GetRow(rowIndex).GetCell(2).CellStyle =
|
||||
ws.GetRow(rowIndex).GetCell(3).CellStyle = leftTitleStyle;
|
||||
region = new CellRangeAddress(rowIndex, rowIndex, 4, 7);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex).GetCell(4).SetCellValue(termModel.ProjectName);
|
||||
ws.GetRow(rowIndex).GetCell(4).CellStyle = style;
|
||||
region = new CellRangeAddress(rowIndex, rowIndex, 8, 12);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex).GetCell(8).SetCellValue("项目号");
|
||||
ws.GetRow(rowIndex).GetCell(8).CellStyle = style;
|
||||
region = new CellRangeAddress(rowIndex, rowIndex, 13, 17);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex).GetCell(13).SetCellValue(termModel.ProjectCode);
|
||||
ws.GetRow(rowIndex).GetCell(13).CellStyle = style;
|
||||
region = new CellRangeAddress(rowIndex + 1, rowIndex + 1, 4, 7);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 1).GetCell(4).SetCellValue("");
|
||||
ws.GetRow(rowIndex + 1).GetCell(4).CellStyle = style;
|
||||
region = new CellRangeAddress(rowIndex + 1, rowIndex + 1, 8, 12);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 1).GetCell(8).SetCellValue("(文件号)");
|
||||
ws.GetRow(rowIndex + 1).GetCell(8).CellStyle = style;
|
||||
region = new CellRangeAddress(rowIndex + 1, rowIndex + 1, 13, 17);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 1).GetCell(13).SetCellValue("");
|
||||
ws.GetRow(rowIndex + 1).GetCell(13).CellStyle = style;
|
||||
region = new CellRangeAddress(rowIndex + 2, rowIndex + 2, 4, 7);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 2).GetCell(4).SetCellValue($"生产性能考核检查表");
|
||||
ws.GetRow(rowIndex + 2).GetCell(4).CellStyle = titleStyle;
|
||||
region = new CellRangeAddress(rowIndex + 2, rowIndex + 2, 8, 12);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 2).GetCell(8).SetCellValue("第 1 页");
|
||||
ws.GetRow(rowIndex + 2).GetCell(8).CellStyle = style;
|
||||
region = new CellRangeAddress(rowIndex + 2, rowIndex + 2, 13, 17);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 2).GetCell(13).SetCellValue("共 1 页");
|
||||
ws.GetRow(rowIndex + 2).GetCell(13).CellStyle = style;
|
||||
//行4,行5
|
||||
region = new CellRangeAddress(rowIndex + 3, rowIndex + 4, 0, 2);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 3).GetCell(0).CellStyle = style;
|
||||
ws.GetRow(rowIndex + 3).GetCell(0).SetCellValue("");
|
||||
region = new CellRangeAddress(rowIndex + 3, rowIndex + 4, 3, 11);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 3).GetCell(3).CellStyle = leftStyle;
|
||||
ws.GetRow(rowIndex + 3).GetCell(3).SetCellValue("");
|
||||
region = new CellRangeAddress(rowIndex + 3, rowIndex + 3, 12, 17);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 3).GetCell(12).CellStyle = style;
|
||||
ws.GetRow(rowIndex + 3).GetCell(12).SetCellValue("检查日期");
|
||||
region = new CellRangeAddress(rowIndex + 4, rowIndex + 4, 12, 17);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 4).GetCell(12).CellStyle = style;
|
||||
ws.GetRow(rowIndex + 4).GetCell(12).SetCellValue(DateTime.Now.ToString("yyyy年MM月dd日"));
|
||||
//行6
|
||||
ws.GetRow(rowIndex + 5).GetCell(0).CellStyle = styleBold;
|
||||
ws.GetRow(rowIndex + 5).GetCell(0).SetCellValue("序号");
|
||||
region = new CellRangeAddress(rowIndex + 5, rowIndex + 5, 1, 7);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 5).GetCell(1).CellStyle = styleBold;
|
||||
ws.GetRow(rowIndex + 5).GetCell(1).SetCellValue("检查项目");
|
||||
region = new CellRangeAddress(rowIndex + 5, rowIndex + 5, 8, 12);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 5).GetCell(8).CellStyle = styleBold;
|
||||
ws.GetRow(rowIndex + 5).GetCell(8).SetCellValue("结果");
|
||||
region = new CellRangeAddress(rowIndex + 5, rowIndex + 5, 13, 17);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 5).GetCell(13).CellStyle = styleBold;
|
||||
ws.GetRow(rowIndex + 5).GetCell(13).SetCellValue("备注");
|
||||
|
||||
#endregion
|
||||
|
||||
#region 表格
|
||||
|
||||
var start = rowIndex + 6;
|
||||
var end = rowIndex + 5 + termItems.Count;
|
||||
|
||||
ws = ExcelCreateRowTitle(ws, hssfworkbook, style, start, end, 0, 17);
|
||||
|
||||
//合并单元格
|
||||
for (int hb = start; hb <= end; hb++)
|
||||
{
|
||||
region = new CellRangeAddress(hb, hb, 1, 7);
|
||||
ws.AddMergedRegion(region);
|
||||
region = new CellRangeAddress(hb, hb, 8, 12);
|
||||
ws.AddMergedRegion(region);
|
||||
region = new CellRangeAddress(hb, hb, 13, 17);
|
||||
ws.AddMergedRegion(region);
|
||||
}
|
||||
|
||||
//数据
|
||||
int num = 1;
|
||||
var dataIndex = 6;
|
||||
foreach (var item in termItems)
|
||||
{
|
||||
//序号
|
||||
ws.GetRow(dataIndex).GetCell(0).SetCellValue(num);
|
||||
//检查项目
|
||||
ws.GetRow(dataIndex).GetCell(1).SetCellValue(item.WorkInspectName);
|
||||
ws.GetRow(dataIndex).GetCell(1).CellStyle = leftStyle;
|
||||
//结果
|
||||
ws.GetRow(dataIndex).GetCell(8).SetCellValue("");
|
||||
//备注
|
||||
ws.GetRow(dataIndex).GetCell(13).SetCellValue("");
|
||||
dataIndex++;
|
||||
num++;
|
||||
}
|
||||
rowIndex = start + termItems.Count;
|
||||
|
||||
#endregion
|
||||
|
||||
#region 尾部
|
||||
|
||||
ws = ExcelCreateRowTitle(ws, hssfworkbook, style, rowIndex, rowIndex, 0, 17, 100);
|
||||
//行1
|
||||
ws.GetRow(rowIndex).GetCell(0).SetCellValue("结论");
|
||||
region = new CellRangeAddress(rowIndex, rowIndex, 1, 17);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex).GetCell(1).SetCellValue("是否同意进行(包括整改意见):");
|
||||
ws.GetRow(rowIndex).GetCell(1).CellStyle = leftTopStyle;
|
||||
//行2
|
||||
ws = ExcelCreateRowTitle(ws, hssfworkbook, style, rowIndex + 1, rowIndex + 1, 0, 17, 80);
|
||||
ws.GetRow(rowIndex + 1).GetCell(0).SetCellValue("检查人员");
|
||||
region = new CellRangeAddress(rowIndex + 1, rowIndex + 1, 1, 4);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 1).GetCell(1).SetCellValue("施工单位:");
|
||||
ws.GetRow(rowIndex + 1).GetCell(1).CellStyle = leftTopStyle;
|
||||
region = new CellRangeAddress(rowIndex + 1, rowIndex + 1, 5, 6);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 1).GetCell(5).SetCellValue("承包商:");
|
||||
ws.GetRow(rowIndex + 1).GetCell(5).CellStyle = leftTopStyle;
|
||||
region = new CellRangeAddress(rowIndex + 1, rowIndex + 1, 7, 11);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 1).GetCell(7).SetCellValue("业主:");
|
||||
ws.GetRow(rowIndex + 1).GetCell(7).CellStyle = leftTopStyle;
|
||||
region = new CellRangeAddress(rowIndex + 1, rowIndex + 1, 12, 17);
|
||||
ws.AddMergedRegion(region);
|
||||
ws.GetRow(rowIndex + 1).GetCell(12).SetCellValue("工艺专利商:");
|
||||
ws.GetRow(rowIndex + 1).GetCell(12).CellStyle = leftTopStyle;
|
||||
|
||||
#endregion
|
||||
|
||||
ws.PrintSetup.Landscape = false;
|
||||
ws.PrintSetup.PaperSize = 9;
|
||||
ws.ForceFormulaRecalculation = true;
|
||||
using (FileStream filess = File.OpenWrite(ReportFileName))
|
||||
{
|
||||
hssfworkbook.Write(filess);
|
||||
}
|
||||
FileInfo filet = new FileInfo(ReportFileName);
|
||||
Response.Clear();
|
||||
Response.Charset = "GB2312";
|
||||
Response.ContentEncoding = System.Text.Encoding.UTF8;
|
||||
// 添加头信息,为"文件下载/另存为"对话框指定默认文件名
|
||||
Response.AddHeader("Content-Disposition", "attachment; filename=" + Server.UrlEncode(this.ConfirmTypeName + "确认签字.xlsx"));
|
||||
// 添加头信息,指定文件大小,让浏览器能够显示下载进度
|
||||
Response.AddHeader("Content-Length", filet.Length.ToString());
|
||||
// 指定返回的是一个不能被客户端读取的流,必须被下载
|
||||
Response.ContentType = "application/ms-excel";
|
||||
// 把文件流发送到客户端
|
||||
Response.WriteFile(filet.FullName);
|
||||
// 停止页面的执行
|
||||
Response.End();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 行加载事件
|
||||
/// </summary>
|
||||
protected void Grid1_RowDataBound(object sender, GridRowEventArgs e)
|
||||
{
|
||||
System.Web.UI.WebControls.RadioButtonList rblIsPass = (System.Web.UI.WebControls.RadioButtonList)Grid1.Rows[e.RowIndex].FindControl("rblIsPass");
|
||||
int isPass = 1;
|
||||
if (Grid1.DataKeys[e.RowIndex][4] != null) isPass = int.Parse(Grid1.DataKeys[e.RowIndex][4].ToString());
|
||||
rblIsPass.SelectedValue = isPass.ToString();
|
||||
if (rblIsPass.SelectedValue != "1")
|
||||
{
|
||||
rblIsAllPass.SelectedValue = "0";
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 实体绑定
|
||||
/// </summary>
|
||||
public class ConfirmIsPass
|
||||
{
|
||||
/// <summary>
|
||||
/// 检查项主键
|
||||
/// </summary>
|
||||
public string TermItemId { get; set; }
|
||||
/// <summary>
|
||||
/// 检查表主键
|
||||
/// </summary>
|
||||
public string SubInspectId { get; set; }
|
||||
/// <summary>
|
||||
/// 检查人
|
||||
/// </summary>
|
||||
public string InspectedUser { get; set; }
|
||||
/// <summary>
|
||||
/// 检查人名称
|
||||
/// </summary>
|
||||
public string InspectedUserName { get; set; }
|
||||
/// <summary>
|
||||
/// 检查结果
|
||||
/// </summary>
|
||||
public int InspectionResults { get; set; }
|
||||
/// <summary>
|
||||
/// 名称
|
||||
/// </summary>
|
||||
public string WorkInspectName { get; set; }
|
||||
/// <summary>
|
||||
/// 确认类型1=承包商2=业主3=工艺专利商
|
||||
/// </summary>
|
||||
public int ConfirmType { get; set; }
|
||||
/// <summary>
|
||||
/// 确认类型名称
|
||||
/// </summary>
|
||||
public string ConfirmTypeName { get; set; }
|
||||
/// <summary>
|
||||
/// 是否通过
|
||||
/// </summary>
|
||||
public int? IsPass { get; set; }
|
||||
/// <summary>
|
||||
/// 备注
|
||||
/// </summary>
|
||||
public string Remark { get; set; }
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 检查项确认事件
|
||||
/// </summary>
|
||||
protected void rblIsPass_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
for (int i = 0; i < Grid1.Rows.Count; i++)
|
||||
{
|
||||
System.Web.UI.WebControls.RadioButtonList rblIsPass = (System.Web.UI.WebControls.RadioButtonList)Grid1.Rows[i].FindControl("rblIsPass");
|
||||
if (rblIsPass.SelectedValue != "1")
|
||||
{
|
||||
rblIsAllPass.SelectedValue = "0";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 是否同意进行预试车活动事件
|
||||
/// </summary>
|
||||
protected void rblIsAllPass_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
BindGrid(int.Parse(rblIsAllPass.SelectedValue));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 附件上传
|
||||
/// </summary>
|
||||
protected void btnAttach_Click(object sender, EventArgs e)
|
||||
{
|
||||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CheckControl&menuId={1}", $"{this.SubInspectId}_{this.ConfirmType}", Const.TestRunMenuId)));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 统一流转通过附件查看
|
||||
/// </summary>
|
||||
protected void btnUnifyUpload_Click(object sender, EventArgs e)
|
||||
{
|
||||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=-1&toKeyId={0}&path=FileUpload/CheckControl&menuId={1}", this.SubInspectId + "_unify", Const.TestRunMenuId)));
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 私有方法
|
||||
|
||||
/// <summary>
|
||||
/// 创建样式
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static ICellStyle SetExcelStyle(XSSFWorkbook wb, BorderStyle Bottom, BorderStyle Left, BorderStyle Right, BorderStyle Top, VerticalAlignment VerAig, HorizontalAlignment HorAig, double FontSize, bool WrapText = true, bool Bold = false, string FontName = "宋体")
|
||||
{
|
||||
ICellStyle style = wb.CreateCellStyle();
|
||||
style.BorderBottom = Bottom;
|
||||
style.BorderLeft = Left;
|
||||
style.BorderRight = Right;
|
||||
style.BorderTop = Top;
|
||||
style.VerticalAlignment = VerAig;
|
||||
style.Alignment = HorAig;
|
||||
IFont font = wb.CreateFont();
|
||||
font.FontHeightInPoints = FontSize;
|
||||
font.IsBold = Bold;
|
||||
font.FontName = FontName;
|
||||
style.SetFont(font);
|
||||
style.WrapText = WrapText;
|
||||
return style;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 创建头部
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
private XSSFSheet ExcelCreateRowTitle(XSSFSheet ws, XSSFWorkbook hssfworkbook, ICellStyle style, int sRows, int eRows, int cStart, int cEnd, float height = 21)
|
||||
{
|
||||
for (int i = sRows; i <= eRows; i++)
|
||||
{
|
||||
ws.CreateRow(i);
|
||||
ws.GetRow(i).HeightInPoints = height;
|
||||
for (int j = cStart; j <= cEnd; j++)
|
||||
{
|
||||
ws.GetRow(i).CreateCell(j);
|
||||
ws.GetRow(i).CreateCell(j).CellStyle = style;
|
||||
}
|
||||
}
|
||||
return ws;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
233
SGGL/FineUIPro.Web/TestRun/Produce/InspectWanderAboutConfirm.aspx.designer.cs
generated
Normal file
233
SGGL/FineUIPro.Web/TestRun/Produce/InspectWanderAboutConfirm.aspx.designer.cs
generated
Normal file
|
@ -0,0 +1,233 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
|
||||
|
||||
public partial class InspectWanderAboutConfirm
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// SimpleForm1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form SimpleForm1;
|
||||
|
||||
/// <summary>
|
||||
/// plApprove2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.FormRow plApprove2;
|
||||
|
||||
/// <summary>
|
||||
/// titleName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ContentPanel titleName;
|
||||
|
||||
/// <summary>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill;
|
||||
|
||||
/// <summary>
|
||||
/// btnExport 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnExport;
|
||||
|
||||
/// <summary>
|
||||
/// btnSave 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSave;
|
||||
|
||||
/// <summary>
|
||||
/// rblIsPass 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.RadioButtonList rblIsPass;
|
||||
|
||||
/// <summary>
|
||||
/// txtRemark 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtRemark;
|
||||
|
||||
/// <summary>
|
||||
/// ContentPanel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ContentPanel ContentPanel1;
|
||||
|
||||
/// <summary>
|
||||
/// Form2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form Form2;
|
||||
|
||||
/// <summary>
|
||||
/// rblIsAllPass 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.RadioButtonList rblIsAllPass;
|
||||
|
||||
/// <summary>
|
||||
/// Panel3 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel3;
|
||||
|
||||
/// <summary>
|
||||
/// lblAttach 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblAttach;
|
||||
|
||||
/// <summary>
|
||||
/// btnAttach 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnAttach;
|
||||
|
||||
/// <summary>
|
||||
/// lblIsUnifyWanderAbout 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblIsUnifyWanderAbout;
|
||||
|
||||
/// <summary>
|
||||
/// lblUnifyWanderAboutData 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblUnifyWanderAboutData;
|
||||
|
||||
/// <summary>
|
||||
/// unifyfile 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.FormRow unifyfile;
|
||||
|
||||
/// <summary>
|
||||
/// Panel2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel2;
|
||||
|
||||
/// <summary>
|
||||
/// btnUnifyUpload 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnUnifyUpload;
|
||||
|
||||
/// <summary>
|
||||
/// WindowAtt 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window WindowAtt;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,129 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InspectWanderAboutList.aspx.cs" Inherits="FineUIPro.Web.TestRun.Produce.InspectWanderAboutList" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<script src="../../Controls/My97DatePicker/WdatePicker.js" type="text/javascript"></script>
|
||||
<title>检查表流转</title>
|
||||
<style type="text/css">
|
||||
.labcenter {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.f-grid-row .f-grid-cell-inner {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.LabelColor {
|
||||
color: Red;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
.Green {
|
||||
background-color: Green;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.Yellow {
|
||||
background-color: #FFFF93;
|
||||
}
|
||||
|
||||
.Red {
|
||||
background-color: red;
|
||||
}
|
||||
|
||||
.LightGreen {
|
||||
background-color: LightGreen
|
||||
}
|
||||
|
||||
.f-grid-colheader-text {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
|
||||
<f:Panel ID="Panel1" runat="server" ShowBorder="false" ShowHeader="false" Layout="Region">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" EnableAjax="false" ShowHeader="false" Title="检查表流转" EnableCollapse="true"
|
||||
runat="server" BoxFlex="1" DataKeyNames="Id,SubInspectId,ConfirmType" AllowCellEditing="true"
|
||||
ClicksToEdit="2" DataIDField="Id" AllowSorting="true" SortField="AddTime"
|
||||
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true" ForceFit="true"
|
||||
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
|
||||
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" AllowFilters="true" EnableTextSelection="True" EnableMultiSelect="false" EnableCheckBoxSelect="true">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
|
||||
<Items>
|
||||
<f:ToolbarFill runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnQuery" OnClick="btnQuery_Click" ToolTip="查询" Text="搜索" Icon="SystemSearch" EnablePostBack="true" runat="server"></f:Button>
|
||||
<f:Button ID="btnConfirmation" ToolTip="检查确认" Icon="Accept" Text="确认签字" runat="server" OnClick="btnConfirmation_Click"></f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:RowNumberField />
|
||||
<f:RenderField ColumnID="ProjectName" DataField="ProjectName" Width="300px" HeaderText="项目名称" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ConfirmName" DataField="ConfirmName" HeaderText="确认人类型" HeaderTextAlign="Center" TextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="WaitConfirmNum" DataField="WaitConfirmNum" Width="100px" HeaderText="检查项待确认数" HeaderTextAlign="Center" TextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="PassConfirmNum" DataField="PassConfirmNum" Width="110px" HeaderText="检查项确认通过数" HeaderTextAlign="Center" TextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="FailConfirmNum" DataField="FailConfirmNum" Width="110px" HeaderText="检查项确认未通过数" HeaderTextAlign="Center" TextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="IsUnifyWanderAboutName" DataField="IsUnifyWanderAboutName" Width="110px" HeaderText="是否统一流转" HeaderTextAlign="Center" TextAlign="Center">
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
<Listeners>
|
||||
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
|
||||
</Listeners>
|
||||
<PageItems>
|
||||
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
|
||||
</f:ToolbarSeparator>
|
||||
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
|
||||
</f:ToolbarText>
|
||||
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
|
||||
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
|
||||
<f:ListItem Text="10" Value="10" />
|
||||
<f:ListItem Text="15" Value="15" />
|
||||
<f:ListItem Text="20" Value="20" />
|
||||
<f:ListItem Text="25" Value="25" />
|
||||
<f:ListItem Text="所有行" Value="100000" />
|
||||
</f:DropDownList>
|
||||
<f:ToolbarFill runat="server">
|
||||
</f:ToolbarFill>
|
||||
|
||||
</PageItems>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Window ID="Window1" Title="签字确认" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Parent" EnableResize="false" runat="server" IsModal="true" CloseAction="HidePostBack" OnClose="Window1_Close" AutoScroll="true"
|
||||
Width="1300px" Height="660px">
|
||||
</f:Window>
|
||||
<f:Menu ID="Menu1" runat="server">
|
||||
<Items>
|
||||
<f:MenuButton ID="btnMenuConfirmation" EnablePostBack="true" runat="server" Text="检查确认" Icon="Pencil"
|
||||
OnClick="btnMenuConfirmation_Click">
|
||||
</f:MenuButton>
|
||||
</Items>
|
||||
</f:Menu>
|
||||
</form>
|
||||
<script type="text/javascript">
|
||||
var menuID = '<%= Menu1.ClientID %>';
|
||||
|
||||
// 返回false,来阻止浏览器右键菜单
|
||||
function onRowContextMenu(event, rowId) {
|
||||
F(menuID).show(); //showAt(event.pageX, event.pageY);
|
||||
return false;
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,131 @@
|
|||
using BLL;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data.SqlClient;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
public partial class InspectWanderAboutList : PageBase
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
#region 数据绑定
|
||||
|
||||
/// <summary>
|
||||
/// 绑定数据
|
||||
/// </summary>
|
||||
public void BindGrid()
|
||||
{
|
||||
//承包商
|
||||
string contractorStr = $"select NEWID() as Id,a.SubInspectId,a.ProjectId,b.ProjectName,b.ProjectCode,a.Contractor,a.Owner,a.ProcessPatent,1 as ConfirmType,'承包商' as ConfirmName,(select count (1) from ProduceRun_SubInspectTermItem as t where t.SubInspectId=a.SubInspectId and t.ContractorIsPass is null) as WaitConfirmNum,(select count (1) from ProduceRun_SubInspectTermItem as t where t.SubInspectId=a.SubInspectId and t.ContractorIsPass=1) as PassConfirmNum,(select count (1) from ProduceRun_SubInspectTermItem as t where t.SubInspectId=a.SubInspectId and t.ContractorIsPass=0) as FailConfirmNum,a.AddUser,a.AddTime,a.IsUnifyWanderAbout,(case IsUnifyWanderAbout when 1 then '是' else '否' end) as IsUnifyWanderAboutName from ProduceRun_SubInspectTerm as a inner join Base_Project as b on a.ProjectId=b.ProjectId where 1=1 and a.InspectionIsAllPass=1 and a.ProjectId='{this.CurrUser.LoginProjectId}' and a.Contractor='{this.CurrUser.UserId}' ";
|
||||
//业主
|
||||
string ownerStr = $"select NEWID() as Id,a.SubInspectId,a.ProjectId,b.ProjectName,b.ProjectCode,a.Contractor,a.Owner,a.ProcessPatent,2 as ConfirmType,'业主' as ConfirmName,(select count(1) from ProduceRun_SubInspectTermItem as t where t.SubInspectId = a.SubInspectId and t.OwnerIsPass is null) as WaitConfirmNum,(select count(1) from ProduceRun_SubInspectTermItem as t where t.SubInspectId = a.SubInspectId and t.OwnerIsPass = 1) as PassConfirmNum,(select count(1) from ProduceRun_SubInspectTermItem as t where t.SubInspectId = a.SubInspectId and t.OwnerIsPass = 0) as FailConfirmNum,a.AddUser,a.AddTime,a.IsUnifyWanderAbout,(case IsUnifyWanderAbout when 1 then '是' else '否' end) as IsUnifyWanderAboutName from ProduceRun_SubInspectTerm as a inner join Base_Project as b on a.ProjectId = b.ProjectId where 1=1 and a.InspectionIsAllPass = 1 and a.ProjectId = '{this.CurrUser.LoginProjectId}' and a.Owner = '{this.CurrUser.UserId}' ";
|
||||
//工艺专利商
|
||||
string processPatentStr = $"select NEWID() as Id,a.SubInspectId,a.ProjectId,b.ProjectName,b.ProjectCode,a.Contractor,a.Owner,a.ProcessPatent,3 as ConfirmType,'工艺专利商' as ConfirmName,(select count(1) from ProduceRun_SubInspectTermItem as t where t.SubInspectId = a.SubInspectId and t.ProcessPatentIsPass is null) as WaitConfirmNum,(select count(1) from ProduceRun_SubInspectTermItem as t where t.SubInspectId = a.SubInspectId and t.ProcessPatentIsPass = 1) as PassConfirmNum,(select count(1) from ProduceRun_SubInspectTermItem as t where t.SubInspectId = a.SubInspectId and t.ProcessPatentIsPass = 0) as FailConfirmNum,a.AddUser,a.AddTime,a.IsUnifyWanderAbout,(case IsUnifyWanderAbout when 1 then '是' else '否' end) as IsUnifyWanderAboutName from ProduceRun_SubInspectTerm as a inner join Base_Project as b on a.ProjectId = b.ProjectId where 1=1 and a.InspectionIsAllPass = 1 and a.InspectionIsAllPass = 1 and a.InspectionIsAllPass = 1 and a.ProjectId = '{this.CurrUser.LoginProjectId}' and a.ProcessPatent = '{this.CurrUser.UserId}' ";
|
||||
|
||||
var allSql = $"select * from ({contractorStr} union all {ownerStr} union all {processPatentStr}) as t order by t.ConfirmType asc";
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
DataTable tb = SQLHelper.GetDataTableRunText(allSql);
|
||||
Grid1.RecordCount = tb.Rows.Count;
|
||||
var table = this.GetPagedDataTable(Grid1, tb);
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 分页
|
||||
/// </summary>
|
||||
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
||||
{
|
||||
Grid1.PageIndex = e.NewPageIndex;
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 双击事件
|
||||
/// </summary>
|
||||
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
|
||||
{
|
||||
btnMenuConfirmation_Click(null, null);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 分页下拉框
|
||||
/// </summary>
|
||||
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
protected void Grid1_Sort(object sender, GridSortEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 按钮和事件
|
||||
|
||||
/// <summary>
|
||||
/// 查询
|
||||
/// </summary>
|
||||
protected void btnQuery_Click(object sender, EventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 检查确认
|
||||
/// </summary>
|
||||
protected void btnConfirmation_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length == 0)
|
||||
{
|
||||
Alert.ShowInTop("请选择记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (Grid1.SelectedRowIndexArray.Length > 1)
|
||||
{
|
||||
Alert.ShowInTop("只可选择一条记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InspectWanderAboutConfirm.aspx?SubInspectId={0}&ConfirmType={1}", Grid1.DataKeys[Grid1.SelectedRowIndex][1].ToString(), Grid1.DataKeys[Grid1.SelectedRowIndex][2].ToString(), "编辑 - ")));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 右击检查确认
|
||||
/// </summary>
|
||||
protected void btnMenuConfirmation_Click(object sender, EventArgs e)
|
||||
{
|
||||
btnConfirmation_Click(null, null);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 关闭
|
||||
/// </summary>
|
||||
protected void Window1_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
134
SGGL/FineUIPro.Web/TestRun/Produce/InspectWanderAboutList.aspx.designer.cs
generated
Normal file
134
SGGL/FineUIPro.Web/TestRun/Produce/InspectWanderAboutList.aspx.designer.cs
generated
Normal file
|
@ -0,0 +1,134 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
|
||||
|
||||
public partial class InspectWanderAboutList
|
||||
{
|
||||
|
||||
/// <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>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// btnQuery 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnQuery;
|
||||
|
||||
/// <summary>
|
||||
/// btnConfirmation 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnConfirmation;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarSeparator1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarText1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarText ToolbarText1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlPageSize 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlPageSize;
|
||||
|
||||
/// <summary>
|
||||
/// Window1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window Window1;
|
||||
|
||||
/// <summary>
|
||||
/// Menu1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Menu Menu1;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuConfirmation 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuConfirmation;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,122 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SubInspectTerm.aspx.cs" Inherits="FineUIPro.Web.TestRun.Produce.SubInspectTerm" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title>生成工作包检查</title>
|
||||
<style>
|
||||
.f-grid-row .f-grid-cell-inner {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
.customlabel span {
|
||||
color: red;
|
||||
font-weight: bold;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
|
||||
<f:Panel ID="Panel1" runat="server" ShowBorder="false" ShowHeader="false" Layout="Region">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="true" EnableCollapse="true" runat="server" DataIDField="TermItemId" DataKeyNames="TermItemId,WorkInspectId,SubInspectId" AllowSorting="true" SortField="Sort" SortDirection="ASC" EnableColumnLines="true" AllowCellEditing="true" AllowFilters="true" OnSort="Grid1_Sort" OnRowCommand="Grid1_RowCommand" IsDatabasePaging="true" BoxFlex="1" ClicksToEdit="1">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" runat="server">
|
||||
<Items>
|
||||
<f:ToolbarFill ID="ToolbarFill" runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnAdd" ToolTip="新增" Text="新增" Icon="Add" runat="server" OnClick="btnAdd_Click"></f:Button>
|
||||
<f:Button ID="btnSave" Text="保存" ToolTip="保存" Icon="FilmSave" runat="server" OnClientClick="if(!isValid()){return false;}" OnClick="btnSave_Click"></f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:RowNumberField EnablePagingNumber="true" Width="50px" HeaderTextAlign="Center" TextAlign="Center" />
|
||||
<f:RenderField HeaderText="检查事项" ColumnID="WorkInspectName" DataField="WorkInspectName" SortField="WorkInspectName" FieldType="String" HeaderTextAlign="Center" TextAlign="Left" Width="450px">
|
||||
<Editor>
|
||||
<f:TextBox runat="server" ID="txtWorkInspectName"></f:TextBox>
|
||||
</Editor>
|
||||
</f:RenderField>
|
||||
<f:RenderField ExpandUnusedSpace="true" MinWidth="100px" ColumnID="InspectedUser" DataField="InspectedUser"
|
||||
HeaderText="检查人" RendererFunction="renderInspectedUser">
|
||||
<Editor>
|
||||
<f:DropDownList ID="ddlInspectedUser" Required="true" EnableEdit="false" ForceSelection="false" runat="server">
|
||||
</f:DropDownList>
|
||||
</Editor>
|
||||
</f:RenderField>
|
||||
<f:TemplateField Width="100px" HeaderText="检查结果">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="lblInspectionResults" runat="server" Text='<%# Results(Eval("InspectionResults")) %>'></asp:Label>
|
||||
</ItemTemplate>
|
||||
</f:TemplateField>
|
||||
<f:RenderField ExpandUnusedSpace="true" MinWidth="150px" ColumnID="InspectionIllustrate" DataField="InspectionIllustrate" HeaderText="说明">
|
||||
</f:RenderField>
|
||||
<f:LinkButtonField Width="100px" ConfirmText="是否确认删除当前选中数据?" ConfirmTarget="Top"
|
||||
CommandName="Delete" Icon="Delete" />
|
||||
</Columns>
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar2" Position="Bottom" runat="server">
|
||||
<Items>
|
||||
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
|
||||
<f:DropDownList ID="ddlContractor" Required="true" Label="承包商" LabelAlign="Right" AutoSelectFirstItem="false" LabelWidth="120px" runat="server">
|
||||
</f:DropDownList>
|
||||
<f:DropDownList ID="ddlOwner" Required="true" Label="业主" LabelAlign="Right" AutoSelectFirstItem="false" LabelWidth="120px" runat="server">
|
||||
</f:DropDownList>
|
||||
<f:DropDownList ID="ddlProcessPatent" Required="true" Label="工艺专利商" LabelAlign="Right" AutoSelectFirstItem="false" LabelWidth="120px" runat="server">
|
||||
</f:DropDownList>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
</form>
|
||||
<script type="text/javascript">
|
||||
// 返回false,来阻止浏览器右键菜单
|
||||
function onRowContextMenu(event, rowId) {
|
||||
return false;
|
||||
}
|
||||
function reloadGrid() {
|
||||
__doPostBack(null, 'reloadGrid');
|
||||
}
|
||||
//检查人
|
||||
var ddlInspectedUser = '<%= ddlInspectedUser.ClientID %>';
|
||||
function renderInspectedUser(value) {
|
||||
if (value == -1) {
|
||||
return '';
|
||||
} else {
|
||||
return F(ddlInspectedUser).getTextByValue(value);
|
||||
}
|
||||
}
|
||||
|
||||
//验证
|
||||
function isValid() {
|
||||
var grid1 = F('<%= Grid1.ClientID %>');
|
||||
var valid = true, modifiedData = grid1.getMergedData();
|
||||
|
||||
$.each(modifiedData, function (index, rowData) {
|
||||
debugger;
|
||||
if (rowData.status === 'deleted') {
|
||||
return true; // continue
|
||||
}
|
||||
var name = rowData.values['InspectedUser'];
|
||||
if (typeof (name) != 'undefined' && $.trim(name) == '') {
|
||||
F.alert({
|
||||
message: '检查人不能为空!',
|
||||
ok: function () {
|
||||
grid1.startEdit(rowData.id, 'InspectedUser');
|
||||
}
|
||||
});
|
||||
|
||||
valid = false;
|
||||
|
||||
return false;
|
||||
}
|
||||
});
|
||||
return valid;
|
||||
}
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,353 @@
|
|||
using BLL;
|
||||
using Model;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
public partial class SubInspectTerm : PageBase
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
PageInit();
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
#region 数据绑定
|
||||
|
||||
/// <summary>
|
||||
/// 绑定下拉框
|
||||
/// </summary>
|
||||
public void PageInit()
|
||||
{
|
||||
//检查人绑定
|
||||
var userList = from user in Funs.DB.Sys_User
|
||||
join projectrole in Funs.DB.Project_ProjectUser on user.UserId equals projectrole.UserId
|
||||
where projectrole.ProjectId == this.CurrUser.LoginProjectId
|
||||
select user;
|
||||
var userids = new List<string>() { Const.sysglyId, Const.hfnbdId, Const.sedinId };
|
||||
var addUserList = Funs.DB.Sys_User.Where(x => userids.Contains(x.UserId));
|
||||
var users = userList.ToList();
|
||||
if (addUserList.Count() > 0)
|
||||
{
|
||||
users.AddRange(addUserList);
|
||||
}
|
||||
if (users.Count() > 0)
|
||||
{
|
||||
ddlContractor.DataTextField = "UserName";
|
||||
ddlContractor.DataValueField = "UserId";
|
||||
ddlContractor.DataSource = users;
|
||||
ddlContractor.DataBind();
|
||||
|
||||
ddlOwner.DataTextField = "UserName";
|
||||
ddlOwner.DataValueField = "UserId";
|
||||
ddlOwner.DataSource = users;
|
||||
ddlOwner.DataBind();
|
||||
|
||||
ddlProcessPatent.DataTextField = "UserName";
|
||||
ddlProcessPatent.DataValueField = "UserId";
|
||||
ddlProcessPatent.DataSource = users;
|
||||
ddlProcessPatent.DataBind();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 绑定数据
|
||||
/// </summary>
|
||||
public void BindGrid()
|
||||
{
|
||||
var result = new List<ProduceRun_SubInspectTermItem>();
|
||||
var list = Funs.DB.ProduceRun_SubInspectTermItem.Where(x => x.ProjectId == this.CurrUser.LoginProjectId).OrderBy(x => x.Sort).ToList();
|
||||
if (list.Count > 0)
|
||||
{
|
||||
foreach (var item in list)
|
||||
{
|
||||
var model = new ProduceRun_SubInspectTermItem();
|
||||
model.TermItemId = item.TermItemId;
|
||||
model.ProjectId = item.ProjectId;
|
||||
model.WorkInspectId = item.WorkInspectId;
|
||||
model.WorkInspectName = item.WorkInspectName;
|
||||
model.InspectedUser = item.InspectedUser;
|
||||
model.InspectionResults = item.InspectionResults;
|
||||
model.InspectionIllustrate = item.InspectionIllustrate;
|
||||
model.Sort = item.Sort;
|
||||
result.Add(model);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//获取预加载的数据
|
||||
var defaultDatas = Funs.DB.ProduceRun_WorkInspectTemplate.OrderBy(x => x.Sort).ToList();
|
||||
if (defaultDatas.Count > 0)
|
||||
{
|
||||
int index = list.Count + 1;
|
||||
foreach (var item in defaultDatas)
|
||||
{
|
||||
var model = new ProduceRun_SubInspectTermItem();
|
||||
model.TermItemId = Guid.NewGuid().ToString();
|
||||
model.ProjectId = this.CurrUser.LoginProjectId;
|
||||
model.WorkInspectId = item.WorkInspectId;
|
||||
model.WorkInspectName = item.WorkInspectName;
|
||||
model.Sort = index + 1;
|
||||
result.Add(model);
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
Grid1.DataSource = result;
|
||||
Grid1.DataBind();
|
||||
//检查人绑定
|
||||
var userList = from user in Funs.DB.Sys_User join projectrole in Funs.DB.Project_ProjectUser on user.UserId equals projectrole.UserId where projectrole.ProjectId == this.CurrUser.LoginProjectId select user;
|
||||
var userids = new List<string>() { Const.sysglyId, Const.hfnbdId, Const.sedinId };
|
||||
var addUserList = Funs.DB.Sys_User.Where(x => userids.Contains(x.UserId));
|
||||
var data = userList.ToList();
|
||||
if (addUserList.Count() > 0)
|
||||
{
|
||||
data.AddRange(addUserList);
|
||||
}
|
||||
DropDownList ddlInspectedUser = Grid1.FindColumn("InspectedUser").FindControl("ddlInspectedUser") as DropDownList;
|
||||
ddlInspectedUser.DataTextField = "UserName";
|
||||
ddlInspectedUser.DataValueField = "UserId";
|
||||
ddlInspectedUser.DataSource = data;
|
||||
ddlInspectedUser.DataBind();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
protected void Grid1_Sort(object sender, GridSortEventArgs e)
|
||||
{
|
||||
Grid1.SortDirection = e.SortDirection;
|
||||
Grid1.SortField = e.SortField;
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 行按钮事件
|
||||
/// </summary>
|
||||
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
|
||||
{
|
||||
if (e.CommandName == "Delete")
|
||||
{
|
||||
string rowID = e.RowID;
|
||||
var model = Funs.DB.ProduceRun_SubInspectTermItem.FirstOrDefault(p => p.TermItemId == rowID);
|
||||
if (model != null)
|
||||
{
|
||||
if (model.InspectionResults != null)
|
||||
{
|
||||
ShowNotify("已存在检查结果,无法删除!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
Funs.DB.ProduceRun_SubInspectTermItem.DeleteOnSubmit(model);
|
||||
Funs.DB.SubmitChanges();
|
||||
BindGrid();
|
||||
ShowNotify("删除成功!");
|
||||
}
|
||||
else
|
||||
{
|
||||
var list = gvList();
|
||||
list.RemoveAll(x => x.TermItemId == rowID);
|
||||
Grid1.DataSource = list;
|
||||
Grid1.DataBind();
|
||||
ShowNotify("删除成功!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// 保存
|
||||
/// </summary>
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(ddlContractor.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择承包商!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddlOwner.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择业主!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddlProcessPatent.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择工艺专利商!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
List<ProduceRun_SubInspectTerm> subTrems = new List<ProduceRun_SubInspectTerm>();
|
||||
List<ProduceRun_SubInspectTermItem> subTremItems = new List<ProduceRun_SubInspectTermItem>();
|
||||
var subTrem = Funs.DB.ProduceRun_SubInspectTerm.FirstOrDefault(x => x.ProjectId == this.CurrUser.LoginProjectId);
|
||||
var termItems = Funs.DB.ProduceRun_SubInspectTermItem.Where(x => x.ProjectId == this.CurrUser.LoginProjectId).ToList();
|
||||
if (termItems.Count > 0 && termItems.Count(x => x.InspectionResults == null) == 0)
|
||||
{
|
||||
ShowNotify("所有检查项已存在检查结果,无法保存!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
JArray mergedData = Grid1.GetMergedData();
|
||||
foreach (JObject mergedRow in mergedData)
|
||||
{
|
||||
string status = mergedRow.Value<string>("status");
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
int i = mergedRow.Value<int>("index");
|
||||
var termItemId = this.Grid1.Rows[i].DataKeys[0].ToString();
|
||||
var workInspectId = this.Grid1.Rows[i].DataKeys[1].ToString();
|
||||
|
||||
//获取子系统信息
|
||||
var list = new List<ProduceRun_SubInspectTermItem>();
|
||||
if (subTrem == null)
|
||||
{
|
||||
subTrem = new ProduceRun_SubInspectTerm();
|
||||
subTrem.SubInspectId = Guid.NewGuid().ToString();
|
||||
subTrem.ProjectId = this.CurrUser.LoginProjectId;
|
||||
subTrem.Contractor = ddlContractor.SelectedValue;
|
||||
subTrem.Owner = ddlOwner.SelectedValue;
|
||||
subTrem.ProcessPatent = ddlProcessPatent.SelectedValue;
|
||||
subTrem.AddUser = this.CurrUser.UserId;
|
||||
subTrem.AddTime = DateTime.Now;
|
||||
subTrems.Add(subTrem);
|
||||
}
|
||||
else
|
||||
{
|
||||
subTrem.Contractor = ddlContractor.SelectedValue;
|
||||
subTrem.Owner = ddlOwner.SelectedValue;
|
||||
subTrem.ProcessPatent = ddlProcessPatent.SelectedValue;
|
||||
Funs.DB.SubmitChanges();
|
||||
}
|
||||
var model = Funs.DB.ProduceRun_SubInspectTermItem.FirstOrDefault(x => x.TermItemId == termItemId);
|
||||
if (model == null)
|
||||
{
|
||||
model = new ProduceRun_SubInspectTermItem();
|
||||
model.TermItemId = termItemId;
|
||||
model.SubInspectId = subTrem.SubInspectId;
|
||||
model.ProjectId = this.CurrUser.LoginProjectId;
|
||||
model.WorkInspectId = workInspectId;
|
||||
model.WorkInspectName = values.Value<string>("WorkInspectName");
|
||||
model.InspectedUser = !string.IsNullOrWhiteSpace(values.Value<string>("InspectedUser")) ? values.Value<string>("InspectedUser") : string.Empty;
|
||||
subTrem.Contractor = ddlContractor.SelectedValue;
|
||||
subTrem.Owner = ddlOwner.SelectedValue;
|
||||
subTrem.ProcessPatent = ddlProcessPatent.SelectedValue;
|
||||
model.AddUser = this.CurrUser.UserId;
|
||||
model.AddTime = DateTime.Now;
|
||||
model.Sort = i + 1;
|
||||
subTremItems.Add(model);
|
||||
}
|
||||
else
|
||||
{
|
||||
model.InspectedUser = !string.IsNullOrWhiteSpace(values.Value<string>("InspectedUser")) ? values.Value<string>("InspectedUser") : string.Empty;
|
||||
model.WorkInspectName = values.Value<string>("WorkInspectName");
|
||||
Funs.DB.SubmitChanges();
|
||||
}
|
||||
}
|
||||
|
||||
if (subTrems != null) Funs.DB.ProduceRun_SubInspectTerm.InsertAllOnSubmit(subTrems);
|
||||
if (subTremItems.Count > 0) Funs.DB.ProduceRun_SubInspectTermItem.InsertAllOnSubmit(subTremItems);
|
||||
Funs.DB.SubmitChanges();
|
||||
if (Funs.DB.ProduceRun_SubInspectTermItem.Count(x => x.SubInspectId == subTrem.SubInspectId && x.InspectionResults.GetValueOrDefault() != 1) == 0)
|
||||
{
|
||||
subTrem.InspectionIsAllPass = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
subTrem.InspectionIsAllPass = 0;
|
||||
}
|
||||
Funs.DB.SubmitChanges();
|
||||
BindGrid();
|
||||
ShowNotify("保存成功!");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ShowNotify(ex.Message, MessageBoxIcon.Error);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 新增
|
||||
/// </summary>
|
||||
protected void btnAdd_Click(object sender, EventArgs e)
|
||||
{
|
||||
var list = gvList();
|
||||
var termItems = Funs.DB.ProduceRun_SubInspectTermItem.Where(x => x.ProjectId == this.CurrUser.LoginProjectId).ToList();
|
||||
if (termItems.Count > 0 && termItems.Count(x => x.InspectionResults == null) == 0)
|
||||
{
|
||||
ShowNotify("所有检查项已存在检查结果,无法新增!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
var model = new ProduceRun_SubInspectTermItem();
|
||||
model.TermItemId = Guid.NewGuid().ToString();
|
||||
model.ProjectId = this.CurrUser.LoginProjectId;
|
||||
model.WorkInspectId = string.Empty;
|
||||
model.WorkInspectName = string.Empty;
|
||||
model.Sort = list.Count + 1;
|
||||
list.Add(model);
|
||||
Grid1.DataSource = list;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取集合
|
||||
/// </summary>
|
||||
private List<ProduceRun_SubInspectTermItem> gvList()
|
||||
{
|
||||
List<ProduceRun_SubInspectTermItem> list = new List<ProduceRun_SubInspectTermItem>();
|
||||
JArray mergedData = Grid1.GetMergedData();
|
||||
foreach (JObject mergedRow in mergedData)
|
||||
{
|
||||
string status = mergedRow.Value<string>("status");
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
int i = mergedRow.Value<int>("index");
|
||||
var termItemId = this.Grid1.Rows[i].DataKeys[0].ToString();
|
||||
var workInspectId = this.Grid1.Rows[i].DataKeys[1] != null ? this.Grid1.Rows[i].DataKeys[1].ToString() : string.Empty;
|
||||
var subInspectId = this.Grid1.Rows[i].DataKeys[2] != null ? this.Grid1.Rows[i].DataKeys[2].ToString() : string.Empty;
|
||||
|
||||
var model = new ProduceRun_SubInspectTermItem();
|
||||
model.TermItemId = termItemId;
|
||||
model.SubInspectId = subInspectId;
|
||||
model.ProjectId = this.CurrUser.LoginProjectId;
|
||||
model.WorkInspectId = workInspectId;
|
||||
model.WorkInspectName = values.Value<string>("WorkInspectName");
|
||||
model.InspectedUser = !string.IsNullOrWhiteSpace(values.Value<string>("InspectedUser")) ? values.Value<string>("InspectedUser") : string.Empty;
|
||||
model.AddUser = this.CurrUser.UserId;
|
||||
model.AddTime = DateTime.Now;
|
||||
model.Sort = i + 1;
|
||||
list.Add(model);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 检测结果
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public string Results(object value)
|
||||
{
|
||||
var result = string.Empty;
|
||||
|
||||
if (value != null)
|
||||
{
|
||||
var intVal = int.Parse(value.ToString());
|
||||
if (intVal == 1)
|
||||
{
|
||||
result = "通过";
|
||||
}
|
||||
else if (intVal == 0)
|
||||
{
|
||||
result = "未通过";
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,161 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
|
||||
|
||||
public partial class SubInspectTerm
|
||||
{
|
||||
|
||||
/// <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>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill;
|
||||
|
||||
/// <summary>
|
||||
/// btnAdd 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnAdd;
|
||||
|
||||
/// <summary>
|
||||
/// btnSave 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSave;
|
||||
|
||||
/// <summary>
|
||||
/// txtWorkInspectName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtWorkInspectName;
|
||||
|
||||
/// <summary>
|
||||
/// ddlInspectedUser 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlInspectedUser;
|
||||
|
||||
/// <summary>
|
||||
/// lblInspectionResults 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label lblInspectionResults;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar2;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlContractor 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlContractor;
|
||||
|
||||
/// <summary>
|
||||
/// ddlOwner 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlOwner;
|
||||
|
||||
/// <summary>
|
||||
/// ddlProcessPatent 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlProcessPatent;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,112 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SubWorkInspect.aspx.cs" Inherits="FineUIPro.Web.TestRun.Produce.SubWorkInspect" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title>工作包检查</title>
|
||||
<style>
|
||||
.f-grid-row .f-grid-cell-inner {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.hidethis {
|
||||
display: none;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
|
||||
<f:Panel ID="Panel1" runat="server" ShowBorder="false" ShowHeader="false" Layout="Region">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="true" EnableCollapse="true" runat="server" DataIDField="TermItemId" DataKeyNames="TermItemId,InspectionResults,SubInspectId,IsTailTerm" AllowSorting="true" SortField="Sort" SortDirection="ASC" EnableColumnLines="true" AllowCellEditing="true" EnableMultiSelect="false" AllowFilters="true" OnSort="Grid1_Sort" EnableTextSelection="True" OnRowCommand="Grid1_RowCommand" OnRowDataBound="Grid1_RowDataBound" ClicksToEdit="1">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" runat="server">
|
||||
<Items>
|
||||
<f:ToolbarFill ID="ToolbarFill" runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnSave" Text="保存" ToolTip="保存" Icon="FilmSave" runat="server" OnClientClick="if(!isValid()){return false;}" OnClick="btnSave_Click"></f:Button>
|
||||
<f:TextBox runat="server" ID="hidTailTermId" Hidden="true"></f:TextBox>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:RowNumberField EnablePagingNumber="true" Width="50px" HeaderTextAlign="Center" TextAlign="Center" />
|
||||
<f:RenderField HeaderText="检查事项" ColumnID="WorkInspectName" DataField="WorkInspectName" SortField="WorkInspectName" Width="300px"></f:RenderField>
|
||||
<f:RenderField ExpandUnusedSpace="true" MinWidth="300px" ColumnID="InspectionIllustrate" DataField="InspectionIllustrate" HeaderText="说明">
|
||||
<Editor>
|
||||
<f:TextArea runat="server" ID="txtInspectionIllustrate"></f:TextArea>
|
||||
</Editor>
|
||||
</f:RenderField>
|
||||
<f:RenderField ExpandUnusedSpace="true" MinWidth="150px" ColumnID="InspectionResults" DataField="InspectionResults"
|
||||
HeaderText="检查结果" RendererFunction="renderInspectionResults">
|
||||
<Editor>
|
||||
<f:DropDownList ID="ddlInspectionResults" Required="true" EnableEdit="false" ForceSelection="false" runat="server">
|
||||
<f:ListItem Value="1" Text="通过" />
|
||||
<f:ListItem Value="0" Text="未通过" />
|
||||
</f:DropDownList>
|
||||
</Editor>
|
||||
</f:RenderField>
|
||||
<f:LinkButtonField Width="100px" TextAlign="Center" ColumnID="TailTerm" CommandName="TailTerm" Text="尾项申请" />
|
||||
<f:LinkButtonField Width="100px" TextAlign="Center" ColumnID="TailTermUpdate" CommandName="TailTermUpdate" Text="尾项修改" />
|
||||
</Columns>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Window ID="Window1" Title="检查项巡检" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Parent" EnableResize="false" runat="server" IsModal="true" OnClose="Window1_Close"
|
||||
Width="1300px" Height="660px">
|
||||
</f:Window>
|
||||
<f:Window ID="Window2" Title="请选择尾项" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Top" EnableResize="true" runat="server" IsModal="true" OnClose="Window2_Close"
|
||||
Width="1300px" Height="660px">
|
||||
</f:Window>
|
||||
|
||||
</form>
|
||||
<script type="text/javascript">
|
||||
// 返回false,来阻止浏览器右键菜单
|
||||
function onRowContextMenu(event, rowId) {
|
||||
return false;
|
||||
}
|
||||
function reloadGrid() {
|
||||
__doPostBack(null, 'reloadGrid');
|
||||
}
|
||||
//检查结果
|
||||
var ddlInspectionResults = '<%= ddlInspectionResults.ClientID %>';
|
||||
function renderInspectionResults(value) {
|
||||
if (value == -1) {
|
||||
return '';
|
||||
}
|
||||
return F(ddlInspectionResults).getTextByValue(value);
|
||||
}
|
||||
|
||||
//验证检查结果
|
||||
function isValid() {
|
||||
debugger;
|
||||
var grid1 = F('<%= Grid1.ClientID %>');
|
||||
var valid = true, modifiedData = grid1.getMergedData();
|
||||
|
||||
$.each(modifiedData, function (index, rowData) {
|
||||
if (rowData.status === 'deleted') {
|
||||
return true;
|
||||
}
|
||||
var results = rowData.values['InspectionResults'];
|
||||
if (typeof (results) != 'undefined' && $.trim(results) == '') {
|
||||
F.alert({
|
||||
message: '请选择检查结果!',
|
||||
ok: function () {
|
||||
grid1.startEdit(rowData.id, 'InspectionResults');
|
||||
}
|
||||
});
|
||||
valid = false;
|
||||
return false;
|
||||
}
|
||||
});
|
||||
return valid;
|
||||
}
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,374 @@
|
|||
using BLL;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
public partial class SubWorkInspect : PageBase
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
this.BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
#region 数据绑定
|
||||
|
||||
/// <summary>
|
||||
/// 绑定数据
|
||||
/// </summary>
|
||||
public void BindGrid(bool istail = false)
|
||||
{
|
||||
//获取子系统
|
||||
var data = from termitem in Funs.DB.ProduceRun_SubInspectTermItem
|
||||
join b in Funs.DB.ProduceRun_InspectTailTerm on termitem.TermItemId equals b.TermItemId into t
|
||||
from tail in t.DefaultIfEmpty()
|
||||
where termitem.ProjectId == this.CurrUser.LoginProjectId
|
||||
&& termitem.InspectedUser == this.CurrUser.UserId
|
||||
group termitem by new { termitem.TermItemId, termitem.SubInspectId, termitem.ProjectId, termitem.WorkInspectId, termitem.WorkInspectName,termitem.InspectedUser, termitem.InspectionResults, termitem.InspectionIllustrate, termitem.Contractor, termitem.Owner, termitem.ProcessPatent, termitem.ContractorIsPass, termitem.OwnerIsPass, termitem.ProcessPatentIsPass, termitem.ContractorRemark, termitem.OwnerRemark, termitem.ProcessPatentRemark, termitem.Remark, termitem.AddUser, termitem.AddTime, termitem.Sort, IsTailTerm = tail.TailTermId == null ? 0 : 1 } into gt
|
||||
orderby gt.Key.Sort
|
||||
select new TermItemBridDto()
|
||||
{
|
||||
TermItemId = gt.Key.TermItemId,
|
||||
SubInspectId = gt.Key.SubInspectId,
|
||||
ProjectId = gt.Key.ProjectId,
|
||||
WorkInspectId = gt.Key.WorkInspectId,
|
||||
WorkInspectName = gt.Key.WorkInspectName,
|
||||
InspectedUser = gt.Key.InspectedUser,
|
||||
InspectionResults = gt.Key.InspectionResults,
|
||||
InspectionIllustrate = gt.Key.InspectionIllustrate,
|
||||
Contractor = gt.Key.Contractor,
|
||||
Owner = gt.Key.Owner,
|
||||
ProcessPatent = gt.Key.ProcessPatent,
|
||||
ContractorIsPass = gt.Key.ContractorIsPass,
|
||||
OwnerIsPass = gt.Key.OwnerIsPass,
|
||||
ProcessPatentIsPass = gt.Key.ProcessPatentIsPass,
|
||||
ContractorRemark = gt.Key.ContractorRemark,
|
||||
OwnerRemark = gt.Key.OwnerRemark,
|
||||
ProcessPatentRemark = gt.Key.ProcessPatentRemark,
|
||||
Remark = gt.Key.Remark,
|
||||
AddUser = gt.Key.AddUser,
|
||||
AddTime = gt.Key.AddTime,
|
||||
Sort = gt.Key.Sort,
|
||||
IsTailTerm = gt.Key.IsTailTerm
|
||||
};
|
||||
var list = data.ToList();
|
||||
if (istail)
|
||||
{
|
||||
JArray mergedData = Grid1.GetMergedData();
|
||||
list.ForEach(a =>
|
||||
{
|
||||
var itemRow = mergedData.FirstOrDefault(x => x.Value<string>("id") == a.TermItemId);
|
||||
JObject values = itemRow.Value<JObject>("values");
|
||||
var inspectionResults = !string.IsNullOrWhiteSpace(values.Value<string>("InspectionResults")) ? values.Value<string>("InspectionResults") : string.Empty;
|
||||
if (!string.IsNullOrWhiteSpace(inspectionResults))
|
||||
{
|
||||
a.InspectionResults = int.Parse(inspectionResults);
|
||||
}
|
||||
});
|
||||
}
|
||||
Grid1.DataSource = list;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
protected void Grid1_Sort(object sender, GridSortEventArgs e)
|
||||
{
|
||||
Grid1.SortDirection = e.SortDirection;
|
||||
Grid1.SortField = e.SortField;
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 保存
|
||||
|
||||
/// <summary>
|
||||
/// 保存
|
||||
/// </summary>
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
var subInspectId = this.Grid1.Rows[0].DataKeys[2].ToString();
|
||||
if (Funs.DB.ProduceRun_SubInspectTermItem.Count(x => x.SubInspectId == subInspectId && (x.ContractorIsPass != null || x.OwnerIsPass != null || x.ProcessPatentIsPass != null)) > 0)
|
||||
{
|
||||
ShowNotify("已进入检查表流转,无法修改检查结果!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
JArray mergedData = Grid1.GetMergedData();
|
||||
foreach (JObject mergedRow in mergedData)
|
||||
{
|
||||
string status = mergedRow.Value<string>("status");
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
int i = mergedRow.Value<int>("index");
|
||||
var termItemId = this.Grid1.Rows[i].DataKeys[0].ToString();
|
||||
if (values.Value<string>("InspectionResults") == "0")
|
||||
{
|
||||
if (Funs.DB.ProduceRun_InspectTailTerm.Count(x => x.TermItemId == termItemId) == 0)
|
||||
{
|
||||
ShowNotify("未通过的检查项请填写尾项!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
foreach (JObject mergedRow in mergedData)
|
||||
{
|
||||
string status = mergedRow.Value<string>("status");
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
int i = mergedRow.Value<int>("index");
|
||||
var termItemId = this.Grid1.Rows[i].DataKeys[0].ToString();
|
||||
//获取子系统信息
|
||||
var model = Funs.DB.ProduceRun_SubInspectTermItem.FirstOrDefault(x => x.TermItemId == termItemId);
|
||||
if (model != null)
|
||||
{
|
||||
model.InspectionIllustrate = !string.IsNullOrWhiteSpace(values.Value<string>("InspectionIllustrate")) ? values.Value<string>("InspectionIllustrate") : string.Empty;
|
||||
if (!string.IsNullOrWhiteSpace(values.Value<string>("InspectionResults")))
|
||||
{
|
||||
model.InspectionResults = int.Parse(values.Value<string>("InspectionResults"));
|
||||
}
|
||||
Funs.DB.SubmitChanges();
|
||||
}
|
||||
}
|
||||
var subModel = Funs.DB.ProduceRun_SubInspectTerm.FirstOrDefault(x => x.SubInspectId == subInspectId);
|
||||
if (subModel != null)
|
||||
{
|
||||
if (Funs.DB.ProduceRun_SubInspectTermItem.Count(x => x.SubInspectId == subInspectId && x.InspectionResults.GetValueOrDefault() != 1) == 0)
|
||||
{
|
||||
subModel.InspectionIsAllPass = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
subModel.InspectionIsAllPass = 0;
|
||||
}
|
||||
}
|
||||
Funs.DB.SubmitChanges();
|
||||
BindGrid();
|
||||
ShowNotify("保存成功!");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ShowNotify(ex.Message, MessageBoxIcon.Error);
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// 尾项数据绑定实体
|
||||
/// </summary>
|
||||
public class TermItemBridDto
|
||||
{
|
||||
/// <summary>
|
||||
/// 主键
|
||||
/// </summary>
|
||||
public string TermItemId { get; set; }
|
||||
/// <summary>
|
||||
/// 检查项主键
|
||||
/// </summary>
|
||||
public string SubItemId { get; set; }
|
||||
/// <summary>
|
||||
/// 检查表主键
|
||||
/// </summary>
|
||||
public string SubInspectId { get; set; }
|
||||
/// <summary>
|
||||
/// 工作包主键
|
||||
/// </summary>
|
||||
public string WorkPackId { get; set; }
|
||||
/// <summary>
|
||||
/// 项目主键
|
||||
/// </summary>
|
||||
public string ProjectId { get; set; }
|
||||
/// <summary>
|
||||
/// 工作包模板项主键
|
||||
/// </summary>
|
||||
public string WorkInspectId { get; set; }
|
||||
/// <summary>
|
||||
/// 检查事项名称
|
||||
/// </summary>
|
||||
public string WorkInspectName { get; set; }
|
||||
/// <summary>
|
||||
/// 检查人主键
|
||||
/// </summary>
|
||||
public string InspectedUser { get; set; }
|
||||
/// <summary>
|
||||
/// 检查结果0:未通过 1:通过
|
||||
/// </summary>
|
||||
public int? InspectionResults { get; set; }
|
||||
/// <summary>
|
||||
/// 检查说明
|
||||
/// </summary>
|
||||
public string InspectionIllustrate { get; set; }
|
||||
/// <summary>
|
||||
/// 承包商
|
||||
/// </summary>
|
||||
public string Contractor { get; set; }
|
||||
/// <summary>
|
||||
/// 业主
|
||||
/// </summary>
|
||||
public string Owner { get; set; }
|
||||
/// <summary>
|
||||
/// 工艺专利商
|
||||
/// </summary>
|
||||
public string ProcessPatent { get; set; }
|
||||
/// <summary>
|
||||
/// 承包商是否通过0/null:未通过 1:通过
|
||||
/// </summary>
|
||||
public int? ContractorIsPass { get; set; }
|
||||
/// <summary>
|
||||
/// 业主是否通过0/null:未通过 1:通过
|
||||
/// </summary>
|
||||
public int? OwnerIsPass { get; set; }
|
||||
/// <summary>
|
||||
/// 工艺专利商是否通过0/null:未通过 1:通过
|
||||
/// </summary>
|
||||
public int? ProcessPatentIsPass { get; set; }
|
||||
/// <summary>
|
||||
/// 承包商备注
|
||||
/// </summary>
|
||||
public string ContractorRemark { get; set; }
|
||||
/// <summary>
|
||||
/// 业主备注
|
||||
/// </summary>
|
||||
public string OwnerRemark { get; set; }
|
||||
/// <summary>
|
||||
/// 工艺专利商备注
|
||||
/// </summary>
|
||||
public string ProcessPatentRemark { get; set; }
|
||||
/// <summary>
|
||||
/// 备注
|
||||
/// </summary>
|
||||
public string Remark { get; set; }
|
||||
/// <summary>
|
||||
/// 添加人
|
||||
/// </summary>
|
||||
public string AddUser { get; set; }
|
||||
/// <summary>
|
||||
/// 添加日期
|
||||
/// </summary>
|
||||
public DateTime? AddTime { get; set; }
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
public int? Sort { get; set; }
|
||||
/// <summary>
|
||||
/// 是否存在尾项0:不存在1:存在
|
||||
/// </summary>
|
||||
public int IsTailTerm { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 行内按钮事件
|
||||
/// </summary>
|
||||
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
|
||||
{
|
||||
//尾项申请
|
||||
if (e.CommandName == "TailTerm")
|
||||
{
|
||||
var termItemId = Grid1.DataKeys[e.RowIndex][0].ToString();
|
||||
var inspectionResults = Grid1.DataKeys[e.RowIndex][1] != null ? int.Parse(Grid1.DataKeys[e.RowIndex][1].ToString()) : -1;
|
||||
if (inspectionResults == 0)
|
||||
{
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InspectTailTermEdit.aspx?TailTermId={0}&TermItemId={1}", "", termItemId, "新增 - ")));
|
||||
}
|
||||
else
|
||||
{
|
||||
JArray mergedData = Grid1.GetMergedData();
|
||||
var itemRow = mergedData[e.RowIndex].Value<JObject>("values");
|
||||
if (itemRow.Value<string>("InspectionResults") == "0")
|
||||
{
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InspectTailTermEdit.aspx?TailTermId={0}&TermItemId={1}", "", termItemId, "新增 - ")));
|
||||
}
|
||||
else
|
||||
{
|
||||
ShowNotify("仅未通过检查项才可填写!", MessageBoxIcon.Warning);
|
||||
}
|
||||
}
|
||||
}
|
||||
//尾项修改
|
||||
if (e.CommandName == "TailTermUpdate")
|
||||
{
|
||||
var termItemId = Grid1.DataKeys[e.RowIndex][0].ToString();
|
||||
var inspectionResults = Grid1.DataKeys[e.RowIndex][1] != null ? int.Parse(Grid1.DataKeys[e.RowIndex][1].ToString()) : -1;
|
||||
if (inspectionResults == 0)
|
||||
{
|
||||
var tails = Funs.DB.ProduceRun_InspectTailTerm.Where(x => x.TermItemId == termItemId).ToList();
|
||||
if (tails.Count > 0)
|
||||
{
|
||||
if (tails.Count(x => x.ApproveState == 0) == 0)
|
||||
{
|
||||
ShowNotify("申请的尾项非“待提交处理”状态,无法修改!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (tails.Count(x => x.ApproveState == 0) > 1)
|
||||
{
|
||||
string window = $"SelectTailTermList.aspx?TermItemId={termItemId}";
|
||||
PageContext.RegisterStartupScript(Window2.GetSaveStateReference(this.hidTailTermId.ClientID) + Window2.GetShowReference(window));
|
||||
}
|
||||
else
|
||||
{
|
||||
var tailModel = tails.FirstOrDefault();
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InspectTailTermEdit.aspx?TailTermId={0}&TermItemId={1}", tailModel.TailTermId, tailModel.TermItemId, "编辑 - ")));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
ShowNotify("请填写尾项申请!", MessageBoxIcon.Warning);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
ShowNotify("请填写尾项申请!", MessageBoxIcon.Warning);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 窗口关闭
|
||||
/// </summary>
|
||||
protected void Window1_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
BindGrid(true);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 行绑定
|
||||
/// </summary>
|
||||
protected void Grid1_RowDataBound(object sender, GridRowEventArgs e)
|
||||
{
|
||||
var isTailTerm = Grid1.DataKeys[e.RowIndex][3].ToString();
|
||||
LinkButtonField TailTermUpdate = Grid1.FindColumn("TailTermUpdate") as LinkButtonField;
|
||||
if (isTailTerm == "0")
|
||||
{
|
||||
e.CellCssClasses[TailTermUpdate.ColumnIndex] = "hidethis";
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 尾项选择关闭
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Window2_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(hidTailTermId.Text))
|
||||
{
|
||||
var model = Funs.DB.ProduceRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == hidTailTermId.Text);
|
||||
if (model != null)
|
||||
{
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InspectTailTermEdit.aspx?TailTermId={0}&TermItemId={1}", hidTailTermId.Text, model.TermItemId, "编辑 - ")));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,125 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
|
||||
|
||||
public partial class SubWorkInspect
|
||||
{
|
||||
|
||||
/// <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>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill;
|
||||
|
||||
/// <summary>
|
||||
/// btnSave 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSave;
|
||||
|
||||
/// <summary>
|
||||
/// hidTailTermId 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox hidTailTermId;
|
||||
|
||||
/// <summary>
|
||||
/// txtInspectionIllustrate 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextArea txtInspectionIllustrate;
|
||||
|
||||
/// <summary>
|
||||
/// ddlInspectionResults 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlInspectionResults;
|
||||
|
||||
/// <summary>
|
||||
/// Window1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window Window1;
|
||||
|
||||
/// <summary>
|
||||
/// Window2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window Window2;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,153 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TailTermApprove.aspx.cs" Inherits="FineUIPro.Web.TestRun.Produce.TailTermApprove" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title>质量巡检</title>
|
||||
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
|
||||
<style type="text/css">
|
||||
.labcenter {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.f-grid-row .f-grid-cell-inner {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.f-grid-row.red {
|
||||
background-color: #FF7575;
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.fontred {
|
||||
color: #FF7575;
|
||||
background-image: none;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<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>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:ContentPanel ID="ContentPanel1" Title="巡检审核" ShowBorder="true"
|
||||
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
|
||||
runat="server">
|
||||
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true"
|
||||
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label ID="lblProjectName" runat="server" Label="项目名称" LabelAlign="Right"></f:Label>
|
||||
<f:Label ID="lblTailTermCode" runat="server" Label="巡检编号" LabelAlign="Right"></f:Label>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label ID="lblConstructionUnit" runat="server" Label="施工单位" LabelAlign="Right"></f:Label>
|
||||
<f:Label ID="lblTermItemName" runat="server" Label="检查项" LabelAlign="Right"></f:Label>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label ID="lblQuestionDesc" ShowRedStar="true" runat="server" Label="问题描述"></f:Label>
|
||||
<f:Label ID="lblRectifyOpinion" runat="server" Label="整改意见"></f:Label>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label ID="lblInspectUser" runat="server" Label="检查人" LabelAlign="Right"></f:Label>
|
||||
<f:Label ID="lblAdjustCompleteTime" runat="server" Label="要求整改完成时间" LabelWidth="150px" LabelAlign="Right"></f:Label>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Panel ID="Panel1" ShowHeader="false" ShowBorder="false" Layout="Column" runat="server">
|
||||
<Items>
|
||||
<f:Label runat="server" Text="问题图片查看:" CssStyle="padding-left:25px" Width="150px" CssClass="marginr" ShowLabel="false"></f:Label>
|
||||
<f:Button ID="imgBtnQuestionFile" Text="问题图片查看" ToolTip="问题图片查看" Icon="TableCell" runat="server"
|
||||
OnClick="imgBtnQuestionFile_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Panel ID="Panel2" ShowHeader="false" ShowBorder="false" Layout="Column" runat="server">
|
||||
<Items>
|
||||
<f:Label ID="lblAttach" CssStyle="padding-left:23px" Width="150px" runat="server" CssClass="marginr" ShowLabel="false"
|
||||
Text="整改图片查看:">
|
||||
</f:Label>
|
||||
<f:Button ID="imgBtnRectifyFile" Text="整改图片查看" ToolTip="整改图片查看" Icon="TableCell" runat="server" OnClick="imgBtnRectifyFile_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow ID="plApprove2">
|
||||
<Items>
|
||||
<f:ContentPanel Title="巡检处理列表" ShowBorder="true"
|
||||
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
|
||||
runat="server">
|
||||
<f:Grid ID="gvHandle" IsFluid="true" CssClass="blockpanel" ShowBorder="true" ShowHeader="false" runat="server" EnableCollapse="false"
|
||||
DataKeyNames="InspectTermId" EnableColumnLines="true" ForceFit="true">
|
||||
<Columns>
|
||||
<f:RowNumberField />
|
||||
<f:RenderField ColumnID="ConstructionUnitName" Width="300px" DataField="ConstructionUnitName" HeaderText="施工单位" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ApproveStateName" Width="100px" DataField="ApproveStateName" HeaderText="处理状态" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ApproveTime" Width="150px" DataField="ApproveTime" HeaderText="处理时间" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ApproveOpinion" DataField="ApproveOpinion" HeaderText="处理意见" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
</f:Grid>
|
||||
</f:ContentPanel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label runat="server" ID="lblApproveUser" Label="审核人"></f:Label>
|
||||
<f:HiddenField runat="server" ID="hidApproveUserId"></f:HiddenField>
|
||||
<f:Label runat="server" ID="lblApproveTime" Label="审核时间"></f:Label>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TextArea ID="txtApproveOpinion" ShowRedStar="true" Required="true" runat="server" Label="审核意见" MaxLength="3000"></f:TextArea>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
</f:Form>
|
||||
</f:ContentPanel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
|
||||
<Items>
|
||||
<f:ToolbarFill ID="ToolbarFill1" runat="server">
|
||||
</f:ToolbarFill>
|
||||
<f:Button ID="btnReturn" Icon="SystemSave" runat="server" Text="退回" ToolTip="退回" ValidateForms="SimpleForm1" OnClick="btnReturn_Click">
|
||||
</f:Button>
|
||||
<f:Button ID="btnPass" Icon="SystemSaveNew" runat="server" Text="通过" ToolTip="通过" ValidateForms="SimpleForm1" OnClick="btnPass_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
</f:Form>
|
||||
<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Parent" EnableResize="false" OnClose="WindowAtt_Close" runat="server" IsModal="true" Width="700px"
|
||||
Height="500px">
|
||||
</f:Window>
|
||||
</form>
|
||||
<script>
|
||||
function onGridDataLoad(event) {
|
||||
this.mergeColumns(['CheckItemType']);
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,233 @@
|
|||
using BLL;
|
||||
using Model;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data.SqlClient;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
public partial class TailTermApprove : PageBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 主键
|
||||
/// </summary>
|
||||
public string TailTermId
|
||||
{
|
||||
get { return (string)ViewState["TailTermId"]; }
|
||||
set { ViewState["TailTermId"] = value; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 问题图片是否可编辑
|
||||
/// </summary>
|
||||
public int QuestionEditImg
|
||||
{
|
||||
get { return (int)ViewState["QuestionEditImg"]; }
|
||||
set { ViewState["QuestionEditImg"] = value; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 整改图片是否可编辑
|
||||
/// </summary>
|
||||
public int RectifyEditImg
|
||||
{
|
||||
get { return (int)ViewState["RectifyEditImg"]; }
|
||||
set { ViewState["RectifyEditImg"] = value; }
|
||||
}
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
this.TailTermId = Request["TailTermId"];
|
||||
this.QuestionEditImg = -1;
|
||||
this.RectifyEditImg = -1;
|
||||
//数据绑定
|
||||
PageInit();
|
||||
//处理意见绑定
|
||||
gvHandleBrid();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 绑定数据
|
||||
/// </summary>
|
||||
public void PageInit()
|
||||
{
|
||||
var data = from tail in Funs.DB.ProduceRun_InspectTailTerm
|
||||
join unit in Funs.DB.Base_Unit on tail.ConstructionUnit equals unit.UnitId
|
||||
join inspuser in Funs.DB.Sys_User on tail.InspectUser equals inspuser.UserId
|
||||
join approuser in Funs.DB.Sys_User on tail.ApproveUser equals approuser.UserId
|
||||
join termitem in Funs.DB.ProduceRun_SubInspectTermItem on tail.TermItemId equals termitem.TermItemId
|
||||
where tail.TailTermId == this.TailTermId
|
||||
select new
|
||||
{
|
||||
tail.ProjectName,
|
||||
tail.TailTermCode,
|
||||
unit.UnitName,
|
||||
TermItemName = termitem.WorkInspectName,
|
||||
tail.SubInspectId,
|
||||
tail.QuestionDesc,
|
||||
tail.RectifyOpinion,
|
||||
tail.RectifyTime,
|
||||
tail.InspectUser,
|
||||
InspectUserName = inspuser.UserName,
|
||||
tail.ApproveUser,
|
||||
ApproveUserName = approuser.UserName,
|
||||
tail.AdjustCompleteTime
|
||||
};
|
||||
if (data.Count() > 0)
|
||||
{
|
||||
var model = data.FirstOrDefault();
|
||||
//项目名称
|
||||
lblProjectName.Text = model.ProjectName;
|
||||
//巡检编号
|
||||
lblTailTermCode.Text = model.TailTermCode;
|
||||
//施工单位
|
||||
lblConstructionUnit.Text = model.UnitName;
|
||||
//检查项
|
||||
lblTermItemName.Text = model.TermItemName;
|
||||
//问题描述
|
||||
lblQuestionDesc.Text = model.QuestionDesc;
|
||||
//整改意见
|
||||
lblRectifyOpinion.Text = model.RectifyOpinion;
|
||||
//要求整改完成时间
|
||||
lblAdjustCompleteTime.Text = model.AdjustCompleteTime != null ? model.AdjustCompleteTime.Value.ToString("yyyy-MM-dd hh:mm:ss") : string.Empty;
|
||||
//检查人
|
||||
lblInspectUser.Text = model.InspectUserName;
|
||||
//审核人
|
||||
lblApproveUser.Text = model.ApproveUserName;
|
||||
hidApproveUserId.Text = model.ApproveUser;
|
||||
//审核时间
|
||||
lblApproveTime.Text = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss");
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 处理意见绑定
|
||||
/// </summary>
|
||||
public void gvHandleBrid()
|
||||
{
|
||||
string strSql = @"select a.InspectTermId,a.ApproveOpinion,a.ApproveTime,a.ApproveType,a.ApproveState,(case a.ApproveState when 0 then '处理退回' when 1 then '处理完成' else '' end) as ApproveStateName,b.ConstructionUnit,d.UnitName as ConstructionUnitName,a.AddUser,a.AddTime from ProduceRun_InspectTermApproveRecords as a inner join ProduceRun_InspectTailTerm as b on a.TailTermId=b.TailTermId inner join ProduceRun_SubInspectTermItem as c on c.TermItemId=a.TermItemId inner join Base_Unit as d on d.UnitId=b.ConstructionUnit where 1=1 and a.ApproveType=0 and a.ProjectId=@ProjectId and a.TailTermId=@TailTermId ";
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
|
||||
listStr.Add(new SqlParameter("@TailTermId", this.TailTermId));
|
||||
strSql += " order by a.AddTime asc";
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||
gvHandle.DataSource = tb;
|
||||
gvHandle.DataBind();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 问题图片
|
||||
/// </summary>
|
||||
protected void imgBtnQuestionFile_Click(object sender, EventArgs e)
|
||||
{
|
||||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/CheckControl&menuId={2}", QuestionEditImg, this.TailTermId + "q", Const.InspectTailTerm)));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 整改图片
|
||||
/// </summary>
|
||||
protected void imgBtnRectifyFile_Click(object sender, EventArgs e)
|
||||
{
|
||||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/CheckControl&menuId={2}", RectifyEditImg, this.TailTermId + "h", Const.InspectTailTerm)));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 退回
|
||||
/// </summary>
|
||||
protected void btnReturn_Click(object sender, EventArgs e)
|
||||
{
|
||||
var tailTerm = Funs.DB.ProduceRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == this.TailTermId);
|
||||
if (tailTerm != null)
|
||||
{
|
||||
tailTerm.ApproveState = 3;
|
||||
var model = new ProduceRun_InspectTermApproveRecords();
|
||||
model.InspectTermId = Guid.NewGuid().ToString();
|
||||
model.ProjectId = this.CurrUser.LoginProjectId;
|
||||
model.TermItemId = tailTerm.TermItemId;
|
||||
model.TailTermId = this.TailTermId;
|
||||
model.ApproveOpinion = txtApproveOpinion.Text;
|
||||
model.ApproveTime = DateTime.Parse(lblApproveTime.Text);
|
||||
model.ApproveUser = hidApproveUserId.Text;
|
||||
//0:处理记录1:审核记录
|
||||
model.ApproveType = 1;
|
||||
//0:退回1:通过
|
||||
model.ApproveState = 0;
|
||||
model.AddUser = this.CurrUser.UserId;
|
||||
model.AddTime = DateTime.Now;
|
||||
Funs.DB.ProduceRun_InspectTermApproveRecords.InsertOnSubmit(model);
|
||||
Funs.DB.SubmitChanges();
|
||||
ShowNotify("退回成功!", MessageBoxIcon.Success);
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 通过
|
||||
/// </summary>
|
||||
protected void btnPass_Click(object sender, EventArgs e)
|
||||
{
|
||||
var tailTerm = Funs.DB.ProduceRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == this.TailTermId);
|
||||
if (tailTerm != null)
|
||||
{
|
||||
//获取审核项
|
||||
if (Funs.DB.ProduceRun_InspectTailTerm.Count(x => x.TermItemId == tailTerm.TermItemId && x.ApproveState != 5 && x.TailTermId != this.TailTermId) == 0)
|
||||
{
|
||||
var termItemModel = Funs.DB.ProduceRun_SubInspectTermItem.FirstOrDefault(x => x.TermItemId == tailTerm.TermItemId);
|
||||
if (termItemModel != null)
|
||||
{
|
||||
termItemModel.InspectionResults = 1;
|
||||
var subModel = Funs.DB.ProduceRun_SubInspectTerm.FirstOrDefault(x => x.SubInspectId == termItemModel.SubInspectId);
|
||||
if (subModel != null)
|
||||
{
|
||||
if (Funs.DB.ProduceRun_SubInspectTermItem.Count(x => x.SubInspectId == termItemModel.SubInspectId && x.InspectionResults.GetValueOrDefault() != 1 && x.TermItemId != termItemModel.TermItemId) == 0)
|
||||
{
|
||||
subModel.InspectionIsAllPass = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
subModel.InspectionIsAllPass = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
tailTerm.ApproveState = 5;
|
||||
var model = new ProduceRun_InspectTermApproveRecords();
|
||||
model.InspectTermId = Guid.NewGuid().ToString();
|
||||
model.ProjectId = this.CurrUser.LoginProjectId;
|
||||
model.TermItemId = tailTerm.TermItemId;
|
||||
model.TailTermId = this.TailTermId;
|
||||
model.ApproveOpinion = txtApproveOpinion.Text;
|
||||
model.ApproveTime = DateTime.Parse(lblApproveTime.Text);
|
||||
model.ApproveUser = hidApproveUserId.Text;
|
||||
//0:处理记录1:审核记录
|
||||
model.ApproveType = 1;
|
||||
//0:退回1:通过
|
||||
model.ApproveState = 1;
|
||||
model.AddUser = this.CurrUser.UserId;
|
||||
model.AddTime = DateTime.Now;
|
||||
Funs.DB.ProduceRun_InspectTermApproveRecords.InsertOnSubmit(model);
|
||||
Funs.DB.SubmitChanges();
|
||||
ShowNotify("审核成功!", MessageBoxIcon.Success);
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 关闭
|
||||
/// </summary>
|
||||
protected void WindowAtt_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,278 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
|
||||
|
||||
public partial class TailTermApprove
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// SimpleForm1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form SimpleForm1;
|
||||
|
||||
/// <summary>
|
||||
/// ContentPanel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ContentPanel ContentPanel1;
|
||||
|
||||
/// <summary>
|
||||
/// Form2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form Form2;
|
||||
|
||||
/// <summary>
|
||||
/// lblProjectName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblProjectName;
|
||||
|
||||
/// <summary>
|
||||
/// lblTailTermCode 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblTailTermCode;
|
||||
|
||||
/// <summary>
|
||||
/// lblConstructionUnit 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblConstructionUnit;
|
||||
|
||||
/// <summary>
|
||||
/// lblTermItemName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblTermItemName;
|
||||
|
||||
/// <summary>
|
||||
/// lblQuestionDesc 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblQuestionDesc;
|
||||
|
||||
/// <summary>
|
||||
/// lblRectifyOpinion 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblRectifyOpinion;
|
||||
|
||||
/// <summary>
|
||||
/// lblInspectUser 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblInspectUser;
|
||||
|
||||
/// <summary>
|
||||
/// lblAdjustCompleteTime 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblAdjustCompleteTime;
|
||||
|
||||
/// <summary>
|
||||
/// Panel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel1;
|
||||
|
||||
/// <summary>
|
||||
/// imgBtnQuestionFile 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button imgBtnQuestionFile;
|
||||
|
||||
/// <summary>
|
||||
/// Panel2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel2;
|
||||
|
||||
/// <summary>
|
||||
/// lblAttach 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblAttach;
|
||||
|
||||
/// <summary>
|
||||
/// imgBtnRectifyFile 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button imgBtnRectifyFile;
|
||||
|
||||
/// <summary>
|
||||
/// plApprove2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.FormRow plApprove2;
|
||||
|
||||
/// <summary>
|
||||
/// gvHandle 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid gvHandle;
|
||||
|
||||
/// <summary>
|
||||
/// lblApproveUser 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblApproveUser;
|
||||
|
||||
/// <summary>
|
||||
/// hidApproveUserId 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.HiddenField hidApproveUserId;
|
||||
|
||||
/// <summary>
|
||||
/// lblApproveTime 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblApproveTime;
|
||||
|
||||
/// <summary>
|
||||
/// txtApproveOpinion 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextArea txtApproveOpinion;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill1;
|
||||
|
||||
/// <summary>
|
||||
/// btnReturn 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnReturn;
|
||||
|
||||
/// <summary>
|
||||
/// btnPass 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnPass;
|
||||
|
||||
/// <summary>
|
||||
/// WindowAtt 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window WindowAtt;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,136 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TailTermApproveList.aspx.cs" Inherits="FineUIPro.Web.TestRun.Produce.TailTermApproveList" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<script src="../../Controls/My97DatePicker/WdatePicker.js" type="text/javascript"></script>
|
||||
<title>质量巡检审核</title>
|
||||
<style type="text/css">
|
||||
.labcenter {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.f-grid-row .f-grid-cell-inner {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.LabelColor {
|
||||
color: Red;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
.Green {
|
||||
background-color: Green;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.Yellow {
|
||||
background-color: #FFFF93;
|
||||
}
|
||||
|
||||
.Red {
|
||||
background-color: red;
|
||||
}
|
||||
|
||||
.LightGreen {
|
||||
background-color: LightGreen
|
||||
}
|
||||
|
||||
.f-grid-colheader-text {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
</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="Region" BoxConfigAlign="Stretch">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" EnableAjax="false" ShowHeader="false" Title="质量巡检审核" EnableCollapse="true"
|
||||
runat="server" BoxFlex="1" DataKeyNames="TailTermId" AllowCellEditing="true"
|
||||
ClicksToEdit="2" DataIDField="TailTermId" AllowSorting="true" SortField="AddTime"
|
||||
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true" ForceFit="true"
|
||||
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
|
||||
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" AllowFilters="true" EnableTextSelection="True" EnableMultiSelect="false" EnableCheckBoxSelect="true">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
|
||||
<Items>
|
||||
<f:DropDownList ID="ddlApproveState" runat="server" Label="审核状态" LabelAlign="Right" EnableEdit="true">
|
||||
<f:ListItem Text="全部" Value="" />
|
||||
<f:ListItem Text="未审核" Value="2" />
|
||||
<f:ListItem Text="已审核" Value="3" />
|
||||
</f:DropDownList>
|
||||
<f:ToolbarFill runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnQuery" ToolTip="查询" Icon="SystemSearch" runat="server" OnClick="btnQuery_Click"></f:Button>
|
||||
<f:Button ID="btnReview" Text="审核" ToolTip="审核" runat="server" OnClick="btnReview_Click"></f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:RowNumberField />
|
||||
<f:RenderField ColumnID="TailTermCode" DataField="TailTermCode" SortField="TailTermCode" HeaderText="巡检编号" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="UnitName" DataField="UnitName" HeaderText="单位名称" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="WorkInspectName" DataField="WorkInspectName" Width="400px" HeaderText="检查项" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="RectifyOpinion" DataField="RectifyOpinion" HeaderText="整改意见" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:BoundField DataField="RectifyTime" DataFormatString="{0:yyyy-MM-dd}" HeaderText="尾项提出时间" />
|
||||
<f:RenderField ColumnID="InspectUserName" DataField="InspectUserName" HeaderText="检查人" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ApproveStateName" DataField="ApproveStateName" HeaderText="审批状态" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
<Listeners>
|
||||
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
|
||||
</Listeners>
|
||||
<PageItems>
|
||||
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
|
||||
</f:ToolbarSeparator>
|
||||
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
|
||||
</f:ToolbarText>
|
||||
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
|
||||
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
|
||||
<f:ListItem Text="10" Value="10" />
|
||||
<f:ListItem Text="15" Value="15" />
|
||||
<f:ListItem Text="20" Value="20" />
|
||||
<f:ListItem Text="25" Value="25" />
|
||||
<f:ListItem Text="所有行" Value="100000" />
|
||||
</f:DropDownList>
|
||||
<f:ToolbarFill runat="server">
|
||||
</f:ToolbarFill>
|
||||
|
||||
</PageItems>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Window ID="Window1" Title="检查项巡检审核" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Parent" EnableResize="false" runat="server" IsModal="true" OnClose="Window1_Close"
|
||||
Width="1300px" Height="660px">
|
||||
</f:Window>
|
||||
<f:Menu ID="Menu1" runat="server">
|
||||
<Items>
|
||||
<f:MenuButton ID="btnMenuApprove" EnablePostBack="true" runat="server" Text="审核" Icon="Pencil"
|
||||
OnClick="btnMenuApprove_Click">
|
||||
</f:MenuButton>
|
||||
</Items>
|
||||
</f:Menu>
|
||||
</form>
|
||||
<script type="text/javascript">
|
||||
var menuID = '<%= Menu1.ClientID %>';
|
||||
|
||||
// 返回false,来阻止浏览器右键菜单
|
||||
function onRowContextMenu(event, rowId) {
|
||||
F(menuID).show(); //showAt(event.pageX, event.pageY);
|
||||
return false;
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,137 @@
|
|||
using BLL;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data.SqlClient;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
public partial class TailTermApproveList : PageBase
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
//绑定数据
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
#region 绑定数据
|
||||
|
||||
/// <summary>
|
||||
/// 数据绑定
|
||||
/// </summary>
|
||||
public void BindGrid()
|
||||
{
|
||||
string strSql = @"select a.TailTermId,a.ProjectId,d.ProjectCode,d.ProjectName,a.TailTermCode,a.ConstructionUnit,b.UnitName,a.SubInspectId,a.TermItemId,c.WorkInspectName,a.QuestionDesc,a.RectifyTime,a.RectifyOpinion,a.InspectUser,e.UserName as InspectUserName,a.ApproveUser,f.UserName as ApproveUserName,a.HandleUser,g.UserName as HandleUserName,a.ApproveState,(case a.ApproveState when 0 then '待提交处理' when 1 then '待处理' when 2 then '处理退回' when 3 then '审核退回' when 4 then '待审核' when 5 then '审核通过' else '' end) as ApproveStateName,a.AddTime,a.AdjustCompleteTime,DATEDIFF(DAY, GETDATE(),a.AdjustCompleteTime) as AdjustDiffDay from ProduceRun_InspectTailTerm as a inner join Base_Unit as b on a.ConstructionUnit=b.UnitId inner join ProduceRun_SubInspectTermItem as c on c.TermItemId=a.TermItemId inner join Base_Project as d on d.ProjectId=a.ProjectId inner join Sys_User as e on e.UserId=a.InspectUser inner join Sys_User as f on f.UserId=a.ApproveUser inner join Sys_User as g on g.UserId=a.HandleUser where 1=1 and a.ProjectId=@projectid and a.ApproveUser=@ApproveUser and a.ApproveState>=3";
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
listStr.Add(new SqlParameter("@projectid", this.CurrUser.LoginProjectId));
|
||||
listStr.Add(new SqlParameter("@ApproveUser", this.CurrUser.UserId));
|
||||
//审核状态
|
||||
if (!string.IsNullOrWhiteSpace(ddlApproveState.SelectedValue))
|
||||
{
|
||||
strSql += " and a.ApproveState=@ApproveState";
|
||||
listStr.Add(new SqlParameter("@ApproveState", ddlApproveState.SelectedValue));
|
||||
}
|
||||
strSql += " order by a.AddTime asc";
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||
Grid1.RecordCount = tb.Rows.Count;
|
||||
var table = this.GetPagedDataTable(Grid1, tb);
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 分页
|
||||
/// </summary>
|
||||
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
||||
{
|
||||
Grid1.PageIndex = e.NewPageIndex;
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 双击事件
|
||||
/// </summary>
|
||||
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
|
||||
{
|
||||
btnMenuApprove_Click(null, null);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 分页下拉框
|
||||
/// </summary>
|
||||
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
protected void Grid1_Sort(object sender, GridSortEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 按钮和操作
|
||||
|
||||
/// <summary>
|
||||
/// 关闭弹框
|
||||
/// </summary>
|
||||
protected void Window1_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 审核
|
||||
/// </summary>
|
||||
protected void btnReview_Click(object sender, EventArgs e)
|
||||
{
|
||||
btnMenuApprove_Click(null, null);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 审核
|
||||
/// </summary>
|
||||
protected void btnMenuApprove_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length == 0)
|
||||
{
|
||||
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
var model = Funs.DB.ProduceRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == Grid1.SelectedRowID);
|
||||
if (model != null)
|
||||
{
|
||||
if (model.ApproveState != 4)
|
||||
{
|
||||
Alert.ShowInTop("只可审核“待审核”的记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
}
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("TailTermApprove.aspx?TailTermId={0}", Grid1.SelectedRowID, "审核 - ")));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 搜索
|
||||
/// </summary>
|
||||
protected void btnQuery_Click(object sender, EventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,143 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
|
||||
|
||||
public partial class TailTermApproveList
|
||||
{
|
||||
|
||||
/// <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>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlApproveState 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlApproveState;
|
||||
|
||||
/// <summary>
|
||||
/// btnQuery 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnQuery;
|
||||
|
||||
/// <summary>
|
||||
/// btnReview 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnReview;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarSeparator1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarText1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarText ToolbarText1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlPageSize 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlPageSize;
|
||||
|
||||
/// <summary>
|
||||
/// Window1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window Window1;
|
||||
|
||||
/// <summary>
|
||||
/// Menu1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Menu Menu1;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuApprove 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuApprove;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,131 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TailTermHandle.aspx.cs" Inherits="FineUIPro.Web.TestRun.Produce.TailTermHandle" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title></title>
|
||||
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
|
||||
<style type="text/css">
|
||||
.labcenter {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.f-grid-row .f-grid-cell-inner {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.f-grid-row.red {
|
||||
background-color: #FF7575;
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.fontred {
|
||||
color: #FF7575;
|
||||
background-image: none;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<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>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:ContentPanel ID="ContentPanel1" Title="巡检确认" ShowBorder="true"
|
||||
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
|
||||
runat="server">
|
||||
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true"
|
||||
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label ID="lblProjectName" runat="server" Label="项目名称" LabelAlign="Right"></f:Label>
|
||||
<f:Label ID="lblTailTermCode" runat="server" Label="巡检编号" LabelAlign="Right"></f:Label>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label ID="lblConstructionUnit" runat="server" Label="施工单位" LabelAlign="Right"></f:Label>
|
||||
<f:Label ID="lblTermItemName" runat="server" Label="检查项" LabelAlign="Right"></f:Label>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label ID="lblQuestionDesc" ShowRedStar="true" runat="server" Label="问题描述"></f:Label>
|
||||
<f:Label ID="lblRectifyOpinion" runat="server" Label="整改意见"></f:Label>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label ID="lblInspectUser" runat="server" Label="检查人" LabelAlign="Right"></f:Label>
|
||||
<f:Label ID="lblAdjustCompleteTime" runat="server" Label="要求整改完成时间" LabelWidth="150px" LabelAlign="Right"></f:Label>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Panel ID="Panel1" ShowHeader="false" ShowBorder="false" Layout="Column" runat="server">
|
||||
<Items>
|
||||
<f:Label runat="server" Text="问题图片查看:" CssStyle="padding-left:25px" Width="150px" CssClass="marginr" ShowLabel="false"></f:Label>
|
||||
<f:Button ID="imgBtnQuestionFile" Text="问题图片查看" ToolTip="问题图片查看" Icon="TableCell" runat="server"
|
||||
OnClick="imgBtnQuestionFile_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Panel ID="Panel2" ShowHeader="false" ShowBorder="false" Layout="Column" runat="server">
|
||||
<Items>
|
||||
<f:Label ID="lblAttach" CssStyle="padding-left:23px" Width="150px" runat="server" CssClass="marginr" ShowLabel="false"
|
||||
Text="整改图片上传:">
|
||||
</f:Label>
|
||||
<f:Button ID="imgBtnRectifyFile" Text="整改图片上传" ToolTip="整改图片上传" Icon="TableCell" runat="server" OnClick="imgBtnRectifyFile_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Label runat="server" ID="lblApproveUser" Label="处理人"></f:Label>
|
||||
<f:HiddenField runat="server" ID="hidApproveUserId"></f:HiddenField>
|
||||
<f:Label runat="server" ID="lblApproveTime" Label="处理时间"></f:Label>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TextArea ID="txtApproveOpinion" ShowRedStar="true" Required="true" runat="server" Label="处理结果" MaxLength="3000"></f:TextArea>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
</f:Form>
|
||||
</f:ContentPanel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
|
||||
<Items>
|
||||
<f:ToolbarFill ID="ToolbarFill1" runat="server">
|
||||
</f:ToolbarFill>
|
||||
<f:Button ID="btnReturn" Icon="SystemSave" runat="server" Text="处理退回" ToolTip="处理退回" ValidateForms="SimpleForm1" OnClick="btnReturn_Click">
|
||||
</f:Button>
|
||||
<f:Button ID="btnPass" Icon="SystemSaveNew" runat="server" Text="处理完成并提交审核" ToolTip="处理完成并提交审核" ValidateForms="SimpleForm1" OnClick="btnPass_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
</f:Form>
|
||||
<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Parent" EnableResize="false" OnClose="WindowAtt_Close" runat="server" IsModal="true" Width="700px"
|
||||
Height="500px">
|
||||
</f:Window>
|
||||
</form>
|
||||
<script>
|
||||
function onGridDataLoad(event) {
|
||||
this.mergeColumns(['CheckItemType']);
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,193 @@
|
|||
using BLL;
|
||||
using Model;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
public partial class TailTermHandle : PageBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 主键
|
||||
/// </summary>
|
||||
public string TailTermId
|
||||
{
|
||||
get { return (string)ViewState["TailTermId"]; }
|
||||
set { ViewState["TailTermId"] = value; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 问题图片是否可编辑
|
||||
/// </summary>
|
||||
public int QuestionEditImg
|
||||
{
|
||||
get { return (int)ViewState["QuestionEditImg"]; }
|
||||
set { ViewState["QuestionEditImg"] = value; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 整改图片是否可编辑
|
||||
/// </summary>
|
||||
public int RectifyEditImg
|
||||
{
|
||||
get { return (int)ViewState["RectifyEditImg"]; }
|
||||
set { ViewState["RectifyEditImg"] = value; }
|
||||
}
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
this.TailTermId = Request["TailTermId"];
|
||||
this.QuestionEditImg = -1;
|
||||
this.RectifyEditImg = 0;
|
||||
//数据绑定
|
||||
PageInit();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 绑定数据
|
||||
/// </summary>
|
||||
public void PageInit()
|
||||
{
|
||||
var data = from tail in Funs.DB.ProduceRun_InspectTailTerm
|
||||
join unit in Funs.DB.Base_Unit on tail.ConstructionUnit equals unit.UnitId
|
||||
join inspuser in Funs.DB.Sys_User on tail.InspectUser equals inspuser.UserId
|
||||
join handleuser in Funs.DB.Sys_User on tail.HandleUser equals handleuser.UserId
|
||||
join termitem in Funs.DB.ProduceRun_SubInspectTermItem on tail.TermItemId equals termitem.TermItemId
|
||||
where tail.TailTermId == this.TailTermId
|
||||
select new
|
||||
{
|
||||
tail.ProjectName,
|
||||
tail.TailTermCode,
|
||||
unit.UnitName,
|
||||
TermItemName = termitem.WorkInspectName,
|
||||
tail.SubInspectId,
|
||||
tail.QuestionDesc,
|
||||
tail.RectifyOpinion,
|
||||
tail.RectifyTime,
|
||||
tail.InspectUser,
|
||||
InspectUserName = inspuser.UserName,
|
||||
tail.HandleUser,
|
||||
HandleUserName = handleuser.UserName,
|
||||
tail.AdjustCompleteTime
|
||||
};
|
||||
if (data.Count() > 0)
|
||||
{
|
||||
var model = data.FirstOrDefault();
|
||||
//项目名称
|
||||
lblProjectName.Text = model.ProjectName;
|
||||
//巡检编号
|
||||
lblTailTermCode.Text = model.TailTermCode;
|
||||
//施工单位
|
||||
lblConstructionUnit.Text = model.UnitName;
|
||||
//检查项
|
||||
lblTermItemName.Text = model.TermItemName;
|
||||
//问题描述
|
||||
lblQuestionDesc.Text = model.QuestionDesc;
|
||||
//整改意见
|
||||
lblRectifyOpinion.Text = model.RectifyOpinion;
|
||||
//要求整改完成时间
|
||||
lblAdjustCompleteTime.Text = model.AdjustCompleteTime != null ? model.AdjustCompleteTime.Value.ToString("yyyy-MM-dd hh:mm:ss") : string.Empty;
|
||||
//检查人
|
||||
lblInspectUser.Text = model.InspectUserName;
|
||||
//处理人
|
||||
lblApproveUser.Text = model.HandleUserName;
|
||||
hidApproveUserId.Text = model.HandleUser;
|
||||
//处理时间
|
||||
lblApproveTime.Text = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss");
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 问题图片
|
||||
/// </summary>
|
||||
protected void imgBtnQuestionFile_Click(object sender, EventArgs e)
|
||||
{
|
||||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/CheckControl&menuId={2}", QuestionEditImg, this.TailTermId + "q", Const.InspectTailTerm)));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 整改图片
|
||||
/// </summary>
|
||||
protected void imgBtnRectifyFile_Click(object sender, EventArgs e)
|
||||
{
|
||||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/CheckControl&menuId={2}", RectifyEditImg, this.TailTermId + "h", Const.InspectTailTerm)));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 处理退回
|
||||
/// </summary>
|
||||
protected void btnReturn_Click(object sender, EventArgs e)
|
||||
{
|
||||
var tailTerm = Funs.DB.ProduceRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == this.TailTermId);
|
||||
if (tailTerm != null)
|
||||
{
|
||||
tailTerm.ApproveState = 2;
|
||||
var model = new ProduceRun_InspectTermApproveRecords();
|
||||
model.InspectTermId = Guid.NewGuid().ToString();
|
||||
model.ProjectId = this.CurrUser.LoginProjectId;
|
||||
model.TermItemId = tailTerm.TermItemId;
|
||||
model.TailTermId = this.TailTermId;
|
||||
model.ApproveOpinion = txtApproveOpinion.Text;
|
||||
model.ApproveTime = DateTime.Parse(lblApproveTime.Text);
|
||||
model.ApproveUser = hidApproveUserId.Text;
|
||||
//0:处理记录1:审核记录
|
||||
model.ApproveType = 0;
|
||||
//0:退回1:通过
|
||||
model.ApproveState = 0;
|
||||
model.AddUser = this.CurrUser.UserId;
|
||||
model.AddTime = DateTime.Now;
|
||||
Funs.DB.ProduceRun_InspectTermApproveRecords.InsertOnSubmit(model);
|
||||
Funs.DB.SubmitChanges();
|
||||
ShowNotify("退回成功!", MessageBoxIcon.Success);
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 处理通过并提交审核
|
||||
/// </summary>
|
||||
protected void btnPass_Click(object sender, EventArgs e)
|
||||
{
|
||||
var tailTerm = Funs.DB.ProduceRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == this.TailTermId);
|
||||
if (tailTerm != null)
|
||||
{
|
||||
tailTerm.ApproveState = 4;
|
||||
var model = new ProduceRun_InspectTermApproveRecords();
|
||||
model.InspectTermId = Guid.NewGuid().ToString();
|
||||
model.ProjectId = this.CurrUser.LoginProjectId;
|
||||
model.TermItemId = tailTerm.TermItemId;
|
||||
model.TailTermId = this.TailTermId;
|
||||
model.ApproveOpinion = txtApproveOpinion.Text;
|
||||
model.ApproveTime = DateTime.Parse(lblApproveTime.Text);
|
||||
model.ApproveUser = hidApproveUserId.Text;
|
||||
//0:处理记录1:审核记录
|
||||
model.ApproveType = 0;
|
||||
//0:退回1:通过
|
||||
model.ApproveState = 1;
|
||||
model.AddUser = this.CurrUser.UserId;
|
||||
model.AddTime = DateTime.Now;
|
||||
Funs.DB.ProduceRun_InspectTermApproveRecords.InsertOnSubmit(model);
|
||||
Funs.DB.SubmitChanges();
|
||||
ShowNotify("处理成功!", MessageBoxIcon.Success);
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 关闭
|
||||
/// </summary>
|
||||
protected void WindowAtt_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,260 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
|
||||
|
||||
public partial class TailTermHandle
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// SimpleForm1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form SimpleForm1;
|
||||
|
||||
/// <summary>
|
||||
/// ContentPanel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ContentPanel ContentPanel1;
|
||||
|
||||
/// <summary>
|
||||
/// Form2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form Form2;
|
||||
|
||||
/// <summary>
|
||||
/// lblProjectName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblProjectName;
|
||||
|
||||
/// <summary>
|
||||
/// lblTailTermCode 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblTailTermCode;
|
||||
|
||||
/// <summary>
|
||||
/// lblConstructionUnit 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblConstructionUnit;
|
||||
|
||||
/// <summary>
|
||||
/// lblTermItemName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblTermItemName;
|
||||
|
||||
/// <summary>
|
||||
/// lblQuestionDesc 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblQuestionDesc;
|
||||
|
||||
/// <summary>
|
||||
/// lblRectifyOpinion 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblRectifyOpinion;
|
||||
|
||||
/// <summary>
|
||||
/// lblInspectUser 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblInspectUser;
|
||||
|
||||
/// <summary>
|
||||
/// lblAdjustCompleteTime 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblAdjustCompleteTime;
|
||||
|
||||
/// <summary>
|
||||
/// Panel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel1;
|
||||
|
||||
/// <summary>
|
||||
/// imgBtnQuestionFile 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button imgBtnQuestionFile;
|
||||
|
||||
/// <summary>
|
||||
/// Panel2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel2;
|
||||
|
||||
/// <summary>
|
||||
/// lblAttach 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblAttach;
|
||||
|
||||
/// <summary>
|
||||
/// imgBtnRectifyFile 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button imgBtnRectifyFile;
|
||||
|
||||
/// <summary>
|
||||
/// lblApproveUser 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblApproveUser;
|
||||
|
||||
/// <summary>
|
||||
/// hidApproveUserId 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.HiddenField hidApproveUserId;
|
||||
|
||||
/// <summary>
|
||||
/// lblApproveTime 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblApproveTime;
|
||||
|
||||
/// <summary>
|
||||
/// txtApproveOpinion 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextArea txtApproveOpinion;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill1;
|
||||
|
||||
/// <summary>
|
||||
/// btnReturn 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnReturn;
|
||||
|
||||
/// <summary>
|
||||
/// btnPass 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnPass;
|
||||
|
||||
/// <summary>
|
||||
/// WindowAtt 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window WindowAtt;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,137 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TailTermHandleList.aspx.cs" Inherits="FineUIPro.Web.TestRun.Produce.TailTermHandleList" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<script src="../../Controls/My97DatePicker/WdatePicker.js" type="text/javascript"></script>
|
||||
<title>质量巡检处理确认</title>
|
||||
<style type="text/css">
|
||||
.labcenter {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.f-grid-row .f-grid-cell-inner {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.LabelColor {
|
||||
color: Red;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
.Green {
|
||||
background-color: Green;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.Yellow {
|
||||
background-color: #FFFF93;
|
||||
}
|
||||
|
||||
.Red {
|
||||
background-color: red;
|
||||
}
|
||||
|
||||
.LightGreen {
|
||||
background-color: LightGreen
|
||||
}
|
||||
|
||||
.f-grid-colheader-text {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
</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="Region" BoxConfigAlign="Stretch">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" EnableAjax="false" ShowHeader="false" Title="质量巡检处理确认" EnableCollapse="true"
|
||||
runat="server" BoxFlex="1" DataKeyNames="TailTermId" AllowCellEditing="true"
|
||||
ClicksToEdit="2" DataIDField="TailTermId" AllowSorting="true" SortField="AddTime"
|
||||
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true" ForceFit="true"
|
||||
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
|
||||
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" AllowFilters="true" EnableTextSelection="True" EnableMultiSelect="false" EnableCheckBoxSelect="true">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
|
||||
<Items>
|
||||
<f:DropDownList ID="ddlApproveState" runat="server" Label="审核状态" LabelAlign="Right" EnableEdit="true">
|
||||
<f:ListItem Text="全部" Value="" />
|
||||
<f:ListItem Text="未审核" Value="2" />
|
||||
<f:ListItem Text="已审核" Value="3" />
|
||||
</f:DropDownList>
|
||||
<f:ToolbarFill runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnQuery" ToolTip="查询" Icon="SystemSearch" runat="server" OnClick="btnQuery_Click"></f:Button>
|
||||
<f:Button ID="btnReview" Text="处理" ToolTip="处理" runat="server" OnClick="btnReview_Click"></f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:RowNumberField />
|
||||
<f:RenderField ColumnID="TailTermCode" DataField="TailTermCode" SortField="TailTermCode" HeaderText="巡检编号" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="UnitName" DataField="UnitName" HeaderText="单位名称" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="WorkInspectName" DataField="WorkInspectName" Width="400px" HeaderText="检查项" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="RectifyOpinion" DataField="RectifyOpinion" HeaderText="整改意见" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:BoundField DataField="RectifyTime" DataFormatString="{0:yyyy-MM-dd}" HeaderText="尾项提出时间" />
|
||||
<f:RenderField ColumnID="InspectUserName" DataField="InspectUserName" HeaderText="检查人" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ApproveStateName" DataField="ApproveStateName" HeaderText="审批状态" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
<Listeners>
|
||||
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
|
||||
</Listeners>
|
||||
<PageItems>
|
||||
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
|
||||
</f:ToolbarSeparator>
|
||||
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
|
||||
</f:ToolbarText>
|
||||
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
|
||||
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
|
||||
<f:ListItem Text="10" Value="10" />
|
||||
<f:ListItem Text="15" Value="15" />
|
||||
<f:ListItem Text="20" Value="20" />
|
||||
<f:ListItem Text="25" Value="25" />
|
||||
<f:ListItem Text="所有行" Value="100000" />
|
||||
</f:DropDownList>
|
||||
<f:ToolbarFill runat="server">
|
||||
</f:ToolbarFill>
|
||||
|
||||
</PageItems>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Window ID="Window1" Title="检查项巡检确认" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Parent" EnableResize="false" runat="server" IsModal="true" OnClose="Window1_Close"
|
||||
Width="1300px" Height="660px">
|
||||
</f:Window>
|
||||
<f:Menu ID="Menu1" runat="server">
|
||||
<Items>
|
||||
<f:MenuButton ID="btnMenuApprove" EnablePostBack="true" runat="server" Text="处理" Icon="Pencil"
|
||||
OnClick="btnMenuApprove_Click">
|
||||
</f:MenuButton>
|
||||
</Items>
|
||||
</f:Menu>
|
||||
</form>
|
||||
<script type="text/javascript">
|
||||
var menuID = '<%= Menu1.ClientID %>';
|
||||
|
||||
// 返回false,来阻止浏览器右键菜单
|
||||
function onRowContextMenu(event, rowId) {
|
||||
F(menuID).show(); //showAt(event.pageX, event.pageY);
|
||||
return false;
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,139 @@
|
|||
using BLL;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data.SqlClient;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
public partial class TailTermHandleList : PageBase
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
//绑定数据
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
#region 绑定数据
|
||||
|
||||
/// <summary>
|
||||
/// 数据绑定
|
||||
/// </summary>
|
||||
public void BindGrid()
|
||||
{
|
||||
string strSql = @"select a.TailTermId,a.ProjectId,d.ProjectCode,d.ProjectName,a.TailTermCode,a.ConstructionUnit,b.UnitName,a.SubInspectId,a.TermItemId,c.WorkInspectName,a.QuestionDesc,a.RectifyTime,a.RectifyOpinion,a.InspectUser,e.UserName as InspectUserName,a.ApproveUser,f.UserName as ApproveUserName,a.HandleUser,g.UserName as HandleUserName,a.ApproveState,(case a.ApproveState when 0 then '待提交处理' when 1 then '待处理' when 2 then '处理退回' when 3 then '审核退回' when 4 then '待审核' when 5 then '审核通过' else '' end) as ApproveStateName,a.AddTime,a.AdjustCompleteTime,DATEDIFF(DAY, GETDATE(),a.AdjustCompleteTime) as AdjustDiffDay from ProduceRun_InspectTailTerm as a inner join Base_Unit as b on a.ConstructionUnit=b.UnitId inner join ProduceRun_SubInspectTermItem as c on c.TermItemId=a.TermItemId inner join Base_Project as d on d.ProjectId=a.ProjectId inner join Sys_User as e on e.UserId=a.InspectUser inner join Sys_User as f on f.UserId=a.ApproveUser inner join Sys_User as g on g.UserId=a.HandleUser where 1=1 and a.ProjectId=@projectid and a.HandleUser=@HandleUser and a.ApproveState>=1";
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
listStr.Add(new SqlParameter("@projectid", this.CurrUser.LoginProjectId));
|
||||
listStr.Add(new SqlParameter("@HandleUser", this.CurrUser.UserId));
|
||||
//审核状态
|
||||
if (!string.IsNullOrWhiteSpace(ddlApproveState.SelectedValue))
|
||||
{
|
||||
strSql += " and a.ApproveState=@ApproveState";
|
||||
listStr.Add(new SqlParameter("@ApproveState", ddlApproveState.SelectedValue));
|
||||
}
|
||||
strSql += " order by a.AddTime asc";
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||
Grid1.RecordCount = tb.Rows.Count;
|
||||
var table = this.GetPagedDataTable(Grid1, tb);
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 分页
|
||||
/// </summary>
|
||||
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
||||
{
|
||||
Grid1.PageIndex = e.NewPageIndex;
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 双击事件
|
||||
/// </summary>
|
||||
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
|
||||
{
|
||||
btnMenuApprove_Click(null, null);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 分页下拉框
|
||||
/// </summary>
|
||||
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
protected void Grid1_Sort(object sender, GridSortEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 按钮
|
||||
|
||||
/// <summary>
|
||||
/// 关闭弹框
|
||||
/// </summary>
|
||||
protected void Window1_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 处理
|
||||
/// </summary>
|
||||
protected void btnReview_Click(object sender, EventArgs e)
|
||||
{
|
||||
btnMenuApprove_Click(null, null);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 处理
|
||||
/// </summary>
|
||||
protected void btnMenuApprove_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length == 0)
|
||||
{
|
||||
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
|
||||
var passLs = new List<int>() { 1, 3 };
|
||||
var model = Funs.DB.ProduceRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == Grid1.SelectedRowID);
|
||||
if (model != null)
|
||||
{
|
||||
if (!passLs.Contains(model.ApproveState.Value))
|
||||
{
|
||||
Alert.ShowInTop("只可处理“待处理”和“审核退回”的记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
}
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("TailTermHandle.aspx?TailTermId={0}", Grid1.SelectedRowID, "审核 - ")));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 搜索
|
||||
/// </summary>
|
||||
protected void btnQuery_Click(object sender, EventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,143 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.TestRun.Produce
|
||||
{
|
||||
|
||||
|
||||
public partial class TailTermHandleList
|
||||
{
|
||||
|
||||
/// <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>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlApproveState 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlApproveState;
|
||||
|
||||
/// <summary>
|
||||
/// btnQuery 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnQuery;
|
||||
|
||||
/// <summary>
|
||||
/// btnReview 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnReview;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarSeparator1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarText1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarText ToolbarText1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlPageSize 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlPageSize;
|
||||
|
||||
/// <summary>
|
||||
/// Window1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window Window1;
|
||||
|
||||
/// <summary>
|
||||
/// Menu1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Menu Menu1;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuApprove 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuApprove;
|
||||
}
|
||||
}
|
|
@ -12,7 +12,7 @@
|
|||
<appSettings>
|
||||
<!--连接字符串-->
|
||||
<!--<add key="ConnectionString" value="Server=.;Database=SGGLDB_WH;Integrated Security=False;User ID=sa;Password=1111;MultipleActiveResultSets=true;Connect Timeout=1200"/>-->
|
||||
<add key="ConnectionString" value="Server=.\SQL2012;Database=SGGLDB_WH;Integrated Security=False;User ID=sa;Password=1111;MultipleActiveResultSets=true;Connect Timeout=1200"/>
|
||||
<add key="ConnectionString" value="Server=.;Database=SGGLDB_WH;Integrated Security=False;User ID=sa;Password=1111;MultipleActiveResultSets=true;Connect Timeout=1200"/>
|
||||
<!--系统名称-->
|
||||
<add key="SystemName" value="智慧施工管理信息系统V1.0"/>
|
||||
<add key="ChartImageHandler" value="storage=file;timeout=20;url=~/Images/;"/>
|
||||
|
|
|
@ -541,23 +541,19 @@ namespace FineUIPro.Web.common
|
|||
protected string zggjzglDataValue;
|
||||
protected void getZlgj()
|
||||
{
|
||||
var num1 = (from x in Funs.DB.ProcessControl_InspectionManagement
|
||||
select x).Count();
|
||||
//Check_JointCheck
|
||||
zlgjallNumber = (from x in Funs.DB.Check_JointCheck
|
||||
where x.CheckDate <= DateTime.Now
|
||||
select x).Count().ToString();
|
||||
zlgjallNumber = num1.ToString();
|
||||
|
||||
var num2 = (from x in Funs.DB.Check_JointCheck
|
||||
where x.CheckDate <= DateTime.Now && x.State == BLL.Const.JointCheck_Complete
|
||||
var num2 = (from x in Funs.DB.ProcessControl_InspectionManagement
|
||||
where x.IsOnceQualified == true
|
||||
select x).Count();
|
||||
zlgjfinishNumber = num2.ToString();
|
||||
|
||||
var num3 = (from x in Funs.DB.Check_JointCheck
|
||||
where x.CheckDate <= DateTime.Now && x.State != BLL.Const.JointCheck_Complete
|
||||
select x).Count();
|
||||
|
||||
var zgl = String.Format("{0:N2}", 100.0 * num2 / (num2 + num3));
|
||||
var zgl = String.Format("{0:N2}", 100.0 * num2 / num1);
|
||||
zlgjzgl = zgl.ToString();
|
||||
zggjzglDataValue = (100 - (100.0 * num2 / (num2 + num3))).ToString();
|
||||
zggjzglDataValue = (100 - (100.0 * num2 / num1)).ToString();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
|
Loading…
Reference in New Issue