366 lines
14 KiB
C#
366 lines
14 KiB
C#
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();
|
||
}
|
||
}
|
||
}
|
||
}
|