using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using BLL;
using Model;
namespace WebAPI.Controllers.DataPenetrate
{
///
/// 项目控制器
///
public class ProjectPenetrateController : ApiController
{
///
/// 根据项目名称模糊查询项目信息
///
///
///
public Model.ResponeData getInfoByProjectName(string projectName = "")
{
var responeData = new Model.ResponeData();
try
{
if (string.IsNullOrEmpty(projectName))
{
responeData.code = 0;
responeData.message = "项目名称不能为空";
return responeData;
}
var getDataList = Funs.DB.Base_Project.Where(x => x.ProjectName.Contains(projectName))
.Select(s => new newBase_Project() {
ProjectId = s.ProjectId,
ProjectName = s.ProjectName,
UnitId = s.UnitId,
ProjectCode = s.ProjectCode
}).ToList();
responeData.data = new { getDataList };
if (getDataList.Count == 0)
{
responeData.code = 1;
responeData.message = "根据条件未查询到数据。";
return responeData;
}
else {
responeData.code = 0;
responeData.message = "查询成功。";
return responeData;
}
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
public class newBase_Project {
public string ProjectId { get; set; }
public string ProjectName { get; set; }
public string UnitId { get; set; }
public string ProjectCode { get; set; }
}
///
/// 添加项目
///
///
///
[HttpPost]
public Model.ResponeData saveProject([FromBody] Base_ProjectDto dto)
{
using (var db = new Model.SUBQHSEDB(Funs.ConnString))
{
var responeData = new Model.ResponeData();
var mapper = EmitMapper.ObjectMapperManager.DefaultInstance.GetMapper();
var model = mapper.Map(dto);
#region 判断是否未填
if (string.IsNullOrEmpty(model.ProjectName))
{
responeData.code = 0;
responeData.message = "项目名称(ProjectName)不能为空";
return responeData;
}
if (string.IsNullOrEmpty(model.ProjectAttribute))
{
responeData.code = 0;
responeData.message = "项目属性(ProjectAttribute)不能为空";
return responeData;
}
if (string.IsNullOrEmpty(model.ProjectCode))
{
responeData.code = 0;
responeData.message = "项目编号(ProjectCode)不能为空";
return responeData;
}
if (string.IsNullOrEmpty(model.ShortName))
{
responeData.code = 0;
responeData.message = "项目简称(ShortName)不能为空";
return responeData;
}
if (string.IsNullOrEmpty(model.UnitId))
{
responeData.code = 0;
responeData.message = "所属单位(UnitId)不能为空";
return responeData;
}
else
{
//判断userid是否有数据
var umodel = Funs.DB.Base_Unit.FirstOrDefault(x => x.UnitName == model.UnitId);
if (umodel == null)
{
responeData.code = 0;
responeData.message = "所属单位名称未查询到数据,请检查是否正确。";
return responeData;
}
else
{
model.UnitId = umodel.UnitId;
}
}
if (string.IsNullOrEmpty(model.ProjectState))
{
responeData.code = 0;
responeData.message = "项目状态(ProjectState)不能为空";
return responeData;
}
var oldProject1 = Funs.DB.Base_Project.FirstOrDefault(x => x.ProjectId != (model.ProjectId ?? "") && x.ProjectCode == model.ProjectCode);
if (oldProject1 != null)
{
responeData.code = 0;
responeData.message = "项目编号已存在";
return responeData;
}
var oldProject2 = Funs.DB.Base_Project.FirstOrDefault(x => x.ProjectId != (model.ProjectId ?? "") && x.ProjectName == model.ProjectName);
if (oldProject2 != null)
{
responeData.code = 0;
responeData.message = "项目名称已存在";
return responeData;
}
#endregion
try
{
model.ProjectId = SQLHelper.GetNewID(); ;
ProjectService.AddProject(model);
// 初始化焊接环境变量设置
BLL.Project_SysSetService.InsertHjglInit(model.ProjectId);
responeData.message = "操作成功";
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
}
}
}