// GET: TaskOrders/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TaskOrder taskOrder = db.TaskOrders.Find(id); if (taskOrder == null) { return(HttpNotFound()); } return(View(taskOrder)); }
/// <summary> /// /// </summary> /// <param name="model"></param> /// <param name="IsUpdateDetails">更新明细</param> /// <returns></returns> public bool Update(TaskOrder model, bool IsUpdateDetails = true) { if (_taskOrderService.UpdateEntity(model)) { if (IsUpdateDetails) { _taskOrderDetailService.Delete(x => x.order_id == model.id);//删除明细 } else { return(true); } } return(false); }
private void Start() { Application.targetFrameRate = 120; mainCamera = Camera.main; background = FindObjectOfType <Background>(); UpdateBackground(); scaler = new Scaler(mainCamera, -1, settings); debugScaler = new Scaler(mainCamera, -2, settings); results = new TestResults(); tasks = GetComponent <TaskOrder>(); area = GetComponent <StimuliArea>(); }
// GET: TaskOrders/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TaskOrder taskOrder = db.TaskOrders.Find(id); if (taskOrder == null) { return(HttpNotFound()); } ViewBag.ContractID = new SelectList(db.Contracts, "ID", "Name", taskOrder.ContractID); return(View(taskOrder)); }
public ActionResult <string> add(dynamic param) { var jsonParams = JsonConvert.DeserializeObject <dynamic>(param.ToString()); TaskOrder obj = new TaskOrder { TaskOrderOid = Guid.NewGuid().ToString("D"), Taskid = jsonParams.Taskid, Tasktitle = jsonParams.Tasktitle, Tasktype = jsonParams.Tasktype, Taskstatus = jsonParams.Taskstatus, Taskobjectname = jsonParams.Taskobjectname, TaskTownStreet = jsonParams.TaskTownStreet, TaskCommunity = jsonParams.TaskCommunity, AlarmStationnumber = jsonParams.AlarmStationnumber, AlarmStationname = jsonParams.AlarmStationname, Alarmcontent = jsonParams.Alarmcontent, Alarmfactor = jsonParams.Alarmfactor, Alarmtime = jsonParams.Alarmtime, Contributionrate = jsonParams.Contributionrate, Contributionrateranking = jsonParams.Contributionrateranking, Collector = "-", Collectorphone = "-", Taskfeedbacktimes = 0, Taskcontent = jsonParams.Taskcontent, Tasknotes = jsonParams.Tasknotes, Taskfallback = 0, Taskfallbackreason = "", Checktime = jsonParams.Checktime, Taskfallbacktime = jsonParams.Taskfallbacktime, Taskdeadline = jsonParams.Taskdeadline, Taskfeedbacktime = jsonParams.Taskfeedbacktime, Taskcompletetime = jsonParams.Taskcompletetime, Taskstatusupdatetime = DateTime.Now, Taskreceivingtime = DateTime.Now }; _context.Add(obj); int result = _context.SaveChanges(); var data = new { TaskOrderOid = obj.TaskOrderOid, result = result }; return(common.transResult(data)); }
public bool Finish(TaskOrder model) { TaskOrderHistory taskOrderHistory = new TaskOrderHistory(); taskOrderHistory.barcode_machine_mode = model.barcode_machine_mode; taskOrderHistory.card_machine_enable = model.card_machine_enable; taskOrderHistory.end_time = DateTime.Now; taskOrderHistory.graphic_carton_size = model.graphic_carton_size; taskOrderHistory.insert_time = model.insert_time; taskOrderHistory.noraml_carton_size = model.noraml_carton_size; taskOrderHistory.open_machine_mode = model.open_machine_mode; taskOrderHistory.outer_carton_size = model.outer_carton_size; taskOrderHistory.pack_mode = model.pack_mode; taskOrderHistory.pallet_num = model.pallet_num; taskOrderHistory.pallet_size = model.pallet_size; taskOrderHistory.plate_enable = model.plate_enable; taskOrderHistory.product_count = model.product_count; taskOrderHistory.product_name = model.product_name; taskOrderHistory.product_size = model.product_size; taskOrderHistory.robot_pg_no = model.robot_pg_no; taskOrderHistory.sn_barcode_enable = model.sn_barcode_enable; taskOrderHistory.start_time = model.start_time; long id = _taskOrderHistoryService.InsertBigIdentity(taskOrderHistory); if (id > 0) { var list = _taskOrderDetailService.QueryableToList(x => x.order_id == model.id); if (list != null && list.Count > 0) { foreach (var item in list) { TaskOrderDetailHistory history = new TaskOrderDetailHistory() { box_count = item.box_count, insert_time = item.insert_time, order_id = (int)id, pallet_index = item.pallet_index }; _taskOrderDetailHistoryService.Insert(history); } } Remove(model); return(true); } return(false); }
/// <summary> /// Generate the necessary parameters /// </summary> public List <KeyValuePair <string, string> > GetParams() { var p = new List <KeyValuePair <string, string> >(); if (FriendlyName != null) { p.Add(new KeyValuePair <string, string>("FriendlyName", FriendlyName)); } if (TargetWorkers != null) { p.Add(new KeyValuePair <string, string>("TargetWorkers", TargetWorkers)); } if (MaxReservedWorkers != null) { p.Add(new KeyValuePair <string, string>("MaxReservedWorkers", MaxReservedWorkers.ToString())); } if (TaskOrder != null) { p.Add(new KeyValuePair <string, string>("TaskOrder", TaskOrder.ToString())); } if (ReservationActivitySid != null) { p.Add(new KeyValuePair <string, string>("ReservationActivitySid", ReservationActivitySid.ToString())); } if (AssignmentActivitySid != null) { p.Add(new KeyValuePair <string, string>("AssignmentActivitySid", AssignmentActivitySid.ToString())); } return(p); }
public static T ToTaskOrderDto <T>(this TaskOrder taskOrder) { return(Mapper.Map <T>(taskOrder)); }
public static TaskOrderResponse ToTaskOrder(TaskOrder taskOrder) { return(Mapper.Map <TaskOrderResponse>(taskOrder)); }
public bool InsertTaskOrder(TaskOrder order) { throw new NotImplementedException(); }
public ActionResult <string> updata(dynamic param) { var jsonParams = JsonConvert.DeserializeObject <dynamic>(param.ToString()); string sql = ""; string taskordeid = jsonParams.Taskordeid; if (taskordeid != null && taskordeid != "") { sql += "TaskOrderOid = @0"; } string taskid = jsonParams.Taskid; if (taskid != null && taskid != "") { if (sql != "") { sql += " And "; } sql += "Taskid = @1"; } string objname = jsonParams.Taskobjname; if (objname != null && objname != "") { sql += " And Taskobjectname = @2"; } sql += " And Taskstatus != @3 And Taskstatus != @4"; // 查询单条 var query = _context.TaskOrder .AsQueryable() .Where(sql, taskordeid, taskid, objname, "已回退", "已完成") .OrderByDescending(e => e.Taskfeedbacktime); int rows = query.Count(); if (rows == 1) { TaskOrder oder = query.Take(1).Single(); oder.Taskstatus = jsonParams.Taskstatus; DateTime dtNow = DateTime.Now; switch (oder.Taskstatus) { //["已发送", "待查收", "未开展", "开展中", "已完成", "已回退", "已查收"] case "未开展": UserInfo usr = common.getUserInfo(jsonParams.userName); if (usr != null) { oder.Collectorid = usr.Useroid; oder.Collector = usr.Username; oder.Collectorphone = usr.Userphone; oder.CollectorunitId = usr.Organizationoid; oder.CollectorunitName = usr.Groupname; } oder.Taskfeedbacktimes = 0; oder.Taskstatusupdatetime = dtNow; oder.Checktime = dtNow; break; case "开展中": oder.Taskfeedbacktimes += 1; oder.Taskfeedbacktime = dtNow; oder.Taskstatusupdatetime = dtNow; break; case "已完成": oder.Taskcompletetime = dtNow; oder.Taskstatusupdatetime = dtNow; break; case "已回退": oder.Taskfeedbacktimes = 0; oder.Taskfallback = 1; oder.Taskfallbackreason = jsonParams.back_reason; oder.Taskfallbacktime = dtNow; oder.Taskstatusupdatetime = dtNow; break; } int result = _context.SaveChanges(); if (oder.Taskstatus != "开展中") { result = updateInfo_Feedback(oder, Convert.ToString(jsonParams.userName)); } var data = new { result = result, desc = "状态已更新为:" + jsonParams.Taskstatus, updatetime = dtNow }; return(common.transResult(data)); } else { if (rows == 0) { return(common.transResult("", "数据不存在!")); } else { return(common.transResult("", "数据存在多条!")); } } }
/// <summary> /// Creates a queue from a list of subtasks based on the provided order (eg. Center) /// </summary> private ConcurrentQueue <RenderSubTask> GetTaskQueueInOrder(List <RenderSubTask> queue, TaskOrder order) { List <RenderSubTask> newOrder = new List <RenderSubTask>(); switch (order) { case TaskOrder.Center: newOrder = queue.OrderBy(x => { decimal posX = x.X + (x.X2 - x.X) / 2; decimal posY = x.Y + (x.Y2 - x.Y) / 2; decimal distanceX = 0.5m - posX; decimal distanceY = 0.5m - posY; double distance = (double)Math.Sqrt(Math.Pow((double)distanceX, 2) + Math.Pow((double)distanceY, 2)); return(distance); }).ToList(); break; default: newOrder = queue.ToList(); break; } return(new ConcurrentQueue <RenderSubTask>(newOrder)); }
public void DoDowndata_Task() { // 读取文件夹列表 if (common.coon == "") { return; } var provider = new PhysicalFileProvider(Directory.GetCurrentDirectory() + @"/ftpData/task"); Console.WriteLine(Directory.GetCurrentDirectory() + @"/ftpData/task"); var contents = provider.GetDirectoryContents(string.Empty); foreach (var item in contents) { if (item.IsDirectory == false) { int result = 0; List <string> errs = new List <string>(); using (System.IO.StreamReader file = System.IO.File.OpenText(item.PhysicalPath)) { Console.WriteLine("new file task:: " + item.PhysicalPath); using (JsonTextReader reader = new JsonTextReader(file)) { // 循环解析文件json数据 JObject jsonObject = (JObject)JToken.ReadFrom(reader); JArray jsonValues = (JArray)jsonObject["RECORDS"]; if (jsonValues.Count > 0) { var optionsBuilder = new DbContextOptionsBuilder <db_MicroStationContext>(); optionsBuilder.UseMySql(common.coon); using (var context = new db_MicroStationContext(optionsBuilder.Options)) { foreach (var value in jsonValues) { string srcOid = (string)value["id"]; Console.WriteLine("srcOid:: " + srcOid); string taskType = (string)value["taskType"]; string subtype = (string)value["subtype"]; if (!(taskType == "2")) { continue; } if ((string)value["taskObjective"] == null) { continue; } var taskObj = (JObject)JToken.Parse((string)value["taskObjective"]); if (taskObj["entMessageList"] == null) { continue; } var listTrac = (JArray)taskObj["entMessageList"]; if (listTrac.Count < 1) { continue; } var query = context.TaskOrder.AsQueryable().Where("Taskid = @0", srcOid); if (query.Count() > 0) { continue; } try { // 循环企业清单列表 foreach (var trace in listTrac) { TaskOrder obj = new TaskOrder { TaskOrderOid = Guid.NewGuid().ToString("D"), Taskid = (string)value["id"], TaskTypeSrc = taskType, TaskTypesubSrc = subtype, Tasktitle = (string)value["brief"], Tasktype = (string)value["targetType"], Taskstatus = (string)value["status"] == "ASSIGNING" ? "待查收" : (string)value["status"], Taskobjectname = (string)value["targetName"], TaskTownStreet = (string)taskObj["townName"], TaskCommunity = ((string)taskObj["warningTargetName"]).Split("-")[0], AlarmStationnumber = (int)taskObj["warningTargetId"], AlarmStationname = (string)taskObj["warningTargetName"], Alarmcontent = (string)taskObj["warningContent"], Alarmtime = (DateTime)taskObj["dataTime"], Alarmfactor = (string)taskObj["warningFactory"], Tasksubobjectname = (string)trace["targetName"], TasksubobjectOrgcode = (string)trace["orgCode"], TasksubTownStreet = (string)trace["townName"], TasksubCommunity = (string)trace["streetName"], Tasksubobjectaddress = (string)trace["addr"], Contributionrateranking = (int)trace["rank"], Contributionrate = (float)trace["rate"], //Contributionrate= (float)value["warningIndicator"], //Contributionrateranking = (int)value["warningIndicator"], Collectorid = (string)taskObj["agentId"], Collector = (string)taskObj["agentName"], Collectorphone = (string)taskObj["agentContact"], CollectorunitId = (string)taskObj["agentOrgId"], CollectorunitName = (string)taskObj["agentOrgName"], Taskcontent = (string)value["detail"], Tasknotes = (string)value["remark"], Taskstarttime = (DateTime)value["implStartTime"], Taskdeadline = (DateTime)value["implEndTime"], Taskreceivingtime = DateTime.Now, Taskfallback = (ulong?)(((string)value["backReason"]) + "" == "" ? 0 : 1), Taskfallbackreason = (string)value["backReason"], //Checktime = null, //Taskfeedbacktimes = 0, //Taskfeedbacktime = null, //Taskcompletetime = null, Taskstatusupdatetime = DateTime.Now }; if (!string.IsNullOrEmpty((string)value["Taskfallbacktime"])) { obj.Taskfallbacktime = (DateTime)value["Taskfallbacktime"]; } context.Add(obj); //TaskOrder objSub = obj. //Taskobjectaddress = (string)value["targetAddress"], //TaskTraceability objTrac = new TaskTraceability //{ // TaskTraceabilityOid = Guid.NewGuid().ToString("D"), // Taskordeid = obj.TaskOrderOid, // Taskid = obj.Taskid, // Sitecode = (int)trace["stationCode"], // TargetName = (string)trace["targetName"], // TownStreet = (string)trace["townName"], // OrgCode = (string)trace["orgCode"], // TargetAddr = (string)trace["addr"], // PollutionRank = (int)trace["rank"], // PollutionRate = (float)trace["rate"] //}; } } catch (Exception) { Console.WriteLine("err srcID::" + srcOid); errs.Add((string)value["id"]); throw; } } result = context.SaveChanges(); Console.WriteLine("res count::" + result.ToString()); // 记录操作 TaskDocking docking = new TaskDocking { TaskDockingOid = Guid.NewGuid().ToString("D"), Filename = item.Name, Filepath = item.PhysicalPath, Dockingtype = "站点任务", AssociationId = "", Dockingmode = "download", Dockingtime = DateTime.Now, Dockingresults = errs.Count > 0 ? "失败" : "完成", Dockingtimes = 1, Dockmark = string.Join(",", errs), Createtime = DateTime.Now }; context.Add(docking); int result2 = context.SaveChanges(); } } Task.Run(() => { }); } } // 转移文件 if (result > errs.Count || errs.Count == 0) { File.Copy(item.PhysicalPath, Directory.GetCurrentDirectory() + @"/ftpData/task_old/" + item.Name); Thread.Sleep(1000); File.Delete(item.PhysicalPath); } } } }
/// <summary> /// 开始下载参数信息 /// </summary> /// <param name="taskOrder"></param> public bool StartToDownloadParamter(TaskOrder taskOrder) { List <short> ValueList = new List <short>(); _systemLogViewModel.AddMewStatus($"开始写入{taskOrder.product_name}的PLC参数"); #region 写入PLC信号 var plc = TagList.PLCGroups.FirstOrDefault(x => x.PlcDevice.Name == "FxPLC"); if (plc != null && plc.PlcDevice.IsConnected) { WritePlcValue("FxPLC", "pack_mode", taskOrder.pack_mode); WritePlcValue("FxPLC", "open_machine_mode", taskOrder.open_machine_mode); WritePlcValue("FxPLC", "barcode_machine_mode", taskOrder.barcode_machine_mode); WritePlcValue("FxPLC", "sn_barcode_enable", -1, taskOrder.sn_barcode_enable); WritePlcValue("FxPLC", "bubble_cover_enable", -1, taskOrder.bubble_cover_enable); WritePlcValue("FxPLC", "card_machine_enable", -1, taskOrder.card_machine_enable); WritePlcValue("FxPLC", "sn_barcode_compare", -1, taskOrder.enable_check);//条码比对 } else { _systemLogViewModel.AddMewStatus("PLC当前未连接,参数写入失败", LogTypeEnum.Error); return(false); } #endregion _systemLogViewModel.AddMewStatus($"开始写入{taskOrder.product_name}的视觉机械手参数"); var robot1 = TagList.PLCGroups.FirstOrDefault(x => x.PlcDevice.Name == "Robot1"); if (robot1 != null && robot1.PlcDevice.IsConnected) { //写入尺寸信息 ValueList = new List <short>(); GetPropertyToList(taskOrder.product_size, ValueList); WriteTcpClientRobot("Robot1", "chanpinwaijin", ValueList[0]); WriteTcpClientRobot("Robot1", "chanpingaodu", ValueList[1]); } else { _systemLogViewModel.AddMewStatus("视觉机械手参数写入失败,请检查网络连接后重新下载!", LogTypeEnum.Error); return(false); } _systemLogViewModel.AddMewStatus($"开始写入{taskOrder.product_name}的装箱参数"); var robot2 = TagList.PLCGroups.FirstOrDefault(x => x.PlcDevice.Name == "Robot2"); if (robot2 != null && robot2.PlcDevice.IsConnected) { ValueList = new List <short>(); GetPropertyToList(taskOrder.product_size, ValueList); WriteRobot("Robot2", "product_size_length", ValueList); } else { _systemLogViewModel.AddMewStatus("装箱机械手参数写入失败,请检查网络连接后重新下载!", LogTypeEnum.Error); return(false); } //_systemLogViewModel.AddMewStatus($"开始写入{taskOrder.product_name}的码垛参数"); //var robot3 = TagList.PLCGroups.FirstOrDefault(x => x.PlcDevice.Name == "Robot3"); //if (robot3 != null && robot2.PlcDevice.IsConnected) //{ // ValueList = new List<short>(); // ValueList.Add(2); // //ValueList.Add(3); // //GetPropertyToList(taskOrder.graphic_carton_size, ValueList); // //GetPropertyToList(taskOrder.noraml_carton_size, ValueList); // //GetPropertyToList(taskOrder.outer_carton_size, ValueList); // //GetPropertyToList(taskOrder.pallet_size, ValueList); // WriteRobot("Robot3", "graphic_carton_size_x", ValueList);//首地址写入 // ValueList = new List<short>(); // ValueList.Add(33); // WriteRobot("Robot3", "graphic_carton_size_y", ValueList);//首地址写入 // ValueList = new List<short>(); // ValueList.Add((short)taskOrder.robot_pg_no); // ValueList.Add((short)taskOrder.pallet_num); // if (taskOrder.plate_enable) // { // ValueList.Add(1); // } // else // { // ValueList.Add(0); // } // ValueList.Add((short)taskOrder.pack_mode); // // WriteRobot("Robot3", "robot_pg_no", ValueList);//首地址写入 //} //else //{ // _systemLogViewModel.AddMewStatus("码垛机械手参数写入失败,请检查网络连接后重新下载!", LogTypeEnum.Error); // return false; //} _systemLogViewModel.AddNewAutoAckWindowInfo($"{taskOrder.product_name}所有参数已下载完毕", null, 0); return(true); }