积分优化

This commit is contained in:
2026-10-17 10:34:45 +08:00
parent 29b15d4b54
commit bbd0e6d392
27 changed files with 1054 additions and 335 deletions
@@ -0,0 +1,15 @@
update Sys_Menu
set MenuName='记分流水日志'
where MenuName like '%得分%'
go
--公司级:积分榜
IF NOT EXISTS (SELECT * FROM Sys_Menu WHERE MenuId = '94128BC0-75E3-4E27-9629-8775066DAFE7')
BEGIN
INSERT INTO dbo.Sys_Menu (MenuId, MenuName,Url, SortIndex, SuperMenu, MenuType, IsOffice, IsEnd, IsUsed)
VALUES (N'94128BC0-75E3-4E27-9629-8775066DAFE7', N'积分榜', 'Score/Standings.aspx', 25, N'416F0A73-FB3D-4AAC-BC76-3820F52382D9', N'Menu_S_HSSE', 1,1, 1);
END
GO
@@ -0,0 +1,46 @@
ALTER VIEW [dbo].[View_SitePerson_PersonList]
AS
SELECT
Person.PersonId,
Person.ProjectId,
Person.IsUsed,
Person.IsForeign,
Person.IsOutside,
Person.BlackList,
Person.CardNo,
Person.PersonName,
su.Score,
Person.UnitId,
Unit.UnitName,
WorkAreaName= STUFF((SELECT ',' + UnitWorkName FROM dbo.WBS_UnitWork where PATINDEX('%,' + RTRIM(UnitWorkId) + ',%',',' +Person.WorkAreaId + ',')>0 FOR XML PATH('')), 1, 1,''),
TeamGroup.TeamGroupName,
Person.InTime,
Person.OutTime,
(CASE Person.IsUsed WHEN 'TRUE' THEN 'ÊÇ' ELSE '·ñ' END) AS IsUsedName,
Person.IdentityCard,
Person.TeamGroupId,
Person.WorkPostId,
Post.WorkPostName,
Person.IdcardType,
Person.PhotoUrl,
edu.TrainCount,
PoliticsStatus.dictName AS PoliticsStatusName
--,Person.PostTrainingRoleId,
--PostRole.Name AS PostTrainingRoleName
FROM SitePerson_Person AS Person
LEFT JOIN Base_Unit AS Unit ON Unit.UnitId = Person.UnitId
LEFT JOIN ScoreUser AS su ON su.IdentityCard = Person.IdentityCard AND su.Year=YEAR(GETDATE())
LEFT JOIN ProjectData_TeamGroup AS TeamGroup ON TeamGroup.TeamGroupId=Person.TeamGroupId
LEFT JOIN Base_WorkPost AS Post ON Post.WorkPostId = Person.WorkPostId
LEFT JOIN RealName_BasicData AS PoliticsStatus ON PoliticsStatus.dictCode = Person.PoliticsStatus AND PoliticsStatus.DictTypeCode='POLITICAL_LANDSCAPE'
LEFT JOIN (select PersonId,count(PersonId)as TrainCount from EduTrain_TrainRecordDetail group by PersonId) as edu on edu.PersonId= Person.PersonId
--LEFT JOIN PostTraining_Role AS PostRole ON PostRole.Id = Person.PostTrainingRoleId
GO
@@ -0,0 +1,119 @@
ALTER VIEW [dbo].[View_SitePerson_Person]
AS
SELECT Person.PersonId,
Person.CardNo,
Person.PersonName,
su.Score,
Person.Sex,
(Case Person.Sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '' END) AS SexName,
Person.IdentityCard,
Person.Address,
Person.ProjectId,
Person.UnitId,
Person.Birthday,
Person.TeamGroupId,
Person.WorkAreaId,
Person.WorkPostId,
Person.InTime,
Person.OutTime,
Person.OutResult,
Person.Telephone,
Person.PositionId,
Person.PostTitleId,
Person.InstitutionalDivisionId,
Person.EmployeeCategoryId,
Person.EmployeeSubgroupId,
Person.DepartId,
Person.PhotoUrl,
Person.IsUsed,
Person.Remarks,
(CASE Person.IsUsed WHEN 'TRUE' THEN '是' ELSE '否' END) AS IsUsedName,
Person.IsCardUsed,
(CASE Person.IsCardUsed WHEN 'TRUE' THEN '是' ELSE '否' END) AS IsCardUsedName,
Person.PersonIndex,
Project.ProjectCode,
Project.ProjectName,
Unit.UnitCode,
Unit.UnitName,
TeamGroup.TeamGroupName,
--WorkArea.UnitWorkCode AS WorkAreaCode,
WorkAreaCode= STUFF((SELECT ',' + UnitWorkCode FROM dbo.WBS_UnitWork where PATINDEX('%,' + RTRIM(UnitWorkId) + ',%',',' +Person.WorkAreaId + ',')>0 FOR XML PATH('')), 1, 1,''),
--WorkArea.UnitWorkName AS WorkAreaName
WorkAreaName= STUFF((SELECT ',' + UnitWorkName FROM dbo.WBS_UnitWork where PATINDEX('%,' + RTRIM(UnitWorkId) + ',%',',' +Person.WorkAreaId + ',')>0 FOR XML PATH('')), 1, 1,''),
Post.WorkPostName,
Position.PositionName,
Title.PostTitleName,
Depart.DepartName,
EmployeeCategory.CategoryName as EmployeeCategoryName,
EmployeeSubgroup.SubgroupName as EmployeeSubgroupName,
Division.Name as InstitutionalDivisionName,
Post.PostType,
Post.IsHsse,
(SELECT COUNT(*) FROM EduTrain_TrainRecordDetail T WHERE T.PersonId=Person.PersonId) AS TrainCount,
Person.AuditorId,
sysUser.UserName AS AuditorName,
Person.AuditorDate,
Person.IDCardUrl,
Person.IsForeign,
case when Person.IsForeign=1 then '是' else '否' end as IsForeignStr,
Person.IdcardType,
BasicData1.dictName as IdcardTypeName,
Person.IdcardStartDate,
Person.IdcardEndDate,
Person.IdcardForever,
case when Person.IdcardForever='Y' then '是' else '否' end as IdcardForeverStr,
Person.PoliticsStatus,
BasicData2.dictName as PoliticsStatusName,
Person.IdcardAddress,
Person.Nation,
BasicData3.dictName as NationName,
Person.EduLevel,
BasicData4.dictName as EduLevelName,
Person.MaritalStatus,
BasicData5.dictName as MaritalStatusName,
Person.CountryCode,
Country.cname as CountryName,
Person.ProvinceCode,
City.cname as ProvinceName,
Person.MainCNProfessionalId,
CNProfessional.ProfessionalName as MainCNProfessionalName,
Person.ViceCNProfessionalId,
'' as ViceCNProfessionalName,
Person.IsOutside,
case when Person.IsOutside=1 then '是' else '否' end as IsOutsideStr,
Person.BlackList,
Person.BlackReason,
Person.States,
sysUser.StarLevelId,
StarLevel.StarMark,
StarLevel.LevelValue
FROM SitePerson_Person AS Person
LEFT JOIN Base_Project AS Project ON Project.ProjectId=Person.ProjectId
LEFT JOIN Base_Unit AS Unit ON Unit.UnitId = Person.UnitId
LEFT JOIN ScoreUser AS su ON su.IdentityCard = Person.IdentityCard AND su.Year=YEAR(GETDATE())
LEFT JOIN ProjectData_TeamGroup AS TeamGroup ON TeamGroup.TeamGroupId=Person.TeamGroupId
--LEFT JOIN WBS_UnitWork AS WorkArea ON WorkArea.UnitWorkId = Person.WorkAreaId
LEFT JOIN Base_WorkPost AS Post ON Post.WorkPostId = Person.WorkPostId
LEFT JOIN Base_Position AS Position ON Position.PositionId = Person.PositionId
Left JOIN Base_PostTitle AS Title ON Title.PostTitleId = Person.PostTitleId
Left JOIN Base_Depart AS Depart ON Depart.DepartId = Person.DepartId
Left JOIN Base_EmployeeCategory AS EmployeeCategory ON EmployeeCategory.CategoryId = Person.EmployeeCategoryId
Left JOIN Base_EmployeeSubgroup AS EmployeeSubgroup ON EmployeeSubgroup.SubgroupId = Person.EmployeeSubgroupId
Left JOIN Base_InstitutionalDivision AS Division ON Division.Id = Person.InstitutionalDivisionId
Left JOIN Sys_User AS sysUser ON sysUser.UserId = Person.AuditorId
Left JOIN RealName_BasicData AS BasicData1 ON BasicData1.dictCode = Person.IdcardType
Left JOIN RealName_BasicData AS BasicData2 ON BasicData2.dictCode = Person.PoliticsStatus
Left JOIN RealName_BasicData AS BasicData3 ON BasicData3.dictCode = Person.Nation
Left JOIN RealName_BasicData AS BasicData4 ON BasicData4.dictCode = Person.EduLevel
Left JOIN RealName_BasicData AS BasicData5 ON BasicData5.dictCode = Person.MaritalStatus
Left JOIN RealName_Country AS Country ON Country.CountryId = Person.CountryCode
Left JOIN RealName_City AS City ON City.provinceCode = Person.ProvinceCode
Left JOIN Base_CNProfessional AS CNProfessional ON CNProfessional.CNProfessionalId = Person.MainCNProfessionalId
Left JOIN Base_StarLevel AS StarLevel ON sysUser.StarLevelId = StarLevel.StarLevelId
GO