Esempio n. 1
0
        public void InsertBill(Bills bill, IDbConnection conn, IDbTransaction trans)
        {
            string sql = @"insert into 
            MD_Bills(BillsCode,StoreHouse_ID,BillsType_ID,Maker,MakerDate,CreateDate,Actived,IsCancleOut,IsRedBill,Company_ID,Remark )
            values(@BillsCode,@Storehouse_ID,@BillsType_ID,@Maker,@MakerDate,@CreateDate,@Actived,@IsCancleOut,@IsRedBill,@Company_ID,@Remark)";
            List <SqlParameter> paramList = new List <SqlParameter>();

            paramList.Add(new SqlParameter("@BillsCode", bill.Code));
            paramList.Add(new SqlParameter("@Storehouse_ID", bill.Storehouse.ID));
            paramList.Add(new SqlParameter("@BillsType_ID", bill.BillsType.ID));
            paramList.Add(new SqlParameter("@Maker", bill.Maker));
            paramList.Add(new SqlParameter("@MakerDate", bill.MakeDate));
            paramList.Add(new SqlParameter("@CreateDate", bill.CreateDate));
            paramList.Add(new SqlParameter("@Actived", bill.Actived));
            paramList.Add(new SqlParameter("@IsCancleOut", bill.IsCancelOut));
            paramList.Add(new SqlParameter("@IsRedBill", bill.IsRedBill));
            paramList.Add(new SqlParameter("@Company_ID", bill.Company.ID));
            paramList.Add(new SqlParameter("@Remark", bill.Remark));
            DataAccessUtil.ExecuteNonQuery(sql, paramList, (SqlTransaction)trans);
            Object idObj = DataAccessUtil.ExecuteScalar("SELECT @@IDENTITY", new List <SqlParameter>(), (SqlTransaction)trans);
            int    newID = int.Parse(idObj.ToString());

            foreach (BillsItem item in bill.Items)
            {
                sql       = @"insert into 
            MD_BillsItem(Bills_ID,Drugs_ID,UnitPrice,Count,Money,Remark )
            values(@Bills_ID,@Drugs_ID,@UnitPrice,@Count,@Money,@Remark)";
                paramList = new List <SqlParameter>();
                paramList.Add(new SqlParameter("@Bills_ID", newID));
                paramList.Add(new SqlParameter("@Drugs_ID", item.Drugs.ID));
                paramList.Add(new SqlParameter("@UnitPrice", item.UnitPrice));
                paramList.Add(new SqlParameter("@Count", item.Count));
                paramList.Add(new SqlParameter("@Money", item.Money));
                paramList.Add(new SqlParameter("@Remark", item.Remark));
                DataAccessUtil.ExecuteNonQuery(sql, paramList, (SqlTransaction)trans);
            }
            bill.ID = newID;
        }