예제 #1
0
        public int InsertUnMeterSummary(Type867UnMeterSummary model)
        {
            using (var connection = new SqlConnection(_connectionString))
                using (var command = connection.CreateCommand("csp867UnmeterSummaryInsert"))
                {
                    SqlParameter keyParameter;

                    command.AddWithValue("@867_Key", model.HeaderKey)
                    .AddIfNotEmptyOrDbNull("@TypeCode", model.TypeCode)
                    .AddIfNotEmptyOrDbNull("@MeterUOM", model.MeterUom)
                    .AddIfNotEmptyOrDbNull("@MeterInterval", model.MeterInterval)
                    .AddWithValue("@CommodityCode", model.CommodityCode)
                    .AddWithValue("@UtilityRateServiceClass", model.UtilityRateServiceClass)
                    .AddWithValue("@RateSubClass", model.RateSubClass)
                    .AddOutParameter("@UnmeterSummary_Key", SqlDbType.Int, out keyParameter);

                    if (connection.State != ConnectionState.Open)
                    {
                        connection.Open();
                    }

                    command.ExecuteNonQuery();

                    if (keyParameter.Value == null)
                    {
                        throw new Exception();
                    }

                    var key = (int)keyParameter.Value;
                    model.UnMeterSummaryKey = key;

                    return(key);
                }
        }
예제 #2
0
        public Type867UnMeterSummary ParseUnMeterSummary(XElement element, IDictionary <string, XNamespace> namespaces)
        {
            XNamespace empty;

            if (!namespaces.TryGetValue(string.Empty, out empty))
            {
                empty = XNamespace.None;
            }

            var model = new Type867UnMeterSummary
            {
                TypeCode                = element.GetChildText(empty + "TypeCode"),
                MeterUom                = element.GetChildText(empty + "MeterUOM"),
                CommodityCode           = element.GetChildText(empty + "CommodityCode"),
                UtilityRateServiceClass = element.GetChildText(empty + "UtilityRateServiceClass"),
                RateSubClass            = element.GetChildText(empty + "RateSubClass")
            };

            var quantitiesLoopElement = element.Element(empty + "UnmeterSummaryQtyLoop");

            if (quantitiesLoopElement != null)
            {
                var quantityElements = quantitiesLoopElement.Elements(empty + "UnmeterSummaryQty");
                foreach (var quantityElement in quantityElements)
                {
                    var quantityModel = ParseUnMeterSummaryQty(quantityElement, namespaces);
                    model.AddQuantity(quantityModel);
                }
            }

            return(model);
        }
예제 #3
0
 public int InsertUnMeterSummary(Type867UnMeterSummary model)
 {
     return(-1);
 }