コード例 #1
0
        public Type814ServiceMeterTou[] ListServiceMeterTous(int meterKey)
        {
            using (var connection = new SqlConnection(connectionString))
                using (var command = connection.CreateCommand("esp_814ServiceMeterTOUList"))
                {
                    command.AddWithValue("@Meter_Key", meterKey);

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

                    var collection = new List <Type814ServiceMeterTou>();
                    using (var reader = command.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            var item = new Type814ServiceMeterTou
                            {
                                TouKey   = reader.GetInt32("TOU_Key"),
                                MeterKey = meterKey,
                            };

                            reader.TryGetString("TOUCode", x => item.TouCode = x);
                            reader.TryGetString("MeasurementType", x => item.MeasurementType = x);

                            collection.Add(item);
                        }

                        return(collection.ToArray());
                    }
                }
        }
コード例 #2
0
        public Type814ServiceMeterTou ParseServiceMeterTou(XElement element, IDictionary <string, XNamespace> namespaces)
        {
            XNamespace empty;

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

            var model = new Type814ServiceMeterTou
            {
                TouCode         = element.GetChildText(empty + "TOUCode"),
                MeasurementType = element.GetChildText(empty + "MeasurementType"),
            };

            return(model);
        }
コード例 #3
0
        public int InsertServiceMeterTou(Type814ServiceMeterTou model)
        {
            using (var connection = new SqlConnection(connectionString))
                using (var command = connection.CreateCommand("csp814ServiceMeterTOUInsert"))
                {
                    command.AddWithValue("@Meter_Key", model.MeterKey)
                    .AddWithValue("@TOUCode", model.TouCode)
                    .AddWithValue("@MeasurementType", model.MeasurementType);

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

                    command.ExecuteNonQuery();

                    model.TouKey = 1;
                    return(1);
                }
        }
コード例 #4
0
        public void When_Saving_Header_With_Any_Service_Meter_TOUs_Then_Insert_Service_Meter_Tou_Is_Called()
        {
            // arrange
            const int serviceMeterKey = 2;

            var tou = new Type814ServiceMeterTou {
                TouCode = "mock"
            };

            var meter = new Type814ServiceMeter();

            meter.AddTou(tou);

            var service = new Type814Service();

            service.AddMeter(meter);

            var header = new Type814Header();

            header.AddService(service);

            dataAccess.Stub(x => x.InsertHeader(Arg.Is(header)))
            .Return(1);

            dataAccess.Stub(x => x.InsertService(Arg.Is(service)))
            .Return(1);

            dataAccess.Stub(x => x.InsertServiceMeter(Arg.Is(meter)))
            .Return(serviceMeterKey);

            dataAccess.Expect(x => x.InsertServiceMeterTou(Arg.Is(tou)))
            .Return(1);

            // act
            concern.SaveHeader(header);

            // assert
            Assert.AreEqual(serviceMeterKey, tou.MeterKey);

            dataAccess.VerifyAllExpectations();
        }