//public int ChangePrintPriorityByOrderCode(string orderCode, string priority)
        //{
        //    return PrintMadeOrderDao.ChangePrintPriorityByOrderCode(orderCode, priority);
        //}

        //#endregion HighPrint - 우선출력

        //private void RollBackPrintMadeStatus(int orderId)
        //{
        //    IList<PrintMadeOrderItem> printMadeList = PrintMadeOrderDao.FindByOrderId(orderId);
        //    foreach (PrintMadeOrderItem item in printMadeList)
        //    {
        //        OrderHistoryService.RollbackPrintMadeStatus(item.Id);
        //    }
        //}

        //private void RollBackReadyMadeStatus(int orderId)
        //{
        //    IList<ReadyMadeOrderItem> readyMadeList = ReadyMadeOrderDao.FindByOrderId(orderId);
        //    foreach (ReadyMadeOrderItem item in readyMadeList)
        //    {
        //        OrderHistoryService.RollbackReadyMadeStatus(item.Id);
        //    }
        //}

        //public int InsertOrder(string userId)
        //{
        //    OrderItem orderItem = new OrderItem();
        //    orderItem.UserId = userId;
        //    int orderId = OrderDao.Insert(orderItem);
        //    return orderId;
        //}

        //public string GetOrderCode(int orderId)
        //{
        //    OrderItem item = OrderDao.FindById(orderId);
        //    return item.Code;
        //}

        //public OrderItem CreateNewOrderItem(string userId)
        //{
        //    OrderItem orderItem = new OrderItem();
        //    orderItem.UserId = userId;
        //    int orderId = OrderDao.Insert(orderItem);
        //    return OrderDao.FindById(orderId);
        //}

        //public BasicOrderParam GetBasicOrderParam(int orderId)
        //{
        //    return GetBasicOrderParamByType(orderId, "LIVING");
        //}

        //public BasicOrderParam GetBasicOrderParamWithComplete(int orderId)
        //{
        //    return GetBasicOrderParamByType(orderId, "ALL");
        //}

        //private BasicOrderParam GetBasicOrderParamByType(int orderId, string type)
        //{
        //    IList<ReadyMadeOrderItem> readyMadeOrderList = GetReaderMadeOrderListByType(orderId, type);
        //    IList<PrintMadeOrderItem> printMadeOrderList = GetPrintMadeOrderListByType(orderId, type);
        //    OrderItem orderItem = OrderDao.FindById(orderId);

        //    BasicOrderParam basicOrderParam = new BasicOrderParam();
        //    basicOrderParam.PrintMadeOrderList = printMadeOrderList;
        //    basicOrderParam.ReadyMadeOrderList = readyMadeOrderList;
        //    basicOrderParam.OrderItem = orderItem;

        //    return basicOrderParam;
        //}

        //private IList<ReadyMadeOrderItem> GetReaderMadeOrderListByType(int orderId, string type)
        //{
        //    if (type.Equals("LIVING")) return ReadyMadeOrderDao.FindLivingByOrderId(orderId);
        //    return ReadyMadeOrderDao.FindCompleteListByOrderId(orderId);
        //}

        //private IList<PrintMadeOrderItem> GetPrintMadeOrderListByType(int orderId, string type)
        //{
        //    if (type.Equals("LIVING")) return PrintMadeOrderDao.FindLivingByOrderId(orderId);
        //    return PrintMadeOrderDao.FindCompleteListByOrderId(orderId);
        //}

        //public int GetTaxAddedPrice(int orderId)
        //{
        //    IList<ReadyMadeOrderItem> readyMadeOrderList = ReadyMadeOrderDao.FindValidByOrderId(orderId);
        //    IList<PrintMadeOrderItem> printMadeOrderList = PrintMadeOrderDao.FindValidByOrderId(orderId);
        //    int readyMadeOrderPrice = readyMadeOrderList.Sum(item => item.TaxAddedTotalPrice);
        //    int printMadeOrderPrice = printMadeOrderList.Sum(item => item.TaxAddedTotalPrice);

        //    return readyMadeOrderPrice + printMadeOrderPrice;
        //}

        //public int GetTotalPrice(int orderId)
        //{
        //    PayInfoParam param = new PayInfoParam();

        //    IList<ReadyMadeOrderItem> readyMadeOrderList = ReadyMadeOrderDao.FindValidByOrderId(orderId);
        //    IList<PrintMadeOrderItem> printMadeOrderList = PrintMadeOrderDao.FindValidByOrderId(orderId);
        //    int readyMadeOrderPrice = readyMadeOrderList.Sum(item => item.TotalPrice);
        //    int printMadeOrderPrice = printMadeOrderList.Sum(item => item.TotalPrice);

        //    return readyMadeOrderPrice + printMadeOrderPrice;
        //}

        //public void SetPriceInPayInfoParam(int orderId, PayInfoParam param)
        //{
        //    IList<ReadyMadeOrderItem> readyMadeOrderList = ReadyMadeOrderDao.FindValidByOrderId(orderId);
        //    IList<PrintMadeOrderItem> printMadeOrderList = PrintMadeOrderDao.FindValidByOrderId(orderId);
        //    int readyMadeOrderPriceWithTax = readyMadeOrderList.Sum(item => item.TaxAddedTotalPrice);
        //    int printMadeOrderPriceWithTax = printMadeOrderList.Sum(item => item.TaxAddedTotalPrice);
        //    param.TaxAddedPrice = readyMadeOrderPriceWithTax + printMadeOrderPriceWithTax;

        //    int readyMadeOrderPrice = readyMadeOrderList.Sum(item => item.TaxAddedTotalPrice - item.Tax);
        //    int printMadeOrderPrice = printMadeOrderList.Sum(item => item.TaxAddedTotalPrice - item.Tax);
        //    param.GoodsPrice = readyMadeOrderPrice + printMadeOrderPrice;
        //}

        //[Transaction()]
        //public void ResetCanProductDateToMinDate(int id)
        //{
        //    OrderDao.UpdateCanProductDateToMinDate(id);
        //    PrintMadeOrderDao.UpdateProductRequestDateToMinDate(id);
        //    ReadyMadeOrderDao.UpdateProductRequestDateToMinDate(id);
        //}

        //public bool CanProduct(int id)
        //{
        //    IList<PrintMadeOrderItem> printMadeOrderList = PrintMadeOrderDao.FindLivingByOrderId(id);
        //    foreach (PrintMadeOrderItem item in printMadeOrderList)
        //    {
        //        if (!item.FileChecked()) return false;
        //    }

        //    OrderItem orderItem = OrderDao.FindById(id);
        //    if (!orderItem.PayStatus.Equals("PAID")) return false;

        //    return true;
        //}

        //[Transaction()]
        //public bool UpdateOrderStatusToProduct(int id)
        //{
        //    if (!CanProduct(id)) return false;
        //    OrderDao.UpdateOrderStatusToProduct(id);
        //    PrintMadeOrderDao.UpdateWorkStatusToGoodsOrderRequestByOrderId(id);
        //    ReadyMadeOrderDao.UpdateWorkStatusToGoodsOrderRequestByOrderId(id);

        //    UpdateOrderExpectDate.DoAction(id);

        //    OrderItem orderItem = OrderDao.FindById(id);
        //    string title = orderItem.Code + "の商品をただ今より出力に入らせていただきます。";
        //    MailService.SendOrderMailWithPhoneMail(orderItem, title);
        //    return true;
        //}

        //public OrderItem FindByMadeOrder(int madeOrderId, string orderType)
        //{
        //    if (orderType.Equals("PRINTMADE"))
        //    {
        //        return GetOrderItemByPrintMadeOrderId(madeOrderId);
        //    }
        //    return GetOrderItemByReadyMadeOrderId(madeOrderId);
        //}

        //private OrderItem GetOrderItemByPrintMadeOrderId(int printMadeOrderId)
        //{
        //    PrintMadeOrderItem item = PrintMadeOrderDao.FindById(printMadeOrderId);
        //    return OrderDao.FindById(item.OrderId);
        //}

        //private OrderItem GetOrderItemByReadyMadeOrderId(int readyMadeOrderId)
        //{
        //    ReadyMadeOrderItem item = ReadyMadeOrderDao.FindById(readyMadeOrderId);
        //    return OrderDao.FindById(item.OrderId);
        //}

        //public void UpdateOrderStatusByPrintMadeFileType(int id)
        //{
        //    UpdateOrderStatusByPrintMadeFileTypeUpdate.DoAction(id);
        //}

        //[Transaction()]
        //public void CancleOrder(int id)
        //{
        //    string workStatus = "CANCEL";

        //    OrderDao.UpdateOrderStatus(id, workStatus);
        //    PrintMadeOrderDao.UpdateWorkStatusByOrderId(id, workStatus);
        //    ReadyMadeOrderDao.UpdateWorkStatusByOrderId(id, workStatus);

        //    OrderItem orderItem = OrderDao.FindById(id);
        //    if (orderItem.PayInfoId == 0) return;
        //    PayInfoItem payInfoItem = PayInfoDao.FindById(orderItem.PayInfoId);
        //    SetCancelOrderProc(orderItem.Code, orderItem, payInfoItem, payInfoItem.TotalCharge);
        //}

        //[Transaction()]
        //public void CancleOrderWithTelegram(int id)
        //{
        //    var paygentRequestItem = PaygentRequestDao.RetrievePaymentRequestLatestItemByOrderId(id, "MK");
        //    Paygent_TELEGRAM_KIND telegramKind = Paygent_TELEGRAM_KIND.TELEGRAM_CARD_REQUEST;

        //    if (!Enum.TryParse<Paygent_TELEGRAM_KIND>(paygentRequestItem.Telegram_kind_code, out telegramKind))
        //    {
        //        CancleOrder(id);
        //        return;
        //    }
        //    if (telegramKind != Paygent_TELEGRAM_KIND.TELEGRAM_CARD_REQUEST)
        //    {
        //        CancleOrder(id);
        //        return;
        //    }

        //    var telegram = new PaygentTelegramRequest_DEFAULT();

        //    // Paygent로 부터 현재 상태 조회
        //    PaygentResult Result = PaygentService.ProcPaygentTelegramRequestManual(paygentRequestItem, Paygent_TELEGRAM_KIND.TELEGRAM_GENERAL_PAYMENT_INFO_SEARCH, telegram.ToRequestDictionary());
        //    if (Result.Result != PaygentResultStatus.SUCCESS)
        //    {
        //        if ("13001".Equals(Result.Response?.RESPONSE_HEADER_CODE)) // 해당 결제 정보가 존재하지 않습니다.
        //        {
        //            // 전표처리 하지 않는다.
        //            CancleOrder(id);
        //            return;
        //        }
        //        else
        //        {
        //            throw BizException.CreateMakumakuServiceException("エラーが発生しました。", "PG社から決済システムの応答がありません。\nしばらくお待ちになってから、もう一度行なってください。\nこの問題が続く場合、お手数ですが顧客センターまでご連絡お願いいたします。\n顧客センター(050-8882-5225)" + (Result.Response?.RESPONSE_HEADER_CODE ?? "."));
        //        }
        //    }

        //    PaygentResult cancelResult = null;
        //    string pg_payment_status = (Result.Response?.RESPONSE_DICTIONARY_LIST.FirstOrDefault()?["payment_status"] ?? "").ToString();
        //    switch (paygentRequestItem.LatestPaymentStatus)
        //    {
        //        case "":
        //            throw BizException.CreateMakumakuServiceException("エラーが発生しました。", "決済代行会社からお支払い情報を確認しています。しばらくお待ち頂いてから、再度お試しください。");
        //        case "10":
        //        case "11":
        //            // 전표처리 하지 않는다.
        //            break;

        //        case "20":
        //            if (!pg_payment_status.Equals(paygentRequestItem.LatestPaymentStatus)) throw BizException.CreateMakumakuServiceException("ORDCAN0004", "決済代行会社からお支払い情報を確認しています。しばらくお待ち頂いてから、再度お試しください。");
        //            cancelResult = PaygentService.ProcPaygentTelegramRequestManual(paygentRequestItem, Paygent_TELEGRAM_KIND.TELEGRAM_CARD_CANCEL, telegram.ToRequestDictionary());
        //            break;

        //        case "40":
        //            if (!pg_payment_status.Equals(paygentRequestItem.LatestPaymentStatus)) throw BizException.CreateMakumakuServiceException("ORDCAN0004", "決済代行会社からお支払い情報を確認しています。しばらくお待ち頂いてから、再度お試しください。");
        //            cancelResult = PaygentService.ProcPaygentTelegramRequestManual(paygentRequestItem, Paygent_TELEGRAM_KIND.TELEGRAM_CARD_SALES_CANCEL, telegram.ToRequestDictionary());
        //            break;

        //        default:
        //            // 그 외, 취소할 수 없는 상태 상세 메시지를 얻기 위해서 PG사로 전표 취소요청후 메시지를 응답 받는다.
        //            cancelResult = PaygentService.ProcPaygentTelegramRequestManual(paygentRequestItem, Paygent_TELEGRAM_KIND.TELEGRAM_CARD_SALES_CANCEL, telegram.ToRequestDictionary());
        //            break;
        //    }

        //    if (cancelResult != null && cancelResult.Result != PaygentResultStatus.SUCCESS)
        //    {
        //        string addMsg = cancelResult.Result.ToString();
        //        if (cancelResult.ManagedException != null) { addMsg += cancelResult.ManagedException.Message; }
        //        if (cancelResult.Response != null) { addMsg += cancelResult.Response.RESPONSE_HEADER_CODE; }
        //        throw BizException.CreateMakumakuServiceException("エラーが発生しました。", "PG社から決済システムの応答がありません。\nしばらくお待ちになってから、もう一度行なってください。\nこの問題が続く場合、お手数ですが顧客センターまでご連絡お願いいたします。\n顧客センター(050-8882-5225)" + addMsg);
        //    }

        //    CancleOrder(id);
        //}

        //public void SetUserWriteInfo(int id)
        //{
        //    OrderItem item = OrderDao.FindById(id);
        //    if (item.IsCustomerWriteStatus()) return;

        //    item.UserWriteDate = DateTime.Now;
        //    item.CommentWriteStatus = "CUSTOMER";
        //    OrderDao.Update(item);
        //}

        //public void SetManagerWriteInfo(int id)
        //{
        //    OrderItem item = OrderDao.FindById(id);

        //    item.ManagerWriteDate = DateTime.Now;
        //    item.CommentWriteStatus = "MANAGER";
        //    item.UserReadStatus = "NEW";
        //    item.UserReadDate = SqlDateTime.MinValue;
        //    OrderDao.Update(item);
        //}

        //public void ClearManagerWriteInfo(int id)
        //{
        //    OrderItem item = OrderDao.FindById(id);

        //    item.ManagerWriteDate = DateTime.Now;
        //    item.CommentWriteStatus = "MANAGER";
        //    item.UserReadStatus = "READ";
        //    item.UserReadDate = SqlDateTime.MinValue;
        //    OrderDao.Update(item);
        //}

        //public ListParam<OrderItem> GetOrderCommentListParam(string fieldName, string searchValue, int page, int pageSize, string type)
        //{
        //    int startNum = (page - 1) * pageSize + 1;
        //    int endNum = page * pageSize;
        //    int itemCount = OrderDao.GetTotalCountByCommentWriteStatus(fieldName, searchValue, type);

        //    ListParam<OrderItem> param = new ListParam<OrderItem>();
        //    param.ItemList = OrderDao.FindByCommentWriteStatus(fieldName, searchValue, type, startNum, endNum);
        //    param.FieldSelectList = GetFieldSelectList(fieldName);
        //    param.SearchValue = searchValue;
        //    param.Type = type;

        //    IPager pager = new ButtonPager() { TotalCount = itemCount, CurrentPage = page, PageSize = pageSize, CountOfListPage = BoardUtil.countOfPageList };
        //    param.Pager = pager;
        //    return param;
        //}

        //private SelectList GetFieldSelectList(string fieldName)
        //{
        //    IList<ListItem> list = new List<ListItem>();
        //    list.Add(new ListItem() { Value = "code", Text = "주문번호" });
        //    list.Add(new ListItem() { Value = "userName", Text = "주문자명" });
        //    return new SelectList(list, "Value", "Text", fieldName);
        //}

        //public OrderItem InsertReproductOrderItem(int id)
        //{
        //    OrderItem prevOrderItem = OrderDao.FindById(id);
        //    OrderItem newOrderItem = GetReProductOrderItem(prevOrderItem);

        //    int newOrderId = OrderDao.Insert(newOrderItem);
        //    newOrderItem = OrderDao.FindById(newOrderId);
        //    return newOrderItem;
        //}

        //private OrderItem GetReProductOrderItem(OrderItem prevOrderItem)
        //{
        //    OrderItem item = new OrderItem();
        //    item.UserId = prevOrderItem.UserId;

        //    item.DeliveryInfoId = GetDeliveryInfoIdForReRroduct(prevOrderItem.DeliveryInfoId);
        //    item.PayInfoId = GetPayInfoIdForReProduct(prevOrderItem.PayInfoId);

        //    item.OrderDate = DateTime.Now;
        //    return item;
        //}

        //private int GetDeliveryInfoIdForReRroduct(int prevDeliveryInfoId)
        //{
        //    DeliveryInfoItem item = DeliveryInfoDao.FindById(prevDeliveryInfoId);
        //    item.Id = 0;
        //    return DeliveryInfoDao.Insert(item);
        //}

        //private int GetPayInfoIdForReProduct(int prevPayInfoId)
        //{
        //    PayInfoItem item = PayInfoDao.FindById(prevPayInfoId);
        //    item.Id = 0;
        //    item.ProductCharge = 0;
        //    item.ShippingCharge = 0;
        //    item.ManPaidCharge = 0;
        //    item.CashPrice = 0;
        //    item.PointPaid = 0;
        //    item.BankUserName = "";
        //    item.PayType = "MAN";
        //    item.BankType = "";

        //    return PayInfoDao.Insert(item);
        //}

        //[Transaction()]
        //public void DeletePrintMadeOrder(int id, int printMadeOrderId)
        //{
        //    PrintMadeOrderItem printMadeOrderItem = PrintMadeOrderDao.FindById(printMadeOrderId);
        //    OrderItem orderItem = OrderDao.FindById(id);
        //    PayInfoItem payInfoItem = PayInfoDao.FindById(orderItem.PayInfoId);

        //    int madeOrderPrice = printMadeOrderItem.TaxAddedTotalPrice;

        //    if (HasLivingMadeOrder(id))
        //    {
        //        SetCancelOrderProc(printMadeOrderItem.Code, orderItem, payInfoItem, madeOrderPrice);
        //    }

        //    PrintMadeOrderDao.UpdateWorkStatus(printMadeOrderId, "CANCEL");

        //    if (!HasLivingMadeOrder(id))
        //    {
        //        OrderDao.UpdateOrderStatus(id, "CANCEL");
        //    }
        //    else
        //    {
        //        UpdateOrderStatusToProduct(id);
        //    }
        //}

        //[Transaction()]
        //public void DeletePrintMadeOrderByManager(int id, int printMadeOrderId)
        //{
        //    GoodsOrderInfo orderInfo = GetLivingGoodsOrderInfo(id);
        //    if (orderInfo.HasSingleGoods()) return;

        //    PrintMadeOrderItem printMadeOrderItem = PrintMadeOrderDao.FindById(printMadeOrderId);
        //    OrderItem orderItem = OrderDao.FindById(id);
        //    PayInfoItem payInfoItem = PayInfoDao.FindById(orderItem.PayInfoId);

        //    int madeOrderPrice = printMadeOrderItem.TaxAddedTotalPrice;
        //    SetCancelOrderProc(printMadeOrderItem.Code, orderItem, payInfoItem, madeOrderPrice);
        //    PrintMadeOrderDao.UpdateWorkStatus(printMadeOrderId, "CANCEL");
        //}

        private void SetCancelOrderProc(string code, OrderItem orderItem, PayInfoItem payInfoItem, int reducePrice)
        {
            int returnPoint = 0;

            if (payInfoItem.IsBank() && orderItem.IsPaid())
            {
                returnPoint = PayInfoService.ReducePayInfoWhenDepositChecked(payInfoItem, reducePrice);
            }
            else if (payInfoItem.PayType.StartsWith("TELEGRAM"))
            {
                if (payInfoItem.PayType.Equals("TELEGRAM_CARD_REQUEST") && orderItem.IsPaid())
                {
                    returnPoint = payInfoItem.PointPaid;
                }
                else
                {
                    returnPoint = orderItem.IsPaid() ? payInfoItem.CashPrice : payInfoItem.PointPaid;
                }
            }
            else
            {
                returnPoint = PayInfoService.ReducePayInfoWhenDepositUnChecked(payInfoItem, reducePrice);
            }

            PayInfoDao.Update(payInfoItem);

            if (returnPoint > 0)
            {
                string title = "[" + code + "]注文取り消しによる返金ポイント";
                PointService.AddPoint(title, returnPoint, orderItem.UserId);
            }
        }
Example #2
0
        public Stream GetPoint(Stream streamData)
        {
            try
            {
                StreamReader reader = new StreamReader(streamData);

                string res = reader.ReadToEnd();

                reader.Close();
                reader.Dispose();

                var s = new JavaScriptSerializer();

                string IdPoint = res.Split('=').GetValue(1).ToString();
                if (!isGuid.IsMatch(IdPoint))
                {
                    string error = s.Serialize("Error IDs");
                    return(new MemoryStream(Encoding.UTF8.GetBytes(error)));
                }

                PointModel point = new PointService().GetActivePoint(new Guid(IdPoint));

                string jsonClient = s.Serialize(point);
                WebOperationContext.Current.OutgoingResponse.ContentType = "application/json; charset=utf-8";

                return(new MemoryStream(Encoding.UTF8.GetBytes(jsonClient)));
            }
            catch (Exception)
            {
                return(new MemoryStream(Encoding.UTF8.GetBytes("")));
            }
        }
Example #3
0
        /// <summary>
        /// 用户解除管制后增加邀请人积分
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="eventArgs"></param>
        void FreeModeratedUser_After(User sender, CommonEventArgs eventArgs)
        {
            if (sender == null || string.IsNullOrEmpty(eventArgs.EventOperationType))
            {
                return;
            }
            if (eventArgs.EventOperationType == EventOperationType.Instance().CancelModerateUser() || eventArgs.EventOperationType == EventOperationType.Instance().AutoNoModeratedUser())
            {
                PointService pointService = new PointService();
                string       pointItemKey = string.Empty;
                pointItemKey = PointItemKeys.Instance().FreeModeratedUser();

                if (sender != null)
                {
                    InviteFriendRecord invitingUser = inviteFriendService.GetInvitingUserId(sender.UserId);
                    if (invitingUser != null)
                    {
                        if (!invitingUser.InvitingUserHasBeingRewarded)
                        {
                            string userName    = UserIdToUserNameDictionary.GetUserName(invitingUser.UserId);
                            string invitedName = UserIdToUserNameDictionary.GetUserName(sender.UserId);
                            string description = string.Format(ResourceAccessor.GetString("PointRecord_Pattern_FreeModeratedUser"), userName, invitedName);
                            pointService.GenerateByRole(invitingUser.UserId, pointItemKey, description);
                            inviteFriendService.RewardingUser(invitingUser.UserId);
                        }
                    }
                }
            }
        }
Example #4
0
        /// <summary>
        /// 处理加精操作加积分
        /// </summary>
        /// <param name="blogThread">日志</param>
        /// <param name="eventArgs">事件</param>
        private void BlogThreadPointModuleForManagerOperation_After(BlogThread blogThread, CommonEventArgs eventArgs)
        {
            NoticeService noticeService = new NoticeService();
            string        pointItemKey  = string.Empty;

            if (eventArgs.EventOperationType == EventOperationType.Instance().SetEssential())
            {
                pointItemKey = PointItemKeys.Instance().EssentialContent();

                PointService pointService = new PointService();
                string       description  = string.Format(ResourceAccessor.GetString("PointRecord_Pattern_" + eventArgs.EventOperationType), "日志", blogThread.ResolvedSubject);
                pointService.GenerateByRole(blogThread.UserId, pointItemKey, description);
                if (blogThread.UserId > 0)
                {
                    Notice notice = Notice.New();
                    notice.UserId             = blogThread.UserId;
                    notice.ApplicationId      = BlogConfig.Instance().ApplicationId;
                    notice.TypeId             = NoticeTypeIds.Instance().Hint();
                    notice.LeadingActor       = blogThread.Author;
                    notice.LeadingActorUrl    = SiteUrls.FullUrl(SiteUrls.FullUrl(SiteUrls.Instance().SpaceHome(blogThread.UserId)));
                    notice.RelativeObjectName = HtmlUtility.TrimHtml(blogThread.Subject, 64);
                    notice.RelativeObjectUrl  = SiteUrls.FullUrl(SiteUrls.Instance().BlogDetail(blogThread.User.UserName, blogThread.ThreadId));
                    notice.TemplateName       = NoticeTemplateNames.Instance().ManagerSetEssential();
                    noticeService.Create(notice);
                }
            }
        }
Example #5
0
        public ActionResult Edit(Guid id)
        {
            PointModel point = new PointService().GetPoint(id);

            PointViewModel viewModel = new PointViewModel
            {
                Id          = point.Id,
                Name        = point.Name,
                Address     = point.Address,
                PostalCode  = point.PostalCode,
                City        = point.City,
                Coordenate  = point.Coordenate,
                PhoneNumber = point.PhoneNumber,
                URL         = point.URL,
                SourceURL   = point.SourceURL,
                IsActive    = point.IsActive
            };

            if (point.Topics.Count > 0)
            {
                viewModel.SelectedTopicId = new string[point.Topics.Count];

                int i = 0;
                foreach (TopicModel item in point.Topics)
                {
                    viewModel.SelectedTopicId[i++] = item.Id.ToString();
                }
            }
            ViewBag.Topics = new MultiSelectList(new TopicService().GetActiveTopics(), "Id", "Name", viewModel.SelectedTopicId);
            ViewBag.City   = new SelectList(new CityService().GetCities(), "Id", "Name");

            return(View(viewModel));
        }
Example #6
0
        /// <summary>
        /// 用户积分处理
        /// </summary>
        /// <param name="sender">关注实体</param>
        /// <param name="eventArgs">事件参数</param>
        void FollowPointModule_After(FollowEntity sender, CommonEventArgs eventArgs)
        {
            IUserService userservice  = DIContainer.Resolve <IUserService>();
            IUser        followedUser = userservice.GetUser(sender.FollowedUserId);

            if (followedUser == null)
            {
                return;
            }

            string       pointItemKey = string.Empty;
            PointService pointService = new PointService();
            string       description  = string.Format(ResourceAccessor.GetString("PointRecord_Pattern_FollowUser"), followedUser.DisplayName);

            #region 设置积分项Key

            if (EventOperationType.Instance().Create() == eventArgs.EventOperationType)
            {
                pointItemKey = PointItemKeys.Instance().FollowUser();
            }
            else if (EventOperationType.Instance().Delete() == eventArgs.EventOperationType)
            {
                pointItemKey = PointItemKeys.Instance().CancelFollowUser();
            }

            #endregion

            pointService.GenerateByRole(sender.UserId, pointItemKey, description);
        }
Example #7
0
        /// <summary>
        /// 批量关注积分处理
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="eventArgs"></param>
        void BatchFollowPointModule_After(int sender, BatchFollowEventArgs eventArgs)
        {
            if (EventOperationType.Instance().Create() == eventArgs.EventOperationType && sender > 0)
            {
                string pointItemKey = string.Empty;
                pointItemKey = PointItemKeys.Instance().FollowUser();
                PointService pointService = new PointService();

                for (int i = 0; i < sender; i++)
                {
                    pointService.GenerateByRole(eventArgs.UserId, pointItemKey, "批量添加关注");
                }

                //更新用户缓存
                ICacheService       cacheService        = DIContainer.Resolve <ICacheService>();
                RealTimeCacheHelper realTimeCacheHelper = EntityData.ForType(typeof(User)).RealTimeCacheHelper;
                if (cacheService.EnableDistributedCache)
                {
                    realTimeCacheHelper.IncreaseEntityCacheVersion(eventArgs.UserId);
                }
                else
                {
                    string cacheKey = realTimeCacheHelper.GetCacheKeyOfEntity(eventArgs.UserId);
                    User   user     = cacheService.Get <User>(cacheKey);
                    if (user != null)
                    {
                        user.FollowedCount = user.FollowedCount + sender;
                    }
                }
            }
        }
Example #8
0
        /// <summary>
        /// 采纳满意回答
        /// </summary>
        /// <remarks>
        /// 1.如果问题有悬赏则悬赏分值转移到回答者的帐户(如有交易税,需要扣除),通过EventModule实现
        /// 2.除了悬赏分的交易,回答被采纳,回答者还会获得新产生的积分,通过EventModule实现
        /// 3.注意需要发送通知给问题的关注者,通过EventModule实现
        /// 4.需要触发的事件:SetBestAnswer的OnAfter
        /// </remarks>
        /// <param name="question">问题实体</param>
        /// <param name="answer">回答实体</param>
        public void SetBestAnswer(AskQuestion question, AskAnswer answer)
        {
            if (!answer.IsBest)
            {
                answer.IsBest = true;

                //调用Service中的Update方法,以触发相应的事件,但是不更新审核状态
                this.UpdateAnswer(answer, false);
                //todo:jiangshl,改为EventModule处理
                //处理威望
                OwnerDataService ownerDataService = new OwnerDataService(TenantTypeIds.Instance().User());

                //用户获得威望值
                PointService pointService = new PointService();
                //提问者获取威望值
                PointItem questionPointItem = pointService.GetPointItem(PointItemKeys.Instance().Ask_AcceptedAnswer());
                ownerDataService.Change(question.UserId, OwnerDataKeys.Instance().UserAskReputation(), questionPointItem.ReputationPoints);
                //回答者获得威望
                PointItem AnswerPointItem = pointService.GetPointItem(PointItemKeys.Instance().Ask_AnswerWereAccepted());
                ownerDataService.Change(answer.UserId, OwnerDataKeys.Instance().UserAskReputation(), AnswerPointItem.ReputationPoints);

                //用户计数
                ownerDataService.Change(answer.UserId, OwnerDataKeys.Instance().AnswerAcceptCount(), 1);
            }
        }
Example #9
0
        static void Main(string[] args)
        {
            using (var connection = PMCConnection.Create())
            {
                connection.Open();
                PMCDatabaseInstantiator.Init(connection, "PMCDB");

                Console.WriteLine("Database init done.");

                if (ContainerService.Count(connection) < containerArraySize ||
                    MatrixService.Count(connection) < matrixArraySize ||
                    PositionService.Count(connection) < positionArraySize ||
                    PointService.Count(connection) < pointArraySize)
                {
                    WriteTestDataToDB(connection);
                }

                TestElementsFromDB(connection);

                var containers = LoadDataFromDbToModel(connection);

                TestElementsFromPMCModel(containers);

                Console.WriteLine("End");
                connection.Close();
            }


            Console.ReadLine();
        }
Example #10
0
    public static bool MoveTrainForward(World model)
    {
        Logger.Log("Current: " + model.train.color + ", " + "Next: " + model.train.nextColor);

        Point             trainPoint = PointService.GetPointInGrid(model, model.train.toGridPos);
        List <Connection> cons       = ConnectionService.GetConnectionsForPointId(model, trainPoint.id);

        Connection matchingConnection = cons.Find(x => x.color == model.train.nextColor);

        if (matchingConnection == null)
        {
            matchingConnection = cons.Find(x => x.color == model.train.color);
        }
        else
        {
            model.train.color = model.train.nextColor;
        }

        if (matchingConnection == null)
        {
            Logger.Log("Game Over!");
            return(false);
        }
        else
        {
            Point forwardPoint = PointService.GetPointWithId(model, matchingConnection.toPointId);
            model.train.fromGridPos = model.train.toGridPos;
            model.train.toGridPos   = forwardPoint.gridPos;
            return(true);
        }
    }
Example #11
0
        /// <summary>
        /// 创建用户的时候修改积分
        /// </summary>
        /// <param name="sender">创建用户角色</param>
        /// <param name="eventArgs">参数</param>
        void RegisterEventModule_After(User sender, CreateUserEventArgs eventArgs)
        {
            PointService pointService = new PointService();
            string       description  = string.Format(ResourceAccessor.GetString("PointRecord_Pattern_Register"), sender.UserName);

            pointService.GenerateByRole(sender.UserId, PointItemKeys.Instance().Register(), description);
        }
Example #12
0
        private void UpdatePayInfo(OrderItem orderItem, int payInfoId, PayInfoItem payInfoItem)
        {
            PayInfoItem prevPayInfoItem = PayInfoDao.FindById(payInfoId);

            if (prevPayInfoItem.PointPaid > 0)
            {
                string title = "[" + orderItem.Code + "]支払方法変更による返金ポイント";
                PointService.AddPoint(title, prevPayInfoItem.PointPaid, orderItem.UserId);
            }

            payInfoItem.Id = payInfoId;

            if (!orderItem.OrderStatus.Equals("ORDER_CONFIRM"))
            {
                OrderDao.UpdateOrderStatus(orderItem.Id, "PAY_INFO");
            }

            if (payInfoItem.IsMan() || (payInfoItem.PayType.Equals("TELEGRAM_CARD_REQUEST") && orderItem.IsPaid()))
            {
                OrderDao.UpdatePayStatus(orderItem.Id, "PAID");
            }
            else if (payInfoItem.IsBank() && (prevPayInfoItem.IsMan() || prevPayInfoItem.IsBank() || (payInfoItem.PayType.Equals("TELEGRAM_CARD_REQUEST") && !orderItem.IsPaid())))
            {
                OrderDao.UpdatePayStatus(orderItem.Id, "UNPAID");
            }

            PayInfoDao.Update(payInfoItem);

            if (payInfoItem.PointPaid > 0)
            {
                SubtractPoint(orderItem, payInfoItem);
            }
            OrderService.UpdateOrderStatusToProduct(orderItem.Id);
        }
Example #13
0
        public static void Add(this Journee journee, Joueur joueur, Partie partie, PointService service)
        {
            var pts = service.CalculPointsGagnePerdu(joueur.PointOfficiel, partie.Classement, partie.Victoire.ToVictoireDefaite(), 1).PointsJoueur1;

            journee.PointsGagnesPerdus += pts;
            partie.PointsGagnesPerdus   = pts;
            journee.Parties.Add(partie);
        }
Example #14
0
        public void TestGetSquaresCount_WhenNoSquares_Return0()
        {
            //Arrange
            DbContextOptionsBuilder <SquareContext> optionsBuilder = new();

            optionsBuilder.UseInMemoryDatabase(MethodBase.GetCurrentMethod().Name);

            using (SquareContext ctx = new(optionsBuilder.Options))
            {
                var s1_point1 = new Point {
                    CoordinateX = 0, CoordinateY = 3
                };
                var s1_point2 = new Point {
                    CoordinateX = 1, CoordinateY = 2
                };
                var s1_point3 = new Point {
                    CoordinateX = 3, CoordinateY = 0
                };
                var s1_point4 = new Point {
                    CoordinateX = 0, CoordinateY = 0
                };

                var s2_point1 = new Point {
                    CoordinateX = -1, CoordinateY = 1
                };
                var s2_point2 = new Point {
                    CoordinateX = 1, CoordinateY = 1
                };
                var s2_point3 = new Point {
                    CoordinateX = 1, CoordinateY = -2
                };
                var s2_point4 = new Point {
                    CoordinateX = -1, CoordinateY = -1
                };


                ctx.AddRange(new Point[] { s1_point1, s1_point2, s1_point3, s1_point4 });
                ctx.AddRange(new Point[] { s2_point1, s2_point2, s2_point3, s2_point4 });
                ctx.SaveChanges();
            }

            ActionResult <int> result;

            using (SquareContext ctx = new(optionsBuilder.Options))
            {
                var pointService = new PointService(ctx);

                var controller = new SquareController(pointService);

                //Act
                result = controller.GetSquaresCount();
            }

            var count = result.Value;

            //Assert
            Assert.AreEqual(0, count);
        }
Example #15
0
 public Administrator(IServiceProvider serviceProvider, CommandService commandService) : base(serviceProvider)
 {
     _serviceProvider   = serviceProvider;
     _guildRepository   = _serviceProvider.GetRequiredService <GuildRepository>();
     _userRepository    = _serviceProvider.GetRequiredService <UserRepository>();
     _commandService    = commandService;
     _moderationService = _serviceProvider.GetRequiredService <ModerationService>();
     _pointService      = _serviceProvider.GetRequiredService <PointService>();
 }
Example #16
0
        private static void Main()
        {
            var service = new PointService(new PointIconFactory());

            foreach (var point in service.GetPoints())
            {
                point.Draw();
            }
        }
Example #17
0
        public RootJsonReponse Get(int id)
        {
            var result = PointService.GetPoints(id);;

            var geoPoits    = result.AsEnumerable <GeoPointDTO>();
            var matchResult = RouteMatchingService.MatchRoute(result);

            return(matchResult);
        }
Example #18
0
        public static void Structural_FlyWeight()
        {
            var service = new PointService(new PointIconFactory());

            foreach (var point in service.GetPoints())
            {
                point.Draw();
            }
        }
Example #19
0
        public static void Run()
        {
            var service = new PointService(new PointIconFactory());

            Console.WriteLine("Points of Interest:");
            foreach (var point in service.GetPoints())
            {
                point.Draw();
            }
        }
Example #20
0
        private static void ExecuteFlyWeight()
        {
            var factory      = new PointIconFactory();
            var pointService = new PointService(factory);

            foreach (var p in pointService.GetPoints())
            {
                p.Draw();
            }
        }
        public OrderManager(string connectionString, string mapBoxAccessToken)
        {
            _mapBoxService  = new MapboxService(mapBoxAccessToken, MapBoxProfile.Driving);
            _orderService   = new OrderService(connectionString);
            _courierService = new CourierService(connectionString);
            _pointService   = new PointService(connectionString);
            _routeService   = new RouteService(connectionString);

            _ordersQueue = new Queue <OrderDto>();
        }
Example #22
0
 public HomeController()
 {
     this._alarmService   = new AlarmService();
     this._areaService    = new AreaService();
     this._stationService = new StationService();
     this._deviceService  = new DeviceService();
     this._pointService   = new PointService();
     this._orderService   = new OrderService();
     this._valueService   = new ValueService();
     this._excelManager   = new ExcelManager();
 }
 /// <summary>
 /// 创建邀请记录之后的方法
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="eventArgs"></param>
 void CreateInviteFriendRecordEventModule_After(InviteFriendRecord sender, CommonEventArgs eventArgs)
 {
     if (eventArgs.EventOperationType == EventOperationType.Instance().Create())
     {
         PointService pointService = new PointService();
         string       userName     = UserIdToUserNameDictionary.GetUserName(sender.UserId);
         string       invitedName  = UserIdToUserNameDictionary.GetUserName(sender.InvitedUserId);
         string       description  = string.Format(ResourceAccessor.GetString("PointRecord_Pattern_CreateInviteFriendRecord"), userName, invitedName);
         pointService.GenerateByRole(sender.UserId, PointItemKeys.Instance().InviteUserRegister(), description, true);
     }
 }
Example #24
0
        /// <summary>
        /// 转换为PointItem
        /// </summary>
        /// <returns>PointItem</returns>
        public PointItem AsPointItem()
        {
            PointItem pointItem = new PointService().GetPointItem(ItemKey);

            pointItem.ItemKey          = this.ItemKey;
            pointItem.ItemName         = this.ItemName;
            pointItem.TradePoints      = this.TradePoints;
            pointItem.ReputationPoints = this.ReputationPoints;
            pointItem.ExperiencePoints = this.ExperiencePoints;
            return(pointItem);
        }
Example #25
0
 /// <summary>
 /// 删除被评论对象时评论的积分处理
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="eventArgs"></param>
 void CommentsDeleteEventModel_After(IEnumerable <Comment> sender, CommonEventArgs eventArgs)
 {
     if (eventArgs.EventOperationType == EventOperationType.Instance().Delete() && sender != null)
     {
         PointService pointService = new PointService();
         foreach (var item in sender)
         {
             string description = string.Format(ResourceAccessor.GetString("PointRecord_Pattern_DeleteComment"), item.Author, item.Subject);
             pointService.GenerateByRole(item.UserId, PointItemKeys.Instance().DeleteComment(), description);
         }
     }
 }
Example #26
0
        /// <summary>
        /// 处理加精、置顶等操作
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="eventArgs"></param>
        private void BarThreadPointModuleForManagerOperation_After(BarThread sender, CommonEventArgs eventArgs)
        {
            NoticeService noticeService = new NoticeService();

            if (eventArgs.OperatorInfo == null)
            {
                return;
            }
            string pointItemKey = string.Empty;

            if (eventArgs.EventOperationType == EventOperationType.Instance().SetEssential())
            {
                pointItemKey = PointItemKeys.Instance().EssentialContent();
                if (sender.UserId > 0 && sender.UserId != eventArgs.OperatorInfo.OperatorUserId)
                {
                    Notice notice = Notice.New();
                    notice.UserId             = sender.UserId;
                    notice.ApplicationId      = BarConfig.Instance().ApplicationId;
                    notice.TypeId             = NoticeTypeIds.Instance().Hint();
                    notice.LeadingActor       = sender.Author;
                    notice.LeadingActorUrl    = SiteUrls.FullUrl(SiteUrls.FullUrl(SiteUrls.Instance().SpaceHome(sender.UserId)));
                    notice.RelativeObjectName = HtmlUtility.TrimHtml(sender.Subject, 64);
                    notice.RelativeObjectUrl  = SiteUrls.FullUrl(SiteUrls.Instance().ThreadDetail(sender.ThreadId));
                    notice.TemplateName       = NoticeTemplateNames.Instance().ManagerSetEssential();
                    noticeService.Create(notice);
                }
            }
            else if (eventArgs.EventOperationType == EventOperationType.Instance().SetSticky())
            {
                pointItemKey = PointItemKeys.Instance().StickyContent();
                if (sender.UserId > 0 && sender.UserId != eventArgs.OperatorInfo.OperatorUserId)
                {
                    Notice notice = Notice.New();
                    notice.UserId             = sender.UserId;
                    notice.ApplicationId      = BarConfig.Instance().ApplicationId;
                    notice.TypeId             = NoticeTypeIds.Instance().Hint();
                    notice.LeadingActor       = sender.Author;
                    notice.LeadingActorUrl    = SiteUrls.FullUrl(SiteUrls.FullUrl(SiteUrls.Instance().SpaceHome(sender.UserId)));
                    notice.RelativeObjectName = HtmlUtility.TrimHtml(sender.Subject, 64);
                    notice.RelativeObjectUrl  = SiteUrls.FullUrl(SiteUrls.Instance().ThreadDetail(sender.ThreadId));
                    notice.TemplateName       = NoticeTemplateNames.Instance().ManagerSetSticky();
                    noticeService.Create(notice);
                }
            }

            if (!string.IsNullOrEmpty(pointItemKey))
            {
                PointService pointService = new PointService();
                string       description  = string.Format(ResourceAccessor.GetString("PointRecord_Pattern_" + eventArgs.EventOperationType), "帖子", sender.Subject);
                pointService.GenerateByRole(sender.UserId, pointItemKey, description);
            }
        }
Example #27
0
        /// <summary>
        /// 首次上传头像加分
        /// </summary>
        /// <param name="sender">用户实体</param>
        /// <param name="eventArgs">事件参数</param>
        public void UserPointEventModule_After(User sender, CropAvatarEventArgs eventArgs)
        {
            string pointItemKey       = string.Empty;
            string eventOperationType = string.Empty;

            if (eventArgs.IsFirst)
            {
                PointService pointService = new PointService();
                pointItemKey = PointItemKeys.Instance().FirstUploadAvatar();
                string description = ResourceAccessor.GetString("PointRecord_Pattern_FirstUploadAvatar");
                pointService.GenerateByRole(sender.UserId, pointItemKey, description, true);
            }
        }
Example #28
0
        /// <summary>
        /// 处理加精操作加积分
        /// </summary>
        private void PhotoPointModuleForManagerOperation_After(Photo photo, CommonEventArgs eventArgs)
        {
            string pointItemKey = string.Empty;

            if (eventArgs.EventOperationType == EventOperationType.Instance().SetEssential())
            {
                pointItemKey = PointItemKeys.Instance().EssentialContent();

                PointService pointService = new PointService();
                string       description  = string.Format(ResourceAccessor.GetString("PointRecord_Pattern_" + eventArgs.EventOperationType), "照片", HtmlUtility.TrimHtml(photo.Description, 64));
                pointService.GenerateByRole(photo.UserId, pointItemKey, description);
            }
        }
Example #29
0
 public AppClient()
 {
     this._userService    = new UserService();
     this._roleService    = new RoleService();
     this._alarmService   = new AlarmService();
     this._areaService    = new AreaService();
     this._stationService = new StationService();
     this._deviceService  = new DeviceService();
     this._pointService   = new PointService();
     this._orderService   = new OrderService();
     this._valueService   = new ValueService();
     this._cacheManager   = new CacheManager();
 }
Example #30
0
    public void BindData()
    {
        topic = topicBll.GetTopicByTid(int.Parse(TopicId.ToString()));
        sort  = topicBll.GetTpicSort();

        topicSource = topicBll.GetTopicSource();
        firstPoint  = new PointService().GetFirstPoint();
        topicType   = topicBll.GetTopicType();

        SecondPoint second = new PointService().GetSecondPointById(int.Parse(topic.SecondPointId.ToString()));

        secondPoint = new PointService().GetSecondPoints(int.Parse(second.FIrstPointId.ToString()));
    }