コード例 #1
0
ファイル: Order2CabinetBE.cs プロジェクト: godsayyou/Mes-1
 public void SaveOrder2Cabinet(Sender sender, SaveOrder2CabinetArgs args)
 {
     try
     {
         using (ObjectProxy op = new ObjectProxy(true))
         {
             Order2Cabinet obj = new Order2Cabinet();
             obj.CabinetID = args.Order2Cabinet.CabinetID;
             if (op.LoadOrder2CabinetByCabinetID(obj) == 0)
             {
                 args.Order2Cabinet.Created    = DateTime.Now;
                 args.Order2Cabinet.CreatedBy  = sender.UserCode + "." + sender.UserName;
                 args.Order2Cabinet.Modified   = DateTime.Now;
                 args.Order2Cabinet.ModifiedBy = sender.UserCode + "." + sender.UserName;
                 op.InsertOrder2Cabinet(args.Order2Cabinet);
             }
             else
             {
                 op.UpdateOrder2CabinetByCabinetID(args.Order2Cabinet);
             }
             op.CommitTransaction();
         }
     }
     catch (Exception ex)
     {
         PLogger.LogError(ex);
         throw ex;
     }
 }
コード例 #2
0
ファイル: Order2CabinetBE.cs プロジェクト: godsayyou/Mes-1
 public int UpdateCabinetStatus(Order2Cabinet obj, OprationType Opration, Sender sender)
 {
     try
     {
         using (ObjectProxy op = new ObjectProxy(true))
         {
             int resurt = op.UpdateCabinetStatus(obj, Opration, sender);
             op.CommitTransaction();//加入事物处理,保证数据统一
             return(resurt);
         }
     }
     catch (Exception ex)
     {
         PLogger.LogError(ex);
         throw ex;
     }
 }
コード例 #3
0
ファイル: Order2CabinetBE.cs プロジェクト: godsayyou/Mes-1
 public Order2Cabinet GetOrder2Cabinet(Sender sender, Guid CabinetID)
 {
     try
     {
         using (ObjectProxy op = new ObjectProxy())
         {
             Order2Cabinet obj = new Order2Cabinet();
             obj.CabinetID = CabinetID;
             if (op.LoadOrder2CabinetByCabinetID(obj) == 0)
             {
                 return(null);
             }
             return(obj);
         }
     }
     catch (Exception ex)
     {
         PLogger.LogError(ex);
         throw ex;
     }
 }
コード例 #4
0
ファイル: Order2CabinetBE.cs プロジェクト: godsayyou/Mes-1
 public Order2Cabinet GetOrder2CabinetByOrderID_CabinetName(Sender sender, Guid OrderID, string CabinetName)
 {
     try
     {
         using (ObjectProxy op = new ObjectProxy())
         {
             Order2Cabinet obj = new Order2Cabinet();
             obj.OrderID     = OrderID;
             obj.CabinetName = CabinetName;
             if (op.LoadOrder2CabinetByOrderID_CabinetName(obj) == 0)
             {
                 return(null);
             }
             return(obj);
         }
     }
     catch (Exception ex)
     {
         PLogger.LogError(ex);
         throw ex;
     }
 }
コード例 #5
0
ファイル: frmDoors.cs プロジェクト: godsayyou/Mes-1
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (this.listPackage.Items.Count == 0)
                {
                    throw new Exception("未添加任何包数据。");
                }
                using (ProxyBE bll = new ProxyBE())
                {
                    Order order = bll.Client.GetOrder(CGlobal.SenderUser, OrderID);
                    //订单添加板件明细
                    List <OrderDetail> suborders = new List <OrderDetail>();

                    List <OrderDetail> details = bll.Client.GetOrderDetails(CGlobal.SenderUser, OrderID);
                    Order2Cabinet      cabinet = bll.Client.GetOrder2Cabinet(CGlobal.SenderUser, this.CabinetID);
                    int itemsQty = 1;
                    foreach (ListViewItem li in this.listPackage.Items)
                    {
                        int Qty = int.Parse(li.SubItems[2].Text);
                        for (int i = 0; i < Qty; i++)
                        {
                            OrderDetail subOrder = new OrderDetail();
                            subOrder.ItemID           = Guid.NewGuid();
                            subOrder.OrderID          = this.OrderID;
                            subOrder.BarcodeNo        = order.OrderNo + ((char)(64 + cabinet.Sequence)).ToString() + (itemsQty + details.Count + 50).ToString("000");
                            subOrder.ItemName         = li.SubItems[1].Text;
                            subOrder.MadeBattchNum    = "";
                            subOrder.MaterialType     = "";
                            subOrder.MadeLength       = 0;
                            subOrder.MadeWidth        = 0;
                            subOrder.MadeHeight       = 0;
                            subOrder.Qty              = 1;
                            subOrder.TextureDirection = "";
                            subOrder.Edge1            = "";
                            subOrder.Edge2            = "";
                            subOrder.Edge3            = "";
                            subOrder.Edge4            = "";
                            subOrder.HoleDesc         = "";
                            subOrder.EndLength        = 0;
                            subOrder.EndWidth         = 0;
                            subOrder.FrontLabel       = "";
                            subOrder.BackLabel        = "";
                            subOrder.PackageCategory  = "";
                            subOrder.PackageSizeType  = "";
                            subOrder.IsSpecialShap    = false;
                            subOrder.CabinetID        = this.CabinetID;
                            subOrder.Remarks          = "";
                            subOrder.EdgeDesc         = "";
                            subOrder.DamageQty        = 0;
                            subOrder.Created          = DateTime.Now;
                            suborders.Add(subOrder);

                            Mes.Client.Service.BE.Package p = new Mes.Client.Service.BE.Package();
                            p.OrderID = OrderID;
                            int pageNum = bll.Client.GetMaxPackageNum(CGlobal.SenderUser, OrderID, subOrder.CabinetID);
                            p.CabinetID      = subOrder.CabinetID;
                            p.PackageNum     = pageNum;
                            p.PackageBarcode = string.Format("0{0}{1}", order.Created.ToString("yyMMddHHmmss"), pageNum.ToString("00"));
                            p.PackageID      = Guid.NewGuid();
                            p.ItemsQty       = 1;

                            //保存条码数据
                            PackageDetail obj = new PackageDetail();
                            obj.DetailID    = Guid.NewGuid();
                            obj.ItemID      = subOrder.ItemID;
                            obj.PakageID    = p.PackageID;
                            obj.IsPlanning  = true;
                            obj.IsPakaged   = true;
                            obj.IsDisabled  = false;
                            obj.IsOptimized = true;
                            obj.LayerNum    = 0;
                            obj.Qty         = 1;
                            obj.CheckedBy   = CGlobal.SenderUser.UserCode + "." + CGlobal.SenderUser.UserName;

                            SavePackageArgs saveArgs = new SavePackageArgs();
                            saveArgs.Package = p;

                            PackageDetail detail = new PackageDetail();
                            detail.DetailID = Guid.NewGuid();

                            detail.CheckedBy       = CGlobal.SenderUser.UserCode;
                            detail.IsDisabled      = false;
                            detail.IsOptimized     = true;
                            detail.IsPakaged       = true;
                            detail.IsPlanning      = true;
                            detail.ItemID          = subOrder.ItemID;
                            detail.LayerNum        = 0;
                            detail.PakageID        = obj.PakageID;
                            detail.Qty             = 1;
                            saveArgs.PackageDetail = detail;
                            bll.Client.SavePackage(CGlobal.SenderUser, saveArgs);

                            itemsQty++;
                        }
                    }
                    SaveOrderArgs saveOrderArgs = new SaveOrderArgs();
                    saveOrderArgs.Order        = order;
                    saveOrderArgs.OrderDetails = suborders;
                    bll.Client.SaveOrder(CGlobal.SenderUser, saveOrderArgs);
                }

                this.DialogResult = System.Windows.Forms.DialogResult.OK;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
コード例 #6
0
ファイル: frmManualPackage.cs プロジェクト: godsayyou/Mes-1
        private void initTree()
        {
            try
            {
                TreeNode selected = null;
                if (this.tvPackage.SelectedNode != null)
                {
                    selected = this.tvPackage.SelectedNode;
                }
                this.tvPackage.Nodes.Clear();
                SearchPackageArgs args = new SearchPackageArgs();
                if (CurrentOrder != null)
                {
                    args.OrderID = CurrentOrder.OrderID;
                }
                else
                {
                    return;
                }
                if (CurrentPackage != null)
                {
                    args.CabinetID = CurrentPackage.CabinetID;
                }
                if (!string.IsNullOrEmpty(this.txtCabinetName.Text))
                {
                    args.CabinetName = this.txtCabinetName.Text;
                }
                args.OrderBy = "PackageNum ASC";
                using (ProxyBE p = new ProxyBE())
                {
                    SearchResult sr         = p.Client.SearchPackage(CGlobal.SenderUser, args);
                    DataTable    tb_cabinet = sr.DataSet.Tables[0].DefaultView.ToTable(true, "CabinetID");
                    foreach (DataRow cabinet_row in tb_cabinet.Rows)
                    {
                        Order2Cabinet cabinet = p.Client.GetOrder2Cabinet(CGlobal.SenderUser, new Guid(cabinet_row["CabinetID"].ToString()));
                        if (cabinet == null)
                        {
                            return;
                        }
                        TreeNode rootnode = new TreeNode();
                        rootnode.Text = string.Format("{0}({1},{2},{3},{4})", cabinet.CabinetName, cabinet.Size, cabinet.Color, cabinet.MaterialCategory, cabinet.MaterialStyle);
                        rootnode.Tag  = "C," + cabinet.CabinetID;
                        DataRow[] rows = sr.DataSet.Tables[0].Select("CabinetID='" + cabinet_row["CabinetID"].ToString() + "'");
                        foreach (DataRow row in rows)
                        {
                            TreeNode tn = new TreeNode();
                            SearchPackageDetailArgs suborderArgs = new SearchPackageDetailArgs();
                            suborderArgs.PackageID = new Guid(row["PackageID"].ToString());
                            SearchResult subSr  = p.Client.SearchPackageDetail(CGlobal.SenderUser, suborderArgs);
                            decimal      weight = 0;
                            foreach (DataRow rw in subSr.DataSet.Tables[0].Rows)
                            {
                                TreeNode subnode = new TreeNode();
                                subnode.Text = string.Format("{0},{1}:{2} * {3} * {4}", rw["BarcodeNo"].ToString(), rw["ItemName"].ToString(), decimal.Parse(rw["MadeLength"].ToString()).ToString("#"), decimal.Parse(rw["MadeWidth"].ToString()).ToString("#"), decimal.Parse(rw["MadeHeight"].ToString()).ToString("#"));
                                subnode.Tag  = "B," + rw["ItemID"].ToString();
                                tn.Nodes.Add(subnode);
                                weight += weight = decimal.Parse(rw["MadeHeight"].ToString()) * decimal.Parse(rw["MadeLength"].ToString()) * decimal.Parse(rw["MadeWidth"].ToString()) * 0.000001M * Density;
                            }
                            tn.Text = string.Format("第{0}包,包重:{1}KG,板件数量:{2}块", row["PackageNum"].ToString(), weight.ToString("#0.00"), subSr.Total);
                            tn.Tag  = "P," + row["PackageID"].ToString();

                            if (selected == null && this.CurrentPackage != null)
                            {
                                if (row["PackageID"].ToString() == this.CurrentPackage.PackageID.ToString())
                                {
                                    selected = tn;
                                }
                            }
                            rootnode.Nodes.Add(tn);
                        }
                        if (selected != null && selected.Text != "")
                        {
                            this.tvPackage.SelectedNode = selected;
                            selected.Expand();
                        }
                        rootnode.Expand();
                        this.tvPackage.Nodes.Add(rootnode);
                    }
                }
            }
            catch (Exception ex)
            {
                throw new Exception("加载数据失败。原因:" + ex.Message);
            }
        }
コード例 #7
0
ファイル: frmManualPackage.cs プロジェクト: godsayyou/Mes-1
        private void ScanBarcode()
        {
            if (this.InvokeRequired)
            {
                this.Invoke(new dreadbarcode(ScanBarcode), null);
            }
            else
            {
                if (WorkFlowID == Guid.Empty)
                {
                    throw new Exception("请在参数设置中设置班次和分拣对应的工序名称。");
                }
                if (WorkShiftID == Guid.Empty)
                {
                    throw new Exception("请在参数设置中设置班次和分拣对应的工序名称。");
                }
                string ItemBarcode = this.txtBarcode.Text.Trim();
                if (string.IsNullOrEmpty(ItemBarcode))
                {
                    this.txtBarcode.Clear();
                    this.txtBarcode.Focus();
                    lblMsg.Text = "【提示】请扫描板件条码";
                    PlayVoice("请扫描板件条码");
                    return;
                }
                #region 完成当前分包操作
                if (ItemBarcode.IndexOf(FinishedBarcode) >= 0 && !string.IsNullOrEmpty(FinishedBarcode))
                {
                    try
                    {
                        //打印分包标签
                        PlayVoice("打印标签");
                        //PrintDocument();
                        StartPrint(this.CurrentPackage.PackageID);
                        this.txtBarcode.Text = "";
                        this.txtBarcode.Focus();
                        this.CurrentPackage = null;
                    }
                    catch (Exception ex)
                    {
                        this.CurrentPackage = null;
                        throw ex;
                    }
                    return;
                }
                #endregion

                using (ProxyBE p = new ProxyBE())
                {
                    OrderDetail subOrder = p.Client.GetOrderDetailByBarcode(CGlobal.SenderUser, ItemBarcode);
                    if (subOrder == null)
                    {
                        this.txtBarcode.Clear();
                        this.txtBarcode.Focus();
                        lblMsg.Text = string.Format("提示:【{0}】条码无效", ItemBarcode);
                        PlayVoice("条码错误");
                        return;
                    }

                    Order order = p.Client.GetOrder(CGlobal.SenderUser, subOrder.OrderID);
                    //初始化订单数据:如果当前订单ID与条码的订单ID不一至时则重置订单信息
                    if (CurrentOrder == null)
                    {
                        this.CurrentOrder    = order;
                        this.txtOrderNo.Text = this.CurrentOrder.OrderNo;
                    }
                    //判断当前的板件是否为同一订单板件
                    else if (subOrder.OrderID != this.CurrentOrder.OrderID)
                    {
                        this.txtBarcode.Clear();
                        this.txtBarcode.Focus();
                        lblMsg.Text = "【错误】板件订单号不一致";
                        PlayVoice("订单不一致");
                        MessageBox.Show("板件订单号不一致");
                        return;
                    }

                    List <PackageDetail> pdsubOrder = p.Client.GetPackageDetailsByItemID(CGlobal.SenderUser, subOrder.ItemID);
                    pdsubOrder = pdsubOrder.FindAll(li => li.IsPakaged == false);
                    if (pdsubOrder.Count == 0)
                    {
                        this.txtBarcode.Clear();
                        this.txtBarcode.Focus();
                        lblMsg.Text = string.Format("提示:【{0}】条码重复扫描", ItemBarcode);
                        PlayVoice("重复扫描");
                        return;
                    }


                    decimal weight = subOrder.MadeHeight * subOrder.MadeLength * subOrder.MadeWidth * 0.000001M * Density;
                    if (this.CurrentPackage != null)
                    {
                        if (this.CurrentPackage.Weight + weight >= MaxWeight)
                        {
                            //打印分包标签
                            PlayVoice("打印标签");
                            StartPrint(this.CurrentPackage.PackageID);
                            this.txtBarcode.Text = "";
                            this.txtBarcode.Focus();
                            this.CurrentPackage = null;
                        }
                    }

                    Order2Cabinet cabinet = p.Client.GetOrder2Cabinet(CGlobal.SenderUser, subOrder.CabinetID);
                    if (cabinet != null)
                    {
                        //初始化包数据
                        if (this.CurrentPackage == null)
                        {
                            Mes.Client.Service.BE.Package pack = new Mes.Client.Service.BE.Package();
                            pack.OrderID = this.CurrentOrder.OrderID;
                            int pageNum = 0;
                            pageNum                  = p.Client.GetMaxPackageNum(CGlobal.SenderUser, pack.OrderID, subOrder.CabinetID);
                            pack.CabinetID           = subOrder.CabinetID;
                            pack.PackageNum          = pageNum;
                            pack.PackageID           = Guid.NewGuid();
                            pack.PackageBarcode      = string.Format("0{0}{1}", CurrentOrder.Created.ToString("yyMMddHHmmss"), pageNum.ToString("00"));
                            pack.PackageLength       = 0;
                            pack.PackageHeight       = 0;
                            pack.PackageWidth        = 0;
                            pack.ItemsQty            = 0;
                            this.CurrentPackage      = pack;
                            this.txtCabinetName.Text = cabinet.CabinetName;
                        }
                        else if (CurrentPackage.CabinetID != cabinet.CabinetID)
                        {
                            this.txtBarcode.Clear();
                            this.txtBarcode.Focus();
                            lblMsg.Text = "【错误】柜体不一致!";
                            PlayVoice("柜体不一致");
                            return;
                        }
                    }
                    else
                    {
                        lblMsg.Text = string.Format("提示:【{0}】条码所属柜体数据丢失,请查看订单是否有误!", ItemBarcode);
                        PlayVoice("订单错误");
                        return;
                    }


                    try
                    {
                        p.Client.ScanBarcode(CGlobal.SenderUser, ItemBarcode, WorkShiftID, WorkFlowID);
                    }
                    catch (Exception ex)
                    {
                        PLogger.LogError(ex);
                        this.txtBarcode.Clear();
                        this.txtBarcode.Focus();
                        lblMsg.Text = ex.Message;
                        PlayVoice("扫描失败");
                        return;
                    }

                    this.CurrentPackage.Weight   += weight;
                    this.CurrentPackage.ItemsQty += 1;

                    SavePackageArgs saveArgs = new SavePackageArgs();
                    saveArgs.Package = this.CurrentPackage;
                    PackageDetail packageDetail = pdsubOrder[0];
                    packageDetail.IsPakaged = true;
                    packageDetail.PakageID  = this.CurrentPackage.PackageID;
                    saveArgs.PackageDetail  = packageDetail;
                    p.Client.SavePackage(CGlobal.SenderUser, saveArgs);

                    this.CurrentPackage = p.Client.GetPackage(CGlobal.SenderUser, this.CurrentPackage.PackageID);
                    this.gbPackage.Text = string.Format("当前:第{0}包", this.CurrentPackage.PackageNum);

                    //刷新列表
                    biForm();
                    this.txtBarcode.Clear();
                    this.txtBarcode.Focus();
                    lblMsg.Text = "扫描完成";
                    PlayVoice("OK");

                    //检查是否已经全部扫描完成
                    if (this.listBarcodes.Items.Count == 0)
                    {
                        //打印分包标签
                        PlayVoice("打印标签");
                        //PrintDocument();
                        StartPrint(this.CurrentPackage.PackageID);
                        this.txtBarcode.Text = "";
                        this.txtBarcode.Focus();
                        this.CurrentPackage = null;

                        cabinet.CabinetStatus = "F";
                        SaveOrder2CabinetArgs cabinetArgs = new SaveOrder2CabinetArgs();
                        cabinetArgs.Order2Cabinet = cabinet;
                        p.Client.SaveOrder2Cabinet(CGlobal.SenderUser, cabinetArgs);

                        SearchPackageDetailArgs p_args = new SearchPackageDetailArgs();
                        p_args.IsDisabled = false;
                        p_args.OrderID    = CurrentOrder.OrderID;
                        p_args.IsPakaged  = false;

                        SearchResult p_sr = p.Client.SearchPackageDetail(CGlobal.SenderUser, p_args);
                        if (p_sr.Total == 0)
                        {
                            //Order order = p.Client.GetOrder(CGlobal.SenderUser, CurrentOrder.OrderID);
                            order.Status = "I"; //全部打包完成后,订单状态变成待入库
                            SaveOrderArgs saveOrderArgs = new SaveOrderArgs();
                            saveOrderArgs.Order = order;
                            p.Client.SaveOrder(CGlobal.SenderUser, saveOrderArgs);
                        }
                    }
                    //加载树
                    initTree();
                }
            }
        }
コード例 #8
0
        public void CreatedScheduling(Sender sender, SaveCreatedSchedulingArgs args)
        {
            try
            {
                using (ObjectProxy op = new ObjectProxy(true))
                {
                    #region 部件工序
                    if (args.OrderWorkFlows != null)
                    {
                        foreach (OrderWorkFlow workflow in args.OrderWorkFlows)
                        {
                            OrderWorkFlow ow = new OrderWorkFlow();
                            ow.WorkingID = workflow.WorkingID;
                            if (op.LoadOrderWorkFlowByWorkingID(ow) == 0)
                            {
                                op.InsertOrderWorkFlow(workflow);
                            }
                            else
                            {
                                op.UpdateOrderWorkFlowByWorkingID(workflow);
                            }
                        }
                    }
                    #endregion

                    #region 排产计划
                    if (args.OrderSchedulings != null)
                    {
                        foreach (OrderScheduling item in args.OrderSchedulings)
                        {
                            OrderScheduling subobj = new OrderScheduling();
                            subobj.MadeID = item.MadeID;
                            if (op.LoadOrderSchedulingByMadeID(subobj) == 0)
                            {
                                item.Created    = DateTime.Now;
                                item.CreatedBy  = sender.UserCode + "." + sender.UserName;
                                item.Modified   = DateTime.Now;
                                item.ModifiedBy = sender.UserCode + "." + sender.UserName;
                                op.InsertOrderScheduling(item);
                            }
                            else
                            {
                                item.Modified   = DateTime.Now;
                                item.ModifiedBy = sender.UserCode + "." + sender.UserName;
                                op.UpdateOrderSchedulingByMadeID(item);
                            }
                        }
                    }
                    //工作车间生产计划
                    if (args.WorkCenterSchedulings != null)
                    {
                        foreach (WorkCenterScheduling item in args.WorkCenterSchedulings)
                        {
                            WorkCenterScheduling wcs = new WorkCenterScheduling();
                            wcs.WorkID = item.WorkID;
                            if (op.LoadWorkCenterSchedulingByWorkID(wcs) == 0)
                            {
                                item.Created    = DateTime.Now;
                                item.CreatedBy  = sender.UserCode + "." + sender.UserName;
                                item.Modified   = DateTime.Now;
                                item.ModifiedBy = sender.UserCode + "." + sender.UserName;
                                op.InsertWorkCenterScheduling(item);
                            }
                            else
                            {
                                item.Modified   = DateTime.Now;
                                item.ModifiedBy = sender.UserCode + "." + sender.UserName;
                                op.UpdateWorkCenterSchedulingByWorkID(item);
                            }
                        }
                    }
                    #endregion

                    #region 包装数据
                    if (args.PackageDetails != null)
                    {
                        foreach (PackageDetail item in args.PackageDetails)
                        {
                            PackageDetail subobj = new PackageDetail();
                            subobj.DetailID = item.DetailID;
                            if (op.LoadPackageDetailByDetailID(subobj) == 0)
                            {
                                item.Created    = DateTime.Now;
                                item.CreatedBy  = string.Format("{0}.{1}", sender.UserCode, sender.UserName);
                                item.Modified   = DateTime.Now;
                                item.ModifiedBy = string.Format("{0}.{1}", sender.UserCode, sender.UserName);
                                op.InsertPackageDetail(item);
                            }
                            else
                            {
                                item.Modified   = DateTime.Now;
                                item.ModifiedBy = string.Format("{0}.{1}", sender.UserCode, sender.UserName);
                                op.UpdatePackageDetailByDetailID(item);
                            }
                        }
                    }
                    #endregion

                    #region 修改柜体状态
                    List <Guid> OrderIDs = new List <Guid>();
                    if (args.CabinetIDs != null)
                    {
                        foreach (Guid CabinetID in args.CabinetIDs)
                        {
                            Order2Cabinet cabinet = new Order2Cabinet();
                            cabinet.CabinetID = CabinetID;
                            if (op.LoadOrder2CabinetByCabinetID(cabinet) != 0)
                            {
                                if (!OrderIDs.Contains(cabinet.OrderID))
                                {
                                    OrderIDs.Add(cabinet.OrderID);
                                }
                                Order order = new Order();
                                order.OrderID = cabinet.OrderID;
                                if (op.LoadOrder(order) != 0)
                                {
                                    //订单日志
                                    OrderLog log = new OrderLog();
                                    log.LogID     = Guid.NewGuid();
                                    log.OrderID   = order.OrderID;
                                    log.LogType   = "订单排产";
                                    log.Remark    = "完成排产";
                                    log.Created   = DateTime.Now;
                                    log.CreatedBy = sender.UserCode + "." + sender.UserName;
                                    op.InsertOrderLog(log);

                                    //流程步骤
                                    //OrderTask ot = new OrderTask();
                                    //ot.Action = "排产完成,待订单优化";
                                    //ot.CurrentStep = "订单排产";
                                    //ot.ActionRemarksType = "订单系统操作";
                                    //ot.ActionRemarks = "排产完成,待订单优化";
                                    //ot.Resource = "订单排产组";
                                    //ot.NextResources = "订单优化组";
                                    //ot.NextStep = "待生产优化";

                                    cabinet.BattchCode    = args.BattchCode;
                                    cabinet.CabinetStatus = "M";//待生产
                                    op.UpdateOrder2CabinetByCabinetID(cabinet);

                                    SaveOrderArgs orderargs = new SaveOrderArgs();
                                    orderargs.Order = order;
                                    //orderargs.OrderTask = ot;
                                    //orderargs.Order2Cabinets = new List<Order2Cabinet>() { cabinet };
                                    //this.SubmitTask(op, sender, orderargs);
                                }
                            }
                        }

                        foreach (Guid orderID in OrderIDs)
                        {
                            //op.UpdateMadeOrderStatus(orderID);
                        }
                    }
                    #endregion

                    op.CommitTransaction();
                }
            }
            catch (Exception ex)
            {
                PLogger.LogError(ex);
                throw ex;
            }
        }
コード例 #9
0
        public DataSet GetCommonLabelDataSource(Guid CabinetID, string CategoryName, string LogoFile)
        {
            DataSet ds = new DataSet("tbPackageDataTable");

            using (ProxyBE p = new ProxyBE())
            {
                Order2Cabinet           cabinet = p.Client.GetOrder2Cabinet(CGlobal.SenderUser, CabinetID);
                SearchOrder2CabinetArgs args    = new SearchOrder2CabinetArgs();
                args.OrderIDs = new List <Guid> {
                    cabinet.OrderID
                };
                //args.CabinetName = cabinet.CabinetName;
                args.CabinetID = CabinetID;
                SearchResult sr = p.Client.SearchOrder2Cabinet(CGlobal.SenderUser, args);
                if (sr.Total == 0)
                {
                    return(ds);
                }
                #region 100*70的条码

                DataTable tb = new DataTable();
                tb.Columns.Add(new DataColumn("OrderNo", typeof(string)));
                tb.Columns.Add(new DataColumn("OutOrderNo", typeof(string)));
                tb.Columns.Add(new DataColumn("PurchaseNo", typeof(string)));
                tb.Columns.Add(new DataColumn("CustomerName", typeof(string)));
                tb.Columns.Add(new DataColumn("Address", typeof(string)));
                tb.Columns.Add(new DataColumn("LinkMan", typeof(string)));
                tb.Columns.Add(new DataColumn("Mobile", typeof(string)));
                tb.Columns.Add(new DataColumn("CabinetName", typeof(string)));
                tb.Columns.Add(new DataColumn("MaterialStyle", typeof(string)));
                tb.Columns.Add(new DataColumn("Size", typeof(string)));
                tb.Columns.Add(new DataColumn("Color", typeof(string)));
                tb.Columns.Add(new DataColumn("Logo", typeof(byte[])));
                tb.Columns.Add(new DataColumn("PrintDate", typeof(string)));
                tb.Columns.Add(new DataColumn("Remark", typeof(string)));
                tb.Columns.Add(new DataColumn("CategoryName", typeof(string)));

                DataRow row = sr.DataSet.Tables[0].Rows[0];

                string[] c = CategoryName.Split(',');
                foreach (string s in c)
                {
                    DataRow newRow = tb.NewRow();
                    newRow["OrderNo"]       = row["OrderNo"];
                    newRow["OutOrderNo"]    = row["OutOrderNo"];
                    newRow["PurchaseNo"]    = row["PurchaseNo"];
                    newRow["CustomerName"]  = row["CustomerName"];
                    newRow["Address"]       = row["Address"];
                    newRow["LinkMan"]       = row["LinkMan"];
                    newRow["Mobile"]        = row["Mobile"];
                    newRow["CabinetName"]   = row["CabinetName"];
                    newRow["Size"]          = row["Size"];
                    newRow["Color"]         = row["Color"];
                    newRow["MaterialStyle"] = row["MaterialStyle"];
                    newRow["Address"]       = row["Province"].ToString() + row["City"].ToString() + row["Address"].ToString();
                    newRow["Logo"]          = getLogoFile(LogoFile);
                    newRow["PrintDate"]     = DateTime.Now.ToString("yyyy年MM月dd日");
                    newRow["Remark"]        = "";
                    newRow["CategoryName"]  = s;
                    tb.Rows.Add(newRow);
                }

                ds.Tables.Add(tb);
                #endregion
            }
            return(ds);
        }