315 lines
13 KiB
C#
315 lines
13 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Web.Http;
|
|
using BLL;
|
|
using Model;
|
|
|
|
namespace Mvc.Controllers
|
|
{
|
|
public class JointCheckController : ApiController
|
|
{
|
|
|
|
|
|
//
|
|
// 质量共检
|
|
// GET: /Draw/
|
|
[HttpGet]
|
|
public ResponseData<List<Check_JointCheck>> Index(string projectId, int index, int page, string name = null)
|
|
{
|
|
ResponseData<List<Check_JointCheck>> res = new ResponseData<List<Check_JointCheck>>();
|
|
|
|
res.successful = true;
|
|
res.resultValue = BLL.JointCheckService.GetListDataForApi(name, projectId, index, page);
|
|
return res;
|
|
}
|
|
|
|
[HttpGet]
|
|
public ResponseData<List<Check_JointCheck>> Search(string projectId, int index, int page, string name = null, string code = null, string unitId = null, string proposeUnitId = null, string type = null, string dateA = null, string dateZ = null, string state = null)
|
|
{
|
|
ResponseData<List<Check_JointCheck>> res = new ResponseData<List<Check_JointCheck>>();
|
|
|
|
res.successful = true;
|
|
res.resultValue = BLL.JointCheckService.GetListDataForApi(name, code, unitId, proposeUnitId, type, dateA, dateZ, projectId, state, index, page);
|
|
return res;
|
|
}
|
|
|
|
//
|
|
// 质量共检
|
|
// GET: /Draw/
|
|
[HttpGet]
|
|
public ResponseData<Check_JointCheck> GetJointCheck(string id)
|
|
{
|
|
ResponseData<Check_JointCheck> res = new ResponseData<Check_JointCheck>();
|
|
Check_JointCheck jc = BLL.JointCheckService.GetJointCheckForApi(id);
|
|
res.successful = true;
|
|
res.resultValue = BeanUtil.CopyOjbect<Check_JointCheck>(jc, true);
|
|
return res;
|
|
}
|
|
|
|
[HttpGet]
|
|
public ResponseData<List<Check_JointCheckApprove>> GetApproveByJcid(string id, string detailId)
|
|
{
|
|
ResponseData<List<Check_JointCheckApprove>> res = new ResponseData<List<Check_JointCheckApprove>>();
|
|
res.successful = true;
|
|
res.resultValue = BLL.JointCheckApproveService.getListDataByJcidForApi(id, detailId);
|
|
return res;
|
|
|
|
}
|
|
[HttpGet]
|
|
public ResponseData<Check_JointCheckApprove> getCurrApproveByDetailId(string id)
|
|
{
|
|
ResponseData<Check_JointCheckApprove> res = new ResponseData<Check_JointCheckApprove>();
|
|
|
|
res.successful = true;
|
|
res.resultValue = BeanUtil.CopyOjbect<Check_JointCheckApprove>(BLL.JointCheckApproveService.getCurrApproveByDetailIdForApi(id), true);
|
|
return res;
|
|
}
|
|
[HttpGet]
|
|
public ResponseData<List<Check_JointCheckApprove>> GetCurrApproveById(string id)
|
|
{
|
|
ResponseData<List<Check_JointCheckApprove>> res = new ResponseData<List<Check_JointCheckApprove>>();
|
|
|
|
res.successful = true;
|
|
res.resultValue = BLL.JointCheckApproveService.getCurrApproveForApi(id);
|
|
return res;
|
|
}
|
|
[HttpGet]
|
|
public ResponseData<Check_JointCheckApprove> GetCurrApproveByJoinCheckId(string id)
|
|
{
|
|
ResponseData<Check_JointCheckApprove> res = new ResponseData<Check_JointCheckApprove>();
|
|
|
|
res.successful = true;
|
|
res.resultValue = BLL.JointCheckApproveService.getCurrApproveByJoinCheckIdForApi(id);
|
|
return res;
|
|
}
|
|
|
|
[HttpGet]
|
|
public ResponseData<List<View_Check_JointCheckDetail>> GetJointCheckDetail(string id)
|
|
{
|
|
ResponseData<List<View_Check_JointCheckDetail>> res = new ResponseData<List<View_Check_JointCheckDetail>>();
|
|
res.successful = true;
|
|
res.resultValue = BLL.JointCheckDetailService.getListDataForApi(id);
|
|
return res;
|
|
|
|
}
|
|
[HttpGet]
|
|
public ResponseData<string> delJointCheckDetail(string id)
|
|
{
|
|
ResponseData<string> res = new ResponseData<string>();
|
|
res.successful = true;
|
|
BLL.JointCheckDetailService.DeleteJointCheckDetailById(id);
|
|
res.resultValue = id;
|
|
return res;
|
|
|
|
}
|
|
|
|
[HttpPost]
|
|
public ResponseData<string> AddJointCheckDetail([FromBody]Model.Check_JointCheckDetail CheckControl)
|
|
{
|
|
ResponseData<string> res = new ResponseData<string>();
|
|
try
|
|
{
|
|
if (string.IsNullOrEmpty(CheckControl.JointCheckDetailId))
|
|
{
|
|
|
|
CheckControl.JointCheckDetailId = Guid.NewGuid().ToString();
|
|
CheckControl.CreateDate = DateTime.Now;
|
|
|
|
BLL.JointCheckDetailService.AddJointCheckDetailForApi(CheckControl);
|
|
|
|
//BLL.AttachFileService.updateAttachFile(CheckControl.ReAttachUrl, CheckControl.JointCheckDetailId + "r", Const.JointCheckMenuId);
|
|
//BLL.AttachFileService.updateAttachFile(CheckControl.AttachUrl, CheckControl.JointCheckDetailId, Const.JointCheckMenuId);
|
|
SaveAttachFile(CheckControl.JointCheckDetailId + "r", BLL.Const.JointCheckMenuId, CheckControl.ReAttachUrl);
|
|
SaveAttachFile(CheckControl.JointCheckDetailId, BLL.Const.JointCheckMenuId, CheckControl.AttachUrl);
|
|
res.resultValue = CheckControl.JointCheckDetailId;
|
|
|
|
res.successful = true;
|
|
}
|
|
else
|
|
{
|
|
BLL.JointCheckDetailService.UpdateJointCheckDetailForApi(CheckControl);
|
|
res.resultValue = CheckControl.JointCheckDetailId;
|
|
//BLL.AttachFileService.updateAttachFile(CheckControl.ReAttachUrl, CheckControl.JointCheckDetailId + "r", Const.JointCheckMenuId);
|
|
//BLL.AttachFileService.updateAttachFile(CheckControl.AttachUrl, CheckControl.JointCheckDetailId, Const.JointCheckMenuId);
|
|
SaveAttachFile(CheckControl.JointCheckDetailId + "r", BLL.Const.JointCheckMenuId, CheckControl.ReAttachUrl);
|
|
SaveAttachFile(CheckControl.JointCheckDetailId, BLL.Const.JointCheckMenuId, CheckControl.AttachUrl);
|
|
res.successful = true;
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
res.resultHint = e.StackTrace;
|
|
res.successful = false;
|
|
}
|
|
return res;
|
|
|
|
}
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
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);
|
|
}
|
|
|
|
[HttpPost]
|
|
// 共检--添加
|
|
public ResponseData<string> AddJointCheck([FromBody]Model.Check_JointCheck CheckControl)
|
|
{
|
|
ResponseData<string> res = new ResponseData<string>();
|
|
try
|
|
{
|
|
if (string.IsNullOrEmpty(CheckControl.JointCheckId))
|
|
{
|
|
var project = BLL.ProjectService.GetProjectByProjectId(CheckControl.ProjectId);
|
|
string projectCode = string.Empty;
|
|
string prefix = string.Empty;
|
|
if (project != null)
|
|
{
|
|
projectCode = project.ProjectCode;
|
|
}
|
|
prefix = projectCode + "-GJ-";
|
|
CheckControl.JointCheckCode = BLL.SQLHelper.RunProcNewId("SpGetNewCode3", "dbo.Check_JointCheck", "JointCheckCode", prefix);
|
|
CheckControl.JointCheckId = Guid.NewGuid().ToString();
|
|
BLL.JointCheckService.AddJointCheckForApi(CheckControl);
|
|
res.resultValue = CheckControl.JointCheckId;
|
|
}
|
|
else
|
|
{
|
|
BLL.JointCheckService.UpdateJointCheckForApi(CheckControl);
|
|
res.resultValue = CheckControl.JointCheckId;
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
res.successful = false;
|
|
}
|
|
res.successful = true;
|
|
return res;
|
|
|
|
}
|
|
|
|
[HttpPost]
|
|
public ResponseData<string> AddApprove([FromBody]Model.Check_JointCheckApprove approve)
|
|
{
|
|
ResponseData<string> res = new ResponseData<string>();
|
|
try
|
|
{
|
|
//Model.Check_JointCheck CheckControl = new Model.Check_JointCheck();
|
|
//CheckControl.JointCheckId = approve.JointCheckId;
|
|
//CheckControl.State = approve.ApproveType;
|
|
//BLL.JointCheckService.UpdateJointCheckForApi(CheckControl);
|
|
Check_JointCheckDetail joinCheckDetail = new Check_JointCheckDetail();// BLL.JointCheckDetailService.GetJointCheckDetailByJointCheckDetailIdForApi(approve.JointCheckDetailId);
|
|
joinCheckDetail.State = approve.ApproveType;
|
|
joinCheckDetail.HandleMan = approve.ApproveMan;
|
|
joinCheckDetail.SaveHandleMan = "";
|
|
joinCheckDetail.JointCheckDetailId = approve.JointCheckDetailId;
|
|
BLL.JointCheckDetailService.UpdateJointCheckDetailForApi(joinCheckDetail);
|
|
|
|
var joinCheckDetailList = BLL.JointCheckDetailService.GetListsForApi(approve.JointCheckId);
|
|
bool isFinished = true;
|
|
bool isEditing = true;
|
|
foreach (var item in joinCheckDetailList)
|
|
{
|
|
if ("6" != item.State) isFinished = false;
|
|
if ("1" != item.State) isEditing = false;
|
|
}
|
|
|
|
var joinCheck = BLL.JointCheckService.GetJointCheckForApi(approve.JointCheckId);
|
|
Check_JointCheck cj = new Check_JointCheck();
|
|
cj.JointCheckId = joinCheck.JointCheckId;
|
|
if (approve.ApproveType != "1")
|
|
{
|
|
if (isFinished)
|
|
{
|
|
cj.State = "6";
|
|
}
|
|
else if (isEditing)
|
|
{
|
|
cj.State = "1";
|
|
}
|
|
else
|
|
{
|
|
cj.State = "Z";
|
|
|
|
}
|
|
BLL.JointCheckService.UpdateJointCheckForApi(cj);
|
|
} else
|
|
{
|
|
cj.State = "1";
|
|
BLL.JointCheckService.UpdateJointCheckForApi(cj);
|
|
}
|
|
res.resultValue = BLL.JointCheckApproveService.AddJointCheckApproveForApi(approve);
|
|
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
res.successful = false;
|
|
res.resultValue = e.Message;
|
|
}
|
|
res.successful = true;
|
|
return res;
|
|
|
|
}
|
|
[HttpPost]
|
|
public ResponseData<string> UpdateApprove([FromBody]Model.Check_JointCheckApprove approve)
|
|
{
|
|
ResponseData<string> res = new ResponseData<string>();
|
|
try
|
|
{
|
|
approve.ApproveDate = DateTime.Now;
|
|
var resApprove = BLL.JointCheckApproveService.UpdateJointCheckApproveForApi(approve);
|
|
|
|
if (approve.ApproveType == "1")
|
|
{
|
|
var jointCheck = BLL.JointCheckService.GetJointCheckForApi(resApprove.JointCheckId);
|
|
var jointCheckDetails = BLL.JointCheckDetailService.getListDataForApi(resApprove.JointCheckId);
|
|
List<Model.Sys_User> seeUsers = new List<Model.Sys_User>();
|
|
foreach (var a in jointCheckDetails)
|
|
{
|
|
a.JointCheckId = approve.JointCheckId;
|
|
if (string.IsNullOrEmpty(approve.JointCheckId))
|
|
{
|
|
seeUsers.AddRange(BLL.UserService.GetSeeUserList2(jointCheck.ProjectId, jointCheck.UnitId, a.CNProfessionalCode, a.UnitWorkId.ToString(), approve.ApproveMan));
|
|
}
|
|
}
|
|
if (string.IsNullOrEmpty(approve.JointCheckId))
|
|
{
|
|
seeUsers = seeUsers.Distinct().ToList();
|
|
foreach (var seeUser in seeUsers)
|
|
{
|
|
Model.Check_JointCheckApprove approves = new Model.Check_JointCheckApprove();
|
|
approves.JointCheckId = approve.JointCheckId;
|
|
approves.ApproveMan = seeUser.UserId;
|
|
approves.ApproveType = "S";
|
|
BLL.JointCheckApproveService.AddJointCheckApproveForApi(approve);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
res.successful = false;
|
|
}
|
|
res.successful = true;
|
|
return res;
|
|
}
|
|
[HttpGet]
|
|
public ResponseData<string> see(string dataId, string userId)
|
|
{
|
|
ResponseData<string> res = new ResponseData<string>();
|
|
res.successful = true;
|
|
BLL.JointCheckApproveService.See(dataId, userId);
|
|
return res;
|
|
}
|
|
}
|
|
}
|