// GET: Order
        public ActionResult Index()
        {
            // Model(業務ロジッククラス) に渡すパラメータを定義
            OrderParameterValue param
                = new OrderParameterValue(
                      this.RouteData.Values["controller"].ToString(),
                      this.RouteData.Values["action"].ToString(),
                      "GetOrders",
                      "SQL", //string.Empty,
                      new MyUserInfo("user01", this.UserInfo.IPAddress));

            // Model(業務ロジッククラス) のメソッドを実行
            OrdersLogic      lb       = new OrdersLogic();
            OrderReturnValue retValue = (OrderReturnValue)lb.DoBusinessLogic(param);

            if (retValue.ErrorFlag == true)
            {
                // エラーが発生した場合は、エラー内容を Model クラスに格納
                string Message = "ErrorMessageID:" + retValue.ErrorMessageID + ";";
                Message         += "ErrorMessage:" + retValue.ErrorMessage + ";";
                Message         += "ErrorInfo:" + retValue.ErrorInfo;
                retValue.Message = Message;
            }

            // ビューに戻り値クラスのオブジェクトを渡し、ビューを表示する
            return(View(retValue));
        }
        public ActionResult Order(string OrderId)
        {
            // Model(業務ロジッククラス) に渡すパラメータを定義
            OrderParameterValue param
                = new OrderParameterValue(
                      this.RouteData.Values["controller"].ToString(),
                      this.RouteData.Values["action"].ToString(),
                      "GetOrderById",
                      "SQL", //string.Empty,
                      new MyUserInfo("user01", this.UserInfo.IPAddress));

            param.OrderId = OrderId;

            // Model(業務ロジッククラス) のメソッドを実行
            OrdersLogic      logic    = new OrdersLogic();
            OrderReturnValue retValue = (OrderReturnValue)logic.DoBusinessLogic(param);

            if (retValue.ErrorFlag == true)
            {
                // エラーが発生した場合は、エラー内容を Model クラスに格納
                string Message = "ErrorMessageID:" + retValue.ErrorMessageID + ";";
                Message         += "ErrorMessage:" + retValue.ErrorMessage + ";";
                Message         += "ErrorInfo:" + retValue.ErrorInfo;
                retValue.Message = Message;
            }
            else
            {
                // 正常に終了した場合は、DB から取得した値を Session に格納
                Session["Orders"]       = retValue.Orders;
                Session["OrderDetails"] = retValue.OrderDetails;
            }
            return(View(retValue));
        }
Beispiel #3
0
        public ActionResult UpdateDatabase()
        {
            // 修正内容を含む、注文情報を Session から取得
            DataTable orderTable       = (DataTable)Session["Orders"];
            DataTable orderDetailTable = (DataTable)Session["OrderDetails"];

            // Model(業務ロジッククラス) に渡すパラメータを定義
            OrderParameterValue param
                = new OrderParameterValue(
                      this.RouteData.Values["controller"].ToString(),
                      this.RouteData.Values["action"].ToString(),
                      "UpdateOrder",
                      "SQL", //string.Empty,
                      new MyUserInfo("user01", this.UserInfo.IPAddress));

            param.Orders       = orderTable;
            param.OrderDetails = orderDetailTable;

            // Model(業務ロジッククラス) のメソッドを実行
            OrdersLogic      logic    = new OrdersLogic();
            OrderReturnValue retValue = (OrderReturnValue)logic.DoBusinessLogic(param);

            // Model の修正内容を確定させる
            orderTable.AcceptChanges();
            orderDetailTable.AcceptChanges();

            // ビューを表示する
            retValue.Orders       = orderTable;
            retValue.OrderDetails = orderDetailTable;
            return(View("Order", retValue));
        }
Beispiel #4
0
        public OrderReturnValue GetOrderById(OrderParameterValue orderParameter)
        {
            // 戻り値クラスを作成する
            OrderReturnValue returnValue = new OrderReturnValue();

            // 自動生成した D 層クラスのインスタンスを生成する
            DaoOrders        orderDao        = new DaoOrders(this.Dam);
            DaoOrder_Details orderDetailsDao = new DaoOrder_Details(this.Dam);

            // 注文情報、注文詳細情報を格納するための DataTable
            System.Data.DataTable orderTable        = new System.Data.DataTable();
            System.Data.DataTable orderDetailsTable = new System.Data.DataTable();

            // パラメータを設定する
            orderDao.PK_OrderID        = orderParameter.OrderId;
            orderDetailsDao.PK_OrderID = orderParameter.OrderId;

            // 注文 ID をもとに注文情報を検索する
            orderDao.D2_Select(orderTable);
            orderDetailsDao.D2_Select(orderDetailsTable);

            // 戻り値クラスに結果セットを格納し、B 層クラスに返す
            returnValue.Orders       = DataToPoco.DataTableToList <OrderViweModel>(orderTable);
            returnValue.OrderDetails = DataToPoco.DataTableToList <Order_DetailViweModel>(orderDetailsTable);
            return(returnValue);
        }
Beispiel #5
0
        public OrderReturnValue UpdateOrder(OrderParameterValue orderParameter)
        {
            // 戻り値クラスを作成する
            OrderReturnValue returnValue = new OrderReturnValue();

            // 自動生成した D 層クラスのインスタンスを生成する
            DaoOrders        orderDao        = new DaoOrders(this.Dam);
            DaoOrder_Details orderDetailsDao = new DaoOrder_Details(this.Dam);

            // 注文情報、注文詳細情報を格納するための DataTable
            System.Data.DataTable orderTable        = orderParameter.Orders;
            System.Data.DataTable orderDetailsTable = orderParameter.OrderDetails;

            // レコードの状態を確認し、修正されていたら DB を更新する
            if (orderTable.Rows[0].RowState == System.Data.DataRowState.Modified)
            {
                // 注文情報(サマリ)更新用のパタメータを設定する
                orderDao.PK_OrderID                = orderTable.Rows[0]["OrderId"];
                orderDao.Set_OrderDate_forUPD      = orderTable.Rows[0]["OrderDate"];
                orderDao.Set_RequiredDate_forUPD   = orderTable.Rows[0]["RequiredDate"];
                orderDao.Set_ShippedDate_forUPD    = orderTable.Rows[0]["ShippedDate"];
                orderDao.Set_ShipVia_forUPD        = orderTable.Rows[0]["ShipVia"];
                orderDao.Set_Freight_forUPD        = orderTable.Rows[0]["Freight"];
                orderDao.Set_ShipName_forUPD       = orderTable.Rows[0]["ShipName"];
                orderDao.Set_ShipAddress_forUPD    = orderTable.Rows[0]["ShipAddress"];
                orderDao.Set_ShipCity_forUPD       = orderTable.Rows[0]["ShipCity"];
                orderDao.Set_ShipRegion_forUPD     = orderTable.Rows[0]["ShipRegion"];
                orderDao.Set_ShipPostalCode_forUPD = orderTable.Rows[0]["ShipPostalCode"];
                orderDao.Set_ShipCountry_forUPD    = orderTable.Rows[0]["ShipCountry"];

                // 注文情報(サマリ)を更新する
                orderDao.D3_Update();
            }

            foreach (System.Data.DataRow row in orderDetailsTable.Rows)
            {
                // レコードの状態を確認し、修正されていたら DB を更新する
                if (row.RowState == System.Data.DataRowState.Modified)
                {
                    // 注文情報(明細)更新用のパラメータを設定する
                    orderDetailsDao.PK_OrderID           = row["OrderId"];
                    orderDetailsDao.PK_ProductID         = row["ProductId"];
                    orderDetailsDao.Set_UnitPrice_forUPD = row["UnitPrice"];
                    orderDetailsDao.Set_Quantity_forUPD  = row["Quantity"];
                    orderDetailsDao.Set_Discount_forUPD  = row["Discount"];

                    // 注文情報(明細)を更新する
                    orderDetailsDao.D3_Update();
                }
            }

            // 戻り値クラスをB層クラスに返す(更新処理のため、戻り値はなし)
            return(returnValue);
        }
        private void UOC_UpdateOrder(OrderParameterValue orderParameter)
        {
            // DAO 集約クラスを生成する
            ConsolidatedLayerD facade = new ConsolidatedLayerD(this.GetDam());

            // 注文情報をDBに登録する
            OrderReturnValue returnValue = facade.UpdateOrder(orderParameter);

            // 戻り値クラスを返す
            this.ReturnValue = returnValue;
        }
        private void UOC_GetOrderById(OrderParameterValue orderParameter)
        {
            // DAO 集約クラスを生成する
            ConsolidatedLayerD facade = new ConsolidatedLayerD(this.GetDam());

            // 注文情報の詳細を取得する
            OrderReturnValue returnValue = facade.GetOrderById(orderParameter);

            // 戻り値クラスを返す
            this.ReturnValue = returnValue;
        }
Beispiel #8
0
        public OrderReturnValue UpdateOrder(OrderParameterValue orderParameter)
        {
            // 戻り値クラスを作成する
            OrderReturnValue returnValue = new OrderReturnValue();

            // 自動生成した D 層クラスのインスタンスを生成する
            DaoOrders        orderDao        = new DaoOrders(this.Dam);
            DaoOrder_Details orderDetailsDao = new DaoOrder_Details(this.Dam);

            // レコードの状態を確認し、修正されていたら DB を更新する
            OrderViweModel ovm = orderParameter.Orders[0];

            if (ovm.Modified == true)
            {
                // 注文情報(サマリ)更新用のパタメータを設定する
                orderDao.PK_OrderID                = ovm.OrderID.Value;
                orderDao.Set_OrderDate_forUPD      = ovm.OrderDate.Value;
                orderDao.Set_RequiredDate_forUPD   = ovm.RequiredDate.Value;
                orderDao.Set_ShippedDate_forUPD    = ovm.ShippedDate.Value;
                orderDao.Set_ShipVia_forUPD        = ovm.ShipVia.Value;
                orderDao.Set_Freight_forUPD        = ovm.Freight.Value;
                orderDao.Set_ShipName_forUPD       = ovm.ShipName;
                orderDao.Set_ShipAddress_forUPD    = ovm.ShipAddress;
                orderDao.Set_ShipCity_forUPD       = ovm.ShipCity;
                orderDao.Set_ShipRegion_forUPD     = ovm.ShipRegion;
                orderDao.Set_ShipPostalCode_forUPD = ovm.ShipPostalCode;
                orderDao.Set_ShipCountry_forUPD    = ovm.ShipCountry;

                // 注文情報(サマリ)を更新する
                orderDao.D3_Update();
            }

            foreach (Order_DetailViweModel odvm in orderParameter.OrderDetails)
            {
                // レコードの状態を確認し、修正されていたら DB を更新する
                if (odvm.Modified == true)
                {
                    // 注文情報(明細)更新用のパラメータを設定する
                    orderDetailsDao.PK_OrderID           = odvm.OrderID.Value;
                    orderDetailsDao.PK_ProductID         = odvm.ProductID.Value;
                    orderDetailsDao.Set_UnitPrice_forUPD = odvm.UnitPrice.Value;
                    orderDetailsDao.Set_Quantity_forUPD  = odvm.Quantity.Value;
                    orderDetailsDao.Set_Discount_forUPD  = odvm.Discount.Value;

                    // 注文情報(明細)を更新する
                    orderDetailsDao.D3_Update();
                }
            }

            // 戻り値クラスをB層クラスに返す(更新処理のため、戻り値はなし)
            return(returnValue);
        }
Beispiel #9
0
        public OrderReturnValue GetOrders(OrderParameterValue orderParameter)
        {
            // 戻り値クラスを作成する
            OrderReturnValue returnValue = new OrderReturnValue();

            // 共通 DAO を作成する (SQL ファイルとして、4.5.2 項で作成したファイルを使用する)
            CmnDao dao = new CmnDao(this.Dam);

            dao.SQLFileName = "SelectOrders.sql";

            // DB から注文情報一覧を取得し、戻り値クラスに注文情報一覧を格納し、B 層クラスに返す
            using (IDataReader dr = dao.ExecSelect_DR())
            {
                returnValue.Orders = DataToPoco.DataReaderToList <OrderViweModel>(dr);
            }

            return(returnValue);
        }
Beispiel #10
0
        public OrderReturnValue GetOrders(OrderParameterValue orderParameter)
        {
            // 戻り値クラスを作成する
            OrderReturnValue returnValue = new OrderReturnValue();

            // 共通 DAO を作成する (SQL ファイルとして、4.5.2 項で作成したファイルを使用する)
            CmnDao dao = new CmnDao(this.Dam);

            dao.SQLFileName = "SelectOrders.sql";

            // 結果格納用の DataTable
            System.Data.DataTable table = new System.Data.DataTable();

            // DB から注文情報一覧を取得し、DataTable に格納する
            dao.ExecSelectFill_DT(table);

            // 戻り値クラスに注文情報一覧を格納し、B 層クラスに返す
            returnValue.Orders = table;
            return(returnValue);
        }
        public ActionResult UpdateDatabase()
        {
            // 修正内容を含む、注文情報を Session から取得
            List <OrderViweModel>        ovms  = (List <OrderViweModel>)Session["Orders"];
            List <Order_DetailViweModel> odvms = (List <Order_DetailViweModel>)Session["OrderDetails"];

            // Model(業務ロジッククラス) に渡すパラメータを定義
            OrderParameterValue param
                = new OrderParameterValue(
                      this.RouteData.Values["controller"].ToString(),
                      this.RouteData.Values["action"].ToString(),
                      "UpdateOrder",
                      "SQL", //string.Empty,
                      new MyUserInfo("user01", this.UserInfo.IPAddress));

            param.Orders       = ovms;
            param.OrderDetails = odvms;

            // Model(業務ロジッククラス) のメソッドを実行
            OrdersLogic      logic    = new OrdersLogic();
            OrderReturnValue retValue = (OrderReturnValue)logic.DoBusinessLogic(param);

            // Model の修正内容を確定させる
            foreach (OrderViweModel ovm in ovms)
            {
                ovm.Modified = false;
            }
            foreach (Order_DetailViweModel odvm in odvms)
            {
                odvm.Modified = false;
            }

            // ビューを表示する
            retValue.Orders       = ovms;
            retValue.OrderDetails = odvms;
            return(View("Order", retValue));
        }