123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390 |
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- namespace LYFZ.Software.MainBusiness.CameraControlBook.SuperSmallForm
- {
- public partial class SelectWorkPersonSuperSmallForm : LYFZ.Software.UI.CameraControlBook.SuperSmallForm.SelectWorkPersonSuperSmallForm
- {
- LYFZ.BLL.BLL_ErpOrder orbll = new BLL.BLL_ErpOrder();
- LYFZ.BLL.BLL_ErpOrderAnPaiDepartmentRecord ordrbll = new BLL.BLL_ErpOrderAnPaiDepartmentRecord();
- public SelectWorkPersonSuperSmallForm()
- {
- this.Load += SelectWorkPersonSuperSmallForm_Load;
- this.Shown += SelectWorkPersonSuperSmallForm_Shown;
- this.btnSaveed.Click += btnSaveed_Click;
- this.btnCancel.Click += btnCancel_Click;
- this.dgvData.MouseDoubleClick += dgvData_MouseDoubleClick;
- this.cmbtreevDepartment.ComboBoxTree_NodeMouseClick += cmbtreevDepartment_ComboBoxTree_NodeMouseClick;
- this.cmbtreevStoreName.ComboBoxTree_NodeMouseClick += cmbtreevStoreName_ComboBoxTree_NodeMouseClick;
-
- }
-
- /// <summary>
- /// 日期
- /// </summary>
- public string StrTime = "";
- /// <summary>
- /// 加载的类型
- /// </summary>
- public LYFZ.EnumPublic.EnumWorkPersonType WorkPersonType;
- /// <summary>
- /// 是否保存
- /// </summary>
- public bool IsSaveed = false;
- /// <summary>
- /// 选择的工作人员的编号
- /// </summary>
- public string StrPersonNumber;
- /// <summary>
- /// 选择的工作人员的姓名
- /// </summary>
- public string StrPersonName;
- /// <summary>
- /// 窗体加载事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- void SelectWorkPersonSuperSmallForm_Load(object sender, EventArgs e)
- {
- this.Text = "安排" + WorkPersonType.ToString().Trim() + "工作";
- LYFZ.Software.MainBusiness.DoorCityProcess.PublicCodeClasses.BindComboBoxTreeView_StoreName(this.cmbtreevStoreName, IsFirstNodeName: "全部");
- if (this.cmbtreevStoreName.Nodes.Count == 1)
- {
- this.cmbtreevStoreName.Visible = false;
- this.labelEx2.Visible = false;
- }
- string StrAddName = "";
- if (this.cmbtreevStoreName.Visible)
- {
- if (this.cmbtreevStoreName.Nodes.Count > 1)
- { StrAddName = ",所属分店"; }
- }
- string StrColumns = "员工编号,部门,员工姓名,已安排数" + StrAddName + ",是否休息";
- this.dgvData.DataColumns(StrColumns, strHideField: "员工编号");
- this.dgvData.Columns["已安排数"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
- DataTable tbl = orbll.GetView_Custom("tb_ErpDepartment", StrWhere: "", ShowColumnName: "Dt_Name").Tables[0];
- TreeNode root = null;
- for (int i = 0; i < tbl.Rows.Count; i++)
- {
- if (i == 0)
- {
- root = new TreeNode();
- root.Text = "全部";
- root.Tag = "全部";
- this.cmbtreevDepartment.Nodes.Add(root);
- }
- root = new TreeNode();
- root.Text = tbl.Rows[i]["Dt_Name"].ToString().Trim();
- root.Tag = tbl.Rows[i]["Dt_Name"].ToString().Trim();
- this.cmbtreevDepartment.Nodes.Add(root);
- }
- this.cmbtreevDepartment.TextFindTag("全部");
- if (!string.IsNullOrEmpty(StrTime))
- {
- switch (WorkPersonType)
- {
- case LYFZ.EnumPublic.EnumWorkPersonType.选礼服师:
- tbl2 = orbll.GetView_Custom("tb_ErpOrderDigital", StrWhere: "Ordv_ReservationClothingName != ''" + LYFZ.Software.MainBusiness.DoorCityProcess.PublicCodeClasses.GetDateTime("Ordv_ReservationClothingTime", StrTime, StrTime), ShowColumnName: "Ordv_ReservationClothingName AS 员工编号", GroupBy: "Ordv_ReservationClothingName,Ordv_ViceNumber").Tables[0];
- break;
- case LYFZ.EnumPublic.EnumWorkPersonType.摄影师:
- tbl2 = orbll.GetView_Custom("tb_ErpOrdersPhotography", StrWhere: "Ordpg_ReservationPhotographyName != ''" + LYFZ.Software.MainBusiness.DoorCityProcess.PublicCodeClasses.GetDateTime("Ordpg_ReservationPhotographyTime", StrTime, StrTime), ShowColumnName: "Ordpg_ReservationPhotographyName AS 员工编号", GroupBy: "Ordpg_ReservationPhotographyName,Ordpg_ViceNumber").Tables[0];
- break;
- case LYFZ.EnumPublic.EnumWorkPersonType.摄影助理:
- tbl2 = orbll.GetView_Custom("tb_ErpOrdersPhotography", StrWhere: "Ordpg_ReservationPhotographyAssistant != ''" + LYFZ.Software.MainBusiness.DoorCityProcess.PublicCodeClasses.GetDateTime("Ordpg_ReservationPhotographyTime", StrTime, StrTime), ShowColumnName: "Ordpg_ReservationPhotographyAssistant AS 员工编号", GroupBy: "Ordpg_ReservationPhotographyAssistant,Ordpg_ViceNumber").Tables[0];
- break;
- case LYFZ.EnumPublic.EnumWorkPersonType.化妆师:
- tbl2 = orbll.GetView_Custom("tb_ErpOrdersPhotography", StrWhere: "Ordpg_ReservationMakeupArtist != ''" + LYFZ.Software.MainBusiness.DoorCityProcess.PublicCodeClasses.GetDateTime("Ordpg_ReservationPhotographyTime", StrTime, StrTime), ShowColumnName: "Ordpg_ReservationMakeupArtist AS 员工编号", GroupBy: "Ordpg_ReservationMakeupArtist,Ordpg_ViceNumber").Tables[0];
- break;
- case LYFZ.EnumPublic.EnumWorkPersonType.化妆助理:
- tbl2 = orbll.GetView_Custom("tb_ErpOrdersPhotography", StrWhere: "Ordpg_ReservationMakeupAssistant != ''" + LYFZ.Software.MainBusiness.DoorCityProcess.PublicCodeClasses.GetDateTime("Ordpg_ReservationPhotographyTime", StrTime, StrTime), ShowColumnName: "Ordpg_ReservationMakeupAssistant AS 员工编号", GroupBy: "Ordpg_ReservationMakeupAssistant,Ordpg_ViceNumber").Tables[0];
- break;
- case LYFZ.EnumPublic.EnumWorkPersonType.引导师:
- tbl2 = orbll.GetView_Custom("tb_ErpOrdersPhotography", StrWhere: "Ordpg_ReservationBootDivision != ''" + LYFZ.Software.MainBusiness.DoorCityProcess.PublicCodeClasses.GetDateTime("Ordpg_ReservationPhotographyTime", StrTime, StrTime), ShowColumnName: "Ordpg_ReservationBootDivision AS 员工编号", GroupBy: "Ordpg_ReservationBootDivision,Ordpg_ViceNumber").Tables[0];
- break;
- case LYFZ.EnumPublic.EnumWorkPersonType.引导助理:
- tbl2 = orbll.GetView_Custom("tb_ErpOrdersPhotography", StrWhere: "Ordpg_ReservationBootDivisionAssistant != ''" + LYFZ.Software.MainBusiness.DoorCityProcess.PublicCodeClasses.GetDateTime("Ordpg_ReservationPhotographyTime", StrTime, StrTime), ShowColumnName: "Ordpg_ReservationBootDivisionAssistant AS 员工编号", GroupBy: "Ordpg_ReservationBootDivisionAssistant,Ordpg_ViceNumber").Tables[0];
- break;
- case LYFZ.EnumPublic.EnumWorkPersonType.选片师:
- tbl2 = orbll.GetView_Custom("tb_ErpOrderDigital", StrWhere: "Ordv_ReservationFilmSelectionName != ''" + LYFZ.Software.MainBusiness.DoorCityProcess.PublicCodeClasses.GetDateTime("Ordv_ReservationFilmSelectionTime", StrTime, StrTime), ShowColumnName: "Ordv_ReservationFilmSelectionName AS 员工编号", GroupBy: "Ordv_ReservationFilmSelectionName,Ordv_ViceNumber").Tables[0];
- break;
- case LYFZ.EnumPublic.EnumWorkPersonType.看设计师:
- tbl2 = orbll.GetView_Custom("tb_ErpOrderDigital", StrWhere: "Ordv_ReservationLookDesignName != ''" + LYFZ.Software.MainBusiness.DoorCityProcess.PublicCodeClasses.GetDateTime("Ordv_ReservationLookDesignTime", StrTime, StrTime), ShowColumnName: "Ordv_ReservationLookDesignName AS 员工编号", GroupBy: "Ordv_ReservationLookDesignName,Ordv_ViceNumber").Tables[0];
- break;
- case LYFZ.EnumPublic.EnumWorkPersonType.取件师:
- tbl2 = orbll.GetView_Custom("tb_ErpOrderProductList", StrWhere: "OPlist_ReservationTakeName != ''" + LYFZ.Software.MainBusiness.DoorCityProcess.PublicCodeClasses.GetDateTime("OPlist_ReservationTakeTime", StrTime, StrTime), ShowColumnName: "OPlist_ReservationTakeName AS 员工编号", GroupBy: "OPlist_ReservationTakeName,OPlist_ViceNumber").Tables[0];
- break;
- case LYFZ.EnumPublic.EnumWorkPersonType.服务师1:
- case LYFZ.EnumPublic.EnumWorkPersonType.服务师2:
- tbl2 = orbll.GetView_Custom("(select Ws_Serviceman1,Ws_Number,Ws_WeddingDate from tb_ErpWeddingService where Ws_Serviceman1 != '' group by Ws_Serviceman1,Ws_Number,Ws_WeddingDate UNION ALL select Ws_Serviceman2,Ws_Number,Ws_WeddingDate from tb_ErpWeddingService where Ws_Serviceman2 != '' group by Ws_Serviceman2,Ws_Number,Ws_WeddingDate) AS tb", StrWhere: LYFZ.Software.MainBusiness.DoorCityProcess.PublicCodeClasses.GetDateTime("tb.Ws_WeddingDate", StrTime, StrTime, ConnectWord: ""), ShowColumnName: "Ws_Serviceman1 AS 员工编号").Tables[0];
- break;
- }
- }
- }
- /// <summary>
- /// 窗体加载事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- void SelectWorkPersonSuperSmallForm_Shown(object sender, EventArgs e)
- {
- DataTable dt = orbll.GetView_Custom("tb_ErpOrderAnPaiDepartmentRecord", StrWhere: "Ordor_DividedShop = '" + LYFZ.Software.MainBusiness.CommonLogical.SuccessfulLogin.GetLocalCompanyInfoID() + "' And Ordor_OperatingType = '" + WorkPersonType.ToString().Trim() + "'", ShowColumnName: "Ordor_Department").Tables[0];
- if (dt.Rows.Count > 0)
- { this.cmbtreevDepartment.TextFindTag(dt.Rows[0]["Ordor_Department"].ToString().Trim()); }
- this.GetWorkPerson();
- }
- DataTable tbl;
- DataTable tbl2 = new DataTable();
- /// <summary>
- /// 获取工作人员
- /// </summary>
- /// <param name="StrDepartment"></param>
- void GetWorkPerson()
- {
- this.dgvData.Rows.Clear();
- string strWhere = "";
- if (!string.IsNullOrEmpty(this.cmbtreevDepartment.Text.Trim()) && this.cmbtreevDepartment.Text.Trim() != "全部")
- { strWhere = " And Dt_Name = '" + this.cmbtreevDepartment.Text.Trim() + "'"; }
- string StrAddName = "";
- if (this.cmbtreevStoreName.Visible)
- {
- if (this.dgvData.Columns.Contains("所属分店"))
- { StrAddName = ",Company_Name AS 所属分店"; }
- if (!string.IsNullOrEmpty(this.cmbtreevStoreName.Text.Trim()) && this.cmbtreevStoreName.Text.Trim() != "全部")
- { strWhere += " And User_DividedShop = '" + this.cmbtreevStoreName.Tag.ToString().Trim() + "'"; }
- }
- tbl = orbll.GetView_Custom("tb_ErpUser left join tb_ErpDepartment on User_Department = tb_ErpDepartment.ID Left Join tb_ErpCompanyInfo on Company_DividedShop = User_DividedShop", StrWhere: "User_Status = '在职'" + strWhere, ShowColumnName: "User_EmployeeID AS 员工编号,Dt_Name AS 部门, User_Name AS 员工姓名,'' AS 已安排数" + StrAddName + ",'' AS 是否休息", filedOrder: "tb_ErpDepartment.ID").Tables[0];
-
-
- DataGridViewRow dgvr = new DataGridViewRow();
- DataGridViewCell cell = null;
- cell = new DataGridViewTextBoxCell();
- cell.Value = "";
- dgvr.Cells.Add(cell);
- cell = new DataGridViewTextBoxCell();
- cell.Value = "";
- dgvr.Cells.Add(cell);
- cell = new DataGridViewTextBoxCell();
- cell.Value = "";
- dgvr.Cells.Add(cell);
- cell = new DataGridViewTextBoxCell();
- cell.Value = "";
- dgvr.Cells.Add(cell);
- if (this.dgvData.Columns.Contains("所属分店"))
- {
- cell = new DataGridViewTextBoxCell();
- cell.Value = "";
- dgvr.Cells.Add(cell);
- }
- cell = new DataGridViewTextBoxCell();
- cell.Value = "";
- dgvr.Cells.Add(cell);
- this.dgvData.Rows.Add(dgvr);
- foreach(DataRow dr in tbl.Rows)
- {
- if (this.dgvData.Rows.Count > 0 && tbl2.Rows.Count > 0)
- {
- DataRow[] dtRow = tbl2.Select("员工编号 = '" + dr["员工编号"].ToString().Trim() + "'");
- if (dtRow.Length > 0)
- {
- dr["已安排数"] = dtRow.Length.ToString().Trim();
- }
- }
- }
- foreach (DataRow dr in tbl.Rows)
- {
- if (!string.IsNullOrEmpty(StrTime))
- {
- DataTable dt = LYFZ.Software.MainBusiness.CameraControlBook.PublicClass.GetRestPerson(this.StrTime.Trim());
- DataRow[] dtRow = dt.Select(" User_ID = '" + dr["员工编号"] + "' ");
- if(dtRow.Length>0)
- {
- dr["是否休息"] = "休息";
- }
- }
- }
- this.dgvData.DataSource(tbl, IsBindColumns: false, IsClearRows: false);
-
- }
- //void UserVirtual()
- //{
- // if (tbl == null /*|| dataTable.Rows.Count == 0*/)
- // return;
- // // 清空之前的列和行;
- // this.dgvData.Rows.Clear();
- // dicList.Clear();
- // // 开启虚拟模式;
- // this.dgvData.VirtualMode = true;
- // // 设置总行数;
- // this.dgvData.RowCount = tbl.Rows.Count;
- // this.dgvData.CellValueNeeded -= DgvData_CellValueNeeded;
- // this.dgvData.CellValueNeeded += DgvData_CellValueNeeded;
- //}
- //Dictionary<string, bool> dicList = new Dictionary<string, bool>();
- //private void DgvData_CellValueNeeded(object sender, DataGridViewCellValueEventArgs e)
- //{
- // if (tbl == null ||
- // tbl.Rows.Count == 0 ||
- // tbl.Rows.Count == e.RowIndex ||
- // e.RowIndex > tbl.Rows.Count)
- // return;
- // if(dicList.ContainsKey(e.RowIndex+"-"+e.ColumnIndex))
- // {
- // //return;
- // }
- // else
- // {
- // dicList.Add(e.RowIndex + "-" + e.ColumnIndex, true);
- // DataGridViewRow dgrCurrent = this.dgvData.Rows[e.RowIndex];
- // if (dgrCurrent.DefaultCellStyle.BackColor.IsEmpty)
- // dgrCurrent.DefaultCellStyle.BackColor = (e.RowIndex % 2 == 0) ? System.Drawing.Color.PapayaWhip : System.Drawing.Color.PowderBlue;
- // }
- // // 当前行;
-
- // // StrIsAddColumnsNull不是_dataTable中的列,是手动加进去的(何意义??);
- // if (this.dgvData.Columns[e.ColumnIndex].Name.Trim() != "StrIsAddColumnsNull")
- // e.Value = tbl.Rows[e.RowIndex][tbl.Columns[e.ColumnIndex].ToString().Trim()].ToString();
- // if (tbl.Columns.Count > 0 && this.dgvData.Columns[e.ColumnIndex].Name.Equals("已安排数"))
- // {
- // if (this.dgvData.Rows.Count > 0 && tbl2.Rows.Count > 0)
- // {
- // DataRow[] dtRow = tbl2.Select("员工编号 = '" + tbl.Rows[e.RowIndex]["员工编号"].ToString().Trim() + "'");
- // if (dtRow.Length > 0)
- // {
- // //this.dgvData.Rows[i].Cells["已安排数"].Tag = dtRow.Length.ToString().Trim();
- // //this.dgvData.Rows[i].Cells["已安排数"].Value = "";
- // e.Value = dtRow.Length.ToString().Trim();
- // }
- // }
- // }
- // if (tbl.Columns.Count > 0 && dgvData.Columns[e.ColumnIndex].Name.Equals("是否休息"))
- // {
- // if (!string.IsNullOrEmpty(StrTime))
- // {
- // DataTable dt = LYFZ.Software.MainBusiness.CameraControlBook.PublicClass.GetRestPerson(this.StrTime.Trim());
- // for (int i = 0; i < dt.Rows.Count; i++)
- // {
- // if (tbl.Rows[e.RowIndex]["员工编号"].ToString().Trim() == dt.Rows[i]["User_ID"].ToString().Trim())
- // { e.Value = "休息"; break; }
- // }
- // }
- // }
- //}
- /// <summary>
- /// 确定
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- void btnSaveed_Click(object sender, EventArgs e)
- {
- if (this.dgvData.Rows.Count > 0)
- {
- if (this.dgvData.CurrentCell.RowIndex >= 0 && this.dgvData.CurrentRow.Index >= 0)
- {
- this.StrPersonNumber = this.dgvData.CurrentRow.Cells["员工编号"].Value.ToString().Trim();
- this.StrPersonName = this.dgvData.CurrentRow.Cells["员工姓名"].Value.ToString().Trim();
- if (!string.IsNullOrEmpty(this.dgvData.CurrentRow.Cells["是否休息"].Value.ToString().Trim()))
- { MessageBoxCustom.Show(StrPersonName + " '" + this.StrTime.Trim() + "'休息,不能安排工作!"); return; }
- this.IsSaveed = true;
- string StrStoreName = "";
- if (this.cmbtreevStoreName.Text.Trim() != "全部")
- { StrStoreName = this.cmbtreevStoreName.Tag.ToString().Trim(); }
- else
- { StrStoreName = LYFZ.Software.MainBusiness.CommonLogical.SuccessfulLogin.GetLocalCompanyInfoID(); }
- LYFZ.Model.Model_ErpOrderAnPaiDepartmentRecord model = null;
- DataTable dt = orbll.GetView_Custom("tb_ErpOrderAnPaiDepartmentRecord", StrWhere: "Ordor_DividedShop = '" + StrStoreName + "' And Ordor_OperatingType = '" + this.WorkPersonType.ToString().Trim() + "'", ShowColumnName: "*").Tables[0];
- if (dt.Rows.Count > 0)
- {
- model = ordrbll.DataRowToModel(dt.Select()[0]);
- model.Ordor_Department = this.dgvData.CurrentRow.Cells["部门"].Value.ToString().Trim();
- ordrbll.Update(model);
- }
- else
- {
- model = new Model.Model_ErpOrderAnPaiDepartmentRecord();
- model.Ordor_DividedShop = StrStoreName;
- model.Ordor_OperatingType = this.WorkPersonType.ToString().Trim();
- model.Ordor_Department = this.dgvData.CurrentRow.Cells["部门"].Value.ToString().Trim();
- ordrbll.Add(model);
- }
- this.Close();
- }
- }
- }
- /// <summary>
- /// 取消
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- void btnCancel_Click(object sender, EventArgs e)
- {
- this.Close();
- }
- /// <summary>
- /// 列表双击选择事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- void dgvData_MouseDoubleClick(object sender, MouseEventArgs e)
- {
- this.btnSaveed_Click(this, null);
- }
- /// <summary>
- /// 部门选择事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- void cmbtreevDepartment_ComboBoxTree_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
- {
- this.GetWorkPerson();
- }
- /// <summary>
- /// 选择分店人员
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- void cmbtreevStoreName_ComboBoxTree_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
- {
- this.SelectWorkPersonSuperSmallForm_Shown(this, null);
- }
- }
- }
|