コード例 #1
0
        private void gridMain_PreviewMouseLeftButtonUp(object sender, MouseButtonEventArgs e)
        {
            try
            {
                int rowHandle = gridMainView.GetRowHandleByMouseEventArgs(e);
                if (rowHandle == GridControl.InvalidRowHandle)
                {
                    return;
                }

                if (gridMain.IsGroupRowHandle(rowHandle))
                {
                    return;
                }                                                    // A group row has been double clicked

                EmsStock target = gridMain.SelectedItem as EmsStock;

                if (null != target)
                {
                    CurrentStock = target;
                    SearchStockDetail(target.STOCK_INSP_DT);
                }
            }
            catch (Exception err)
            {
                this.BaseClass.Error(err);
            }
        }
コード例 #2
0
        /// <summary>
        /// Detail Grid Data Binding
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void gridMain_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            int rowHandle = gridMainView.GetRowHandleByMouseEventArgs(e);

            if (rowHandle == GridControl.InvalidRowHandle)
            {
                return;
            }

            if (gridMain.IsGroupRowHandle(rowHandle))
            {
                return;
            }                                                    // A group row has been double clicked

            EmsStock target = gridMain.SelectedItem as EmsStock;

            if (null != target)
            {
                CurrentStock = target;
                SearchStockDetail(target.STOCK_INSP_DT);
            }
        }
コード例 #3
0
        private void btnRegDt_Click(object sender, MouseButtonEventArgs e)
        {
            using (E2002_01P frmRegDt = new E2002_01P())
            {
                frmRegDt.ShowDialog();

                if (frmRegDt.IsSaved)
                {
                    StockList.Insert(0, frmRegDt.CurrentStock);

                    gridMain.View.FocusedRowHandle = 0;
                    gridMain.SelectedItem          = (gridMain.ItemsSource as ObservableCollection <EmsStock>)[0];

                    EmsStock target = gridMain.SelectedItem as EmsStock;

                    if (null != target)
                    {
                        CurrentStock = target;
                        SearchStockDetail(target.STOCK_INSP_DT);
                    }
                }
            }
        }
コード例 #4
0
        /// <summary>
        /// 저장
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSave_Click(object sender, MouseButtonEventArgs e)
        {
            if (this.tbxManager.Tag == null)
            {
                // 담당자를 입력하세요.
                this.BaseClass.MsgError("ERR_INPUT_MGNR");
                return;
            }

            if (this.tbxManager.Tag.ToString().Length == 0)
            {
                // 담당자를 입력하세요.
                this.BaseClass.MsgError("ERR_INPUT_MGNR");
                return;
            }

            if (null != tbxManager.Tag && !string.IsNullOrEmpty(tbxManager.Tag.ToString()))
            {
                using (BaseDataAccess da = new BaseDataAccess())
                {
                    try
                    {
                        string _SUCCESS_CODE = "100";

                        var _USER_ID = this.BaseClass.UserID;

                        da.BeginTransaction();

                        var strInspDate = this.BaseClass.GetCalendarValue(this.dtInsp);

                        var param = new Dictionary <string, object>
                        {
                            { "P_CENTER_CD", this.BaseClass.CenterCD },
                            { "P_MNGR_ID", tbxManager.Tag.ToString() },         // 관리자
                            //{ "P_STOCK_INSP_DT", new DateTime(dtInsp.DateTime.Year, dtInsp.DateTime.Month, dtInsp.DateTime.Day) },  // 조사 일자
                            { "P_STOCK_INSP_DT", strInspDate },
                            { "P_NOTE", tbxNote.Text.Trim() },      // 비고
                            { "P_USER_ID", _USER_ID }
                        };

                        var    strOutParam = new[] { "P_RESULT" };
                        string callProc    = "PK_EMS_ESPA002_01P.SP_EMS_STOCK_INSP_DT_INSERT";

                        var outData = da.GetSpDataSet(
                            callProc                             // 호출 프로시저
                            , param                              // Input 파라메터
                            , strOutParam                        // Output 파라메터
                            );

                        if (outData.Tables[0].Rows.Count > 0)
                        {
                            if (outData.Tables[0].Rows[0]["CODE"].ToString() != _SUCCESS_CODE)
                            {
                                _SUCCESS_CODE = "0";
                                da.RollbackTransaction();
                                BaseClass.MsgInfo(outData.Tables[0].Rows[0]["MSG"].ToString(), BaseEnumClass.CodeMessage.MESSAGE);
                            }
                        }
                        else
                        {
                            _SUCCESS_CODE = "0";
                            da.RollbackTransaction();
                            this.BaseClass.MsgError("INPUT_TYPE_ERR");
                        }

                        if (_SUCCESS_CODE == "100")
                        {
                            da.CommitTransaction();
                            //this.ChangeStatusLabelEvent(HelperClass.GetMessageByCountryCode("CMPT_SAVE_DATA"));

                            // 저장되었습니다.
                            this.BaseClass.MsgInfo("CMPT_SAVE");
                            IsSaved = true;

                            CurrentStock               = new EmsStock();
                            CurrentStock.MNGR_ID       = tbxManager.Tag.ToString().Trim();
                            CurrentStock.MNGR_NM       = tbxManager.Text.ToString().Trim();
                            CurrentStock.INSP_STAT_CD  = "S";
                            CurrentStock.STOCK_INSP_DT = new DateTime(dtInsp.DateTime.Year, dtInsp.DateTime.Month, dtInsp.DateTime.Day);
                            CurrentStock.NOTE          = tbxNote.Text.Trim();
                            CurrentStock.IsUpdate      = false;

                            this.Close();
                        }
                    }
                    catch (Exception ex)
                    {
                        da.RollbackTransaction();
                        this.BaseClass.MsgError(ex.Message, BaseEnumClass.CodeMessage.MESSAGE);
                    }
                }
            }
        }
コード例 #5
0
        /// <summary>
        /// Confirm
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnStockConfirm_Click(object sender, MouseButtonEventArgs e)
        {
            EmsStock target = gridMain.SelectedItem as EmsStock;

            if (null == target)
            {
                return;
            }

            if ("CMPT" == target.INSP_STAT_CD)
            {
                // 이미 확정된 항목입니다.
                this.BaseClass.MsgError("EMS_ALREADY_F");
                return;
            }

            var strConDate   = target.STOCK_INSP_DT.ToString("yyyy-MM-dd");
            var strConString = this.BaseClass.GetResourceValue("EMS_REF_FF");    // 재고 조사를 확정합니다.

            var strMessage = this.BaseClass.GetResourceValue("ASK_EMS_CONF_COND", BaseEnumClass.ResourceType.MESSAGE);

            this.BaseClass.MsgQuestion(string.Format(strMessage, strConDate), BaseEnumClass.CodeMessage.MESSAGE);

            //this.BaseClass.MsgQuestion($"{strConDate}{strConString}", BaseEnumClass.CodeMessage.MESSAGE);
            if (this.BaseClass.BUTTON_CONFIRM_YN != true)
            {
                return;
            }

            if (!StockDetailSave(true))
            {
                return;
            }

            using (BaseDataAccess da = new BaseDataAccess())
            {
                try
                {
                    string _SUCCESS_CODE = "100";

                    var _USER_ID = this.BaseClass.UserID;

                    da.BeginTransaction();


                    var param = new Dictionary <string, object>
                    {
                        { "P_CENTER_CD", this.BaseClass.CenterCD },
                        { "P_STOCK_INSP_DT", new DateTime(target.STOCK_INSP_DT.Year, target.STOCK_INSP_DT.Month, target.STOCK_INSP_DT.Day) },
                        { "P_INSP_STAT_CD", "CMPT" },   // 확정 (value : F -> CMPT로 수정)
                        { "P_USER_ID", _USER_ID }
                    };

                    var    strOutParam = new[] { "P_RESULT" };
                    string callProc    = "PK_EMS_ESPA002.SP_EMS_STOCK_FIX";

                    var outData = da.GetSpDataSet(
                        callProc                           // 호출 프로시저
                        , param                            // Input 파라메터
                        , strOutParam                      // Output 파라메터
                        );

                    if (outData.Tables[0].Rows.Count > 0)
                    {
                        if (outData.Tables[0].Rows[0]["CODE"].ToString() != _SUCCESS_CODE)
                        {
                            _SUCCESS_CODE = "0";
                            da.RollbackTransaction();
                            BaseClass.MsgInfo(outData.Tables[0].Rows[0]["MSG"].ToString(), BaseEnumClass.CodeMessage.MESSAGE);
                        }
                    }
                    else
                    {
                        _SUCCESS_CODE = "0";
                        da.RollbackTransaction();
                        this.BaseClass.MsgError("ERR_INPUT_TYPE");
                    }

                    if (_SUCCESS_CODE == "100")
                    {
                        da.CommitTransaction();

                        //this.ChangeStatusLabelEvent(HelperClass.GetMessageByCountryCode("CMPT_SAVE_DATA"));

                        // 확정되었습니다.
                        this.BaseClass.MsgInfo("CMPT_CONF");

                        focused_handle = gridMain.View.FocusedRowHandle;
                        SearchStock();
                    }
                }
                catch (Exception ex)
                {
                    da.RollbackTransaction();
                    this.BaseClass.Error(ex);
                    this.BaseClass.MsgError(ex.Message, BaseEnumClass.CodeMessage.MESSAGE);
                }
            }
        }
コード例 #6
0
        /// <summary>
        /// 삭제
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnDel_Click(object sender, MouseButtonEventArgs e)
        {
            EmsStock target = gridMain.SelectedItem as EmsStock;

            if (null == target)
            {
                return;
            }

            if ("CMPT" == target.INSP_STAT_CD)
            {
                // 미확정 항목만 삭제 됩니다.
                this.BaseClass.MsgError("EMS_NOF_DEL");
                return;
            }

            var strConDate   = target.STOCK_INSP_DT.ToString("yyyy-MM-dd");
            var strConString = this.BaseClass.GetResourceValue("EMS_REFHIS_DEL");      // 재고 조사 이력을 삭제합니다.

            this.BaseClass.MsgQuestion($"{strConDate} : {strConString}", BaseEnumClass.CodeMessage.MESSAGE);
            if (this.BaseClass.BUTTON_CONFIRM_YN != true)
            {
                return;
            }

            using (BaseDataAccess da = new BaseDataAccess())
            {
                string _SUCCESS_CODE = "100";

                try
                {
                    da.BeginTransaction();

                    var _USER_ID         = this.BaseClass.UserID;
                    var strStockInspDate = target.STOCK_INSP_DT.ToString("yyyyMMdd");


                    var param = new Dictionary <string, object>
                    {
                        { "P_CENTER_CD", this.BaseClass.CenterCD },
                        //{ "P_STOCK_INSP_DT", new DateTime(target.STOCK_INSP_DT.Year, target.STOCK_INSP_DT.Month, target.STOCK_INSP_DT.Day) },
                        { "P_STOCK_INSP_DT", strStockInspDate },
                        { "P_USER_ID", _USER_ID }
                    };

                    var    strOutParam = new[] { "P_RESULT" };
                    string callProc    = "PK_EMS_ESPA002.SP_EMS_STOCK_DELETE";

                    var outData = da.GetSpDataSet(
                        callProc                       // 호출 프로시저
                        , param                        // Input 파라메터
                        , strOutParam                  // Output 파라메터
                        );

                    if (outData.Tables[0].Rows.Count > 0)
                    {
                        if (outData.Tables[0].Rows[0]["CODE"].ToString() != _SUCCESS_CODE)
                        {
                            _SUCCESS_CODE = "0";
                            da.RollbackTransaction();
                            BaseClass.MsgInfo(outData.Tables[0].Rows[0]["MSG"].ToString(), BaseEnumClass.CodeMessage.MESSAGE);
                        }
                    }
                    else
                    {
                        _SUCCESS_CODE = "0";
                        da.RollbackTransaction();
                        this.BaseClass.MsgError("ERR_INPUT_TYPE");
                    }

                    if (_SUCCESS_CODE == "100")
                    {
                        da.CommitTransaction();

                        StockList.Remove(target);

                        gridMain.RefreshData();
                        //this.ChangeStatusLabelEvent(HelperClass.GetMessageByCountryCode("CMPT_DELETE"));
                    }
                }
                catch (Exception ex)
                {
                    da.RollbackTransaction();
                    this.BaseClass.MsgError(ex.Message, BaseEnumClass.CodeMessage.MESSAGE);
                }
            }
        }
コード例 #7
0
        /// <summary>
        /// 조회 함수
        /// </summary>
        void SearchStock()
        {
            try
            {
                var strStartDate = this.BaseClass.GetCalendarValue(this.searchStart);
                var strEndDate   = this.BaseClass.GetCalendarValue(this.searchEnd);

                var param = new Dictionary <string, object>
                {
                    { "P_CENTER_CD", this.BaseClass.CenterCD },
                    { "P_FROM_DT", strStartDate },
                    { "P_TO_DT", strEndDate }
                };

                var strOutParam = new[] { "P_EMS_STOCK_LIST" };
                //string callProc = "PK_EMS_ESPA002.SP_EMS_STOCK_SEL";
                string callProc = "PK_EMS_ESPA002.SP_EMS_STOCK_PERIOD_SEL";

                using (BaseDataAccess da = new BaseDataAccess())
                {
                    var outData = da.GetSpDataSet(
                        callProc                           // 호출 프로시저
                        , param                            // Input 파라메터
                        , strOutParam                      // Output 파라메터
                        );

                    if (null != StockList)
                    {
                        StockList.Clear();
                        StockList = null;
                    }

                    StockList = new ObservableCollection <EmsStock>();

                    if (outData.Tables[0].Rows.Count > 0)
                    {
                        StockList.ToObservableCollection(outData.Tables[0]);

                        //this.ChangeStatusLabelEvent(HelperClass.GetMessageByCountryCode("CMPT_INQ"));
                    }
                    else
                    {
                        //this.ChangeStatusLabelEvent(HelperClass.GetMessageByCountryCode("NO_INQ_DATA"));
                    }

                    gridMain.ItemsSource = StockList;

                    if (outData.Tables[0].Rows.Count > 0)
                    {
                        if (-1 < focused_handle)
                        {
                            gridMain.View.FocusedRowHandle = focused_handle;
                            gridMain.SelectedItem          = (gridMain.ItemsSource as ObservableCollection <EmsStock>)[focused_handle];
                        }
                        else
                        {
                            gridMain.View.FocusedRowHandle = 0;
                            gridMain.SelectedItem          = (gridMain.ItemsSource as ObservableCollection <EmsStock>)[0];
                        }

                        EmsStock target = gridMain.SelectedItem as EmsStock;

                        if (null != target)
                        {
                            CurrentStock = target;
                            SearchStockDetail(target.STOCK_INSP_DT);
                        }
                    }
                    else
                    {
                        CurrentStock = null;

                        if (null != CurrentStockDetail)
                        {
                            CurrentStockDetail.Clear();
                            CurrentStockDetail = null;
                        }
                    }

                    this.btnConfirmHigh.IsEnabled   = true;
                    this.btnSaveHigh.IsEnabled      = true;
                    this.btnAddHigh.IsEnabled       = true;
                    this.btnRowDeleteHigh.IsEnabled = true;
                }
            }
            catch (Exception ex)
            {
                this.BaseClass.Error(ex);
                this.BaseClass.MsgError(ex.Message, BaseEnumClass.CodeMessage.MESSAGE);
            }
        }