护林员打卡时间更新
parent
c5fbec5fe7
commit
c35c0caab0
|
|
@ -40,6 +40,7 @@ using DocumentFormat.OpenXml.Wordprocessing;
|
|||
using Newtonsoft.Json.Linq;
|
||||
using DocumentFormat.OpenXml.Vml.Wordprocessing;
|
||||
using Infrastructure.Cache;
|
||||
using OpenAuth.App.ServiceApp.FmPreventionPlanManage.Request;
|
||||
|
||||
namespace OpenAuth.App.ServiceApp.FireManagement
|
||||
{
|
||||
|
|
@ -239,13 +240,13 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
fm.State = (int)State.上报;
|
||||
fm.ReportTime = DateTime.Now;
|
||||
fm.Lat = obj.Lat;
|
||||
fm.Lng=obj.Lng;
|
||||
fm.Address=obj.Address;
|
||||
fm.AreaName=obj.AreaName;
|
||||
fm.Image=obj.Image;
|
||||
fm.Lng = obj.Lng;
|
||||
fm.Address = obj.Address;
|
||||
fm.AreaName = obj.AreaName;
|
||||
fm.Image = obj.Image;
|
||||
fm.SourceType = 3;
|
||||
fm.ReportPerson = obj.ReportPerson;
|
||||
fm.Describe=obj.Describe;
|
||||
fm.Describe = obj.Describe;
|
||||
fm.DegreeType = obj.DegreeType;
|
||||
var today = DateTime.Now.Date;
|
||||
var tomorrow = today.AddDays(1);
|
||||
|
|
@ -326,13 +327,13 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
{
|
||||
RefAsync<int> totalNumber = 0;
|
||||
var tasks = await db.FmFireclueTask.AsQueryable()
|
||||
.Where(r=>r.IsDelete == false)
|
||||
.Where(r => r.IsDelete == false)
|
||||
.WhereIF(req.state!=null,r=>r.State==req.state)
|
||||
.WhereIF(req.type!=null,r=>r.Type==req.type)
|
||||
.WhereIF(req.tasktimebegin!=null&&req.tasktimeend!=null,r=>r.TaskTime>=req.tasktimebegin&&r.TaskTime<=req.tasktimeend)
|
||||
.LeftJoin<FmFireclueInfo>((r,f)=>r.Fireclueid==f.Id)
|
||||
.WhereIF(!string.IsNullOrEmpty(req.name),(r,f)=>r.Content.Contains(req.name)||f.Describe.Contains(req.name))
|
||||
.Where(r => r.IsDelete == false)
|
||||
.WhereIF(req.state != null, r => r.State == req.state)
|
||||
.WhereIF(req.type != null, r => r.Type == req.type)
|
||||
.WhereIF(req.tasktimebegin != null && req.tasktimeend != null, r => r.TaskTime >= req.tasktimebegin && r.TaskTime <= req.tasktimeend)
|
||||
.LeftJoin<FmFireclueInfo>((r, f) => r.Fireclueid == f.Id)
|
||||
.WhereIF(!string.IsNullOrEmpty(req.name), (r, f) => r.Content.Contains(req.name) || f.Describe.Contains(req.name))
|
||||
.ToPageListAsync(req.page, req.limit, totalNumber);
|
||||
return new Response<PageInfo<List<FmFireclueTask>>>
|
||||
{
|
||||
|
|
@ -620,7 +621,7 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
info.Id = YitIdHelper.NextId();
|
||||
info.State = (int)State.上报;
|
||||
info.ReportTime = DateTime.Now;
|
||||
|
||||
|
||||
var today = DateTime.Now.Date;
|
||||
var tomorrow = today.AddDays(1);
|
||||
var exitinfo = db.FmFireclueInfo
|
||||
|
|
@ -720,8 +721,8 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
.WhereIF(req.state != null, r => r.State == req.state)
|
||||
.WhereIF(req.sourcetype != null, r => r.SourceType == req.sourcetype)
|
||||
.WhereIF(req.reporttimebegin != null && req.reporttimeend != null, r => r.ReportTime >= req.reporttimebegin && r.ReportTime <= req.reporttimeend)
|
||||
.WhereIF(!string.IsNullOrEmpty(req.name), r=> r.Describe.Contains(req.name))
|
||||
.WhereIF(!string.IsNullOrEmpty(req.adress), r=> r.Address.Contains(req.adress))
|
||||
.WhereIF(!string.IsNullOrEmpty(req.name), r => r.Describe.Contains(req.name))
|
||||
.WhereIF(!string.IsNullOrEmpty(req.adress), r => r.Address.Contains(req.adress))
|
||||
.ToPageListAsync(req.page, req.limit, totalNumber);
|
||||
return new Response<PageInfo<List<FmFireclueInfo>>>
|
||||
{
|
||||
|
|
@ -827,7 +828,7 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
}
|
||||
}
|
||||
|
||||
public async Task<Response<List<FireInfoStateForChart>>> GetFireClueStatisticsByState(int type,List<int> sourcetype)
|
||||
public async Task<Response<List<FireInfoStateForChart>>> GetFireClueStatisticsByState(int type, List<int> sourcetype)
|
||||
{
|
||||
using (var db = base.UnitWork.CreateContext())
|
||||
{
|
||||
|
|
@ -892,7 +893,7 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
|
||||
// 查询实际数据
|
||||
var dataQuery = await db.FmFireclueInfo.AsQueryable()
|
||||
.WhereIF(sourcetype.Count>0,r=>sourcetype.Contains(r.SourceType))
|
||||
.WhereIF(sourcetype.Count > 0, r => sourcetype.Contains(r.SourceType))
|
||||
.Where(r => r.ReportTime >= startDate && r.ReportTime <= endDate)
|
||||
.GroupBy(r => new { r.ReportTime.Date })
|
||||
.Select(r => new FireInfoState
|
||||
|
|
@ -1020,7 +1021,7 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
.Select(date => new
|
||||
{
|
||||
Date = date,
|
||||
DayString =date.Month.ToString()+"." +date.Day.ToString()
|
||||
DayString = date.Month.ToString() + "." + date.Day.ToString()
|
||||
})
|
||||
.ToList();
|
||||
|
||||
|
|
@ -1663,7 +1664,7 @@ namespace OpenAuth.App.ServiceApp.FireManagement
|
|||
/// <param name="port">设备端口(例1443)</param>
|
||||
/// <param name="protocol"></param>
|
||||
/// <returns></returns>
|
||||
public string GetPreviewURL(string cameraIndexCode,string url,string appkey,string appsecret,int port, string protocol)
|
||||
public string GetPreviewURL(string cameraIndexCode, string url, string appkey, string appsecret, int port, string protocol)
|
||||
{
|
||||
HttpUtillib.SetPlatformInfo(appkey, appsecret, url, port, true);
|
||||
|
||||
|
|
@ -1823,7 +1824,7 @@ ORDER BY
|
|||
PgSqlIsAutoToLower = false,//增删查改支持驼峰表
|
||||
}
|
||||
};
|
||||
List<FmCamera> fclist=new List<FmCamera>();
|
||||
List<FmCamera> fclist = new List<FmCamera>();
|
||||
using (SqlSugarClient db = new SqlSugarClient(connectionConfig))
|
||||
{
|
||||
//var list = db.Queryable<ztk_jcjk_jkdw>()
|
||||
|
|
@ -1881,8 +1882,8 @@ ORDER BY
|
|||
fc.SerialNumberRcx = item.jkdgbidzlrcx;
|
||||
fclist.Add(fc);
|
||||
}
|
||||
var flag= await db.FmCamera.InsertRangeAsync(fclist);
|
||||
if (db.Commit()&&flag==true)
|
||||
var flag = await db.FmCamera.InsertRangeAsync(fclist);
|
||||
if (db.Commit() && flag == true)
|
||||
{
|
||||
return new Response<bool> { Result = true, Message = "操作成功" };
|
||||
}
|
||||
|
|
@ -1902,7 +1903,7 @@ ORDER BY
|
|||
/// <param name="appkey">appkey</param>
|
||||
/// <param name="appsecret">appsecret</param>
|
||||
/// <returns></returns>
|
||||
public async Task<Response<bool>>AddHaiKangCameraInfo(string ip, int port,string pathid,string appkey, string appsecret,int pageno=1,int pagesize=100)
|
||||
public async Task<Response<bool>> AddHaiKangCameraInfo(string ip, int port, string pathid, string appkey, string appsecret, int pageno = 1, int pagesize = 100)
|
||||
{
|
||||
// 设置平台信息
|
||||
HttpUtillib.SetPlatformInfo(appkey, appsecret, ip, port, true);
|
||||
|
|
@ -1914,16 +1915,16 @@ ORDER BY
|
|||
isSubRegion = true,
|
||||
pageNo = pageno,
|
||||
pageSize = pagesize, // 建议不要设置过大,海康可能有最大限制
|
||||
orderBy="name",
|
||||
orderType= "desc"
|
||||
orderBy = "name",
|
||||
orderType = "desc"
|
||||
};
|
||||
|
||||
string body = JsonConvert.SerializeObject(obj);
|
||||
string uri = "/artemis/api/resource/v2/camera/search";
|
||||
byte[] result = HttpUtillib.HttpPost(uri, body, 15,1);
|
||||
byte[] result = HttpUtillib.HttpPost(uri, body, 15, 1);
|
||||
List<FmCamera> fclist = new List<FmCamera>();
|
||||
var param = JsonConvert.DeserializeObject<JObject>(Encoding.UTF8.GetString(result));
|
||||
var data= param["data"]["list"];
|
||||
var data = param["data"]["list"];
|
||||
|
||||
using (var db = base.UnitWork.CreateContext())
|
||||
{
|
||||
|
|
@ -1933,48 +1934,48 @@ ORDER BY
|
|||
//var cam=await Repository.AsSugarClient().SqlQueryable<dynamic>(sql).ToListAsync();
|
||||
//if (cam.Count>0)
|
||||
//{
|
||||
FmCamera fc = new FmCamera();
|
||||
fc.Id = Guid.NewGuid().ToString();
|
||||
fc.Name = item["name"].ToString();
|
||||
var type = item["regionPathName"].ToString();
|
||||
if (type.IndexOf("林场") > -1)
|
||||
FmCamera fc = new FmCamera();
|
||||
fc.Id = Guid.NewGuid().ToString();
|
||||
fc.Name = item["name"].ToString();
|
||||
var type = item["regionPathName"].ToString();
|
||||
if (type.IndexOf("林场") > -1)
|
||||
{
|
||||
fc.Model = "LinQuSheXiangTou";
|
||||
}
|
||||
else
|
||||
{
|
||||
if (type.IndexOf("林下") > -1)
|
||||
{
|
||||
fc.Model = "LinQuSheXiangTou";
|
||||
fc.Model = "ShengTaiLinShiPinJianKong";
|
||||
}
|
||||
else
|
||||
{
|
||||
if (type.IndexOf("林下") > -1)
|
||||
if (type.IndexOf("高空瞭望") > -1)
|
||||
{
|
||||
fc.Model = "ShengTaiLinShiPinJianKong";
|
||||
fc.Model = "GaoKongLiaoWang";
|
||||
}
|
||||
else
|
||||
{
|
||||
if (type.IndexOf("高空瞭望") > -1)
|
||||
{
|
||||
fc.Model = "GaoKongLiaoWang";
|
||||
}
|
||||
else
|
||||
{
|
||||
fc.Model = "ShiPinJianKong";
|
||||
}
|
||||
fc.Model = "ShiPinJianKong";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fc.Status = "0"; //停用状态
|
||||
fc.Manufacturer = "海康";
|
||||
fc.SerialNumber = item["indexCode"].ToString();
|
||||
fc.Ip = ip;
|
||||
fc.Channel = 0;
|
||||
fc.Lng = item["longitude"].ToString();
|
||||
fc.Lat = item["latitude"].ToString();
|
||||
fc.UpdateTime = Convert.ToDateTime(item["createTime"].ToString());
|
||||
fc.AppKey = appkey;
|
||||
fc.AppSecret = appsecret;
|
||||
fc.Port = port.ToString();
|
||||
fc.RegionPathName = item["regionPathName"].ToString();
|
||||
fc.CameraType = Convert.ToInt32(item["cameraType"]);
|
||||
fc.SerialNumberRcx = null;
|
||||
fclist.Add(fc);
|
||||
fc.Status = "0"; //停用状态
|
||||
fc.Manufacturer = "海康";
|
||||
fc.SerialNumber = item["indexCode"].ToString();
|
||||
fc.Ip = ip;
|
||||
fc.Channel = 0;
|
||||
fc.Lng = item["longitude"].ToString();
|
||||
fc.Lat = item["latitude"].ToString();
|
||||
fc.UpdateTime = Convert.ToDateTime(item["createTime"].ToString());
|
||||
fc.AppKey = appkey;
|
||||
fc.AppSecret = appsecret;
|
||||
fc.Port = port.ToString();
|
||||
fc.RegionPathName = item["regionPathName"].ToString();
|
||||
fc.CameraType = Convert.ToInt32(item["cameraType"]);
|
||||
fc.SerialNumberRcx = null;
|
||||
fclist.Add(fc);
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
|
|
@ -2099,7 +2100,7 @@ ORDER BY
|
|||
RefAsync<int> totalNumber = 0;
|
||||
var infos = await db.FmCamera.AsQueryable()
|
||||
.WhereIF(!string.IsNullOrEmpty(req.name), r => r.Name.Contains(req.name))
|
||||
.WhereIF(!string.IsNullOrEmpty(req.model), r => r.Model==req.model)
|
||||
.WhereIF(!string.IsNullOrEmpty(req.model), r => r.Model == req.model)
|
||||
.WhereIF(!string.IsNullOrEmpty(req.manufacturer), r => r.Manufacturer.Contains(req.manufacturer))
|
||||
.WhereIF(!string.IsNullOrEmpty(req.serialnumber), r => r.SerialNumber.Contains(req.serialnumber))
|
||||
.ToPageListAsync(req.page, req.limit, totalNumber);
|
||||
|
|
@ -2578,5 +2579,46 @@ ORDER BY
|
|||
return data;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 护林员打卡时间添加/更新
|
||||
//添加护林员打卡时间
|
||||
public async Task<Response<bool>> AddOrUpdateTimeSolt(FmUserTimeSlot info)
|
||||
{
|
||||
using (var db = base.UnitWork.CreateContext())
|
||||
{
|
||||
if (info.CreateId == 0)
|
||||
{
|
||||
throw new Exception("请输入护林员id");
|
||||
}
|
||||
if (string.IsNullOrEmpty(info.Id))
|
||||
{
|
||||
info.Id = Guid.NewGuid().ToString();
|
||||
}
|
||||
//查询人员打卡时间是否已存在
|
||||
var exitinfo = db.FmUserTimeSlot
|
||||
.AsQueryable()
|
||||
.Where(a => a.CreateId == info.CreateId)
|
||||
.ToList();
|
||||
//如果存在,删除,覆盖
|
||||
if (exitinfo.Count > 0)
|
||||
{
|
||||
await db.FmUserTimeSlot.DeleteAsync(r => r.CreateId == info.CreateId);
|
||||
}
|
||||
|
||||
var flag = await db.FmUserTimeSlot.InsertAsync(info);
|
||||
|
||||
if (flag && db.Commit())
|
||||
{
|
||||
return new Response<bool> { Result = true, Message = "操作成功" };
|
||||
}
|
||||
else
|
||||
{
|
||||
// 如果执行到这里,说明操作失败
|
||||
return new Response<bool> { Result = false, Message = "操作失败" };
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
|
@ -14,7 +14,7 @@ namespace OpenAuth.Repository.Domain.FireManagement
|
|||
public class FmUserTimeSlot
|
||||
{
|
||||
[SugarColumn(IsPrimaryKey = true)]
|
||||
public long Id { get; set; }
|
||||
public string Id { get; set; }
|
||||
public long CreateId { get; set; }
|
||||
public string TimeSlot { get; set; }
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ using DocumentFormat.OpenXml.EMMA;
|
|||
using OpenAuth.Repository.Domain;
|
||||
using Hopetry.App.SugarModel.CommonModel;
|
||||
using Yitter.IdGenerator;
|
||||
using OpenAuth.App.ServiceApp.FmPreventionPlanManage.Request;
|
||||
|
||||
namespace OpenAuth.WebApi.Controllers.ServiceControllers.FireManagement
|
||||
{
|
||||
|
|
@ -1000,5 +1001,28 @@ namespace OpenAuth.WebApi.Controllers.ServiceControllers.FireManagement
|
|||
|
||||
#endregion
|
||||
|
||||
|
||||
#region 护林员打卡时间添加/更新
|
||||
/// <summary>
|
||||
/// 护林员打卡时间添加/更新
|
||||
/// </summary>
|
||||
/// <param name="info"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<Response<bool>> AddOrUpdateTimeSolt(FmUserTimeSlot info)
|
||||
{
|
||||
Response<bool> response = new();
|
||||
try
|
||||
{
|
||||
return await _app.AddOrUpdateTimeSolt(info);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
response.Code = 500;
|
||||
response.Message = ex.InnerException?.Message ?? ex.Message;
|
||||
}
|
||||
return response;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue