using System.Web.Http; using Model; using System.Collections.Generic; using System; using BLL; namespace Mvc.Controllers { public class CQMSConstructSolutionController : ApiController { // // 质量巡检 // GET: /Draw/ [HttpGet] public ResponseData> Index(string projectId, int index, int page, string name = null) { ResponseData> res = new ResponseData>(); res.successful = true; res.resultValue = BLL.CQMSConstructSolutionService.getListDataForApi(name, projectId, index, page); return res; } [HttpGet] public ResponseData> Search(string projectId, int index, int page, string unitId = "",string unitWork= "",string cNProfessionalCode="", string solutionType = "", string state = "") { ResponseData> res = new ResponseData>(); res.successful = true; res.resultValue = BLL.CQMSConstructSolutionService.getListDataForApi("", unitId , unitWork , cNProfessionalCode, solutionType , state, projectId, index, page); return res; } /// /// 根据code获取详情 /// /// /// public ResponseData GetSolution(string id) { ResponseData res = new ResponseData(); Solution_CQMSConstructSolution checkControl = BLL.CQMSConstructSolutionService.GetConstructSolutionByConstructSolutionIdForApi(id); res.successful = true; res.resultValue = BeanUtil.CopyOjbect(checkControl, true); res.resultValue.Edition = checkControl.Edition; return res; } /// /// 根据code获取 审核记录 /// /// /// public ResponseData> GetApproveById(string id,int edition) { ResponseData> res = new ResponseData>(); res.successful = true; res.resultValue = BLL.CQMSConstructSolutionApproveService.getListDataForApi(id); return res; } public ResponseData GetCurrApproveById(string id, string userId, int edition) { ResponseData res = new ResponseData(); var approve = BLL.CQMSConstructSolutionApproveService.getCurrApproveForApi(id, userId, edition); res.successful = true; res.resultValue = BeanUtil.CopyOjbect(approve, true); if (approve != null) { res.resultValue.Edition = approve.Edition; } return res; } /// /// /// 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); } /// /// 当前版次 会签人 /// /// /// /// public ResponseData> GetConApproveById(string id, int edition) { ResponseData> res = new ResponseData>(); res.successful = true; res.resultValue = BLL.CQMSConstructSolutionApproveService.getConApproveForApi(id, edition); return res; } [HttpPost] public ResponseData AddApprove([FromBody]Model.Solution_CQMSConstructSolutionApprove approve) { ResponseData res = new ResponseData(); try { Model.Solution_CQMSConstructSolution CheckControl = new Model.Solution_CQMSConstructSolution(); CheckControl.ConstructSolutionId = approve.ConstructSolutionId; CheckControl.State = approve.ApproveType; BLL.CQMSConstructSolutionService.UpdateConstructSolutionForApi(CheckControl); BLL.CQMSConstructSolutionApproveService.AddConstructSolutionApprove(approve); res.successful = true; } catch (Exception e) { res.resultHint = e.StackTrace; res.successful = false; } return res; } [HttpPost] public ResponseData UpdateApprove([FromBody]Solution_CQMSConstructSolutionApprove approve) { ResponseData res = new ResponseData(); try { SaveAttachFile(approve.ConstructSolutionApproveId, BLL.Const.CQMSConstructSolutionMenuId, approve.AttachUrl); // Model.Check_CheckControlApprove approve1 = BLL.CheckControlApproveService.GetCheckControlApproveByCheckControlId(approve.CheckControlCode); approve.ApproveDate = DateTime.Now; approve = BLL.CQMSConstructSolutionApproveService.UpdateConstructSolutionApproveForApi(approve); BLL.CQMSConstructSolutionApproveService.PushMessageToNextMan(approve.ConstructSolutionId);//推送待办 var approves = BLL.CQMSConstructSolutionApproveService.getConApprovesForApi(approve.ConstructSolutionId, approve.Edition.Value); Solution_CQMSConstructSolutionApprove first = null; bool allAgree = true; bool hasFinish = true; foreach (Solution_CQMSConstructSolutionApprove a in approves) { if (a.ApproveType == "1") { first = a; } if (a.ApproveType == "2") { approve.ConstructSolutionId = a.ConstructSolutionId; if (a.IsAgree.HasValue && !a.IsAgree.Value) { allAgree = false; } if (!a.IsAgree.HasValue) { hasFinish = false; } } } if (!allAgree) { if (first != null && hasFinish) { Solution_CQMSConstructSolutionApprove approveReEdit = new Solution_CQMSConstructSolutionApprove(); approveReEdit.ApproveType = "0"; approveReEdit.ApproveMan = first.ApproveMan.Split('$')[0]; approveReEdit.ConstructSolutionId = first.ConstructSolutionId; approveReEdit.Edition = first.Edition; BLL.CQMSConstructSolutionApproveService.AddConstructSolutionApproveForApi(approveReEdit); Model.Solution_CQMSConstructSolution CheckControl = new Model.Solution_CQMSConstructSolution(); CheckControl.ConstructSolutionId = approveReEdit.ConstructSolutionId; CheckControl.State = approveReEdit.ApproveType; BLL.CQMSConstructSolutionService.UpdateConstructSolutionForApi(CheckControl); } } else { if (hasFinish) { Solution_CQMSConstructSolutionApprove approveReEdit = new Solution_CQMSConstructSolutionApprove(); approveReEdit.ApproveType = "3"; approveReEdit.ConstructSolutionId = approve.ConstructSolutionId; approveReEdit.Edition = approve.Edition; BLL.CQMSConstructSolutionApproveService.AddConstructSolutionApproveForApi(approveReEdit); Model.Solution_CQMSConstructSolution CheckControl = new Model.Solution_CQMSConstructSolution(); CheckControl.ConstructSolutionId = approveReEdit.ConstructSolutionId; CheckControl.State = approveReEdit.ApproveType; BLL.CQMSConstructSolutionService.UpdateConstructSolutionForApi(CheckControl); } } if (first != null) { Solution_CQMSConstructSolutionApprove approveS = new Solution_CQMSConstructSolutionApprove(); approveS.ApproveType = "S"; approveS.ApproveMan = first.ApproveMan.Split('$')[0]; approveS.ConstructSolutionId = first.ConstructSolutionId; approveS.Edition = first.Edition; BLL.CQMSConstructSolutionApproveService.AddConstructSolutionApproveForApi(approveS); } res.successful = true; } catch (Exception e) { res.resultHint = e.StackTrace; res.successful = false; } return res; } [HttpGet] public ResponseData see(string dataId, string userId) { ResponseData res = new ResponseData(); res.successful = true; BLL.CQMSConstructSolutionApproveService.See(dataId, userId); return res; } } }