LocationNumMonitorApp.cs 1.53 KB
using Infrastructure;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using WebRepository;

namespace WebApp
{
    /// <summary>
	/// 在线用户记录
	/// </summary>
    class LocationNumData {
        public int EmptyNum;
        public int EmptyConNum;
        public int SomeNum;
        public int LockNum;
    }

    public partial class LocationNumMonitorApp
    {
        private IUnitWork _unitWork;

        public LocationNumMonitorApp(IUnitWork unitWork)
        {
            _unitWork = unitWork;
        }


        public TableData GetLocations(string type)
        {
            var result = new TableData();
            result.code = 200;
            var data = new LocationNumData();
            try
            {
                data.EmptyNum = _unitWork.Find<Location>(n => n.Type == type && n.Status == "empty").Count();
                data.EmptyConNum = _unitWork.Find<Location>(n => n.Type == type && n.Status == "emptycontainer").Count();
                data.SomeNum = _unitWork.Find<Location>(n => n.Type == type && n.Status == "some").Count();
                data.LockNum = _unitWork.Find<Location>(n => n.Type == type && n.Status == "lock").Count();
                result.data = data;
            }
            catch (Exception ex)
            {
                result.code = 300;
                result.msg = ex.Message;
            }
            return result;
        }
    }
}