Beispiel #1
0
 void InitSourceData(ORD_SalesOrderResult orderResult)
 {
     if (orderResult != null)
     {
         txtSOGuid.Text            = orderResult.SOGuid.ToStringHasNull();
         txtSOBillNo.Text          = orderResult.BillNo;
         cboCurrency.SelectedValue = orderResult.Currency;
         txtSODate.Text            = orderResult.SODate.ToStringHasNull();
         txtCustomerID.Text        = orderResult.CustomerID.ToStringHasNull();
         txtCustomerName.Text      = orderResult.CustomerName;
         decimal?totalAmount = 0.0m;
         List <STK_OutLineResult> outLineList = outLineLogic.GetList(new STK_OutLineParam()
         {
             SourceBillGuid = orderResult.SOGuid, IsReturnOver = false
         });
         foreach (STK_OutLineResult outLineResult in outLineList)
         {
             ORD_SalesReturnLineResult returnListResult = new ORD_SalesReturnLineResult();
             SetStkLineObjectValue(returnListResult, outLineResult);
             totalAmount += returnListResult.Amount;
             bsSalesReturnLine.Add(returnListResult);
         }
         totalAmount    = Math.Round(totalAmount.ToDecimal(), 3, MidpointRounding.AwayFromZero);
         txtAmount.Text = totalAmount.ToStringHasNull();
     }
 }
Beispiel #2
0
        /// <summary>
        /// 删除实体
        /// </summary>
        /// <param name="param">删除条件实体</param>
        /// <returns></returns>
        public WCFAddUpdateResult DelInfo(ORD_SalesOrderParam param)
        {
            this.CheckSession();
            WCFAddUpdateResult ret = new WCFAddUpdateResult();
            int affect             = 0;

            try
            {
                #region 判断
                if (param.SOGuid == null)
                {
                    throw new WarnException("请指定要删除的销售单ID!");
                }
                #endregion
                WhereClip            whereClip = GetWhereClip(param);
                ORD_SalesOrderResult info      = new ORD_SalesOrderResult();
                info.IsDeleted = true;
                affect         = this.Update <ORD_SalesOrderResult>(info, whereClip);
                #region 设置返回值
                ret.Key = affect;
                #endregion
            }
            catch (WarnException exp)
            {
                throw exp;
            }
            catch (System.Exception exp)
            {
                LogInfoBLL.WriteLog(this.SessionInfo, exp);
                throw exp;
            }
            return(ret);
        }
Beispiel #3
0
        public WCFAddUpdateResult AddOrUpdate(ORD_SalesOrderResult param)
        {
            WCFAddUpdateResult ret = new WCFAddUpdateResult();
            ExeResult          rst = new ExeResult();

            rst = this.Execute("ZNLCRM.BLL.SPM.ORD_SalesOrderBLL", "AddOrUpdate", param);
            ret = (rst == null ? new WCFAddUpdateResult() : rst.Result as WCFAddUpdateResult);
            return(ret);
        }
Beispiel #4
0
        private void tsbAudit_Click(object sender, EventArgs e)
        {
            //bool flag= orderLogic.AuditSalesOrderBill(new ORD_SalesOrderParam() { SOGuid = soguid });
            //if (flag)
            //  InitData();
            ORD_SalesOrderResult info = Form_GetEditEntity() as ORD_SalesOrderResult;

            this.WF_CheckBill("ORD_SalesOrder", info.BillNo, info.SOGuid, this.DataIsChanged, delegate() { return(SaveData(false)); }, InitData);
        }
Beispiel #5
0
        public ORD_SalesOrderResult GetInfo(ORD_SalesOrderParam param)
        {
            ORD_SalesOrderResult ret = new ORD_SalesOrderResult();
            ExeResult            rst = new ExeResult();

            rst = this.Execute("ZNLCRM.BLL.SPM.ORD_SalesOrderBLL", "GetInfo", param);
            ret = rst == null ? new ORD_SalesOrderResult() : rst.Result as ORD_SalesOrderResult;
            return(ret);
        }
Beispiel #6
0
        object Form_GetEditEntity()
        {
            ORD_SalesOrderResult info = new ORD_SalesOrderResult();

            info.SOGuid = soguid;
            info        = this.ConvertControlToEntity <ORD_SalesOrderResult>(this.stcpBase.Controls, info, null);
            info        = this.ConvertControlToEntity <ORD_SalesOrderResult>(this.stcpOther.Controls, info, null);
            this.SetDataIsChanged <ORD_SalesOrderResult>(info);
            return(info);
        }
Beispiel #7
0
        public bool AuditSalesOrderBill(ORD_SalesOrderParam param)
        {
            bool auditFlag = true;

            try
            {
                ORD_SalesOrderResult orderResult = this.GetInfo(param);

                if (orderResult != null)
                {
                    bool isAllowAudit = true;

                    if (orderResult.ApproveStatus == "待提交")
                    {
                        isAllowAudit = false;
                        throw new WarnException("销售单当前状态为:【待提交】,请先提交!");
                    }
                    else if (orderResult.ApproveStatus == "审核完成")
                    {
                        isAllowAudit = false;
                        throw new WarnException("销售单当前状态为:【审核完成】,禁止重复审核!");
                    }
                    if (isAllowAudit)
                    {
                        orderResult.Status        = "Complete";
                        orderResult.ApproveStatus = "审核完成";
                        WCFAddUpdateResult ret = this.AddOrUpdate(orderResult);
                        if (ret.KeyGuid.ToGuid() == Guid.Empty)
                        {
                            auditFlag = false;
                        }
                    }
                }
                else
                {
                    throw new WarnException("要审核的销售单在系统中不存在!");
                }
            }
            catch (WarnException exp)
            {
                throw exp;
            }
            catch (Exception exp)
            {
                LogInfoBLL.WriteLog(this.SessionInfo, exp);
                throw exp;
            }
            return(auditFlag);
        }
Beispiel #8
0
        private void txtSourceBillNo_ButtonCustomClick(object sender, EventArgs e)
        {
            if (!string.IsNullOrEmpty(cboBillType.SelectedValue.ToStringHasNull()))
            {
                DialogResult rst = DialogResult.Cancel;
                switch (cboBillType.SelectedValue.ToStringHasNull())
                {
                case "SO_OUT":
                    frmSelectSalesOrder frmSelectSalesOrder = new frmSelectSalesOrder(false);
                    frmSelectSalesOrder.BringToFront();
                    frmSelectSalesOrder.StartPosition = FormStartPosition.CenterScreen;
                    rst = frmSelectSalesOrder.ShowDialog();
                    if (rst == DialogResult.OK)
                    {
                        List <ORD_SalesOrderResult> rstList = frmSelectSalesOrder.GetSelectList <ORD_SalesOrderResult>();
                        if (rstList != null && rstList.Count > 0)
                        {
                            ORD_SalesOrderResult orderResult = rstList[0];
                            InitSourceData("SO_OUT", orderResult);
                        }
                    }
                    break;

                case "POR_OUT":
                    frmSelectPurchaseReturn frmSelectPurchaseReturn = new frmSelectPurchaseReturn(false);
                    frmSelectPurchaseReturn.BringToFront();
                    frmSelectPurchaseReturn.StartPosition = FormStartPosition.CenterScreen;
                    rst = frmSelectPurchaseReturn.ShowDialog();
                    if (rst == DialogResult.OK)
                    {
                        List <ORD_PurchaseReturnResult> rstList = frmSelectPurchaseReturn.GetSelectList <ORD_PurchaseReturnResult>();
                        if (rstList != null && rstList.Count > 0)
                        {
                            ORD_PurchaseReturnResult orderResult = rstList[0];
                            InitSourceData("POR_OUT", orderResult);
                        }
                    }
                    break;

                case "ZX_OUT":
                    break;
                }
            }
            else
            {
                MessageBox.Show("请选择出库类型!");
            }
        }
Beispiel #9
0
        private void InitData()
        {
            if (SRGuid != null)
            {
                ORD_SalesReturnResult info = returnLogic.GetInfo(new ORD_SalesReturnParam {
                    SRGuid = SRGuid
                });

                this.ConvertEntityToControl <ORD_SalesReturnResult>(this.stcpBase.Controls, info, null);
                if (info != null)
                {
                    txtOperDeptName.Text = info.OperDeptName;
                    decimal totalAmount = Math.Round(info.Amount.ToDecimal(), 3, MidpointRounding.AwayFromZero);
                    txtAmount.Text = totalAmount.ToStringHasNull();
                    if (info.ReturnLineList != null)
                    {
                        addOrModifyList = info.ReturnLineList;
                    }
                }
            }
            else
            {
                txtReturnDate.Text   = DateTime.Now.Date.ToStringHasNull();
                txtOperDeptID.Text   = MySession.DeptID.ToStringHasNull();
                txtOperDeptName.Text = MySession.DeptName;
                txtOperEmpID.Text    = MySession.UserID.ToStringHasNull();
                txtOperEmpName.Text  = MySession.UserName.ToStringHasNull();
                SYS_DictItemLineLogic.SetCombolSelectedIndex(this.cboOperOrgID, MySession.OrgID, true);
            }
            bsSalesReturnLine.DataSource  = addOrModifyList;
            dgvSalesReturnLine.DataSource = bsSalesReturnLine;
            //CheckAuditButton("ORD_SalesOrder", SRGuid, this.tsbSubmit, null, this.tsbAudit, this.tsbUnDo);
            if (SRGuid == null && _SOGuid != null)
            {
                ORD_SalesOrderResult orderResult = orderLogic.GetInfo(new ORD_SalesOrderParam()
                {
                    SOGuid = _SOGuid
                });
                if (orderResult != null)
                {
                    InitSourceData(orderResult);
                }
            }
        }
Beispiel #10
0
        private void InitData()
        {
            if (soguid != null)
            {
                ORD_SalesOrderResult info = orderLogic.GetInfo(new ORD_SalesOrderParam {
                    SOGuid = soguid
                });

                this.ConvertEntityToControl <ORD_SalesOrderResult>(this.stcpBase.Controls, info, null);
                this.ConvertEntityToControl <ORD_SalesOrderResult>(this.stcpOther.Controls, info, null);
                if (info != null)
                {
                    txtSalDeptName.Text = info.SalDeptName;
                    decimal taxAmount        = Math.Round(info.TaxAmount.ToDecimal(), 3, MidpointRounding.AwayFromZero);
                    decimal totalAmount      = Math.Round(info.Amount.ToDecimal(), 3, MidpointRounding.AwayFromZero);
                    decimal commissionAmount = Math.Round(info.CommissionAmount.ToDecimal(), 3, MidpointRounding.AwayFromZero);
                    txtAmount.Text           = totalAmount.ToStringHasNull();
                    txtTaxAmount.Text        = taxAmount.ToStringHasNull();
                    txtCommissionAmount.Text = commissionAmount.ToStringHasNull();
                    if (info.OrderLineList != null)
                    {
                        addOrModifyList = info.OrderLineList;
                    }
                }
            }
            else
            {
                cboBillType.SelectedValue = "外贸单";
                txtNeedDeliveryDate.Text  = DateTime.Now.ToStringHasNull();
                txtNeedRecAmtDate.Text    = DateTime.Now.ToStringHasNull();
                txtSODate.Text            = DateTime.Now.Date.ToStringHasNull();
                txtSalDeptID.Text         = MySession.DeptID.ToStringHasNull();
                txtSalDeptName.Text       = MySession.DeptName;
                txtSalerID.Text           = MySession.UserID.ToStringHasNull();
                txtSalerName.Text         = MySession.UserName.ToStringHasNull();
                SYS_DictItemLineLogic.SetCombolSelectedIndex(this.cboSalOrgID, MySession.OrgID, true);
            }
            bsOrderLine.DataSource       = addOrModifyList;
            dgvSalesOrderLine.DataSource = bsOrderLine;
            BindSuperGridControl();
            CheckAuditButton("ORD_SalesOrder", soguid, this.tsbSubmit, null, this.tsbAudit, this.tsbUnDo);
        }
Beispiel #11
0
        private void tsbDel_Click(object sender, EventArgs e)
        {
            ORD_SalesOrderParam param = new ORD_SalesOrderParam();

            param.SOID = soid;

            ORD_SalesOrderResult rst = orderLogic.GetInfo(param);

            if (rst != null)
            {
                if (MessageBox.Show("请确认是否要删除销售单:【" + rst.BillNo + "】", "操作提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
                {
                    WCFAddUpdateResult result = this.AsyncExecute <WCFAddUpdateResult, ORD_SalesOrderParam>(param, orderLogic.DelInfo, a => { BindDataGridView(pgSalesOrder.PageIndex); });
                }
            }
            else
            {
                this.ShowMessage("请选择需要删除的销售明细!");
            }
        }
Beispiel #12
0
        void InitSourceData(string billType, Guid?sourceBillGuid)
        {
            switch (billType)
            {
            case "SO_OUT":
                ORD_SalesOrderResult orderResult = orderLogic.GetInfo(new ORD_SalesOrderParam()
                {
                    SOGuid = sourceBillGuid
                });
                InitSourceData(billType, orderResult);
                break;

            case "POR_OUT":
                ORD_PurchaseReturnResult returnResult = returnLogic.GetInfo(new ORD_PurchaseReturnParam()
                {
                    PRGuid = sourceBillGuid
                });
                InitSourceData(billType, returnResult);
                break;
            }
        }
Beispiel #13
0
        /// <summary>
        /// 获取一条信息记录
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public ORD_SalesOrderResult GetInfo(ORD_SalesOrderParam param)
        {
            this.CheckSession();
            ORD_SalesOrderResult rst = new ORD_SalesOrderResult();

            #region 判断
            if (param.SOGuid == null)
            {
                throw new WarnException("请指定销售单GUID!");
            }
            #endregion
            #region 获取实体

            rst = this.Select <ORD_SalesOrderResult>(GetWhereClip(param));
            if (rst != null)
            {
                string[] statusArr = new string[] { rst.NotifyStatus, rst.PurchaseStatus, rst.StkTakeStatus,
                                                    rst.StkInStatus, rst.StkOutStatus, rst.ShipmentStatus, rst.ReturnStatus, rst.ReceivableStatus };
                rst.AllStatus = string.Join(",", statusArr);

                ORD_SalesOrderLineBLL lineBLL = new ORD_SalesOrderLineBLL();
                lineBLL.SessionInfo = this.SessionInfo;
                rst.OrderLineList   = lineBLL.GetList(new ORD_SalesOrderLineParam()
                {
                    SOGuid = rst.SOGuid
                });
                //this.SelectList<ORD_SalesOrderLineResult>(ORD_SalesOrderLine._.SOGuid == rst.SOGuid);

                HR_DepartmentBLL deptBLL = new HR_DepartmentBLL();
                deptBLL.SessionInfo = this.SessionInfo;
                HR_DepartmentResult deptResult = deptBLL.GetInfo(new HR_DepartmentParam()
                {
                    DeptID = rst.SalDeptID
                });
                rst.SalDeptName = deptResult.DeptName;
            }
            #endregion
            return(rst);
        }
Beispiel #14
0
        private void txtSOBillNo_ButtonCustomClick(object sender, EventArgs e)
        {
            frmSelectSalesOrder frmSelectSalesOrder = new frmSelectSalesOrder(false);

            frmSelectSalesOrder.CustomerID = txtCustomerID.Text.ToInt32();
            frmSelectSalesOrder.BringToFront();
            frmSelectSalesOrder.StartPosition = FormStartPosition.CenterScreen;

            DialogResult rst = frmSelectSalesOrder.ShowDialog();

            if (rst == DialogResult.OK)
            {
                List <ORD_SalesOrderResult> rstList = frmSelectSalesOrder.GetSelectList <ORD_SalesOrderResult>();
                if (rstList != null && rstList.Count > 0)
                {
                    bsSalesReturnLine.Clear();
                    tempList.Clear();
                    delList.Clear();
                    addOrModifyList.Clear();
                    ORD_SalesOrderResult orderResult = rstList[0];
                    InitSourceData(orderResult);
                }
            }
        }
Beispiel #15
0
        private void tsbUnDo_Click(object sender, EventArgs e)
        {
            ORD_SalesOrderResult info = Form_GetEditEntity() as ORD_SalesOrderResult;

            this.WF_CancelCheckBill("ORD_SalesOrder", info.SOGuid, InitData);
        }
Beispiel #16
0
        /// <summary>
        /// 保存,返回值如果是异步执行,返回值无效果,除非是同步执行,返回值有效
        /// </summary>
        /// <param name="isAsyncExecute">是否异步执行</param>
        /// <returns></returns>
        private bool SaveData(bool isAsyncExecute)
        {
            bool ret = false;
            WCFAddUpdateResult result = new WCFAddUpdateResult();

            #region 判断和获取实体
            ORD_SalesOrderResult info = Form_GetEditEntity() as ORD_SalesOrderResult;
            if (!this.DataIsChanged && isAsyncExecute)//异步执行时判断数据是否有变化
            {
                this.ShowNoChangedMsg();
                return(ret);
            }
            bool flag = false;
            foreach (ORD_SalesOrderLineResult rst in addOrModifyList)
            {
                if (string.IsNullOrEmpty(rst.Model) || rst.Qty.ToInt32() <= 0)
                {
                    flag = true;
                    break;
                }
            }
            if (flag)
            {
                this.ShowMessage("型号或数量不能为空!");
                return(ret);
            }
            #endregion
            #region 明细
            bsOrderLine.EndEdit();
            tempList.Clear();
            foreach (ORD_SalesOrderLineResult rst in addOrModifyList)
            {
                if (rst.HasChanged())
                {
                    tempList.Add(rst);
                }
            }
            //tempList.AddRange(addOrModifyList);
            tempList.AddRange(delList);
            info.OrderLineList = tempList;
            #endregion
            #region 异步执行,点击保存铵钮时
            if (isAsyncExecute)
            {
                #region 异步执行保存操作
                result = this.AsyncExecute <WCFAddUpdateResult, ORD_SalesOrderResult>(info, orderLogic.AddOrUpdate, (a) =>
                {
                    if (a.KeyGuid.ToGuid() != Guid.Empty)
                    {
                        soid         = a.Key;
                        soguid       = a.KeyGuid.ToGuid();
                        sourcebillno = a.BillNo;
                        CRM_CompanyResult companyResult = companyLogic.GetCustInfo(new CRM_CompanyParam()
                        {
                            CompanyID = txtCustomerID.Text.ToInt32()
                        });
                        if (companyResult != null)
                        {
                            companyResult.LastBusinessDate = txtSODate.Text.ToDateTime();
                            companyLogic.AddOrUpdateCust(companyResult);
                        }
                        if (SaveAttach != null)
                        {
                            SaveAttach("ORD_SalesOrder", soguid.ToGuid(), sourcebillno);
                        }
                        InitData();
                        delList.Clear();
                    }
                });
                #endregion
            }
            #endregion
            #region 非异步执
            else
            {
                result = orderLogic.AddOrUpdate(info);
                if (result.KeyGuid.ToGuid() != Guid.Empty)
                {
                    ret = true;
                }
            }
            return(ret);

            #endregion
        }
Beispiel #17
0
        public void InitSourceData(string billType, object obj)
        {
            if (obj != null)
            {
                if (cboBillType.SelectedValue.ToStringHasNull() == "")
                {
                    SYS_DictItemLineLogic.SetCombolSelectedIndex(cboBillType, billType, true);
                }
                if (obj is ORD_SalesOrderResult)
                {
                    ORD_SalesOrderResult salesOrderResult = obj as ORD_SalesOrderResult;
                    if (salesOrderResult != null)
                    {
                        txtSourceBillGuid.Text    = salesOrderResult.SOGuid.ToStringHasNull();
                        txtSourceBillNo.Text      = salesOrderResult.BillNo;
                        cboTaxRate.SelectedValue  = salesOrderResult.TaxRate == null ? 0 : salesOrderResult.TaxRate;
                        cboCurrency.SelectedValue = salesOrderResult.Currency;
                        List <STK_StockReserveResult> reserveList = reserveLogic.GetList(new STK_StockReserveParam()
                        {
                            SourceBillGuid = salesOrderResult.SOGuid, IsUsedOver = false
                        });
                        List <ORD_SalesOrderLineResult> lineList = null;
                        if (salesOrderResult.OrderLineList != null)//从其他窗体点击出库进入,只传递guid,通过guid获取的对象中含有明细
                        {
                            lineList = salesOrderResult.OrderLineList.Where(a => a.StkOutOccQty.ToInt32() < a.Qty).ToList();
                        }
                        else//在出库窗体打开选择窗体得到的对象是没有包含明细的,需要去单独获取明细
                        {
                            lineList = orderLineLogic.GetList(new ORD_SalesOrderLineParam()
                            {
                                SOGuid = salesOrderResult.SOGuid
                            }).Where(a => a.StkOutOccQty.ToInt32() < a.Qty).ToList();
                        }

                        foreach (STK_StockReserveResult reserveResult in reserveList)
                        {
                            STK_OutLineResult        stkOutLineResult = new STK_OutLineResult();
                            ORD_SalesOrderLineResult lineResult       = lineList.FirstOrDefault(a => a.SOLineGuid == reserveResult.SourceBillLineGuid);
                            if (lineResult != null)
                            {
                                stkOutLineResult.UnitPrice = lineResult.UnitPrice;
                            }
                            SetStkLineObjectValue(stkOutLineResult, reserveResult);
                            bsStkOutLine.Add(stkOutLineResult);
                        }
                    }
                }
                else if (obj is ORD_PurchaseReturnResult)
                {
                    ORD_PurchaseReturnResult purReturnResult = obj as ORD_PurchaseReturnResult;
                    if (purReturnResult != null)
                    {
                        txtSourceBillGuid.Text = purReturnResult.POGuid.ToStringHasNull();
                        txtSourceBillNo.Text   = purReturnResult.BillNo;
                        decimal?taxRate = 0;
                        cboTaxRate.SelectedValue  = taxRate;
                        cboCurrency.SelectedValue = purReturnResult.Currency;
                        List <STK_StockReserveResult> reserveList = reserveLogic.GetList(new STK_StockReserveParam()
                        {
                            SourceBillGuid = purReturnResult.PRGuid, IsUsedOver = false
                        });
                        List <ORD_PurchaseReturnLineResult> lineList = null;
                        if (purReturnResult.ReturnLineList != null)
                        {
                            lineList = purReturnResult.ReturnLineList.Where(a => a.StkOutOccQty.ToInt32() < a.Qty).ToList();
                        }
                        else
                        {
                            lineList = returnLineLogic.GetList(new ORD_PurchaseReturnLineParam()
                            {
                                PRGuid = purReturnResult.PRGuid
                            }).Where(a => a.StkOutOccQty.ToInt32() < a.Qty).ToList();
                        }

                        foreach (STK_StockReserveResult reserveResult in reserveList)
                        {
                            STK_OutLineResult            stkOutLineResult = new STK_OutLineResult();
                            ORD_PurchaseReturnLineResult lineResult       = lineList.FirstOrDefault(a => a.PRLineGuid == reserveResult.SourceBillLineGuid);
                            if (lineResult != null)
                            {
                                stkOutLineResult.UnitPrice = lineResult.UnitPrice;
                            }
                            SetStkLineObjectValue(stkOutLineResult, reserveResult);
                            bsStkOutLine.Add(stkOutLineResult);
                        }
                    }
                }
                CalcExchangeRate();
            }
        }
Beispiel #18
0
        public bool SubmitSalesOrderBill(ORD_SalesOrderParam param)
        {
            this.CheckSession();
            bool submitFlag = true;

            try
            {
                ORD_SalesOrderResult orderResult = this.GetInfo(param);

                if (orderResult != null)
                {
                    #region 判断是否可以提交

                    bool isAllowSubmit = true;

                    if (orderResult.ApproveStatus == "待审核")
                    {
                        isAllowSubmit = false;
                        throw new WarnException("销售单当前状态为:【已提交,待审核】,禁止重复提交!");
                    }
                    else if (orderResult.ApproveStatus == "审核完成")
                    {
                        isAllowSubmit = false;
                        throw new WarnException("销售单当前状态为:【审核完成】,撤单后才可以再次提交!");
                    }
                    if (isAllowSubmit)
                    {
                        orderResult.Status        = "Approve";
                        orderResult.ApproveStatus = "待审核";
                        WCFAddUpdateResult ret = this.AddOrUpdate(orderResult);
                        if (ret.KeyGuid.ToGuid() == Guid.Empty)
                        {
                            submitFlag = false;
                        }
                        else
                        {
                            //STK_InLineBLL inLineBLL=new STK_InLineBLL ();
                            //inLineBLL.SessionInfo=this.SessionInfo;
                            //List<ORD_SalesOrderLineResult> salesOrderLineList = orderResult.OrderLineList;
                            //if(salesOrderLineList!=null && salesOrderLineList.Count>0 && orderResult.BillType=="现货单")
                            //{
                            //    Guid?[] _ItemCodes=salesOrderLineList.Where(a=>a.ItemCode!=null).Select(a=>a.ItemCode).Distinct().ToArray();
                            //    List<STK_InLineResult> inLineResultList = inLineBLL.GetList(new STK_InLineParam() { ItemCodes = _ItemCodes });
                            //    #region 预留库存
                            //    foreach (ORD_SalesOrderLineResult orderLineResult in salesOrderLineList)
                            //    {
                            //        if (orderLineResult.ItemCode != null)
                            //        {

                            //        }

                            //    }
                            //    #endregion
                            //}
                        }
                    }


                    #endregion
                }
                else
                {
                    throw new WarnException("要提交的销售单在系统中不存在!");
                }
            }
            catch (WarnException exp)
            {
                throw exp;
            }
            catch (Exception exp)
            {
                LogInfoBLL.WriteLog(this.SessionInfo, exp);
                throw exp;
            }
            return(submitFlag);
        }
Beispiel #19
0
        /// <summary>
        /// 添加和新增修改
        /// </summary>
        /// <param name="param">新增或修改的实体</param>
        /// <returns></returns>
        public WCFAddUpdateResult AddOrUpdate(ORD_SalesOrderResult param)
        {
            this.CheckSession();
            WCFAddUpdateResult ret = new WCFAddUpdateResult();

            try
            {
                int affect = 0;
                #region 判断


                if (string.IsNullOrEmpty(param.BillType))
                {
                    throw new WarnException("请指定单据类型!");
                }

                if (string.IsNullOrEmpty(param.CustomerName.Trim()))
                {
                    throw new WarnException("请指定公司名称!");
                }
                if (string.IsNullOrEmpty(param.SalerName))
                {
                    throw new WarnException("请选择销售员!");
                }
                if (string.IsNullOrEmpty(param.Currency))
                {
                    throw new WarnException("请选择币种!");
                }
                if (string.IsNullOrEmpty(param.ClearingForm))
                {
                    throw new WarnException("请填写结算方式!");
                }
                if (param.OrderLineList == null)
                {
                    throw new WarnException("请填写销售明细!");
                }
                string msg = string.Empty;

                foreach (ORD_SalesOrderLineResult rst in param.OrderLineList)
                {
                    if (string.IsNullOrEmpty(rst.Model))
                    {
                        msg = "请填写销售明细的型号!";
                        break;
                    }
                    if (rst.Qty <= 0)
                    {
                        msg = "请填写销售明细的数量!";
                        break;
                    }
                }
                #endregion
                List <ORD_SalesOrderLineResult> orderLineList = param.OrderLineList;



                #region 系统默认值
                if (param.SOGuid != null)
                {
                    WhereClip where      = ORD_SalesOrder._.SOGuid == param.SOGuid;
                    param.UpdatedEmpID   = this.SessionInfo.UserID;
                    param.UpdatedEmpName = this.SessionInfo.UserName;
                    param.UpdatedTime    = DateTime.Now;
                    affect = this.Update <ORD_SalesOrderResult>(param, where);
                }
                else
                {
                    param.SOGuid = Guid.NewGuid();
                    Sys_CodeRulerBLL codeRulerBll = new Sys_CodeRulerBLL();
                    codeRulerBll.SessionInfo = this.SessionInfo;
                    param.BillNo             = param.BillNo = codeRulerBll.GetBillNo(new Entity.UserModel.Sys.SYS_CredentialCodeRuleParam()
                    {
                        BillDate = DateTime.Today, TableName = "ORD_SalesOrder"
                    });
                    param.GCompanyID       = this.SessionInfo.CompanyID;
                    param.NotifyStatus     = "待通知";
                    param.PurchaseStatus   = "待采购";
                    param.StkInStatus      = "待入库";
                    param.StkOutOccStatus  = "待占有";
                    param.StkOutStatus     = "待出库";
                    param.ShipmentStatus   = "待发运";
                    param.ReturnOccStatus  = "待占有";
                    param.ReturnStatus     = "待退货";
                    param.ReceivableStatus = "待收款";
                    param.Status           = "New";
                    param.ApproveStatus    = "待提交";
                    param.IsDeleted        = false;
                    param.IsCancel         = false;
                    param.CreatedEmpID     = this.SessionInfo.UserID;
                    param.CreatedEmpName   = this.SessionInfo.UserName;
                    param.CreatedTime      = DateTime.Now;
                    affect = this.Insert <ORD_SalesOrderResult>(param);
                    param  = this.Select <ORD_SalesOrderResult>(new List <Field>()
                    {
                        ORD_SalesOrder._.All
                    }, ORD_SalesOrder._.SOGuid == param.SOGuid);
                }


                foreach (ORD_SalesOrderLineResult rst in orderLineList)
                {
                    if (rst.SOLineGuid.ToGuid() == Guid.Empty)
                    {
                        rst.SOLineGuid     = Guid.NewGuid();
                        rst.SOGuid         = param.SOGuid;
                        rst.GCompanyID     = this.SessionInfo.CompanyID;
                        rst.CreatedEmpID   = this.SessionInfo.UserID;
                        rst.CreatedEmpName = this.SessionInfo.UserName;
                        rst.CreatedTime    = DateTime.Now;
                        rst.SOLineCode     = param.CreatedTime.ToDateTime().ToString("yyyyMMddHHmmssms") + new Random().Next(1000, 9999);
                        rst.IsDeleted      = false;
                        rst.IsCancel       = false;
                    }
                    else
                    {
                        rst.UpdatedEmpID   = this.SessionInfo.UserID;
                        rst.UpdatedEmpName = this.SessionInfo.UserName;
                        rst.UpdatedTime    = DateTime.Now;
                    }
                }
                this.BatchInsertOrUpdate <ORD_SalesOrderLineResult>(orderLineList);
                this.BatchExecute();
                #region 设置返回值
                ret.Key            = param.SOID;
                ret.KeyGuid        = param.SOGuid;
                ret.CreatedTime    = param.CreatedTime;
                ret.CreatedEmpID   = param.CreatedEmpID;
                ret.CreatedEmpName = param.CreatedEmpName;
                ret.UpdatedEmpID   = param.UpdatedEmpID;
                ret.UpdatedEmpName = param.UpdatedEmpName;
                ret.UpdatedTime    = param.UpdatedTime;
                #endregion
                #endregion
            }
            catch (WarnException exp)
            {
                throw exp;
            }
            catch (System.Exception exp)
            {
                LogInfoBLL.WriteLog(this.SessionInfo, exp);
                throw exp;
            }
            return(ret);
        }
Beispiel #20
0
        /// <summary>
        /// 分页集合
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public PageList <STK_StockReserveResult> GetPageList(STK_StockReserveParam param)
        {
            this.CheckSession();
            PageList <STK_StockReserveResult> ret = new PageList <STK_StockReserveResult>();

            try
            {
                #region 处理销售明细
                WhereClip orderClip = ORD_SalesOrder._.IsDeleted == 0;
                if (!string.IsNullOrEmpty(param.SourceBillNo))
                {
                    orderClip = orderClip && ORD_SalesOrder._.BillNo.Like(param.SourceBillNo + "%");
                }
                if (param.SourceBillGuid != null)
                {
                    orderClip = orderClip && ORD_SalesOrder._.SOGuid == param.SourceBillGuid;
                }

                PageList <ORD_SalesOrderResult> orderList = this.SelectList <ORD_SalesOrderResult>(1, 5000, new List <Field>()
                {
                    Field.All
                }, orderClip, ORD_SalesOrder._.CreatedTime.Desc);
                PageList <ORD_SalesOrderLineResult> lineList = null;
                Guid?[] SOGuids = null;
                if (orderList.ResultList != null && orderList.ResultList.Count > 0)
                {
                    SOGuids = orderList.ResultList.Select(a => a.SOGuid).Distinct().ToArray();
                }
                WhereClip lineClip = ORD_SalesOrderLine._.IsDeleted == 0;
                if (SOGuids != null)
                {
                    lineClip = lineClip && ORD_SalesOrderLine._.SOGuid.In(SOGuids);
                }
                if (!string.IsNullOrEmpty(param.Model))
                {
                    lineClip = lineClip && ORD_SalesOrderLine._.Model.Like(param.Model + "%");
                }
                if (!string.IsNullOrEmpty(param.SourceBillLineCode))
                {
                    lineClip = lineClip && ORD_SalesOrderLine._.SOLineCode.Like(param.SourceBillLineCode + "%");
                }
                lineList = this.SelectList <ORD_SalesOrderLineResult>(param.PageIndex.GetValueOrDefault(1), param.PageSize.GetValueOrDefault(100), new List <Field>()
                {
                    Field.All
                }, lineClip, ORD_SalesOrderLine._.CreatedTime.Desc);
                if (lineList != null && lineList.ResultList.Count > 0)
                {
                    #region 获取业务明细下的预留信息
                    Guid?[] SOLineGuids = lineList.ResultList.Select(a => (Guid?)a.SOLineGuid).Distinct().ToArray();
                    STK_StockReserveParam reserveParam = new STK_StockReserveParam();
                    reserveParam.SourceBillLineGuids = SOLineGuids;
                    List <STK_StockReserveResult> childReserveResultList = this.GetList(reserveParam);

                    #endregion
                    List <STK_StockReserveResult> reserveResultList = new List <STK_StockReserveResult> ();
                    STK_StockReserveResult        reserveResult     = null;
                    foreach (ORD_SalesOrderLineResult lineResult in lineList.ResultList)
                    {
                        reserveResult = new STK_StockReserveResult();
                        ORD_SalesOrderResult orderResult = orderList.ResultList.FirstOrDefault(a => a.SOGuid == lineResult.SOGuid);
                        if (orderResult != null)
                        {
                            reserveResult.SourceBillNo   = orderResult.BillNo;
                            reserveResult.SourceBillType = "销售出库";
                            reserveResult.BelongEmpName  = orderResult.SalerName;
                            reserveResult.SourceBillDate = orderResult.SODate;
                        }

                        reserveResult.SourceBillGuid     = lineResult.SOGuid;
                        reserveResult.SourceBillLineGuid = lineResult.SOLineGuid;
                        reserveResult.SourceBillLineCode = lineResult.SOLineCode;
                        reserveResult.Model          = lineResult.Model;
                        reserveResult.Brand          = lineResult.Brand;
                        reserveResult.Qty            = lineResult.Qty;
                        reserveResult.ReserveQty     = lineResult.ReserveQty;
                        reserveResult.CreatedEmpName = lineResult.CreatedEmpName;
                        reserveResult.CreatedTime    = lineResult.CreatedTime;
                        reserveResult.UpdatedEmpName = lineResult.UpdatedEmpName;
                        reserveResult.UpdatedTime    = lineResult.UpdatedTime;
                        if (childReserveResultList != null && childReserveResultList.Count > 0)
                        {
                            List <STK_StockReserveResult> srList = childReserveResultList.Where(a => a.SourceBillLineGuid == lineResult.SOLineGuid).ToList();
                            if (srList != null && srList.Count > 0)
                            {
                                Guid?[]      ItemCodes = srList.Select(a => a.ItemCode).Distinct().ToArray();
                                STK_StockBLL stockBLL  = new STK_StockBLL();
                                stockBLL.SessionInfo = this.SessionInfo;
                                List <STK_StockResult> stockList = stockBLL.GetList(new STK_StockParam()
                                {
                                    ItemCodes = ItemCodes
                                });
                                foreach (STK_StockReserveResult sr in srList)
                                {
                                    if (stockList != null && stockList.Count > 0)
                                    {
                                        STK_StockResult stockResult = stockList.FirstOrDefault(a => a.ItemCode == sr.ItemCode);
                                        sr.Model     = stockResult.Model;
                                        sr.Brand     = stockResult.Brand;
                                        sr.Batch     = stockResult.Batch;
                                        sr.Package   = stockResult.Package;
                                        sr.Quality   = stockResult.Quality;
                                        sr.MPQ       = stockResult.MPQ;
                                        sr.MarkCode  = stockResult.MarkCode;
                                        sr.Warehouse = stockResult.Warehouse;
                                        sr.Location  = stockResult.Location;
                                        sr.InvType   = stockResult.InvType;
                                        sr.InBatchNo = stockResult.InBatchNo;
                                    }
                                }
                                reserveResult.ReserveList = srList;
                            }
                        }
                        reserveResultList.Add(reserveResult);
                    }
                    if (ret.ResultList == null)
                    {
                        ret.ResultList = new List <STK_StockReserveResult>();
                    }
                    ret.ResultList.AddRange(reserveResultList);
                    ret.TotalCount = lineList.TotalCount;
                }
                #endregion

                #region 处理采购退货明细

                #endregion
            }
            catch (WarnException exp)
            {
                throw exp;
            }
            catch (System.Exception exp)
            {
                LogInfoBLL.WriteLog(this.SessionInfo, exp);
                throw exp;
            }
            return(ret);
        }
Beispiel #21
0
        public bool UpdateStatus(ORD_SalesOrderParam param)
        {
            bool flag = true;

            try
            {
                ORD_SalesOrderResult orderResult = this.GetInfo(param);
                if (orderResult != null)
                {
                    if (orderResult.OrderLineList != null && orderResult.OrderLineList.Count > 0)
                    {
                        //取消的明细需要排除
                        List <ORD_SalesOrderLineResult> lineList = orderResult.OrderLineList.Where(a => a.IsCancel == false).ToList();
                        if (lineList != null && lineList.Count > 0)
                        {
                            int?qty          = lineList.Where(a => a.Qty != null).Select(a => a.Qty).Sum();
                            int?notifyQty    = lineList.Where(a => a.NotifyQty != null).Select(a => a.NotifyQty).Sum();
                            int?purchaseQty  = lineList.Where(a => a.PurchaseQty != null).Select(a => a.PurchaseQty).Sum();
                            int?stkInQty     = lineList.Where(a => a.StkInQty != null).Select(a => a.StkInQty).Sum();
                            int?stkOutOccQty = lineList.Where(a => a.StkOutOccQty != null).Select(a => a.StkOutOccQty).Sum();
                            int?stkOutQty    = lineList.Where(a => a.StkOutQty != null).Select(a => a.StkOutQty).Sum();
                            int?returnOccQty = lineList.Where(a => a.ReturnOccQty != null).Select(a => a.ReturnOccQty).Sum();
                            int?returnQty    = lineList.Where(a => a.ReturnQty != null).Select(a => a.ReturnQty).Sum();
                            if (notifyQty == 0)
                            {
                                orderResult.NotifyStatus = "待通知";
                            }
                            else if (notifyQty >= qty)
                            {
                                orderResult.NotifyStatus = "全部通知";
                            }
                            else
                            {
                                orderResult.NotifyStatus = "部分通知";
                            }
                            if (purchaseQty == 0)
                            {
                                orderResult.PurchaseStatus = "待采购";
                            }
                            else if (purchaseQty >= qty)
                            {
                                orderResult.PurchaseStatus = "全部采购";
                            }
                            else
                            {
                                orderResult.PurchaseStatus = "部分采购";
                            }
                            if (stkInQty == 0)
                            {
                                orderResult.StkInStatus = "待入库";
                            }
                            else if (stkInQty >= qty)
                            {
                                orderResult.StkInStatus = "全部入库";
                            }
                            else
                            {
                                orderResult.StkInStatus = "部分入库";
                            }
                            if (stkOutOccQty == 0)
                            {
                                orderResult.StkOutOccStatus = "待占有";
                            }
                            else if (stkOutOccQty >= qty)
                            {
                                orderResult.StkOutOccStatus = "全部占有";
                            }
                            else
                            {
                                orderResult.StkOutOccStatus = " 部分占有";
                            }
                            if (stkOutQty == 0)
                            {
                                orderResult.StkOutStatus = "待出库";
                            }
                            else if (stkOutQty >= qty)
                            {
                                orderResult.StkOutStatus = "全部出库";
                            }
                            else
                            {
                                orderResult.StkOutStatus = " 部分出库";
                            }
                            if (returnOccQty == 0)
                            {
                                orderResult.ReturnOccStatus = "待占有";
                            }
                            else if (returnOccQty >= qty)
                            {
                                orderResult.ReturnOccStatus = "全部占有";
                            }
                            else
                            {
                                orderResult.ReturnOccStatus = " 部分占有";
                            }
                            if (returnQty == 0)
                            {
                                orderResult.ReturnStatus = "待退货";
                            }
                            else if (returnQty >= qty)
                            {
                                orderResult.ReturnStatus = "全部退货";
                            }
                            else
                            {
                                orderResult.ReturnStatus = " 部分退货";
                            }
                            this.AddOrUpdate(orderResult);
                        }
                    }
                }
            }
            catch (WarnException exp)
            {
                flag = false;
                throw exp;
            }
            catch (System.Exception exp)
            {
                flag = false;
                LogInfoBLL.WriteLog(this.SessionInfo, exp);
                throw exp;
            }
            return(flag);
        }
Beispiel #22
0
        private void dgvSalesOrder_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex > -1 && e.ColumnIndex > -1)
            {
                Guid?_SOGuid = dgvSalesOrder["colSOGuid", e.RowIndex].Value.ToGuid();
                if (dgvSalesOrder.Columns[e.ColumnIndex].Name == "colOperOut")
                {
                    ORD_SalesOrderResult orderResult = orderLogic.GetInfo(new ORD_SalesOrderParam()
                    {
                        SOGuid = soguid
                    });
                    if (orderResult != null && orderResult.Status == "Complete" && orderResult.StkOutStatus != "全部出库" && orderResult.StkOutOccStatus != "全部占有")//没有全部出库的销售单才能创建出库单
                    {
                        List <ORD_SalesOrderLineResult> lineList = orderResult.OrderLineList;
                        if (lineList != null && lineList.Count > 0)
                        {
                            //判断是否存在有未取消的,出库数量小于下单数量
                            List <ORD_SalesOrderLineResult> effLineList = lineList.Where(a => a.IsCancel == false && a.StkOutOccQty < a.Qty).ToList();
                            if (effLineList != null && effLineList.Count > 0)
                            {
                                //如果存在未提交的关联的出库单,则直接调出出库单
                                STK_OutResult outResult = outLogic.GetInfo(new STK_OutParam()
                                {
                                    SourceBillGuid = soguid, Status = "New"
                                });
                                frmStkOut frmStkOut = new STK.frmStkOut("SO_OUT", _SOGuid);
                                frmStkOut.BringToFront();
                                frmStkOut.StartPosition = FormStartPosition.CenterParent;
                                if (frmStkOut != null)
                                {
                                    //存在关联的未提交的出库单
                                    frmStkOut.StkOutGuid = outResult.StkOutGuid;
                                }
                                frmStkOut.ShowDialog();
                            }
                            else
                            {
                                this.ShowMessage("当前销售单没有需出库的销售明细!若存在有关联的已提交未审核的出库单,请及时联系相关人员审核!");
                            }
                        }
                    }
                    else
                    {
                        this.ShowMessage("未审核或者全部出库占有的销售单据不允许再继续出库!");
                    }
                }
                if (dgvSalesOrder.Columns[e.ColumnIndex].Name == "colOperReturn")
                {
                    ORD_SalesOrderResult orderResult = orderLogic.GetInfo(new ORD_SalesOrderParam()
                    {
                        SOGuid = _SOGuid
                    });
                    if (orderResult != null && orderResult.Status == "Complete" && orderResult.StkOutOccStatus != "待出库" && orderResult.ReturnOccStatus != "全部占有")//没有全部退货的销售单才能创建退货单
                    {
                        List <ORD_SalesOrderLineResult> lineList = orderResult.OrderLineList;
                        if (lineList != null && lineList.Count > 0)
                        {
                            //判断是否存在有未取消的,出库数量大于0,且出库数量大于退货占有数量的销售明细

                            List <ORD_SalesOrderLineResult> effLineList = lineList.Where(a => a.IsCancel == false && a.StkOutQty > 0 && a.StkOutQty > a.ReturnOccQty.ToInt32()).ToList();
                            if (effLineList != null && effLineList.Count > 0)
                            {
                                //如果存在未提交的关联的退货单,则直接调出退货单
                                List <ORD_SalesReturnResult> returnResultList = returnLogic.GetList(new ORD_SalesReturnParam()
                                {
                                    SOGuid = _SOGuid, Status = "New"
                                });
                                frmSalesReturn frmSalesReturn = new frmSalesReturn(_SOGuid);
                                frmSalesReturn.BringToFront();
                                frmSalesReturn.StartPosition = FormStartPosition.CenterParent;
                                if (returnResultList != null && returnResultList.Count > 0)
                                {
                                    //存在关联的未提交的退货单
                                    frmSalesReturn.SRGuid = returnResultList[0].SRGuid;
                                }
                                frmSalesReturn.ShowDialog();
                            }
                            else
                            {
                                this.ShowMessage("当前销售单没有需退货的销售明细!若存在有关联的已提交未审核的退货单,请及时联系相关人员审核!");
                            }
                        }
                    }
                    else
                    {
                        this.ShowMessage("未审核或者未出库或者全部退货占有的销售单据不允许退货!");
                    }
                }
            }
        }
Beispiel #23
0
        public PageList <ORD_PurchaseNoticeResult> GetPageList(ORD_PurchaseNoticeParam param)
        {
            PageList <ORD_PurchaseNoticeResult> ret = new PageList <ORD_PurchaseNoticeResult>();

            try
            {
                ORD_SalesOrderBLL orderBLL = new ORD_SalesOrderBLL();
                orderBLL.SessionInfo = this.SessionInfo;
                ORD_SalesOrderParam orderParam = new ORD_SalesOrderParam()
                {
                    BillNo    = param.SOBillNo,
                    SalerName = param.SalerName,
                    PageIndex = 1,
                    PageSize  = 5000
                };

                PageList <ORD_SalesOrderResult> orderList = orderBLL.GetPageList(orderParam);
                if (orderList.ResultList != null && orderList.ResultList.Count > 0)
                {
                    Guid?[] SOGuids = orderList.ResultList.Select(a => a.SOGuid).Distinct().ToArray();
                    ORD_SalesOrderLineBLL lineBLL = new ORD_SalesOrderLineBLL();
                    lineBLL.SessionInfo = this.SessionInfo;
                    ORD_SalesOrderLineParam lineParam = new ORD_SalesOrderLineParam()
                    {
                        Model      = param.Model,
                        SOLineCode = param.SOLineCode,
                        SOGuids    = SOGuids,
                        PageIndex  = 1,
                        PageSize   = 5000,
                        IsCancel   = false
                    };
                    PageList <ORD_SalesOrderLineResult> lineList = lineBLL.GetPageList(lineParam);
                    if (lineList.ResultList != null && lineList.ResultList.Count > 0)
                    {
                        Guid?[] SOLineGuIds = lineList.ResultList.Select(a => (Guid?)a.SOLineGuid).Distinct().ToArray();
                        param.SOLineGuids = SOLineGuIds;
                        ret = this.SelectList <ORD_PurchaseNoticeResult>(param.PageIndex.GetValueOrDefault(1), param.PageSize.GetValueOrDefault(50), new List <Field>()
                        {
                            Field.All
                        }, GetWhereClip(param), ORD_PurchaseNotice._.CreatedTime.Desc);
                        foreach (ORD_PurchaseNoticeResult noticeResult in ret.ResultList)
                        {
                            ORD_SalesOrderResult orderResult = orderList.ResultList.FirstOrDefault(a => a.SOGuid == noticeResult.SOGuid);
                            if (orderResult != null)
                            {
                                noticeResult.SOBillNo     = orderResult.BillNo;
                                noticeResult.SalerName    = orderResult.SalerName;
                                noticeResult.SaleCurrency = orderResult.Currency;
                            }
                            ORD_SalesOrderLineResult lineResult = lineList.ResultList.FirstOrDefault(a => a.SOLineGuid == noticeResult.SOLineGuid);
                            if (lineResult != null)
                            {
                                noticeResult.SOLineCode       = lineResult.SOLineCode;
                                noticeResult.SalePrice        = lineResult.UnitPrice;
                                noticeResult.Unit             = lineResult.Unit;
                                noticeResult.Model            = lineResult.Model;
                                noticeResult.Brand            = lineResult.Brand;
                                noticeResult.Batch            = lineResult.Batch;
                                noticeResult.Package          = lineResult.Package;
                                noticeResult.InvType          = lineResult.InvType;
                                noticeResult.NeedDeliveryDate = lineResult.NeedDeliveryDate;
                                noticeResult.SaleQty          = lineResult.Qty;
                            }
                            if (noticeResult.PurchaseQty.ToInt32() == 0)
                            {
                                noticeResult.PurStatus = "未采购";
                            }
                            else if (noticeResult.NoticeQty.ToInt32() <= noticeResult.PurchaseQty.ToInt32())
                            {
                                noticeResult.PurStatus = "采购完成";
                            }
                            else
                            {
                                noticeResult.PurStatus = "部分采购";
                            }
                        }
                    }
                }
            }
            catch (WarnException exp)
            {
                throw exp;
            }
            catch (System.Exception exp)
            {
                LogInfoBLL.WriteLog(this.SessionInfo, exp);
                throw exp;
            }
            return(ret);
        }