BaoKai_202508_Wms_Jingwang_.../WMS.FrmPerformance/FrmWorkLoad.cs
2025-08-24 21:52:42 +08:00

366 lines
14 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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;
using WMS.Common;
using WMS.Base.WebService;
using WMS.Ctrl;
using WMS.Model.Base;
using WMS.Frm.Base;
namespace WMS.FrmPerformance
{
public partial class FrmWorkLoad : FormBase
{
/// <summary>
/// 派工单MODEL
/// </summary>
WorkLoadModel workModel = new WorkLoadModel();
/// <summary>
/// 派工单集合
/// </summary>
List<WorkLoadModel> workList = new List<WorkLoadModel>();
/// <summary>
/// 派工明细增加集合
/// </summary>
List<WorkLoadModel> addList = new List<WorkLoadModel>();
/// <summary>
/// 派工明细删除集合
/// </summary>
List<WorkLoadModel> delList = new List<WorkLoadModel>();
/// <summary>
/// 派工明细修改集合
/// </summary>
List<WorkLoadModel> upList = new List<WorkLoadModel>();
List<GoodsInfoModel> goodsListModel = new List<GoodsInfoModel>();
/// <summary>
/// 业务类型
/// </summary>
int workflag = 3;//0 增加 1 修改 2 删除 ;
public FrmWorkLoad()
{
InitializeComponent();
}
private void FrmWorkLoad_Load(object sender, EventArgs e)
{
BindLep();
workModel.WORK_DATE_STAR = DateTime.Now.AddDays(-7);
workModel.WORK_DATE_END = DateTime.Now;
BindWorkLoad(workModel);
}
private void BindLep()
{
string strUser = WebLockConfig.Instance.WebSystemUser.GetAllUsers();
List<UserDataModel> userList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<UserDataModel>>(strUser);
repositoryItemLookUpEditUser.DataSource = userList;
repositoryItemLookUpEditUser.DisplayMember = "NAME";
repositoryItemLookUpEditUser.ValueMember = "USER_ID";
string strDepModel = Newtonsoft.Json.JsonConvert.SerializeObject(new WMS.Model.SystemManage.CompanyModel());
string strDep = WebLockConfig.Instance.WebCompany.GetCompanyNodesData(strDepModel);
List<WMS.Model.SystemManage.CompanyModel> depList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<WMS.Model.SystemManage.CompanyModel>>(strDep);
repositoryItemLookUpEditDep.DataSource = depList;
repositoryItemLookUpEditDep.DisplayMember = "COM_NAME";
repositoryItemLookUpEditDep.ValueMember = "COM_ID";
string strWorkModel = Newtonsoft.Json.JsonConvert.SerializeObject(new WorkTypeModel());
string strWork = WebLockConfig.Instance.WebWorkType.execWorkTypeGetList(strWorkModel);
List<WorkTypeModel> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<WorkTypeModel>>(strWork);
repositoryItemLookUpEditWorkType.DataSource = list;
repositoryItemLookUpEditWorkType.DisplayMember = "WORK_NAME";
repositoryItemLookUpEditWorkType.ValueMember = "WORK_ID";
}
private void BindWorkLoad(WorkLoadModel model)
{
string strModel = Newtonsoft.Json.JsonConvert.SerializeObject(model);
string strList = WebLockConfig.Instance.WebWorkLoad.execWorkLoadGetList(strModel);
workList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<WorkLoadModel>>(strList);
GCWorkType.DataSource = workList;
GVWorkType.RefreshData();
}
#region
/// <summary>
/// 新增按钮
/// </summary>
public void Add()
{
frmButtonItem["Save"].Enabled = true;
frmButtonItem["Clear"].Enabled = true;
frmButtonItem["Confirm"].Enabled = true;
workflag = 0;
workModel = new WorkLoadModel();
}
/// <summary>
/// 保存按钮
/// </summary>
public void Save()
{
FrmOperator(workflag);
}
/// <summary>
/// 删除按钮
/// </summary>
public void Del()
{
workflag = 2;
if (GVWorkType.FocusedRowHandle > -1)
{
if (SystemCommon.ShowMessageBoxResult("确定此工作量记录?") == System.Windows.Forms.DialogResult.Yes)
{
Save();
}
}
}
/// <summary>
/// 修改按钮
/// </summary>
public void Edit()
{
if (GVWorkType.FocusedRowHandle < 0)
{
return;
}
frmButtonItem["Save"].Enabled = true;
frmButtonItem["Clear"].Enabled = true;
frmButtonItem["Confirm"].Enabled = true;
workflag = 1;
workModel = GVWorkType.GetFocusedRow() as WorkLoadModel;
txtBillsID.Text = workModel.BILLS_ID;
DateWork.EditValue = workModel.WORK_DATE;
}
/// <summary>
/// 刷新按钮
/// </summary>
public void Refresh()
{
workModel = new WorkLoadModel();
workModel.WORK_DATE_STAR = DateTime.Now.AddDays(-7);
workModel.WORK_DATE_END = DateTime.Now;
BindWorkLoad(workModel);
}
/// <summary>
/// 明细增加
/// </summary>
public void Clear()
{
if (!string.IsNullOrEmpty(workModel.BILLS_ID))
{
workList.Add(new WorkLoadModel() { BILLS_ID = workModel.BILLS_ID });
GCWorkType.DataSource = workList;
GVWorkType.RefreshData();
}
}
/// <summary>
/// 明细删除
/// </summary>
public void Confirm()
{
if (GVWorkType.FocusedRowHandle > -1)
{
WorkLoadModel model = GVWorkType.GetFocusedRow() as WorkLoadModel;
workList.Remove(model);
GCWorkType.DataSource = workList;
GVWorkType.RefreshData();
if (addList.Contains(model))
{
addList.Remove(model);
}
if (upList.Contains(model))
{
upList.Remove(model);
}
if (!delList.Contains(model))
{
delList.Add(model);
}
}
}
/// <summary>
/// 查询按钮
/// </summary>
public void Search()
{
GCWorkType.Focus();
GCWorkType.Select();
workModel = new WorkLoadModel();
workModel.BILLS_ID = txtBillsID.Text;
workModel.WORK_DATE = DateWork.DateTime;
BindWorkLoad(workModel);
}
/// <summary>
/// 导出按钮
/// </summary>
public void Export()
{
}
/// <summary>
/// 备注
/// </summary>
public void Remark()
{
//FrmSelectRemark frmSelectRemark = new FrmSelectRemark();
//frmSelectRemark.remarkType = "班组管理";
//frmSelectRemark.ShowDialog();
//if (frmSelectRemark.remarkType != "selected") { return; }
//teamModel.REMARK = frmSelectRemark.baseRemarkDictionaryModel.CONTENT;
//txtRemark.Text = frmSelectRemark.baseRemarkDictionaryModel.CONTENT;
//txtRemark.ForeColor = System.Drawing.ColorTranslator.FromHtml(frmSelectRemark.baseRemarkDictionaryModel.COLOR_ID);
}
#endregion
#region
/// <summary>
/// 操作(增、改、删)
/// </summary>
/// <param name="flag">0 新增 1修改 2删除 3停用 4启用/param>
private void FrmOperator(int flag)
{
GVWorkType.CloseEditor();
GVWorkType.UpdateCurrentRow();
string errtxt = "";
try
{
if (string.IsNullOrEmpty(workModel.BILLS_ID))
{
SystemCommon.ShowErrorMessageBox("请指定原业务单据!");
return;
}
if (workList.Count == 0)
{
SystemCommon.ShowErrorMessageBox("请完善工作量信息!");
return;
}
if (flag == 0)
{
string strWorkList = Newtonsoft.Json.JsonConvert.SerializeObject(workList);
errtxt = WebLockConfig.Instance.WebWorkLoad.execWorkLoadAddList(strWorkList);
}
else if (flag == 1)
{
string straddInfo = Newtonsoft.Json.JsonConvert.SerializeObject(addList);
string strdelInfo = Newtonsoft.Json.JsonConvert.SerializeObject(delList);
string strupInfo = Newtonsoft.Json.JsonConvert.SerializeObject(upList);
errtxt = WebLockConfig.Instance.WebWorkLoad.execWorkLoadUpAndList(straddInfo, strdelInfo, strupInfo);
}
else if (flag == 2)
{
string strWorkModel = Newtonsoft.Json.JsonConvert.SerializeObject(GVWorkType.GetFocusedRow() as WorkLoadModel);
errtxt = WebLockConfig.Instance.WebWorkLoad.execWorkLoadDel(strWorkModel);
}
if (!string.IsNullOrEmpty(errtxt))
{
SystemCommon.ShowErrorMessageBox(errtxt);
}
else
{
SystemCommon.ShowInfoMessageBox("操作成功!");
addList.Clear();
upList.Clear();
delList.Clear();
frmButtonItem["Save"].Enabled = false;
frmButtonItem["Clear"].Enabled = false;
frmButtonItem["Confirm"].Enabled = false;
workflag = 3;
workModel.WORK_DATE_STAR = DateTime.Now.AddDays(-7);
workModel.WORK_DATE_END = DateTime.Now;
BindWorkLoad(workModel);
}
}
catch (Exception e)
{
SystemCommon.ShowInfoMessageBox("您的操作失败!" + Environment.NewLine + e.Message);
}
}
#endregion
private void GVWorkType_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
{
if (e.RowHandle < 0)
{
return;
}
WorkLoadModel focModel = GVWorkType.GetFocusedRow() as WorkLoadModel;
if (!addList.Contains(focModel))
{
addList.Add(focModel);
}
if (!upList.Contains(focModel))
{
upList.Add(focModel);
}
}
private void txtDispatching_Leave(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(txtDispatching.Text))
{
LoadForm load = new LoadForm();
DevExpress.XtraSplashScreen.SplashScreenManager.ShowForm(load, load.GetType(), false, true, false, 50);
DevExpress.XtraSplashScreen.SplashScreenManager.Default.SetWaitFormDescription("正在加载窗体,请等待....");
string strDis = Newtonsoft.Json.JsonConvert.SerializeObject(new DispatchingModel() { PAT_ID = txtDispatching.Text });
string strList = WebLockConfig.Instance.WebDispatchingInfo.execDispatchingInfoGetList(strDis);
List<DispatchingModel> disList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<DispatchingModel>>(strList);
if (disList.Count > 0)
{
txtBillsID.Text = disList[0].BILL_ID;
DateWork.EditValue = disList[0].WORK_DATE;
string strDisInfo = Newtonsoft.Json.JsonConvert.SerializeObject(new DispatchingInfoModel() { PAT_ID = txtDispatching.Text });
string strInfoList = WebLockConfig.Instance.WebDispatchingInfo.execDispatchingInfoGetList(strDisInfo);
List<DispatchingInfoModel> disInfoList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<DispatchingInfoModel>>(strInfoList);
if (disInfoList.Count > 0)
{
workList.Clear();
string strUser = WebLockConfig.Instance.WebSystemUser.GetAllUsers();
List<UserDataModel> userList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<UserDataModel>>(strUser);
foreach (DispatchingInfoModel model in disInfoList)
{
WorkLoadModel wmodel = new WorkLoadModel();
UserDataModel usermodel = userList.Find(r => r.USER_ID == model.USER_ID);
wmodel.ID = Guid.NewGuid().ToString();
wmodel.USER_ID = model.USER_ID;
wmodel.WORK_DATE = DateWork.DateTime;
wmodel.DEP_ID = usermodel.COM_ID;
wmodel.DEP_NAME = usermodel.COM_NAME;
wmodel.WORK_TYPE = usermodel.WORKKIND_ID;
//wmodel. = usermodel.WORKKIND_ID;
workList.Add(wmodel);
}
}
}
DevExpress.XtraSplashScreen.SplashScreenManager.CloseForm();
}
}
}
}