123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- using WCS.Entitys;
- using Microsoft.EntityFrameworkCore;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Threading.Tasks;
- using WCS.Common;
- namespace WCS.Repository
- {
- public class TaskCallbackRepository : ITaskCallbackRepository
- {
- private readonly ApplicationDbContext _context;
- public TaskCallbackRepository(ApplicationDbContext context)
- {
- _context = context;
- }
- //查询全部列表
- public async Task<List<TaskCallback>> GetAllList()
- {
- IQueryable<TaskCallback> list = _context.TaskCallbacks;
- list = list.Where(x => x.State).OrderBy(o=>o.CreateTime);
- return await list.ToListAsync();
- }
- //查部列表
- public async Task<List<TaskCallback>> GetList(TaskCallback vo)
- {
- IQueryable<TaskCallback> list = _context.TaskCallbacks;
- list = list.Where(x => x.State);
- if (!string.IsNullOrEmpty(vo.TaskId))
- {
- list = list.Where(x => x.TaskId.Contains(vo.TaskId));
- }
- if (!string.IsNullOrEmpty(vo.TaskNodeId))
- {
- list = list.Where(x => x.TaskNodeId.Contains(vo.TaskNodeId));
- }
-
- return await list.ToListAsync();
- }
- //查部列表
- public async Task<List<TaskCallback>> GetListByCondition(TaskCallback vo)
- {
- IQueryable<TaskCallback> list = _context.TaskCallbacks;
- if (!string.IsNullOrEmpty(vo.IP))
- {
- list = list.Where(x => x.IP == vo.IP);
- }
- if (!string.IsNullOrEmpty(vo.TaskId))
- {
- list = list.Where(x => x.TaskId == vo.TaskId);
- }
- if (!string.IsNullOrEmpty(vo.TaskNodeId))
- {
- list = list.Where(x => x.TaskNodeId == vo.TaskNodeId);
- }
- return await list.ToListAsync();
- }
- //查机器人动作列表
- public async Task<TaskCallback> GetRobotActionList(TaskCallback vo)
- {
- DateTime currentTime = DateTime.Now.AddMinutes(-2);
- IQueryable<TaskCallback> list = _context.TaskCallbacks;
- list = list.Where(x => x.CreateTime >= currentTime);
- if (!string.IsNullOrEmpty(vo.IP))
- {
- list = list.Where(x => x.IP == vo.IP);
- }
- if (!string.IsNullOrEmpty(vo.Description))
- {
- list = list.Where(x => x.Description == vo.Description);
- }
- list = list.Where(x => x.OperateType == vo.OperateType.ToString() );
- return await list.OrderByDescending(o => o.CreateTime).FirstOrDefaultAsync();
- }
- //查询详情
- public async Task<TaskCallback> GetById(int id)
- {
- TaskCallback device = await _context.TaskCallbacks.FindAsync(id);
- return device;
- }
- //添加详情
- public async Task<bool> Create(TaskCallback vo)
- {
- _context.TaskCallbacks.Add(vo);
- await _context.SaveChangesAsync();
- return true;
- }
- //更新详情
- public async Task<bool> Update(TaskCallback vo)
- {
- _context.Entry(vo).State = EntityState.Modified;
- try
- {
- await _context.SaveChangesAsync();
- }
- catch (DbUpdateConcurrencyException)
- {
- throw;
- }
- return true;
- }
- //删除
- public async Task<bool> DeleteById(int id)
- {
- await Delete(id);
- return true;
- }
- private async Task Delete(int id)
- {
- var t = await _context.TaskCallbacks.FindAsync(id);
- _context.TaskCallbacks.Remove(t);
- await _context.SaveChangesAsync();
- }
- }
-
- }
|