CNCEC_SUBQHSE_WUHUAN/SGGL/BLL/ZHGL/DataSync/HJGLData_HJGLService.cs

325 lines
12 KiB
C#
Raw Normal View History

2022-12-26 14:34:56 +08:00
using FineUIPro;
using Model;
using Newtonsoft.Json;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
namespace BLL
{
public static class HJGLData_HJGLService
{
public static Model.SGGLDB db = Funs.DB;
#region
/// <summary>
/// 记录数
/// </summary>
public static int count
{
get;
set;
}
public static List<Model.HJGLData_HJGL> GetHJGLData_HJGLByModle(Model.HJGLData_HJGL table)
{
2023-05-09 19:56:06 +08:00
Model.SGGLDB db = Funs.DB;
2022-12-26 14:34:56 +08:00
var q = from x in db.HJGLData_HJGL
where
(string.IsNullOrEmpty(table.Id) || x.Id.Contains(table.Id)) &&
(string.IsNullOrEmpty(table.UnitId) || x.UnitId.Contains(table.UnitId)) &&
(string.IsNullOrEmpty(table.CollCropCode) || x.CollCropCode.Contains(table.CollCropCode)) &&
(string.IsNullOrEmpty(table.UnitName) || x.UnitName.Contains(table.UnitName))
2023-05-09 19:56:06 +08:00
orderby x.ReportDate descending
2022-12-26 14:34:56 +08:00
select x
;
return q.ToList();
}
/// 获取分页列表
/// </summary>
/// <param name="PageIndex">页码</param>
/// <param name="PageSize">每页数量</param>
/// <returns></returns>
public static IEnumerable getListData(Model.HJGLData_HJGL table, Grid Grid1)
{
var q = GetHJGLData_HJGLByModle(table);
count = q.Count();
if (count == 0)
{
return null;
}
// q = SortConditionHelper.SortingAndPaging(q, Grid1.SortField, Grid1.SortDirection, Grid1.PageIndex, Grid1.PageSize);
return from x in q
select new
{
x.Id,
x.UnitId,
x.CollCropCode,
x.UnitName,
x.ReportDate,
x.WelderNum,
x.TotalDineNum,
x.CompleteDineNum,
x.TotalFilmNum,
x.OKFilmNum,
x.State,
x.CreateDate,
x.CreateMan,
};
}
#endregion
public static void AddHJGLData_HJGL(Model.HJGLData_HJGL newtable)
{
2023-05-09 19:56:06 +08:00
Model.SGGLDB db = Funs.DB;
2022-12-26 14:34:56 +08:00
Model.HJGLData_HJGL table = new Model.HJGLData_HJGL
{
Id = newtable.Id,
UnitId = newtable.UnitId,
CollCropCode = newtable.CollCropCode,
UnitName = newtable.UnitName,
ReportDate = newtable.ReportDate,
WelderNum = newtable.WelderNum,
TotalDineNum = newtable.TotalDineNum,
CompleteDineNum = newtable.CompleteDineNum,
TotalFilmNum = newtable.TotalFilmNum,
OKFilmNum = newtable.OKFilmNum,
State = newtable.State,
CreateDate = newtable.CreateDate,
CreateMan = newtable.CreateMan,
};
db.HJGLData_HJGL.InsertOnSubmit(table);
db.SubmitChanges();
}
public static void DeleteHJGLData_HJGLById(string Id)
{
2023-05-09 19:56:06 +08:00
Model.SGGLDB db = Funs.DB;
2022-12-26 14:34:56 +08:00
Model.HJGLData_HJGL table = db.HJGLData_HJGL.FirstOrDefault(x => x.Id == Id);
if (table != null)
{
db.HJGLData_HJGL.DeleteOnSubmit(table);
db.SubmitChanges();
}
}
public static Model.HJGLData_HJGL GetHJGLData_HJGLById(string Id)
{
2023-05-09 19:56:06 +08:00
Model.SGGLDB db = Funs.DB;
2022-12-26 14:34:56 +08:00
return db.HJGLData_HJGL.FirstOrDefault(x => x.Id == Id);
}
public static Model.HJGLData GetItemById(string Id)
{
HJGLDataItem item = new HJGLDataItem();
HJGLData data = new HJGLData();
var data_HJGL = GetHJGLData_HJGLById(Id);
if (data_HJGL != null)
{
var data_HJGL_detail = BLL.HJGLData_DefectService.GetHJGLData_DefectByDate(data_HJGL.ReportDate);
item.CollCropCode = data_HJGL.CollCropCode;
item.CompleteDineNum = data_HJGL.CompleteDineNum;
item.Id = data_HJGL.Id;
item.OKFilmNum = data_HJGL.OKFilmNum;
item.ReportDate = data_HJGL.ReportDate.Value.ToShortDateString();
item.TotalDineNum = data_HJGL.TotalDineNum;
item.TotalFilmNum = data_HJGL.TotalFilmNum;
item.UnitId = data_HJGL.UnitId;
item.WelderNum = data_HJGL.WelderNum;
var list = new List<HJGLDataDefectItems>();
if (data_HJGL_detail != null)
{
foreach (var detail in data_HJGL_detail)
{
HJGLDataDefectItems hjglDataDefectItem = new HJGLDataDefectItems();
hjglDataDefectItem.DefectNum = detail.DefectNum;
hjglDataDefectItem.DefectName = detail.DefectName;
hjglDataDefectItem.Id = detail.Id;
list.Add(hjglDataDefectItem);
}
item.HJGLDataDefectItems = list;
}
}
List<HJGLDataItem> hJGLDataItems = new List<HJGLDataItem>();
hJGLDataItems.Add(item);
data.HJGLDataItems = hJGLDataItems;
return data;
}
public static Model.HJGLData GetTodayHJGLData_HJGL()
{
var q = GetTodayData();
HJGLData data = new HJGLData();
if (q != null && q.State == Const.CNCEC_State_S)
{
HJGLDataItem item = new HJGLDataItem();
item.CollCropCode = q.CollCropCode;
item.CompleteDineNum = q.CompleteDineNum;
item.Id = q.Id;
item.OKFilmNum = q.OKFilmNum;
item.ReportDate = q.ReportDate.Value.ToShortDateString();
item.TotalDineNum = q.TotalDineNum;
item.TotalFilmNum = q.TotalFilmNum;
item.UnitId = q.UnitId;
item.WelderNum = q.WelderNum;
item.HJGLDataDefectItems = Project_HJGLData_DefectService.getTodayProject_HJGLData_Defect();
List<HJGLDataItem> hJGLDataItems = new List<HJGLDataItem>();
hJGLDataItems.Add(item);
data.HJGLDataItems = hJGLDataItems;
}
else
{
data = StatisticalData();
}
return data;
}
public static Model.HJGLData_HJGL GetTodayData()
{
var q = (from x in Funs.DB.HJGLData_HJGL
where x.ReportDate < DateTime.Now.AddDays(1).Date && x.ReportDate >= DateTime.Now.Date
select x).FirstOrDefault();
return q;
}
public static void UpdateTodyData_State()
{
var q = GetTodayData();
if (q!=null)
{
q.State = Const.CNCEC_State_1;
UpdateHJGLData_HJGL(q);
}
}
public static bool IsReportByDate(DateTime dateTime)
{
var result = false;
var q = (from x in Funs.DB.HJGLData_HJGL
where x.ReportDate >= dateTime.Date && x.ReportDate < (dateTime.Date.AddDays(1).Date)
select x).ToList();
if (q != null && q.Count > 0)
{
result = true;
}
return result;
}
/// <summary>
/// 判断当天是否已上报
/// </summary>
/// <returns></returns>
public static bool IsReportByToday()
{
var result = false;
var q = (from x in Funs.DB.HJGLData_HJGL
where x.ReportDate < DateTime.Now.AddDays(1).Date && x.ReportDate >= DateTime.Now.Date
select x).ToList();
if (q != null && q.Count > 0)
{
result = true;
}
return result;
}
public static Model.ReturnData PushCNCEC(string Id)
{
string baseurl = "/api/HJGLData/SaveHJGLData";
var item = GetItemById(Id);
string str = JsonConvert.SerializeObject(item);
var responeData = BLL.ServerService.PushCNCEC(str, baseurl);
return responeData;
}
public static HJGLData StatisticalData()
{
HJGLData data = new HJGLData();
2023-05-09 19:56:06 +08:00
string thisUnitId = string.Empty;
var thisUnit = Const.UnitId_CWCEC;
if (thisUnit != null)
{
thisUnitId = thisUnit;
}
2022-12-26 14:34:56 +08:00
var base_Unit = BLL.UnitService.GetUnitByUnitId(thisUnitId);
var ProjectData = (from x in Funs.DB.Project_HJGLData_HJGL
where x.ReportDate < DateTime.Now.AddDays(1).Date && x.ReportDate >= DateTime.Now.Date
select x).ToList();
Project_HJGLData_HJGLService.StatisticalAllProjectData();
Model.HJGLData_HJGL table = new Model.HJGLData_HJGL
{
UnitId = thisUnitId,
CollCropCode = base_Unit.CollCropCode,
UnitName = base_Unit.UnitName,
ReportDate = DateTime.Now.Date,
WelderNum = ProjectData.Sum(x => x.WelderNum),
TotalDineNum = ProjectData.Sum(x => x.TotalDineNum),
CompleteDineNum = ProjectData.Sum(x => x.CompleteDineNum),
TotalFilmNum = ProjectData.Sum(x => x.TotalFilmNum),
OKFilmNum = ProjectData.Sum(x => x.OKFilmNum),
CreateMan = Const.sysglyId,
CreateDate = DateTime.Now,
};
if (IsReportByToday())
{
table.Id = GetTodayData().Id;
table.State = Const.CNCEC_State_1;
UpdateHJGLData_HJGL(table);
}
else
{
table.Id = SQLHelper.GetNewID();
table.State = Const.CNCEC_State_0;
AddHJGLData_HJGL(table);
}
HJGLDataItem item = new HJGLDataItem();
item.CollCropCode = table.CollCropCode;
item.CompleteDineNum = table.CompleteDineNum;
item.Id = table.Id;
item.OKFilmNum = table.OKFilmNum;
item.ReportDate = table.ReportDate.Value.ToShortDateString();
item.TotalDineNum = table.TotalDineNum;
item.TotalFilmNum = table.TotalFilmNum;
item.UnitId = table.UnitId;
item.WelderNum = table.WelderNum;
item.HJGLDataDefectItems = Project_HJGLData_DefectService.getTodayProject_HJGLData_Defect();
List<HJGLDataItem> hJGLDataItems = new List<HJGLDataItem>();
hJGLDataItems.Add(item);
data.HJGLDataItems = hJGLDataItems;
return data;
}
public static void UpdateHJGLData_HJGL(Model.HJGLData_HJGL newtable)
{
2023-05-09 19:56:06 +08:00
Model.SGGLDB db = Funs.DB;
2022-12-26 14:34:56 +08:00
Model.HJGLData_HJGL table = db.HJGLData_HJGL.FirstOrDefault(x => x.Id == newtable.Id);
if (table != null)
{
table.Id = newtable.Id;
table.UnitId = newtable.UnitId;
table.CollCropCode = newtable.CollCropCode;
table.UnitName = newtable.UnitName;
table.ReportDate = newtable.ReportDate;
table.WelderNum = newtable.WelderNum;
table.TotalDineNum = newtable.TotalDineNum;
table.CompleteDineNum = newtable.CompleteDineNum;
table.TotalFilmNum = newtable.TotalFilmNum;
table.OKFilmNum = newtable.OKFilmNum;
table.State = newtable.State;
table.CreateMan = newtable.CreateMan;
table.CreateDate = newtable.CreateDate;
db.SubmitChanges();
}
}
}
}