示例#1
0
        public CustomerImageDto AddImageToCustomer(int[] pixels, int customerID, int width, int height)
        {
            Customer      customer = _repository.Load <Customer>(customerID);
            CustomerImage image    = new CustomerImage();

            var face = ImageProcessingUtils.DetectAndTrimFace(pixels, new Size(width, height), new Size(80, 80), HaarCascadeLocation);

            if (face == null)
            {
                return(null);
            }

            var equalized = ImageProcessingUtils.EqualizeHist(face);

            image.Customer = customer;

            image.Data = equalized.Bytes;
            image.Date = DateTime.Now;


            using (TransactionScope scope = new TransactionScope())
            {
                _repository.Save <CustomerImage>(image);
                scope.Complete();
            }

            return(new CustomerImageDto()
            {
                Id = image.Id, Data = equalized.Bytes
            });
        }
示例#2
0
        public async Task <IActionResult> AddImage(CustomerImageViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                var path = string.Empty;

                if (viewModel.ImageFile != null)
                {
                    path = await _imageHelper.UploadCustomerImageAsync(viewModel.ImageFile);
                }

                var customerImage = new CustomerImage
                {
                    ImageUrl = path,
                    Customer = await _dataContext.Customers.FindAsync(viewModel.Id)
                };

                _dataContext.CustomerImages.Add(customerImage);
                await _dataContext.SaveChangesAsync();

                return(RedirectToAction("Details", "Customers", new { id = viewModel.Id }));
            }

            return(View(viewModel));
        }
示例#3
0
        /// <summary>
        /// Creates a new Customer
        /// </summary>
        /// <param name="customerdetailBDO"></param>
        /// <returns></returns>
        public int CreateCustomerDetail(CustomerDetailBDO customerdetailBDO)
        {
            using (var scope = new TransactionScope())
            {
                var customer = new Customer
                {
                    CustomerTypeId = 1,
                    UserId         = "1", /*Hard Coded User ID will Switch when user going to create their own account*/
                    FirstName      = customerdetailBDO.FirstName,
                    LastName       = customerdetailBDO.LastName,
                    Email          = customerdetailBDO.Email,
                    Phone          = customerdetailBDO.Phone,
                    Mobile         = customerdetailBDO.Mobile,
                    AddressLine1   = customerdetailBDO.AddressLine1,
                    AddressLine2   = customerdetailBDO.AddressLine2,
                    AddressLine3   = customerdetailBDO.AddressLine3,
                    PostCode       = customerdetailBDO.PostCode,
                    CountryId      = customerdetailBDO.CountryId,
                    CityId         = customerdetailBDO.CityId,
                    CreatedDate    = DateTime.Now,
                };
                _unitOfWork.CustomerRepository.Insert(customer);
                _unitOfWork.Save();

                var customereventdetail = new CustomerEventDetail
                {
                    CustomerId  = customer.Id,
                    EventId     = 1,
                    Capacity    = customerdetailBDO.CustomerEventDetails.Capacity,
                    CostPerHead = customerdetailBDO.CustomerEventDetails.CostPerHead,
                };
                _unitOfWork.CustomerEventDetailRepository.Insert(customereventdetail);
                _unitOfWork.Save();

                foreach (var imageitem in customerdetailBDO.CustomerImages)
                {
                    var customerimage = new CustomerImage
                    {
                        CustomerId = customer.Id,
                        Image      = imageitem.Image
                    };
                    _unitOfWork.CustomerImageRepository.Insert(customerimage);
                    _unitOfWork.Save();
                }

                scope.Complete();
                return(customer.Id);
            }
        }
示例#4
0
    void ChangeCustomerPortrait()
    {
        if (!GameManager.instance.IsGameRunning)
        {
            return;
        }
        changePortraitTimer += Time.deltaTime;

        if (changePortraitTimer >= GameManager.instance.ticketReductionIncrement)
        {
            changePortraitTimer = Mathf.Epsilon;
            if (curCustImg == CustomerImage.happy)
            {
                sliderSrc.value -= GameManager.instance.ticketReductionIncrement / timeLimit;
            }
            else
            {
                sliderSrc.value -= GameManager.instance.ticketReductionIncrement / timeLimit * GameManager.instance.ticketReductionMultiplier;
            }
        }

        if (sliderSrc.value >= 0.66)
        {
            fillSrc.color = Color.green;
        }
        else if (sliderSrc.value < 0.66 && sliderSrc.value >= 0.33)
        {
            fillSrc.color = Color.yellow;
        }
        else
        {
            fillSrc.color = Color.red;
        }

        if (sliderSrc.value <= 0)
        {
            if (curCustImg == CustomerImage.happy)
            {
                curCustImg = CustomerImage.neutral;


                switch (itemType)
                {
                case ItemType.radio:
                    itemTypeID = "2_";
                    break;

                case ItemType.guitar:
                    itemTypeID = "1_";
                    break;

                case ItemType.TV:
                    itemTypeID = "3_";
                    break;

                case ItemType.clock:
                    itemTypeID = "4_";
                    break;

                default:
                    Debug.Log("None");
                    break;
                }

                Debug.Log(itemTypeID);

                custPortImgSrc.sprite = custPortList.Find(item => item.name.Contains(itemTypeID + "Neutral"));  //"Neutral_"
            }
            else if (curCustImg == CustomerImage.neutral)
            {
                curCustImg            = CustomerImage.sad;
                custPortImgSrc.sprite = custPortList.Find(item => item.name.Contains(itemTypeID + "Angry"));  //"Sad_"
            }

            if (curCustImg != CustomerImage.sad)
            {
                sliderSrc.value = 1;
            }
        }
    }