/// <summary>
        ///
        /// </summary>
        /// <param name="ResultID">    </param>
        /// <returns></returns>
        public static Entity.AnalysisResult GetAnalysisResultByID(int ResultID)
        {
            Entity.AnalysisResult entity    = null;
            DBOperatorBase        db        = new DataBase();
            IDBTypeElementFactory dbFactory = db.GetDBTypeElementFactory();

            try
            {
                IDataReader dataReader = db.ExecuteReader(Config.con, CommandType.Text, "Select * from [AnalysisResult] where ResultID='" + ResultID + "'", null);
                while (dataReader.Read())
                {
                    entity            = new Entity.AnalysisResult();
                    entity.ResultID   = DataHelper.ParseToInt(dataReader["ResultID"].ToString());
                    entity.BillNumber = dataReader["BillNumber"].ToString();
                    entity.ItemCode   = dataReader["ItemCode"].ToString();
                    entity.Result     = decimal.Parse(dataReader["Result"].ToString());
                }
            }
            catch (Exception ex)
            {
            }
            finally
            {
                db.Conn.Close();
            }
            return(entity);
        }
        public static int UpdateAnalysisResult(Entity.AnalysisResult entity)
        {
            int                   iReturn   = 0;
            DBOperatorBase        db        = new DataBase();
            IDBTypeElementFactory dbFactory = db.GetDBTypeElementFactory();
            SqlTransactionHelper  thelper   = new SqlTransactionHelper(DAL.Config.con);
            IDbTransaction        trans     = thelper.StartTransaction();

            try
            {
                IDbDataParameter[] prams =
                {
                    dbFactory.MakeInParam("@ResultID",   DBTypeConverter.ConvertCsTypeToOriginDBType(entity.ResultID.GetType().ToString()),   entity.ResultID,   32),
                    dbFactory.MakeInParam("@BillNumber", DBTypeConverter.ConvertCsTypeToOriginDBType(entity.BillNumber.GetType().ToString()), entity.BillNumber, 20),
                    dbFactory.MakeInParam("@ItemCode",   DBTypeConverter.ConvertCsTypeToOriginDBType(entity.ItemCode.GetType().ToString()),   entity.ItemCode,   20),
                    dbFactory.MakeInParam("@Result",     DBTypeConverter.ConvertCsTypeToOriginDBType(entity.Result.GetType().ToString()),     entity.Result, 10)
                };
                iReturn = db.ExecuteNonQueryTrans(trans, CommandType.StoredProcedure, "proc_AnalysisResult_Update", prams);
                thelper.CommitTransaction(trans);
                iReturn = 1;
            }
            catch (Exception ex)
            {
                thelper.RollTransaction(trans);
                iReturn = 0;
            }
            finally
            {
                db.Conn.Close();
            }
            return(iReturn);
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="BillNumber">    </param>
        /// <returns></returns>
        public static List <Entity.AnalysisResult> GetAnalysisResultEx(string BillNumber)
        {
            List <Entity.AnalysisResult> list = new List <Entity.AnalysisResult>();
            DBOperatorBase        db          = new DataBase();
            IDBTypeElementFactory dbFactory   = db.GetDBTypeElementFactory();

            try
            {
                IDataReader dataReader = db.ExecuteReader(Config.con, CommandType.Text, "Select * from [vAnalysisResult] where BillNumber='" + BillNumber + "'", null);
                while (dataReader.Read())
                {
                    Entity.AnalysisResult entity = new Entity.AnalysisResult();
                    entity.ResultID   = DataHelper.ParseToInt(dataReader["ResultID"].ToString());
                    entity.BillNumber = dataReader["BillNumber"].ToString();
                    entity.ItemCode   = dataReader["ItemCode"].ToString();
                    entity.ItemName   = dataReader["ItemName"].ToString();
                    entity.Result     = decimal.Parse(dataReader["Result"].ToString());
                    list.Add(entity);
                }
            }
            catch (Exception ex)
            {
            }
            finally
            {
                db.Conn.Close();
            }
            return(list);
        }
Exemple #4
0
        protected void btn_save_Click(object sender, EventArgs e)
        {
            string msg = checkInput();

            if (msg != "")
            {
                Alert.Show(msg);
                return;
            }
            else
            {
                int iReturn = 0;
                try
                {
                    Entity.Analysis entity = new Entity.Analysis();
                    entity.BillNumber    = txt_BillNumber.Text.Trim();
                    entity.CreateDate    = DateTime.Now;
                    entity.UpdateDate    = DateTime.Now;
                    entity.CreateUser    = Request.Cookies["Cookies"].Values["UserName"].ToString();
                    entity.UpdateUser    = Request.Cookies["Cookies"].Values["UserName"].ToString();
                    entity.DateTime      = Date.SelectedDate;
                    entity.AnalysisManID = int.Parse(hf_AnalysisID.Text.Trim());
                    entity.Status        = 1;

                    if (string.IsNullOrEmpty(sGuid))
                    {
                        //Add


                        //List<Entity.AnalysisResult> results = new List<Entity.AnalysisResult>();
                        //foreach (GridRow gr in Grid1.Rows)
                        //{
                        //    Entity.AnalysisResult result = new Entity.AnalysisResult();
                        //    result.ItemCode = DAL.AnalysisItem.GetItemCodeByName(gr.DataKeys[2].ToString());
                        //    result.Result = decimal.Parse(gr.DataKeys[3].ToString());
                        //    results.Add(result);
                        //}
                        List <Dictionary <string, object> > newAddedList = Grid1.GetNewAddedList();
                        List <Entity.AnalysisResult>        Adds         = new List <Entity.AnalysisResult>();
                        for (int i = 0; i < newAddedList.Count; i++)
                        {
                            Entity.AnalysisResult add = new Entity.AnalysisResult();
                            add.Result   = decimal.Parse(newAddedList[i]["Result"].ToString());
                            add.ItemCode = DAL.AnalysisItem.GetItemCodeByName(newAddedList[i]["ItemName"].ToString());
                            Adds.Add(add);
                        }
                        iReturn = DAL.Analysis.AddAnalysisEntity(entity, Adds);

                        //iReturn = DAL.Analysis.AddAnalysisEntity(entity, results);
                    }
                    else
                    {
                        //Update
                        entity.AnalysisID = int.Parse(sGuid);
                        List <int> deletedRows = Grid1.GetDeletedList();
                        List <Entity.AnalysisResult> Deletes = new List <Entity.AnalysisResult>();
                        foreach (int rowIndex in deletedRows)
                        {
                            Entity.AnalysisResult delete = new Entity.AnalysisResult();
                            delete.ResultID = Convert.ToInt32(Grid1.DataKeys[rowIndex][0]);
                            Deletes.Add(delete);
                        }


                        Dictionary <int, Dictionary <string, object> > modifiedDict = Grid1.GetModifiedDict();
                        List <Entity.AnalysisResult> Updates = new List <Entity.AnalysisResult>();
                        foreach (int rowIndex in modifiedDict.Keys)
                        {
                            Entity.AnalysisResult update = new Entity.AnalysisResult();
                            update.ResultID = Convert.ToInt32(Grid1.DataKeys[rowIndex][0]);
                            update.ItemCode = DAL.AnalysisItem.GetItemCodeByName(Grid1.DataKeys[rowIndex][1].ToString());
                            update.Result   = decimal.Parse(Grid1.DataKeys[rowIndex][2].ToString());
                            Updates.Add(update);
                        }

                        List <Dictionary <string, object> > newAddedList = Grid1.GetNewAddedList();
                        List <Entity.AnalysisResult>        Adds         = new List <Entity.AnalysisResult>();
                        for (int i = 0; i < newAddedList.Count; i++)
                        {
                            Entity.AnalysisResult add = new Entity.AnalysisResult();
                            add.Result   = decimal.Parse(newAddedList[i]["Result"].ToString());
                            add.ItemCode = DAL.AnalysisItem.GetItemCodeByName(newAddedList[i]["ItemName"].ToString());
                            Adds.Add(add);
                        }
                        iReturn = DAL.Analysis.UpdateAnalysisEntity(entity, Adds, Deletes, Updates);
                    }
                }
                catch (Exception ex)
                {
                }
                finally
                {
                }
                if (iReturn == 1)
                {
                    Alert.ShowInTop(" 保存成功!", MessageBoxIcon.Information);
                    //            PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
                }
                else
                {
                    Alert.ShowInTop(" 保存失败!", MessageBoxIcon.Warning);
                }
            }
            #endregion
        }