Merge remote-tracking branch 'origin/DataMaintenance' into DataMaintenance
# Conflicts: # OpenAuth.App/ServiceApp/FireManagement/FireManagementApp.csDataMaintenance
commit
b6d88d442e
|
|
@ -46,7 +46,7 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
var checkPoint = info.MapTo<FmCheckInPoint>();
|
||||
checkPoint.Id = YitIdHelper.NextId();
|
||||
checkPoint.CreateTime = DateTime.Now;
|
||||
|
||||
checkPoint.IsDelete = false;
|
||||
List<FmCheckPointUser> sflist = info.UserId
|
||||
.Select(item => new FmCheckPointUser { PointId = checkPoint.Id, UserId = item }).ToList();
|
||||
|
||||
|
|
@ -406,29 +406,37 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
}
|
||||
|
||||
//导出统计
|
||||
//public MemoryStream ExportStatisticsNew(long areaid, DateTime begintime, DateTime endtime)
|
||||
//public async MemoryStream ExportStatistics(long areaid, DateTime begintime, DateTime endtime)
|
||||
//{
|
||||
// using (SugarDbContext db = base.UnitWork.CreateContext())
|
||||
// {
|
||||
// var user = _auth.GetCurrentUser().User;
|
||||
// //该用户下包含所有部门
|
||||
// List<string> deplist = new List<string>();
|
||||
// long level = 0;
|
||||
// if (user != null && user.Id != -1)
|
||||
// var orginfo = await db.SysOrg.AsQueryable().Where(r => r.Id == areaid).FirstAsync();
|
||||
// var chileorg = (await db.SysOrg.AsQueryable().ToChildListAsync(it => it.ParentId, areaid)).Select(it => it.Id).ToList();
|
||||
// var userlist = await db.User.AsQueryable().LeftJoin<SysUserRole>((a, b) => a.Id == b.UserId)
|
||||
// .LeftJoin<SysUserOrg>((a, b, c) => a.Id == c.UserId)
|
||||
// .LeftJoin<SysOrg>((a, b, c, d) => c.OrgId == d.Id)
|
||||
// .LeftJoin<SysRole>((a, b, c, d, e) => b.RoleId == e.Id)
|
||||
// .Where((a, b, c, d, e) => chileorg.Contains(c.OrgId))
|
||||
// .Where((a, b, c, d, e) => e.Name == "护林员")
|
||||
// .Select((a, b, c, d, e) => new PointstatisticsResp
|
||||
// {
|
||||
// var departs = db.SysUserOrg.AsQueryable().Where(r => r.UserId == user.Id).ToList();
|
||||
// foreach (var item in departs)
|
||||
// Id = a.Id,
|
||||
// Name = a.Name,
|
||||
// Account = a.Account,
|
||||
// AreaName = d.Name,
|
||||
// })
|
||||
// .ToListAsync();
|
||||
// foreach (var item in userlist)
|
||||
// {
|
||||
// var list = db.SysOrg.AsQueryable().ToChildList(it => it.ParentId, item.OrgId)
|
||||
// ?.Select(it => it.Id.ToString()).ToList();
|
||||
// deplist = deplist.Union(list).ToList();
|
||||
// }
|
||||
// //获取用户分配部门的最高级别
|
||||
// var uorg = departs.OrderBy(r => r.Level).FirstOrDefault();
|
||||
// if (uorg != null)
|
||||
// {
|
||||
// level = uorg.Level;
|
||||
// }
|
||||
// item.dakacishu = await db.FmCheckClockOn.AsQueryable()
|
||||
// .Where(r => r.UserId == item.Id)
|
||||
// .Where(r => r.ClockonTime >= begintime && r.ClockonTime <= endtime).CountAsync();
|
||||
// item.dakadian = await db.FmCheckPointUser.AsQueryable()
|
||||
// .Where(r => r.UserId == item.Id).CountAsync();
|
||||
// var lengths = await db.FmUserPointHistory.AsQueryable()
|
||||
// .Where(r => r.CreateId == item.Id && r.Intype == 1)
|
||||
// .Where(r => r.CreateTime >= begintime && r.CreateTime <= endtime).SplitTable(begintime, endtime).SumAsync(r => r.Distance);
|
||||
// item.xunjian = lengths > 0 ? 1 : 0;
|
||||
// }
|
||||
|
||||
// }
|
||||
|
|
|
|||
|
|
@ -79,7 +79,6 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
fftuList.Add(fftu);
|
||||
});
|
||||
}
|
||||
|
||||
await db.FmFireTaskUser.InsertRangeAsync(fftuList);
|
||||
if (db.Commit())
|
||||
{
|
||||
|
|
@ -113,7 +112,6 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
return new Response<List<SysUserResp>> { Result = users };
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查询任务列表
|
||||
/// </summary>
|
||||
|
|
@ -128,7 +126,6 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
return new Response<List<FmFireclueTask>> { Result = tasks };
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查询人员单位信息
|
||||
/// </summary>
|
||||
|
|
@ -141,9 +138,7 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
return new Response<List<FmUserUnit>> { Result = userunit };
|
||||
}
|
||||
}
|
||||
|
||||
#region 单位管理
|
||||
|
||||
//添加人员单位
|
||||
public async Task<Response<bool>> AddUserUnit(FmUserUnit info)
|
||||
{
|
||||
|
|
@ -161,7 +156,6 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
//编辑人员单位
|
||||
public async Task<Response<bool>> EditUserUnit(FmUserUnit info)
|
||||
{
|
||||
|
|
@ -178,7 +172,6 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
//获取单个人员单位
|
||||
public async Task<Response<FmUserUnit>> LoadUserUnitById(long id)
|
||||
{
|
||||
|
|
@ -188,7 +181,6 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
return new Response<FmUserUnit> { Result = info };
|
||||
}
|
||||
}
|
||||
|
||||
//删除人员单位
|
||||
public async Task<Response<bool>> DeleteUserUnit(long id)
|
||||
{
|
||||
|
|
@ -225,14 +217,14 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
{
|
||||
using (var stream = file.OpenReadStream())
|
||||
{
|
||||
workbook = new XSSFWorkbook(stream); //excel的版本2007
|
||||
workbook = new XSSFWorkbook(stream);//excel的版本2007
|
||||
}
|
||||
}
|
||||
else if (file.FileName.IndexOf(".xls") > 0)
|
||||
{
|
||||
using (var stream = file.OpenReadStream())
|
||||
{
|
||||
workbook = new HSSFWorkbook(stream); //excel的版本2003
|
||||
workbook = new HSSFWorkbook(stream);//excel的版本2003
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -287,14 +279,10 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
response.Code = 400;
|
||||
response.Message = "上传文件类型错误";
|
||||
}
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 火情线索
|
||||
|
||||
public async Task<Response<bool>> AddFireClueInfo(FmFireclueInfo info)
|
||||
{
|
||||
using (var db = base.UnitWork.CreateContext())
|
||||
|
|
@ -302,8 +290,7 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
info.Id = YitIdHelper.NextId();
|
||||
info.State = (int)State.上报;
|
||||
info.ReportTime = DateTime.Now;
|
||||
var exitinfo = db.FmFireclueInfo.AsQueryable().Where(a =>
|
||||
a.ReportTime.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd")).Count();
|
||||
var exitinfo = db.FmFireclueInfo.AsQueryable().Where(a => a.ReportTime.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd")).Count();
|
||||
info.ClueNo = "H" + DateTime.Now.ToString("yyyyMMdd") + (exitinfo == 0 ? "01" : "0" + (exitinfo + 1));
|
||||
await db.FmFireclueInfo.InsertAsync(info);
|
||||
if (db.Commit())
|
||||
|
|
@ -316,7 +303,6 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查询火情线索
|
||||
/// </summary>
|
||||
|
|
@ -331,7 +317,6 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
return new Response<FmFireclueInfo> { Result = info };
|
||||
}
|
||||
}
|
||||
|
||||
//查询火情线索列表
|
||||
public async Task<Response<List<FmFireclueInfo>>> GetFireClueList()
|
||||
{
|
||||
|
|
@ -341,7 +326,6 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
return new Response<List<FmFireclueInfo>> { Result = list };
|
||||
}
|
||||
}
|
||||
|
||||
//按月统计火情线索
|
||||
public async Task<Response<List<FireInfoForChart>>> GetFireClueStatistics(int type)
|
||||
{
|
||||
|
|
@ -426,7 +410,6 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
public async Task<Response<List<FireInfoDegreeForChart>>> GetFireClueStatisticsByDegreeType(int type)
|
||||
{
|
||||
using (var db = base.UnitWork.CreateContext())
|
||||
|
|
@ -475,9 +458,7 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// 在线情况
|
||||
/// </summary>
|
||||
|
|
@ -489,20 +470,24 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
{
|
||||
RefAsync<int> totalNumber = 0;
|
||||
var user = _auth.GetCurrentUser().User;
|
||||
int level = 0;
|
||||
//该用户下包含所有部门
|
||||
var orgid = _auth.GetCurrentUser().Orgs;
|
||||
level = orgid.Min(r => r.Level);
|
||||
var chileorglist = new List<long>();
|
||||
foreach (var item in orgid)
|
||||
if (level != 0 && user.Id != -1)
|
||||
{
|
||||
var chileorg = (await db.SysOrg.AsQueryable().ToChildListAsync(it => it.ParentId, item))
|
||||
.Select(it => it.Id).ToList();
|
||||
foreach (var item in orgid.Where(r => r.Level < 3))
|
||||
{
|
||||
var chileorg = (await db.SysOrg.AsQueryable().ToChildListAsync(it => it.ParentId, item)).Select(it => it.Id).ToList();
|
||||
chileorglist.AddRange(chileorg);
|
||||
}
|
||||
|
||||
}
|
||||
var userInfoQuery = db.User.AsQueryable()
|
||||
.LeftJoin<FmUserPoint>((a, b) => a.Id == b.CreateId)
|
||||
.LeftJoin<SysUserOrg>((a, b, c) => a.Id == c.UserId)
|
||||
.Where((a, b, c) => a.Status == 0 && chileorglist.Contains(c.UserId));
|
||||
.Where((a, b, c) => a.Status == 0)
|
||||
.WhereIF(level != 0, (a, b, c) => chileorglist.Contains(c.UserId));
|
||||
var userinfo = await userInfoQuery
|
||||
.Select((a, b, c) => new UserOnLineResp
|
||||
{
|
||||
|
|
@ -518,7 +503,8 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
TownName = SqlFunc.Subqueryable<SysUserOrg>()
|
||||
.Where(sf => sf.UserId == a.Id)
|
||||
.LeftJoin<SysOrg>((sf, gs) => sf.OrgId == gs.Id)
|
||||
.SelectStringJoin((sf, gs) => gs.Name, ",")
|
||||
.LeftJoin<SysOrg>((sf, gs, t) => gs.ParentId == t.Id)
|
||||
.SelectStringJoin((sf, gs, t) => gs.Name, ",")
|
||||
})
|
||||
.MergeTable()
|
||||
.Distinct()
|
||||
|
|
@ -528,7 +514,7 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
.ToPageListAsync(pageReq.page, pageReq.limit, totalNumber);
|
||||
|
||||
var onlineCount = await userInfoQuery
|
||||
.Where((a, b, c) => a.CreateTime.AddMinutes(2) > DateTime.Now)
|
||||
.Where((a, b, c) => b.CreateTime.AddMinutes(2) > DateTime.Now)
|
||||
.Select(a => a.Id)
|
||||
.Distinct()
|
||||
.CountAsync();
|
||||
|
|
|
|||
Loading…
Reference in New Issue