20220908 人员列表修改

This commit is contained in:
杨红卫 2022-09-08 17:43:46 +08:00
parent f38675c06a
commit e0f256688a
7 changed files with 139 additions and 6 deletions

View File

@ -0,0 +1,95 @@
ALTER VIEW [dbo].[View_SitePerson_Person]
AS
/*现场人员视图*/
SELECT SitePerson.ProjectId,
Project.ProjectCode,
Project.ProjectName,
SitePerson.SitePersonId,
persons.PersonId,
SitePerson.CardNo,
Persons.PersonName,
Persons.Sex,
(Case Persons.Sex WHEN '1' THEN '' WHEN '2' THEN '' ELSE '' END) AS SexName,
Persons.IdentityCard,
Persons.Address,
SitePerson.UnitId,
Persons.Birthday,
SitePerson.TeamGroupId,
SitePerson.WorkAreaId,
SitePerson.WorkPostId,
SitePerson.InTime,
SitePerson.OutTime,
SitePerson.OutResult,
Persons.Telephone,
Persons.PositionId,
Persons.PostTitleId,
Persons.PhotoUrl,
Unit.UnitCode,
Unit.UnitName,
TeamGroup.TeamGroupName,
Post.WorkPostName,
Position.PositionName,
Title.PostTitleName,
Depart.DepartName,
Post.PostType,
Post.IsHsse,
(SELECT COUNT(*) FROM EduTrain_TrainRecordDetail T
LEFT JOIN EduTrain_TrainRecord AS E ON T.TrainingId=E.TrainingId
WHERE T.PersonId=SitePerson.PersonId AND E.ProjectId=SitePerson.ProjectId) AS TrainCount,
(SELECT COUNT(*) FROM Training_TestRecord R
WHERE R.TestManId=SitePerson.PersonId AND R.ProjectId=SitePerson.ProjectId and R.TestScores > 80) AS TrainCount1,
SitePerson.AuditorId,
Persons.PersonName AS AuditorName,
SitePerson.AuditorDate,
Persons.IDCardUrl,
Persons.IsForeign,
case when Persons.IsForeign=1 then '' else '' end as IsForeignStr,
Persons.IdcardType,
BasicData1.dictName as IdcardTypeName,
Persons.IdcardStartDate,
Persons.IdcardEndDate,
Persons.IdcardForever,
case when Persons.IdcardForever='Y' then '' else '' end as IdcardForeverStr,
Persons.PoliticsStatus,
BasicData2.dictName as PoliticsStatusName,
Persons.IdcardAddress,
Persons.Nation,
BasicData3.dictName as NationName,
Persons.EduLevel,
BasicData4.dictName as EduLevelName,
Persons.MaritalStatus,
BasicData5.dictName as MaritalStatusName,
Persons.CountryCode,
Country.cname as CountryName,
Persons.ProvinceCode,
City.cname as ProvinceName,
Persons.PersonType,
(case when Persons.PersonType='2' then '外聘' when Persons.PersonType='3' then '第三方' else '员工' end) as IsOutsideStr,
--WorkArea.UnitWorkCode AS WorkAreaCode,
WorkAreaCode= STUFF((SELECT ',' + UnitWorkCode FROM dbo.WBS_UnitWork where PATINDEX('%,' + RTRIM(UnitWorkId) + ',%',',' +SitePerson.WorkAreaId + ',')>0 FOR XML PATH('')), 1, 1,''),
--WorkArea.UnitWorkName AS WorkAreaName
WorkAreaName= STUFF((SELECT ',' + UnitWorkName FROM dbo.WBS_UnitWork where PATINDEX('%,' + RTRIM(UnitWorkId) + ',%',',' +SitePerson.WorkAreaId + ',')>0 FOR XML PATH('')), 1, 1,''),
SitePerson.RealNameAddTime,
SitePerson.RealNameUpdateTime,
Persons.HeadImage,
SitePerson.States
FROM SitePerson_Person AS SitePerson
LEFT JOIN Person_Persons AS Persons ON SitePerson.PersonId=Persons.PersonId
LEFT JOIN Base_Project AS Project ON Project.ProjectId=SitePerson.ProjectId
LEFT JOIN Base_Unit AS Unit ON Unit.UnitId = SitePerson.UnitId
LEFT JOIN ProjectData_TeamGroup AS TeamGroup ON TeamGroup.TeamGroupId=SitePerson.TeamGroupId
LEFT JOIN Base_WorkPost AS Post ON Post.WorkPostId = SitePerson.WorkPostId
LEFT JOIN Base_Position AS Position ON Position.PositionId = Persons.PositionId
Left JOIN Base_PostTitle AS Title ON Title.PostTitleId = Persons.PostTitleId
Left JOIN Base_Depart AS Depart ON Depart.DepartId = Persons.DepartId
Left JOIN RealName_BasicData AS BasicData1 ON BasicData1.dictCode = Persons.IdcardType
Left JOIN RealName_BasicData AS BasicData2 ON BasicData2.dictCode = Persons.PoliticsStatus
Left JOIN RealName_BasicData AS BasicData3 ON BasicData3.dictCode = Persons.Nation
Left JOIN RealName_BasicData AS BasicData4 ON BasicData4.dictCode = Persons.EduLevel
Left JOIN RealName_BasicData AS BasicData5 ON BasicData5.dictCode = Persons.MaritalStatus
Left JOIN RealName_Country AS Country ON Country.CountryId = Persons.CountryCode
Left JOIN RealName_City AS City ON City.provinceCode = Persons.ProvinceCode and City.CountryId = Persons.CountryCode
GO

View File

@ -1,5 +1,6 @@
using FineUIPro;
using Model;
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
@ -710,6 +711,15 @@ namespace BLL
{
SetProjectPersonUnit(person);
}
/// 人员不在职位,当前人所在项目 都出场
if (person.IsPost == false)
{
var getSitePersons = from x in db.SitePerson_Person where x.PersonId == person.PersonId && x.States != Const.ProjectPersonStates_2 select x;
foreach (var item in getSitePersons)
{
SitePerson_PersonService.SetSitePerson_PersonStates(item.SitePersonId, Const.ProjectPersonStates_2, DateTime.Now);
}
}
}
}
}

View File

@ -145,6 +145,8 @@
</f:TemplateField>
<f:RenderField Hidden="true" Width="1px" HeaderText="培训次数" ColumnID="TrainCount" DataField="TrainCount">
</f:RenderField>
<f:RenderField Hidden="true" Width="1px" HeaderText="培训次数" ColumnID="TrainCount1" DataField="TrainCount1">
</f:RenderField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />

View File

@ -188,7 +188,7 @@ namespace FineUIPro.Web.HSSE.SitePerson
}
string strSql = @"SELECT ProjectId,SitePersonId,PersonId,PersonName,IdentityCard,CardNo,PersonName
,WorkPostId,WorkPostName,UnitId,UnitName,TeamGroupId,TeamGroupName,InTime,RealNameAddTime,States,TrainCount
,WorkPostId,WorkPostName,UnitId,UnitName,TeamGroupId,TeamGroupName,InTime,RealNameAddTime,States,TrainCount,TrainCount1
FROM View_SitePerson_Person
Where ProjectId=@ProjectId ";
List<SqlParameter> listStr = new List<SqlParameter>
@ -263,13 +263,14 @@ namespace FineUIPro.Web.HSSE.SitePerson
for (int i = 0; i < Grid1.Rows.Count; i++)
{
// string personId = Grid1.Rows[i].DataKeys[0].ToString();
var tCount = Grid1.Rows[i].Values[8].ToString();
var tCount1 = Grid1.Rows[i].Values[9].ToString();
var tCount = Grid1.Rows[0].Values[8].ToString();
if (tCount == "0") ////未参加过培训的人员
if (tCount == "0" && tCount1 == "0") ////未参加过培训的人员
{
Grid1.Rows[i].RowCssClass = "Red";
}
var getPerson = Grid1.Rows[0].Values[6].ToString();
var getPerson = Grid1.Rows[i].Values[6].ToString();
if (getPerson != null)
{
int j = this.Grid1.Columns.Count - 1;

View File

@ -127,12 +127,13 @@
</f:DatePicker>
</Items>
</f:FormRow>
<f:FormRow>
<f:FormRow ColumnWidths="25% 25% 50%">
<Items>
<f:RadioButtonList ID="rblSex" runat="server" Label="性别">
<f:RadioItem Value="1" Text="男" Selected="true" />
<f:RadioItem Value="2" Text="女" />
</f:RadioButtonList>
<f:CheckBox runat="server" ID="ckIsPost" Label="在职" Checked="true" AutoPostBack="true" OnCheckedChanged="ckIsPost_CheckedChanged"></f:CheckBox>
<f:DatePicker ID="txtBirthday" runat="server" Label="出生日期">
</f:DatePicker>
</Items>

View File

@ -76,6 +76,7 @@ namespace FineUIPro.Web.Person
this.txtPersonName.Text = person.PersonName;
this.txtJobNum.Text = person.JobNum;
this.drpUnit.SelectedValue = person.UnitId;
this.ckIsPost.Checked = person.IsPost.Value;
if (!string.IsNullOrEmpty(person.DepartId))
{
this.drpDepart.SelectedValue = person.DepartId;
@ -504,7 +505,7 @@ namespace FineUIPro.Web.Person
RelativeTel = this.txtRelativeTel.Text.Trim(),
Address = this.txtAddress.Text.Trim(),
SignatureUrl = this.SignatureUrl,
IsPost = true,
IsPost = this.ckIsPost.Checked,
};
newPerson.RoleIds = Funs.GetStringByArray(this.drpRole.SelectedValueArray);
@ -1049,6 +1050,20 @@ namespace FineUIPro.Web.Person
}
}
#endregion
#endregion
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ckIsPost_CheckedChanged(object sender, CheckedEventArgs e)
{
if (!this.ckIsPost.Checked)
{
Alert.ShowInParent("人员不在职,则当前人所在的所有项目都将离场!", MessageBoxIcon.Warning);
}
}
}
}

View File

@ -239,6 +239,15 @@ namespace FineUIPro.Web.Person
/// </remarks>
protected global::FineUIPro.RadioButtonList rblSex;
/// <summary>
/// ckIsPost 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.CheckBox ckIsPost;
/// <summary>
/// txtBirthday 控件。
/// </summary>