diff --git a/SGGL/BLL/HJGL/PersonManage/CheckerService.cs b/SGGL/BLL/HJGL/PersonManage/CheckerService.cs
index 420c63c1..5260326c 100644
--- a/SGGL/BLL/HJGL/PersonManage/CheckerService.cs
+++ b/SGGL/BLL/HJGL/PersonManage/CheckerService.cs
@@ -41,7 +41,7 @@ namespace BLL
///
public static void UpdateChecker(Model.SitePerson_Person checker)
{
- Model.SitePerson_Person newChecker = Funs.DB.SitePerson_Person.FirstOrDefault(e => e.PersonId == checker.PersonId);
+ Model.SitePerson_Person newChecker = Funs.DB.SitePerson_Person.FirstOrDefault(e => e.PersonId == checker.PersonId && e.ProjectId == checker.ProjectId);
if (newChecker != null)
{
newChecker.PersonId = checker.PersonId;
diff --git a/SGGL/BLL/HJGL/PersonManage/WelderService.cs b/SGGL/BLL/HJGL/PersonManage/WelderService.cs
index 52d4c6a6..937ad266 100644
--- a/SGGL/BLL/HJGL/PersonManage/WelderService.cs
+++ b/SGGL/BLL/HJGL/PersonManage/WelderService.cs
@@ -15,7 +15,7 @@ namespace BLL
///
public static void UpdateWelder(Model.SitePerson_Person welder)
{
- Model.SitePerson_Person newWelder = Funs.DB.SitePerson_Person.FirstOrDefault(e => e.PersonId == welder.PersonId);
+ Model.SitePerson_Person newWelder = Funs.DB.SitePerson_Person.FirstOrDefault(e => e.PersonId == welder.PersonId && e.ProjectId == welder.ProjectId);
if (newWelder != null)
{
newWelder.WelderCode = welder.WelderCode;
diff --git a/SGGL/BLL/HSSE/SitePerson/SitePerson_PersonService.cs b/SGGL/BLL/HSSE/SitePerson/SitePerson_PersonService.cs
index 7574857c..a5343ed0 100644
--- a/SGGL/BLL/HSSE/SitePerson/SitePerson_PersonService.cs
+++ b/SGGL/BLL/HSSE/SitePerson/SitePerson_PersonService.cs
@@ -28,7 +28,7 @@ namespace BLL
/// 定义变量
///
private static IQueryable getDataLists = from x in db.View_SitePerson_Person
- select x;
+ select x;
///
/// 数据列表
@@ -41,7 +41,7 @@ namespace BLL
///
///
///
- public static IEnumerable getListData(string projetcId, string unitId, string workPostId, string name, string idCard, string states,string personType, Grid Grid1)
+ public static IEnumerable getListData(string projetcId, string unitId, string workPostId, string name, string idCard, string states, string personType, Grid Grid1)
{
IQueryable getDataList = getDataLists.OrderBy(x => x.ProjectId).ThenBy(x => x.UnitId);
if (!string.IsNullOrEmpty(projetcId) && projetcId != Const._Null)
@@ -1034,5 +1034,102 @@ namespace BLL
}
}
#endregion
+
+ #region 获取焊工信息列表
+ public static List GetWelderListDataForApi(string unitId, string projectId, int index, int page)
+ {
+ using (var db = new Model.SGGLDB(Funs.ConnString))
+ {
+ IQueryable q = db.SitePerson_Person;
+ List ids = new List();
+ if (!string.IsNullOrEmpty(unitId))
+ {
+ q = q.Where(e => e.UnitId == unitId);
+ }
+ if (!string.IsNullOrEmpty(projectId))
+ {
+ q = q.Where(e => e.ProjectId == projectId);
+ }
+ var qq1 = from x in q
+ where x.WorkPostId == Const.WorkPost_Welder && x.States == Const.ProjectPersonStates_1
+ orderby x.PersonName
+ select new
+ {
+ x.PersonId,
+ x.PersonName,
+ x.UnitId,
+ };
+ var list = qq1.Skip(index * page).Take(page).ToList();
+
+ List listRes = new List();
+ for (int i = 0; i < list.Count; i++)
+ {
+ Model.SitePerson_Person x = new Model.SitePerson_Person();
+ x.PersonId = list[i].PersonId;
+ x.PersonName = list[i].PersonName;
+ x.UnitId = list[i].UnitId + "$" + UnitService.GetUnitNameByUnitId(list[i].UnitId);
+ listRes.Add(x);
+ }
+ return listRes;
+ }
+ }
+ #endregion
+
+ #region 获取焊工信息
+ public static Model.Person_Persons GetWelder(string projectId, string personId)
+ {
+ using (var db = new Model.SGGLDB(Funs.ConnString))
+ {
+ Model.SitePerson_Person x = db.SitePerson_Person.FirstOrDefault(e => e.ProjectId == projectId && e.PersonId == personId);
+ Model.Person_Persons getPerson = db.Person_Persons.FirstOrDefault(e => e.PersonId == personId);
+ getPerson.Sex = getPerson.Sex == "1" ? "男" : "女";
+ getPerson.Birthday = getPerson.Birthday;
+ getPerson.PhotoUrl = getPerson.PhotoUrl;
+ getPerson.QRCodeAttachUrl = getPerson.QRCodeAttachUrl;
+ getPerson.IdentityCard = x.IdentityCard;
+ getPerson.CertificateId = x.CertificateCode; //证书编号
+ getPerson.EduLevel = x.WelderLevel; //焊工等级
+ getPerson.RelativeTel = x.Remark; //备注
+ getPerson.RoleIds = AttachFileService.getFileUrl(x.SitePersonId); //焊工证路径
+ getPerson.DepartId = x.SitePersonId; //焊工SitePersonId
+ if (!string.IsNullOrEmpty(x.WelderCode))
+ {
+ getPerson.JobNum = x.WelderCode;
+ }
+ else
+ {
+ var u = BLL.UnitService.GetUnitByUnitId(x.UnitId);
+ string prefix = BLL.ProjectService.GetProjectCodeByProjectId(projectId) + "-" + u.UnitCode + "-H";
+ getPerson.JobNum = BLL.SQLHelper.RunProcNewId("SpGetThreeNumber", "SitePerson_Person", "WelderCode", projectId, prefix);
+ }
+ getPerson.PersonName = x.PersonName;
+ var unit = UnitService.GetUnitByUnitId(x.UnitId);
+ getPerson.UnitId = x.UnitId + "$" + unit.UnitName;
+ return getPerson;
+ }
+ }
+ #endregion
+
+ public static void UpdateWelderForApi(Model.SitePerson_Person Welder)
+ {
+
+ using (var db = new Model.SGGLDB(Funs.ConnString))
+ {
+ Model.SitePerson_Person newWelder = db.SitePerson_Person.First(e => e.SitePersonId == Welder.SitePersonId);
+ if (!string.IsNullOrEmpty(Welder.WelderCode))
+ newWelder.WelderCode = Welder.WelderCode;
+ if (!string.IsNullOrEmpty(Welder.CertificateCode))
+ newWelder.CertificateCode = Welder.CertificateCode;
+ if (!string.IsNullOrEmpty(Welder.UnitId))
+ newWelder.UnitId = Welder.UnitId;
+ if (!string.IsNullOrEmpty(Welder.WelderLevel))
+ newWelder.WelderLevel = Welder.WelderLevel;
+ if (!string.IsNullOrEmpty(Welder.Remark))
+ newWelder.Remark = Welder.Remark;
+ newWelder.Isprint = "0";
+
+ db.SubmitChanges();
+ }
+ }
}
}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/CQMS/PersonManage/CheckerManageEdit.aspx.cs b/SGGL/FineUIPro.Web/CQMS/PersonManage/CheckerManageEdit.aspx.cs
index be841a5e..7e739099 100644
--- a/SGGL/FineUIPro.Web/CQMS/PersonManage/CheckerManageEdit.aspx.cs
+++ b/SGGL/FineUIPro.Web/CQMS/PersonManage/CheckerManageEdit.aspx.cs
@@ -120,7 +120,8 @@ namespace FineUIPro.Web.CQMS.PersonManage
{
edit = "1";
}
- PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/WelderManage&menuId={1}&edit={2}&strParam=4", PersonId, BLL.Const.WelderManageMenuId, edit)));
+ Model.SitePerson_Person Checker = BLL.CheckerService.GetCheckerById(PersonId);
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/WelderManage&menuId={1}&edit={2}&strParam=4", Checker.SitePersonId, BLL.Const.WelderManageMenuId, edit)));
}
#endregion
}
diff --git a/SGGL/FineUIPro.Web/CQMS/PersonManage/WelderManageEdit.aspx.cs b/SGGL/FineUIPro.Web/CQMS/PersonManage/WelderManageEdit.aspx.cs
index 3ab9117e..f54529fa 100644
--- a/SGGL/FineUIPro.Web/CQMS/PersonManage/WelderManageEdit.aspx.cs
+++ b/SGGL/FineUIPro.Web/CQMS/PersonManage/WelderManageEdit.aspx.cs
@@ -109,7 +109,7 @@ namespace FineUIPro.Web.CQMS.PersonManage
// this.txtCertificateLimitTime.Text = string.Format("{0:yyyy-MM-dd}", welder.CertificateLimitTime);
//}
this.txtWelderLevel.Text = welder.WelderLevel;
- if (welder.States == Const.State_1)
+ if (welder.States == Const.ProjectPersonStates_1)
{
cbIsUsed.Checked = true;
}
@@ -244,7 +244,8 @@ namespace FineUIPro.Web.CQMS.PersonManage
{
edit = "1";
}
- PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/WelderManage&menuId={1}&edit={2}&strParam=4", PersonId, BLL.Const.WelderManageMenuId, edit)));
+ var welder = BLL.SitePerson_PersonService.GetSitePersonByProjectIdPersonId(this.CurrUser.LoginProjectId, PersonId);
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/WelderManage&menuId={1}&edit={2}&strParam=4", welder.SitePersonId, BLL.Const.WelderManageMenuId, edit)));
}
#endregion
diff --git a/SGGL/WebAPI/Controllers/CQMS/CQMSPersonManageController.cs b/SGGL/WebAPI/Controllers/CQMS/CQMSPersonManageController.cs
new file mode 100644
index 00000000..523e419e
--- /dev/null
+++ b/SGGL/WebAPI/Controllers/CQMS/CQMSPersonManageController.cs
@@ -0,0 +1,82 @@
+using BLL;
+using Model;
+using System;
+using System.Collections.Generic;
+using System.Web.Http;
+
+namespace Mvc.Controllers
+{
+ public class CQMSPersonManageController : ApiController
+ {
+ ///
+ /// 焊工列表
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ [HttpGet]
+ public ResponseData> WelderIndex(string projectId, int index, int page, string unitId)
+ {
+ ResponseData> res = new ResponseData>();
+
+ res.successful = true;
+ res.resultValue = BLL.SitePerson_PersonService.GetWelderListDataForApi(unitId, projectId, index, page);
+ return res;
+ }
+
+ ///
+ /// 根据personId获取焊工详情
+ ///
+ ///
+ ///
+ ///
+ [HttpGet]
+ public ResponseData GetWelder(string projectId, string personId)
+ {
+ ResponseData res = new ResponseData();
+ Person_Persons welder = BLL.SitePerson_PersonService.GetWelder(projectId, personId);
+ res.successful = true;
+ res.resultValue = BeanUtil.CopyOjbect(welder, true);
+ return res;
+ }
+
+ ///
+ /// 保存焊工
+ ///
+ ///
+ ///
+ [HttpPost]
+ public ResponseData SaveWelder([FromBody] Model.SitePerson_Person Welder)
+ {
+ ResponseData res = new ResponseData();
+ try
+ {
+ BLL.SitePerson_PersonService.UpdateWelderForApi(Welder);
+ SaveAttachFile(Welder.SitePersonId, BLL.Const.WelderManageMenuId, Welder.RoleIds);
+ res.resultValue = Welder.PersonId;
+
+ res.successful = true;
+
+ }
+ catch (Exception e)
+ {
+ res.resultHint = e.StackTrace;
+ res.successful = false;
+ }
+ 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);
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/WebAPI/WebAPI.csproj b/SGGL/WebAPI/WebAPI.csproj
index 505b15ce..4b15f887 100644
--- a/SGGL/WebAPI/WebAPI.csproj
+++ b/SGGL/WebAPI/WebAPI.csproj
@@ -167,6 +167,7 @@
+
@@ -290,6 +291,7 @@
+