467 lines
		
	
	
		
			19 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			467 lines
		
	
	
		
			19 KiB
		
	
	
	
		
			C#
		
	
	
	
| using System.Web;
 | |
| using System.Web.Http;
 | |
| using Model;
 | |
| using System.Collections.Generic;
 | |
| using System.IO;
 | |
| using System.Configuration;
 | |
| using System;
 | |
| 
 | |
| namespace Mvc.Controllers
 | |
| {
 | |
|     public class CommenInfoController : ApiController
 | |
|     {
 | |
|         //
 | |
|         // GET: /CommenInfo/
 | |
|         [HttpGet]
 | |
|         public ResponseData<List<Base_Unit>> GetSubUnitList(string projectId, string unitType = "", string name = "")
 | |
|         {
 | |
|             ResponseData<List<Base_Unit>> res = new ResponseData<List<Base_Unit>>();
 | |
|             if (string.IsNullOrEmpty(name)) name = "";
 | |
|             if (string.IsNullOrEmpty(unitType)) unitType = "";
 | |
|             List<Project_ProjectUnit> q = BLL.ProjectUnitService.GetProjectUnitListByProjectIdForApi(projectId, unitType, name);
 | |
|             List<Base_Unit> a = new List<Base_Unit>();
 | |
|             for (int i = 0; i < q.Count; i++)
 | |
|             {
 | |
|                 var unit = q[i].Base_Unit;
 | |
|                 unit.UnitTypeId = q[i].UnitType;
 | |
|                 a.Add(BeanUtil.CopyOjbect<Base_Unit>(unit, true));
 | |
|             }
 | |
|             res.successful = true;
 | |
|             res.resultValue = a;
 | |
|             return res;
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 根据项目Id和单位Id获取项目单位类型
 | |
|         /// </summary>
 | |
|         /// <param name="projectId"></param>
 | |
|         /// <param name="unitId"></param>
 | |
|         /// <returns></returns>
 | |
|         [HttpGet]
 | |
|         public ResponseData<string> GetUnitType(string projectId, string unitId)
 | |
|         {
 | |
|             ResponseData<string> res = new ResponseData<string>();
 | |
|             string unitType = string.Empty;
 | |
|             var projectUnit = BLL.ProjectUnitService.GetProjectUnitByUnitIdProjectId(projectId, unitId);
 | |
|             if (projectUnit != null)
 | |
|             {
 | |
|                 unitType = projectUnit.UnitType;
 | |
|             }
 | |
|             res.successful = true;
 | |
|             res.resultValue = unitType;
 | |
|             return res;
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 获取质量问题类别
 | |
|         /// </summary>
 | |
|         /// <returns></returns>
 | |
|         [HttpGet]
 | |
|         public ResponseData<List<Base_QualityQuestionType>> GetQualityQuestionType()
 | |
|         {
 | |
|             ResponseData<List<Base_QualityQuestionType>> res = new ResponseData<List<Base_QualityQuestionType>>();
 | |
|             List<Base_QualityQuestionType> q = BLL.QualityQuestionTypeService.GetList();
 | |
|             List<Base_QualityQuestionType> a = new List<Base_QualityQuestionType>();
 | |
|             for (int i = 0; i < q.Count; i++)
 | |
|             {
 | |
|                 a.Add(BeanUtil.CopyOjbect<Base_QualityQuestionType>(q[i], true));
 | |
|             }
 | |
|             res.successful = true;
 | |
|             res.resultValue = a;
 | |
|             return res;
 | |
|         }
 | |
| 
 | |
| 
 | |
|         public ResponseData<List<ProjectData_MainItem>> GetMainItemList(string projectId, string unitWorks = "", string name = "")
 | |
|         {
 | |
|             ResponseData<List<ProjectData_MainItem>> res = new ResponseData<List<ProjectData_MainItem>>();
 | |
|             if (string.IsNullOrEmpty(name)) name = "";
 | |
|             if (string.IsNullOrEmpty(unitWorks)) unitWorks = "";
 | |
|             res.resultValue = BLL.MainItemService.GetMainItemList(projectId, unitWorks, name);
 | |
|             res.successful = true;
 | |
| 
 | |
|             return res;
 | |
|         }
 | |
| 
 | |
| 
 | |
| 
 | |
|         [HttpGet]
 | |
|         public ResponseData<List<WBS_UnitWork>> GetUnitWorkListByPid(string projectId)
 | |
|         {
 | |
|             ResponseData<List<WBS_UnitWork>> res = new ResponseData<List<WBS_UnitWork>>();
 | |
|             List<WBS_UnitWork> a = BLL.UnitWorkService.GetUnitWorkListByPid(projectId);
 | |
|             List<WBS_UnitWork> q = new List<WBS_UnitWork>();
 | |
|             foreach (var u in a)
 | |
|             {
 | |
|                 var temp = BeanUtil.CopyOjbect<WBS_UnitWork>(u, true);
 | |
|                 temp.UnitWorkId = u.UnitWorkId;
 | |
|                 temp.UnitWorkName = u.UnitWorkCode + "-" + u.UnitWorkName + BLL.UnitWorkService.GetProjectType(u.ProjectType);
 | |
|                 q.Add(temp);
 | |
| 
 | |
|             }
 | |
|             res.successful = true;
 | |
|             res.resultValue = q;
 | |
|             return res;
 | |
|         }
 | |
|         [HttpGet]
 | |
|         public ResponseData<List<WBS_UnitWork>> GetUnitWorkListByPidAndPtype(string projectId, string projectType)
 | |
|         {
 | |
|             ResponseData<List<WBS_UnitWork>> res = new ResponseData<List<WBS_UnitWork>>();
 | |
|             List<WBS_UnitWork> a = BLL.UnitWorkService.GetUnitWorkListByPidForApi(projectId, projectType);
 | |
|             List<WBS_UnitWork> q = new List<WBS_UnitWork>();
 | |
|             foreach (var u in a)
 | |
|             {
 | |
|                 var temp = BeanUtil.CopyOjbect<WBS_UnitWork>(u, true);
 | |
|                 temp.UnitWorkId = u.UnitWorkId;
 | |
|                 temp.UnitWorkName = u.UnitWorkCode + "-" + u.UnitWorkName + BLL.UnitWorkService.GetProjectType(u.ProjectType);
 | |
|                 q.Add(temp);
 | |
| 
 | |
|             }
 | |
|             res.successful = true;
 | |
|             res.resultValue = q;
 | |
|             return res;
 | |
|         }
 | |
|         [HttpGet]
 | |
|         public ResponseData<List<Base_CNProfessional>> GetCNProfessionalMainItem()
 | |
|         {
 | |
|             ResponseData<List<Base_CNProfessional>> res = new ResponseData<List<Base_CNProfessional>>();
 | |
|             List<Base_CNProfessional> resList = new List<Base_CNProfessional>();
 | |
|             var list = BLL.CNProfessionalService.GetList();
 | |
|             if (list != null)
 | |
|             {
 | |
|                 foreach (var item in list)
 | |
|                 {
 | |
|                     Base_CNProfessional main = new Base_CNProfessional();
 | |
|                     main.CNProfessionalCode = item.CNProfessionalId;
 | |
|                     main.SortIndex = item.SortIndex;
 | |
|                     main.ProfessionalName = item.ProfessionalName;
 | |
|                     resList.Add(main);
 | |
|                 }
 | |
|             }
 | |
|             res.successful = true;
 | |
|             res.resultValue = resList;
 | |
|             return res;
 | |
|         }
 | |
|         [HttpGet]
 | |
|         public ResponseData<List<Base_DesignProfessional>> GetDesignProfessionalMainItem()
 | |
|         {
 | |
|             ResponseData<List<Base_DesignProfessional>> res = new ResponseData<List<Base_DesignProfessional>>();
 | |
|             List<Base_DesignProfessional> resList = new List<Base_DesignProfessional>();
 | |
|             var list = BLL.DesignProfessionalService.GetList();
 | |
|             if (list != null)
 | |
|             {
 | |
|                 foreach (var item in list)
 | |
|                 {
 | |
|                     Base_DesignProfessional main = new Base_DesignProfessional();
 | |
|                     main.DesignProfessionalId = item.DesignProfessionalId;
 | |
|                     main.SortIndex = item.SortIndex;
 | |
|                     main.ProfessionalName = item.ProfessionalName;
 | |
|                     resList.Add(main);
 | |
|                 }
 | |
|             }
 | |
|             res.successful = true;
 | |
|             res.resultValue = resList;
 | |
|             return res;
 | |
|         }
 | |
|         [HttpGet]
 | |
|         public ResponseData<List<Sys_User>> FindAllUser()
 | |
|         {
 | |
|             ResponseData<List<Sys_User>> res = new ResponseData<List<Sys_User>>();
 | |
|             List<Sys_User> list;
 | |
| 
 | |
|             list = BLL.UserService.GetUserList();
 | |
| 
 | |
|             List<Sys_User> users = new List<Sys_User>();
 | |
|             foreach (var item in list)
 | |
|             {
 | |
|                 users.Add(BeanUtil.CopyOjbect<Sys_User>(item, true));
 | |
|             }
 | |
|             res.successful = true;
 | |
|             res.resultValue = users;
 | |
|             return res;
 | |
|         }
 | |
|         [HttpGet]
 | |
|         public ResponseData<List<Sys_User>> FindAllUser(string projectId, string name = "")
 | |
|         {
 | |
|             ResponseData<List<Sys_User>> res = new ResponseData<List<Sys_User>>();
 | |
|             List<Sys_User> list;
 | |
|             if (string.IsNullOrEmpty(name))
 | |
|                 name = "";
 | |
| 
 | |
|             list = BLL.UserService.GetProjectUserListByProjectIdForApi(projectId, name);
 | |
|             List<Sys_User> users = new List<Sys_User>();
 | |
|             foreach (var item in list)
 | |
|             {
 | |
|                 users.Add(BeanUtil.CopyOjbect<Sys_User>(item, true));
 | |
|             }
 | |
|             res.successful = true;
 | |
|             res.resultValue = users;
 | |
|             return res;
 | |
|         }
 | |
|         [HttpGet]
 | |
|         public ResponseData<List<Sys_User>> FindUserByUnit(string projectId, string unitId = "", string unitType = "", string name = "")
 | |
|         {
 | |
|             ResponseData<List<Sys_User>> res = new ResponseData<List<Sys_User>>();
 | |
|             List<Sys_User> list;
 | |
|             if (string.IsNullOrEmpty(unitId))
 | |
|                 unitId = "";
 | |
|             if (string.IsNullOrEmpty(unitType))
 | |
|                 unitType = "";
 | |
|             if (string.IsNullOrEmpty(name))
 | |
|                 name = "";
 | |
|             list = BLL.UserService.GetProjectUserListByProjectIdForApi(projectId, unitId, unitType, name);
 | |
|             List<Sys_User> users = new List<Sys_User>();
 | |
|             foreach (var item in list)
 | |
|             {
 | |
|                 users.Add(BeanUtil.CopyOjbect<Sys_User>(item, true));
 | |
|             }
 | |
|             res.successful = true;
 | |
|             res.resultValue = users;
 | |
|             return res;
 | |
|         }
 | |
|         [HttpGet]
 | |
|         public ResponseData<Sys_User> GetUserById(string userId)
 | |
|         {
 | |
|             ResponseData<Sys_User> res = new ResponseData<Sys_User>();
 | |
|             Model.Sys_User u = BLL.UserService.GetUserByUserId(userId);
 | |
|             Model.Sys_User tempu = BeanUtil.CopyOjbect<Sys_User>(u, true);
 | |
|             if (u.Base_Unit != null)
 | |
|             {
 | |
|                 tempu.UnitId = u.UnitId + u.Base_Unit.UnitName;
 | |
|             }
 | |
|             res.successful = true;
 | |
|             res.resultValue = tempu;
 | |
|             return res;
 | |
|         }
 | |
|         [HttpGet]
 | |
|         public ResponseData<List<WBS_WorkPackage>> GetAllWorkPackage(string unitWorkId)
 | |
|         {
 | |
|             ResponseData<List<WBS_WorkPackage>> res = new ResponseData<List<WBS_WorkPackage>>();
 | |
|             List<WBS_WorkPackage> list = new List<WBS_WorkPackage>();
 | |
|             List<WBS_WorkPackage> pagelist = BLL.WorkPackageService.GetAllWorkPackagesByUnitWorkId(unitWorkId);
 | |
|             foreach (WBS_WorkPackage w in pagelist)
 | |
|             {
 | |
|                 WBS_WorkPackage temp = BeanUtil.CopyOjbect<WBS_WorkPackage>(w, true);
 | |
|                 temp.UnitWorkId = w.UnitWorkId;
 | |
|                 list.Add(temp);
 | |
|             }
 | |
|             res.resultValue = list;
 | |
|             res.successful = true;
 | |
|             return res;
 | |
|         }
 | |
|         [HttpGet]
 | |
|         public ResponseData<List<WBS_ControlItemAndCycle>> GetControlItemAndCycle(string workPackageId)
 | |
|         {
 | |
|             ResponseData<List<WBS_ControlItemAndCycle>> res = new ResponseData<List<WBS_ControlItemAndCycle>>();
 | |
|             List<WBS_ControlItemAndCycle> list = new List<WBS_ControlItemAndCycle>();
 | |
|             List<WBS_ControlItemAndCycle> pagelist = BLL.ControlItemAndCycleService.GetListByWorkPackageIdForApi(workPackageId); ;
 | |
|             foreach (WBS_ControlItemAndCycle w in pagelist)
 | |
|             {
 | |
|                 var item = BeanUtil.CopyOjbect<WBS_ControlItemAndCycle>(w, true);
 | |
|                 item.CheckNum = w.CheckNum;
 | |
|                 list.Add(item);
 | |
| 
 | |
|             }
 | |
|             res.resultValue = list;
 | |
|             res.successful = true;
 | |
|             return res;
 | |
|         }
 | |
|         [HttpGet]
 | |
|         public ResponseData<List<Base_Unit>> FindAllUnit(string projectId = "")
 | |
|         {
 | |
|             ResponseData<List<Base_Unit>> res = new ResponseData<List<Base_Unit>>();
 | |
|             List<Base_Unit> list = BLL.UnitService.GetMainAndSubUnitByProjectIdList(projectId);
 | |
|             List<Base_Unit> units = new List<Base_Unit>();
 | |
|             foreach (var item in list)
 | |
|             {
 | |
|                 units.Add(BeanUtil.CopyOjbect<Base_Unit>(item, true));
 | |
|             }
 | |
|             res.successful = true;
 | |
|             res.resultValue = units;
 | |
|             return res;
 | |
|         }
 | |
| 
 | |
|         //
 | |
|         // GET: /FileUpload/
 | |
| 
 | |
|         /// <summary> 
 | |
|         /// 附件上传 
 | |
|         /// </summary> 
 | |
|         /// <returns></returns> 
 | |
|         public String FileUploadForWX()
 | |
|         {
 | |
|             HttpFileCollection files = HttpContext.Current.Request.Files;
 | |
|             string typeName = HttpContext.Current.Request["typeName"];
 | |
|             if (string.IsNullOrEmpty(typeName))
 | |
|             {
 | |
|                 typeName = "WebApi";
 | |
|             }
 | |
|             string reUrl = string.Empty;
 | |
|             if (files != null && files.Count > 0)
 | |
|             {
 | |
|                 string folderUrl = "FileUpLoad/" + typeName + "/" + DateTime.Now.ToString("yyyy-MM") + "/";
 | |
|                 string localRoot = ConfigurationManager.AppSettings["localRoot"] + folderUrl; //物理路径 
 | |
|                 if (!Directory.Exists(localRoot))
 | |
|                 {
 | |
|                     Directory.CreateDirectory(localRoot);
 | |
|                 }
 | |
|                 foreach (string key in files.AllKeys)
 | |
|                 {
 | |
|                     HttpPostedFile file = files[key];//file.ContentLength文件长度 
 | |
|                     if (!string.IsNullOrEmpty(file.FileName))
 | |
|                     {
 | |
|                         string fileName = Guid.NewGuid() + Path.GetExtension(file.FileName);
 | |
|                         file.SaveAs(localRoot + fileName);
 | |
|                         if (string.IsNullOrEmpty(reUrl))
 | |
|                         {
 | |
|                             reUrl += folderUrl + fileName;
 | |
|                         }
 | |
|                         else
 | |
|                         {
 | |
|                             reUrl += "," + folderUrl + fileName;
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|             }
 | |
| 
 | |
|             return reUrl;
 | |
|         }
 | |
| 
 | |
|         //
 | |
|         // GET: /FileUpload/
 | |
| 
 | |
|         /// <summary> 
 | |
|         /// 附件上传 
 | |
|         /// </summary> 
 | |
|         /// <returns></returns> 
 | |
|         public ResponseData<string> FileUpload()
 | |
|         {
 | |
|             HttpFileCollection files = HttpContext.Current.Request.Files;
 | |
|             string typeName = HttpContext.Current.Request["typeName"];
 | |
|             string fName = HttpContext.Current.Request["fileName"];
 | |
|             if (string.IsNullOrEmpty(typeName))
 | |
|             {
 | |
|                 typeName = "WebApi";
 | |
|             }
 | |
|             string reUrl = string.Empty;
 | |
|             if (files != null && files.Count > 0)
 | |
|             {
 | |
|                 string folderUrl = "FileUpLoad/" + typeName + "/" + DateTime.Now.ToString("yyyy-MM") + "/";
 | |
|                 string localRoot = ConfigurationManager.AppSettings["localRoot"] + folderUrl; //物理路径 
 | |
|                 if (!Directory.Exists(localRoot))
 | |
|                 {
 | |
|                     Directory.CreateDirectory(localRoot);
 | |
|                 }
 | |
|                 foreach (string key in files.AllKeys)
 | |
|                 {
 | |
|                     HttpPostedFile file = files[key];//file.ContentLength文件长度 
 | |
|                     if (!string.IsNullOrEmpty(file.FileName))
 | |
|                     {
 | |
|                         string fileName = Guid.NewGuid() + Path.GetExtension(file.FileName);
 | |
| 
 | |
|                         if (!string.IsNullOrEmpty(fName))
 | |
|                             fileName = Guid.NewGuid() + "_" + fName;// Path.GetExtension(file.FileName);
 | |
|                         file.SaveAs(localRoot + fileName);
 | |
|                         if (string.IsNullOrEmpty(reUrl))
 | |
|                         {
 | |
|                             reUrl += folderUrl + fileName;
 | |
|                         }
 | |
|                         else
 | |
|                         {
 | |
|                             reUrl += "," + folderUrl + fileName;
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|             }
 | |
|             ResponseData<string> res = new ResponseData<string>();
 | |
|             res.successful = true;
 | |
|             res.resultValue = reUrl;
 | |
|             return res;
 | |
|             //HttpFileCollection files = HttpContext.Current.Request.Files;
 | |
|             //string typeName = HttpContext.Current.Request["typeName"];
 | |
|             //string fName = HttpContext.Current.Request["fileName"];
 | |
|             //if (string.IsNullOrEmpty(typeName))
 | |
|             //{
 | |
|             //    typeName = "WebApi";
 | |
|             //}
 | |
|             //string reUrl = string.Empty;
 | |
|             //if (files != null && files.Count > 0)
 | |
|             //{
 | |
|             //    string folderUrl = "FileUpLoad/" + typeName + "/" + DateTime.Now.ToString("yyyy-MM") + "/";
 | |
|             //    string localRoot = ConfigurationManager.AppSettings["localRoot"] + folderUrl; //物理路径 
 | |
|             //    if (!Directory.Exists(localRoot))
 | |
|             //    {
 | |
|             //        Directory.CreateDirectory(localRoot);
 | |
|             //    }
 | |
|             //    foreach (string key in files.AllKeys)
 | |
|             //    {
 | |
|             //        HttpPostedFile file = files[key];//file.ContentLength文件长度 
 | |
|             //        if (!string.IsNullOrEmpty(file.FileName))
 | |
|             //        {
 | |
|             //            string fileName = Guid.NewGuid() + Path.GetExtension(file.FileName);
 | |
|             //            file.SaveAs(localRoot + fileName);
 | |
|             //            if (string.IsNullOrEmpty(reUrl))
 | |
|             //            {
 | |
|             //                reUrl += folderUrl + fileName;
 | |
|             //            }
 | |
|             //            else
 | |
|             //            {
 | |
|             //                reUrl += "," + folderUrl + fileName;
 | |
|             //            }
 | |
|             //        }
 | |
|             //    }
 | |
|             //}
 | |
|             //ResponseData<string> res = new ResponseData<string>();
 | |
|             //res.successful = true;
 | |
|             //res.resultValue = reUrl;
 | |
|             //return res;
 | |
|         }
 | |
| 
 | |
|         [HttpGet]
 | |
|         public ResponseData<string> getDefaultCode(string projectId, string type)
 | |
|         {
 | |
|             ResponseData<string> res = new ResponseData<string>();
 | |
|             res.successful = true;
 | |
|             switch (type)
 | |
|             {
 | |
|                 case "checkList":
 | |
|                     {
 | |
|                         string prefix = BLL.ProjectService.GetProjectByProjectId(projectId).ProjectCode + "-06-CM03-XJ-";
 | |
|                         res.resultValue = BLL.SQLHelper.RunProcNewId("SpGetNewCode5", "dbo.Check_CheckControl", "DocCode", prefix);
 | |
|                     }
 | |
|                     break;
 | |
|                 case "jointCheck":
 | |
|                     {
 | |
|                         string prefix = BLL.ProjectService.GetProjectByProjectId(projectId).ProjectCode + "-GJ-";
 | |
|                         res.resultValue = BLL.SQLHelper.RunProcNewId("SpGetNewCode3", "dbo.Check_JointCheck", "JointCheckCode", prefix);
 | |
|                     }
 | |
|                     break;
 | |
|                 case "TechnicalContact":
 | |
|                     {
 | |
|                         res.resultValue = BLL.SQLHelper.RunProcNewId2("SpGetNewCode3ByProjectId", "dbo.Check_TechnicalContactList", "Code", projectId);
 | |
|                     }
 | |
|                     break;
 | |
|                 case "design":
 | |
|                     {
 | |
|                         res.resultValue = BLL.SQLHelper.RunProcNewId2("SpGetNewCode3ByProjectId", "dbo.Check_Design", "DesignCode", projectId);
 | |
|                     }
 | |
|                     break;
 | |
|                 case "contact":
 | |
|                     {
 | |
|                         res.resultValue = BLL.SQLHelper.RunProcNewId2("SpGetNewCode3ByProjectId", "dbo.Unqualified_WorkContact", "Code", projectId);
 | |
|                     }
 | |
|                     break;
 | |
|                 case "spotCheck":
 | |
|                     {
 | |
|                         string prefix = BLL.ProjectService.GetProjectByProjectId(projectId).ProjectCode + "-06-CM03-XJ-";
 | |
|                         res.resultValue = BLL.SQLHelper.RunProcNewId("SpGetNewCode5", "dbo.Check_SpotCheck", "DocCode", prefix);
 | |
|                     }
 | |
|                     break;
 | |
| 
 | |
|             }
 | |
|             return res;
 | |
|         }
 | |
| 
 | |
|     }
 | |
| }
 |