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("添加成功"))); }
//新增单据、档案协同 public override Model.DealResult MakeVouch(BaseData bd) { DealResult dr = new DealResult(); dr = base.MakeVouch(bd); return(dr); }
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); }
/// <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); }
public JsonResult CreateResult(Models.TableEditModel model) { DataService.Instance.Add(new Data() { Name = model.Name, Avatar = DataFile.Create(model.File) }); return(Json(DealResult.Refresh())); }
/// <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)); }
/// <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)); }
public DealResult DealResult(bool result, string message = "", object data = null) { DealResult obj = new DealResult() { Result = result, Message = message, Data = data }; return(obj); }
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); }
/// <summary> /// 创建错误内容 /// </summary> /// <param name="message">消息</param> /// <returns></returns> public static DealResult Wrong(string message) { var result = new DealResult { Success = false, Message = message }; return(result); }
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)))); }
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("帐号或密码错误"))); } }
/// <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); }
/// <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); }
/// <summary> /// 刷新数据 /// </summary> /// <returns></returns> public static DealResult Refresh() { var result = new DealResult { CloseOpen = true, NewData = true, Success = true }; return(result); }
/// <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); }
/// <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); }
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); }
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())); }
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)); }
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); }
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); }
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())); }
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); }
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) { }
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) { } }
/// <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); }