using BLL;
using Microsoft.Office.Interop.Excel;
using Microsoft.Office.Interop.Word;
using Model;
using Model.APIItem.SYHSE;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Net.Mime;
using System.Security.Policy;
using System.Web;
using System.Web.Http;
using System.Web.UI.WebControls;
namespace WebAPI.Controllers.SYHSE
{
public class SYController : ApiController
{
#region 企业承诺
///
/// 企业承诺
///
///
///
[HttpPost]
public Model.ResponeData SavePromise([FromBody] DataPromiseItem newItem)
{
var responeData = new Model.ResponeData();
try
{
using (var db = new Model.SGGLDB(Funs.ConnString))
{
Model.SYHSEData_Promise promise = new SYHSEData_Promise();
promise.PromiseId = Guid.NewGuid().ToString();
promise.ProjectId = newItem.ProjectId;
promise.UnitId = newItem.UnitId;
promise.PromiseDate = newItem.PromiseDate;
promise.Promise = newItem.Promise;
promise.CreateMan = newItem.CreateMan;
promise.CreateDate = DateTime.Now;
db.SYHSEData_Promise.InsertOnSubmit(promise);
db.SubmitChanges();
newItem.PromiseId = promise.PromiseId;
string contenttype = "application/json;charset=utf-8";
string url = ConfigurationManager.AppSettings["QHSE_URL"]+ "api/SYHSEData/SavePromise";
string messages = APIGetHttpService.Http(url, "POST", contenttype, null, JsonConvert.SerializeObject(newItem));
}
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region 保存安全人工时
///
/// 保存安全人工时
///
///
///
[HttpPost]
public Model.ResponeData SaveDataBase([FromBody] DataBaseItem newItem)
{
var responeData = new Model.ResponeData();
try
{
using (var db = new Model.SGGLDB(Funs.ConnString))
{
Model.SYHSEData_Base dataBase = new SYHSEData_Base();
dataBase.Id = Guid.NewGuid().ToString();
dataBase.ProjectId = newItem.ProjectId;
dataBase.UnitId = newItem.UnitId;
dataBase.ReportDate = newItem.ReportDate;
dataBase.SafeWorkinghours = newItem.SafeWorkinghours;
dataBase.CreateMan = newItem.CreateMan;
dataBase.CreateDate = DateTime.Now;
db.SYHSEData_Base.InsertOnSubmit(dataBase);
db.SubmitChanges();
newItem.Id = dataBase.Id;
string contenttype = "application/json;charset=utf-8";
string url = ConfigurationManager.AppSettings["QHSE_URL"] + "api/SYHSEData/SaveDataBase";
string messages = APIGetHttpService.Http(url, "POST", contenttype, null, JsonConvert.SerializeObject(newItem));
}
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region 保存重大危险源
///
/// 保存重大危险源
///
///
///
[HttpPost]
public Model.ResponeData SaveMajorHazard([FromBody] DataMajorHazardItem newItem)
{
var responeData = new Model.ResponeData();
try
{
using (var db = new Model.SGGLDB(Funs.ConnString))
{
Model.SYHSEData_MajorHazard hazard = new SYHSEData_MajorHazard();
hazard.Id = Guid.NewGuid().ToString();
hazard.ProjectId = newItem.ProjectId;
hazard.UnitId = newItem.UnitId;
hazard.ReportDate = newItem.ReportDate;
hazard.HazardName = newItem.HazardName;
hazard.HazardCode = newItem.HazardCode;
hazard.Type = newItem.Type;
hazard.HazardLevel = newItem.HazardLevel;
hazard.DeviceName = newItem.DeviceName;
hazard.Material = newItem.Material;
hazard.Amount = newItem.Amount;
hazard.MaxAmount = newItem.MaxAmount;
hazard.MinAmount = newItem.MinAmount;
hazard.MainRespPerson = newItem.MainRespPerson;
hazard.MainRespDepartment = newItem.MainRespDepartment;
hazard.MainTechPerson = newItem.MainTechPerson;
hazard.MainOperaPerson = newItem.MainOperaPerson;
hazard.CreateMan = newItem.CreateMan;
hazard.CrateDate = DateTime.Now;
db.SYHSEData_MajorHazard.InsertOnSubmit(hazard);
db.SubmitChanges();
newItem.Id=hazard.Id;
string contenttype = "application/json;charset=utf-8";
string url = ConfigurationManager.AppSettings["QHSE_URL"] + "api/SYHSEData/SaveMajorHazard";
string messages = APIGetHttpService.Http(url, "POST", contenttype, null, JsonConvert.SerializeObject(newItem));
}
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region 保存隐患排查
///
/// 保存隐患排查
///
///
///
[HttpPost]
public Model.ResponeData SaveHiddenDangers([FromBody] DataHiddenDangersItem newItem)
{
var responeData = new Model.ResponeData();
try
{
using (var db = new Model.SGGLDB(Funs.ConnString))
{
Model.SYHSEData_HiddenDangers dangers = new SYHSEData_HiddenDangers();
dangers.Id = Guid.NewGuid().ToString();
dangers.ProjectId = newItem.ProjectId;
dangers.UnitId = newItem.UnitId;
dangers.CheckDate = newItem.CheckDate;
dangers.DangerDes = newItem.DangerDes;
dangers.CheckUnit = newItem.CheckUnit;
dangers.CheckPerson = newItem.CheckPerson;
dangers.ConfirmPerson = newItem.ConfirmPerson;
dangers.RiskLevel = newItem.RiskLevel;
dangers.RiskAddress = newItem.RiskAddress;
dangers.ResponseMan = newItem.ResponseMan;
dangers.RectificationStatus = newItem.RectificationStatus;
dangers.Status = newItem.Status;
dangers.CreateMan = newItem.CreateMan;
dangers.ResponseUnit = newItem.ResponseUnit;
dangers.Type = newItem.Type;
dangers.CreateDate = DateTime.Now;
db.SYHSEData_HiddenDangers.InsertOnSubmit(dangers);
db.SubmitChanges();
SaveAttachFile(dangers.Id+"1", BLL.Const.SYHSE_HiddenDangersMenuId, newItem.ImgAfter);
SaveAttachFile(dangers.Id, BLL.Const.SYHSE_HiddenDangersMenuId, newItem.ImgBefore);
string urlFileUpLoad = ConfigurationManager.AppSettings["QHSE_URL"] + "api/FileUpload/Post";
if (!string.IsNullOrEmpty(newItem.ImgBefore))
{
string rootUrl = ConfigurationManager.AppSettings["localRoot"];
var urls = newItem.ImgBefore.Split(',');
string urlRes = "";
foreach (var u in urls)
{
urlRes += APIGetHttpService.HttpUploadFile(urlFileUpLoad, rootUrl + u, null).Trim('"') + ",";
}
newItem.ImgBefore = urlRes.TrimEnd(',');
}
if (!string.IsNullOrEmpty(newItem.ImgAfter))
{
string rootUrl = ConfigurationManager.AppSettings["localRoot"];
var urls = newItem.ImgAfter.Split(',');
string urlRes = "";
foreach (var u in urls)
{
urlRes += APIGetHttpService.HttpUploadFile(urlFileUpLoad, rootUrl + u, null).Trim('"') + ",";
}
newItem.ImgAfter = urlRes.TrimEnd(',');
}
newItem.Id = dangers.Id;
string contenttype = "application/json;charset=utf-8";
string url = ConfigurationManager.AppSettings["QHSE_URL"] + "api/SYHSEData/SaveHiddenDangers";
string messages = APIGetHttpService.Http(url, "POST", contenttype, null, JsonConvert.SerializeObject(newItem));
}
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
public static void SaveAttachFile(string dataId, string menuId, string url)
{
Model.ToDoItem toDoItem = new Model.ToDoItem
{
MenuId = menuId,
DataId = dataId,
UrlStr = url,
};
APIUpLoadFileService.SaveAttachUrl(toDoItem);
}
#region 保存风险
///
/// 保存风险
///
///
///
[HttpPost]
public Model.ResponeData SaveRisk([FromBody] DataRiskItem newItem)
{
var responeData = new Model.ResponeData();
try
{
using (var db = new Model.SGGLDB(Funs.ConnString))
{
Model.SYHSEData_Risk risk = db.SYHSEData_Risk.FirstOrDefault(x => x.RiskEvent == newItem.RiskEvent && x.ProjectId == newItem.ProjectId);
if (risk == null)
{
risk = new SYHSEData_Risk();
risk.Id = Guid.NewGuid().ToString();
db.SYHSEData_Risk.InsertOnSubmit(risk);
}
risk.ProjectId = newItem.ProjectId;
risk.UnitId = newItem.UnitId;
risk.ControlObject = newItem.ControlObject;
risk.ReportDate = newItem.ReportDate;
risk.RespDepartment = newItem.RespDepartment;
risk.RespPerson = newItem.RespPerson;
risk.AnalysisUnit = newItem.AnalysisUnit;
risk.RiskEvent = newItem.RiskEvent;
risk.RiskLevel = newItem.RiskLevel;
risk.CreateMan = newItem.CreateMan;
risk.CreateDate = DateTime.Now;
db.SubmitChanges();
newItem.Id = risk.Id;
string contenttype = "application/json;charset=utf-8";
string url = ConfigurationManager.AppSettings["QHSE_URL"] + "api/SYHSEData/SaveRisk";
string messages = APIGetHttpService.Http(url, "POST", contenttype, null, JsonConvert.SerializeObject(newItem));
}
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region 保存作业票
///
/// 保存作业票
///
///
///
[HttpPost]
public Model.ResponeData SaveLicence([FromBody] DataLicenceItem newItem)
{
var responeData = new Model.ResponeData();
try
{
using (var db = new Model.SGGLDB(Funs.ConnString))
{
Model.SYHSEData_Licence dangers = new SYHSEData_Licence();
dangers.Id = Guid.NewGuid().ToString();
dangers.ProjectId = newItem.ProjectId;
dangers.UnitId = newItem.UnitId;
dangers.Amount = newItem.Amount;
dangers.CreateMan = newItem.CreateMan;
dangers.Type = newItem.Type;
dangers.ReportDate = newItem.ReportDate;
dangers.CreateDate = DateTime.Now;
db.SYHSEData_Licence.InsertOnSubmit(dangers);
db.SubmitChanges();
newItem.Id = dangers.Id;
string contenttype = "application/json;charset=utf-8";
string url = ConfigurationManager.AppSettings["QHSE_URL"] + "api/SYHSEData/SaveLicence";
string messages = APIGetHttpService.Http(url, "POST", contenttype, null, JsonConvert.SerializeObject(newItem));
}
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region 保存环保数据
///
/// 保存作业票
///
///
///
[HttpPost]
public Model.ResponeData SaveEnvironmentProtection([FromBody] DataEnvironmentProtectionItem newItem)
{
var responeData = new Model.ResponeData();
try
{
using (var db = new Model.SGGLDB(Funs.ConnString))
{
Model.SYHSEData_EnvironmentProtection dangers = new SYHSEData_EnvironmentProtection();
dangers.Id = Guid.NewGuid().ToString();
dangers.ProjectId = newItem.ProjectId;
dangers.UnitId = newItem.UnitId;
dangers.DetectionTimeA = newItem.DetectionTimeA;
dangers.DetectionTimeZ = newItem.DetectionTimeZ;
dangers.DetectionAddress = newItem.DetectionAddress;
dangers.DetectionProject = newItem.DetectionProject;
dangers.DetectionValue = newItem.DetectionValue;
dangers.StandValue = newItem.StandValue;
dangers.AvgFlow = newItem.AvgFlow;
dangers.SumFlow = newItem.SumFlow;
dangers.IsOk = newItem.IsOk;
dangers.IsStop = newItem.IsStop;
dangers.ReMark = newItem.ReMark;
dangers.Type = newItem.Type;
dangers.CreateMan = newItem.CreateMan;
dangers.ShowIndex = 0;
dangers.CreateDate = DateTime.Now;
db.SYHSEData_EnvironmentProtection.InsertOnSubmit(dangers);
db.SubmitChanges();
newItem.Id = dangers.Id;
string contenttype = "application/json;charset=utf-8";
string url = ConfigurationManager.AppSettings["QHSE_URL"] + "api/SYHSEData/SaveEnvironmentProtection";
string messages = APIGetHttpService.Http(url, "POST", contenttype, null, JsonConvert.SerializeObject(newItem));
}
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
}
}