Exemplo n.º 1
0
    public void CreateRoomCallback(GeneralResponse response)
    {
        var createResponse = (CreateRoomResponse)response;

        if (createResponse.isSuccessful)
        {
            LobbyManager.instance.StartHost();
        }
    }
 protected override bool ValidResponse(Packet packet)
 {
     if (packet.Header == PacketHeaderType.EmergencyStopAll)
     {
         ResponseData = new GeneralResponse();
         return true;
     }
     else
     {
         return false;
     }
 }
Exemplo n.º 3
0
    public void ListRoomsCallback(GeneralResponse response)
    {
        var listResponse = (ListRoomsResponse)response;

        if (listResponse.isSuccessful)
            foreach (var room in listResponse.rooms)
            {
                var newServerInfo = Instantiate(serverInfo);

                newServerInfo.GetComponent<LobbyServerInfo>().PopulateMatchInfo(room.name, room.ip);
                newServerInfo.transform.SetParent(joinList.transform, false);
                newServerInfo.transform.localScale = new Vector3(1.0f, 1.0f, 1.0f);
            }

        if (listResponse.rooms.Length == 0)
        {
            var newServerInfo = Instantiate(serverInfo);

            newServerInfo.GetComponent<LobbyServerInfo>().PopulateMatchInfo("No games exist", "", false);
            newServerInfo.transform.SetParent(joinList.transform, false);
            newServerInfo.transform.localScale = new Vector3(1.0f, 1.0f, 1.0f);
        }
    }
Exemplo n.º 4
0
        /// <summary>
        /// ویرایش یک کارمند
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public JsonResult Employee_Update(EditEmployeeRequest request, HttpPostedFileBase file)
        {
            GeneralResponse response = new GeneralResponse();

            try
            {
                #region Check Access
                bool hasPermission = GetEmployee().IsGuaranteed("Employee_Update");
                if (!hasPermission)
                {
                    response.ErrorMessages.Add("AccessDenied");
                    return(Json(response, JsonRequestBehavior.AllowGet));
                }
                #endregion

                #region Upload file

                // Verify that the user selected a file
                if (file != null && file.ContentLength > 0)
                {
                    // extract the extention
                    var fileExtention = Path.GetExtension(file.FileName);
                    // create filename
                    //string fileName = response.ID + "." + fileExtention;
                    // fileName = Path.GetFileName(file.FileName);

                    // Create a unique file name
                    string fileName = request.LoginName;

                    // Gettin current Year and Month
                    PersianCalendar pc    = new PersianCalendar();
                    int             year  = pc.GetYear(DateTime.Now);
                    int             month = pc.GetMonth(DateTime.Now);

                    // Create File Path
                    string path = Path.Combine(Server.MapPath("~/data/EmployeePicture"), fileName);
                    if (System.IO.File.Exists(path))
                    {
                        System.IO.File.Delete(path);
                    }
                    // Create reqired directried if not exist
                    new FileInfo(path).Directory.Create();

                    // Uploading
                    using (var fs = new FileStream(path, FileMode.Create))
                    {
                        var buffer = new byte[file.InputStream.Length];
                        file.InputStream.Read(buffer, 0, buffer.Length);

                        fs.Write(buffer, 0, buffer.Length);
                    }
                    request.Picture = path;
                }

                #endregion
            }
            catch (Exception ex)
            {
                //response.success = false;
                response.ErrorMessages.Add("در آپلود کردن فایل خطایی به وجود آمده است.");
                return(Json(response, JsonRequestBehavior.AllowGet));
            }


            response = _employeeService.EditEmployee(request, GetEmployee().ID);
            return(Json(response, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 5
0
        public GeneralResponse EditSupportTicketWaiting(EditSupportTicketWaitingRequest request, Guid ModifiedEmployeeID)
        {
            GeneralResponse response = new GeneralResponse();

            try
            {
                SupportTicketWaiting supportTicketWaiting = new SupportTicketWaiting();

                supportTicketWaiting = _supportTicketWaitingRepository.FindBy(request.ID);

                supportTicketWaiting.Comment            = request.Comment;
                supportTicketWaiting.DateOfPersenceDate = request.DateOfPersenceDate;
                supportTicketWaiting.InstallExpert      = _employeeRepository.FindBy(request.InstallExpertID);
                supportTicketWaiting.ModifiedDate       = PersianDateTime.Now;
                supportTicketWaiting.ModifiedEmployee   = _employeeRepository.FindBy(ModifiedEmployeeID);
                supportTicketWaiting.Selt = request.Selt;
                supportTicketWaiting.SendNotificationToCustomer = request.SendNotificationToCustomer;
                supportTicketWaiting.Snr             = request.Snr;
                supportTicketWaiting.SourceWireCheck = request.SourceWireCheck;
                supportTicketWaiting.TicketSubject   = request.TicketSubject;
                supportTicketWaiting.WireColor       = request.WireColor;

                #region Row Version Check

                if (supportTicketWaiting.RowVersion != request.RowVersion)
                {
                    response.ErrorMessages.Add("EditConcurrencyKey");
                    return(response);
                }
                else
                {
                    supportTicketWaiting.RowVersion += 1;
                }

                if (supportTicketWaiting.GetBrokenRules().Count() > 0)
                {
                    foreach (BusinessRule businessRule in supportTicketWaiting.GetBrokenRules())
                    {
                        response.ErrorMessages.Add(businessRule.Rule);
                    }

                    return(response);
                }


                #endregion

                //SupportStatusRelation supportStatusRelation = _supportStatusRelationRepository.FindBy(request.SupportStatusID);
                //supportTicketWaiting.Support.SupportStatus = _supportStatusRepository.FindBy(supportStatusRelation.RelatedSupportStatus.ID);
                //supportTicketWaiting.Support.Customer.SupportStatus = supportTicketWaiting.Support.SupportStatus;


                _supportTicketWaitingRepository.Save(supportTicketWaiting);
                _uow.Commit();
            }
            catch (Exception ex)
            {
                response.ErrorMessages.Add(ex.Message);
                if (ex.InnerException != null)
                {
                    response.ErrorMessages.Add(ex.InnerException.Message);
                }
            }

            return(response);
        }
Exemplo n.º 6
0
        public GeneralResponse DeliverPersenceSupport(Guid PersenceSupportID, Guid InstallerID, bool Delivered, string DeliverDate, string DeliverNote, string DeliverTime, long ReceivedCost, int RowVersion)
        {
            GeneralResponse response        = new GeneralResponse();
            PersenceSupport persenceSupport = new PersenceSupport();

            persenceSupport = _persenceSupportRepository.FindBy(PersenceSupportID);

            if (persenceSupport != null)
            {
                try
                {
                    // اگر قبلاً تحویل شده بود انجام نشود
                    if (persenceSupport.Delivered)
                    {
                        response.ErrorMessages.Add("DeliveredAndCanNotBeDeliveredAgain");
                        return(response);
                    }

                    persenceSupport.DeliverDate  = DeliverDate;
                    persenceSupport.Delivered    = Delivered;
                    persenceSupport.DeliverNote  = DeliverNote;
                    persenceSupport.DeliverTime  = DeliverTime;
                    persenceSupport.Installer    = this._employeeRepository.FindBy(InstallerID);
                    persenceSupport.ReceivedCost = ReceivedCost;

                    #region RowVersion Check

                    if (persenceSupport.RowVersion != RowVersion)
                    {
                        response.ErrorMessages.Add("کارشناس محترم، یک کاربر همزمان با شما در حال ویرایش این رکورد است. بنابراین اطلاعات شما ذخیره نمی شود.");
                        return(response);
                    }
                    else
                    {
                        persenceSupport.RowVersion += 1;
                        response.rowVersion         = persenceSupport.RowVersion;
                    }

                    #endregion

                    #region Validation

                    if (persenceSupport.GetBrokenRules().Count() > 0)
                    {
                        foreach (BusinessRule businessRule in persenceSupport.GetBrokenRules())
                        {
                            response.ErrorMessages.Add(businessRule.Rule);
                        }

                        return(response);
                    }

                    #endregion

                    _persenceSupportRepository.Save(persenceSupport);
                    _uow.Commit();
                }
                catch (Exception ex)
                {
                    response.ErrorMessages.Add(ex.Message);
                }
            }

            return(response);
        }
Exemplo n.º 7
0
        public GeneralResponse EditQuery(EditQueryRequest request, Guid ModifiedEmployeeID)
        {
            GeneralResponse response = new GeneralResponse();

            try
            {
                Query query = new Query();
                query = _queryRepository.FindBy(request.ID);
                query.ModifiedDate     = PersianDateTime.Now;
                query.ModifiedEmployee = _employeeRepository.FindBy(ModifiedEmployeeID);
                if (request.PrmDefinition != null)
                {
                    query.PrmDefinition = request.PrmDefinition;
                }
                if (request.PrmValues != null)
                {
                    query.PrmValues = request.PrmValues;
                }
                if (request.QueryText != null)
                {
                    query.QueryText = request.QueryText;
                }
                if (request.Title != null)
                {
                    query.Title = request.Title;
                }
                if (request.xType != null)
                {
                    query.xType = request.xType;
                }

                #region RowVersion - Validation
                if (query.RowVersion != request.RowVersion)
                {
                    response.ErrorMessages.Add("EditConcurrencyKey");
                    return(response);
                }
                else
                {
                    query.RowVersion += 1;
                }

                if (query.GetBrokenRules().Count() > 0)
                {
                    foreach (BusinessRule businessRule in query.GetBrokenRules())
                    {
                        response.ErrorMessages.Add(businessRule.Rule);
                    }

                    return(response);
                }

                #endregion

                _queryRepository.Save(query);
                _uow.Commit();
            }

            catch (Exception ex)
            {
                response.ErrorMessages.Add(ex.Message);
                if (ex.InnerException != null)
                {
                    response.ErrorMessages.Add(ex.InnerException.Message);
                }
            }

            return(response);
        }
Exemplo n.º 8
0
        public GeneralResponse EditStores(IEnumerable <EditStoreRequest> requests, Guid ModifiedEmployeeID)
        {
            GeneralResponse response = new GeneralResponse();

            try
            {
                foreach (EditStoreRequest request in requests)
                {
                    Infrastructure.Querying.Query query = new Query();
                    Criterion CriteriaOwnerID           = new Criterion("OwnerEmployee.ID", request.OwnerEmployeeID, CriteriaOperator.Equal);
                    query.Add(CriteriaOwnerID);

                    Store _store = _storeRepository.FindBy(query).FirstOrDefault();

                    if (_store == null)
                    {
                        Store store = _storeRepository.FindBy(request.ID);

                        store.ModifiedDate     = PersianDateTime.Now;
                        store.ModifiedEmployee = _employeeRepository.FindBy(ModifiedEmployeeID);
                        if (request.OwnerEmployeeID != store.OwnerEmployee.ID)
                        {
                            store.OwnerEmployee = this._employeeRepository.FindBy(request.OwnerEmployeeID);
                        }
                        if (request.StoreName != null)
                        {
                            store.StoreName = request.StoreName;
                        }
                        if (request.Note != null)
                        {
                            store.Note = request.Note;
                        }

                        if (store.RowVersion != request.RowVersion)
                        {
                            response.ErrorMessages.Add("EditConcurrencyKey");
                            return(response);
                        }
                        else
                        {
                            store.RowVersion += 1;
                        }

                        if (store.GetBrokenRules().Count() > 0)
                        {
                            foreach (BusinessRule businessRule in store.GetBrokenRules())
                            {
                                response.ErrorMessages.Add(businessRule.Rule);
                            }

                            return(response);
                        }
                        _storeRepository.Save(store);
                    }
                    else
                    {
                        response.ErrorMessages.Add("برای " + _store.OwnerEmployee.Name + " قبلا یک انبار ثبت شده است ");
                        return(response);
                    }
                }
                _uow.Commit();
            }

            catch (Exception ex)
            {
                response.ErrorMessages.Add(ex.Message);
                if (ex.InnerException != null)
                {
                    response.ErrorMessages.Add(ex.InnerException.Message);
                }
            }

            return(response);
        }
Exemplo n.º 9
0
        //Added By Zafari


        #endregion

        #region Edit
        public GeneralResponse EditProduct(IEnumerable <EditProductRequestOld> requests, Guid CreateEmployeeID)
        {
            GeneralResponse response = new GeneralResponse();

            foreach (var request in requests)
            {
                Product product = new Product();
                product = _productRepository.FindBy(request.ID);

                if (product != null)
                {
                    try
                    {
                        product.ModifiedDate     = PersianDateTime.Now;
                        product.ModifiedEmployee = _employeeRepository.FindBy(request.ModifiedEmployeeID);
                        product.ProductCode      = request.ProductCode;
                        if (request.ProductName != null)
                        {
                            product.ProductName = request.ProductName;
                        }
                        if (request.Note != null)
                        {
                            product.Note = request.Note;
                        }
                        product.Discontinued = request.Discontinued;

                        if (product.RowVersion != request.RowVersion)
                        {
                            response.ErrorMessages.Add("کارشناس محترم، یک کاربر همزمان با شما در حال ویرایش این رکورد است. بنابراین اطلاعات شما ذخیره نمی شود.");
                            return(response);
                        }
                        else
                        {
                            product.RowVersion += 1;
                        }

                        if (product.GetBrokenRules().Count() > 0)
                        {
                            foreach (BusinessRule businessRule in product.GetBrokenRules())
                            {
                                response.ErrorMessages.Add(businessRule.Rule);
                            }

                            return(response);
                        }

                        _productRepository.Save(product);
                    }
                    catch (Exception ex)
                    {
                        response.ErrorMessages.Add(ex.Message);
                    }
                }
                else
                {
                    response.ErrorMessages.Add("هیچ موردی جهت ویرایش وجود ندارد.");
                }
            }

            try
            {
                _uow.Commit();
            }
            catch (Exception ex)
            {
                response.ErrorMessages.Add(ex.Message);
            }

            return(response);
        }
Exemplo n.º 10
0
        private GeneralResponse GetReferencesInProjectOrDisk(string fileName, TopLevelOrRecursive topLevelOrRecursive, List <string> listToFill, ProjectOrDisk projectOrDisk)
        {
            GeneralResponse generalResponse = GeneralResponse.SuccessfulResponse;

            if (CanTrackDependenciesOn(fileName))
            {
                string extension = FileManager.GetExtension(fileName);

                string oldRelative = FileManager.RelativeDirectory;

                string gumxFile = null;


                FileManager.RelativeDirectory = GetGumxDirectory(fileName);
                LoadGumxIfNecessaryFromDirectory(FileManager.RelativeDirectory);

                string absoluteFileName = fileName;
                if (FileManager.IsRelative(absoluteFileName))
                {
                    absoluteFileName = FileManager.RelativeDirectory + absoluteFileName;
                }

                string errors = null;
                if (System.IO.File.Exists(absoluteFileName))
                {
                    switch (extension)
                    {
                    case "gumx":
                    {
                        try
                        {
                            LoadGumxIfNecessaryFromDirectory(FileManager.RelativeDirectory, force: true);
                            GetFilesReferencedBy(Gum.Managers.ObjectFinder.Self.GumProjectSave, topLevelOrRecursive, listToFill, projectOrDisk);
                        }
                        catch (Exception e)
                        {
                            errors =
                                "Error tracking Gum references for " + absoluteFileName + "\n" + e.ToString();
                        }
                    }
                    break;

                    case "gucx":
                    {
                        ComponentSave gumComponentSave = null;
                        try
                        {
                            gumComponentSave          = FileManager.XmlDeserialize <ComponentSave>(absoluteFileName);
                            gumComponentSave.FileName = absoluteFileName;
                            // See an explanation for this in LoadGumxIfNecessaryFromDirectory
                            gumComponentSave.Initialize(gumComponentSave.DefaultState);
                            GetFilesReferencedBy(gumComponentSave, topLevelOrRecursive, listToFill, projectOrDisk);
                        }
                        catch (Exception e)
                        {
                            errors =
                                "Error tracking Gum references for " + absoluteFileName + "\n" + e.ToString();
                        }
                    }
                    break;

                    case "gusx":
                    {
                        ScreenSave gumScreenSave = null;
                        try
                        {
                            gumScreenSave          = FileManager.XmlDeserialize <ScreenSave>(absoluteFileName);
                            gumScreenSave.FileName = absoluteFileName;
                            // See an explanation for this in LoadGumxIfNecessaryFromDirectory
                            gumScreenSave.Initialize(gumScreenSave.DefaultState);

                            GetFilesReferencedBy(gumScreenSave, topLevelOrRecursive, listToFill, projectOrDisk);
                        }
                        catch (Exception e)
                        {
                            errors =
                                "Error tracking Gum references for " + absoluteFileName + "\n" + e.ToString();
                        }
                    }
                    break;

                    case "gutx":
                    {
                        StandardElementSave standardElementSave = null;
                        try
                        {
                            standardElementSave          = FileManager.XmlDeserialize <StandardElementSave>(absoluteFileName);
                            standardElementSave.FileName = absoluteFileName;
                            // See an explanation for this in LoadGumxIfNecessaryFromDirectory
                            standardElementSave.Initialize(standardElementSave.DefaultState);

                            GetFilesReferencedBy(standardElementSave, topLevelOrRecursive, listToFill, projectOrDisk);
                        }
                        catch (Exception e)
                        {
                            errors =
                                "Error tracking Gum references for " + absoluteFileName + "\n" + e.ToString();
                        }
                    }
                    break;
                    }
                }

                if (errors != null)
                {
                    generalResponse = new GeneralResponse
                    {
                        Succeeded = false,
                        Message   = errors
                    };
                }

                FileManager.RelativeDirectory = oldRelative;
            }

            return(generalResponse);
        }
Exemplo n.º 11
0
        public ActionResult Create(string id, StoreProductDetailView storeProductDetailView)
        {
            storeProductDetailView.EmployeeView = GetEmployee();

            #region Access Check
            bool hasPermission = GetEmployee().IsGuaranteed("StoreProduct_Insert");
            if (!hasPermission)
            {
                ModelState.AddModelError("", "AccessDenied");
                return(View(storeProductDetailView));
            }
            #endregion

            GetRequest getStoreRequest = new GetRequest()
            {
                ID = Guid.Parse(id)
            };
            storeProductDetailView.StoreView = this._storeService.GetStore(getStoreRequest).StoreView;

            #region DropDownList For Products
            storeProductDetailView.ProductViews = _productService.GetProducts().ProductViews;
            List <DropDownItem> list = new List <DropDownItem>();

            if (storeProductDetailView.ProductViews != null)
            {
                foreach (ProductView productView in storeProductDetailView.ProductViews)
                {
                    list.Add(new DropDownItem {
                        Value = productView.ID.ToString(), Text = productView.ProductName
                    });
                }
            }
            var selectList = new SelectList(list, "Value", "Text");
            ViewData["Products"] = selectList;
            #endregion

            if (ModelState.IsValid)
            {
                try
                {
                    AddStoreProductRequest request = new AddStoreProductRequest();
                    request.CreateEmployeeID = GetEmployee().ID;
                    request.ProductID        = storeProductDetailView.StoreProductView.ProductID;
                    request.StoreID          = Guid.Parse(id);
                    request.UnitsInStock     = storeProductDetailView.StoreProductView.UnitsInStock;

                    GeneralResponse response = this._storeProductService.AddStoreProduct(request);

                    if (response.success)
                    {
                        return(RedirectToAction("Index/" + request.StoreID));
                    }
                    else
                    {
                        foreach (string error in response.ErrorMessages)
                        {
                            ModelState.AddModelError("", error);
                        }
                        return(View(storeProductDetailView));
                    }
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError("", ex.Message);
                    return(View(storeProductDetailView));
                }
            }

            return(View(storeProductDetailView));
        }
Exemplo n.º 12
0
        public JsonResult Document_Insert(Guid customerID, DocumentView document, HttpPostedFileBase file)
        {
            GeneralResponse response = new GeneralResponse();

            #region Access Check
            bool hasPermission = GetEmployee().IsGuaranteed("Document_Insert");
            if (!hasPermission)
            {
                response.ErrorMessages.Add("AccessDenied");
                return(Json(response, JsonRequestBehavior.AllowGet));
            }
            #endregion

            string fileName = string.Empty;
            string path     = string.Empty;

            try
            {
                #region Upload file

                // Verify that the user selected a file
                if (file != null && file.ContentLength > 0)
                {
                    // extract the extention
                    var fileExtention = Path.GetExtension(file.FileName);
                    // create filename
                    //string fileName = response.ID + "." + fileExtention;
                    // fileName = Path.GetFileName(file.FileName);

                    // Create a unique file name
                    fileName = Guid.NewGuid() + "." + fileExtention;

                    // Gettin current Year and Month
                    PersianCalendar pc    = new PersianCalendar();
                    int             year  = pc.GetYear(DateTime.Now);
                    int             month = pc.GetMonth(DateTime.Now);

                    // Create File Path
                    path = Path.Combine(Server.MapPath("~/data/" + year + "/" + month), fileName);
                    // Create reqired directried if not exist
                    new FileInfo(path).Directory.Create();

                    // Uploading
                    using (var fs = new FileStream(path, FileMode.Create))
                    {
                        var buffer = new byte[file.InputStream.Length];
                        file.InputStream.Read(buffer, 0, buffer.Length);

                        fs.Write(buffer, 0, buffer.Length);
                    }
                }

                #endregion
            }
            catch (Exception ex)
            {
                //response.success = false;
                response.ErrorMessages.Add("در آپلود کردن فایل خطایی به وجود آمده است.");
                return(Json(response, JsonRequestBehavior.AllowGet));
            }

            #region Add Document

            AddDocumentRequest request = new AddDocumentRequest();

            request.CreateEmployeeID = GetEmployee().ID;
            request.CustomerID       = customerID;

            request.DocumentName = document.DocumentName;
            request.Photo        = path;
            request.Note         = document.Note;

            response = _documentService.AddDocument(request);

            #endregion

            return(Json(response, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 13
0
        public IHttpActionResult Post([FromBody] TransferRequest model)
        {
            GeneralResponse oResponse        = new GeneralResponse();
            AccountManager  oAccountManager  = new AccountManager();
            TransferManager oTransferManager = new TransferManager();
            FieldsService   oFieldsService   = new FieldsService();

            var claims = ClaimsPrincipal.Current.Identities.First().Claims.ToList();

            string UserId = claims?.FirstOrDefault(x => x.Type.Equals(ClaimTypes.Sid, StringComparison.OrdinalIgnoreCase))?.Value;

            try
            {
                Dictionary <string, string> oErrors = oFieldsService.ValidateModel(ModelState);
                if (oErrors.Count != 0)
                {
                    oResponse.Success = 0;
                    oResponse.Message = "Error, campos invalidos";
                    oResponse.Data    = oErrors;

                    return(Content(HttpStatusCode.BadRequest, oResponse));
                }


                Account oDebitAccount = new Account();

                oDebitAccount = oAccountManager.GetAccountById(model.DebitAccountId);

                if (oDebitAccount.AccountId == null)
                {
                    throw new ArgumentException("Cuenta de debito no existente");
                }
                ;
                if (Convert.ToString(oDebitAccount.User.UserId) != UserId)
                {
                    throw new ArgumentException("No se puede transferir dinero desde una cuenta que no pertenece al usuario logeado");
                }
                ;
                if (oDebitAccount.Balance < model.Amount)
                {
                    throw new ArgumentException("No tiene el saldo suficiente para realizar esta transferencia");
                }
                ;

                Account oCreditAccount = new Account();
                oCreditAccount = oAccountManager.GetAccountById(model.CreditAccountId);

                if (oCreditAccount.AccountId == null)
                {
                    throw new ArgumentException("Cuenta de credito no existente");
                }
                ;

                oTransferManager.MakeTransfer(oDebitAccount, model.CreditAccountId, model.Amount, model.Concept);
                oAccountManager.UpdateAccountBalance((int)oDebitAccount.AccountId, -model.Amount);
                oAccountManager.UpdateAccountBalance(model.CreditAccountId, model.Amount);
                oResponse.Success = 1;
                oResponse.Message = "Exito - Transferencia realizada";

                return(Content(HttpStatusCode.OK, oResponse));
            } catch (ArgumentException ex)
            {
                oResponse.Success = 0;
                oResponse.Message = "Error - " + ex.Message;
                return(Content(HttpStatusCode.BadRequest, oResponse));
            } catch (Exception ex)
            {
                oResponse.Success = 0;
                oResponse.Message = ex.Message;
                return(Content(HttpStatusCode.BadRequest, oResponse));
            }
        }
Exemplo n.º 14
0
        public GeneralResponse EditSupportQc(EditSupportQcRequest request, Guid ModifiedEmployeeID)
        {
            GeneralResponse response = new GeneralResponse();

            try
            {
                SupportQc supportQc = new SupportQc();
                supportQc = _supportQcRepository.FindBy(request.ID);

                supportQc.ModifiedDate     = PersianDateTime.Now;
                supportQc.ModifiedEmployee = _employeeRepository.FindBy(ModifiedEmployeeID);
                supportQc.Comment          = request.Comment;
                supportQc.ExpertBehavior   = (SupportQc.State)request.ExpertBehavior;
                supportQc.ExpertCover      = (SupportQc.State)request.ExpertCover;
                supportQc.InputTime        = request.InputTime;

                supportQc.OutputTime                 = request.OutputTime;
                supportQc.RecivedCost                = request.RecivedCost;
                supportQc.SaleAndService             = (SupportQc.State)request.SaleAndService;
                supportQc.SendNotificationToCustomer = request.SendNotificationToCustomer;
                supportQc.SendNotificationToMaster   = request.SendNotificationToMaster;

                #region Row Version Check

                if (supportQc.RowVersion != request.RowVersion)
                {
                    response.ErrorMessages.Add("EditConcurrencyKey");
                    return(response);
                }
                else
                {
                    supportQc.RowVersion += 1;
                }

                if (supportQc.GetBrokenRules().Count() > 0)
                {
                    foreach (BusinessRule businessRule in supportQc.GetBrokenRules())
                    {
                        response.ErrorMessages.Add(businessRule.Rule);
                    }

                    return(response);
                }


                #endregion


                //supportQc.Support.SupportStatus = _supportStatusRepository.FindBy(request.SupportStatusID);
                //supportQc.Support.Customer.SupportStatus = supportQc.Support.SupportStatus;

                _supportQcRepository.Save(supportQc);
                _uow.Commit();
            }
            catch (Exception ex)
            {
                response.ErrorMessages.Add(ex.Message);
                if (ex.InnerException != null)
                {
                    response.ErrorMessages.Add(ex.InnerException.Message);
                }
            }

            return(response);
        }
Exemplo n.º 15
0
        public GeneralResponse AddSupportQc(AddSupportQcRequest request, Guid CreateEmployeeID)
        {
            GeneralResponse response = new GeneralResponse();

            try
            {
                SupportQc supportQc = new SupportQc();

                supportQc.ID             = Guid.NewGuid();
                supportQc.CreateDate     = PersianDateTime.Now;
                supportQc.CreateEmployee = _employeeRepository.FindBy(CreateEmployeeID);
                supportQc.Comment        = request.Comment;
                supportQc.ExpertBehavior = (SupportQc.State)request.ExpertBehavior;
                supportQc.ExpertCover    = (SupportQc.State)request.ExpertCover;
                supportQc.InputTime      = request.InputTime;
                if (string.IsNullOrEmpty(request.Comment))
                {
                    response.ErrorMessages.Add("افزودن توضیحات به فرم الزامیست.");
                    return(response);
                }
                supportQc.OutputTime                 = request.OutputTime;
                supportQc.RecivedCost                = request.RecivedCost;
                supportQc.SaleAndService             = (SupportQc.State)request.SaleAndService;
                supportQc.SendNotificationToCustomer = request.SendNotificationToCustomer;
                supportQc.SendNotificationToMaster   = request.SendNotificationToMaster;
                supportQc.RowVersion                 = 1;

                supportQc.Support = _supportRepository.FindBy(request.SupportID);


                #region چک کردن عدم وجود مورد ثبت شده

                if (supportQc.Support.SupportQc.Count() > 0)
                {
                    response.ErrorMessages.Add("برای هر پشتیبانی بیش از یک فرم QC نمیتوانید ثبت کنید");
                    return(response);
                }

                #endregion

                SupportStatusRelation supportStatusRelation = _supportStatusRelationRepository.FindBy(request.SupportStatusID);
                supportQc.Support.SupportStatus          = _supportStatusRepository.FindBy(supportStatusRelation.RelatedSupportStatus.ID);
                supportQc.Support.Customer.SupportStatus = supportQc.Support.SupportStatus;

                if (supportQc.Support.SupportStatus.IsLastSupportState)
                {
                    supportQc.Support.Closed = true;
                }

                _supportQcRepository.Add(supportQc);
                _uow.Commit();

                #region Send SMS

                if (supportQc.Support.SupportStatus.SendSmsOnEnter)
                {
                    // Threading
                    SmsData smsData = new SmsData()
                    {
                        body = supportQc.Support.SupportStatus.SmsText, phoneNumber = supportQc.Support.Customer.Mobile1
                    };
                    Thread oThread = new Thread(SendSmsVoid);
                    oThread.Start(smsData);
                }

                #endregion
            }
            catch (Exception ex)
            {
                response.ErrorMessages.Add(ex.Message);
                if (ex.InnerException != null)
                {
                    response.ErrorMessages.Add(ex.InnerException.Message);
                }
            }

            return(response);
        }
Exemplo n.º 16
0
        private GeneralResponse <IEnumerable <Employee> > GetEmp(SearchParam filter, int initialPage, int pageSize, out int totalRecords, out int recordFilterd,
                                                                 int sortColumn, string sortDirection)
        {
            var response = new GeneralResponse <IEnumerable <Employee> >();

            totalRecords  = 0;
            recordFilterd = 0;

            try
            {
                var data = Enumerable.Empty <Employee>().AsQueryable();
                try
                {
                    using (var redisClient = new RedisClient("ehrredis.y2ehux.0001.aps1.cache.amazonaws.com", 6379))
                    {
                        var rdata = redisClient.Get <IEnumerable <Employee> >("employess");
                        data           = rdata.AsQueryable();
                        ViewBag.source = "redis";
                    }
                }
                catch (Exception e)
                {
                    data           = Common.EmployeesList.AsQueryable();
                    ViewBag.source = "Database";
                }


                totalRecords = data.Count();
                //filter
                if (!string.IsNullOrWhiteSpace(filter.FirstName))
                {
                    data = data.Where(x =>
                                      x.FirstName.ToLower().Contains(filter.FirstName.Trim().ToLower())
                                      );
                }
                if (!string.IsNullOrWhiteSpace(filter.LastName))
                {
                    data = data.Where(x =>
                                      x.LastName.ToLower().Contains(filter.LastName.Trim().ToLower())
                                      );
                }
                if (!string.IsNullOrWhiteSpace(filter.Department))
                {
                    data = data.Where(x =>
                                      x.Department.ToLower() == filter.Department.Trim().ToLower()
                                      );
                }
                if (filter.FromDob != null && filter.FromDob != default(DateTime))
                {
                    data = data.Where(x => x.DOB >= filter.FromDob);
                }
                if (filter.ToDob != null && filter.ToDob != default(DateTime))
                {
                    filter.ToDob = filter.ToDob.AddHours(23).AddMinutes(59);
                    data         = data.Where(x => x.DOB <= filter.ToDob);
                }
                recordFilterd = data.Count();

                //sort
                var ascending = sortDirection == "asc";
                switch (sortColumn)
                {
                case 0:
                    data = data.OrderBy(p => p.EmployeeId, ascending);
                    break;

                case 1:
                    data = data.OrderBy(p => p.LastName, ascending);
                    break;

                case 2:
                    data = data.OrderBy(p => p.FirstName, ascending);
                    break;

                case 3:
                    data = data.OrderBy(p => p.DOB, ascending);
                    break;

                case 4:
                    data = data.OrderBy(p => p.Gender, ascending);
                    break;

                case 5:
                    data = data.OrderBy(p => p.Street, ascending);
                    break;

                case 6:
                    data = data.OrderBy(p => p.City, ascending);
                    break;

                case 7:
                    data = data.OrderBy(p => p.State, ascending);
                    break;

                case 8:
                    data = data.OrderBy(p => p.Zip, ascending);
                    break;

                case 9:
                    data = data.OrderBy(p => p.Department, ascending);
                    break;

                case 10:
                    data = data.OrderBy(p => p.Occupation, ascending);
                    break;

                case 11:
                    data = data.OrderBy(p => p.Occupation, ascending);
                    break;

                default:
                    data = data.OrderBy(p => p.Salary, ascending);
                    break;
                }

                data = data
                       .Skip(initialPage * pageSize)
                       .Take(pageSize);

                var result = data.ToList();
                response.Data = result;
            }
            catch (Exception e)
            {
                response.Error     = true;
                response.Exception = e;
            }
            return(response);
        }
 public CategoriesController(ICatRepos catRepos, GeneralResponse response)
 {
     _catRepos = catRepos;
     _response = response;
 }
Exemplo n.º 18
0
 public void CreateRoom(string roomname)
 {
     _response = DBConnection.instance.CreateRoom(new CreateRoomMessage { userId = LoginInformation.guid, name = roomname });
     _isResponse = true;
 }
        public ActionResult <List <Student> > GetStudentList([FromQuery] StudentQueryDto queryDto)
        {
            var students = _studentService.QueryStudents(queryDto).ToList();

            return(Ok(GeneralResponse <List <Student> > .Ok(students)));
        }
Exemplo n.º 20
0
        public GeneralResponse EditNetworkCredit(EditNetworkCreditRequestOld request)
        {
            GeneralResponse response      = new GeneralResponse();
            NetworkCredit   networkCredit = new NetworkCredit();

            networkCredit = _networkCreditRepository.FindBy(request.ID);

            if (networkCredit != null)
            {
                try
                {
                    networkCredit.ModifiedDate     = PersianDateTime.Now;
                    networkCredit.ModifiedEmployee = _employeeRepository.FindBy(request.ModifiedEmployeeID);
                    networkCredit.Amount           = request.Amount;
                    networkCredit.FromAccount      = this._moneyAccountRepository.FindBy(request.FromAccountID);
                    if (request.InvestDate != null)
                    {
                        networkCredit.InvestDate = request.InvestDate;
                    }
                    if (request.NetworkID != null)
                    {
                        networkCredit.Network = this._networkRepository.FindBy(request.NetworkID);
                    }
                    networkCredit.Note          = request.Note;
                    networkCredit.ToAccount     = request.ToAccount;
                    networkCredit.TransactionNo = request.TransactionNo;

                    if (networkCredit.RowVersion != request.RowVersion)
                    {
                        response.ErrorMessages.Add("EditConcurrencyKey");
                        return(response);
                    }
                    else
                    {
                        networkCredit.RowVersion += 1;
                    }

                    if (networkCredit.GetBrokenRules().Count() > 0)
                    {
                        foreach (BusinessRule businessRule in networkCredit.GetBrokenRules())
                        {
                            response.ErrorMessages.Add(businessRule.Rule);
                        }

                        return(response);
                    }

                    _networkCreditRepository.Save(networkCredit);
                    _uow.Commit();

                    ////response.success = true;
                }
                catch (Exception ex)
                {
                    response.ErrorMessages.Add(ex.Message);
                }
            }
            else
            {
                response.ErrorMessages.Add("NoItemToEditKey");
            }
            return(response);
        }
Exemplo n.º 21
0
        public GeneralResponse AddStores(IEnumerable <AddStoreRequest> requests, Guid CreateEmployeeID)
        {
            GeneralResponse response = new GeneralResponse();

            try
            {
                foreach (AddStoreRequest request in requests)
                {
                    Infrastructure.Querying.Query query = new Query();
                    Criterion CriteriaOwnerID           = new Criterion("OwnerEmployee.ID", request.OwnerEmployeeID, CriteriaOperator.Equal);
                    query.Add(CriteriaOwnerID);

                    Store _store = _storeRepository.FindBy(query).FirstOrDefault();

                    if (_store == null)
                    {
                        Store store = new Store();

                        store.ID             = Guid.NewGuid();
                        store.CreateDate     = PersianDateTime.Now;
                        store.CreateEmployee = _employeeRepository.FindBy(CreateEmployeeID);
                        store.StoreName      = request.StoreName;
                        store.OwnerEmployee  = _employeeRepository.FindBy(request.OwnerEmployeeID);
                        store.Note           = request.Note;
                        store.RowVersion     = 1;



                        #region Validation

                        if (store.GetBrokenRules().Count() > 0)
                        {
                            foreach (BusinessRule businessRule in store.GetBrokenRules())
                            {
                                response.ErrorMessages.Add(businessRule.Rule);
                            }

                            return(response);
                        }

                        #endregion

                        _storeRepository.Add(store);
                    }
                    else
                    {
                        response.ErrorMessages.Add("برای " + _store.OwnerEmployee.Name + " قبلا یک انبار ثبت شده است ");
                        return(response);
                    }
                }
                _uow.Commit();
            }
            catch (Exception ex)
            {
                response.ErrorMessages.Add(ex.Message);
                if (ex.InnerException != null)
                {
                    response.ErrorMessages.Add(ex.InnerException.Message);
                }
            }

            return(response);
        }
Exemplo n.º 22
0
 public void ListRooms()
 {
     _response = DBConnection.instance.ListRooms(new ListRoomsMessage { userId = LoginInformation.guid });
     _isResponse = true;
 }
Exemplo n.º 23
0
        public GeneralResponse EditStore(EditStoreRequestOld request)
        {
            GeneralResponse response = new GeneralResponse();
            Store           store    = new Store();

            store = _storeRepository.FindBy(request.ID);

            if (store != null)
            {
                try
                {
                    store.ModifiedDate     = PersianDateTime.Now;
                    store.ModifiedEmployee = _employeeRepository.FindBy(request.ModifiedEmployeeID);
                    if (request.OwnerEmployeeID != null)
                    {
                        store.OwnerEmployee = this._employeeRepository.FindBy(request.OwnerEmployeeID);
                    }
                    if (request.StoreName != null)
                    {
                        store.StoreName = request.StoreName;
                    }
                    if (request.Note != null)
                    {
                        store.Note = request.Note;
                    }

                    if (store.RowVersion != request.RowVersion)
                    {
                        response.ErrorMessages.Add("EditConcurrencyKey");
                        return(response);
                    }
                    else
                    {
                        store.RowVersion += 1;
                    }

                    if (store.GetBrokenRules().Count() > 0)
                    {
                        foreach (BusinessRule businessRule in store.GetBrokenRules())
                        {
                            response.ErrorMessages.Add(businessRule.Rule);
                        }

                        return(response);
                    }

                    _storeRepository.Save(store);
                    _uow.Commit();

                    ////response.success = true;
                }
                catch (Exception ex)
                {
                    response.ErrorMessages.Add(ex.Message);
                }
            }
            else
            {
                response.ErrorMessages.Add("NoItemToEditKey");
            }
            return(response);
        }
Exemplo n.º 24
0
        void CheckRequestUpdate()
        {
            if (requestQueue.Count <= 0)
            {
                return;
            }

            ReqStruct       reqStruct = requestQueue.Dequeue();
            UnityWebRequest request   = reqStruct.request;
            GeneralResponse resp      = reqStruct.resp;

            if (request != null && request.isDone)
            {
                if (request.error != null)
                {
                    if (request.responseCode == 404)
                    {
                        Debug.LogError("Resouce not found.");
                        isOperationRunning = false;
                    }
                    else if (request.responseCode == 403)
                    {
                        Debug.LogError("Permision denied.");
                        isOperationRunning = false;
                    }
                    else
                    {
                        Debug.LogError(request.error);
                        isOperationRunning = false;
                    }
                }
                else
                {
                    if (request.downloadHandler.text.Contains(AppStoreOnboardApi.tokenExpiredInfo))
                    {
                        UnityWebRequest newRequest    = AppStoreOnboardApi.RefreshToken();
                        TokenInfo       tokenInfoResp = new TokenInfo();
                        ReqStruct       newReqStruct  = new ReqStruct();
                        newReqStruct.request    = newRequest;
                        newReqStruct.resp       = tokenInfoResp;
                        newReqStruct.targetStep = reqStruct.targetStep;
                        requestQueue.Enqueue(newReqStruct);
                    }
                    else
                    {
                        if (resp.GetType() == typeof(TokenInfo))
                        {
                            resp = JsonUtility.FromJson <TokenInfo> (request.downloadHandler.text);
                            AppStoreOnboardApi.tokenInfo.access_token = ((TokenInfo)resp).access_token;
                            if (AppStoreOnboardApi.tokenInfo.refresh_token == null || AppStoreOnboardApi.tokenInfo.refresh_token == "")
                            {
                                AppStoreOnboardApi.tokenInfo.refresh_token = ((TokenInfo)resp).refresh_token;
                            }
                            UnityWebRequest newRequest   = AppStoreOnboardApi.GetUserId();
                            UserIdResponse  userIdResp   = new UserIdResponse();
                            ReqStruct       newReqStruct = new ReqStruct();
                            newReqStruct.request    = newRequest;
                            newReqStruct.resp       = userIdResp;
                            newReqStruct.targetStep = reqStruct.targetStep;
                            requestQueue.Enqueue(newReqStruct);
                        }
                        else if (resp.GetType() == typeof(UserIdResponse))
                        {
                            resp = JsonUtility.FromJson <UserIdResponse> (request.downloadHandler.text);
                            AppStoreOnboardApi.userId = ((UserIdResponse)resp).sub;
                            UnityWebRequest newRequest   = AppStoreOnboardApi.GetOrgId(Application.cloudProjectId);
                            OrgIdResponse   orgIdResp    = new OrgIdResponse();
                            ReqStruct       newReqStruct = new ReqStruct();
                            newReqStruct.request    = newRequest;
                            newReqStruct.resp       = orgIdResp;
                            newReqStruct.targetStep = reqStruct.targetStep;
                            requestQueue.Enqueue(newReqStruct);
                        }
                        else if (resp.GetType() == typeof(OrgIdResponse))
                        {
                            resp = JsonUtility.FromJson <OrgIdResponse> (request.downloadHandler.text);
                            AppStoreOnboardApi.orgId = ((OrgIdResponse)resp).org_foreign_key;
                            UnityWebRequest newRequest   = AppStoreOnboardApi.GetOrgRoles();
                            OrgRoleResponse orgRoleResp  = new OrgRoleResponse();
                            ReqStruct       newReqStruct = new ReqStruct();
                            newReqStruct.request    = newRequest;
                            newReqStruct.resp       = orgRoleResp;
                            newReqStruct.targetStep = reqStruct.targetStep;
                            requestQueue.Enqueue(newReqStruct);
                        }
                        else if (resp.GetType() == typeof(OrgRoleResponse))
                        {
                            resp = JsonUtility.FromJson <OrgRoleResponse> (request.downloadHandler.text);
                            if (resp == null)
                            {
                                Debug.LogError("Permision denied.");
                                isOperationRunning = false;
                            }
                            List <string> roles = ((OrgRoleResponse)resp).roles;
                            if (roles.Contains("owner"))
                            {
                                ownerAuthed = true;
                                if (reqStruct.targetStep == STEP_GET_CLIENT)
                                {
                                    UnityWebRequest            newRequest        = AppStoreOnboardApi.GetUnityClientInfo(Application.cloudProjectId);
                                    UnityClientResponseWrapper clientRespWrapper = new UnityClientResponseWrapper();
                                    ReqStruct newReqStruct = new ReqStruct();
                                    newReqStruct.request    = newRequest;
                                    newReqStruct.resp       = clientRespWrapper;
                                    newReqStruct.targetStep = reqStruct.targetStep;
                                    requestQueue.Enqueue(newReqStruct);
                                }
                                else if (reqStruct.targetStep == STEP_UPDATE_CLIENT)
                                {
                                    UnityClientInfo unityClientInfo = new UnityClientInfo();
                                    unityClientInfo.ClientId = unityClientID.stringValue;
                                    string callbackUrl = callbackUrl_in_memory;
                                    // read xiaomi from user input
                                    XiaomiSettings xiaomi = new XiaomiSettings();
                                    xiaomi.appId     = xiaomiAppID.stringValue;
                                    xiaomi.appKey    = xiaomiAppKey.stringValue;
                                    xiaomi.appSecret = appSecret_in_memory;
                                    UnityWebRequest     newRequest   = AppStoreOnboardApi.UpdateUnityClient(Application.cloudProjectId, unityClientInfo, xiaomi, callbackUrl);
                                    UnityClientResponse clientResp   = new UnityClientResponse();
                                    ReqStruct           newReqStruct = new ReqStruct();
                                    newReqStruct.request    = newRequest;
                                    newReqStruct.resp       = clientResp;
                                    newReqStruct.targetStep = reqStruct.targetStep;
                                    requestQueue.Enqueue(newReqStruct);
                                }
                                else if (reqStruct.targetStep == STEP_UPDATE_CLIENT_SECRET)
                                {
                                    string              clientId     = unityClientID.stringValue;
                                    UnityWebRequest     newRequest   = AppStoreOnboardApi.UpdateUnityClientSecret(clientId);
                                    UnityClientResponse clientResp   = new UnityClientResponse();
                                    ReqStruct           newReqStruct = new ReqStruct();
                                    newReqStruct.request    = newRequest;
                                    newReqStruct.resp       = clientResp;
                                    newReqStruct.targetStep = reqStruct.targetStep;
                                    requestQueue.Enqueue(newReqStruct);
                                }
                            }
                            else if (roles.Contains("user") || roles.Contains("manager"))
                            {
                                ownerAuthed = false;
                                if (reqStruct.targetStep == STEP_GET_CLIENT)
                                {
                                    UnityWebRequest            newRequest        = AppStoreOnboardApi.GetUnityClientInfo(Application.cloudProjectId);
                                    UnityClientResponseWrapper clientRespWrapper = new UnityClientResponseWrapper();
                                    ReqStruct newReqStruct = new ReqStruct();
                                    newReqStruct.request    = newRequest;
                                    newReqStruct.resp       = clientRespWrapper;
                                    newReqStruct.targetStep = reqStruct.targetStep;
                                    requestQueue.Enqueue(newReqStruct);
                                }
                                else
                                {
                                    Debug.LogError("Permision denied.");
                                    isOperationRunning = false;
                                }
                            }
                            else
                            {
                                Debug.LogError("Permision denied.");
                                isOperationRunning = false;
                            }
                        }
                        else if (resp.GetType() == typeof(UnityClientResponseWrapper))
                        {
                            string raw = "{ \"array\": " + request.downloadHandler.text + "}";
                            resp = JsonUtility.FromJson <UnityClientResponseWrapper> (raw);
                            // only one element in the list
                            if (((UnityClientResponseWrapper)resp).array.Length > 0)
                            {
                                UnityClientResponse unityClientResp = ((UnityClientResponseWrapper)resp).array [0];
                                unityClientID.stringValue           = unityClientResp.client_id;
                                unityClientKey.stringValue          = unityClientResp.client_secret;
                                unityClientRSAPublicKey.stringValue = unityClientResp.channel.publicRSAKey;
                                clientSecret_in_memory = unityClientResp.channel.channelSecret;
                                callbackUrl_in_memory  = unityClientResp.channel.callbackUrl;
                                callbackUrl_last       = callbackUrl_in_memory;
                                foreach (ThirdPartySettingsResponse thirdPartySetting in unityClientResp.channel.thirdPartySettings)
                                {
                                    if (thirdPartySetting.appType.Equals(AppStoreOnboardApi.xiaomiAppType, StringComparison.InvariantCultureIgnoreCase))
                                    {
                                        xiaomiAppID.stringValue  = thirdPartySetting.appId;
                                        xiaomiAppKey.stringValue = thirdPartySetting.appKey;
                                        appSecret_in_memory      = thirdPartySetting.appSecret;
                                        appId_last     = xiaomiAppID.stringValue;
                                        appKey_last    = xiaomiAppKey.stringValue;
                                        appSecret_last = appSecret_in_memory;
                                    }
                                }
                                AppStoreOnboardApi.updateRev = unityClientResp.rev;
                                Debug.Log("Unity Client Refreshed. Finished: " + reqStruct.targetStep);
                                AppStoreOnboardApi.loaded = true;
                                isOperationRunning        = false;
                                serializedObject.ApplyModifiedProperties();
                                this.Repaint();
                                AssetDatabase.SaveAssets();
                            }
                            else
                            {
                                // no client found, generate one.
                                if (ownerAuthed)
                                {
                                    UnityClientInfo unityClientInfo = new UnityClientInfo();
                                    string          callbackUrl     = callbackUrl_in_memory;
                                    // read xiaomi from user input
                                    XiaomiSettings xiaomi = new XiaomiSettings();
                                    xiaomi.appId     = xiaomiAppID.stringValue;
                                    xiaomi.appKey    = xiaomiAppKey.stringValue;
                                    xiaomi.appSecret = appSecret_in_memory;
                                    UnityWebRequest     newRequest   = AppStoreOnboardApi.GenerateUnityClient(Application.cloudProjectId, unityClientInfo, xiaomi, callbackUrl);
                                    UnityClientResponse clientResp   = new UnityClientResponse();
                                    ReqStruct           newReqStruct = new ReqStruct();
                                    newReqStruct.request    = newRequest;
                                    newReqStruct.resp       = clientResp;
                                    newReqStruct.targetStep = reqStruct.targetStep;
                                    requestQueue.Enqueue(newReqStruct);
                                }
                                else
                                {
                                    Debug.LogError("Permision denied.");
                                    isOperationRunning = false;
                                }
                            }
                        }
                        else if (resp.GetType() == typeof(UnityClientResponse))
                        {
                            resp = JsonUtility.FromJson <UnityClientResponse> (request.downloadHandler.text);
                            unityClientID.stringValue           = ((UnityClientResponse)resp).client_id;
                            unityClientKey.stringValue          = ((UnityClientResponse)resp).client_secret;
                            unityClientRSAPublicKey.stringValue = ((UnityClientResponse)resp).channel.publicRSAKey;
                            clientSecret_in_memory = ((UnityClientResponse)resp).channel.channelSecret;
                            callbackUrl_in_memory  = ((UnityClientResponse)resp).channel.callbackUrl;
                            callbackUrl_last       = callbackUrl_in_memory;
                            foreach (ThirdPartySettingsResponse thirdPartySetting in ((UnityClientResponse)resp).channel.thirdPartySettings)
                            {
                                if (thirdPartySetting.appType.Equals(AppStoreOnboardApi.xiaomiAppType, StringComparison.InvariantCultureIgnoreCase))
                                {
                                    xiaomiAppID.stringValue  = thirdPartySetting.appId;
                                    xiaomiAppKey.stringValue = thirdPartySetting.appKey;
                                    appSecret_in_memory      = thirdPartySetting.appSecret;
                                    appId_last     = xiaomiAppID.stringValue;
                                    appKey_last    = xiaomiAppKey.stringValue;
                                    appSecret_last = appSecret_in_memory;
                                }
                            }
                            AppStoreOnboardApi.updateRev = ((UnityClientResponse)resp).rev;
                            Debug.Log("Unity Client Refreshed. Finished: " + reqStruct.targetStep);
                            AppStoreOnboardApi.loaded = true;
                            isOperationRunning        = false;
                            serializedObject.ApplyModifiedProperties();
                            this.Repaint();
                            AssetDatabase.SaveAssets();
                        }
                    }
                }
            }
            else
            {
                requestQueue.Enqueue(reqStruct);
            }
        }
Exemplo n.º 25
0
        public GeneralResponse EditAgency(EditAgencyRequestOld request)
        {
            GeneralResponse response = new GeneralResponse();
            Agency          agency   = new Agency();

            agency = _agencyRepository.FindBy(request.ID);

            if (agency != null)
            {
                try
                {
                    agency.ModifiedDate = PersianDateTime.Now;

                    agency.ModifiedEmployee = _employeeRepository.FindBy(request.ModifiedEmployeeID);
                    if (request.AgencyName != null)
                    {
                        agency.AgencyName = request.AgencyName;
                    }
                    if (request.ManagerName != null)
                    {
                        agency.ManagerName = request.ManagerName;
                    }
                    if (request.Phone1 != null)
                    {
                        agency.Phone1 = request.Phone1;
                    }
                    if (request.Phone2 != null)
                    {
                        agency.Phone2 = request.Phone2;
                    }
                    if (request.Mobile != null)
                    {
                        agency.Mobile = request.Mobile;
                    }
                    if (request.Address != null)
                    {
                        agency.Address = request.Address;
                    }
                    if (request.Note != null)
                    {
                        agency.Note = request.Note;
                    }

                    agency.Discontinued = request.Discontinued;

                    if (agency.RowVersion != request.RowVersion)
                    {
                        response.ErrorMessages.Add("EditConcurrencyKey");
                        return(response);
                    }
                    else
                    {
                        agency.RowVersion += 1;
                    }

                    if (agency.GetBrokenRules().Count() > 0)
                    {
                        foreach (BusinessRule businessRule in agency.GetBrokenRules())
                        {
                            response.ErrorMessages.Add(businessRule.Rule);
                        }

                        return(response);
                    }

                    _agencyRepository.Save(agency);
                    _uow.Commit();
                }
                catch (Exception ex)
                {
                    response.ErrorMessages.Add(ex.Message);
                    if (ex.InnerException != null)
                    {
                        response.ErrorMessages.Add(ex.InnerException.Message);
                    }
                }
            }
            else
            {
                response.ErrorMessages.Add("NoItemToEditKey");
            }
            return(response);
        }
Exemplo n.º 26
0
        public GeneralResponse EditCenter(IEnumerable <EditCenterRequest> requests, Guid ModifiedEmployeeID)
        {
            GeneralResponse response = new GeneralResponse();

            foreach (var request in requests)
            {
                Center center = new Center();
                center = _centerRepository.FindBy(request.ID);

                if (center != null)
                {
                    try
                    {
                        center.ModifiedDate     = PersianDateTime.Now;
                        center.ModifiedEmployee = _employeeRepository.FindBy(ModifiedEmployeeID);
                        if (request.CenterName != null)
                        {
                            center.CenterName = request.CenterName;
                        }
                        if (request.Note != null)
                        {
                            center.Note = request.Note;
                        }

                        #region RowVersion
                        if (center.RowVersion != request.RowVersion)
                        {
                            response.ErrorMessages.Add("EditConcurrencyKey");
                            return(response);
                        }
                        else
                        {
                            center.RowVersion += 1;
                        }

                        #endregion

                        #region Validation
                        if (center.GetBrokenRules().Count() > 0)
                        {
                            foreach (BusinessRule businessRule in center.GetBrokenRules())
                            {
                                response.ErrorMessages.Add(businessRule.Rule);
                            }

                            return(response);
                        }

                        #endregion

                        _centerRepository.Save(center);
                    }
                    catch (Exception ex)
                    {
                        response.ErrorMessages.Add(ex.Message);
                        return(response);
                    }
                }
                else
                {
                    response.ErrorMessages.Add("NoItemToEditKey");
                    return(response);
                }
            }

            try
            {
                _uow.Commit();
            }
            catch (Exception ex)
            {
                response.ErrorMessages.Add(ex.Message);
                if (ex.InnerException != null)
                {
                    response.ErrorMessages.Add(ex.InnerException.Message);
                }
            }

            return(response);
        }
Exemplo n.º 27
0
        public GeneralResponse EditPersenceSupport(EditPersenceSupportRequest request)
        {
            GeneralResponse response        = new GeneralResponse();
            PersenceSupport persenceSupport = new PersenceSupport();

            persenceSupport = _persenceSupportRepository.FindBy(request.ID);

            if (persenceSupport != null)
            {
                try
                {
                    // اگر تحویل شده بود قابل ویرایش نباشد
                    if (persenceSupport.Delivered)
                    {
                        response.ErrorMessages.Add("DeliveredAndCanNotBeEdited");
                        return(response);
                    }

                    persenceSupport.ModifiedDate     = PersianDateTime.Now;
                    persenceSupport.ModifiedEmployee = _employeeRepository.FindBy(request.ModifiedEmployeeID);
                    persenceSupport.PlanDate         = request.PlanDate;
                    persenceSupport.PlanNote         = request.PlanNote;
                    persenceSupport.PlanTimeFrom     = request.PlanTimeFrom;
                    persenceSupport.PlanTimeTo       = request.PlanTimeTo;
                    persenceSupport.Problem          = request.Problem;
                    persenceSupport.SupportType      = request.SupportType;
                    persenceSupport.Installer        = _employeeRepository.FindBy(request.InstallerID);

                    #region RowVersion Check

                    if (persenceSupport.RowVersion != request.RowVersion)
                    {
                        response.ErrorMessages.Add("کارشناس محترم، یک کاربر همزمان با شما در حال ویرایش این رکورد است. بنابراین اطلاعات شما ذخیره نمی شود.");
                        return(response);
                    }
                    else
                    {
                        persenceSupport.RowVersion += 1;
                        response.rowVersion         = persenceSupport.RowVersion;
                    }

                    #endregion

                    #region Validation

                    if (persenceSupport.GetBrokenRules().Count() > 0)
                    {
                        foreach (BusinessRule businessRule in persenceSupport.GetBrokenRules())
                        {
                            response.ErrorMessages.Add(businessRule.Rule);
                        }

                        return(response);
                    }

                    #endregion

                    _persenceSupportRepository.Save(persenceSupport);
                    _uow.Commit();
                }
                catch (Exception ex)
                {
                    response.ErrorMessages.Add(ex.Message);
                }
            }
            else
            {
                response.ErrorMessages.Add("NoItemToEditKey");
            }
            return(response);
        }
Exemplo n.º 28
0
        public ActionResult Edit(string id, StoreDetailView storeDetailView)
        {
            storeDetailView.EmployeeView = GetEmployee();

            #region Access Check
            bool hasPermission = GetEmployee().IsGuaranteed("Store_Update");
            if (!hasPermission)
            {
                ModelState.AddModelError("", "AccessDenied");
                return(View(storeDetailView));
            }
            #endregion


            #region DropDownList For Owner Employee

            storeDetailView.EmployeeViews = _employeeService.GetInstallExprets().EmployeeViews;
            List <DropDownItem> list = new List <DropDownItem>();

            if (storeDetailView.EmployeeViews != null)
            {
                foreach (EmployeeView employeeView in storeDetailView.EmployeeViews)
                {
                    list.Add(new DropDownItem {
                        Value = employeeView.ID.ToString(), Text = employeeView.Name
                    });
                }
            }
            var selectList = new SelectList(list, "Value", "Text");
            ViewData["InstallExprets"] = selectList;
            #endregion

            if (ModelState.IsValid)
            {
                try
                {
                    EditStoreRequestOld request = new EditStoreRequestOld();

                    request.ID = Guid.Parse(id);
                    request.ModifiedEmployeeID = GetEmployee().ID;
                    request.OwnerEmployeeID    = storeDetailView.StoreView.OwnerEmployeeID;
                    request.StoreName          = storeDetailView.StoreView.StoreName;
                    request.Note       = storeDetailView.StoreView.Note;
                    request.RowVersion = storeDetailView.StoreView.RowVersion;

                    GeneralResponse response = this._storeService.EditStore(request);

                    if (response.success)
                    {
                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        foreach (string error in response.ErrorMessages)
                        {
                            ModelState.AddModelError("", error);
                        }
                        return(View(storeDetailView));
                    }
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError("", ex.Message);
                    return(View(storeDetailView));
                }
            }

            return(View(storeDetailView));
        }
Exemplo n.º 29
0
 public BadRequestException(GeneralResponse gResp)
     : base(JsonConvert.SerializeObject(gResp))
 {
 }
Exemplo n.º 30
0
        public GeneralResponse AddLocalPhoneStoreEmployee(IEnumerable <AddLocalPhoneStoreEmployeeRequest> requests,
                                                          Guid OwnerEmployeeID,
                                                          Guid CreateEployeeID)
        {
            GeneralResponse response = new GeneralResponse();

            try
            {
                foreach (var request in requests)
                {
                    Query     localPhoneStoreEployeeQuery = new Query();
                    Criterion crt = new Criterion("LocalPhoneStore.ID", request.LocalPhoneStoreID,
                                                  CriteriaOperator.Equal);
                    localPhoneStoreEployeeQuery.Add(crt);
                    Response <LocalPhoneStoreEmployee> localPhoneStoreEmployeeSaved =
                        _localPhoneStoreEployeeRepository.FindByQuery(localPhoneStoreEployeeQuery);
                    if (localPhoneStoreEmployeeSaved.totalCount > 0)
                    {
                        response.ErrorMessages.Add("این شماره داخلی قبلا برای کارمند دیگری تعریف شده است");
                        return(response);
                    }

                    LocalPhoneStoreEmployee localPhoneStoreEmployee = new LocalPhoneStoreEmployee();

                    localPhoneStoreEmployee.ID               = Guid.NewGuid();
                    localPhoneStoreEmployee.CreateDate       = PersianDateTime.Now;
                    localPhoneStoreEmployee.CreateEmployee   = _employeeRepository.FindBy(CreateEployeeID);
                    localPhoneStoreEmployee.DangerousRing    = request.DangerousRing;
                    localPhoneStoreEmployee.DangerousSeconds = request.DangerousSeconds;
                    localPhoneStoreEmployee.LocalPhoneStore  =
                        _localPhoneStoreRepository.FindBy(request.LocalPhoneStoreID);
                    localPhoneStoreEmployee.OwnerEmployee = _employeeRepository.FindBy(OwnerEmployeeID);
                    localPhoneStoreEmployee.SendSmsToOffLineUserOnDangerous = request.SendSmsToOffLineUserOnDangerous;
                    localPhoneStoreEmployee.SendSmsToOnLineUserOnDangerous  = request.SendSmsToOnLineUserOnDangerous;
                    localPhoneStoreEmployee.SmsText    = request.SmsText;
                    localPhoneStoreEmployee.RowVersion = 1;

                    _localPhoneStoreEployeeRepository.Add(localPhoneStoreEmployee);


                    #region برچسب رزرو شده به لیست شماره های داخلی

                    LocalPhoneStore localPhoneStore = _localPhoneStoreRepository.FindBy(request.LocalPhoneStoreID);
                    localPhoneStore.Reserved = true;
                    _localPhoneStoreRepository.Save(localPhoneStore);

                    #endregion
                }

                _uow.Commit();
            }
            catch (Exception ex)
            {
                response.ErrorMessages.Add(ex.Message);
                if (ex.InnerException != null)
                {
                    response.ErrorMessages.Add(ex.InnerException.Message);
                }
            }

            return(response);
        }
Exemplo n.º 31
0
        public IHttpActionResult Post(CreditCardDepositRequest model)
        {
            GeneralResponse oResponse       = new GeneralResponse();
            DepositManager  oDepositManager = new DepositManager();
            AccountManager  oAccountManager = new AccountManager();
            FieldsService   oFieldsService  = new FieldsService();

            try
            {
                Dictionary <string, string> oErrors = oFieldsService.ValidateModel(ModelState);
                if (oErrors.Count != 0)
                {
                    oResponse.Success = 0;
                    oResponse.Message = "Error, campos invalidos";
                    oResponse.Data    = oErrors;

                    return(Content(HttpStatusCode.BadRequest, oResponse));
                }

                var            claims    = ClaimsPrincipal.Current.Identities.First().Claims.ToList();
                string         UserId    = claims?.FirstOrDefault(x => x.Type.Equals(ClaimTypes.Sid, StringComparison.OrdinalIgnoreCase))?.Value;
                List <Account> oAccounts = oAccountManager.GetUserAccountsByUserId(Convert.ToInt32(UserId));

                if (!oAccounts.Where(m => m.AccountId == model.DebitAccountId).Select(c => c).Any())
                {
                    throw new ArgumentException("La cuenta a la que desea depositar no pertenece al usuario logeado");
                }
                ;

                CreditCardDetector detector = new CreditCardDetector(model.CreditCardNumber);

                if (!detector.IsValid())
                {
                    throw new ArgumentException("Los datos de la tarjeta de credito no son valdios");
                }

                oDepositManager.DepositWithCreditCard(model.Amount, model.DebitAccountId, model.FullName, model.CreditCardNumber.Substring(model.CreditCardNumber.Length - 4), model.DocumentNumber, model.ExpirationDate);
                oAccountManager.UpdateAccountBalance(model.DebitAccountId, model.Amount);

                oResponse.Success = 1;
                oResponse.Message = "Exito - se ha realizado el deposito correctamente";

                return(Content(HttpStatusCode.OK, oResponse));
            }
            catch (ArgumentException ex)
            {
                oResponse.Success = 0;
                oResponse.Message = "Error - no se ha podido realizar el deposito";
                oResponse.Data    = ex.Message;

                return(Content(HttpStatusCode.BadRequest, oResponse));
            }
            catch (Exception ex)
            {
                oResponse.Success = 0;
                oResponse.Message = "Error - no se ha podido realizar el deposito";
                oResponse.Data    = ex.Message;

                return(Content(HttpStatusCode.BadRequest, oResponse));
            }
        }
Exemplo n.º 32
0
        private async void addAddressTap_Tapped(object sender, EventArgs e)
        {
            try
            {
                if (string.IsNullOrWhiteSpace(house_no.Text))
                {
                    Config.ErrorSnackbarMessage(ValidationMessages.HouseNoRequired);
                }
                else if (string.IsNullOrWhiteSpace(street_details.Text))
                {
                    Config.ErrorSnackbarMessage(ValidationMessages.StreetDetailRequired);
                }
                else if (country.SelectedIndex == 0)
                {
                    Config.ErrorSnackbarMessage(ValidationMessages.CountryRequired);
                }
                else if (state.SelectedIndex == 0)
                {
                    Config.ErrorSnackbarMessage(ValidationMessages.StateRequired);
                }
                else if (city.SelectedIndex == 0)
                {
                    Config.ErrorSnackbarMessage(ValidationMessages.CityRequired);
                }
                else if (string.IsNullOrWhiteSpace(pincode.Text))
                {
                    Config.ErrorSnackbarMessage(ValidationMessages.PincodeRequired);
                }
                else if (pincode.Text.Length < 6)
                {
                    Config.ErrorSnackbarMessage(ValidationMessages.PincodeMinimum);
                }
                else
                {
                    Config.ShowDialog();
                    UserAddress userAddress = new UserAddress
                    {
                        //address_type = address_type.Items[address_type.SelectedIndex],
                        //address_type = address_type.SelectedItem.ToString(),
                        //apartment_name = apartment_name.Items[apartment_name.SelectedIndex],
                        //area_details = area_details.Items[area_details.SelectedIndex],
                        country          = country.Items[country.SelectedIndex],
                        state            = state.Items[state.SelectedIndex],
                        city             = city.Items[city.SelectedIndex],
                        house_no         = house_no.Text,
                        landmark_details = landmark_details.Text,
                        street_details   = street_details.Text,
                        pincode          = pincode.Text,
                        user_id          = int.Parse(Application.Current.Properties["user_id"].ToString()),
                        name             = Application.Current.Properties["name"].ToString(),
                        mobile_number    = Application.Current.Properties["mobile_number"].ToString(),
                        //default_address = default_address.IsChecked ? 1 : 0,
                        default_address = 1,
                    };

                    var response = new GeneralResponse();
                    if (UserAddress != null)
                    {
                        userAddress.id = UserAddress.id;
                        response       = await UserLogic.SaveAddress(userAddress);

                        Config.HideDialog();
                    }
                    else
                    {
                        response = await UserLogic.AddAddress(userAddress);

                        Config.HideDialog();
                    }
                    if (response.status == 200)
                    {
                        Config.HideDialog();
                        //if (default_address.IsChecked)
                        //{
                        //    Application.Current.Properties["full_address"] = response.full_address;
                        //}
                        await Navigation.PopAsync();
                    }
                    else
                    {
                        Config.HideDialog();
                        Config.ErrorSnackbarMessage(response.message);
                    }
                    Config.HideDialog();
                }
            }
            catch (Exception ex)
            {
                Config.HideDialog();
                Config.ErrorStore("AddAddressPage-addAddressTap_Tapped", ex.Message);
                Config.ErrorSnackbarMessage(Config.ApiErrorMessage);
            }
        }
Exemplo n.º 33
0
        public ActionResult Create(NetworkCreditDetailView networkCreditDetailView)
        {
            networkCreditDetailView.EmployeeView = GetEmployee();

            #region Access Check
            bool hasPermission = GetEmployee().IsGuaranteed("NetworkCredit_Insert");
            if (!hasPermission)
            {
                ModelState.AddModelError("", "AccessDenied");
                return(View(networkCreditDetailView));
            }
            #endregion

            #region DropDownList For MoneyAccounts
            networkCreditDetailView.MoneyAccountViews = _moneyAccountService.GetBankAccounts().MoneyAccountViews;
            List <DropDownItem> list = new List <DropDownItem>();
            list.Add(new DropDownItem {
                Value = null, Text = "انتخاب نشده"
            });

            foreach (MoneyAccountView moneyAccountView in networkCreditDetailView.MoneyAccountViews)
            {
                list.Add(new DropDownItem {
                    Value = moneyAccountView.ID.ToString(), Text = moneyAccountView.AccountName
                });
            }
            var selectList = new SelectList(list, "Value", "Text");
            ViewData["BankAccounts"] = selectList;
            #endregion



            if (ModelState.IsValid)
            {
                try
                {
                    AddNetworkCreditRequestOld request = new AddNetworkCreditRequestOld();
                    request.CreateEmployeeID = GetEmployee().ID;
                    //Edited By Zafari
                    //Orginal if (networkCreditDetailView.NetworkCreditView.TypeForCreate == "برداشت")
                    if (networkCreditDetailView.NetworkCreditView.TypeForCreate == "B")
                    {
                        request.Amount = -Math.Abs(networkCreditDetailView.NetworkCreditView.Amount);
                    }
                    else
                    {
                        request.Amount = Math.Abs(networkCreditDetailView.NetworkCreditView.Amount);
                    }
                    request.FromAccountID = networkCreditDetailView.NetworkCreditView.FromAccountID;
                    request.InvestDate    = networkCreditDetailView.NetworkCreditView.InvestDate;
                    request.NetworkID     = networkCreditDetailView.NetworkCreditView.NetworkID;
                    request.ToAccount     = networkCreditDetailView.NetworkCreditView.ToAccount;
                    request.Note          = networkCreditDetailView.NetworkCreditView.Note;
                    request.TransactionNo = networkCreditDetailView.NetworkCreditView.TransactionNo;

                    GeneralResponse response = this._networkCreditService.AddNetworkCredit(request);

                    if (response.success)
                    {
                        return(RedirectToAction("Index/" + request.NetworkID));
                    }
                    else
                    {
                        foreach (string error in response.ErrorMessages)
                        {
                            ModelState.AddModelError("", error);
                        }
                        return(View(networkCreditDetailView));
                    }
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError("", ex.Message);
                    return(View(networkCreditDetailView));
                }
            }

            return(View(networkCreditDetailView));
        }
Exemplo n.º 34
0
        public GeneralResponse AddSupportTicketWaiting(AddSupportTicketWaitingRequest request, Guid CreateEmployeeID)
        {
            GeneralResponse response = new GeneralResponse();

            try
            {
                SupportTicketWaiting supportTicketwaiting = new SupportTicketWaiting();

                supportTicketwaiting.ID                         = Guid.NewGuid();
                supportTicketwaiting.CreateDate                 = PersianDateTime.Now;
                supportTicketwaiting.CreateEmployee             = _employeeRepository.FindBy(CreateEmployeeID);
                supportTicketwaiting.Comment                    = request.Comment;
                supportTicketwaiting.DateOfPersenceDate         = request.DateOfPersenceDate;
                supportTicketwaiting.InstallExpert              = _employeeRepository.FindBy(request.InstallExpertID);
                supportTicketwaiting.Selt                       = request.Selt;
                supportTicketwaiting.SendNotificationToCustomer = request.SendNotificationToCustomer;
                supportTicketwaiting.Snr                        = request.Snr;
                supportTicketwaiting.SourceWireCheck            = request.SourceWireCheck;
                supportTicketwaiting.Support                    = _supportRepository.FindBy(request.SupportID);
                supportTicketwaiting.TicketSubject              = request.TicketSubject;
                supportTicketwaiting.WireColor                  = request.WireColor;
                supportTicketwaiting.RowVersion                 = 1;



                SupportStatusRelation supportStatusRelation = _supportStatusRelationRepository.FindBy(request.SupportStatusID);
                supportTicketwaiting.Support.SupportStatus          = _supportStatusRepository.FindBy(supportStatusRelation.RelatedSupportStatus.ID);
                supportTicketwaiting.Support.Customer.SupportStatus = supportTicketwaiting.Support.SupportStatus;

                if (supportTicketwaiting.Support.SupportStatus.IsLastSupportState)
                {
                    supportTicketwaiting.Support.Closed = true;
                }

                _supportTicketWaitingRepository.Add(supportTicketwaiting);
                _uow.Commit();

                #region Send SMS

                if (supportTicketwaiting.Support.SupportStatus.SendSmsOnEnter)
                {
                    // Threading
                    SmsData smsData = new SmsData()
                    {
                        body = supportTicketwaiting.Support.SupportStatus.SmsText, phoneNumber = supportTicketwaiting.Support.Customer.Mobile1
                    };
                    Thread oThread = new Thread(SendSmsVoid);
                    oThread.Start(smsData);
                }

                #endregion
            }
            catch (Exception ex)
            {
                response.ErrorMessages.Add(ex.Message);
                if (ex.InnerException != null)
                {
                    response.ErrorMessages.Add(ex.InnerException.Message);
                }
            }

            return(response);
        }