public JsonResult Create(int parentId, Models.DataTableItemModel model)
        {
            if (ModelState.ValidateFail())
            {
                return(Json(DealResult.Wrong(ModelState.ValidateMessage())));
            }
            var data = new Models.DataTableItemModel();

            model.MapTo(data);

            if (GetDataSource(parentId).Count == 0)
            {
                data.Id = 1;
            }
            else
            {
                data.Id = GetDataSource(parentId).Max(o => o.Id) + 1;
            }
            model.DealUpload((file) =>
            {
                data.File = FileLocation.Create(file.FileName, file.ContentType, "");
            }, o => o.File);
            data.Files = new List <HttpPostedFileBase>();
            model.DealUpload((file) =>
            {
                data.Files.Add(FileLocation.Create(file.FileName, file.ContentType, ""));
            }, o => o.Files);
            GetDataSource(parentId).Insert(0, data);
            return(Json(DealResult.Refresh("添加成功")));
        }
Example #2
0
        //新增单据、档案协同
        public override Model.DealResult MakeVouch(BaseData bd)
        {
            DealResult dr = new DealResult();

            dr = base.MakeVouch(bd);
            return(dr);
        }
Example #3
0
        public JsonResult EditResult(Models.DataTableItemModel model)
        {
            if (ModelState.ValidateFail())
            {
                return(Json(DealResult.Wrong(ModelState.ValidateMessage())));
            }
            var data = GetDataSource().FirstOrDefault(o => o.Id == model.Id);

            if (data != null)
            {
                model.MapTo(data);
                model.DealUpload((file) =>
                {
                    data.File = FileLocation.Create(file.FileName, file.ContentType, "");
                }, () =>
                {
                    data.File = null;
                }, o => o.File);
                model.DealUpload((file) =>
                {
                    data.Files.Add(FileLocation.Create(file.FileName, file.ContentType, ""));
                }, (index) =>
                {
                    data.Files.RemoveAt(index);
                }, o => o.Files);
            }
            return(Json(DealResult.Refresh()));
        }
        public JsonResult Remove(Guid[] selectedId)
        {
            if (selectedId == null || selectedId.Length == 0)
            {
                return(Json(DealResult.Refresh()));
            }
            var appClients   = new Application.AppClient();
            var actionResult = true;

            foreach (var item in selectedId)
            {
                if (!appClients.Remove(item))
                {
                    actionResult = false;
                }
            }
            if (actionResult)
            {
                return(Json(DealResult.Refresh()));
            }
            else
            {
                return(Json(DealResult.WrongRefresh("有帐单在引用,不能删除。")));
            }
        }
        public int TrySell(IBuyerSeller seller, Item item, int count, decimal price)
        {
            DealResult result = DealResult.Success;

            var      list     = Program.dataBase.buyOrders;
            BuyOrder buyOrder = list.Aggregate((i1, i2) => i1.price < i2.price ? i1 : i2);

            if (count > buyOrder.count)
            {
                count  = buyOrder.count;
                result = DealResult.Partial;
            }

            decimal summ = price * count;

            seller.Money += summ;

            Cargo cargo =
                buyOrder.Trader.Cargos.FirstOrDefault(c => c.itemId == item.id);

            cargo.count += count;


            buyOrder.count -= count;
            if (buyOrder.count == 0)
            {
                buyOrder.Trader.BuyOrders.Remove(buyOrder);
                Program.dataBase.buyOrders.Remove(buyOrder);
            }

            Program.dataBase.SaveChanges();

            return((int)result);
        }
Example #6
0
        /// <summary>
        /// 入口函数
        /// </summary>
        /// <param name="vouchtype"></param>
        /// <param name="dsHead"></param>
        /// <param name="dsBody"></param>
        public void Run(string vouchtype, DataSet dsHead, DataSet dsBody)
        {
            Model.Synergismlog log = new Synergismlog();
            log.OP       = (APIOp)ClassFactory.GetBaseOp(vouchtype, tasktype);
            log.TaskType = tasktype;

            DealResult dr = new DealResult();

            dr.ResultNum = Constant.ResultNum_NoError;

            BLL.TaskLog.ITaskLogDetail logdtbll = ClassFactory.GetITaskLogDetailBLL(log.TaskType);
            BLL.TaskLog.ITaskLogMain   logbll   = ClassFactory.GetITaskLogMainBLL(log.TaskType);

            Model.Synergismlogdt fdt = logdtbll.GetFrist(log, log.OP);

            //把记录设为处理中
            log.Cstatus = Constant.SynerginsLog_Cstatus_Dealing;
            log.Endtime = DateTime.Now;
            logbll.Update(log, log.OP);

            //预置为完成
            log.Cstatus = Constant.SynerginsLog_Cstatus_Complete;

            //获取下一节点(节点数可能大于1)
            List <Model.Synergismlogdt> listnext = logdtbll.GetNext(fdt, log.OP);

            //协同操作
            dr = MakeLogDT(vouchtype, dsHead, dsBody, log, dr, logdtbll, logbll, fdt, listnext);
        }
Example #7
0
 public JsonResult CreateResult(Models.TableEditModel model)
 {
     DataService.Instance.Add(new Data()
     {
         Name = model.Name, Avatar = DataFile.Create(model.File)
     });
     return(Json(DealResult.Refresh()));
 }
Example #8
0
        /// <summary>
        /// 返回封装好的Json结果
        /// </summary>
        /// <param name="result"></param>
        /// <param name="message"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public System.Web.Mvc.JsonResult JsonResult(bool result, string message, object data)
        {
            DealResult obj = new DealResult()
            {
                Result = result, Message = message, Data = data
            };

            return(Json(obj));
        }
Example #9
0
        /// <summary>
        /// 返回封装好的Json结果
        /// </summary>
        /// <param name="result"></param>
        /// <param name="message"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public System.Web.Mvc.JsonResult JsonResult(bool result, string message, object data)
        {
            DealResult obj = new DealResult()
            {
                Result = result, Message = message, Data = data
            };

            return(Json(obj, JsonRequestBehavior.AllowGet));
        }
Example #10
0
        public DealResult DealResult(bool result, string message = "", object data = null)
        {
            DealResult obj = new DealResult()
            {
                Result = result, Message = message, Data = data
            };

            return(obj);
        }
Example #11
0
        public List <DealResult> selectDeal()
        {
            List <DealResult> dealResultList = new List <DealResult>();

            try
            {
                int    count = 1;
                string query = "select cu.ctmname,ca.model," +
                               "ca.money,se.sellname,d.trddate " +
                               "from trade_t d, car_t ca, customer_t cu, seller_t se " +
                               " where d.carnum = ca.carnum and d.ctmnum = cu.ctmnum " +
                               "and d.sellnum = se.sellnum";

                cmd.Connection  = conn;
                cmd.CommandText = query;
                cmd.CommandType = System.Data.CommandType.Text;
                OracleDataReader reader = cmd.ExecuteReader();

                if (reader.HasRows)
                {
                    while (reader.Read())
                    {
                        Console.WriteLine("번호: " + count);
                        Console.WriteLine("고객명: " + reader["ctmname"]);
                        Console.WriteLine("모델: " + reader["model"]);
                        string           price     = reader["money"].ToString();
                        double           dPrice    = Convert.ToDouble(price);
                        NumberFormatInfo numformat =
                            new CultureInfo("ko-KR", false).NumberFormat;
                        price = dPrice.ToString("c", numformat);

                        Console.WriteLine("가격: " + price);
                        Console.WriteLine("판매자: " + reader["sellname"]);
                        Console.WriteLine("구매날짜: " + reader["trddate"]);
                        Console.WriteLine("---------------------------");
                        DealResult dResult = new DealResult(count,
                                                            reader["ctmname"].ToString(),
                                                            reader["model"].ToString(),
                                                            price,
                                                            reader["sellname"].ToString(),
                                                            reader["trddate"].ToString());
                        dealResultList.Add(dResult);
                        count++;
                    }
                }
                else
                {
                    Console.WriteLine("데이터가 존재하지 않습니다.");
                }
            }
            catch (OracleException e)
            {
                errorMsg("selectDeal()", e);
            }
            return(dealResultList);
        }
Example #12
0
        /// <summary>
        /// 创建错误内容
        /// </summary>
        /// <param name="message">消息</param>
        /// <returns></returns>
        public static DealResult Wrong(string message)
        {
            var result = new DealResult
            {
                Success = false,
                Message = message
            };

            return(result);
        }
Example #13
0
        public JsonResult ShowResult(Models.ShowModel model)
        {
            var data = GetDataSource().FirstOrDefault(o => o.Id == model.Id);

            if (data == null)
            {
                return(Json(DealResult.WrongRefresh("无效操作")));
            }
            return(Json(DealResult.Show(string.Format("显示 {0}", data.Name))));
        }
Example #14
0
 public JsonResult Login(Models.LoginModel model)
 {
     if (model.Account == "root" && !string.IsNullOrEmpty(model.Hash))
     {
         return(Json(DealResult.Location(Url.Location(Index))));
     }
     else
     {
         return(Json(DealResult.Wrong("帐号或密码错误")));
     }
 }
Example #15
0
        /// <summary>
        /// 重定向
        /// </summary>
        /// <param name="location">位置</param>
        /// <returns></returns>
        public static DealResult Location(ILocation location)
        {
            var result = new DealResult
            {
                Path    = location.Path,
                Behave  = location.Behave,
                Success = true
            };

            return(result);
        }
Example #16
0
        /// <summary>
        /// 显示消息
        /// </summary>
        /// <param name="message">消息</param>
        /// <returns></returns>
        public static DealResult Show(string message)
        {
            var result = new DealResult
            {
                CloseOpen = true,
                Success   = true,
                Message   = message
            };

            return(result);
        }
Example #17
0
        /// <summary>
        /// 刷新数据
        /// </summary>
        /// <returns></returns>
        public static DealResult Refresh()
        {
            var result = new DealResult
            {
                CloseOpen = true,
                NewData   = true,
                Success   = true
            };

            return(result);
        }
Example #18
0
        /// <summary>
        /// 刷新数据
        /// </summary>
        /// <param name="message">消息</param>
        /// <returns></returns>
        public static DealResult WrongRefresh(string message)
        {
            var result = new DealResult
            {
                CloseOpen = true,
                NewData   = true,
                Message   = message,
                Success   = false
            };

            return(result);
        }
Example #19
0
        /// <summary>
        /// 显示消息并重定向
        /// </summary>
        /// <param name="location">位置</param>
        /// <param name="message">消息</param>
        /// <returns></returns>
        public static DealResult Location(ILocation location, string message)
        {
            var result = new DealResult
            {
                Path    = location.Path,
                Behave  = location.Behave,
                Message = message,
                Success = true
            };

            return(result);
        }
Example #20
0
        private DealResult DoSomeWork(List <string> srcColletion, CancellationToken token, string outPutPath, string InPath, int dHeight, int dWidth, int flag)
        {
            string     errMsg   = "";
            LogContext log      = new LogContext();
            string     path     = System.IO.Directory.GetCurrentDirectory();
            DateTime   CurrTime = DateTime.Now;
            DealResult res      = new DealResult();
            string     strPath  = path + "\\HandDataLog\\" + CurrTime.Year + "-" + CurrTime.Month + "\\" + CurrTime.Day + ".txt";
            Stopwatch  st       = new Stopwatch();

            st.Start();
            string diFile = "";

            foreach (string siFile in srcColletion)
            {
                // FileInfo fi = new FileInfo(siFile);
                diFile = siFile.Replace(InPath, outPutPath);
                if (!Directory.Exists(Path.GetDirectoryName(diFile)))
                {
                    Directory.CreateDirectory(Path.GetDirectoryName(diFile));
                }

                if (token.IsCancellationRequested)
                {
                    showMsg(this, new EventMessage {
                        msg = "线程" + Task.CurrentId + "任务已经取消!"
                    });                                                                     //"线程"+id.ToString()+
                    onAllTaskCompleteHandler(this, new EventMessage {
                        msg = "线程" + Thread.CurrentThread.ManagedThreadId + "任务被终止!"
                    });                                                                                                               //"线程"+id.ToString()+
                    break;
                }
                bool r = HandlerForImg.GetPicThumbnail(siFile, diFile, ref errMsg, dHeight, dWidth, flag);
                if (!r)
                {
                    res.failCount += 1;
                    showMsg(this, new EventMessage {
                        msg = "压缩不成功,路径名:" + siFile + "错误信息:" + errMsg
                    });
                    log.AddLogInfo(strPath, "压缩不成功,路径名:" + siFile + "错误信息:" + errMsg, true);
                }
                showMsg(this, new EventMessage {
                    msg = "压缩成功,输出路径:" + diFile
                });
                //log.AddLogInfo(strPath, "压缩成功,输出路径:" + diFile, true);
                res.sucessCount += 1;
            }
            st.Stop();
            res.totalTime += st.ElapsedMilliseconds / 1000;
            //Thread.Sleep(1000);
            return(res);
        }
Example #21
0
        public List <DealResult> selectDeal()
        {
            List <DealResult> dReultList = new List <DealResult>();

            try
            {
                int    count = 1;
                String query = "select cu.c_name, ca.v_model, ca.v_price, se.s_name,d.d_day " +
                               "from deal d, car ca, customer cu, seller se " +
                               "WHERE d.v_id = ca.v_id and d.c_id = cu.c_id and d.s_id = se.s_id";
                cmd.Connection  = conn;
                cmd.CommandText = query;
                cmd.CommandType = System.Data.CommandType.Text;
                OracleDataReader reader = cmd.ExecuteReader();


                if (reader.HasRows)
                {
                    while (reader.Read())
                    {
                        Console.WriteLine("번호:" + count);
                        Console.WriteLine("고객명:" + reader["c_name"]);
                        Console.WriteLine("모델:" + reader["v_model"]);
                        string           price     = reader["v_price"].ToString();
                        double           dPrice    = Convert.ToDouble(price);
                        NumberFormatInfo numFormat = new CultureInfo("ko-KR", false).NumberFormat;
                        price = dPrice.ToString("c", numFormat);
                        Console.WriteLine("가격:" + price);
                        Console.WriteLine("판매자:" + reader["s_name"]);
                        Console.WriteLine("구매날짜:" + reader["d_day"]);
                        Console.WriteLine("---------------------------");
                        DealResult dResult = new DealResult(count,
                                                            reader["c_name"].ToString(),
                                                            reader["v_model"].ToString(), price, reader["s_name"].ToString(),
                                                            reader["d_day"].ToString());
                        dReultList.Add(dResult);
                        count++;
                    }
                }
                else
                {
                    Console.WriteLine("데이터가 존재하지 않습니다.");
                    return(null);
                }
                reader.Close();
            }
            catch (OracleException e)
            {
                errorMsg("selectDeal()", e);
            }
            return(dReultList);
        }
        public JsonResult CreateResult(Models.AppClientCreateModel model)
        {
            if (model.IdDisplay.HasValue)
            {
                new Application.AppClient().Create(model.IdDisplay.Value, model.Name, model.Description);
            }
            else
            {
                new Application.AppClient().Create(model.Name, model.Description);
            }

            return(Json(DealResult.Refresh()));
        }
Example #23
0
        public JsonResult Delete(params int[] id)
        {
            foreach (var item in id)
            {
                var model = GetDataSource().FirstOrDefault(o => o.Id == item);
                if (model == null)
                {
                    return(Json(DealResult.Wrong("没有删除项"), JsonRequestBehavior.AllowGet));
                }
                GetDataSource().Remove(model);
            }

            return(Json(DealResult.Refresh("删除成功"), JsonRequestBehavior.AllowGet));
        }
Example #24
0
        public async Task Deal_WhenLeftWins_ReturnsProperOkResponse()
        {
            var cardType       = "type";
            var cardProperty   = "property";
            var cardDefinition = new Core.Domain.CardDefinition
            {
                Key        = cardType,
                Name       = "name",
                Properties = new[] { cardProperty }
            };
            var leftCard = new Core.Domain.Card {
                Definition = cardDefinition, Name = "name1", Properties = new List <Property> {
                    new Property {
                        Name = cardProperty, Value = 2
                    }
                }
            };
            var rightCard = new Core.Domain.Card {
                Definition = cardDefinition, Name = "name2", Properties = new List <Property> {
                    new Property {
                        Name = cardProperty, Value = 1
                    }
                }
            };
            var dealResult = new DealResult
            {
                LeftCard  = leftCard,
                RightCard = rightCard,
                Verdict   = Verdict.Left
            };

            var loggerStub      = Substitute.For <ILogger <GameController> >();
            var gameServiceStub = Substitute.For <IGameService>();

            gameServiceStub.NewDeal(Arg.Is(cardType), Arg.Is(cardProperty)).Returns(dealResult);

            var gameController = new GameController(gameServiceStub, loggerStub);

            var result = await gameController.Deal(cardType, cardProperty);

            Assert.IsInstanceOf(typeof(OkObjectResult), result);

            var dealResponse = (result as OkObjectResult).Value as DealResponse;

            Assert.AreEqual((int)Verdict.Left, dealResponse.Verdict);
            Assert.AreEqual(leftCard.Name, dealResponse.LeftCard.Name);
            Assert.AreEqual(CardResult.Winner, dealResponse.LeftCard.Result);
            Assert.AreEqual(rightCard.Name, dealResponse.RightCard.Name);
            Assert.AreEqual(CardResult.Loser, dealResponse.RightCard.Result);
        }
Example #25
0
        public override Model.DealResult MakeData(Model.Synergismlogdt dt, BaseData bd)
        {
            DealResult dr = new DealResult();

            //APIData apidata = bd as APIData;
            //ApiService.DAL.TaskLog.ITaskLogDetail dtdal = ClassFactory.GetITaskLogDetailDAL(apidata.TaskType);
            //Model.ConnectInfo cimodel = dtdal.GetConnectInfo(dt);
            //apidata.ConnectInfo = cimodel;

            //apidata.BodyData = null;
            //apidata.HeadData = null;

            dr = base.MakeData(dt, bd);

            return(dr);
        }
Example #26
0
        public JsonResult ChangeResult(Models.TableEditModel model)
        {
            var data = DataService.Instance.Get(model.Id);

            if (data == null)
            {
                return(Json(DealResult.Refresh()));
            }
            model.DealUpload((file) =>
            {
                data.Avatar = DataFile.Create(file);
            }, Request.Form, () => {
            }, o => o.File);

            data.Name = model.Name;
            return(Json(DealResult.Refresh()));
        }
Example #27
0
        public async Task <DealResult> NewDeal(string cardDefinitionKey, string propertyName)
        {
            var dealResult = new DealResult();
            var leftCard   = await cardRepository.GetRandomCard(cardDefinitionKey);

            var rightCard = await cardRepository.GetRandomCard(cardDefinitionKey);

            if (leftCard == null || rightCard == null)
            {
                throw new ArgumentException($"Cannot find cards of definition {cardDefinitionKey}.");
            }

            dealResult.LeftCard  = leftCard;
            dealResult.RightCard = rightCard;

            var comparisonResult = leftCard.CompareByProperty(rightCard, propertyName);

            dealResult.Verdict = MapComparisonResultToVerdict(comparisonResult);

            return(dealResult);
        }
Example #28
0
 public JsonResult Login(string account, string hash)
 {
     if (!(TempData["HashSeed"] is string hashSeed))
     {
         return(Json(DealResult.Wrong("脚本运行不正确")));
     }
     if (account == "test")
     {
         var claims = new List <System.Security.Claims.Claim>()
         {
             new System.Security.Claims.Claim(System.Security.Claims.ClaimTypes.Name, "test"),
             new System.Security.Claims.Claim(System.Security.Claims.ClaimTypes.NameIdentifier, Guid.Empty.ToString("N")),
             new System.Security.Claims.Claim(System.Security.Claims.ClaimTypes.Role, "Test"),
         };
         var identity = new System.Security.Claims.ClaimsIdentity(claims, "ApplicationCookie");
         HttpContext.SignInAsync(new System.Security.Claims.ClaimsPrincipal(new[] { identity }));
         return(Json(DealResult.Location(Url.Location <HomeController>(o => o.Index))));
     }
     else
     {
         return(Json(DealResult.Wrong("帐号或密码错误")));
     }
 }
 public void EndOfDeal(DealResult dealResult)
 {
 }
Example #30
0
        public static event EventHandler <EventMessage> onAllTaskCompleteHandler; //处理所有任务完成后的事件
        /// <summary>
        /// 开启多线程
        /// </summary>
        /// <param name="dealDataCollection">要处理的数据集合</param>
        /// <param name="singleDealCount">单次处理数据量</param>
        /// <param name="maxTaskCount">最大开启的线程数</param>
        public void StartWork(List <string> dealDataCollection, Dictionary <string, List <string> > dicAllFile, string InPuth, string outPutPath, int singleDealCount, int dHeight = 0, int dWidth = 0, int quality = 60, int maxTaskCount = 10, bool isCopyOtherFile = true)
        {
            try
            {
                Stopwatch st = new Stopwatch();
                st.Start();
                DealResult dResult = new DealResult();
                if (isCopyOtherFile)
                {
                    onProcessCompleteHandler(this, new EventMessage {
                        msg = "开始复制其它文件..."
                    });
                    //专门复制其他文件的线程
                    Task <DealResult> .Factory.StartNew(() =>
                    {
                        string tempPath     = "";
                        string tempDic      = "";
                        int sumCount        = 0;
                        Stopwatch st2       = new Stopwatch();
                        DealResult dResult2 = new DealResult();
                        st.Start();
                        foreach (KeyValuePair <string, List <string> > item in dicAllFile)
                        {
                            if (item.Key != ".img")
                            {
                                item.Value.ForEach(x =>
                                {
                                    tempPath = x;
                                    tempDic  = Path.GetDirectoryName(x.Replace(InPuth, outPutPath));
                                    if (!Directory.Exists(tempDic))
                                    {
                                        Directory.CreateDirectory(tempDic);
                                    }
                                    File.Copy(tempPath, x.Replace(InPuth, outPutPath));
                                    sumCount++;
                                });
                            }
                        }
                        st2.Stop();
                        dResult2.sucessCount = sumCount;
                        dResult2.failCount   = 0;
                        dResult2.totalTime   = st2.ElapsedMilliseconds / 1000;
                        return(dResult2);
                    }, importCts.Token).ContinueWith(task =>
                    {
                        onProcessCompleteHandler(this, new EventMessage {
                            msg = "其它文件全部复制完毕!"
                        });
                    }, importCts.Token);
                }


                //开启管理Task
                Task.Factory.StartNew(() =>
                {
                    int currentTaskCount = 0;
                    DealResult dresult   = new DealResult();
                    while (dealDataCollection.Count > 0 && !importCts.Token.IsCancellationRequested)
                    {
                        while (currentTaskCount >= maxTaskCount)
                        {
                            int index = Task.WaitAny(tasks.ToArray());//等待任何一个task完成
                            // Task<DealResult> task = tasks[index] as Task<DealResult>;
                            onProcessCompleteHandler(this, new EventMessage {
                                msg = "线程" + tasks.ToArray()[index].Id.ToString() + "处理完成,成功数量:" + tasks.ToArray()[index].Result.sucessCount.ToString() + ",失败数量:" + tasks.ToArray()[index].Result.failCount.ToString() + ",耗时:" + tasks.ToArray()[index].Result.totalTime.ToString() + ""
                            });
                            currentTaskCount--;
                        }
                        // Thread.Sleep(50);

                        List <string> childData = dealDataCollection.Take(singleDealCount).ToList();

                        if (childData.Count > 0)
                        {
                            dealDataCollection.RemoveRange(0, childData.Count);
                            Task <DealResult> subTask = Task <DealResult> .Factory.StartNew(() =>
                            {
                                return(DoSomeWork(childData, importCts.Token, outPutPath, InPuth, dHeight, dWidth, quality));
                            }, importCts.Token);
                            //dResult.failCount += subTask.Result.failCount;
                            //dResult.sucessCount += subTask.Result.sucessCount;
                            //dResult.totalTime += subTask.Result.totalTime;
                            // onProcessCompleteHandler(this, new EventMessage { msg = "线程" + subTask.Id.ToString() + "处理完成,成功数量:" + subTask.Result.sucessCount.ToString() + ",失败数量:" + subTask.Result.failCount.ToString() + ",耗时:" + subTask.Result.totalTime.ToString() + "" });

                            currentTaskCount++;
                            tasks.Add(subTask);
                        }
                        else //如果分配完毕currentTaskCount<maxTaskCount,则让maxTaskCount=currentTaskCount
                        {
                            showMsg(this, new EventMessage {
                                msg = "全部分配完毕"
                            });
                        }
                    }

                    if (dealDataCollection.Count <= 0)
                    {
                        onAllTaskCompleteHandler(this, new EventMessage {
                            msg = "任务全部分配完毕,共开启线程数量:" + tasks.Count.ToString()
                        });
                    }
                }, importCts.Token).ContinueWith(task =>
                {
                    //showMsg(this, new EventMessage { msg = "" });
                    Task.WaitAll(tasks.ToArray());//防止管理线程分配完毕,子线程还没有处理完毕
                    st.Stop();
                    tasks.ToList().ForEach(x =>
                    {
                        dResult.failCount   += x.Result.failCount;
                        dResult.sucessCount += x.Result.sucessCount;
                    });
                    if (!importCts.Token.IsCancellationRequested)
                    {
                        onAllTaskCompleteHandler(this, new EventMessage {
                            msg = "全部处理完毕"
                        });
                    }

                    onProcessCompleteHandler(this, new EventMessage {
                        msg = "成功数量:" + dResult.sucessCount.ToString() + ",失败数量:" + dResult.failCount.ToString() + ",耗时:" + (st.ElapsedMilliseconds / 1000).ToString() + ""
                    });
                });
            }
            catch (Exception ex)
            {
            }
        }
Example #31
0
 /// <summary>
 /// 返回封装好的Json结果
 /// </summary>
 /// <param name="result"></param>
 /// <param name="message"></param>
 /// <param name="data"></param>
 /// <returns></returns>
 public System.Web.Mvc.JsonResult JsonResult(bool result, string message, object data)
 {
     DealResult obj = new DealResult() { Result = result, Message = message, Data = data };
     return Json(obj);
 }