diff --git a/DataBase/版本日志/SGGLDB_WH_2024-03-18-gaofei.sql b/DataBase/版本日志/SGGLDB_WH_2024-03-18-gaofei.sql
new file mode 100644
index 00000000..348be984
--- /dev/null
+++ b/DataBase/版本日志/SGGLDB_WH_2024-03-18-gaofei.sql
@@ -0,0 +1,168 @@
+alter table DriverGoods_GoodsBuyItem add Num nvarchar(50) null
+GO
+
+
+ALTER VIEW [dbo].[View_DriverGoods_GoodsBuyItem]
+/*Գ빺ϸѯб*/
+AS
+SELECT Item.GoodsBuyItemId,
+ Item.GoodsBuyId,
+ Item.GoodsModelId,
+ Item.Num,
+ Model.Quantity,
+ Item.RequiredTime,
+ Model.Code,
+ Model.ProjectId,
+ Model.Description,
+ Model.Purpose,
+ Model.Attachment,
+ Model.Remark
+FROM dbo.DriverGoods_GoodsBuyItem AS Item
+LEFT JOIN dbo.DriverGoods_GoodsModel AS Model ON Model.GoodsModelId=Item.GoodsModelId
+
+
+
+
+
+
+GO
+
+
+
+
+CREATE TABLE [dbo].[Person_BusinessTrip](
+ [BusinessTripId] [nvarchar](50) NOT NULL,
+ [Type] [char](1) NULL,
+ [ProjectId] [nvarchar](50) NULL,
+ [UserId] [nvarchar](50) NULL,
+ [ArriveDate] [datetime] NULL,
+ [LeaveDate] [datetime] NULL,
+ CONSTRAINT [PK_Person_BusinessTrip] PRIMARY KEY CLUSTERED
+(
+ [BusinessTripId] 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
+
+SET ANSI_PADDING OFF
+GO
+
+ALTER TABLE [dbo].[Person_BusinessTrip] WITH CHECK ADD CONSTRAINT [FK_Person_BusinessTrip_Sys_User] FOREIGN KEY([UserId])
+REFERENCES [dbo].[Sys_User] ([UserId])
+GO
+
+ALTER TABLE [dbo].[Person_BusinessTrip] CHECK CONSTRAINT [FK_Person_BusinessTrip_Sys_User]
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_BusinessTrip', @level2type=N'COLUMN',@level2name=N'BusinessTripId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ͣ1-Ŀ2-' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_BusinessTrip', @level2type=N'COLUMN',@level2name=N'Type'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ĿId' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_BusinessTrip', @level2type=N'COLUMN',@level2name=N'ProjectId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ûId' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_BusinessTrip', @level2type=N'COLUMN',@level2name=N'UserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_BusinessTrip', @level2type=N'COLUMN',@level2name=N'ArriveDate'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'뿪' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_BusinessTrip', @level2type=N'COLUMN',@level2name=N'LeaveDate'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Ա¼' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_BusinessTrip'
+GO
+
+
+
+
+
+CREATE TABLE [dbo].[Person_TestRunPerformance](
+ [TestRunPerformanceId] [nvarchar](50) NOT NULL,
+ [ProjectId] [nvarchar](50) NULL,
+ [UserId] [nvarchar](50) NULL,
+ [Months] [datetime] NULL,
+ [JobContent] [nvarchar](300) NULL,
+ [TestRunPerformanceStandardId] [nvarchar](50) NULL,
+ [Days] [int] NULL,
+ CONSTRAINT [PK_Person_TestRunPerformance] PRIMARY KEY CLUSTERED
+(
+ [TestRunPerformanceId] 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].[Person_TestRunPerformance] WITH CHECK ADD CONSTRAINT [FK_Person_TestRunPerformance_Base_TestRunPerformanceStandard] FOREIGN KEY([TestRunPerformanceStandardId])
+REFERENCES [dbo].[Base_TestRunPerformanceStandard] ([TestRunPerformanceStandardId])
+GO
+
+ALTER TABLE [dbo].[Person_TestRunPerformance] CHECK CONSTRAINT [FK_Person_TestRunPerformance_Base_TestRunPerformanceStandard]
+GO
+
+ALTER TABLE [dbo].[Person_TestRunPerformance] WITH CHECK ADD CONSTRAINT [FK_Person_TestRunPerformance_Sys_User] FOREIGN KEY([UserId])
+REFERENCES [dbo].[Sys_User] ([UserId])
+GO
+
+ALTER TABLE [dbo].[Person_TestRunPerformance] CHECK CONSTRAINT [FK_Person_TestRunPerformance_Sys_User]
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_TestRunPerformance', @level2type=N'COLUMN',@level2name=N'TestRunPerformanceId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Ŀid' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_TestRunPerformance', @level2type=N'COLUMN',@level2name=N'ProjectId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ûId' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_TestRunPerformance', @level2type=N'COLUMN',@level2name=N'UserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'·' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_TestRunPerformance', @level2type=N'COLUMN',@level2name=N'Months'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'˱Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_TestRunPerformance', @level2type=N'COLUMN',@level2name=N'TestRunPerformanceStandardId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_TestRunPerformance', @level2type=N'COLUMN',@level2name=N'Days'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'˿Ч¼' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_TestRunPerformance'
+GO
+
+
+
+CREATE TABLE [dbo].[ZHGL_TestRunPerformanceMonthReport](
+ [TestRunPerformanceMonthReportId] [nvarchar](50) NOT NULL,
+ [Year] [int] NULL,
+ [UserId] [nvarchar](50) NULL,
+ [CompileMan] [nvarchar](50) NULL,
+ [CompileDate] [datetime] NULL,
+ CONSTRAINT [PK_ZHGL_TestRunPerformanceMonthReport] PRIMARY KEY CLUSTERED
+(
+ [TestRunPerformanceMonthReportId] 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
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ZHGL_TestRunPerformanceMonthReport', @level2type=N'COLUMN',@level2name=N'TestRunPerformanceMonthReportId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ZHGL_TestRunPerformanceMonthReport', @level2type=N'COLUMN',@level2name=N'Year'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ûId' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ZHGL_TestRunPerformanceMonthReport', @level2type=N'COLUMN',@level2name=N'UserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ZHGL_TestRunPerformanceMonthReport', @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'ZHGL_TestRunPerformanceMonthReport', @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'ZHGL_TestRunPerformanceMonthReport'
+GO
+
+
diff --git a/DataBase/菜单初始化脚本/0-10我的(Menu_Personal).sql b/DataBase/菜单初始化脚本/0-10我的(Menu_Personal).sql
index 9df5d351..932a3532 100644
--- a/DataBase/菜单初始化脚本/0-10我的(Menu_Personal).sql
+++ b/DataBase/菜单初始化脚本/0-10我的(Menu_Personal).sql
@@ -43,3 +43,29 @@ GO
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
VALUES('6549EF60-1DED-4912-8D2D-7B32A80A2DEC','视频会议','Personal/PersonMeeting.aspx',60,'0','Menu_Personal',0,1,1)
GO
+
+INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
+VALUES('522EAECC-3D40-4804-A066-A43BA8F6BFC1','员工出差记录','Personal/BusinessTrip.aspx',70,'0','Menu_Personal',0,1,1)
+GO
+ INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+ VALUES('8B969A75-E5CC-424F-A3FA-4AABAFD83776','522EAECC-3D40-4804-A066-A43BA8F6BFC1','增加',1)
+ INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+ VALUES('577F9981-3EA0-4EFA-A37F-D34313FA75A0','522EAECC-3D40-4804-A066-A43BA8F6BFC1','修改',2)
+ INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+ VALUES('F6CCDCAF-D922-4463-A446-21F5202F88E3','522EAECC-3D40-4804-A066-A43BA8F6BFC1','保存',3)
+ INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+ VALUES('CA9037CE-F174-4664-9566-86313C4B8B70','522EAECC-3D40-4804-A066-A43BA8F6BFC1','删除',4)
+ GO
+
+INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
+VALUES('16229932-671B-4E04-BB61-A5C7DE4CE47F','员工开车绩效记录','Personal/TestRunPerformance.aspx',80,'0','Menu_Personal',0,1,1)
+GO
+ INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+ VALUES('85D7D848-2848-4DA8-817B-45854F823ACF','16229932-671B-4E04-BB61-A5C7DE4CE47F','增加',1)
+ INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+ VALUES('5C7EED44-CA88-48DC-8F45-816CCFDD27BB','16229932-671B-4E04-BB61-A5C7DE4CE47F','修改',2)
+ INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+ VALUES('08C5FB21-7B0B-4A6B-B7B6-EB9DA928ECE3','16229932-671B-4E04-BB61-A5C7DE4CE47F','保存',3)
+ INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+ VALUES('64D20EC1-23E3-4163-9FD5-BD75DA0BB270','16229932-671B-4E04-BB61-A5C7DE4CE47F','删除',4)
+ GO
\ No newline at end of file
diff --git a/DataBase/菜单初始化脚本/0-8综合管理(Menu_ZHGL).sql b/DataBase/菜单初始化脚本/0-8综合管理(Menu_ZHGL).sql
index 3e305f00..f8391f6e 100644
--- a/DataBase/菜单初始化脚本/0-8综合管理(Menu_ZHGL).sql
+++ b/DataBase/菜单初始化脚本/0-8综合管理(Menu_ZHGL).sql
@@ -529,4 +529,16 @@ GO
VALUES('A14DE61A-2E1B-4F4D-84E8-D87DBB2C5F4D','383290E0-60AE-4D16-8B5E-3899B85EC2ED','保存',4)
GO
+ INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
+ VALUES('C1240FCB-4C72-445E-82B5-EBFAA87D0AC6','开车人员月绩效报告','ZHGL/TestRunPerformance/TestRunPerformanceMonthReport.aspx',20,'53D8CED2-9AA7-43EA-B27D-EA10A06DF713','Menu_ZHGL',0,1,1)
+ GO
+ INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+ VALUES('05767250-EF45-4C24-8E19-E887E9267F48','C1240FCB-4C72-445E-82B5-EBFAA87D0AC6','增加',1)
+ INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+ VALUES('5A13E8B5-7932-4922-8DD8-0F85B3A30F13','C1240FCB-4C72-445E-82B5-EBFAA87D0AC6','修改',2)
+ INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+ VALUES('3C844A2A-0C2D-482C-90B7-1C94B5C76F92','C1240FCB-4C72-445E-82B5-EBFAA87D0AC6','删除',3)
+ INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+ VALUES('EF60AF57-C14D-47C7-87E9-F9182B1C2D6A','C1240FCB-4C72-445E-82B5-EBFAA87D0AC6','保存',4)
+ GO
\ No newline at end of file
diff --git a/SGGL/BLL/BLL.csproj b/SGGL/BLL/BLL.csproj
index 1527108b..19f431f1 100644
--- a/SGGL/BLL/BLL.csproj
+++ b/SGGL/BLL/BLL.csproj
@@ -639,6 +639,7 @@
+
@@ -650,6 +651,7 @@
+
@@ -865,6 +867,7 @@
+
diff --git a/SGGL/BLL/BaseInfo/TestRunPerformanceStandardService.cs b/SGGL/BLL/BaseInfo/TestRunPerformanceStandardService.cs
index 5ad25572..aa249516 100644
--- a/SGGL/BLL/BaseInfo/TestRunPerformanceStandardService.cs
+++ b/SGGL/BLL/BaseInfo/TestRunPerformanceStandardService.cs
@@ -1,5 +1,6 @@
using System.Collections.Generic;
using System.Linq;
+using System.Web.UI.WebControls;
namespace BLL
{
@@ -102,5 +103,104 @@ namespace BLL
Funs.FineUIPleaseSelect(dropName);
}
}
+
+ ///
+ ///
+ ///
+ ///
+ public static ListItem[] GetTypes()
+ {
+ var q = (from x in Funs.DB.Base_TestRunPerformanceStandard orderby x.Code select new { Value = x.Type, Code1 = x.Code1 }).Distinct().ToList();
+ q = q.OrderBy(x => x.Code1).ToList();
+ ListItem[] list = new ListItem[q.Count()];
+ for (int i = 0; i < q.Count(); i++)
+ {
+ list[i] = new ListItem(q[i].Value ?? "", q[i].Value);
+ }
+ return list;
+ }
+
+ ///
+ /// 项目表下拉框
+ ///
+ /// 下拉框名字
+ /// 是否显示请选择
+ public static void InitTypeDropDownList(FineUIPro.DropDownList dropName, bool isShowPlease)
+ {
+ dropName.DataValueField = "Text";
+ dropName.DataTextField = "Text";
+ dropName.DataSource = GetTypes();
+ dropName.DataBind();
+ if (isShowPlease)
+ {
+ Funs.FineUIPleaseSelect(dropName);
+ }
+ }
+
+ ///
+ ///
+ ///
+ ///
+ public static ListItem[] GetItems(string type)
+ {
+ var q = (from x in Funs.DB.Base_TestRunPerformanceStandard where x.Type == type orderby x.Code select new { Value = x.Item, Code1 = x.Code2 }).Distinct().ToList();
+ q = q.OrderBy(x => x.Code1).ToList();
+ ListItem[] list = new ListItem[q.Count()];
+ for (int i = 0; i < q.Count(); i++)
+ {
+ list[i] = new ListItem(q[i].Value ?? "", q[i].Value);
+ }
+ return list;
+ }
+
+ ///
+ /// 项目表下拉框
+ ///
+ /// 下拉框名字
+ /// 是否显示请选择
+ public static void InitItemDropDownList(FineUIPro.DropDownList dropName, string type, bool isShowPlease)
+ {
+ dropName.DataValueField = "Text";
+ dropName.DataTextField = "Text";
+ dropName.DataSource = GetItems(type);
+ dropName.DataBind();
+ if (isShowPlease)
+ {
+ Funs.FineUIPleaseSelect(dropName);
+ }
+ }
+
+ ///
+ ///
+ ///
+ ///
+ public static ListItem[] GetUnits(string type, string item)
+ {
+ var q = (from x in Funs.DB.Base_TestRunPerformanceStandard where x.Type == type && x.Item == item orderby x.Code select new { Value = x.Unit, Code1 = x.Code3, x.TestRunPerformanceStandardId }).ToList();
+ q = q.OrderBy(x => x.Code1).ToList();
+ ListItem[] list = new ListItem[q.Count()];
+ for (int i = 0; i < q.Count(); i++)
+ {
+ list[i] = new ListItem(q[i].Value ?? "", q[i].TestRunPerformanceStandardId);
+ }
+ return list;
+ }
+
+ ///
+ /// 项目表下拉框
+ ///
+ /// 下拉框名字
+ /// 是否显示请选择
+ public static void InitUnitDropDownList(FineUIPro.DropDownList dropName, string type, string item, bool isShowPlease)
+ {
+ dropName.DataValueField = "Value";
+ dropName.DataTextField = "Text";
+ dropName.DataSource = GetUnits(type, item);
+ dropName.DataBind();
+ if (isShowPlease)
+ {
+ Funs.FineUIPleaseSelect(dropName);
+ }
+ }
}
}
diff --git a/SGGL/BLL/Common/Const.cs b/SGGL/BLL/Common/Const.cs
index 69b4dd45..25c7f405 100644
--- a/SGGL/BLL/Common/Const.cs
+++ b/SGGL/BLL/Common/Const.cs
@@ -799,6 +799,16 @@ namespace BLL
///
public const string PersonDutyMenuId = "A913653D-1EBB-4F55-97C9-81CC5B5913C4";
+ ///
+ /// 员工出差记录
+ ///
+ public const string BusinessTripMenuId = "522EAECC-3D40-4804-A066-A43BA8F6BFC1";
+
+ ///
+ /// 员工开车绩效记录
+ ///
+ public const string TestRunPerformanceMenuId = "16229932-671B-4E04-BB61-A5C7DE4CE47F";
+
///
/// HSSE公司管理规定发布
///
@@ -4881,6 +4891,11 @@ namespace BLL
/// 开车绩效评分标准
///
public const string TestRunPerformanceStandardMenuId = "383290E0-60AE-4D16-8B5E-3899B85EC2ED";
+
+ ///
+ /// 开车人员月绩效报告
+ ///
+ public const string TestRunPerformanceMonthReportMenuId = "C1240FCB-4C72-445E-82B5-EBFAA87D0AC6";
#endregion
#region 施工综合流程定义
diff --git a/SGGL/BLL/Person/Person_BusinessTripService.cs b/SGGL/BLL/Person/Person_BusinessTripService.cs
new file mode 100644
index 00000000..ecf15beb
--- /dev/null
+++ b/SGGL/BLL/Person/Person_BusinessTripService.cs
@@ -0,0 +1,74 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace BLL
+{
+ public class Person_BusinessTripService
+ {
+ ///
+ /// 获取人员信息
+ ///
+ /// 人员Id
+ /// 人员信息
+ public static Model.Person_BusinessTrip GetPersonBusinessTripById(string BusinessTripId)
+ {
+ return Funs.DB.Person_BusinessTrip.FirstOrDefault(e => e.BusinessTripId == BusinessTripId);
+ }
+
+ ///
+ /// 增加人员总结信息
+ ///
+ /// 人员实体
+ public static void AddPersonBusinessTrip(Model.Person_BusinessTrip BusinessTrip)
+ {
+ Model.SGGLDB db = Funs.DB;
+ Model.Person_BusinessTrip newBusinessTrip = new Model.Person_BusinessTrip
+ {
+ BusinessTripId = BusinessTrip.BusinessTripId,
+ Type = BusinessTrip.Type,
+ ProjectId = BusinessTrip.ProjectId,
+ UserId = BusinessTrip.UserId,
+ ArriveDate = BusinessTrip.ArriveDate,
+ LeaveDate = BusinessTrip.LeaveDate,
+ };
+ db.Person_BusinessTrip.InsertOnSubmit(newBusinessTrip);
+ db.SubmitChanges();
+ }
+
+ ///
+ /// 修改人员总结信息
+ ///
+ /// 实体
+ public static void UpdatePersonBusinessTrip(Model.Person_BusinessTrip BusinessTrip)
+ {
+ Model.SGGLDB db = Funs.DB;
+ Model.Person_BusinessTrip newBusinessTrip = db.Person_BusinessTrip.FirstOrDefault(e => e.BusinessTripId == BusinessTrip.BusinessTripId);
+ if (newBusinessTrip != null)
+ {
+ newBusinessTrip.Type = BusinessTrip.Type;
+ newBusinessTrip.ProjectId = BusinessTrip.ProjectId;
+ newBusinessTrip.ArriveDate = BusinessTrip.ArriveDate;
+ newBusinessTrip.LeaveDate = BusinessTrip.LeaveDate;
+ db.SubmitChanges();
+ }
+ }
+
+ ///
+ /// 根据人员Id删除一个人员信息
+ ///
+ ///
+ public static void DeletePersonBusinessTrip(string BusinessTripId)
+ {
+ Model.SGGLDB db = Funs.DB;
+ Model.Person_BusinessTrip user = db.Person_BusinessTrip.FirstOrDefault(e => e.BusinessTripId == BusinessTripId);
+ if (user != null)
+ {
+ db.Person_BusinessTrip.DeleteOnSubmit(user);
+ db.SubmitChanges();
+ }
+ }
+ }
+}
diff --git a/SGGL/BLL/Person/Person_TestRunPerformanceService.cs b/SGGL/BLL/Person/Person_TestRunPerformanceService.cs
new file mode 100644
index 00000000..03e66eb2
--- /dev/null
+++ b/SGGL/BLL/Person/Person_TestRunPerformanceService.cs
@@ -0,0 +1,75 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace BLL
+{
+ public class Person_TestRunPerformanceService
+ {
+ ///
+ /// 获取人员信息
+ ///
+ /// 人员Id
+ /// 人员信息
+ public static Model.Person_TestRunPerformance GetPersonTestRunPerformanceById(string TestRunPerformanceId)
+ {
+ return Funs.DB.Person_TestRunPerformance.FirstOrDefault(e => e.TestRunPerformanceId == TestRunPerformanceId);
+ }
+
+ ///
+ /// 增加人员总结信息
+ ///
+ /// 人员实体
+ public static void AddPersonTestRunPerformance(Model.Person_TestRunPerformance TestRunPerformance)
+ {
+ Model.SGGLDB db = Funs.DB;
+ Model.Person_TestRunPerformance newTestRunPerformance = new Model.Person_TestRunPerformance
+ {
+ TestRunPerformanceId = TestRunPerformance.TestRunPerformanceId,
+ ProjectId = TestRunPerformance.ProjectId,
+ UserId = TestRunPerformance.UserId,
+ Months = TestRunPerformance.Months,
+ JobContent = TestRunPerformance.JobContent,
+ TestRunPerformanceStandardId = TestRunPerformance.TestRunPerformanceStandardId,
+ Days = TestRunPerformance.Days,
+ };
+ db.Person_TestRunPerformance.InsertOnSubmit(newTestRunPerformance);
+ db.SubmitChanges();
+ }
+
+ ///
+ /// 修改人员总结信息
+ ///
+ /// 实体
+ public static void UpdatePersonTestRunPerformance(Model.Person_TestRunPerformance TestRunPerformance)
+ {
+ Model.SGGLDB db = Funs.DB;
+ Model.Person_TestRunPerformance newTestRunPerformance = db.Person_TestRunPerformance.FirstOrDefault(e => e.TestRunPerformanceId == TestRunPerformance.TestRunPerformanceId);
+ if (newTestRunPerformance != null)
+ {
+ newTestRunPerformance.Months = TestRunPerformance.Months;
+ newTestRunPerformance.JobContent = TestRunPerformance.JobContent;
+ newTestRunPerformance.TestRunPerformanceStandardId = TestRunPerformance.TestRunPerformanceStandardId;
+ newTestRunPerformance.Days = TestRunPerformance.Days;
+ db.SubmitChanges();
+ }
+ }
+
+ ///
+ /// 根据人员Id删除一个人员信息
+ ///
+ ///
+ public static void DeletePersonTestRunPerformance(string TestRunPerformanceId)
+ {
+ Model.SGGLDB db = Funs.DB;
+ Model.Person_TestRunPerformance user = db.Person_TestRunPerformance.FirstOrDefault(e => e.TestRunPerformanceId == TestRunPerformanceId);
+ if (user != null)
+ {
+ db.Person_TestRunPerformance.DeleteOnSubmit(user);
+ db.SubmitChanges();
+ }
+ }
+ }
+}
diff --git a/SGGL/BLL/ProjectData/ProjectService.cs b/SGGL/BLL/ProjectData/ProjectService.cs
index 2db27732..ca2f2232 100644
--- a/SGGL/BLL/ProjectData/ProjectService.cs
+++ b/SGGL/BLL/ProjectData/ProjectService.cs
@@ -391,6 +391,34 @@
}
}
+ ///
+ /// 项目表下拉框
+ ///
+ /// 下拉框名字
+ /// 是否显示请选择
+ public static void InitAllProjectDropDownList2(FineUIPro.DropDownList dropName, bool isShowPlease)
+ {
+ dropName.DataValueField = "ProjectId";
+ dropName.DataTextField = "ProjectName";
+ var projectlist = BLL.ProjectService.GetAllProjectDropDownList();
+ Model.Base_Project project = new Base_Project();
+ project.ProjectId = "0";
+ project.ProjectName = "本部";
+ List list = new List();
+ list.Add(project);
+ list.AddRange(projectlist);
+ dropName.DataSource = list;
+ dropName.DataBind();
+ if (projectlist.Count() == 0)
+ {
+ isShowPlease = true;
+ }
+ if (isShowPlease)
+ {
+ Funs.FineUIPleaseSelect(dropName);
+ }
+ }
+
///
///
///
diff --git a/SGGL/BLL/TestRun/DriverGoods/GoodsBuyItemService.cs b/SGGL/BLL/TestRun/DriverGoods/GoodsBuyItemService.cs
index d43adae6..5174c393 100644
--- a/SGGL/BLL/TestRun/DriverGoods/GoodsBuyItemService.cs
+++ b/SGGL/BLL/TestRun/DriverGoods/GoodsBuyItemService.cs
@@ -44,6 +44,7 @@ namespace BLL
newGoodsBuyItem.GoodsBuyId = GoodsBuyItem.GoodsBuyId;
newGoodsBuyItem.GoodsModelId = GoodsBuyItem.GoodsModelId;
newGoodsBuyItem.Quantity = GoodsBuyItem.Quantity;
+ newGoodsBuyItem.Num = GoodsBuyItem.Num;
newGoodsBuyItem.RequiredTime = GoodsBuyItem.RequiredTime;
db.DriverGoods_GoodsBuyItem.InsertOnSubmit(newGoodsBuyItem);
db.SubmitChanges();
diff --git a/SGGL/BLL/ZHGL/TestRunPerformance/TestRunPerformanceMonthReportService.cs b/SGGL/BLL/ZHGL/TestRunPerformance/TestRunPerformanceMonthReportService.cs
new file mode 100644
index 00000000..9eb868c0
--- /dev/null
+++ b/SGGL/BLL/ZHGL/TestRunPerformance/TestRunPerformanceMonthReportService.cs
@@ -0,0 +1,72 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace BLL
+{
+ public class TestRunPerformanceMonthReportService
+ {
+ ///
+ /// 根据主键获取开车人员月绩效报告
+ ///
+ ///
+ ///
+ public static Model.ZHGL_TestRunPerformanceMonthReport GetTestRunPerformanceMonthReportById(string TestRunPerformanceMonthReportId)
+ {
+ return Funs.DB.ZHGL_TestRunPerformanceMonthReport.FirstOrDefault(e => e.TestRunPerformanceMonthReportId == TestRunPerformanceMonthReportId);
+ }
+
+ ///
+ /// 添加开车人员月绩效报告
+ ///
+ ///
+ public static void AddTestRunPerformanceMonthReport(Model.ZHGL_TestRunPerformanceMonthReport TestRunPerformanceMonthReport)
+ {
+ Model.SGGLDB db = Funs.DB;
+ Model.ZHGL_TestRunPerformanceMonthReport newTestRunPerformanceMonthReport = new Model.ZHGL_TestRunPerformanceMonthReport
+ {
+ TestRunPerformanceMonthReportId = TestRunPerformanceMonthReport.TestRunPerformanceMonthReportId,
+ Year = TestRunPerformanceMonthReport.Year,
+ UserId = TestRunPerformanceMonthReport.UserId,
+ CompileMan = TestRunPerformanceMonthReport.CompileMan,
+ CompileDate = TestRunPerformanceMonthReport.CompileDate
+ };
+ db.ZHGL_TestRunPerformanceMonthReport.InsertOnSubmit(newTestRunPerformanceMonthReport);
+ db.SubmitChanges();
+ }
+
+ ///
+ /// 修改开车人员月绩效报告
+ ///
+ ///
+ public static void UpdateTestRunPerformanceMonthReport(Model.ZHGL_TestRunPerformanceMonthReport TestRunPerformanceMonthReport)
+ {
+ Model.SGGLDB db = Funs.DB;
+ Model.ZHGL_TestRunPerformanceMonthReport newTestRunPerformanceMonthReport = db.ZHGL_TestRunPerformanceMonthReport.FirstOrDefault(e => e.TestRunPerformanceMonthReportId == TestRunPerformanceMonthReport.TestRunPerformanceMonthReportId);
+ if (newTestRunPerformanceMonthReport != null)
+ {
+ newTestRunPerformanceMonthReport.Year = TestRunPerformanceMonthReport.Year;
+ newTestRunPerformanceMonthReport.UserId = TestRunPerformanceMonthReport.UserId;
+ newTestRunPerformanceMonthReport.CompileMan = TestRunPerformanceMonthReport.CompileMan;
+ newTestRunPerformanceMonthReport.CompileDate = TestRunPerformanceMonthReport.CompileDate;
+ db.SubmitChanges();
+ }
+ }
+
+ ///
+ /// 根据主键删除开车人员月绩效报告
+ ///
+ ///
+ public static void DeleteTestRunPerformanceMonthReportById(string TestRunPerformanceMonthReportId)
+ {
+ Model.SGGLDB db = Funs.DB;
+ Model.ZHGL_TestRunPerformanceMonthReport TestRunPerformanceMonthReport = db.ZHGL_TestRunPerformanceMonthReport.FirstOrDefault(e => e.TestRunPerformanceMonthReportId == TestRunPerformanceMonthReportId);
+ if (TestRunPerformanceMonthReport != null)
+ {
+ db.ZHGL_TestRunPerformanceMonthReport.DeleteOnSubmit(TestRunPerformanceMonthReport);
+ db.SubmitChanges();
+ }
+ }
+ }
+}
diff --git a/SGGL/FineUIPro.Web/File/Excel/TestRun/试车物资材料库导入模板.xls b/SGGL/FineUIPro.Web/File/Excel/TestRun/试车物资材料库导入模板.xls
index 8d4a86a0..6e135eb8 100644
Binary files a/SGGL/FineUIPro.Web/File/Excel/TestRun/试车物资材料库导入模板.xls and b/SGGL/FineUIPro.Web/File/Excel/TestRun/试车物资材料库导入模板.xls differ
diff --git a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
index d451647f..d90d41b8 100644
--- a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
+++ b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
@@ -1454,11 +1454,15 @@
+
+
+
+
@@ -2053,6 +2057,8 @@
+
+
@@ -14187,6 +14193,20 @@
WorkPlanEdit.aspx
+
+ BusinessTrip.aspx
+ ASPXCodeBehind
+
+
+ BusinessTrip.aspx
+
+
+ BusinessTripEdit.aspx
+ ASPXCodeBehind
+
+
+ BusinessTripEdit.aspx
+
PersonMeeting.aspx
ASPXCodeBehind
@@ -14222,6 +14242,20 @@
PersonDuty.aspx
+
+ TestRunPerformance.aspx
+ ASPXCodeBehind
+
+
+ TestRunPerformance.aspx
+
+
+ TestRunPerformanceEdit.aspx
+ ASPXCodeBehind
+
+
+ TestRunPerformanceEdit.aspx
+
PersonCheck.aspx
ASPXCodeBehind
@@ -17939,6 +17973,20 @@
SuperviseCheckReportEdit.aspx
+
+ TestRunPerformanceMonthReport.aspx
+ ASPXCodeBehind
+
+
+ TestRunPerformanceMonthReport.aspx
+
+
+ TestRunPerformanceMonthReportEdit.aspx
+ ASPXCodeBehind
+
+
+ TestRunPerformanceMonthReportEdit.aspx
+
TestRunPerformanceStandard.aspx
ASPXCodeBehind
diff --git a/SGGL/FineUIPro.Web/Personal/BusinessTrip.aspx b/SGGL/FineUIPro.Web/Personal/BusinessTrip.aspx
new file mode 100644
index 00000000..2bc09a33
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Personal/BusinessTrip.aspx
@@ -0,0 +1,100 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="BusinessTrip.aspx.cs" Inherits="FineUIPro.Web.Personal.BusinessTrip" %>
+
+
+
+
+
+ 出差记录
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/Personal/BusinessTrip.aspx.cs b/SGGL/FineUIPro.Web/Personal/BusinessTrip.aspx.cs
new file mode 100644
index 00000000..9d50e619
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Personal/BusinessTrip.aspx.cs
@@ -0,0 +1,228 @@
+using BLL;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Data.SqlClient;
+using System.Linq;
+
+namespace FineUIPro.Web.Personal
+{
+ public partial class BusinessTrip : PageBase
+ {
+ ///
+ /// 加载页面
+ ///
+ ///
+ ///
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ Funs.DropDownPageSize(this.ddlPageSize);
+ if (this.CurrUser != null && this.CurrUser.PageSize.HasValue)
+ {
+ Grid1.PageSize = this.CurrUser.PageSize.Value;
+ }
+ this.ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
+ // 绑定表格
+ this.BindGrid();
+ ////权限按钮方法
+ this.GetButtonPower();
+ }
+ }
+
+ ///
+ /// 绑定数据
+ ///
+ private void BindGrid()
+ {
+ string strSql = @"SELECT trip.BusinessTripId,trip.ProjectId,trip.UserId,trip.ArriveDate,trip.LeaveDate,Users.UserName,Project.ProjectName,case trip.Type when '1' then '项目出差' when '2' then '其他出差' else '' end AS TypeStr "
+ + @" From dbo.Person_BusinessTrip AS trip"
+ + @" LEFT JOIN Sys_User AS Users ON Users.UserId=trip.UserId"
+ + @" LEFT JOIN Base_Project AS Project ON Project.ProjectId=trip.ProjectId"
+ + @" WHERE 1=1";
+ List listStr = new List();
+ if (this.rblType.SelectedValue!="0")
+ {
+ strSql += " AND trip.Type = @Type";
+ listStr.Add(new SqlParameter("@Type", this.rblType.SelectedValue));
+ }
+ if (this.CurrUser.UserId != BLL.Const.sysglyId && this.CurrUser.UserId != BLL.Const.hfnbdId)
+ {
+ strSql += " AND trip.UserId = @UserId";
+ listStr.Add(new SqlParameter("@UserId", this.CurrUser.UserId));
+ }
+ if (!string.IsNullOrEmpty(this.txtUserName.Text.Trim()))
+ {
+ strSql += " AND UserName LIKE @UserName";
+ listStr.Add(new SqlParameter("@UserName", "%" + this.txtUserName.Text.Trim() + "%"));
+ }
+ SqlParameter[] parameter = listStr.ToArray();
+ DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
+ Grid1.RecordCount = tb.Rows.Count;
+ var table = this.GetPagedDataTable(Grid1, tb);
+ Grid1.DataSource = table;
+ Grid1.DataBind();
+ if (this.rblType.SelectedValue == "0" || this.rblType.SelectedValue == "1")
+ {
+ this.Grid1.Columns[3].Hidden = false;
+ }
+ else
+ {
+ this.Grid1.Columns[3].Hidden = true;
+ }
+ }
+
+
+ #region 分页
+ ///
+ /// 分页
+ ///
+ ///
+ ///
+ protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
+ {
+ BindGrid();
+ }
+
+ ///
+ /// 分页显示条数下拉框
+ ///
+ ///
+ ///
+ protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
+ BindGrid();
+ }
+
+ ///
+ /// 排序
+ ///
+ ///
+ ///
+ protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
+ {
+ BindGrid();
+ }
+
+ #endregion
+
+ #region 删除数据
+ ///
+ /// 批量删除数据
+ ///
+ ///
+ ///
+ protected void btnMenuDelete_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length > 0)
+ {
+ foreach (int rowIndex in Grid1.SelectedRowIndexArray)
+ {
+ string rowID = Grid1.DataKeys[rowIndex][0].ToString();
+ var trip = Person_BusinessTripService.GetPersonBusinessTripById(rowID);
+ if (trip != null)
+ {
+ BLL.Person_BusinessTripService.DeletePersonBusinessTrip(rowID);
+ }
+ }
+ BindGrid();
+ ShowNotify("删除数据成功!", MessageBoxIcon.Success);
+ }
+ else
+ {
+ ShowNotify("请至少选中一行!", MessageBoxIcon.Warning);
+ }
+ }
+ #endregion
+
+ protected void btnNew_Click(object sender, EventArgs e)
+ {
+ var noEndTrip = (from x in Funs.DB.Person_BusinessTrip where x.UserId == this.CurrUser.UserId && (x.ArriveDate == null || x.LeaveDate == null) select x).FirstOrDefault();
+ if (noEndTrip != null)
+ {
+ ShowNotify("尚有一条记录到达/离开日期为空,请先完善信息后再新增出差记录!", MessageBoxIcon.Warning);
+ return;
+ }
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("BusinessTripEdit.aspx", "编辑 - ")));
+ }
+
+ #region 编辑
+ ///
+ /// 编辑
+ ///
+ ///
+ ///
+ protected void btnMenuEdit_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ Alert.ShowInParent("请至少选择一条记录!", MessageBoxIcon.Warning);
+ return;
+ }
+ string Id = Grid1.SelectedRowID;
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("BusinessTripEdit.aspx?BusinessTripId={0}", Id, "编辑 - ")));
+ }
+
+ ///
+ /// Grid行双击事件
+ ///
+ ///
+ ///
+ protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
+ {
+ btnMenuEdit_Click(null, null);
+ }
+ #endregion
+
+ #region 查询
+ ///
+ /// 查询
+ ///
+ ///
+ ///
+ protected void TextBox_TextChanged(object sender, EventArgs e)
+ {
+ this.BindGrid();
+ }
+ #endregion
+
+ #region 获取按钮权限
+ ///
+ /// 获取按钮权限
+ ///
+ ///
+ ///
+ private void GetButtonPower()
+ {
+ var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.BusinessTripMenuId);
+ if (buttonList.Count() > 0)
+ {
+ if (buttonList.Contains(BLL.Const.BtnAdd))
+ {
+ this.btnNew.Hidden = false;
+ }
+ if (buttonList.Contains(BLL.Const.BtnModify))
+ {
+ this.btnMenuEdit.Hidden = false;
+ }
+ if (buttonList.Contains(BLL.Const.BtnDelete))
+ {
+ this.btnMenuDelete.Hidden = false;
+ }
+ }
+ }
+ #endregion
+
+ protected void Window1_Close(object sender, EventArgs e)
+ {
+ BindGrid();
+ }
+
+ protected void rblType_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ BindGrid();
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/Personal/BusinessTrip.aspx.designer.cs b/SGGL/FineUIPro.Web/Personal/BusinessTrip.aspx.designer.cs
new file mode 100644
index 00000000..11962c5b
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Personal/BusinessTrip.aspx.designer.cs
@@ -0,0 +1,159 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.Personal {
+
+
+ public partial class BusinessTrip {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// Panel1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel Panel1;
+
+ ///
+ /// Grid1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Grid Grid1;
+
+ ///
+ /// Toolbar2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar2;
+
+ ///
+ /// txtUserName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtUserName;
+
+ ///
+ /// rblType 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.RadioButtonList rblType;
+
+ ///
+ /// ToolbarFill1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarFill ToolbarFill1;
+
+ ///
+ /// btnNew 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnNew;
+
+ ///
+ /// ToolbarSeparator1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
+
+ ///
+ /// ToolbarText1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarText ToolbarText1;
+
+ ///
+ /// ddlPageSize 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlPageSize;
+
+ ///
+ /// Window1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window Window1;
+
+ ///
+ /// Menu1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Menu Menu1;
+
+ ///
+ /// btnMenuEdit 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuEdit;
+
+ ///
+ /// btnMenuDelete 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuDelete;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/Personal/BusinessTripEdit.aspx b/SGGL/FineUIPro.Web/Personal/BusinessTripEdit.aspx
new file mode 100644
index 00000000..14f972df
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Personal/BusinessTripEdit.aspx
@@ -0,0 +1,57 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="BusinessTripEdit.aspx.cs" Inherits="FineUIPro.Web.Personal.BusinessTripEdit" %>
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/Personal/BusinessTripEdit.aspx.cs b/SGGL/FineUIPro.Web/Personal/BusinessTripEdit.aspx.cs
new file mode 100644
index 00000000..90703fa0
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Personal/BusinessTripEdit.aspx.cs
@@ -0,0 +1,129 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+using BLL;
+using Model;
+
+namespace FineUIPro.Web.Personal
+{
+ public partial class BusinessTripEdit : PageBase
+ {
+ ///
+ /// 定义项
+ ///
+ public string BusinessTripId
+ {
+ get
+ {
+ return (string)ViewState["BusinessTripId"];
+ }
+ set
+ {
+ ViewState["BusinessTripId"] = value;
+ }
+ }
+
+ ///
+ /// 加载页面
+ ///
+ ///
+ ///
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ this.btnClose.OnClientClick = ActiveWindow.GetHideReference();
+ ProjectService.InitAllProjectDropDownList(this.drpProject, true);
+ this.BusinessTripId = Request.QueryString["BusinessTripId"];
+ if (!String.IsNullOrEmpty(this.BusinessTripId))
+ {
+ var trip = BLL.Person_BusinessTripService.GetPersonBusinessTripById(this.BusinessTripId);
+ if (trip != null)
+ {
+ if (!string.IsNullOrEmpty(trip.Type))
+ {
+ this.rblType.SelectedValue = trip.Type;
+ }
+ if (this.rblType.SelectedValue == "1")
+ {
+ this.drpProject.Hidden = false;
+ }
+ else
+ {
+ this.drpProject.Hidden = true;
+ }
+ this.lbUserName.Text = BLL.UserService.GetUserNameByUserId(trip.UserId);
+ if (!string.IsNullOrEmpty(trip.ProjectId))
+ {
+ this.drpProject.SelectedValue = trip.ProjectId;
+ }
+ if (trip.ArriveDate != null)
+ {
+ this.txtArriveDate.Text = string.Format("{0:yyyy-MM-dd}", trip.ArriveDate);
+ }
+ if (trip.LeaveDate != null)
+ {
+ this.txtLeaveDate.Text = string.Format("{0:yyyy-MM-dd}", trip.LeaveDate);
+ }
+ }
+ }
+ else
+ {
+ this.lbUserName.Text = this.CurrUser.UserName;
+ }
+ }
+ }
+
+ ///
+ /// 保存数据
+ ///
+ ///
+ ///
+ protected void btnSave_Click(object sender, EventArgs e)
+ {
+ if (this.drpProject.SelectedValue == BLL.Const._Null && this.rblType.SelectedValue == "1")
+ {
+ Alert.ShowInParent("请选择项目!", MessageBoxIcon.Warning);
+ return;
+ }
+ Model.Person_BusinessTrip newTrip = new Model.Person_BusinessTrip()
+ {
+ Type = this.rblType.SelectedValue,
+ UserId = this.CurrUser.UserId,
+ ProjectId = this.drpProject.SelectedValue,
+ ArriveDate = Funs.GetNewDateTime(this.txtArriveDate.Text),
+ LeaveDate = Funs.GetNewDateTime(this.txtLeaveDate.Text),
+ };
+ if (!string.IsNullOrEmpty(this.BusinessTripId))
+ {
+ newTrip.BusinessTripId = this.BusinessTripId;
+ BLL.Person_BusinessTripService.UpdatePersonBusinessTrip(newTrip);
+ BLL.LogService.AddSys_Log(this.CurrUser, null, newTrip.BusinessTripId, BLL.Const.BusinessTripMenuId, BLL.Const.BtnAdd);
+ }
+ else
+ {
+ newTrip.BusinessTripId = SQLHelper.GetNewID();
+ BLL.Person_BusinessTripService.AddPersonBusinessTrip(newTrip);
+ BLL.LogService.AddSys_Log(this.CurrUser, null, newTrip.BusinessTripId, BLL.Const.BusinessTripMenuId, BLL.Const.BtnModify);
+ }
+
+ ShowNotify("保存成功!", MessageBoxIcon.Success);
+ PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
+ }
+
+ protected void rblType_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ if (this.rblType.SelectedValue == "1")
+ {
+ this.drpProject.Hidden = false;
+ }
+ else
+ {
+ this.drpProject.Hidden = true;
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/Personal/BusinessTripEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/Personal/BusinessTripEdit.aspx.designer.cs
new file mode 100644
index 00000000..4e44df4f
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Personal/BusinessTripEdit.aspx.designer.cs
@@ -0,0 +1,114 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.Personal {
+
+
+ public partial class BusinessTripEdit {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// SimpleForm1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Form SimpleForm1;
+
+ ///
+ /// rblType 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.RadioButtonList rblType;
+
+ ///
+ /// lbUserName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lbUserName;
+
+ ///
+ /// drpProject 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpProject;
+
+ ///
+ /// txtArriveDate 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DatePicker txtArriveDate;
+
+ ///
+ /// txtLeaveDate 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DatePicker txtLeaveDate;
+
+ ///
+ /// Toolbar1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar1;
+
+ ///
+ /// btnSave 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnSave;
+
+ ///
+ /// btnClose 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnClose;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/Personal/TestRunPerformance.aspx b/SGGL/FineUIPro.Web/Personal/TestRunPerformance.aspx
new file mode 100644
index 00000000..26a36620
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Personal/TestRunPerformance.aspx
@@ -0,0 +1,103 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TestRunPerformance.aspx.cs" Inherits="FineUIPro.Web.Personal.TestRunPerformance" %>
+
+
+
+
+
+ 开车绩效记录
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/Personal/TestRunPerformance.aspx.cs b/SGGL/FineUIPro.Web/Personal/TestRunPerformance.aspx.cs
new file mode 100644
index 00000000..362d5110
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Personal/TestRunPerformance.aspx.cs
@@ -0,0 +1,205 @@
+using BLL;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Data.SqlClient;
+using System.Linq;
+
+namespace FineUIPro.Web.Personal
+{
+ public partial class TestRunPerformance : PageBase
+ {
+ ///
+ /// 加载页面
+ ///
+ ///
+ ///
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ Funs.DropDownPageSize(this.ddlPageSize);
+ if (this.CurrUser != null && this.CurrUser.PageSize.HasValue)
+ {
+ Grid1.PageSize = this.CurrUser.PageSize.Value;
+ }
+ this.ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
+ // 绑定表格
+ this.BindGrid();
+ ////权限按钮方法
+ this.GetButtonPower();
+ }
+ }
+
+ ///
+ /// 绑定数据
+ ///
+ private void BindGrid()
+ {
+ string strSql = @"SELECT performance.TestRunPerformanceId,performance.ProjectId,performance.UserId,performance.Months,performance.JobContent,performance.TestRunPerformanceStandardId,Users.UserName,case when performance.ProjectId='0' then '本部' else Project.ProjectName end as ProjectName,Standard.Type,Standard.Item,Standard.Unit,Standard.Days "
+ + @" From dbo.Person_TestRunPerformance AS performance"
+ + @" LEFT JOIN Sys_User AS Users ON Users.UserId=performance.UserId"
+ + @" LEFT JOIN Base_Project AS Project ON Project.ProjectId=performance.ProjectId"
+ + @" LEFT JOIN Base_TestRunPerformanceStandard AS Standard ON Standard.TestRunPerformanceStandardId=performance.TestRunPerformanceStandardId"
+ + @" WHERE 1=1";
+ List listStr = new List();
+ if (this.CurrUser.UserId != BLL.Const.sysglyId && this.CurrUser.UserId != BLL.Const.hfnbdId)
+ {
+ strSql += " AND performance.UserId = @UserId";
+ listStr.Add(new SqlParameter("@UserId", this.CurrUser.UserId));
+ }
+ if (!string.IsNullOrEmpty(this.txtUserName.Text.Trim()))
+ {
+ strSql += " AND UserName LIKE @UserName";
+ listStr.Add(new SqlParameter("@UserName", "%" + this.txtUserName.Text.Trim() + "%"));
+ }
+ SqlParameter[] parameter = listStr.ToArray();
+ DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
+ Grid1.RecordCount = tb.Rows.Count;
+ var table = this.GetPagedDataTable(Grid1, tb);
+ Grid1.DataSource = table;
+ Grid1.DataBind();
+ }
+
+
+ #region 分页
+ ///
+ /// 分页
+ ///
+ ///
+ ///
+ protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
+ {
+ BindGrid();
+ }
+
+ ///
+ /// 分页显示条数下拉框
+ ///
+ ///
+ ///
+ protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
+ BindGrid();
+ }
+
+ ///
+ /// 排序
+ ///
+ ///
+ ///
+ protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
+ {
+ BindGrid();
+ }
+
+ #endregion
+
+ #region 删除数据
+ ///
+ /// 批量删除数据
+ ///
+ ///
+ ///
+ protected void btnMenuDelete_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length > 0)
+ {
+ foreach (int rowIndex in Grid1.SelectedRowIndexArray)
+ {
+ string rowID = Grid1.DataKeys[rowIndex][0].ToString();
+ var performance = Person_TestRunPerformanceService.GetPersonTestRunPerformanceById(rowID);
+ if (performance != null)
+ {
+ BLL.Person_TestRunPerformanceService.DeletePersonTestRunPerformance(rowID);
+ }
+ }
+ BindGrid();
+ ShowNotify("删除数据成功!", MessageBoxIcon.Success);
+ }
+ else
+ {
+ ShowNotify("请至少选中一行!", MessageBoxIcon.Warning);
+ }
+ }
+ #endregion
+
+ protected void btnNew_Click(object sender, EventArgs e)
+ {
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("TestRunPerformanceEdit.aspx", "编辑 - ")));
+ }
+
+ #region 编辑
+ ///
+ /// 编辑
+ ///
+ ///
+ ///
+ protected void btnMenuEdit_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ Alert.ShowInParent("请至少选择一条记录!", MessageBoxIcon.Warning);
+ return;
+ }
+ string Id = Grid1.SelectedRowID;
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("TestRunPerformanceEdit.aspx?TestRunPerformanceId={0}", Id, "编辑 - ")));
+ }
+
+ ///
+ /// Grid行双击事件
+ ///
+ ///
+ ///
+ protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
+ {
+ btnMenuEdit_Click(null, null);
+ }
+ #endregion
+
+ #region 查询
+ ///
+ /// 查询
+ ///
+ ///
+ ///
+ protected void TextBox_TextChanged(object sender, EventArgs e)
+ {
+ this.BindGrid();
+ }
+ #endregion
+
+ #region 获取按钮权限
+ ///
+ /// 获取按钮权限
+ ///
+ ///
+ ///
+ private void GetButtonPower()
+ {
+ var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.TestRunPerformanceMenuId);
+ if (buttonList.Count() > 0)
+ {
+ if (buttonList.Contains(BLL.Const.BtnAdd))
+ {
+ this.btnNew.Hidden = false;
+ }
+ if (buttonList.Contains(BLL.Const.BtnModify))
+ {
+ this.btnMenuEdit.Hidden = false;
+ }
+ if (buttonList.Contains(BLL.Const.BtnDelete))
+ {
+ this.btnMenuDelete.Hidden = false;
+ }
+ }
+ }
+ #endregion
+
+ protected void Window1_Close(object sender, EventArgs e)
+ {
+ BindGrid();
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/Personal/TestRunPerformance.aspx.designer.cs b/SGGL/FineUIPro.Web/Personal/TestRunPerformance.aspx.designer.cs
new file mode 100644
index 00000000..d8cb0af2
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Personal/TestRunPerformance.aspx.designer.cs
@@ -0,0 +1,150 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.Personal {
+
+
+ public partial class TestRunPerformance {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// Panel1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel Panel1;
+
+ ///
+ /// Grid1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Grid Grid1;
+
+ ///
+ /// Toolbar2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar2;
+
+ ///
+ /// txtUserName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtUserName;
+
+ ///
+ /// ToolbarFill1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarFill ToolbarFill1;
+
+ ///
+ /// btnNew 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnNew;
+
+ ///
+ /// ToolbarSeparator1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
+
+ ///
+ /// ToolbarText1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarText ToolbarText1;
+
+ ///
+ /// ddlPageSize 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlPageSize;
+
+ ///
+ /// Window1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window Window1;
+
+ ///
+ /// Menu1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Menu Menu1;
+
+ ///
+ /// btnMenuEdit 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuEdit;
+
+ ///
+ /// btnMenuDelete 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuDelete;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/Personal/TestRunPerformanceEdit.aspx b/SGGL/FineUIPro.Web/Personal/TestRunPerformanceEdit.aspx
new file mode 100644
index 00000000..00db8381
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Personal/TestRunPerformanceEdit.aspx
@@ -0,0 +1,67 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TestRunPerformanceEdit.aspx.cs" Inherits="FineUIPro.Web.Personal.TestRunPerformanceEdit" %>
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/Personal/TestRunPerformanceEdit.aspx.cs b/SGGL/FineUIPro.Web/Personal/TestRunPerformanceEdit.aspx.cs
new file mode 100644
index 00000000..e45cc0c3
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Personal/TestRunPerformanceEdit.aspx.cs
@@ -0,0 +1,208 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+using BLL;
+using Model;
+
+namespace FineUIPro.Web.Personal
+{
+ public partial class TestRunPerformanceEdit : PageBase
+ {
+ ///
+ /// 定义项
+ ///
+ public string TestRunPerformanceId
+ {
+ get
+ {
+ return (string)ViewState["TestRunPerformanceId"];
+ }
+ set
+ {
+ ViewState["TestRunPerformanceId"] = value;
+ }
+ }
+
+ ///
+ /// 加载页面
+ ///
+ ///
+ ///
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ this.btnClose.OnClientClick = ActiveWindow.GetHideReference();
+ ProjectService.InitAllProjectDropDownList2(this.drpProject, true);
+ this.TestRunPerformanceId = Request.QueryString["TestRunPerformanceId"];
+ TestRunPerformanceStandardService.InitTypeDropDownList(drpType, true);
+ Funs.FineUIPleaseSelect(this.drpItem);
+ Funs.FineUIPleaseSelect(this.drpUnit);
+ if (!String.IsNullOrEmpty(this.TestRunPerformanceId))
+ {
+ var performance = BLL.Person_TestRunPerformanceService.GetPersonTestRunPerformanceById(this.TestRunPerformanceId);
+ if (performance != null)
+ {
+ if (performance.Months != null)
+ {
+ this.txtMonths.Text = string.Format("{0:yyyy-MM-dd}", performance.Months);
+ }
+ this.lbUserName.Text = BLL.UserService.GetUserNameByUserId(performance.UserId);
+ if (!string.IsNullOrEmpty(performance.ProjectId))
+ {
+ this.drpProject.SelectedValue = performance.ProjectId;
+ }
+ this.txtJobContent.Text = performance.JobContent;
+ Model.Base_TestRunPerformanceStandard standard = BLL.TestRunPerformanceStandardService.GetPerformanceStandardById(performance.TestRunPerformanceStandardId);
+ if (standard != null)
+ {
+ this.drpType.SelectedValue = standard.Type;
+ TestRunPerformanceStandardService.InitItemDropDownList(drpItem, this.drpType.SelectedValue, true);
+ this.drpItem.SelectedValue = standard.Item;
+ TestRunPerformanceStandardService.InitUnitDropDownList(drpUnit, this.drpType.SelectedValue, this.drpItem.SelectedValue, true);
+ this.drpUnit.SelectedValue = standard.TestRunPerformanceStandardId;
+ }
+ if (performance.Days != null)
+ {
+ this.txtDays.Text = performance.Days.ToString();
+ }
+ }
+ }
+ else
+ {
+ this.lbUserName.Text = this.CurrUser.UserName;
+ }
+ }
+ }
+
+ ///
+ /// 保存数据
+ ///
+ ///
+ ///
+ protected void btnSave_Click(object sender, EventArgs e)
+ {
+ if (string.IsNullOrEmpty(this.txtMonths.Text.Trim()))
+ {
+ Alert.ShowInParent("请选择月份!", MessageBoxIcon.Warning);
+ return;
+ }
+ if (this.drpProject.SelectedValue == BLL.Const._Null)
+ {
+ Alert.ShowInParent("请选择工作地点!", MessageBoxIcon.Warning);
+ return;
+ }
+ if (this.drpType.SelectedValue == BLL.Const._Null)
+ {
+ Alert.ShowInParent("请选择工作类别!", MessageBoxIcon.Warning);
+ return;
+ }
+ if (this.drpItem.SelectedValue == BLL.Const._Null)
+ {
+ Alert.ShowInParent("请选择工作项!", MessageBoxIcon.Warning);
+ return;
+ }
+ if (this.drpUnit.SelectedValue == BLL.Const._Null)
+ {
+ Alert.ShowInParent("请选择计量单位!", MessageBoxIcon.Warning);
+ return;
+ }
+ if (this.txtDays.Text.Trim() == "0" || string.IsNullOrEmpty(this.txtDays.Text.Trim()))
+ {
+ Alert.ShowInParent("请输入标准工作日!", MessageBoxIcon.Warning);
+ return;
+ }
+ Model.Person_TestRunPerformance newperformance = new Model.Person_TestRunPerformance()
+ {
+ Months = Funs.GetNewDateTimeOrNow(this.txtMonths.Text.Trim()),
+ UserId = this.CurrUser.UserId,
+ ProjectId = this.drpProject.SelectedValue,
+ JobContent = this.txtJobContent.Text.Trim(),
+ TestRunPerformanceStandardId = this.drpUnit.SelectedValue,
+ Days = Funs.GetNewInt(this.txtDays.Text.Trim()),
+ };
+ if (!string.IsNullOrEmpty(this.TestRunPerformanceId))
+ {
+ newperformance.TestRunPerformanceId = this.TestRunPerformanceId;
+ BLL.Person_TestRunPerformanceService.UpdatePersonTestRunPerformance(newperformance);
+ BLL.LogService.AddSys_Log(this.CurrUser, null, newperformance.TestRunPerformanceId, BLL.Const.TestRunPerformanceMenuId, BLL.Const.BtnAdd);
+ }
+ else
+ {
+ newperformance.TestRunPerformanceId = SQLHelper.GetNewID();
+ BLL.Person_TestRunPerformanceService.AddPersonTestRunPerformance(newperformance);
+ BLL.LogService.AddSys_Log(this.CurrUser, null, newperformance.TestRunPerformanceId, BLL.Const.TestRunPerformanceMenuId, BLL.Const.BtnModify);
+ }
+
+ ShowNotify("保存成功!", MessageBoxIcon.Success);
+ PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
+ }
+
+ protected void drpType_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ if (this.drpType.SelectedValue != BLL.Const._Null)
+ {
+ TestRunPerformanceStandardService.InitItemDropDownList(drpItem, this.drpType.SelectedValue, true);
+ this.drpItem.SelectedIndex = 0;
+ this.drpUnit.Items.Clear();
+ Funs.FineUIPleaseSelect(this.drpUnit);
+ this.drpUnit.SelectedIndex = 0;
+ }
+ else
+ {
+ this.drpItem.Items.Clear();
+ Funs.FineUIPleaseSelect(this.drpItem);
+ this.drpItem.SelectedIndex = 0;
+ this.drpUnit.Items.Clear();
+ Funs.FineUIPleaseSelect(this.drpUnit);
+ this.drpUnit.SelectedIndex = 0;
+ }
+ }
+
+ protected void drpItem_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ if (this.drpItem.SelectedValue != BLL.Const._Null)
+ {
+ TestRunPerformanceStandardService.InitUnitDropDownList(drpUnit, this.drpType.SelectedValue,this.drpItem.SelectedValue, true);
+ this.drpUnit.SelectedIndex = 0;
+ }
+ else
+ {
+ this.drpUnit.Items.Clear();
+ Funs.FineUIPleaseSelect(this.drpUnit);
+ this.drpUnit.SelectedIndex = 0;
+ }
+ }
+
+ protected void drpUnit_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ if (this.drpUnit.SelectedValue != BLL.Const._Null)
+ {
+ Model.Base_TestRunPerformanceStandard standard = BLL.TestRunPerformanceStandardService.GetPerformanceStandardById(this.drpUnit.SelectedValue);
+ if (standard != null)
+ {
+ if (standard.Days != null)
+ {
+ this.txtDays.Text = standard.Days.ToString();
+ if (standard.Days > 0)
+ {
+ this.txtDays.Readonly = true;
+ }
+ else
+ {
+ this.txtDays.Readonly = false;
+ }
+ }
+ }
+ }
+ else
+ {
+ this.txtDays.Text = string.Empty;
+ this.txtDays.Readonly = true;
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/Personal/TestRunPerformanceEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/Personal/TestRunPerformanceEdit.aspx.designer.cs
new file mode 100644
index 00000000..22027a52
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Personal/TestRunPerformanceEdit.aspx.designer.cs
@@ -0,0 +1,141 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.Personal {
+
+
+ public partial class TestRunPerformanceEdit {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// SimpleForm1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Form SimpleForm1;
+
+ ///
+ /// txtMonths 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DatePicker txtMonths;
+
+ ///
+ /// lbUserName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lbUserName;
+
+ ///
+ /// drpProject 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpProject;
+
+ ///
+ /// txtJobContent 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextArea txtJobContent;
+
+ ///
+ /// drpType 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpType;
+
+ ///
+ /// drpItem 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpItem;
+
+ ///
+ /// drpUnit 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpUnit;
+
+ ///
+ /// txtDays 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.NumberBox txtDays;
+
+ ///
+ /// Toolbar1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar1;
+
+ ///
+ /// btnSave 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnSave;
+
+ ///
+ /// btnClose 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnClose;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SubThreeChecksFourDecisionEdit.aspx.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SubThreeChecksFourDecisionEdit.aspx.cs
index a14738c1..7a839ca2 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SubThreeChecksFourDecisionEdit.aspx.cs
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SubThreeChecksFourDecisionEdit.aspx.cs
@@ -22,6 +22,15 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
set { ViewState["DecisionId"] = value; }
}
+ ///
+ /// 子系统主键
+ ///
+ public string SubSystemId
+ {
+ get { return (string)ViewState["SubSystemId"]; }
+ set { ViewState["SubSystemId"] = value; }
+ }
+
///
/// 是否查看
///
@@ -45,6 +54,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
if (!IsPostBack)
{
this.DecisionId = Request["DecisionId"];
+ this.SubSystemId = Request["SubSystemId"];
//是否查看
this.IsView = string.IsNullOrWhiteSpace(Request["IsView"]) ? false : bool.Parse(Request["IsView"]);
//数据绑定
@@ -242,6 +252,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
model = new PreRun_SubThreeChecksFourDecision();
model.DecisionId = this.DecisionId = Guid.NewGuid().ToString();
model.ProjectId = this.CurrUser.LoginProjectId;
+ model.SubSystemId = this.SubSystemId;
}
model.ResponsibilityUser = ddlResponsibilityUser.SelectedValue;
model.ProposeUser = ddlProposeUser.SelectedValue;
@@ -257,6 +268,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
model.AddUser = this.CurrUser.LoginProjectId;
model.AddTime = DateTime.Now;
model.ResponsibilityProposeSatate = 0;
+ model.DecisionIsClose = 0;
if (isAdd)
{
Funs.DB.PreRun_SubThreeChecksFourDecision.InsertOnSubmit(model);
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SubThreeChecksFourDecisionList.aspx.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SubThreeChecksFourDecisionList.aspx.cs
index 5003abb5..289af0d1 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SubThreeChecksFourDecisionList.aspx.cs
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SubThreeChecksFourDecisionList.aspx.cs
@@ -221,7 +221,12 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
///
protected void btnAdd_Click(object sender, EventArgs e)
{
- PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SubThreeChecksFourDecisionEdit.aspx?DecisionId=", "新增 - ")));
+ if (string.IsNullOrWhiteSpace(tvControlItem.SelectedNodeID))
+ {
+ Alert.ShowInTop("请选择子系统!", MessageBoxIcon.Warning);
+ return;
+ }
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SubThreeChecksFourDecisionEdit.aspx?DecisionId=&SubSystemId=" + this.SsubSystemId, "新增 - ")));
}
///
@@ -244,7 +249,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
return;
}
}
- PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SubThreeChecksFourDecisionEdit.aspx?DecisionId={0}", Grid1.SelectedRowID, "编辑 - ")));
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SubThreeChecksFourDecisionEdit.aspx?DecisionId={0}&SubSystemId={1}", Grid1.SelectedRowID, this.SsubSystemId, "编辑 - ")));
}
///
@@ -800,8 +805,17 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
var result = string.Empty;
var diffDay = 0;
var itemState = 0;
- if (diffDayVal != null) diffDay = int.Parse(diffDayVal.ToString());
- if (stateVal != null) itemState = int.Parse(stateVal.ToString());
+ if (diffDayVal != null)
+ {
+ if (!string.IsNullOrWhiteSpace(diffDayVal.ToString()))
+ {
+ diffDay = int.Parse(diffDayVal.ToString());
+ }
+ }
+ if (stateVal != null)
+ {
+ if (!string.IsNullOrWhiteSpace(stateVal.ToString())) itemState = int.Parse(stateVal.ToString());
+ }
if (itemState != 1)
{
if (diffDay > 0)
diff --git a/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsBuyEdit.aspx b/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsBuyEdit.aspx
index 71d250f0..e32bf3a5 100644
--- a/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsBuyEdit.aspx
+++ b/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsBuyEdit.aspx
@@ -81,12 +81,15 @@
-
-
+
+
+
diff --git a/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsBuyEdit.aspx.cs b/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsBuyEdit.aspx.cs
index 9d913a87..dac2c68c 100644
--- a/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsBuyEdit.aspx.cs
+++ b/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsBuyEdit.aspx.cs
@@ -110,7 +110,7 @@ namespace FineUIPro.Web.TestRun.DriverGoods
item.GoodsBuyItemId = SQLHelper.GetNewID();
item.GoodsBuyId = newData.GoodsBuyId;
item.GoodsModelId = detail.GoodsModelId;
- item.Quantity = detail.Quantity;
+ item.Num = detail.Num;
item.RequiredTime = detail.RequiredTime;
BLL.GoodsBuyItemService.AddGoodsBuyItem(item);
}
@@ -151,7 +151,7 @@ namespace FineUIPro.Web.TestRun.DriverGoods
detail.Description = model.Description;
detail.Attachment = model.Attachment;
detail.Remark = model.Remark;
- detail.Quantity = values.Value("Quantity");
+ detail.Num = values.Value("Num");
string requiredTime = values.Value("RequiredTime");
if (!string.IsNullOrEmpty(requiredTime))
{
@@ -189,6 +189,7 @@ namespace FineUIPro.Web.TestRun.DriverGoods
detail.GoodsModelId = model.GoodsModelId;
detail.Purpose = model.Purpose;
detail.Description = model.Description;
+ detail.Quantity = model.Quantity;
detail.Attachment = model.Attachment;
detail.Remark = model.Remark;
details.Add(detail);
diff --git a/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsBuyEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsBuyEdit.aspx.designer.cs
index 0069f214..26679cc2 100644
--- a/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsBuyEdit.aspx.designer.cs
+++ b/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsBuyEdit.aspx.designer.cs
@@ -202,13 +202,13 @@ namespace FineUIPro.Web.TestRun.DriverGoods {
protected global::FineUIPro.Button btnNew;
///
- /// txtQuantity 控件。
+ /// txtNum 控件。
///
///
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
- protected global::FineUIPro.TextBox txtQuantity;
+ protected global::FineUIPro.TextBox txtNum;
///
/// txtRequiredTime 控件。
diff --git a/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsModel.aspx b/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsModel.aspx
index 0e0f7238..218f2b4d 100644
--- a/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsModel.aspx
+++ b/SGGL/FineUIPro.Web/TestRun/DriverGoods/GoodsModel.aspx
@@ -43,7 +43,7 @@
-
-
+
diff --git a/SGGL/FineUIPro.Web/TestRun/DriverGoods/ShowGoodsModel.aspx b/SGGL/FineUIPro.Web/TestRun/DriverGoods/ShowGoodsModel.aspx
index dbd5049c..c30911eb 100644
--- a/SGGL/FineUIPro.Web/TestRun/DriverGoods/ShowGoodsModel.aspx
+++ b/SGGL/FineUIPro.Web/TestRun/DriverGoods/ShowGoodsModel.aspx
@@ -44,7 +44,7 @@
-
+
+
+
+
+
+ 开车人员月绩效报告
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReport.aspx.cs b/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReport.aspx.cs
new file mode 100644
index 00000000..5d654f0b
--- /dev/null
+++ b/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReport.aspx.cs
@@ -0,0 +1,203 @@
+using BLL;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Data.SqlClient;
+using System.Linq;
+
+namespace FineUIPro.Web.ZHGL.TestRunPerformance
+{
+ public partial class TestRunPerformanceMonthReport : PageBase
+ {
+ ///
+ /// 加载页面
+ ///
+ ///
+ ///
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ Funs.DropDownPageSize(this.ddlPageSize);
+ if (this.CurrUser != null && this.CurrUser.PageSize.HasValue)
+ {
+ Grid1.PageSize = this.CurrUser.PageSize.Value;
+ }
+ this.ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
+ // 绑定表格
+ this.BindGrid();
+ ////权限按钮方法
+ this.GetButtonPower();
+ }
+ }
+
+ ///
+ /// 绑定数据
+ ///
+ private void BindGrid()
+ {
+ string strSql = @"SELECT performance.TestRunPerformanceMonthReportId,performance.Year,performance.UserId,performance.CompileDate,Users.UserName "
+ + @" From dbo.ZHGL_TestRunPerformanceMonthReport AS performance"
+ + @" LEFT JOIN Sys_User AS Users ON Users.UserId=performance.UserId"
+ + @" WHERE 1=1";
+ List listStr = new List();
+ if (this.CurrUser.UserId != BLL.Const.sysglyId && this.CurrUser.UserId != BLL.Const.hfnbdId)
+ {
+ strSql += " AND performance.UserId = @UserId";
+ listStr.Add(new SqlParameter("@UserId", this.CurrUser.UserId));
+ }
+ if (!string.IsNullOrEmpty(this.txtUserName.Text.Trim()))
+ {
+ strSql += " AND UserName LIKE @UserName";
+ listStr.Add(new SqlParameter("@UserName", "%" + this.txtUserName.Text.Trim() + "%"));
+ }
+ SqlParameter[] parameter = listStr.ToArray();
+ DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
+ Grid1.RecordCount = tb.Rows.Count;
+ var table = this.GetPagedDataTable(Grid1, tb);
+ Grid1.DataSource = table;
+ Grid1.DataBind();
+ }
+
+
+ #region 分页
+ ///
+ /// 分页
+ ///
+ ///
+ ///
+ protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
+ {
+ BindGrid();
+ }
+
+ ///
+ /// 分页显示条数下拉框
+ ///
+ ///
+ ///
+ protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
+ BindGrid();
+ }
+
+ ///
+ /// 排序
+ ///
+ ///
+ ///
+ protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
+ {
+ BindGrid();
+ }
+
+ #endregion
+
+ #region 删除数据
+ ///
+ /// 批量删除数据
+ ///
+ ///
+ ///
+ protected void btnMenuDelete_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length > 0)
+ {
+ foreach (int rowIndex in Grid1.SelectedRowIndexArray)
+ {
+ string rowID = Grid1.DataKeys[rowIndex][0].ToString();
+ var performance = TestRunPerformanceMonthReportService.GetTestRunPerformanceMonthReportById(rowID);
+ if (performance != null)
+ {
+ BLL.TestRunPerformanceMonthReportService.DeleteTestRunPerformanceMonthReportById(rowID);
+ }
+ }
+ BindGrid();
+ ShowNotify("删除数据成功!", MessageBoxIcon.Success);
+ }
+ else
+ {
+ ShowNotify("请至少选中一行!", MessageBoxIcon.Warning);
+ }
+ }
+ #endregion
+
+ protected void btnNew_Click(object sender, EventArgs e)
+ {
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("TestRunPerformanceMonthReportEdit.aspx", "编辑 - ")));
+ }
+
+ #region 编辑
+ ///
+ /// 编辑
+ ///
+ ///
+ ///
+ protected void btnMenuEdit_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ Alert.ShowInParent("请至少选择一条记录!", MessageBoxIcon.Warning);
+ return;
+ }
+ string Id = Grid1.SelectedRowID;
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("TestRunPerformanceMonthReportEdit.aspx?TestRunPerformanceMonthReportId={0}", Id, "编辑 - ")));
+ }
+
+ ///
+ /// Grid行双击事件
+ ///
+ ///
+ ///
+ protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
+ {
+ btnMenuEdit_Click(null, null);
+ }
+ #endregion
+
+ #region 查询
+ ///
+ /// 查询
+ ///
+ ///
+ ///
+ protected void TextBox_TextChanged(object sender, EventArgs e)
+ {
+ this.BindGrid();
+ }
+ #endregion
+
+ #region 获取按钮权限
+ ///
+ /// 获取按钮权限
+ ///
+ ///
+ ///
+ private void GetButtonPower()
+ {
+ var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.TestRunPerformanceMonthReportMenuId);
+ if (buttonList.Count() > 0)
+ {
+ if (buttonList.Contains(BLL.Const.BtnAdd))
+ {
+ this.btnNew.Hidden = false;
+ }
+ if (buttonList.Contains(BLL.Const.BtnModify))
+ {
+ this.btnMenuEdit.Hidden = false;
+ }
+ if (buttonList.Contains(BLL.Const.BtnDelete))
+ {
+ this.btnMenuDelete.Hidden = false;
+ }
+ }
+ }
+ #endregion
+
+ protected void Window1_Close(object sender, EventArgs e)
+ {
+ BindGrid();
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReport.aspx.designer.cs b/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReport.aspx.designer.cs
new file mode 100644
index 00000000..91f942cd
--- /dev/null
+++ b/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReport.aspx.designer.cs
@@ -0,0 +1,150 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.ZHGL.TestRunPerformance {
+
+
+ public partial class TestRunPerformanceMonthReport {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// Panel1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel Panel1;
+
+ ///
+ /// Grid1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Grid Grid1;
+
+ ///
+ /// Toolbar2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar2;
+
+ ///
+ /// txtUserName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtUserName;
+
+ ///
+ /// ToolbarFill1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarFill ToolbarFill1;
+
+ ///
+ /// btnNew 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnNew;
+
+ ///
+ /// ToolbarSeparator1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
+
+ ///
+ /// ToolbarText1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarText ToolbarText1;
+
+ ///
+ /// ddlPageSize 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlPageSize;
+
+ ///
+ /// Window1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window Window1;
+
+ ///
+ /// Menu1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Menu Menu1;
+
+ ///
+ /// btnMenuEdit 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuEdit;
+
+ ///
+ /// btnMenuDelete 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuDelete;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReportEdit.aspx b/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReportEdit.aspx
new file mode 100644
index 00000000..37cdf526
--- /dev/null
+++ b/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReportEdit.aspx
@@ -0,0 +1,144 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TestRunPerformanceMonthReportEdit.aspx.cs" Inherits="FineUIPro.Web.ZHGL.TestRunPerformance.TestRunPerformanceMonthReportEdit" %>
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReportEdit.aspx.cs b/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReportEdit.aspx.cs
new file mode 100644
index 00000000..8a396bd0
--- /dev/null
+++ b/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReportEdit.aspx.cs
@@ -0,0 +1,386 @@
+using BLL;
+using Newtonsoft.Json.Linq;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Linq;
+using System.Web.UI.WebControls;
+
+namespace FineUIPro.Web.ZHGL.TestRunPerformance
+{
+ public partial class TestRunPerformanceMonthReportEdit : PageBase
+ {
+
+ #region 加载
+ ///
+ /// 加载页面
+ ///
+ ///
+ ///
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ string Id = Request.Params["TestRunPerformanceMonthReportId"];
+ Model.SGGLDB db = Funs.DB;
+ var userIds = (from x in db.Person_TestRunPerformance select x.UserId).Distinct().ToList();
+ var users = from x in db.Sys_User where userIds.Contains(x.UserId) select x;
+ this.drpUser.DataTextField = "UserName";
+ this.drpUser.DataValueField = "UserId";
+ this.drpUser.DataSource = users;
+ this.drpUser.DataBind();
+ Funs.FineUIPleaseSelect(this.drpUser);
+ this.drpUser.SelectedValue = this.CurrUser.UserId;
+ Model.ZHGL_TestRunPerformanceMonthReport report = BLL.TestRunPerformanceMonthReportService.GetTestRunPerformanceMonthReportById(Id);
+ if (report != null)
+ {
+ if (!string.IsNullOrEmpty(report.UserId))
+ {
+ this.drpUser.SelectedValue = report.UserId;
+ }
+ if (report.Year != null)
+ {
+ this.txtYear.Text = report.Year.ToString();
+ }
+ if (this.drpUser.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.txtYear.Text.Trim()))
+ {
+ BindGrid();
+ }
+ }
+ }
+ }
+ #endregion
+
+ private void BindGrid()
+ {
+ Model.SGGLDB db = Funs.DB;
+ DateTime startDate = Convert.ToDateTime(this.txtYear.Text + "-01" + "-01");
+ DateTime endDate = startDate.AddYears(1);
+ var projects = from x in db.Base_Project select x;
+ var getTestRunPerformances = (from x in db.Person_TestRunPerformance
+ join y in db.Base_TestRunPerformanceStandard on x.TestRunPerformanceStandardId equals y.TestRunPerformanceStandardId
+ where x.UserId == this.drpUser.SelectedValue && x.Months >= startDate && x.Months < endDate
+ select new { x.Months, x.ProjectId, x.JobContent, y.Type, y.Item, y.Unit, y.Days }).ToList();
+ IQueryable getTrips = from x in db.Person_BusinessTrip
+ where x.UserId == this.drpUser.SelectedValue && x.LeaveDate >= startDate && x.ArriveDate < endDate
+ select x;
+ IQueryable getParentDetails = from x in db.View_WBS_CostControlParentDetail select x;
+ IQueryable getWbsSets = from x in db.Wbs_WbsSet select x;
+ IQueryable getWbsSetInits = from x in db.WBS_WbsSetInit select x;
+ IQueryable getUnitProjects = from x in db.Wbs_UnitProject select x;
+ IQueryable getUnitProjectInits = from x in db.Wbs_UnitProjectInit select x;
+ IQueryable getCnProfessions = from x in db.WBS_CnProfession select x;
+ IQueryable getCnProfessionInits = from x in db.WBS_CnProfessionInit select x;
+ IQueryable getInstallations = from x in db.Project_Installation select x;
+ IQueryable getCostControlDetailStatisticss = from x in db.View_WBS_CostControlDetailStatistics select x;
+ List CostControlDetailStatisticsList = new List();
+ if (getTestRunPerformances.Count() > 0)
+ {
+ DataTable table = new DataTable();
+ DateTime startMonth;
+ List months = new List();
+ startMonth = startDate;
+ do
+ {
+ months.Add(startMonth);
+ startMonth = startMonth.AddMonths(1);
+ } while (startMonth < endDate);
+
+ table.Columns.Add(new DataColumn("Id", typeof(String)));
+ table.Columns.Add(new DataColumn("Code", typeof(String)));
+ table.Columns.Add(new DataColumn("ProjectName", typeof(String)));
+ table.Columns.Add(new DataColumn("JobContent", typeof(String)));
+ table.Columns.Add(new DataColumn("IsForeign", typeof(String)));
+ table.Columns.Add(new DataColumn("Item1", typeof(String)));
+ table.Columns.Add(new DataColumn("Unit1", typeof(String)));
+ table.Columns.Add(new DataColumn("Days1", typeof(String)));
+ table.Columns.Add(new DataColumn("Item2", typeof(String)));
+ table.Columns.Add(new DataColumn("Unit2", typeof(String)));
+ table.Columns.Add(new DataColumn("Item3", typeof(String)));
+ table.Columns.Add(new DataColumn("Unit3", typeof(String)));
+ table.Columns.Add(new DataColumn("Item4", typeof(String)));
+ table.Columns.Add(new DataColumn("Unit4", typeof(String)));
+ table.Columns.Add(new DataColumn("Item5", typeof(String)));
+ table.Columns.Add(new DataColumn("Unit5", typeof(String)));
+ table.Columns.Add(new DataColumn("Days5", typeof(String)));
+ table.Columns.Add(new DataColumn("Item6", typeof(String)));
+ table.Columns.Add(new DataColumn("Unit6", typeof(String)));
+ table.Columns.Add(new DataColumn("Item7", typeof(String)));
+ table.Columns.Add(new DataColumn("Unit7", typeof(String)));
+ table.Columns.Add(new DataColumn("Days7", typeof(String)));
+ table.Columns.Add(new DataColumn("Item8", typeof(String)));
+ table.Columns.Add(new DataColumn("Unit8", typeof(String)));
+ table.Columns.Add(new DataColumn("Item9", typeof(String)));
+ table.Columns.Add(new DataColumn("Unit9", typeof(String)));
+ table.Columns.Add(new DataColumn("Days9", typeof(String)));
+ table.Columns.Add(new DataColumn("Item10", typeof(String)));
+ table.Columns.Add(new DataColumn("Unit10", typeof(String)));
+ table.Columns.Add(new DataColumn("Days10", typeof(String)));
+ table.Columns.Add(new DataColumn("Item11", typeof(String)));
+ table.Columns.Add(new DataColumn("Unit11", typeof(String)));
+ table.Columns.Add(new DataColumn("Item12", typeof(String)));
+ table.Columns.Add(new DataColumn("Unit12", typeof(String)));
+ table.Columns.Add(new DataColumn("Days12", typeof(String)));
+ table.Columns.Add(new DataColumn("SumDays", typeof(String)));
+ table.Columns.Add(new DataColumn("ProjectTripDays", typeof(String)));
+ table.Columns.Add(new DataColumn("OtherTripDays", typeof(String)));
+ table.Columns.Add(new DataColumn("SumDays1", typeof(String)));
+ table.Columns.Add(new DataColumn("SumDays3", typeof(String)));
+ int a = 1;
+ for (int i = 0; i < months.Count; i++)
+ {
+ DataRow row;
+ row = table.NewRow();
+ row["Id"] = SQLHelper.GetNewID();
+ row["Code"] = GetNum(i + 1);
+ row["ProjectName"] = months[i].Year + "年" + months[i].Month + "月开车绩效";
+ row["Item1"] = getTestRunPerformances.Where(x => x.Months == months[i] && x.Type == "部门基础工作").Sum(x => x.Days ?? 0);
+ row["Item2"] = getTestRunPerformances.Where(x => x.Months == months[i] && x.Type == "公司培训").Sum(x => x.Days ?? 0);
+ row["Item3"] = getTestRunPerformances.Where(x => x.Months == months[i] && x.Type == "项目投标").Sum(x => x.Days ?? 0);
+ row["Item4"] = getTestRunPerformances.Where(x => x.Months == months[i] && x.Type == "开车策划").Sum(x => x.Days ?? 0);
+ row["Item5"] = getTestRunPerformances.Where(x => x.Months == months[i] && x.Type == "开车培训").Sum(x => x.Days ?? 0);
+ row["Item6"] = getTestRunPerformances.Where(x => x.Months == months[i] && x.Type == "合同管理").Sum(x => x.Days ?? 0);
+ row["Item7"] = getTestRunPerformances.Where(x => x.Months == months[i] && x.Type == "预试车").Sum(x => x.Days ?? 0);
+ row["Item8"] = getTestRunPerformances.Where(x => x.Months == months[i] && x.Type == "试车").Sum(x => x.Days ?? 0);
+ row["Item9"] = getTestRunPerformances.Where(x => x.Months == months[i] && x.Type == "试运行及考核").Sum(x => x.Days ?? 0);
+ row["Item10"] = getTestRunPerformances.Where(x => x.Months == months[i] && x.Type == "开车收尾").Sum(x => x.Days ?? 0);
+ row["Item11"] = getTestRunPerformances.Where(x => x.Months == months[i] && x.Type == "项目协调").Sum(x => x.Days ?? 0);
+ row["Item12"] = getTestRunPerformances.Where(x => x.Months == months[i] && x.Type == "其他").Sum(x => x.Days ?? 0);
+ table.Rows.Add(row);
+ var monthList = getTestRunPerformances.Where(x => x.Months == months[i]);
+ a = 1;
+ foreach (var item in monthList)
+ {
+ row = table.NewRow();
+ row["Id"] = SQLHelper.GetNewID();
+ row["Code"] = a;
+ var project = projects.FirstOrDefault(x => x.ProjectId == item.ProjectId);
+ if (project != null)
+ {
+ row["ProjectName"] = project.ProjectName;
+ if (project.IsForeign == true)
+ {
+ row["IsForeign"] = "是";
+ }
+ else
+ {
+ row["IsForeign"] = "否";
+ }
+ }
+ else
+ {
+ row["ProjectName"] = "本部";
+ row["IsForeign"] = "否";
+ }
+ row["JobContent"] = item.JobContent;
+
+
+
+
+ table.Rows.Add(row);
+ a++;
+ }
+
+ }
+ //table.Columns.Add(new DataColumn("ShowId", typeof(String)));
+
+ //var costControls = getCostControls.Where(x => x.ProjectId == projectId);
+ //var details = getDetails.Where(x => x.ProjectId == projectId);
+ //var parentDetails = getParentDetails;
+ //var wbsSets = getWbsSets.Where(x => x.ProjectId == projectId);
+ //var wbsSetInits = getWbsSetInits;
+
+ //var unitProjects = getUnitProjects.Where(x => x.ProjectId == projectId);
+ //var unitProjectInits = getUnitProjectInits;
+ //var cnProfessions = getCnProfessions.Where(x => x.ProjectId == projectId);
+ //var cnProfessionInits = getCnProfessionInits;
+ //var installations = getInstallations.Where(x => x.ProjectId == projectId);
+
+ //CostControlDetailStatisticsList = getCostControlDetailStatisticss.Where(x => x.ProjectId == projectId).Distinct().ToList();
+ //List newList = new List();
+ //if (string.IsNullOrEmpty(Id)) //加载全项目记录
+ //{
+ // var installationList = CostControlDetailStatisticsList.Where(x => x.WBSType == "Installation" && x.SupId == "0");
+ // foreach (var item in installationList)
+ // {
+ // newList.Add(item);
+ // if (string.IsNullOrEmpty(IsOut))
+ // {
+ // AddDetail(newList, CostControlDetailStatisticsList, item.Id);
+ // }
+ // else
+ // {
+ // AddDetailOut(newList, CostControlDetailStatisticsList, item.Id, string.Empty);
+ // }
+ // }
+ //}
+ //else //加载选择节点及其子级
+ //{
+ // var node = CostControlDetailStatisticsList.FirstOrDefault(x => x.Id == Id);
+ // if (node != null)
+ // {
+ // newList.Add(node);
+ // if (string.IsNullOrEmpty(IsOut))
+ // {
+ // AddDetail(newList, CostControlDetailStatisticsList, node.Id);
+ // }
+ // else
+ // {
+ // AddDetailOut(newList, CostControlDetailStatisticsList, node.Id, string.Empty);
+ // }
+ // }
+ //}
+ //DataRow row;
+ //foreach (Model.View_WBS_CostControlDetailStatistics item in newList)
+ //{
+ // row = table.NewRow();
+ // row[0] = item.Id;
+ // row[1] = item.SupId;
+ // row[2] = item.Name;
+ // row[3] = item.ProjectId;
+ // Model.WBS_CostControl costControl = costControls.FirstOrDefault(x => x.CostControlId == item.Id);
+ // if (costControl != null)
+ // {
+ // row[4] = costControl.Unit;//单位
+ // if (costControl.TotalNum != null)
+ // {
+ // row[5] = decimal.Round(Convert.ToDecimal(costControl.TotalNum), 2);//合同工作量
+ // }
+ // if (costControl.RealPrice != null)
+ // {
+ // row[6] = decimal.Round(Convert.ToDecimal(costControl.RealPrice), 2);//成本单价
+ // }
+ // if (costControl.PlanPrice != null)
+ // {
+ // row[7] = decimal.Round(Convert.ToDecimal(costControl.PlanPrice), 2);//控制预算单价
+ // }
+ // if (costControl.PlanStartDate != null)
+ // {
+ // row[8] = costControl.PlanStartDate;//计划开始时间
+ // }
+ // if (costControl.PlanEndDate != null)
+ // {
+ // row[9] = costControl.PlanEndDate;//计划完成时间
+ // }
+ // if (costControl.RealStartDate != null)
+ // {
+ // row[10] = costControl.RealStartDate;//实际开始时间
+ // }
+ // if (costControl.RealEndDate != null)
+ // {
+ // row[11] = costControl.RealEndDate;//实际完成时间
+ // }
+ // var detail = details.Where(x => x.CostControlId == item.Id).ToList();
+ // foreach (var item1 in detail)
+ // {
+ // var index = months.FindIndex(x => x.Equals(item1.Months));
+ // if (item1.PlanNum != 0)
+ // {
+ // row[12 + index * 2] = decimal.Round(Convert.ToDecimal(item1.PlanNum), 2);
+ // }
+ // if (item1.ThisNum != 0)
+ // {
+ // row[13 + index * 2] = decimal.Round(Convert.ToDecimal(item1.ThisNum), 2);
+ // }
+
+ // }
+ // row[14 + (months.Count - 1) * 2] = item.Id;
+ // }
+ // else
+ // {
+
+ // }
+ // table.Rows.Add(row);
+ //}
+ this.Grid1.DataSource = table;
+ this.Grid1.DataBind();
+ }
+ }
+
+ private string GetNum(int i)
+ {
+ string num = string.Empty;
+ if (i == 1)
+ {
+ num = "一";
+ }
+ else if (i == 2)
+ {
+ num = "二";
+ }
+ else if (i == 3)
+ {
+ num = "三";
+ }
+ else if (i == 4)
+ {
+ num = "四";
+ }
+ else if (i == 5)
+ {
+ num = "五";
+ }
+ else if (i == 6)
+ {
+ num = "六";
+ }
+ else if (i == 7)
+ {
+ num = "七";
+ }
+ else if (i == 8)
+ {
+ num = "八";
+ }
+ else if (i == 9)
+ {
+ num = "九";
+ }
+ else if (i == 10)
+ {
+ num = "十";
+ }
+ else if (i == 11)
+ {
+ num = "十一";
+ }
+ else if (i == 12)
+ {
+ num = "十二";
+ }
+ return num;
+ }
+
+ #region 保存
+ ///
+ /// 保存按钮
+ ///
+ ///
+ ///
+ protected void btnSave_Click(object sender, EventArgs e)
+ {
+ Save();
+ ShowNotify("保存成功!", MessageBoxIcon.Success);
+ PageContext.RegisterStartupScript(ActiveWindow.GetHideReference());
+ }
+
+ private void Save()
+ {
+
+ }
+ #endregion
+
+ protected void drpUser_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ if (this.drpUser.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.txtYear.Text.Trim()))
+ {
+ BindGrid();
+ }
+ else
+ {
+ this.Grid1.DataSource = null;
+ this.Grid1.DataBind();
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReportEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReportEdit.aspx.designer.cs
new file mode 100644
index 00000000..f43f430e
--- /dev/null
+++ b/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceMonthReportEdit.aspx.designer.cs
@@ -0,0 +1,96 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.ZHGL.TestRunPerformance {
+
+
+ public partial class TestRunPerformanceMonthReportEdit {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// Panel1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel Panel1;
+
+ ///
+ /// Grid1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Grid Grid1;
+
+ ///
+ /// Toolbar2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar2;
+
+ ///
+ /// drpUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpUser;
+
+ ///
+ /// txtYear 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DatePicker txtYear;
+
+ ///
+ /// hdId 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox hdId;
+
+ ///
+ /// btnSave 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnSave;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceStandardEdit.aspx.cs b/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceStandardEdit.aspx.cs
index 416846a8..65ed1fcf 100644
--- a/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceStandardEdit.aspx.cs
+++ b/SGGL/FineUIPro.Web/ZHGL/TestRunPerformance/TestRunPerformanceStandardEdit.aspx.cs
@@ -47,7 +47,7 @@ namespace FineUIPro.Web.ZHGL.TestRunPerformance
string TestRunPerformanceStandardId = Request.Params["TestRunPerformanceStandardId"];
Model.Base_TestRunPerformanceStandard newItem = new Model.Base_TestRunPerformanceStandard();
newItem.Code = this.txtCode.Text.Trim();
- var strs = this.txtCode.Text.Trim().Split(',');
+ var strs = this.txtCode.Text.Trim().Split('.');
if (strs.Length == 2)
{
newItem.Code1 = Funs.GetNewInt(strs[0]);
diff --git a/SGGL/FineUIPro.Web/common/Menu_Personal.xml b/SGGL/FineUIPro.Web/common/Menu_Personal.xml
index ac8364da..8a497c41 100644
--- a/SGGL/FineUIPro.Web/common/Menu_Personal.xml
+++ b/SGGL/FineUIPro.Web/common/Menu_Personal.xml
@@ -7,4 +7,6 @@
+
+
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/common/Menu_ZHGL.xml b/SGGL/FineUIPro.Web/common/Menu_ZHGL.xml
index cc7e0f27..533bee11 100644
--- a/SGGL/FineUIPro.Web/common/Menu_ZHGL.xml
+++ b/SGGL/FineUIPro.Web/common/Menu_ZHGL.xml
@@ -84,5 +84,6 @@
+
\ No newline at end of file
diff --git a/SGGL/Model/Model.cs b/SGGL/Model/Model.cs
index 182fafcf..ba1e2196 100644
--- a/SGGL/Model/Model.cs
+++ b/SGGL/Model/Model.cs
@@ -1631,6 +1631,9 @@ namespace Model
partial void InsertPerfomance_PersonPerfomance(Perfomance_PersonPerfomance instance);
partial void UpdatePerfomance_PersonPerfomance(Perfomance_PersonPerfomance instance);
partial void DeletePerfomance_PersonPerfomance(Perfomance_PersonPerfomance instance);
+ partial void InsertPerson_BusinessTrip(Person_BusinessTrip instance);
+ partial void UpdatePerson_BusinessTrip(Person_BusinessTrip instance);
+ partial void DeletePerson_BusinessTrip(Person_BusinessTrip instance);
partial void InsertPerson_CompanyBranchPerson(Person_CompanyBranchPerson instance);
partial void UpdatePerson_CompanyBranchPerson(Person_CompanyBranchPerson instance);
partial void DeletePerson_CompanyBranchPerson(Person_CompanyBranchPerson instance);
@@ -1664,6 +1667,9 @@ namespace Model
partial void InsertPerson_ShuntDetail(Person_ShuntDetail instance);
partial void UpdatePerson_ShuntDetail(Person_ShuntDetail instance);
partial void DeletePerson_ShuntDetail(Person_ShuntDetail instance);
+ partial void InsertPerson_TestRunPerformance(Person_TestRunPerformance instance);
+ partial void UpdatePerson_TestRunPerformance(Person_TestRunPerformance instance);
+ partial void DeletePerson_TestRunPerformance(Person_TestRunPerformance instance);
partial void InsertPerson_TrainingCompany(Person_TrainingCompany instance);
partial void UpdatePerson_TrainingCompany(Person_TrainingCompany instance);
partial void DeletePerson_TrainingCompany(Person_TrainingCompany instance);
@@ -2555,6 +2561,9 @@ namespace Model
partial void InsertZHGL_ConstructionReportApprove(ZHGL_ConstructionReportApprove instance);
partial void UpdateZHGL_ConstructionReportApprove(ZHGL_ConstructionReportApprove instance);
partial void DeleteZHGL_ConstructionReportApprove(ZHGL_ConstructionReportApprove instance);
+ partial void InsertZHGL_TestRunPerformanceMonthReport(ZHGL_TestRunPerformanceMonthReport instance);
+ partial void UpdateZHGL_TestRunPerformanceMonthReport(ZHGL_TestRunPerformanceMonthReport instance);
+ partial void DeleteZHGL_TestRunPerformanceMonthReport(ZHGL_TestRunPerformanceMonthReport instance);
partial void InsertZHGL_WorkHandover(ZHGL_WorkHandover instance);
partial void UpdateZHGL_WorkHandover(ZHGL_WorkHandover instance);
partial void DeleteZHGL_WorkHandover(ZHGL_WorkHandover instance);
@@ -6870,6 +6879,14 @@ namespace Model
}
}
+ public System.Data.Linq.Table Person_BusinessTrip
+ {
+ get
+ {
+ return this.GetTable();
+ }
+ }
+
public System.Data.Linq.Table Person_CompanyBranchPerson
{
get
@@ -6958,6 +6975,14 @@ namespace Model
}
}
+ public System.Data.Linq.Table Person_TestRunPerformance
+ {
+ get
+ {
+ return this.GetTable();
+ }
+ }
+
public System.Data.Linq.Table Person_TrainingCompany
{
get
@@ -10350,6 +10375,14 @@ namespace Model
}
}
+ public System.Data.Linq.Table ZHGL_TestRunPerformanceMonthReport
+ {
+ get
+ {
+ return this.GetTable();
+ }
+ }
+
public System.Data.Linq.Table ZHGL_WorkHandover
{
get
@@ -37536,6 +37569,8 @@ namespace Model
private System.Nullable _Days;
+ private EntitySet _Person_TestRunPerformance;
+
#region 可扩展性方法定义
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
@@ -37562,6 +37597,7 @@ namespace Model
public Base_TestRunPerformanceStandard()
{
+ this._Person_TestRunPerformance = new EntitySet(new Action(this.attach_Person_TestRunPerformance), new Action(this.detach_Person_TestRunPerformance));
OnCreated();
}
@@ -37745,6 +37781,19 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Person_TestRunPerformance_Base_TestRunPerformanceStandard", Storage="_Person_TestRunPerformance", ThisKey="TestRunPerformanceStandardId", OtherKey="TestRunPerformanceStandardId", DeleteRule="NO ACTION")]
+ public EntitySet Person_TestRunPerformance
+ {
+ get
+ {
+ return this._Person_TestRunPerformance;
+ }
+ set
+ {
+ this._Person_TestRunPerformance.Assign(value);
+ }
+ }
+
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
@@ -37764,6 +37813,18 @@ namespace Model
this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
+
+ private void attach_Person_TestRunPerformance(Person_TestRunPerformance entity)
+ {
+ this.SendPropertyChanging();
+ entity.Base_TestRunPerformanceStandard = this;
+ }
+
+ private void detach_Person_TestRunPerformance(Person_TestRunPerformance entity)
+ {
+ this.SendPropertyChanging();
+ entity.Base_TestRunPerformanceStandard = null;
+ }
}
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Base_TrainLevel")]
@@ -123005,6 +123066,8 @@ namespace Model
private System.Nullable _RequiredTime;
+ private string _Num;
+
private EntityRef _DriverGoods_GoodsModel;
#region 可扩展性方法定义
@@ -123021,6 +123084,8 @@ namespace Model
partial void OnQuantityChanged();
partial void OnRequiredTimeChanging(System.Nullable value);
partial void OnRequiredTimeChanged();
+ partial void OnNumChanging(string value);
+ partial void OnNumChanged();
#endregion
public DriverGoods_GoodsBuyItem()
@@ -123133,6 +123198,26 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Num", DbType="NVarChar(50)")]
+ public string Num
+ {
+ get
+ {
+ return this._Num;
+ }
+ set
+ {
+ if ((this._Num != value))
+ {
+ this.OnNumChanging(value);
+ this.SendPropertyChanging();
+ this._Num = value;
+ this.SendPropertyChanged("Num");
+ this.OnNumChanged();
+ }
+ }
+ }
+
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_DriverGoods_GoodsBuyItem_DriverGoods_GoodsModel", Storage="_DriverGoods_GoodsModel", ThisKey="GoodsModelId", OtherKey="GoodsModelId", IsForeignKey=true)]
public DriverGoods_GoodsModel DriverGoods_GoodsModel
{
@@ -259893,6 +259978,229 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Person_BusinessTrip")]
+ public partial class Person_BusinessTrip : INotifyPropertyChanging, INotifyPropertyChanged
+ {
+
+ private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+
+ private string _BusinessTripId;
+
+ private string _Type;
+
+ private string _ProjectId;
+
+ private string _UserId;
+
+ private System.Nullable _ArriveDate;
+
+ private System.Nullable _LeaveDate;
+
+ private EntityRef _Sys_User;
+
+ #region 可扩展性方法定义
+ partial void OnLoaded();
+ partial void OnValidate(System.Data.Linq.ChangeAction action);
+ partial void OnCreated();
+ partial void OnBusinessTripIdChanging(string value);
+ partial void OnBusinessTripIdChanged();
+ partial void OnTypeChanging(string value);
+ partial void OnTypeChanged();
+ partial void OnProjectIdChanging(string value);
+ partial void OnProjectIdChanged();
+ partial void OnUserIdChanging(string value);
+ partial void OnUserIdChanged();
+ partial void OnArriveDateChanging(System.Nullable value);
+ partial void OnArriveDateChanged();
+ partial void OnLeaveDateChanging(System.Nullable value);
+ partial void OnLeaveDateChanged();
+ #endregion
+
+ public Person_BusinessTrip()
+ {
+ this._Sys_User = default(EntityRef);
+ OnCreated();
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_BusinessTripId", DbType="NVarChar(50) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
+ public string BusinessTripId
+ {
+ get
+ {
+ return this._BusinessTripId;
+ }
+ set
+ {
+ if ((this._BusinessTripId != value))
+ {
+ this.OnBusinessTripIdChanging(value);
+ this.SendPropertyChanging();
+ this._BusinessTripId = value;
+ this.SendPropertyChanged("BusinessTripId");
+ this.OnBusinessTripIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Type", DbType="Char(1)")]
+ public string Type
+ {
+ get
+ {
+ return this._Type;
+ }
+ set
+ {
+ if ((this._Type != value))
+ {
+ this.OnTypeChanging(value);
+ this.SendPropertyChanging();
+ this._Type = value;
+ this.SendPropertyChanged("Type");
+ this.OnTypeChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjectId", DbType="NVarChar(50)")]
+ public string ProjectId
+ {
+ get
+ {
+ return this._ProjectId;
+ }
+ set
+ {
+ if ((this._ProjectId != value))
+ {
+ this.OnProjectIdChanging(value);
+ this.SendPropertyChanging();
+ this._ProjectId = value;
+ this.SendPropertyChanged("ProjectId");
+ this.OnProjectIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="NVarChar(50)")]
+ public string UserId
+ {
+ get
+ {
+ return this._UserId;
+ }
+ set
+ {
+ if ((this._UserId != value))
+ {
+ if (this._Sys_User.HasLoadedOrAssignedValue)
+ {
+ throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
+ }
+ this.OnUserIdChanging(value);
+ this.SendPropertyChanging();
+ this._UserId = value;
+ this.SendPropertyChanged("UserId");
+ this.OnUserIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ArriveDate", DbType="DateTime")]
+ public System.Nullable ArriveDate
+ {
+ get
+ {
+ return this._ArriveDate;
+ }
+ set
+ {
+ if ((this._ArriveDate != value))
+ {
+ this.OnArriveDateChanging(value);
+ this.SendPropertyChanging();
+ this._ArriveDate = value;
+ this.SendPropertyChanged("ArriveDate");
+ this.OnArriveDateChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LeaveDate", DbType="DateTime")]
+ public System.Nullable LeaveDate
+ {
+ get
+ {
+ return this._LeaveDate;
+ }
+ set
+ {
+ if ((this._LeaveDate != value))
+ {
+ this.OnLeaveDateChanging(value);
+ this.SendPropertyChanging();
+ this._LeaveDate = value;
+ this.SendPropertyChanged("LeaveDate");
+ this.OnLeaveDateChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Person_BusinessTrip_Sys_User", Storage="_Sys_User", ThisKey="UserId", OtherKey="UserId", IsForeignKey=true)]
+ public Sys_User Sys_User
+ {
+ get
+ {
+ return this._Sys_User.Entity;
+ }
+ set
+ {
+ Sys_User previousValue = this._Sys_User.Entity;
+ if (((previousValue != value)
+ || (this._Sys_User.HasLoadedOrAssignedValue == false)))
+ {
+ this.SendPropertyChanging();
+ if ((previousValue != null))
+ {
+ this._Sys_User.Entity = null;
+ previousValue.Person_BusinessTrip.Remove(this);
+ }
+ this._Sys_User.Entity = value;
+ if ((value != null))
+ {
+ value.Person_BusinessTrip.Add(this);
+ this._UserId = value.UserId;
+ }
+ else
+ {
+ this._UserId = default(string);
+ }
+ this.SendPropertyChanged("Sys_User");
+ }
+ }
+ }
+
+ public event PropertyChangingEventHandler PropertyChanging;
+
+ public event PropertyChangedEventHandler PropertyChanged;
+
+ protected virtual void SendPropertyChanging()
+ {
+ if ((this.PropertyChanging != null))
+ {
+ this.PropertyChanging(this, emptyChangingEventArgs);
+ }
+ }
+
+ protected virtual void SendPropertyChanged(String propertyName)
+ {
+ if ((this.PropertyChanged != null))
+ {
+ this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+ }
+ }
+ }
+
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Person_CompanyBranchPerson")]
public partial class Person_CompanyBranchPerson : INotifyPropertyChanging, INotifyPropertyChanged
{
@@ -263550,6 +263858,294 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Person_TestRunPerformance")]
+ public partial class Person_TestRunPerformance : INotifyPropertyChanging, INotifyPropertyChanged
+ {
+
+ private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+
+ private string _TestRunPerformanceId;
+
+ private string _ProjectId;
+
+ private string _UserId;
+
+ private System.Nullable _Months;
+
+ private string _JobContent;
+
+ private string _TestRunPerformanceStandardId;
+
+ private System.Nullable _Days;
+
+ private EntityRef _Base_TestRunPerformanceStandard;
+
+ private EntityRef _Sys_User;
+
+ #region 可扩展性方法定义
+ partial void OnLoaded();
+ partial void OnValidate(System.Data.Linq.ChangeAction action);
+ partial void OnCreated();
+ partial void OnTestRunPerformanceIdChanging(string value);
+ partial void OnTestRunPerformanceIdChanged();
+ partial void OnProjectIdChanging(string value);
+ partial void OnProjectIdChanged();
+ partial void OnUserIdChanging(string value);
+ partial void OnUserIdChanged();
+ partial void OnMonthsChanging(System.Nullable value);
+ partial void OnMonthsChanged();
+ partial void OnJobContentChanging(string value);
+ partial void OnJobContentChanged();
+ partial void OnTestRunPerformanceStandardIdChanging(string value);
+ partial void OnTestRunPerformanceStandardIdChanged();
+ partial void OnDaysChanging(System.Nullable value);
+ partial void OnDaysChanged();
+ #endregion
+
+ public Person_TestRunPerformance()
+ {
+ this._Base_TestRunPerformanceStandard = default(EntityRef);
+ this._Sys_User = default(EntityRef);
+ OnCreated();
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TestRunPerformanceId", DbType="NVarChar(50) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
+ public string TestRunPerformanceId
+ {
+ get
+ {
+ return this._TestRunPerformanceId;
+ }
+ set
+ {
+ if ((this._TestRunPerformanceId != value))
+ {
+ this.OnTestRunPerformanceIdChanging(value);
+ this.SendPropertyChanging();
+ this._TestRunPerformanceId = value;
+ this.SendPropertyChanged("TestRunPerformanceId");
+ this.OnTestRunPerformanceIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjectId", DbType="NVarChar(50)")]
+ public string ProjectId
+ {
+ get
+ {
+ return this._ProjectId;
+ }
+ set
+ {
+ if ((this._ProjectId != value))
+ {
+ this.OnProjectIdChanging(value);
+ this.SendPropertyChanging();
+ this._ProjectId = value;
+ this.SendPropertyChanged("ProjectId");
+ this.OnProjectIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="NVarChar(50)")]
+ public string UserId
+ {
+ get
+ {
+ return this._UserId;
+ }
+ set
+ {
+ if ((this._UserId != value))
+ {
+ if (this._Sys_User.HasLoadedOrAssignedValue)
+ {
+ throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
+ }
+ this.OnUserIdChanging(value);
+ this.SendPropertyChanging();
+ this._UserId = value;
+ this.SendPropertyChanged("UserId");
+ this.OnUserIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Months", DbType="DateTime")]
+ public System.Nullable Months
+ {
+ get
+ {
+ return this._Months;
+ }
+ set
+ {
+ if ((this._Months != value))
+ {
+ this.OnMonthsChanging(value);
+ this.SendPropertyChanging();
+ this._Months = value;
+ this.SendPropertyChanged("Months");
+ this.OnMonthsChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_JobContent", DbType="NVarChar(300)")]
+ public string JobContent
+ {
+ get
+ {
+ return this._JobContent;
+ }
+ set
+ {
+ if ((this._JobContent != value))
+ {
+ this.OnJobContentChanging(value);
+ this.SendPropertyChanging();
+ this._JobContent = value;
+ this.SendPropertyChanged("JobContent");
+ this.OnJobContentChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TestRunPerformanceStandardId", DbType="NVarChar(50)")]
+ public string TestRunPerformanceStandardId
+ {
+ get
+ {
+ return this._TestRunPerformanceStandardId;
+ }
+ set
+ {
+ if ((this._TestRunPerformanceStandardId != value))
+ {
+ if (this._Base_TestRunPerformanceStandard.HasLoadedOrAssignedValue)
+ {
+ throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
+ }
+ this.OnTestRunPerformanceStandardIdChanging(value);
+ this.SendPropertyChanging();
+ this._TestRunPerformanceStandardId = value;
+ this.SendPropertyChanged("TestRunPerformanceStandardId");
+ this.OnTestRunPerformanceStandardIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Days", DbType="Int")]
+ public System.Nullable Days
+ {
+ get
+ {
+ return this._Days;
+ }
+ set
+ {
+ if ((this._Days != value))
+ {
+ this.OnDaysChanging(value);
+ this.SendPropertyChanging();
+ this._Days = value;
+ this.SendPropertyChanged("Days");
+ this.OnDaysChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Person_TestRunPerformance_Base_TestRunPerformanceStandard", Storage="_Base_TestRunPerformanceStandard", ThisKey="TestRunPerformanceStandardId", OtherKey="TestRunPerformanceStandardId", IsForeignKey=true)]
+ public Base_TestRunPerformanceStandard Base_TestRunPerformanceStandard
+ {
+ get
+ {
+ return this._Base_TestRunPerformanceStandard.Entity;
+ }
+ set
+ {
+ Base_TestRunPerformanceStandard previousValue = this._Base_TestRunPerformanceStandard.Entity;
+ if (((previousValue != value)
+ || (this._Base_TestRunPerformanceStandard.HasLoadedOrAssignedValue == false)))
+ {
+ this.SendPropertyChanging();
+ if ((previousValue != null))
+ {
+ this._Base_TestRunPerformanceStandard.Entity = null;
+ previousValue.Person_TestRunPerformance.Remove(this);
+ }
+ this._Base_TestRunPerformanceStandard.Entity = value;
+ if ((value != null))
+ {
+ value.Person_TestRunPerformance.Add(this);
+ this._TestRunPerformanceStandardId = value.TestRunPerformanceStandardId;
+ }
+ else
+ {
+ this._TestRunPerformanceStandardId = default(string);
+ }
+ this.SendPropertyChanged("Base_TestRunPerformanceStandard");
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Person_TestRunPerformance_Sys_User", Storage="_Sys_User", ThisKey="UserId", OtherKey="UserId", IsForeignKey=true)]
+ public Sys_User Sys_User
+ {
+ get
+ {
+ return this._Sys_User.Entity;
+ }
+ set
+ {
+ Sys_User previousValue = this._Sys_User.Entity;
+ if (((previousValue != value)
+ || (this._Sys_User.HasLoadedOrAssignedValue == false)))
+ {
+ this.SendPropertyChanging();
+ if ((previousValue != null))
+ {
+ this._Sys_User.Entity = null;
+ previousValue.Person_TestRunPerformance.Remove(this);
+ }
+ this._Sys_User.Entity = value;
+ if ((value != null))
+ {
+ value.Person_TestRunPerformance.Add(this);
+ this._UserId = value.UserId;
+ }
+ else
+ {
+ this._UserId = default(string);
+ }
+ this.SendPropertyChanged("Sys_User");
+ }
+ }
+ }
+
+ public event PropertyChangingEventHandler PropertyChanging;
+
+ public event PropertyChangedEventHandler PropertyChanged;
+
+ protected virtual void SendPropertyChanging()
+ {
+ if ((this.PropertyChanging != null))
+ {
+ this.PropertyChanging(this, emptyChangingEventArgs);
+ }
+ }
+
+ protected virtual void SendPropertyChanged(String propertyName)
+ {
+ if ((this.PropertyChanged != null))
+ {
+ this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+ }
+ }
+ }
+
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Person_TrainingCompany")]
public partial class Person_TrainingCompany : INotifyPropertyChanging, INotifyPropertyChanged
{
@@ -338946,6 +339542,8 @@ namespace Model
private EntitySet _Perfomance_PersonPerfomance;
+ private EntitySet _Person_BusinessTrip;
+
private EntitySet _Person_Duty;
private EntitySet _Person_Duty_Sys_User1;
@@ -338968,6 +339566,8 @@ namespace Model
private EntitySet _Person_ShuntDetail;
+ private EntitySet _Person_TestRunPerformance;
+
private EntitySet _Person_TrainingPerson;
private EntitySet _Person_TrainingPlan;
@@ -339499,6 +340099,7 @@ namespace Model
this._Party_WorkPlan = new EntitySet(new Action(this.attach_Party_WorkPlan), new Action(this.detach_Party_WorkPlan));
this._Perfomance_PerfomanceRecord = new EntitySet(new Action(this.attach_Perfomance_PerfomanceRecord), new Action(this.detach_Perfomance_PerfomanceRecord));
this._Perfomance_PersonPerfomance = new EntitySet(new Action(this.attach_Perfomance_PersonPerfomance), new Action(this.detach_Perfomance_PersonPerfomance));
+ this._Person_BusinessTrip = new EntitySet(new Action(this.attach_Person_BusinessTrip), new Action(this.detach_Person_BusinessTrip));
this._Person_Duty = new EntitySet(new Action(this.attach_Person_Duty), new Action(this.detach_Person_Duty));
this._Person_Duty_Sys_User1 = new EntitySet(new Action(this.attach_Person_Duty_Sys_User1), new Action(this.detach_Person_Duty_Sys_User1));
this._Person_Duty_Sys_User2 = new EntitySet(new Action(this.attach_Person_Duty_Sys_User2), new Action(this.detach_Person_Duty_Sys_User2));
@@ -339510,6 +340111,7 @@ namespace Model
this._Person_Shunt = new EntitySet(new Action(this.attach_Person_Shunt), new Action(this.detach_Person_Shunt));
this._Person_ShuntApprove = new EntitySet(new Action(this.attach_Person_ShuntApprove), new Action(this.detach_Person_ShuntApprove));
this._Person_ShuntDetail = new EntitySet(new Action(this.attach_Person_ShuntDetail), new Action(this.detach_Person_ShuntDetail));
+ this._Person_TestRunPerformance = new EntitySet(new Action(this.attach_Person_TestRunPerformance), new Action(this.detach_Person_TestRunPerformance));
this._Person_TrainingPerson = new EntitySet(new Action(this.attach_Person_TrainingPerson), new Action(this.detach_Person_TrainingPerson));
this._Person_TrainingPlan = new EntitySet(new Action(this.attach_Person_TrainingPlan), new Action(this.detach_Person_TrainingPlan));
this._Person_TrainingPlan_Sys_User1 = new EntitySet(new Action(this.attach_Person_TrainingPlan_Sys_User1), new Action(this.detach_Person_TrainingPlan_Sys_User1));
@@ -343722,6 +344324,19 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Person_BusinessTrip_Sys_User", Storage="_Person_BusinessTrip", ThisKey="UserId", OtherKey="UserId", DeleteRule="NO ACTION")]
+ public EntitySet Person_BusinessTrip
+ {
+ get
+ {
+ return this._Person_BusinessTrip;
+ }
+ set
+ {
+ this._Person_BusinessTrip.Assign(value);
+ }
+ }
+
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Person_Duty_Sys_User", Storage="_Person_Duty", ThisKey="UserId", OtherKey="DutyPersonId", DeleteRule="NO ACTION")]
public EntitySet Person_Duty
{
@@ -343865,6 +344480,19 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Person_TestRunPerformance_Sys_User", Storage="_Person_TestRunPerformance", ThisKey="UserId", OtherKey="UserId", DeleteRule="NO ACTION")]
+ public EntitySet Person_TestRunPerformance
+ {
+ get
+ {
+ return this._Person_TestRunPerformance;
+ }
+ set
+ {
+ this._Person_TestRunPerformance.Assign(value);
+ }
+ }
+
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Person_TrainingPerson_Sys_User", Storage="_Person_TrainingPerson", ThisKey="UserId", OtherKey="TrainingUserId", DeleteRule="NO ACTION")]
public EntitySet Person_TrainingPerson
{
@@ -348009,6 +348637,18 @@ namespace Model
entity.Sys_User = null;
}
+ private void attach_Person_BusinessTrip(Person_BusinessTrip entity)
+ {
+ this.SendPropertyChanging();
+ entity.Sys_User = this;
+ }
+
+ private void detach_Person_BusinessTrip(Person_BusinessTrip entity)
+ {
+ this.SendPropertyChanging();
+ entity.Sys_User = null;
+ }
+
private void attach_Person_Duty(Person_Duty entity)
{
this.SendPropertyChanging();
@@ -348141,6 +348781,18 @@ namespace Model
entity.Sys_User = null;
}
+ private void attach_Person_TestRunPerformance(Person_TestRunPerformance entity)
+ {
+ this.SendPropertyChanging();
+ entity.Sys_User = this;
+ }
+
+ private void detach_Person_TestRunPerformance(Person_TestRunPerformance entity)
+ {
+ this.SendPropertyChanging();
+ entity.Sys_User = null;
+ }
+
private void attach_Person_TrainingPerson(Person_TrainingPerson entity)
{
this.SendPropertyChanging();
@@ -387660,6 +388312,8 @@ namespace Model
private string _GoodsModelId;
+ private string _Num;
+
private string _Quantity;
private System.Nullable _RequiredTime;
@@ -387728,6 +388382,22 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Num", DbType="NVarChar(50)")]
+ public string Num
+ {
+ get
+ {
+ return this._Num;
+ }
+ set
+ {
+ if ((this._Num != value))
+ {
+ this._Num = value;
+ }
+ }
+ }
+
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Quantity", DbType="NVarChar(50)")]
public string Quantity
{
@@ -440088,6 +440758,164 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ZHGL_TestRunPerformanceMonthReport")]
+ public partial class ZHGL_TestRunPerformanceMonthReport : INotifyPropertyChanging, INotifyPropertyChanged
+ {
+
+ private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+
+ private string _TestRunPerformanceMonthReportId;
+
+ private System.Nullable _Year;
+
+ private string _UserId;
+
+ private string _CompileMan;
+
+ private System.Nullable _CompileDate;
+
+ #region 可扩展性方法定义
+ partial void OnLoaded();
+ partial void OnValidate(System.Data.Linq.ChangeAction action);
+ partial void OnCreated();
+ partial void OnTestRunPerformanceMonthReportIdChanging(string value);
+ partial void OnTestRunPerformanceMonthReportIdChanged();
+ partial void OnYearChanging(System.Nullable value);
+ partial void OnYearChanged();
+ partial void OnUserIdChanging(string value);
+ partial void OnUserIdChanged();
+ partial void OnCompileManChanging(string value);
+ partial void OnCompileManChanged();
+ partial void OnCompileDateChanging(System.Nullable value);
+ partial void OnCompileDateChanged();
+ #endregion
+
+ public ZHGL_TestRunPerformanceMonthReport()
+ {
+ OnCreated();
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TestRunPerformanceMonthReportId", DbType="NVarChar(50) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
+ public string TestRunPerformanceMonthReportId
+ {
+ get
+ {
+ return this._TestRunPerformanceMonthReportId;
+ }
+ set
+ {
+ if ((this._TestRunPerformanceMonthReportId != value))
+ {
+ this.OnTestRunPerformanceMonthReportIdChanging(value);
+ this.SendPropertyChanging();
+ this._TestRunPerformanceMonthReportId = value;
+ this.SendPropertyChanged("TestRunPerformanceMonthReportId");
+ this.OnTestRunPerformanceMonthReportIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Year", DbType="Int")]
+ public System.Nullable Year
+ {
+ get
+ {
+ return this._Year;
+ }
+ set
+ {
+ if ((this._Year != value))
+ {
+ this.OnYearChanging(value);
+ this.SendPropertyChanging();
+ this._Year = value;
+ this.SendPropertyChanged("Year");
+ this.OnYearChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="NVarChar(50)")]
+ public string UserId
+ {
+ get
+ {
+ return this._UserId;
+ }
+ set
+ {
+ if ((this._UserId != value))
+ {
+ this.OnUserIdChanging(value);
+ this.SendPropertyChanging();
+ this._UserId = value;
+ this.SendPropertyChanged("UserId");
+ this.OnUserIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CompileMan", DbType="NVarChar(50)")]
+ public string CompileMan
+ {
+ get
+ {
+ return this._CompileMan;
+ }
+ set
+ {
+ if ((this._CompileMan != value))
+ {
+ this.OnCompileManChanging(value);
+ this.SendPropertyChanging();
+ this._CompileMan = value;
+ this.SendPropertyChanged("CompileMan");
+ this.OnCompileManChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CompileDate", DbType="DateTime")]
+ public System.Nullable CompileDate
+ {
+ get
+ {
+ return this._CompileDate;
+ }
+ set
+ {
+ if ((this._CompileDate != value))
+ {
+ this.OnCompileDateChanging(value);
+ this.SendPropertyChanging();
+ this._CompileDate = value;
+ this.SendPropertyChanged("CompileDate");
+ this.OnCompileDateChanged();
+ }
+ }
+ }
+
+ public event PropertyChangingEventHandler PropertyChanging;
+
+ public event PropertyChangedEventHandler PropertyChanged;
+
+ protected virtual void SendPropertyChanging()
+ {
+ if ((this.PropertyChanging != null))
+ {
+ this.PropertyChanging(this, emptyChangingEventArgs);
+ }
+ }
+
+ protected virtual void SendPropertyChanged(String propertyName)
+ {
+ if ((this.PropertyChanged != null))
+ {
+ this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+ }
+ }
+ }
+
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ZHGL_WorkHandover")]
public partial class ZHGL_WorkHandover : INotifyPropertyChanging, INotifyPropertyChanged
{