コード例 #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Grid1_AfterEdit(object sender, GridAfterEditEventArgs e)
        {
            var addList = Grid1.GetNewAddedList();

            foreach (var add in addList)
            {
                var dictValues = add.Values;

                //商品代码
                var firstOrDefault = dictValues.First();

                if (firstOrDefault != null && !string.IsNullOrEmpty(firstOrDefault.ToString()))
                {
                    DataSet dataSet = GasHelper.GetPurchaseItem(firstOrDefault.ToString(), CurrentUser.AccountComId);

                    DataTable table = dataSet.Tables[0];

                    if (table != null && table.Rows.Count > 0)
                    {
                        decimal price = GasHelper.GeSupplierPrice(txtFCode.Text.Trim(),//
                                                                  table.Rows[0]["FItemCode"].ToString(), CurrentUser.AccountComId);

                        table.Rows[0]["FPrice"] = price;

                        var details = new LHStockInDetails
                        {
                            FItemCode     = table.Rows[0]["FItemCode"].ToString(),
                            FPrice        = price,
                            FQty          = 0,
                            FAmount       = price,
                            FBottleQty    = 0,
                            FReturnQty    = 0,
                            FBottleOweQty = 0,
                            FRecycleQty   = 0,
                            FCompanyId    = CurrentUser.AccountComId,
                            KeyId         = txtKeyId.Text.Trim(),
                            FBottle       = table.Rows[0]["FBottleCode"].ToString(),
                            FCateId       = Convert.ToInt32(table.Rows[0]["FId"].ToString())
                        };

                        switch (Actions)
                        {
                        case WebAction.Add:
                            break;

                        case WebAction.Edit:
                            //记录一下当前新增人操作内容
                            var detailslog = new LHStockInDetails_Log
                            {
                                FUpdateBy     = CurrentUser.AccountName,
                                FUpdateDate   = DateTime.Now,
                                FItemCode     = table.Rows[0]["FItemCode"].ToString(),
                                FPrice        = price,
                                FQty          = 1,
                                FAmount       = price,
                                FBottleQty    = 1,
                                FBottleOweQty = 0,
                                KeyId         = txtKeyId.Text.Trim(),
                                FBottle       = table.Rows[0]["FBottleCode"].ToString(),
                                FStatus       = "新增",
                                FCompanyId    = CurrentUser.AccountComId,
                                FMemo         = string.Format(@"时间:{0} 新增人:{1}", DateTime.Now, CurrentUser.AccountName)
                            };

                            StockInDetailsLogService.Add(detailslog);

                            break;
                        }


                        StockInDetailsService.Add(details);
                    }
                }
            }

            //var dictModified = Grid1.GetModifiedDict();

            //foreach (var index in dictModified.Keys)
            //{
            //    int datakey = Convert.ToInt32(Grid1.DataKeys[index][1].ToString());

            //    foreach (var dictValue in dictModified.Values)
            //    {
            //        foreach (KeyValuePair<string, object> keyValuePair in dictValue)
            //        {
            //            string key = keyValuePair.Key;
            //            string value = keyValuePair.Value.ToString();

            //            var details = StockInDetailsService.Where(p => p.FId == datakey&&p.FCompanyId==CurrentUser.AccountComId).FirstOrDefault();

            //            //写入原始,通过存储过程完成明细复制
            //            var parms = new Dictionary<string, object>();
            //            parms.Clear();

            //            parms.Add("@fid", datakey);
            //            parms.Add("@opr", CurrentUser.AccountName);
            //            parms.Add("@companyId", CurrentUser.AccountComId);
            //            SqlService.ExecuteProcedureCommand("proc_StockInDetails_Log", parms);

            //            if (details != null)
            //            {
            //                switch (key)
            //                {
            //                    case "FPrice":
            //                        details.FPrice = Convert.ToDecimal(value);
            //                        details.FAmount = details.FPrice * details.FQty;
            //                        break;

            //                    case "FQty":
            //                        details.FQty = Convert.ToDecimal(value);
            //                        details.FAmount = details.FPrice * details.FQty;
            //                        break;

            //                    case "FBottle":
            //                        details.FBottle = value;
            //                        break;

            //                    case "FBottleName":
            //                        details.FBottle = value;
            //                        break;

            //                    case "FBottleQty":
            //                        details.FBottleQty = Convert.ToInt32(value);
            //                        break;

            //                    case "FMemo":
            //                        details.FMemo = value;
            //                        break;
            //                }

            //                var detailslog = new LHStockInDetails_Log
            //                {
            //                    FUpdateBy = CurrentUser.AccountName,
            //                    FUpdateDate = DateTime.Now,
            //                    FItemCode = details.FItemCode,
            //                    FPrice = details.FPrice,
            //                    FQty = details.FQty,
            //                    FAmount = details.FAmount,
            //                    FBottleQty = details.FBottleQty,
            //                    FBottleOweQty = details.FBottleOweQty,
            //                    KeyId = details.KeyId,
            //                    FBottle = details.FBottle,
            //                    FStatus = "变更",
            //                    FCompanyId = CurrentUser.AccountComId,
            //                    FMemo = string.Format(@"时间:{0} 变更人:{1}", DateTime.Now, CurrentUser.AccountName)
            //                };
            //                StockInDetailsLogService.Add(detailslog);

            //            }

            //            StockInDetailsService.SaveChanges();
            //        }
            //    }
            //}

            if (addList.Count > 0)
            {
                BindDataGrid();
            }
        }
コード例 #2
0
        /// <summary>
        ///     提交添加
        /// </summary>
        private bool SubmintAdd()
        {
            var stock = StockInService.Where(p => p.KeyId == txtKeyId.Text.Trim() && p.FCompanyId == CurrentUser.AccountComId).FirstOrDefault();

            if (stock != null)
            {
                ModifiedGrid();

                var prod =
                    StockInDetailsService.FirstOrDefault(
                        p => p.KeyId == txtKeyId.Text && p.FCompanyId == CurrentUser.AccountComId);

                if (prod == null)
                {
                    //生产产品入库
                    var product = new LHStockInDetails
                    {
                        KeyId         = txtKeyId.Text,
                        FItemCode     = txtFCode.Text,
                        FPrice        = 0,
                        FAmount       = 0,
                        FQty          = Convert.ToDecimal(txtFQty.Text),
                        FBottle       = tbxFBottle.SelectedValue,
                        FBottleQty    = Convert.ToInt16(txtFBottleQty.Text),
                        FBottleOweQty = 0,
                        FCompanyId    = CurrentUser.AccountComId,
                        FCateId       = 2000,
                        FMemo         = "生产入库",
                        FCostPrice    = Convert.ToDecimal(txtFCostPrice.Text),
                        FBalance      = Convert.ToDecimal(txtFBalance.Text),
                    };

                    StockInDetailsService.Add(product);
                }
                else
                {
                    prod.FItemCode  = txtFCode.Text;
                    prod.FQty       = Convert.ToDecimal(txtFQty.Text);
                    prod.FBottle    = tbxFBottle.SelectedValue;
                    prod.FBottleQty = Convert.ToInt32(txtFBottleQty.Text);
                    prod.FCostPrice = Convert.ToDecimal(txtFCostPrice.Text);
                    prod.FBalance   = Convert.ToDecimal(txtFBalance.Text);

                    StockInDetailsService.SaveChanges();
                }
                //-------------------------------------------------------------------

                stock.FCompanyId  = CurrentUser.AccountComId;
                stock.FFlag       = 1;
                stock.FDeleteFlag = 0;
                stock.FMemo       = txtFMemo.Text.Trim();

                var parms = new Dictionary <string, object>();
                parms.Clear();

                parms.Add("@keyID", stock.KeyId);
                parms.Add("@companyId", CurrentUser.AccountComId);
                var amt =
                    Convert.ToDecimal(SqlService.ExecuteProcedureCommand("proc_PurchaseAmt", parms).Tables[0].Rows[0][0]);

                stock.FAmount = amt;

                stock.FSurveyor = !ddlFSurveyor.SelectedValue.Equals("-1") ? ddlFSurveyor.SelectedText : "";
                stock.FProducer = !ddlFProducer.SelectedValue.Equals("-1") ? ddlFProducer.SelectedText : "";//GasHelper.GetDropDownListArrayString(ddlFProducer.SelectedItemArray);

                stock.FBatchNumber = txtFBatchNumber.Text.Trim();

                stock.FProductionWorkshop = ddlWorkShop.SelectedValue;

                stock.FCate = "内部";
                stock.FCode = CurrentUser.AccountComId.ToString(CultureInfo.InvariantCulture);
                stock.FName = "";
                stock.FDate = txtFDate.SelectedDate;


                StockInService.SaveChanges();


                if (txtKeyId.Text.Contains("TM"))
                {
                    //单据号问题
                    string newKeyId   = SequenceService.CreateSequence(Convert.ToDateTime(txtFDate.SelectedDate), "PR", CurrentUser.AccountComId);
                    var    orderParms = new Dictionary <string, object>();
                    orderParms.Clear();
                    orderParms.Add("@oldKeyId", txtKeyId.Text);
                    orderParms.Add("@newKeyId", newKeyId);
                    orderParms.Add("@Bill", "6");
                    orderParms.Add("@companyId", CurrentUser.AccountComId);
                    SqlService.ExecuteProcedureCommand("proc_num", orderParms);
                    txtKeyId.Text = newKeyId;



                    var orders = new Dictionary <string, object>();
                    orders.Clear();
                    orders.Add("@KeyId", newKeyId);
                    orders.Add("@companyId", CurrentUser.AccountComId);

                    SqlService.ExecuteProcedureCommand("proc_ProuctOrder", orders);


                    //新增日志
                    var billStatus = new LHBillStatus
                    {
                        KeyId       = newKeyId,
                        FCompanyId  = CurrentUser.AccountComId,
                        FActionName = "新增",
                        FDate       = DateTime.Now,
                        FDeptId     = CurrentUser.AccountOrgId,
                        FOperator   = CurrentUser.AccountName,
                        FMemo       = String.Format("单据号{0},{1}新增生产单据。", newKeyId, CurrentUser.AccountName)
                    };
                    GasHelper.AddBillStatus(billStatus);
                }

                return(true);
            }
            return(false);
        }
コード例 #3
0
        /// <summary>
        ///     单元格编辑与修改
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Grid1_AfterEdit(object sender, GridAfterEditEventArgs e)
        {
            Window1.Hidden = true;
            Window2.Hidden = true;
            Window3.Hidden = true;

            //新增行事件
            var addList = Grid1.GetNewAddedList();

            foreach (var add in addList)
            {
                var dictValues = add.Values;

                //商品代码
                var firstOrDefault = dictValues.First();

                if (firstOrDefault != null)
                {
                    DataSet dataSet = GasHelper.GetSalesItem(firstOrDefault.ToString(), CurrentUser.AccountComId);

                    DataTable table = dataSet.Tables[0];

                    if (table != null && table.Rows.Count > 0)
                    {
                        decimal price = GasHelper.GeCustomerPrice("",//
                                                                  table.Rows[0]["FItemCode"].ToString(), CurrentUser.AccountComId);

                        table.Rows[0]["FPrice"] = price;

                        var details = new LHStockInDetails
                        {
                            FItemCode     = table.Rows[0]["FItemCode"].ToString(),
                            FPrice        = price,
                            FQty          = 1,
                            FAmount       = price,
                            FBottleQty    = 1,
                            FBottleOweQty = 0,
                            FCompanyId    = CurrentUser.AccountComId,
                            KeyId         = txtKeyId.Text.Trim(),
                            FBottle       = table.Rows[0]["FBottleCode"].ToString(),
                            FCateId       = Convert.ToInt32(table.Rows[0]["FId"].ToString())
                        };

                        switch (Actions)
                        {
                        case WebAction.Add:
                            break;

                        case WebAction.Edit:
                            //记录一下当前新增人操作内容
                            var detailslog = new LHStockInDetails_Log
                            {
                                FUpdateBy     = CurrentUser.AccountName,
                                FUpdateDate   = DateTime.Now,
                                FItemCode     = table.Rows[0]["FItemCode"].ToString(),
                                FPrice        = price,
                                FQty          = 1,
                                FAmount       = price,
                                FBottleQty    = 1,
                                FBottleOweQty = 0,
                                FCompanyId    = CurrentUser.AccountComId,
                                KeyId         = txtKeyId.Text.Trim(),
                                FBottle       = table.Rows[0]["FBottleCode"].ToString(),
                                FStatus       = "新增",
                                FMemo         = string.Format(@"时间:{0} 新增人:{1}", DateTime.Now, CurrentUser.AccountName)
                            };

                            StockInDetailsLogService.Add(detailslog);

                            break;
                        }

                        StockInDetailsService.Add(details);
                    }
                }
            }

            if (addList.Count > 0)
            {
                BindDataGrid();
            }
        }