20221103人员批量派遣
This commit is contained in:
@@ -37,15 +37,27 @@
|
||||
<f:DropDownList ID="drpCertificate" runat="server" EmptyText="职业资格证书" Width="200px"
|
||||
EnableEdit="true" AutoPostBack="true" OnSelectedIndexChanged="TextBox_TextChanged">
|
||||
</f:DropDownList>
|
||||
<f:ToolbarFill runat="server">
|
||||
</f:ToolbarFill>
|
||||
<f:ToolbarSeparator runat="server"></f:ToolbarSeparator>
|
||||
<f:Button ID="btnNew" Text="新增" Icon="Add" EnablePostBack="false" runat="server"
|
||||
Hidden="true">
|
||||
</f:Button>
|
||||
<f:ToolbarFill runat="server">
|
||||
</f:ToolbarFill>
|
||||
<f:DropDownList ID="drpProject" runat="server" EmptyText="派遣项目" Width="350px"
|
||||
EnableEdit="true" ShowRedStar="true" Required="true" Hidden="true">
|
||||
</f:DropDownList>
|
||||
<f:Button ID="btnSure" Text="确定" ToolTip="确定派遣" Icon="Accept" Hidden="true" runat="server" OnClick="btnSure_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:TemplateField ColumnID="Check" Width="50px" HeaderText="选择" HeaderTextAlign="Center" TextAlign="Center"
|
||||
EnableLock="true" Locked="False">
|
||||
<ItemTemplate>
|
||||
<asp:CheckBox runat="server" ID="cbSelect" />
|
||||
</ItemTemplate>
|
||||
</f:TemplateField>
|
||||
<f:TemplateField ColumnID="tfNumber" Width="55px" HeaderText="序号" HeaderTextAlign="Center"
|
||||
TextAlign="Center">
|
||||
<ItemTemplate>
|
||||
@@ -71,7 +83,7 @@
|
||||
<f:CheckBoxField Width="60px" SortField="IsPost" RenderAsStaticField="true" DataField="IsPost"
|
||||
HeaderText="在职" HeaderTextAlign="Center" TextAlign="Center">
|
||||
</f:CheckBoxField>
|
||||
<f:RenderField Width="100px" ColumnID="Major" DataField="Major"
|
||||
<f:RenderField Width="100px" ColumnID="Major" DataField="Major"
|
||||
FieldType="String" HeaderText="专业" HeaderTextAlign="Center" TextAlign="Left">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="100px" ColumnID="WorkPostName" DataField="WorkPostName"
|
||||
@@ -89,22 +101,22 @@
|
||||
<f:RenderField Width="90px" ColumnID="IsPostName" DataField="IsPostName"
|
||||
FieldType="String" HeaderText="是否在职" HeaderTextAlign="Center" TextAlign="Left">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="150px" ColumnID="LastProjectName" DataField="LastProjectName" SortField="LastProjectName"
|
||||
<f:RenderField Width="150px" ColumnID="LastProjectName" DataField="LastProjectName" SortField="LastProjectName"
|
||||
FieldType="String" HeaderText="最近所在项目" HeaderTextAlign="Center" TextAlign="Left">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="130px" ColumnID="LastWorkPostName" DataField="LastWorkPostName"
|
||||
FieldType="String" HeaderText="最近项目岗位" HeaderTextAlign="Center" TextAlign="Left">
|
||||
</f:RenderField>
|
||||
<f:WindowField TextAlign="Left" Width="80px" WindowID="Window1" HeaderText="详细信息"
|
||||
<f:WindowField TextAlign="Left" Width="80px" WindowID="Window1" HeaderText="详细信息"
|
||||
Text="查看" ToolTip="人员详细信息查看" DataIFrameUrlFields="PersonId" DataIFrameUrlFormatString="PersonView.aspx?PersonId={0}"
|
||||
HeaderTextAlign="Center" />
|
||||
<%-- <f:RenderField Width="100px" ColumnID="WorkPost" DataField="WorkPost" FieldType="String"
|
||||
HeaderText="拟聘岗位" HeaderTextAlign="Center">
|
||||
<f:RenderField Width="100px" ColumnID="WorkPost" DataField="WorkPostName" FieldType="String"
|
||||
HeaderText="拟聘岗位" HeaderTextAlign="Center" >
|
||||
<Editor>
|
||||
<f:DropDownList ID="drpWP" Required="true" runat="server">
|
||||
<f:DropDownList ID="drpWP" Required="true" runat="server" EnableEdit="true">
|
||||
</f:DropDownList>
|
||||
</Editor>
|
||||
</f:RenderField>--%>
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
<Listeners>
|
||||
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
|
||||
@@ -129,7 +141,7 @@
|
||||
<f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" EnablePostBack="true"
|
||||
Hidden="true" runat="server" Text="编辑" Icon="Pencil">
|
||||
</f:MenuButton>
|
||||
<f:MenuButton ID="btnMenuDispatch" OnClick="btnMenuDispatch_Click" EnablePostBack="true"
|
||||
<f:MenuButton ID="btnMenuDispatch" OnClick="btnMenuDispatch_Click" EnablePostBack="true"
|
||||
Hidden="true" runat="server" Text="派遣" Icon="TableEdit">
|
||||
</f:MenuButton>
|
||||
<f:MenuButton ID="btnMenuDelete" OnClick="btnMenuDelete_Click" EnablePostBack="true"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using BLL;
|
||||
using FastReport.DevComponents.Editors;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
@@ -23,20 +24,23 @@ namespace FineUIPro.Web.Person
|
||||
Funs.DropDownPageSize(this.ddlPageSize);
|
||||
|
||||
this.btnNew.OnClientClick = Window1.GetShowReference("PersonEdit.aspx?Type=Shunt&UnitId=" + Const.UnitId_SEDIN + "&DepartId=" + Const.Depart_constructionId) + "return false;";
|
||||
|
||||
////权限按钮方法
|
||||
this.GetButtonPower();
|
||||
WorkPostService.InitWorkPostNameByTypeDropDownList2(this.drpWorkPost, "1", false); //加载管理岗位
|
||||
Funs.FineUIPleaseSelect(this.drpWorkPost, "请选择岗位");
|
||||
|
||||
//WorkPostService.InitWorkPostNameByTypeDropDownList(this.drpWP, "1", true); //加载管理岗位
|
||||
|
||||
WorkPostService.InitWorkPostNameByTypeDropDownList(this.drpWP, Const.PostType_1, false); //加载管理岗位
|
||||
Funs.FineUIPleaseSelectNull(this.drpWP, "请选择岗位");
|
||||
|
||||
PostTitleService.InitPostTitleDropDownList(this.drpPostTitle, false);
|
||||
Funs.FineUIPleaseSelect(this.drpPostTitle, "请选择职称");
|
||||
|
||||
PracticeCertificateService.InitPracticeCertificateDropDownList(this.drpCertificate, false);
|
||||
Funs.FineUIPleaseSelect(this.drpCertificate, "请选择职业资格证书");
|
||||
|
||||
BLL.ProjectService.InitProjectDropDownList(this.drpProject, false);
|
||||
Funs.FineUIPleaseSelect(this.drpProject, "请选择拟聘项目");
|
||||
|
||||
this.ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
|
||||
// 绑定表格
|
||||
this.BindGrid();
|
||||
@@ -85,6 +89,8 @@ namespace FineUIPro.Web.Person
|
||||
{
|
||||
this.btnMenuEdit.Hidden = false;
|
||||
this.btnMenuDispatch.Hidden = false;
|
||||
this.btnSure.Hidden = false;
|
||||
this.drpProject.Hidden = false;
|
||||
}
|
||||
if (buttonList.Contains(BLL.Const.BtnDelete))
|
||||
{
|
||||
@@ -254,5 +260,135 @@ namespace FineUIPro.Web.Person
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 确定按钮事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnSure_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (this.drpProject.SelectedValue != BLL.Const._Null)
|
||||
{
|
||||
bool b = true;
|
||||
foreach (JObject mergedRow in Grid1.GetMergedData())
|
||||
{
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
int i = mergedRow.Value<int>("index");
|
||||
if (this.Grid1.SelectedRowIndexArray.Contains(i))
|
||||
{
|
||||
AspNet.CheckBox cb = (AspNet.CheckBox)(this.Grid1.Rows[i].FindControl("cbSelect"));
|
||||
if (cb.Checked) //选择项
|
||||
{
|
||||
string workPost = values.Value<string>("WorkPost");
|
||||
if (string.IsNullOrEmpty(workPost))
|
||||
{
|
||||
b = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!b)
|
||||
{
|
||||
Alert.ShowInTop("勾选人员的拟聘岗位不能为空!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
|
||||
int count=0;
|
||||
int outCount = 0;
|
||||
var workPosts = BLL.WorkPostService.GetWorkPostList();
|
||||
foreach (JObject mergedRow in Grid1.GetMergedData())
|
||||
{
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
int i = mergedRow.Value<int>("index");
|
||||
AspNet.CheckBox cb = (AspNet.CheckBox)(this.Grid1.Rows[i].FindControl("cbSelect"));
|
||||
if (cb.Checked) //选择项
|
||||
{
|
||||
string personId = this.Grid1.Rows[i].RowID;
|
||||
string workPostId = string.Empty;
|
||||
var getWorkPost = WorkPostService.GetWorkPostByName(values.Value<string>("WorkPost"));
|
||||
if (getWorkPost != null)
|
||||
{
|
||||
workPostId = getWorkPost.WorkPostId;
|
||||
}
|
||||
var getPerson = Person_PersonsService.GetPerson_PersonsById(personId);
|
||||
if (getPerson != null)
|
||||
{
|
||||
if (getPerson.IsPost == false)
|
||||
{
|
||||
outCount++;
|
||||
}
|
||||
else
|
||||
{
|
||||
SaveSitePerson(getPerson, workPostId);
|
||||
Funs.DB.SubmitChanges();
|
||||
count++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
string message = "批量派遣成功!共计成功" + count.ToString() + "人。";
|
||||
if (outCount > 0)
|
||||
{
|
||||
message+="未能派遣(不在职)人员" + outCount.ToString() + "人。";
|
||||
}
|
||||
ShowNotify(message, MessageBoxIcon.Success);
|
||||
BindGrid();
|
||||
BLL.LogService.AddSys_Log(this.CurrUser, "人员派遣", string.Empty, BLL.Const.DepartPersonShuntMenuId, "人员批量派遣");
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert.ShowInParent("请选择派遣项目!", MessageBoxIcon.Warning);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="getPerson"></param>
|
||||
/// <param name="workPostId"></param>
|
||||
private void SaveSitePerson(Model.Person_Persons getPerson, string workPostId)
|
||||
{
|
||||
Model.SitePerson_Person newProjectPerson = new Model.SitePerson_Person
|
||||
{
|
||||
PersonId = getPerson.PersonId,
|
||||
PersonName = getPerson.PersonName,
|
||||
IdentityCard = getPerson.IdentityCard,
|
||||
UnitId = getPerson.UnitId ?? Const.UnitId_SEDIN,
|
||||
ProjectId = this.drpProject.SelectedValue,
|
||||
WorkPostId = workPostId,
|
||||
// RoleIds = Funs.GetStringByArray(this.drpProjectRole.SelectedValueArray),
|
||||
//TeamGroupId = this.drpTeamGroup.SelectedValue == Const._Null ? null : this.drpTeamGroup.SelectedValue,
|
||||
InTime = DateTime.Now,
|
||||
// AuditorId = this.drpAuditor.SelectedValue == Const._Null ? null : this.drpAuditor.SelectedValue,
|
||||
AuditorDate = DateTime.Now,
|
||||
OutTime = null,
|
||||
States = Const.ProjectPersonStates_1,
|
||||
};
|
||||
|
||||
var getPersonAuditor = Funs.DB.SitePerson_Person.FirstOrDefault(x => x.ProjectId == newProjectPerson.ProjectId && (x.RoleIds.Contains(Const.HSSEManager) || x.RoleIds.Contains(Const.HSSEAssistantManager)));
|
||||
if (getPersonAuditor != null)
|
||||
{
|
||||
newProjectPerson.AuditorId = getPersonAuditor.PersonId;
|
||||
}
|
||||
|
||||
var getProjectPerson = Funs.DB.SitePerson_Person.FirstOrDefault(x => x.ProjectId == newProjectPerson.ProjectId && (x.PersonId == newProjectPerson.PersonId || x.IdentityCard == newProjectPerson.IdentityCard));
|
||||
if (getProjectPerson != null)
|
||||
{
|
||||
newProjectPerson.SitePersonId = getProjectPerson.SitePersonId;
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(newProjectPerson.SitePersonId))
|
||||
{
|
||||
SitePerson_PersonService.UpdateSitePerson(newProjectPerson);
|
||||
LogService.AddSys_Log(this.CurrUser, newProjectPerson.IdentityCard, newProjectPerson.SitePersonId, BLL.Const.ProjectPersonMenuId, BLL.Const.BtnModify);
|
||||
}
|
||||
else
|
||||
{
|
||||
newProjectPerson.SitePersonId = SQLHelper.GetNewID();
|
||||
SitePerson_PersonService.AddSitePerson(newProjectPerson);
|
||||
LogService.AddSys_Log(this.CurrUser, newProjectPerson.IdentityCard, newProjectPerson.SitePersonId, BLL.Const.ProjectPersonMenuId, BLL.Const.BtnAdd);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -95,6 +95,33 @@ namespace FineUIPro.Web.Person
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnNew;
|
||||
|
||||
/// <summary>
|
||||
/// drpProject 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList drpProject;
|
||||
|
||||
/// <summary>
|
||||
/// btnSure 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSure;
|
||||
|
||||
/// <summary>
|
||||
/// cbSelect 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.CheckBox cbSelect;
|
||||
|
||||
/// <summary>
|
||||
/// lblNumber 控件。
|
||||
/// </summary>
|
||||
@@ -131,6 +158,15 @@ namespace FineUIPro.Web.Person
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label Label2;
|
||||
|
||||
/// <summary>
|
||||
/// drpWP 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList drpWP;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarSeparator1 控件。
|
||||
/// </summary>
|
||||
|
||||
@@ -1285,7 +1285,5 @@ namespace FineUIPro.Web.Person
|
||||
}
|
||||
#endregion
|
||||
#endregion
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user