public string Json(Context context)
        {
            var elements = new List <Element>();

            if (this.Any())
            {
                var now = DateTime.Now.ToLocal(context: context).Date;
                for (var d = 0; d <= Days; d++)
                {
                    var currentTime = MinTime.AddDays(d);
                    var targets     = Targets(currentTime);
                    var totalValue  = targets.Select(o => o.WorkValue).Sum();
                    elements.Add(new Element()
                    {
                        Day = currentTime.ToLocal(
                            context: context,
                            format: Displays.YmdFormat(context: context)),
                        Total   = TotalValueSummary(currentTime, now, totalValue),
                        Planned = PlannedValueSummary(currentTime, targets, totalValue),
                        Earned  = EarnedValueSummary(currentTime, now, targets, totalValue)
                    });
                }
            }
            return(Jsons.ToJson(elements));
        }
Example #2
0
    private void LoadItem()
    {
        equipment = new List <Equipment>();

        ArrayEquipment ar = new ArrayEquipment();

        ar.lstEquipment.Add(new Equipment());
        ar.lstEquipment.Add(new Equipment());
        ar.lstEquipment.Add(new Equipment());

        string EnemyDataPatsh = Setting.APPLICATION_PATH + "/" + Setting.ITEM_PATH;
        //string json = FileSystem.instance.Readfile(EnemyDataPath, false);

        string EnemyDataPath = Setting.DATA_PATH + Setting.ITEM_PATH;
        string json          = FileSystem.instance.ReadFromResource(EnemyDataPath.Replace(".json", ""), false);
        //equipment = Jsons.LoadFromString<ArrayEquipment>(json).lstEquipment;
        string js = Jsons.CreateJsonFromObject <ArrayEquipment>(ar);

        FileSystem.instance.WriteToFile(EnemyDataPatsh, js, false);
        if (equipment.Count <= 0)
        {
            Logs.LogE("Load item fail");
        }
        else
        {
            Logs.LogE("Load item :" + equipment.Count);
        }
    }
Example #3
0
        /// <summary>
        /// Fixed:
        /// </summary>
        public static string Change(string reference, long id)
        {
            if (!Contract.Export())
            {
                return(Error.Types.Restricted.MessageJson());
            }
            var exportSettingModel = new ExportSettingModel()
                                     .Get(where : Rds.ExportSettingsWhere()
                                          .ExportSettingId(Forms.Long("ExportSettings_ExportSettingId")));
            var invalid = ExportSettingValidator.OnExporting(
                SiteSettingsUtilities.GetByReference(reference, id));

            switch (invalid)
            {
            case Error.Types.None: break;

            default: return(invalid.MessageJson());
            }
            SetSessions(exportSettingModel);
            exportSettingModel.Session_ExportColumns(Jsons.ToJson(exportSettingModel.ExportColumns));
            return(new ResponseCollection()
                   .Html("#ExportSettings_Columns", new HtmlBuilder()
                         .SelectableItems(listItemCollection: exportSettingModel.ExportColumnHash()))
                   .Val("#ExportSettings_Title", exportSettingModel.Title.Value)
                   .Val("#ExportSettings_AddHeader", exportSettingModel.AddHeader)
                   .ClearFormData()
                   .ToJson());
        }
 public static HtmlBuilder ViewFilters(
     this HtmlBuilder hb, Context context, SiteSettings ss, View view)
 {
     return(ss.ReferenceType != "Sites" && ss.UseFiltersArea == true
         ? !Reduced(context: context, siteId: ss.SiteId)
             ? hb.Div(
                id: "ViewFilters",
                action: () => hb
                .DisplayControl(
                    context: context,
                    id: "ReduceViewFilters",
                    icon: "ui-icon-close")
                .Reset(context: context)
                .Incomplete(
                    context: context,
                    ss: ss,
                    view: view)
                .Own(
                    context: context,
                    ss: ss,
                    view: view)
                .NearCompletionTime(
                    context: context,
                    ss: ss,
                    view: view)
                .Delay(
                    context: context,
                    ss: ss,
                    view: view)
                .Limit(
                    context: context,
                    ss: ss,
                    view: view)
                .Columns(
                    context: context,
                    ss: ss,
                    view: view)
                .Search(
                    context: context,
                    view: view)
                .Hidden(
                    controlId: "TriggerRelatingColumns_Filter",
                    value: Jsons.ToJson(ss?.RelatingColumns),
                    _using: ss?.UseRelatingColumnsOnFilter == true))
             : hb.Div(
                id: "ViewFilters",
                css: "reduced",
                action: () => hb
                .DisplayControl(
                    context: context,
                    id: "ExpandViewFilters",
                    icon: "ui-icon-folder-open")
                .Hidden(
                    controlId: "TriggerRelatingColumns_Filter",
                    value: Jsons.ToJson(ss?.RelatingColumns),
                    _using: ss?.UseRelatingColumnsOnFilter == true))
         : hb);
 }
    void SaveProfile()
    {
        this.Scale    = transform.parent.transform.localScale;
        this.Rotation = transform.parent.transform.localRotation.eulerAngles;
        this.Position = transform.parent.transform.localPosition;
        string jsonString = Jsons.CreateJsonFromObject <PlayerAttribute>(this);

        Profile.instance.SaveProfile(jsonString, false);
    }
Example #6
0
 public JsonResult AjaxTest(Jsons jo)
 {
     if (jo.GetProv())
     {
         listJ.listJ.Add(jo);
     }
     else
     {
         jo.GoToBD(_unit);
     }
     return(Json(listJ.listJ));
 }
Example #7
0
        public static JsonCommand ParseAsCommandRequest(int clientNo, string command)
        {
            JsonCommand req = Jsons.FromJson <JsonCommand>(command);

            if (clientNo > -1)
            {
                req.clientNo = clientNo;
            }


            return(req);
        }
Example #8
0
 public JsonResult GetAnswer(Jsons jo)
 {
     //отправка в БД и МЛ
     foreach (Jsons j in listJ.listJ)
     {
         if (j.Number == jo.Number)
         {
             listJ.listJ.Remove(j);
             break;
         }
     }
     jo.GoToBD(_unit);
     return(Json(jo));
 }
Example #9
0
        public string Json()
        {
            var choices = GroupBy?
                          .EditChoices(insertBlank: true)
                          .Select(o => o.Key)
                          .ToList();

            return(Jsons.ToJson(this
                                .OrderBy(o => choices?.IndexOf(o.GroupBy))
                                .ThenByDescending(o => o.GroupSummary)
                                .ThenBy(o => o.StartTime)
                                .ThenBy(o => o.CompletionTime)
                                .ThenBy(o => o.Title)));
        }
Example #10
0
    public void LoadResource()
    {
        lstEnemy = new List <EnemyStat>();
        //string EnemyDataPath = Setting.APPLICATION_PATH + "/" + Setting.ENEMY_PATH;
        //string json = FileSystem.instance.Readfile(EnemyDataPath, false);

        string EnemyDataPath = Setting.DATA_PATH + Setting.ENEMY_PATH;
        string json          = FileSystem.instance.ReadFromResource(EnemyDataPath.Replace(".json", ""), false);

        lstEnemy = Jsons.LoadFromString <ArrayEnemy>(json).lstEnemy;
        if (lstEnemy.Count <= 0)
        {
            Logs.LogE("Load enemy fail");
        }
    }
Example #11
0
        /**
         *
         * @param data
         * @return
         */
        public static JsonCommand OK(CommandDirective directive, object data)
        {
            string json = null;

            if (data != null)
            {
                if (typeof(string).IsAssignableFrom(data.GetType()))
                {
                    json = (string)data;
                }
                else
                {
                    json = Jsons.ToJson(data);
                }
            }
            return(new JsonCommand(directive, 0, json, ""));
        }
Example #12
0
        public JsonCommand Execute(JsonCommand command)
        {
            REQ req;

            if (typeof(string).IsAssignableFrom(reqType))
            {
                // req = (REQ) command.data;
                req = (REQ)Convert.ChangeType(command.data, typeof(REQ));
            }
            else
            {
                req = Jsons.FromJson <REQ>(command.data);
            }

            JsonCommand dr = DoExecute(req);

            return(dr);
        }
Example #13
0
        private void UploadCaptchaImage(CaptchaAnswerImage img)
        {
            string url = conf.UploadCaptchaTaskUrl;
            CaptchaImageUploadRequest req = new CaptchaImageUploadRequest();

            req.token     = "devJustTest";
            req.uid       = img.Uuid;
            req.timestamp = KK.CurrentMills();
            req.from      = "test";

            int httpStatus;
            DataResult <CaptchaImageUploadResponse> dr = HttpClients
                                                         .PostWithFiles <DataResult <CaptchaImageUploadResponse> >(url, req, new List <string> {
                img.ImagePath1, img.ImagePath2
            }, out httpStatus);

            logger.InfoFormat("upload catpcha task#{0}, result is {1}", img.Uuid, Jsons.ToJson(dr));
        }
 void LoadProfile()
 {
     //Load profile
     try
     {
         string profile = Profile.instance.GetProfile(false);
         if (!string.IsNullOrEmpty(profile))
         {
             Operator(Jsons.LoadFromString <PlayerStat>(profile));
             transform.parent.transform.position   = this.Position;
             transform.parent.transform.rotation   = Quaternion.Euler(Rotation);
             transform.parent.transform.localScale = this.Scale;
         }
     }
     catch (Exception ex)
     {
         Logs.LogE("Can't load profile : " + ex.ToString());
     }
 }
Example #15
0
        public static string Editor(Context context, SiteSettings ss, WikiModel wikiModel)
        {
            var invalid = WikiValidators.OnEditing(
                context: context, ss: ss, wikiModel: wikiModel);

            switch (invalid)
            {
            case Error.Types.None: break;

            default: return(HtmlTemplates.Error(context, invalid));
            }
            var hb = new HtmlBuilder();

            ss.SetColumnAccessControls(
                context: context,
                mine: wikiModel.Mine(context: context));
            return(hb.Template(
                       context: context,
                       ss: ss,
                       verType: wikiModel.VerType,
                       methodType: wikiModel.MethodType,
                       siteId: wikiModel.SiteId,
                       parentId: ss.ParentId,
                       referenceType: "Wikis",
                       title: wikiModel.MethodType == BaseModel.MethodTypes.New
                    ? Displays.New()
                    : wikiModel.Title.DisplayValue,
                       useTitle: ss.TitleColumns?.Any(o => ss.EditorColumns.Contains(o)) == true,
                       userScript: ss.EditorScripts(
                           context: context, methodType: wikiModel.MethodType),
                       userStyle: ss.EditorStyles(
                           context: context, methodType: wikiModel.MethodType),
                       action: () => hb
                       .Editor(
                           context: context,
                           ss: ss,
                           wikiModel: wikiModel)
                       .Hidden(controlId: "TableName", value: "Wikis")
                       .Hidden(controlId: "Id", value: wikiModel.WikiId.ToString())
                       .Hidden(controlId: "TriggerRelatingColumns", value: Jsons.ToJson(ss.RelatingColumns))
                       .Hidden(controlId: "DropDownSearchPageSize", value: Parameters.General.DropDownSearchPageSize.ToString()))
                   .ToString());
        }
Example #16
0
        public void ToJsonTest()
        {
            DateTime dt    = DateTime.Now;
            long     mills = KK.ToMills(dt);
            DateTime dt2   = KK.ToDateTime(mills);

            Console.Out.WriteLine("mills is " + mills);

            PriceActionRequest req = new PriceActionRequest();

            req.MachineCode    = "123456";
            req.OccurTime      = DateTime.Now;
            req.ScreenTime     = DateTime.Now;
            req.UsedDelayMills = 23;

            string json    = Jsons.ToJson(req);
            string reqText = req.ToLine();


            Console.Out.WriteLine("json is " + json);
        }
Example #17
0
        public ScreenImageUploadResponse UploadFileToSaber(string filePath, int uploadType = 0)
        {
            string url = conf.UploadRobotScreenUrl;
            CaptchaImageUploadRequest req = new CaptchaImageUploadRequest();

            req.machineCode = robot.GetMachineCode();
            req.token       = "devJustTest";
            req.uid         = KK.GetFileNameNoSuffix(filePath);
            req.timestamp   = KK.CurrentMills();
            req.from        = "test";
            req.uploadType  = uploadType;

            int httpStatus;
            DataResult <ScreenImageUploadResponse> dr = HttpClients
                                                        .PostWithFiles <DataResult <ScreenImageUploadResponse> >(url, req, new List <string> {
                filePath
            }, out httpStatus);

            logger.InfoFormat("upload file#{0}, result is {1}", req.uid, Jsons.ToJson(dr));

            return(DataResults.IsOK(dr) ? dr.Data : null);
        }
Example #18
0
 public string ToJson()
 {
     return(Jsons.ToJson(new Comments(this)));
 }
Example #19
0
 public string ToJson()
 {
     return(Jsons.ToJson(new ExportColumns(this)));
 }
Example #20
0
        public void AfterSuccessDetect(PagePrice pp)
        {
            if (!isLegalMinte(pp.pageTime))
            {
                return;
            }

            // 如果该秒已经计算过
            if (!biddingContext.TryStartPagePrice(pp))
            {
                return;
            }

            long s1 = KK.CurrentMills();

            DateTime now = DateTime.Now;

            biddingContext.AddPrice(pp);

            var req = biddingPriceManager.Calcs(pp);

            if (req == null)
            {
                logger.InfoFormat("afterDetect elapsed {0}ms", KK.CurrentMills() - s1);
                return;
            }

            logger.InfoFormat("req is {0}", Jsons.ToJson(req));

            // 这里存在,正在输入价格或上传验证码时,会有来自价格同步的触发,存在并发场景
            // 所以先用了同步锁
            lock (logger)
            {
                if (req.OperateStatus == StrategyOperateStatus.NEED_OFFER_PRICE)
                {
                    // 出价前 检查 距离上次 出价时间 是否在 6秒 内
                    // 如果在6秒内,则不能出价了,因为会报 操作频繁
                    List <BiddingPriceRequest> unSubmited = biddingPriceManager.GetPreviousUnSubmitRequest(pp.pageTime.Second);
                    bool canOffer = true;
                    if (unSubmited?.Count > 0)
                    {
                        var last     = unSubmited.Last();
                        int duration = (int)(pp.pageTime - last.OfferedScreenTime).TotalSeconds;
                        if (duration < 6)
                        {
                            canOffer = false;
                        }
                        logger.InfoFormat("unSubmited between now duration is {0}, canOffer is {1}", duration, canOffer);
                    }

                    // 然后直接出价
                    if (canOffer)
                    {
                        // CaptchaAnswerImage ansImg =
                        phase2Manager.OfferPrice(req.TargetPrice, true, (ansImg) => {
                            biddingContext.PutAwaitImage(ansImg, null);
                            req.CaptchaUuid = ansImg.Uuid;
                            return(true);
                        });

                        req.OperateStatus = StrategyOperateStatus.CAPTCHA_AWAIT;

                        biddingPriceManager.CancelnOutOfDateRequest(req.StrategySecond);

                        //
                        AsyncReportPriceOffered(pp, req.TargetPrice, DateTime.Now);
                    }
                    else
                    {
                        // 不能出价时,则取消该策略 TODO: 不能依赖 canOffer 做移除
                        logger.InfoFormat("strategy#{0} canOffer is false, need remove", req.StrategySecond);
                        biddingPriceManager.RemoveStrategy(req.StrategySecond);
                    }
                }
                else if (req.OperateStatus == StrategyOperateStatus.STRATEGY_RANGE_MATCHED)
                {
                    // 命中区间策略
                    // 移除该策略
                    logger.InfoFormat("range strategy#{0} matched, need remove", pp.pageTime.Second);
                    biddingPriceManager.RemoveStrategy(pp.pageTime.Second);
                }

                if (req.CanSubmit)
                {
                    req.SubmittedScreenTime  = pp.pageTime;
                    req.SubmittedScreenPrice = pp.basePrice;
                    SubmitOfferedPrice(req);
                }
            }

            logger.InfoFormat("afterDetect elapsed {0}ms", KK.CurrentMills() - s1);
        }
Example #21
0
 //
 public static RawMessage BuildJsonMessage(int clientNo, JsonCommand body)
 {
     return(From(10002, clientNo, Jsons.ToJson(body)));
 }
Example #22
0
 /// <summary>
 /// Fixed:
 /// </summary>
 public static void SetSessions(ExportSettingModel exportSettingModel)
 {
     exportSettingModel.Session_Title(exportSettingModel.Title);
     exportSettingModel.Session_AddHeader(exportSettingModel.AddHeader);
     exportSettingModel.Session_ExportColumns(Jsons.ToJson(exportSettingModel.ExportColumns));
 }