public void UpdateOutstoreStype() { SOHeaderEntity header = IParent.GetFocusedBill(); if (header == null) { MsgBox.Warn("请选择要操作的订单。"); return; } if (header.Status != "60") { MsgBox.Warn("只有等待排序的订单才能更改出库方式。"); return; } try { FrmOutstoreTypeModify frmOutstoreTypeModify = new FrmOutstoreTypeModify(header); if (frmOutstoreTypeModify.ShowDialog() == DialogResult.OK) { bool ret = UpdateOutstoreStype(header.BillID, frmOutstoreTypeModify.ItemValue); if (ret) { Query(1, DateTime.Now, DateTime.Now); } } } catch (Exception ex) { MsgBox.Err(ex.Message); } }
/// <summary> /// 关联车辆 彭伟 2015-07-14 /// </summary> private void toolJoinVehicle_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { SOHeaderEntity selectedHeader = SelectedHeader; if (selectedHeader == null || selectedHeader.DelayMark != 1) { MsgBox.Warn("请选择延时发货的订单!"); return; } using (FrmChooseVehicle frmChooseVehicle = new FrmChooseVehicle(ConvertUtil.ToInt(selectedHeader.ShipNO))) { if (frmChooseVehicle.ShowDialog() != DialogResult.OK || frmChooseVehicle.SelectedVehicle == null) { return; } //int result = this.soDal.JoinBillNOAndVehicle( // ConvertUtil.ToString(frmChooseVehicle.SelectedVehicle.ID), // selectedHeader.BillID); //if (result < 1) //{ // MsgBox.Warn("关联失败,请重试!"); // return; //} //myPre.Query(1, DateTime.Now, DateTime.Now); //MsgBox.OK("关联成功。"); } }
public FrmPickStrategy(SOHeaderEntity selectedBill) { InitializeComponent(); this.selectedBill = selectedBill; txtBillNO.Text = selectedBill.BillNO; }
//Add by ZXQ 20150525 private void toolCreateCRNBill_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { try { SOHeaderEntity selectedHeader = SelectedHeader; if (selectedHeader == null) { MsgBox.Warn("未选中单据!"); return; } if (selectedHeader.Status == "68") { FrmCreateCRNBill frm = new FrmCreateCRNBill(selectedHeader); frm.ShowDialog(); } else { MsgBox.Warn("只有<发货完成>的出库单才能创建退货单!"); } } catch (Exception ex) { MsgBox.Warn(ex.Message); return; } }
public void MarkDelayedOrder() { SOHeaderEntity header = GetFocusedBill(); List <SOHeaderEntity> focusedBills = GetFocusedBills(); if (focusedBills.Count > 1) { MsgBox.Warn("每次只能标记一张延时单据!"); return; } if (header == null) { MsgBox.Warn("请选中要标记的单据。"); return; } if (focusedBills.Count == 1) { if (DialogResult.Yes == MsgBox.AskYes("确定将此单据标记为延时?")) { bool result = UpdateDelayedOrder(header.BillID, GlobeSettings.LoginedUser.UserName, header.BillNO); if (result) { MsgBox.Warn("标记成功!"); return; } } } }
public FrmEditSO(SOHeaderEntity header) { InitializeComponent(); Header = header; this.Text = string.Format("填写备注(单号:{0})", Header.BillNO); }
private void DoAcrossOutbound() { SOHeaderEntity selectedHeader = SelectedHeader; if (selectedHeader == null) { MsgBox.Warn("请选中单据行。"); return; } if (MsgBox.AskOK(string.Format("单据“{0}”确定执行出库操作吗?", selectedHeader.BillNO)) != DialogResult.OK) { return; } try { bool result = AcrossOutbound(selectedHeader.BillID, string.Empty, GlobeSettings.LoginedUser.UserName); Insert(ELogType.越库, GlobeSettings.LoginedUser.UserName, selectedHeader.BillNO, string.Empty, "越库出库"); if (result) { gridPlans.DataSource = null; Reload(); MsgBox.OK("越库发货成功。"); } } catch (Exception ex) { MsgBox.Err(ex.Message); } }
public FrmCreateCRNBill(SOHeaderEntity selectedHeader) { InitializeComponent(); this.soHeader = selectedHeader; this.Text = string.Format("新增退货单(出库单号:{0})", soHeader.BillID); }
/// <summary> /// 生成装车任务 /// </summary> private void btnCreateTask_Click(object sender, EventArgs e) { try { object obj = null; if ((obj = this.InvokeScript(M_SUB_BILL)) == null) { MsgBox.Warn("未找到已排序订单!"); return; } List <SortMapReceiveDataEntity> list = JsonConvert.DeserializeObject <List <SortMapReceiveDataEntity> >(obj.ToString()); if (list == null || list.Count == 0) { MsgBox.Warn("未找到已排序订单"); return; } if (list.Count == this._list.Count || MsgBox.AskOK("还有未排序的订单,是否继续提交?") == DialogResult.OK) { string billIDs = string.Empty; List <OrderSortEntity> sortList = new List <OrderSortEntity>(); foreach (SortMapReceiveDataEntity data in list) { SOHeaderEntity header = this._list.Find(new Predicate <SOHeaderEntity>( (item) => { return(item.BillNO == data.orderId); })); if (header == null) { continue; } sortList.Add(new OrderSortEntity() { VehicleNo = ConvertUtil.ToString(this._vehicle.ID), BillNo = data.orderId, InVehicleSort = ConvertUtil.ToInt(data.paixu), PiecesQty = data.boxNum, Attri1 = 10 }); } // 存储排序记录 OrderSortDal.Insert(sortList); string selectedBillIDs = StringUtil.JoinBySign <SOHeaderEntity>(this._list, "BillID"); string errMsg = TaskDal.CreateLoadingTask(selectedBillIDs, ConvertUtil.ToString(this._vehicle.ID)); if (!string.IsNullOrEmpty(errMsg)) { throw new Exception(errMsg); } this.DialogResult = DialogResult.OK; } } catch (Exception ex) { MsgBox.Err("错误:" + ex.Message); } }
public void CancelOrder() { SOHeaderEntity header = IParent.GetFocusedBill(); if (header == null) { MsgBox.Warn("请选择要“取消”的订单。"); return; } //先从界面上判断一下,减少网络交互和数据库负载 if (header.Status == "693") { MsgBox.Warn(string.Format("单据“{0}”已发车,不允许取消。", header.BillNO)); return; } else if (header.CancelFlag == 1) { MsgBox.Warn(string.Format("单据“{0}”已经被“取消”,不允许多次执行。", header.BillNO)); return; } if (MsgBox.AskOK(string.Format("确认要将单据“{0}”执行“取消”操作吗?", header.BillNO)) != DialogResult.OK) { return; } try { FrmTempAuthorize frmAuthorize = new FrmTempAuthorize("称重复核员"); if (frmAuthorize.ShowDialog() == DialogResult.OK) { //string errorStr = soDal.CancelBill(header.BillID, GlobeSettings.LoginedUser.UserName); //if (string.IsNullOrEmpty(errorStr)) bool errorStr = CancelBill(header.BillID, GlobeSettings.LoginedUser.UserName, EUtilStroreType.WarehouseTypeToInt(GlobeSettings.LoginedUser.WarehouseType)); if (errorStr) { //成功,刷新界面即可,不再提示 Query(1, DateTime.Now, DateTime.Now); IParent.RefreshHeaderGrid(); // 如果为整货仓,提示用户;如果该订单物流箱已接收,系统已将商品库存转移到900货位 if (GlobeSettings.LoginedUser.WarehouseType == EWarehouseType.整货仓) { MsgBox.OK("如果当前订单存在已接收的物流箱,系统会将散货商品转移到900-01-01货位。"); } // 存储过程中已在 WM_SO_LOG 表里记录日志 //LogDal.Insert(ELogType.订单状态变更, GlobeSettings.LoginedUser.UserName, header.BillNO, "称重复核员:" + frmAuthorize.AuthUserCode, "出库单管理"); } //else //{ // throw new Exception(errorStr); //} } } catch (Exception ex) { MsgBox.Err(ex.Message); } }
private void UpdateUIState(SOHeaderEntity selectedHeader, int billID) { //更新界面显示 SOHeaderEntity _header = GetBillStatus(billID); selectedHeader.Status = _header.Status; selectedHeader.StatusName = _header.StatusName; bindingSource1.ResetCurrentItem(); }
/// <summary> /// 查看单据明细行物料入库信息 /// </summary> public void ShowOutboundDetail() { SOHeaderEntity header = IParent.GetFocusedBill(); if (header == null) { MsgBox.Warn("请选中要查看的行。"); } else { } }
private void CheckOneGridColumn(GridView view, string checkedField, Point mousePosition) { Point p = view.GridControl.PointToClient(mousePosition); GridHitInfo hitInfo = view.CalcHitInfo(p); #region if (hitInfo.HitTest == GridHitTest.Column && hitInfo.Column.FieldName == checkedField) { List <SOHeaderEntity> _data = gridHeader.DataSource as List <SOHeaderEntity>; if (_data == null) { return; } int currentIndex = hitInfo.Column.ImageIndex; bool flag = currentIndex == 0; #region for (int i = 0; i < gvHeader.RowCount; i++) { gvHeader.SetRowCellValue(i, "HasChecked", flag); SOHeaderEntity tmp = gvHeader.GetRow(i) as SOHeaderEntity; if (tmp != null) { //分派装车,查看是否有同一个客户,是否还有其他订单不是当前状态的 IsHaveOtherStatus(tmp.CustomerCode); } } #endregion //_data.ForEach(d => d.HasChecked = flag); hitInfo.Column.ImageIndex = 4 - currentIndex; } else { #region SOHeaderEntity selectedHeader = gvHeader.GetFocusedRow() as SOHeaderEntity; if (selectedHeader == null) { return; } //分派装车,查看是否有同一个客户,是否还有其他订单不是当前状态的 IsHaveOtherStatus(selectedHeader.CustomerCode); //实现同一客户不同订单置位选中状态 SetSameCustomerCheck(selectedHeader); #endregion } #endregion }
/// <summary> /// 装车信息--完成装车2,再次查询信息 /// </summary> /// <param name="vhNO"></param> /// <param name="tpyeOpe"></param> /// <returns></returns> public List <SOHeaderEntity> GetHeaderInfoByBillNOS(string vhNO, int tpyeOpe) { List <SOHeaderEntity> list = new List <SOHeaderEntity>(); try { #region 请求数据 System.Text.StringBuilder loStr = new System.Text.StringBuilder(); loStr.Append("vhNo=").Append(vhNO).Append("&"); loStr.Append("type=").Append(tpyeOpe); string jsonQuery = WebWork.SendRequest(loStr.ToString(), WebWork.URL_GetHeaderInfoByBillNOS); if (string.IsNullOrEmpty(jsonQuery)) { MsgBox.Warn(WebWork.RESULT_NULL); //LogHelper.InfoLog(WebWork.RESULT_NULL); return(list); } #endregion #region 正常错误处理 JsonGetHeaderInfoByBillNOS bill = JsonConvert.DeserializeObject <JsonGetHeaderInfoByBillNOS>(jsonQuery); if (bill == null) { MsgBox.Warn(WebWork.JSON_DATA_NULL); return(list); } if (bill.flag != 0) { MsgBox.Warn(bill.error); return(list); } #endregion #region 赋值数据 foreach (JsonGetHeaderInfoByBillNOSResult jbr in bill.result) { SOHeaderEntity asnEntity = new SOHeaderEntity(); asnEntity.BillID = Convert.ToInt32(jbr.billId); list.Add(asnEntity); } return(list); #endregion } catch (Exception ex) { MsgBox.Err(ex.Message); } return(list); }
public void ShowBillLog() { SOHeaderEntity header = IParent.GetFocusedBill(); if (header == null) { MsgBox.Warn("请选中要查看的行。"); } else { FrmViewBillLog frmLog = new FrmViewBillLog(header.BillID, header.BillNO, "出库单据"); frmLog.ShowDialog(); } }
/// <summary> /// 显示拣货计划 /// </summary> public void ShowPickPlan() { SOHeaderEntity header = IParent.GetFocusedBill(); if (header == null) { MsgBox.Warn("请选中要查看的行。"); } else { FrmListPickPlan frmListPickPlan = new FrmListPickPlan(header.BillID, header.BillNO); frmListPickPlan.ShowDialog(); } }
/// <summary> /// 查看称重记录 2015-6-10 10:41:22 by wangjw /// </summary> public void ShowWeighRecords() { SOHeaderEntity header = IParent.GetFocusedBill(); if (header == null) { MsgBox.Warn("请选中要查看的行。"); } else { FrmListWeighRecords frmWeightRecords = new FrmListWeighRecords(header.BillID, header.BillNO); frmWeightRecords.ShowDialog(); } }
public void ContainerDescribe() { SOHeaderEntity header = IParent.GetFocusedBill(); if (header == null) { MsgBox.Warn("请选中要查看的行。"); } else { FrmSOContainerDescribe frmWeightRecords = new FrmSOContainerDescribe(header.BillID, header.BillNO); frmWeightRecords.ShowDialog(); } }
private void ShowFocusDetail() { SOHeaderEntity selectedHeader = SelectedHeader; if (selectedHeader == null) { gridDetails.DataSource = null; gvDetails.ViewCaption = "未选择单据"; } else { gridDetails.DataSource = GetDetails(selectedHeader.BillID); gvDetails.ViewCaption = string.Format("单据号: {0}", selectedHeader.BillNO); } }
void ShowFocusedPickPlan() { SOHeaderEntity selectedHeader = SelectedHeader; if (selectedHeader == null) { gridPlans.DataSource = null; gvPlans.ViewCaption = "未选择单据"; } else { gridPlans.DataSource = GetPickPlan(selectedHeader.BillID); gvPlans.ViewCaption = string.Format("单据号: {0}", selectedHeader.BillNO); } }
private void OnViewCellValueChanging(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e) { if (e.Column.FieldName != "HasChecked") { return; } SOHeaderEntity selectedHeader = gvHeader.GetFocusedRow() as SOHeaderEntity; if (selectedHeader == null) { return; } selectedHeader.HasChecked = ConvertUtil.ToBool(e.Value); gvHeader.CloseEditor(); }
public void ShowFocusDetail() { SOHeaderEntity selectedHeader = SelectedHeader; if (selectedHeader == null) { gridDetails.DataSource = null; gvDetails.ViewCaption = "未选择单据"; } else { gridDetails.DataSource = GetDetails(selectedHeader.BillID); gvDetails.ViewCaption = string.Format("单据号: {0}; 超市名称:{1}; 地址:{2}", selectedHeader.BillNO, selectedHeader.CustomerName, selectedHeader.Address); } this.toolJoinVehicle.Enabled = (selectedHeader != null && selectedHeader.DelayMark == 1); }
private void gridView1_RowCellStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowCellStyleEventArgs e) { GridView vw = (sender as GridView); try { SOHeaderEntity header = vw.GetRow(e.RowHandle) as SOHeaderEntity; if (header != null) { if (header.RowForeColor != null) { e.Appearance.ForeColor = Color.FromArgb(header.RowForeColor.Value); } } } catch (Exception ex) { } }
public void CloseBill() { SOHeaderEntity header = IParent.GetFocusedBill(); if (header == null) { MsgBox.Warn("请选中要设置为“发货完成”的行。"); return; } //先从界面上判断一下,减少网络交互和数据库负载 if (header.Status == BaseCodeConstant.SO_STATUS_CLOSE) { MsgBox.Warn(string.Format("单据“{0}”已经设置为“发货完成”,不允许多次执行。", header.BillNO)); return; } if (header.Status == "68" || header.Status == "693") { MsgBox.Warn(string.Format("单据“{0}”已经“发货完成”,不允许“取消”。", header.BillNO)); return; } if (MsgBox.AskOK(string.Format("确认要将单据“{0}”设置为“发货完成”吗?", header.BillNO)) != DialogResult.OK) { return; } try { //FrmTempAuthorize frmAuthorize = new FrmTempAuthorize("称重复核员"); //if (frmAuthorize.ShowDialog() == DialogResult.OK) //{ // soDal.CloseBill(header.BillID, GlobeSettings.LoginedUser.UserName); // //成功,刷新界面即可,不再提示 // Query(1, DateTime.Now, DateTime.Now); // IParent.RefreshHeaderGrid(); // LogDal.Insert(ELogType.订单状态变更, GlobeSettings.LoginedUser.UserName, header.BillNO, "称重复核员:" + frmAuthorize.AuthUserCode, "出库单管理"); //} } catch (Exception ex) { MsgBox.Err(ex.Message); } }
/// <summary> /// 实现同一客户不同订单置位选中状态 /// </summary> public void SetSameCustomerCheck(SOHeaderEntity header, bool isVisibleAll = false) { try { if (header != null) { //获取选中的单据,只处理显示出来的,不考虑由于过滤导致的未显示单据 bool isCheck = true; #region if (isVisibleAll) { if (header.HasChecked == true) { isCheck = true; } else { isCheck = false; } } else { if (header.HasChecked == false) { isCheck = true; } else { isCheck = false; } } #endregion for (int i = 0; i < gvHeader.RowCount; i++) { SOHeaderEntity tmp = gvHeader.GetRow(i) as SOHeaderEntity; if (tmp != null && header.CustomerCode == tmp.CustomerCode) { gvHeader.SetRowCellValue(i, "HasChecked", isCheck); } } } } catch (Exception ex) { } }
public void SaveBackAmount() { SOHeaderEntity header = GetFocusedBill(); if (header == null) { MsgBox.Warn("请选中要录入的单据。"); return; } FrmConfirmAmount frm = new FrmConfirmAmount(header); frm.VehicleNo = lstVehicle.Text.Trim(); if (frm.ShowDialog() == DialogResult.OK) { OnbtnQueryClick(null, null); } }
public void WriteWMSRemark() { SOHeaderEntity header = IParent.GetFocusedBill(); if (header == null) { MsgBox.Warn("请选中要修改的单据。"); } else { //目前只修改颜色和备注 FrmEditSO frmEdit = new FrmEditSO(header); if (frmEdit.ShowDialog() == DialogResult.OK) { //刷新界面显示 header.UpdateRemark(frmEdit.Remark, frmEdit.SelectedColor); } } }
void ShowFocusedBillPickPlan() { SOHeaderEntity selectedHeader = SelectHeader; if (selectedHeader == null) { gridControl2.DataSource = null; gridView2.ViewCaption = "未选中任何单据"; //simpleButton1.Enabled = false; //listPickPerson.UnCheckAll(); } else { List <PickPlanEntity> plans = GetPickPlan(selectedHeader.BillID); gridControl2.DataSource = plans; gridView2.ViewCaption = string.Format("拣货单据:{0}", selectedHeader.BillNO); //simpleButton1.Enabled = true; //CheckMyPDA(selectedHeader.BillID); } }
public void SetBillState() { SOHeaderEntity header = IParent.GetFocusedBill(); if (header == null) { MsgBox.Warn("请选中要设置为“等待发货”的行。"); return; } if (header.Status != "61") { MsgBox.Warn("只有等待拣配的订单才能设置等待装车。"); return; } try { using (FrmTempAuthorize frmAuto = new FrmTempAuthorize("称重复核员")) { if (frmAuto.ShowDialog() == DialogResult.OK) { //int ret = soDal.SetBillStates(header.BillID, "66", 0); //if (ret > 0) bool ret = SetBillStatesSend(header.BillID, "66", 0, GlobeSettings.LoginedUser.UserName); if (ret) { Query(1, DateTime.Now, DateTime.Now); } else { MsgBox.Warn("该订单已经生成拣货任务,必须按照流程完成订单。"); } //LogDal.Insert(ELogType.订单状态变更, GlobeSettings.LoginedUser.UserName, header.BillNO, "手动[等待装车]", "出库单管理"); } } } catch (Exception ex) { MsgBox.Err(ex.Message); } }
public FrmConfirmAmount(SOHeaderEntity header) { InitializeComponent(); soDal = new SODal(); headerEntity = header; }