Beispiel #1
0
        /// <summary>
        /// Check screen authority and permission
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public ActionResult CMS021_Authority(FlowMenuScreenParameter param)
        {
            ObjectResultData res = new ObjectResultData();

            try
            {
                #region Check screen permission

                if (CheckUserPermission("CMS021", FunctionID.C_FUNC_ID_OPERATE) == false)
                {
                    res.AddErrorMessage(MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0053);
                    return(Json(res));
                }

                #endregion
                #region Check contract code has in session

                //dsTransDataModel dsTrans = CommonUtil.dsTransData;
                //if (dsTrans.dtCommonSearch != null)
                //{
                //    if (CommonUtil.IsNullOrEmpty(dsTrans.dtCommonSearch.ContractCode) == false)
                //    {
                //        param.Condition = new FlowMenuCondition()
                //        {
                //            ContractCode = dsTrans.dtCommonSearch.ContractCode
                //        };
                //    }
                //}
                if (param.CommonSearch != null)
                {
                    if (CommonUtil.IsNullOrEmpty(param.CommonSearch.ContractCode) == false)
                    {
                        param.Condition = new FlowMenuCondition()
                        {
                            ContractCode = param.CommonSearch.ContractCode
                        };
                    }
                }

                #endregion
            }
            catch (Exception ex)
            {
                res.AddErrorMessage(ex);
            }

            return(InitialScreenEnvironment <FlowMenuScreenParameter>("CMS021", param, res));
        }
Beispiel #2
0
        public ActionResult CMS021()
        {
            try
            {
                FlowMenuScreenParameter param = GetScreenObject <FlowMenuScreenParameter>();
                if (param != null)
                {
                    if (param.Condition != null)
                    {
                        ViewBag.ContractCode = param.Condition.ContractCode;
                    }
                }

                ViewBag.ScreenID = "CMS021";
            }
            catch (Exception)
            {
            }

            return(View());
        }
 /// <summary>
 /// Getting flow menu id
 /// </summary>
 /// <param name="cond"></param>
 public void CMS023_SelectFlowMenuID(FlowMenu cond)
 {
     try
     {
         if (cond.LinkControl == FlowMenu.LINK_CONTROL.CANCEL_CONTRACT_BEFORE_START)
         {
             FlowMenuScreenParameter param = GetScreenObject <FlowMenuScreenParameter>();
             if (param.doRentalContractDataForFlowMenu != null)
             {
                 if (param.doRentalContractDataForFlowMenu.ServiceTypeCode == ServiceType.C_SERVICE_TYPE_SALE)
                 {
                     cond.Controller = MessageUtil.MODULE_CONTRACT;
                     cond.ObjectID   = "CTS090";
                 }
             }
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
Beispiel #4
0
        /// <summary>
        /// Getting flow menu id
        /// </summary>
        /// <param name="cond"></param>
        /// <returns></returns>
        public ActionResult SelectFlowMenuID(FlowMenu cond)
        {
            ObjectResultData res = new ObjectResultData();

            try
            {
                cond.SubObjectID = "0";

                FlowMenuScreenParameter param = GetScreenObject <object>() as FlowMenuScreenParameter;
                if (param != null)
                {
                    string     methodName = string.Format("{0}_SelectFlowMenuID", param.ScreenID);
                    MethodInfo method     = this.GetType().GetMethod(methodName);
                    if (method != null)
                    {
                        method.Invoke(this, new object[] { cond });
                    }
                }

                if (cond.ObjectID == null)
                {
                    cond.Controller = MessageUtil.MODULE_COMMON;
                    cond.ObjectID   = "CMS026";

                    switch (cond.LinkControl)
                    {
                    case FlowMenu.LINK_CONTROL.REGISTER_QUOTATION:
                    {
                        cond.PopupSubMenuID = "P01";
                        cond.SetSubController("QUS", MessageUtil.MODULE_QUOTATION);
                    } break;

                    case FlowMenu.LINK_CONTROL.APPROVE_CONTRACT:
                    {
                        cond.PopupSubMenuID = "P02";
                        cond.SetSubController("CTS", MessageUtil.MODULE_CONTRACT);
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_STOCK_OUT_INSTRUMENT:
                    {
                        cond.PopupSubMenuID = "P03";
                        cond.SetSubController("IVS", MessageUtil.MODULE_INVENTORY);
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_CONTRACT_CHANGE:
                    {
                        cond.PopupSubMenuID = "P12";
                        cond.SetSubController("CTS", MessageUtil.MODULE_CONTRACT);
                    } break;

                    case FlowMenu.LINK_CONTROL.CUSTOMER_CORRESPONDENT_SUPPORT:
                    {
                        cond.PopupSubMenuID = "P05";
                        cond.SetSubController("CTS", MessageUtil.MODULE_CONTRACT);

                        if (param.Condition != null)
                        {
                            cond.SetParameter("strIncidentRelevantType", IncidentRelevant.C_INCIDENT_RELEVANT_TYPE_CONTRACT);
                            cond.SetParameter("strIncidentRelevantCode", param.Condition.ContractCode);
                        }
                    } break;

                    case FlowMenu.LINK_CONTROL.AR:
                    {
                        cond.PopupSubMenuID = "P06";
                        cond.SetSubController("CTS", MessageUtil.MODULE_CONTRACT);

                        if (param.Condition != null)
                        {
                            cond.SetParameter("strARRelevantType", ARRelevant.C_AR_RELEVANT_TYPE_CONTRACT);
                            cond.SetParameter("strARRelevantCode", param.Condition.ContractCode);
                        }
                    } break;

                    case FlowMenu.LINK_CONTROL.SEARCH_QUOTATION_INFORMATION:
                    {
                        cond.Controller = MessageUtil.MODULE_QUOTATION;
                        cond.ObjectID   = "QUS010";
                    } break;

                    case FlowMenu.LINK_CONTROL.SEARCH_VIEW_CONTRACT_CUSTOMER_INFORMATION:
                    {
                        cond.PopupSubMenuID = "P08";
                        cond.SetSubController("CMS", MessageUtil.MODULE_COMMON);
                    } break;

                    case FlowMenu.LINK_CONTROL.VIEW_INSTALLATION_INFORMATION:
                    {
                        cond.PopupSubMenuID = "P09";
                        cond.SetSubController("CMS", MessageUtil.MODULE_COMMON);
                        cond.SetSubController("ISS", MessageUtil.MODULE_INSTALLATION);
                    } break;

                    case FlowMenu.LINK_CONTROL.VIEW_INVENTORY_INFORMATION:
                    {
                        cond.PopupSubMenuID = "P10";
                        cond.SetSubController("IVS", MessageUtil.MODULE_INVENTORY);
                    } break;

                    case FlowMenu.LINK_CONTROL.VIEW_BILLING_INFORMATION:
                    {
                        cond.PopupSubMenuID = "P11";
                        cond.SetSubController("CMS", MessageUtil.MODULE_COMMON);
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_GENERATE_CONTRACT_DOCUMENT:
                    {
                        cond.Controller = MessageUtil.MODULE_CONTRACT;
                        cond.ObjectID   = "CTS160";
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_CONTRACT_DOCUMENT_RECEIVING:
                    {
                        cond.Controller = MessageUtil.MODULE_CONTRACT;
                        cond.ObjectID   = "CTS190";
                    } break;

                    case FlowMenu.LINK_CONTROL.CHANGE_CONTRACT_FEE:
                    {
                        cond.Controller = MessageUtil.MODULE_CONTRACT;
                        cond.ObjectID   = "CTS053";
                    } break;

                    case FlowMenu.LINK_CONTROL.CHANGE_NAME_AND_ADDRESS:
                    {
                        cond.Controller = MessageUtil.MODULE_CONTRACT;
                        cond.ObjectID   = "CTS130";
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_CHANGE_BILLING_BASIC:
                    {
                        cond.Controller = MessageUtil.MODULE_BILLING;
                        cond.ObjectID   = "BLS040";
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_STOP_SERVICE:
                    {
                        cond.Controller = MessageUtil.MODULE_CONTRACT;
                        cond.ObjectID   = "CTS100";
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_CANCEL_CONTRACT:
                    {
                        cond.Controller = MessageUtil.MODULE_CONTRACT;
                        cond.ObjectID   = "CTS110";
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_CANCEL_CONTRACT_AFTER_START:
                    {
                        cond.Controller  = MessageUtil.MODULE_CONTRACT;
                        cond.ObjectID    = "CTS110";
                        cond.SubObjectID = "1";
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_INSTALLATION_REQUEST:
                    {
                        cond.Controller = MessageUtil.MODULE_INSTALLATION;
                        cond.ObjectID   = "ISS010";
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_INSTALLATION_MANAGEMENT:
                    {
                        cond.Controller = MessageUtil.MODULE_INSTALLATION;
                        cond.ObjectID   = "ISS050";
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_GENERATED_INSTALLATION_SLIP:
                    {
                        cond.Controller = MessageUtil.MODULE_INSTALLATION;
                        cond.ObjectID   = "ISS030";
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_CHANGE_INSTALLATION_SLIP:
                    {
                        cond.Controller = MessageUtil.MODULE_INSTALLATION;
                        cond.ObjectID   = "ISS030";
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_COMPLETE_INSTALLATION:
                    {
                        cond.Controller = MessageUtil.MODULE_INSTALLATION;
                        cond.ObjectID   = "ISS060";
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_START_SERVICE:
                    {
                        cond.Controller = MessageUtil.MODULE_CONTRACT;
                        cond.ObjectID   = "CTS070";
                    } break;

                    case FlowMenu.LINK_CONTROL.REGISTER_CUSTOMER_ACCEPTANCE:
                    {
                        cond.Controller = MessageUtil.MODULE_BILLING;
                        cond.ObjectID   = "BLS070";

                        if (param.doSaleContractDataForFlowMenu != null)
                        {
                            cond.SetParameter("OCC", param.doSaleContractDataForFlowMenu.OCC);
                            cond.SetParameter("ProcessType", InvoiceProcessType.C_INV_PROCESS_TYPE_ISSUE_SALE);
                        }
                    } break;

                    case FlowMenu.LINK_CONTROL.CANCEL_UN_OPERATED_CONTRACT:
                    {
                        cond.Controller = MessageUtil.MODULE_CONTRACT;
                        cond.ObjectID   = "CTS055";
                    } break;

                    case FlowMenu.LINK_CONTROL.CANCEL_INSTALLATION:
                    {
                        cond.Controller = MessageUtil.MODULE_INSTALLATION;
                        cond.ObjectID   = "ISS070";
                    } break;

                    case FlowMenu.LINK_CONTROL.CANCEL_CONTRACT_BEFORE_START:
                    {
                        cond.Controller = MessageUtil.MODULE_CONTRACT;
                        cond.ObjectID   = "CTS110";
                    } break;

                    case FlowMenu.LINK_CONTROL.SEARCH_INSTALLATION_MANAGEMENT:
                    {
                        cond.Controller = MessageUtil.MODULE_INSTALLATION;
                        cond.ObjectID   = "ISS080";
                    } break;
                    }
                }

                res.ResultData = cond;
            }
            catch (Exception ex)
            {
                res.AddErrorMessage(ex);
            }

            return(Json(res));
        }
Beispiel #5
0
        /// <summary>
        /// Retrieve flow menu data
        /// </summary>
        /// <param name="cond"></param>
        /// <returns></returns>
        public ActionResult RetrieveFlowMenu(FlowMenuCondition cond)
        {
            ObjectResultData res = new ObjectResultData();

            res.MessageType = MessageModel.MESSAGE_TYPE.WARNING;

            try
            {
                #region Validate required field

                ValidatorUtil.BuildErrorMessage(res, this);
                if (res.IsError == true)
                {
                    return(Json(res));
                }

                #endregion
                #region Get basic information

                FlowMenuScreenParameter param = GetScreenObject <FlowMenuScreenParameter>();
                if (param != null)
                {
                    IViewContractHandler chandler = ServiceContainer.GetService <IViewContractHandler>() as IViewContractHandler;

                    if (param.ScreenID == "CMS021")
                    {
                        List <doSaleContractDataForFlowMenu> lst = chandler.GetSaleContractDataForFlowMenu(cond.ContractCodeLong);
                        if (lst.Count == 0)
                        {
                            res.AddErrorMessage(MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0124,
                                                null,
                                                new string[] { "ContractCode" });
                            res.MessageType = MessageModel.MESSAGE_TYPE.INFORMATION;
                            return(Json(res));
                        }

                        param.doSaleContractDataForFlowMenu = lst[0];
                        res.ResultData = param.doSaleContractDataForFlowMenu;
                    }
                    else
                    {
                        List <doRentalContractDataForFlowMenu> lst = chandler.GetRentalContractDataForFlowMenu(cond.ContractCodeLong);
                        if (lst.Count == 0)
                        {
                            res.AddErrorMessage(MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0124,
                                                null,
                                                new string[] { "ContractCode" });
                            res.MessageType = MessageModel.MESSAGE_TYPE.INFORMATION;
                            return(Json(res));
                        }

                        param.doRentalContractDataForFlowMenu = lst[0];
                        res.ResultData = param.doRentalContractDataForFlowMenu;
                    }

                    param.Condition = cond;

                    #region Update search session in dsTrans

                    CommonUtil.dsTransData.dtCommonSearch.ContractCode = cond.ContractCode;

                    #endregion
                }

                #endregion
            }
            catch (Exception ex)
            {
                res.AddErrorMessage(ex);
            }

            return(Json(res));
        }