Browse Source

修正工時測試報告之問題

PTD
Shani 3 years ago
parent
commit
5ce6ee25f3
  1. 4
      AMESCoreStudio.Web/Controllers/BASController.cs
  2. 192
      AMESCoreStudio.Web/Controllers/WHSController.cs
  3. 4
      AMESCoreStudio.Web/HttpApis/AMES/IWHS.cs
  4. 4
      AMESCoreStudio.Web/Views/BAS/BAS016.cshtml
  5. 4
      AMESCoreStudio.Web/Views/BAS/BAS016C.cshtml
  6. 38
      AMESCoreStudio.Web/Views/WHS/WHS003.cshtml
  7. 4
      AMESCoreStudio.Web/Views/WHS/WHS003C.cshtml
  8. 27
      AMESCoreStudio.Web/Views/WHS/WHS005.cshtml
  9. 87
      AMESCoreStudio.Web/Views/WHS/WHS006.cshtml
  10. 117
      AMESCoreStudio.Web/Views/WHS/WHS006C.cshtml
  11. 73
      AMESCoreStudio.Web/Views/WHS/WHS006U.cshtml
  12. 109
      AMESCoreStudio.Web/Views/WHS/WHS008C.cshtml
  13. 106
      AMESCoreStudio.Web/Views/WHS/WHS008U.cshtml
  14. 68
      AMESCoreStudio.Web/Views/WHS/WHS009.cshtml
  15. 257
      AMESCoreStudio.Web/Views/WHS/WHS009C.cshtml
  16. 412
      AMESCoreStudio.Web/Views/WHS/WHS009U.cshtml
  17. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.dll
  18. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.pdb
  19. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.dll
  20. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.pdb
  21. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.dll
  22. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.pdb
  23. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.dll
  24. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.pdb
  25. 1016
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.xml
  26. 4
      AMESCoreStudio.WebApi/AMESCoreStudio.WebApi.csproj
  27. 15
      AMESCoreStudio.WebApi/Controllers/AMES/BarcodeItemsController.cs
  28. 21
      AMESCoreStudio.WebApi/Controllers/AMES/StandardWorkTimesController.cs
  29. 33
      AMESCoreStudio.WebApi/Controllers/AMES/WorkManPowersController.cs
  30. 19
      AMESCoreStudio.WebApi/Models/AMES/FactoryUnit.cs
  31. 12
      AMESCoreStudio.WebApi/Models/AMES/StandardWorkTime.cs
  32. 8
      AMESCoreStudio.WebApi/Models/AMES/SupportUser.cs
  33. 8
      AMESCoreStudio.WebApi/Models/AMES/WorkManPower.cs
  34. 8
      AMESCoreStudio.WebApi/Models/AMESContext.cs
  35. BIN
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.dll
  36. BIN
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.pdb
  37. BIN
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.dll
  38. BIN
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.pdb
  39. 1016
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.xml

4
AMESCoreStudio.Web/Controllers/BASController.cs

@ -86,7 +86,7 @@ namespace AMESCoreStudio.Web.Controllers
var result = await _basApi.GetMailGroups(); var result = await _basApi.GetMailGroups();
var MailGroupItems = new List<SelectListItem>(); var MailGroupItems = new List<SelectListItem>();
MailGroupItems.Add(new SelectListItem("全部", "0")); //MailGroupItems.Add(new SelectListItem("全部", "0"));
for (int i = 0; i < result.Count; i++) for (int i = 0; i < result.Count; i++)
{ {
@ -183,7 +183,7 @@ namespace AMESCoreStudio.Web.Controllers
var result = await _basApi.GetFlowRulesByUnit(unit_no); var result = await _basApi.GetFlowRulesByUnit(unit_no);
var item = new List<SelectListItem>(); var item = new List<SelectListItem>();
item.Add(new SelectListItem("全部", "0")); //item.Add(new SelectListItem("全部", "0"));
for (int i = 0; i < result.Count; i++) for (int i = 0; i < result.Count; i++)
{ {
item.Add(new SelectListItem(result[i].FlowRuleName, result[i].FlowRuleID.ToString())); item.Add(new SelectListItem(result[i].FlowRuleName, result[i].FlowRuleID.ToString()));

192
AMESCoreStudio.Web/Controllers/WHSController.cs

@ -31,30 +31,6 @@ namespace AMESCoreStudio.Web.Controllers
_ppsApi = ppsApi; _ppsApi = ppsApi;
} }
private async Task GetResponseDeptList()
{
var result = await _basApi.GetRepairResponsibleUnitses();
var ResponseDeptList = new List<SelectListItem>();
for (int i = 0; i < result.Count; i++)
{
ResponseDeptList.Add(new SelectListItem(result[i].RRDesc, result[i].RRID.ToString()));
}
ViewBag.ResponseDeptList = ResponseDeptList;
}
private async Task GetSectionList()
{
var result = await _basApi.GetFactoryUnits();
var SectionList = new List<SelectListItem>();
for (int i = 0; i < result.Count; i++)
{
SectionList.Add(new SelectListItem(result[i].UnitName, result[i].UnitNo.ToString()));
}
ViewBag.SectionList = SectionList;
}
private async Task GetErrorGroupList() private async Task GetErrorGroupList()
{ {
var result = await _ppsApi.GetErrorGroups(); var result = await _ppsApi.GetErrorGroups();
@ -67,17 +43,7 @@ namespace AMESCoreStudio.Web.Controllers
//} //}
ViewBag.ErrorGroupList = ErrorGroupList; ViewBag.ErrorGroupList = ErrorGroupList;
} }
private async Task GetErrorClassList(string no)
{
var result = await _ppsApi.GetErrorClassesByGroup(no);
var ErrorClassList = new List<SelectListItem>();
for (int i = 0; i < result.Count; i++)
{
ErrorClassList.Add(new SelectListItem(result[i].ClassName, result[i].ClassNo.ToString()));
}
ViewBag.ErrorClassList = ErrorClassList;
}
#region #region
private void GetFlagList() private void GetFlagList()
@ -237,6 +203,24 @@ namespace AMESCoreStudio.Web.Controllers
ViewBag.ClassList = ClassItems; ViewBag.ClassList = ClassItems;
} }
private async Task GetStationListByUnit(string unit)
{
var result = await _basApi.GetStationses();
var StationItems = new List<SelectListItem>();
StationItems.Add(new SelectListItem("N/A", "0"));
for (int i = 0; i < result.Count; i++)
{
if(result[i].UnitNo==unit)
StationItems.Add(new SelectListItem(result[i].StationName, result[i].StationID.ToString()));
}
if(StationItems.Count==0)
StationItems.Add(new SelectListItem("N/A", ""));
ViewBag.StationList = StationItems;
}
#endregion #endregion
#region WHS001工作群組維護相關 #region WHS001工作群組維護相關
@ -466,10 +450,12 @@ namespace AMESCoreStudio.Web.Controllers
//新增頁面 //新增頁面
public async Task<IActionResult> WHS003C(string unit,string lineID) public async Task<IActionResult> WHS003C(string unit,string lineID)
{ {
await GetStationList(); await GetStationListByUnit(unit);
var result = await _basApi.GetFactoryUnit(unit);
//await GetMFGType(); //await GetMFGType();
ViewBag.LineID = lineID; ViewBag.LineID = lineID;
ViewBag.UnitNo = unit; ViewBag.UnitNo = unit;
ViewBag.FactoryU = result[0].UnitName;
GetSideList(); GetSideList();
return View(); return View();
} }
@ -622,6 +608,8 @@ namespace AMESCoreStudio.Web.Controllers
await GetStationList(); await GetStationList();
//班別 //班別
GetClassList(); GetClassList();
//部門
await GetDeptList2();
return View(); return View();
} }
@ -635,9 +623,9 @@ namespace AMESCoreStudio.Web.Controllers
//製程單位 //製程單位
await GetFactoryUnitsList3(); await GetFactoryUnitsList3();
//線別 //線別
await GetLineList2(); //await GetLineList2();
//站別 //站別
await GetStationList(); //await GetStationList();
//班別 //班別
GetClassList(); GetClassList();
@ -734,7 +722,7 @@ namespace AMESCoreStudio.Web.Controllers
[ResponseCache(Duration = 0)] [ResponseCache(Duration = 0)]
[HttpGet] [HttpGet]
public async Task<IActionResult> GetWorkManPowersByQueryAsync(string fid, string uid, string lid, string cID, string sID, string uNo, string sd, string ed) public async Task<IActionResult> GetWorkManPowersByQueryAsync(string fid, string uid, string lid, string cID, string sID, string uNo, string dID, string sd, string ed)
{ {
if (fid == null) if (fid == null)
{ {
@ -760,6 +748,10 @@ namespace AMESCoreStudio.Web.Controllers
{ {
uNo = "*"; uNo = "*";
} }
if (dID == null)
{
dID = "*";
}
if (sd == null) if (sd == null)
{ {
sd = System.DateTime.Now.AddDays(-1).ToString(); sd = System.DateTime.Now.AddDays(-1).ToString();
@ -770,7 +762,7 @@ namespace AMESCoreStudio.Web.Controllers
} }
//var result = await _whsApi.GetWorkManPowersByQuery( factoryid, unitid, lineid, classID, stationID, userNo, sdate, edate); //var result = await _whsApi.GetWorkManPowersByQuery( factoryid, unitid, lineid, classID, stationID, userNo, sdate, edate);
var result = await _whsApi.GetWorkManPowersByQuery(fid, uid, lid, cID, sID, uNo, sd, ed); var result = await _whsApi.GetWorkManPowersByQuery(fid, uid, lid, cID, sID, uNo , dID, sd, ed);
if (result.Count > 0) if (result.Count > 0)
{ {
return Json(new Table() { code = 0, msg = "", data = result, count = result.Count }); return Json(new Table() { code = 0, msg = "", data = result, count = result.Count });
@ -951,9 +943,12 @@ namespace AMESCoreStudio.Web.Controllers
await GetStationList(); await GetStationList();
//班別 //班別
GetClassList(); GetClassList();
//其他部門 //判定單位部門
await GetDeptList(); await GetDeptList();
//負責人
//內部/外部
//EXCEPTION_Class
//EXCEPTION_CODE
await GetErrorGroupList(); await GetErrorGroupList();
return View(); return View();
@ -1052,23 +1047,23 @@ namespace AMESCoreStudio.Web.Controllers
[ResponseCache(Duration = 0)] [ResponseCache(Duration = 0)]
[HttpGet] [HttpGet]
public async Task<IActionResult> GetExceptionWorktimeByQueryAsync(string factoryid, string unitid, string lineid, string deptid, string sdate, string edate) public async Task<IActionResult> GetExceptionWorktimeByQueryAsync(string factoryNo, string unitNo, string lineID, string deptID, string sdate, string edate)
{ {
if (factoryid == null) if (factoryNo == null)
{ {
factoryid = "*"; factoryNo = "*";
} }
if (unitid == null) if (unitNo == null)
{ {
unitid = "*"; unitNo = "*";
} }
if (lineid == null) if (lineID == null)
{ {
lineid = "*"; lineID = "*";
} }
if (deptid == null) if (deptID == null)
{ {
deptid = "*"; deptID = "*";
} }
if (sdate == null || edate == null) if (sdate == null || edate == null)
{ {
@ -1078,7 +1073,7 @@ namespace AMESCoreStudio.Web.Controllers
var result = await _whsApi.GetExceptionWorktimeOlineByQuery(factoryid, unitid, lineid, deptid, sdate, edate); var result = await _whsApi.GetExceptionWorktimeOlineByQuery(factoryNo, unitNo, lineID, deptID, sdate, edate);
if (result.Count > 0) if (result.Count > 0)
@ -1088,6 +1083,101 @@ namespace AMESCoreStudio.Web.Controllers
return Json(new Table() { count = 0, data = null }); return Json(new Table() { count = 0, data = null });
} }
public async Task<IActionResult> GetWipAttAsync(string id)
{
var result = await _pcsApi.GetWipAtt(id);
if (result != null)
{
return Json(new Table() { code = 0, msg = "", data = result, count = 1 });
}
return Json(new Table() { count = 0, data = null });
}
public async Task<IActionResult> GetCountTimesAsync(string id)
{
string sTime, eTime;
var timeArr = id.Split("%");
sTime = timeArr[0];
eTime = timeArr[1];
sTime = sTime.Replace("T", " ");
eTime = eTime.Replace("T", " ");
System.DateTime dateValue1, dateValue2;
var result = 0.0;
if (System.DateTime.TryParse(sTime, out dateValue1) && System.DateTime.TryParse(eTime, out dateValue2))
{
if (dateValue2 < dateValue1)
{
return Json(new Table() { count = 0, msg = "起始時間大於結束時間!!!", data = null });
}
else
{
result = new System.TimeSpan(dateValue2.Ticks - dateValue1.Ticks).TotalMinutes;
return Json(new Table() { code = 0, msg = "", data = result, count = 1 });
}
}
else
{
return Json(new Table() { count = 0, msg = "時間格是有誤!!", data = null });
}
#region old
//var timeArr = id.Split(":");
//sHour = timeArr[0];
//sMin = timeArr[1];
//eHour = timeArr[2];
//eMin = timeArr[3];
//string sHour, sMin, eHour, eMin;
//var timeArr = id.Split(":");
//sHour = timeArr[0];
//sMin = timeArr[1];
//eHour = timeArr[2];
//eMin = timeArr[3];
// int dateValue,hour=0,min=0;
// if (int.TryParse(sHour, out dateValue) && int.TryParse(eHour, out dateValue) && int.TryParse(sMin, out dateValue) && int.TryParse(eMin, out dateValue))
// {
// if (int.Parse(eHour) > int.Parse(sHour))
// {
// hour = int.Parse(eHour) - int.Parse(sHour) - 1;
// min = (60 - int.Parse(sMin)) + int.Parse(eMin);
// }
// else if (int.Parse(eHour) == int.Parse(sHour))
// {
// hour = 0;
// if (int.Parse(sMin) >= int.Parse(sHour))
// {
// return Json(new Table() { count = 0, data = null });
// }
// else
// {
// min = (60 - int.Parse(sMin)) + int.Parse(eMin);
// }
// }
// else
// {
// return Json(new Table() { count = 0, data = null });
// }
// }
// else {
// return Json(new Table() { count = 0, data = null });
// }
// var result =hour*60+min;
//return Json(new Table() { code = 0, msg = "", data = result, count = 1 });
#endregion
}
#endregion #endregion

4
AMESCoreStudio.Web/HttpApis/AMES/IWHS.cs

@ -183,8 +183,8 @@ namespace AMESCoreStudio.Web
/// 查詢每日工時 /// 查詢每日工時
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[WebApiClient.Attributes.HttpGet("api/WorkManPowers/Query/{factoryid}/{unitid}/{lineid}/{classID}/{stationID}/{userNo}/{sdate}/{edate}")] [WebApiClient.Attributes.HttpGet("api/WorkManPowers/Query/{factoryid}/{unitid}/{lineid}/{classID}/{stationID}/{userNo}/{deptID}/{sdate}/{edate}")]
ITask<List<WorkManPower>> GetWorkManPowersByQuery(string factoryid, string unitid, string lineid, string classID, string stationID, string userNo, string sdate, string edate); ITask<List<WorkManPower>> GetWorkManPowersByQuery(string factoryid, string unitid, string lineid, string classID, string stationID, string userNo, string deptID, string sdate, string edate);
#endregion #endregion

4
AMESCoreStudio.Web/Views/BAS/BAS016.cshtml

@ -42,7 +42,9 @@
<div class="layui-inline" style="margin-right:0px;"> <div class="layui-inline" style="margin-right:0px;">
<label class=" layui-inline layui-form-label" style="width:120px;">请選擇MAIL群組</label> <label class=" layui-inline layui-form-label" style="width:120px;">请選擇MAIL群組</label>
<div class="layui-input-inline" width:400px;"> <div class="layui-input-inline" width:400px;">
<select id="group" lay-filter="group" lay-submit asp-items="@ViewBag.MailGroupList"></select> <select id="group" lay-filter="group" lay-submit asp-items="@ViewBag.MailGroupList">
<option value="">全部</option>
</select>
</div> </div>
<input id="groupId" type="hidden" name="groupId" /> <input id="groupId" type="hidden" name="groupId" />
</div> </div>

4
AMESCoreStudio.Web/Views/BAS/BAS016C.cshtml

@ -28,7 +28,9 @@
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="GroupID" class="control-label col-sm-3"></label> <label asp-for="GroupID" class="control-label col-sm-3"></label>
<select asp-for="GroupID" asp-items="@ViewBag.MailGroupList" class="custom-select col-sm-9"></select> <select asp-for="GroupID" asp-items="@ViewBag.MailGroupList" class="custom-select col-sm-9">
<option value="">請選擇</option>
</select>
<span asp-validation-for="GroupID" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="GroupID" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>

38
AMESCoreStudio.Web/Views/WHS/WHS003.cshtml

@ -141,59 +141,67 @@
cols: [ cols: [
{ {
field: 'standardID', field: 'standardID',
width: 60,
title: '#', title: '#',
sort: true sort: true
}, },
{ {
field: 'unitNo', field: 'unitNo',
width: 50,
title: '單位代號' title: '單位代號'
}, },
{ {
field: 'lineID', field: 'lineInfo',
Width: 50, title: '線別',
title: '線別' templet: function (d) {
var line;
if (d.lineInfo)
line = d.lineInfo["lineDesc"];
else
line = "N/A";
return line ;
}
}, },
{ {
field: 'stationID', field: 'stations',
Width: 50, title: '站別',
title: '站別' templet: function (d) {
var station;
if (d.stations)
station = d.stations["stationName"];
else
station = "N/A";
return station;
}
}, },
{ {
field: 'itemNo', field: 'itemNo',
title: '料號', title: '料號',
}, },
{ {
field: 'side', field: 'side',
title: '正背面', title: '正背面',
width: 10
}, },
{ {
field: 'opcnt', field: 'opcnt',
title: '作業人數', title: '作業人數',
minwidth: 5
}, },
{ {
field: 'firstTime', field: 'firstTime',
title: '首件產出時間(分)', title: '首件產出時間(分)',
width: 5
}, },
{ {
field: 'totalCT', field: 'totalCT',
title: 'C/T(分)', title: 'C/T(分)',
width: 5
}, },
{ {
field: 'ct', field: 'ct',
title: '節拍時間', title: '節拍時間',
}, },
{ {
field: 'machineCT', field: 'machineCT',
title: '操機數', title: '操機數',
}, },
{ {
field: 'center', field: 'center',

4
AMESCoreStudio.Web/Views/WHS/WHS003C.cshtml

@ -28,6 +28,10 @@
<input asp-for="ItemNo" class="form-control col-sm-9" placeholder="請輸入單位代碼" /> <input asp-for="ItemNo" class="form-control col-sm-9" placeholder="請輸入單位代碼" />
<span asp-validation-for="ItemNo" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="ItemNo" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1">
<label class="control-label col-sm-3">製成單位</label>
<input class="form-control col-sm-9" value="@ViewBag.FactoryU" readonly />
</div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="StationID" class="control-label col-sm-3"></label> <label asp-for="StationID" class="control-label col-sm-3"></label>
<select asp-for="StationID" asp-items="@ViewBag.StationList" class="custom-select col-sm-9"></select> <select asp-for="StationID" asp-items="@ViewBag.StationList" class="custom-select col-sm-9"></select>

27
AMESCoreStudio.Web/Views/WHS/WHS005.cshtml

@ -70,12 +70,31 @@
title: '單位代號' title: '單位代號'
}, },
{ {
field: 'lineID', field: 'lineInfo',
title: '線別' title: '線別',
templet: function (d) {
var line;
if (d.lineInfo)
line = d.lineInfo["lineDesc"];
else
line = "N/A";
return line;
}
}, },
{ {
field: 'StationID', field: 'stations',
title: '線別' title: '站別',
templet: function (d) {
var station;
if (d.stations)
station = d.stations["stationName"];
else
station = "N/A";
return station;
}
}, },
{ {
field: 'itemNo', field: 'itemNo',

87
AMESCoreStudio.Web/Views/WHS/WHS006.cshtml

@ -51,7 +51,7 @@
<div class="layui-col-sm4"> <div class="layui-col-sm4">
<div class="layui-inline"> <div class="layui-inline">
@*<label class="layui-form-label">製程:</label>*@ @*<label class="layui-form-label">製程:</label>*@
<input type="checkbox" id="check_unitNo" lay-filter="cUnitNo" name="cUnitNo" title="製程"/> <input type="checkbox" id="check_unitNo" lay-filter="cUnitNo" name="cUnitNo" title="製程" />
<div class="layui-input-inline" style="width:100px"> <div class="layui-input-inline" style="width:100px">
<select style="width:90px;" lay-filter="unitNo" lay-submit id="unitNo" name="unitNo" asp-items="@ViewBag.FactoryUnit"> <select style="width:90px;" lay-filter="unitNo" lay-submit id="unitNo" name="unitNo" asp-items="@ViewBag.FactoryUnit">
<option value="">N/A</option> <option value="">N/A</option>
@ -88,7 +88,7 @@
<div class="layui-col-sm4"> <div class="layui-col-sm4">
<div class="layui-inline"> <div class="layui-inline">
@*<label class="layui-form-label">站別:</label>*@ @*<label class="layui-form-label">站別:</label>*@
<input type="checkbox" id="check_stationID" name="aa" class="layui-form-label" title="站別"/> <input type="checkbox" id="check_stationID" name="aa" class="layui-form-label" title="站別" />
<div class="layui-input-inline" style="width:150px"> <div class="layui-input-inline" style="width:150px">
<select name="stationID" id="stationID" lay-filter="stationID" asp-items="@ViewBag.StationList"> <select name="stationID" id="stationID" lay-filter="stationID" asp-items="@ViewBag.StationList">
<option value="">N/A</option> <option value="">N/A</option>
@ -99,14 +99,28 @@
<div class="layui-col-sm4"> <div class="layui-col-sm4">
<div class="layui-inline"> <div class="layui-inline">
@*<label class="layui-form-label">工號:</label>*@ @*<label class="layui-form-label">工號:</label>*@
<input type="checkbox" id="check_userNo" class="layui-form-label" title="工號"/> <input type="checkbox" id="check_userNo" class="layui-form-label" title="工號" />
<div class="layui-input-inline" style="width:150px"> <div class="layui-input-inline" style="width:150px">
<input id="userNo" name="userNo" autocomplete="off" class="layui-input" > <input id="userNo" name="userNo" autocomplete="off" class="layui-input">
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="layui-row">
<div class="layui-form-item">
<div class="layui-col-sm4">
<div class="layui-inline">
<input type="checkbox" id="check_deptID" class="layui-form-label" title="部門" />
<div class="layui-input-inline" style="width:150px">
<select name="deptID" id="deptID" lay-filter="deptID" asp-items="@ViewBag.DeptList">
<option value="">N/A</option>
</select>
</div>
</div>
</div>
</div>
</div>
<div class="layui-row"> <div class="layui-row">
<div class="layui-form-item"> <div class="layui-form-item">
<div class="layui-col-sm7"> <div class="layui-col-sm7">
@ -223,10 +237,50 @@
title: '#', title: '#',
sort: true sort: true
}, },
{
field: 'u',
width: 100,
title: '部門',
templet: function (d) {
var tt = "";
console.info(d);
console.info(d.u);
if (d.u == null) {
tt = "N/A";
}
else {
$.ajax({
url: "/SYS/GetDeptInfoes",
dataType: 'json',
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
var count = 0;
$.each(result.data, function (index, item) {
if (item.deptID == d.deptID) {
tt = item.deptName;
count = count + 1;
}
});
if (count == 1) {
tt = tt;
}
else {
tt = "";
}
}
}
});
}
return tt
}
},
{ {
field: 'userNo', field: 'userNo',
title: '員工工號', title: '員工工號',
width: 200, width: 100,
sort: true sort: true
}, },
{ {
@ -329,22 +383,25 @@
//check("#check_unitNo"); //check("#check_unitNo");
}); });
function tt() { function tt() {
console.log("tt"); //console.log("tt");
//基本数据表格 //基本数据表格
var fNO = "", uNO = "", lID = "", cID = "", sID = "", usNO = ""; var fNO = "", uNO = "", lID = "", cID = "", sID = "", usNO = "", dID="";
if ($("#check_factoryNo").prop("checked")) if ($("#check_factoryNo").prop("checked"))
fNO = $("#factoryNo").val(); fNO = $("#factoryNo").val();
if ($("#check_unitNo").prop("checked")) if ($("#check_unitNo").prop("checked"))
uNO = $("#unitNo").val(); uNO = $("#unitNo").val();
if ($("#check_lineid").prop("checked")) if ($("#check_lineid").prop("checked"))
lID = $("#lineID").val(); lID = $("#lineID").val();
if ($("#check_classID").prop("checked")) if ($("#check_classID").prop("checked"))
cID = $("#classID").val(); cID = $("#classID").val();
if ($("#check_stationID").prop("checked")) if ($("#check_stationID").prop("checked"))
sID = $("#stationID").val(); sID = $("#stationID").val();
if ($("#check_userNo").prop("checked")) if ($("#check_userNo").prop("checked"))
usNO = $("#userNo").val(); usNO = $("#userNo").val();
if ($("#check_deptID").prop("checked"))
dID = $("#deptID").val();
table = hg.table.datatable('query', '每日工時資料維護', '/WHS/GetWorkManPowersByQuery?' table = hg.table.datatable('query', '每日工時資料維護', '/WHS/GetWorkManPowersByQuery?'
+ 'fid=' + fNO + '&uid=' + uNO + '&lid=' + lID + '&cID=' + cID + '&sID=' + sID + '&uNo=' + usNO + '&sd='+ $("#dateStr").val() + '&ed='+ $("#dateEnd").val() + 'fid=' + fNO + '&uid=' + uNO + '&lid=' + lID + '&cID=' + cID + '&sID=' + sID + '&uNo=' + usNO + '&sd='+ $("#dateStr").val() + '&ed='+ $("#dateEnd").val()
// + 'factoryid=' + fNO + '&unitid=' + uNO + '&lineid=' + lID + '&classID=' + cID + '&stationID=' + sID + '&userNo=' + usNO + '&sd=' + $("#dateStr").val() + '&edate=' + $("#dateEnd").val() // + 'factoryid=' + fNO + '&unitid=' + uNO + '&lineid=' + lID + '&classID=' + cID + '&stationID=' + sID + '&userNo=' + usNO + '&sd=' + $("#dateStr").val() + '&edate=' + $("#dateEnd").val()
@ -354,12 +411,12 @@
function check(str) { function check(str) {
if ($(str).prop("checked")) { if ($(str).prop("checked")) {
alert("選中"); //alert("選中");
$('#lineID').removeAttr("disabled"); $('#lineID').removeAttr("disabled");
form.render(); form.render();
} else { } else {
alert("沒有選中"); //alert("沒有選中");
$('#lineID').attr("disabled", "disabled"); $('#lineID').attr("disabled", "disabled");
$('select[name=lineID]').attr("disabled", true); $('select[name=lineID]').attr("disabled", true);
form.render(); form.render();

117
AMESCoreStudio.Web/Views/WHS/WHS006C.cshtml

@ -20,12 +20,12 @@
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="UserNo" class="control-label col-sm-3"></label> <label asp-for="UserNo" class="control-label col-sm-3"></label>
<input asp-for="UserNo" class="form-control col-sm-6" /> <input id="UserNo" asp-for="UserNo" class="form-control col-sm-6" />
<span asp-validation-for="UserNo" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="UserNo" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="UserName" class="control-label col-sm-3"></label> <label asp-for="UserName" class="control-label col-sm-3"></label>
<input asp-for="UserName" class="form-control col-sm-6" /> <input id="UserName" asp-for="UserName" class="form-control col-sm-6" />
<span asp-validation-for="UserName" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="UserName" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
@ -35,18 +35,21 @@
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="UnitNo" class="control-label col-sm-2"></label> <label asp-for="UnitNo" class="control-label col-sm-2"></label>
<select id="UnitNo" asp-for="UnitNo" asp-items="@ViewBag.FactoryUnit" class="custom-select col-sm-5"></select> <select id="UnitNo" asp-for="UnitNo" asp-items="@ViewBag.FactoryUnit" class="custom-select col-sm-5">
<option value="">請選擇</option>
</select>
<span asp-validation-for="UnitNo" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="UnitNo" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="LineID" class="control-label col-sm-3"></label> <label asp-for="LineID" class="control-label col-sm-3"></label>
<select asp-for="LineID" asp-items="@ViewBag.LineList" class="custom-select col-sm-9"> <select id="Line" asp-for="LineID" asp-items="@ViewBag.LineList" class="custom-select col-sm-9">
<option value="">N/A</option>
</select> </select>
<span asp-validation-for="LineID" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="LineID" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="StationID" class="control-label col-sm-3"></label> <label asp-for="StationID" class="control-label col-sm-3"></label>
<select asp-for="StationID" asp-items="@ViewBag.StationList" class="custom-select col-sm-9"> <select id="Station" asp-for="StationID" asp-items="@ViewBag.StationList" class="custom-select col-sm-9">
<option value="">N/A</option> <option value="">N/A</option>
</select> </select>
<span asp-validation-for="StationID" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="StationID" class="text-danger offset-sm-3 my-sm-1"></span>
@ -105,6 +108,110 @@
parent.hg.msg(error); parent.hg.msg(error);
} }
}); });
$("#UnitNo").change(function () {
var data = $("#UnitNo").val();
getStationses(data);
getLineInfoes(data);
});
$("#UserNo").blur(function () {
var data = $("#UserNo").val();
console.log(data);
getUserName(data);
//$("input").css("background-color", "#D6D6FF");
});
function getStationses(data) {
$.ajax({
url: "/BAS/GetStationses",
dataType: 'json',
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$("#Station").empty();
$('#Station').append(new Option("請選擇", ""));
var count = 0;
$.each(result.data, function (index, item) {
if (item.unitNo == data) {
$('#Station').append(new Option(item.stationName, item.stationID));
count = count + 1;
}
});
if (count == 0) {
$("#Station").empty();
$('#Station').append(new Option("無選項", ""));
}
}
else {
$("#Station").empty();
$('#Station').append(new Option("無選項", ""));
}
layui.form.render("select");
}
});
};
function getLineInfoes(data) {
$.ajax({
url: "/BAS/GetLineInfoes",
dataType: 'json',
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$("#Line").empty();
$('#Line').append(new Option("請選擇", ""));
var count = 0;
$.each(result.data, function (index, item) {
if (item.unitNo == data) { //修改等號
$('#Line').append(new Option(item.lineDesc, item.lineID));//修改參數
count = count + 1;
}
});
if (count == 0) {
$("#Line").empty();
$('#Line').append(new Option("無選項", ""))
}
}
else {
$("#Line").empty();
$('#Line').append(new Option("無選項", ""));
}
layui.form.render("select");
}
});
};
function getUserName(data) {
$.ajax({
url: "/SYS/GetUserInfoes",
dataType: 'json',
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
console.info(result.data);
var name = "";
var count = 0;
$.each(result.data, function (index, item) {
if (item.userNo == data) {
name = item.userName;
count = count + 1;
}
});
if (count == 1) {
$("#UserName").val(name);
}
else {
alert('請確認工號是否正確!!!');
}
}
layui.form.render("select");
}
});
};
</script> </script>

73
AMESCoreStudio.Web/Views/WHS/WHS006U.cshtml

@ -41,14 +41,13 @@
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="LineID" class="control-label col-sm-3"></label> <label asp-for="LineID" class="control-label col-sm-3"></label>
<select asp-for="LineID" asp-items="@ViewBag.LineList" class="custom-select col-sm-9"> <select id="Line" asp-for="LineID" asp-items="@ViewBag.LineList" class="custom-select col-sm-9">
</select> </select>
<span asp-validation-for="LineID" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="LineID" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="StationID" class="control-label col-sm-3"></label> <label asp-for="StationID" class="control-label col-sm-3"></label>
<select asp-for="StationID" asp-items="@ViewBag.StationList" class="custom-select col-sm-9"> <select id="Station" asp-for="StationID" asp-items="@ViewBag.StationList" class="custom-select col-sm-9">
<option value="">N/A</option>
</select> </select>
<span asp-validation-for="StationID" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="StationID" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
@ -113,6 +112,74 @@
}); });
$("#UnitNo").change(function () {
var data = $("#UnitNo").val();
getStationses(data);
getLineInfoes(data);
});
function getStationses(data) {
$.ajax({
url: "/BAS/GetStationses",
dataType: 'json',
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$("#Station").empty();
$('#Station').append(new Option("請選擇", ""));
var count = 0;
$.each(result.data, function (index, item) {
if (item.unitNo == data) {
$('#Station').append(new Option(item.stationName, item.stationID));
count = count + 1;
}
});
if (count == 0) {
$("#Station").empty();
$('#Station').append(new Option("無選項", ""));
}
}
else {
$("#Station").empty();
$('#Station').append(new Option("無選項", ""));
}
layui.form.render("select");
}
});
};
function getLineInfoes(data) {
$.ajax({
url: "/BAS/GetLineInfoes",
dataType: 'json',
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$("#Line").empty();
$('#Line').append(new Option("請選擇", ""));
var count = 0;
$.each(result.data, function (index, item) {
if (item.unitNo == data) { //修改等號
$('#Line').append(new Option(item.lineDesc, item.lineID));//修改參數
count = count + 1;
}
});
if (count == 0) {
$("#Line").empty();
$('#Line').append(new Option("無選項", ""))
}
}
else {
$("#Line").empty();
$('#Line').append(new Option("無選項", ""));
}
layui.form.render("select");
}
});
};
</script> </script>

109
AMESCoreStudio.Web/Views/WHS/WHS008C.cshtml

@ -55,12 +55,12 @@
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="UserNo" class="control-label col-sm-3"></label> <label asp-for="UserNo" class="control-label col-sm-3"></label>
<input asp-for="UserNo" class="form-control col-sm-9" /> <input id="UserNo" asp-for="UserNo" class="form-control col-sm-9" />
<span asp-validation-for="UserNo" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="UserNo" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="UserNane" class="control-label col-sm-3"></label> <label asp-for="UserNane" class="control-label col-sm-3"></label>
<input asp-for="UserNane" class="form-control col-sm-9" /> <input id="UserNane" asp-for="UserNane" class="form-control col-sm-9" />
<span asp-validation-for="UserNane" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="UserNane" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
@ -124,6 +124,8 @@
$("#OtherDeptI").attr("disabled", false); $("#OtherDeptI").attr("disabled", false);
} }
else { else {
getStationses(data, "#StationIDI");
getLineInfoes(data, "#LineIDI");
$("#LineIDI").val(0); $("#LineIDI").val(0);
$("#StationIDI").val(0); $("#StationIDI").val(0);
$("#LineIDI").attr("disabled", false); $("#LineIDI").attr("disabled", false);
@ -138,17 +140,118 @@
if (data == "0") { if (data == "0") {
$("#LineIDO").attr("disabled", true); $("#LineIDO").attr("disabled", true);
$("#StationIDO").attr("disabled", true); $("#StationIDO").attr("disabled", true);
$("#v").val(0); $("#OtherDeptO").val(0);
$("#OtherDeptO").attr("disabled", false); $("#OtherDeptO").attr("disabled", false);
} }
else { else {
getStationses(data, "#StationIDO");
getLineInfoes(data, "#LineIDO");
$("#LineIDO").val(0); $("#LineIDO").val(0);
$("#StationIDO").val(0); $("#StationIDO").val(0);
$("#LineIDO").attr("disabled", false); $("#LineIDO").attr("disabled", false);
$("#StationIDO").attr("disabled", false); $("#StationIDO").attr("disabled", false);
$("#OtherDeptO").attr("disabled", true); $("#OtherDeptO").attr("disabled", true);
var data = $("#UnitNo").val();
} }
}); });
$("#UserNo").blur(function () {
var data = $("#UserNo").val();
console.log(data);
getUserName(data);
//$("input").css("background-color", "#D6D6FF");
});
function getStationses(data, option) {
$.ajax({
url: "/BAS/GetStationses",
dataType: 'json',
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$(option).empty();
$(option).append(new Option("請選擇", ""));
var count = 0;
$.each(result.data, function (index, item) {
if (item.unitNo == data) {
$(option).append(new Option(item.stationName, item.stationID));
count = count + 1;
}
});
if (count == 0) {
$(option).empty();
$(option).append(new Option("無選項", ""));
}
}
else {
$(option).empty();
$(option).append(new Option("無選項", ""));
}
layui.form.render("select");
}
});
};
function getLineInfoes(data,option) {
$.ajax({
url: "/BAS/GetLineInfoes",
dataType: 'json',
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$(option).empty();
$(option).append(new Option("請選擇", ""));
var count = 0;
$.each(result.data, function (index, item) {
if (item.unitNo == data) { //修改等號
$(option).append(new Option(item.lineDesc, item.lineID));//修改參數
count = count + 1;
}
});
if (count == 0) {
$(option).empty();
$(option).append(new Option("無選項", ""))
}
}
else {
$(option).empty();
$(option).append(new Option("無選項", ""));
}
layui.form.render("select");
}
});
};
function getUserName(data) {
$.ajax({
url: "/SYS/GetUserInfoes",
dataType: 'json',
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
console.info(result.data);
var name = "";
var count = 0;
$.each(result.data, function (index, item) {
if (item.userNo == data) {
name = item.userName;
count = count + 1;
}
});
if (count == 1) {
$("#UserName").val(name);
}
else {
alert('請確認工號是否正確!!!');
}
}
layui.form.render("select");
}
});
};
</script> </script>

106
AMESCoreStudio.Web/Views/WHS/WHS008U.cshtml

@ -62,12 +62,12 @@
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="UserNo" class="control-label col-sm-3"></label> <label asp-for="UserNo" class="control-label col-sm-3"></label>
<input asp-for="UserNo" class="form-control col-sm-9" /> <input id="UserNo" asp-for="UserNo" class="form-control col-sm-9" />
<span asp-validation-for="UserNo" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="UserNo" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="UserNane" class="control-label col-sm-3"></label> <label asp-for="UserNane" class="control-label col-sm-3"></label>
<input asp-for="UserNane" class="form-control col-sm-9" /> <input id="UserNane" asp-for="UserNane" class="form-control col-sm-9" />
<span asp-validation-for="UserNane" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="UserNane" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
@ -131,7 +131,7 @@
var type = $("#type").val(); var type = $("#type").val();
console.log(type); //console.log(type);
if (type == "i") { if (type == "i") {
$("#UnitNoOShow").attr("disabled", true); $("#UnitNoOShow").attr("disabled", true);
$("#LineIDOShow").attr("disabled", true); $("#LineIDOShow").attr("disabled", true);
@ -156,6 +156,8 @@
$("#OtherDeptIShow").attr("disabled", false); $("#OtherDeptIShow").attr("disabled", false);
} }
else { else {
getStationses(data, "#LineIDIShow");
getLineInfoes(data, "#StationIDIShow");
$("#LineIDIShow").val(0); $("#LineIDIShow").val(0);
$("#StationIDIShow").val(0); $("#StationIDIShow").val(0);
$("#LineIDIShow").attr("disabled", false); $("#LineIDIShow").attr("disabled", false);
@ -174,6 +176,8 @@
$("#OtherDeptOShow").attr("disabled", false); $("#OtherDeptOShow").attr("disabled", false);
} }
else { else {
getStationses(data, "#LineIDOShow");
getLineInfoes(data, "#StationIDOShow");
$("#LineIDOShow").val(0); $("#LineIDOShow").val(0);
$("#StationIDOShow").val(0); $("#StationIDOShow").val(0);
$("#LineIDOShow").attr("disabled", false); $("#LineIDOShow").attr("disabled", false);
@ -206,7 +210,103 @@
var data = $("#OtherDeptOShow").val(); var data = $("#OtherDeptOShow").val();
$("#OtherDeptO").val(data); $("#OtherDeptO").val(data);
}); });
$("#UserNo").blur(function () {
var data = $("#UserNo").val();
console.log(data);
getUserName(data);
//$("input").css("background-color", "#D6D6FF");
});
function getStationses(data, option) {
$.ajax({
url: "/BAS/GetStationses",
dataType: 'json',
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$(option).empty();
$(option).append(new Option("請選擇", ""));
var count = 0;
$.each(result.data, function (index, item) {
if (item.unitNo == data) {
$(option).append(new Option(item.stationName, item.stationID));
count = count + 1;
}
});
if (count == 0) {
$(option).empty();
$(option).append(new Option("無選項", ""));
}
}
else {
$(option).empty();
$(option).append(new Option("無選項", ""));
}
layui.form.render("select");
}
});
};
function getLineInfoes(data, option) {
$.ajax({
url: "/BAS/GetLineInfoes",
dataType: 'json',
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$(option).empty();
$(option).append(new Option("請選擇", ""));
var count = 0;
$.each(result.data, function (index, item) {
if (item.unitNo == data) { //修改等號
$(option).append(new Option(item.lineDesc, item.lineID));//修改參數
count = count + 1;
}
});
if (count == 0) {
$(option).empty();
$(option).append(new Option("無選項", ""))
}
}
else {
$(option).empty();
$(option).append(new Option("無選項", ""));
}
layui.form.render("select");
}
});
};
function getUserName(data) {
$.ajax({
url: "/SYS/GetUserInfoes",
dataType: 'json',
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
console.info(result.data);
var name = "";
var count = 0;
$.each(result.data, function (index, item) {
if (item.userNo == data) {
name = item.userName;
count = count + 1;
}
});
if (count == 1) {
$("#UserName").val(name);
}
else {
alert('請確認工號是否正確!!!');
}
}
layui.form.render("select");
}
});
};
</script> </script>

68
AMESCoreStudio.Web/Views/WHS/WHS009.cshtml

@ -43,6 +43,7 @@
<label class="layui-form-label">廠區:</label> <label class="layui-form-label">廠區:</label>
<div class="layui-input-inline" style="width:100px"> <div class="layui-input-inline" style="width:100px">
<select style="width:90px;" lay-filter="factoryNo" lay-submit id="factoryNo" name="factoryNo" asp-items="@ViewBag.FactoryList"> <select style="width:90px;" lay-filter="factoryNo" lay-submit id="factoryNo" name="factoryNo" asp-items="@ViewBag.FactoryList">
<option value="">請選擇</option>
</select> </select>
</div> </div>
</div> </div>
@ -65,7 +66,7 @@
<div class="layui-inline"> <div class="layui-inline">
<label class="layui-form-label">線別:</label> <label class="layui-form-label">線別:</label>
<div class="layui-input-inline" style="width:150px"> <div class="layui-input-inline" style="width:150px">
<select name="lineID" id="lineID" lay-filter="lineID" asp-items="@ViewBag.LineList"> <select name="lineID" id="lineID" lay-filter="lineID" lay-submit asp-items="@ViewBag.LineList">
<option value="">全部</option> <option value="">全部</option>
</select> </select>
</div> </div>
@ -75,7 +76,7 @@
<div class="layui-inline"> <div class="layui-inline">
<label class="layui-form-label">判定單位:</label> <label class="layui-form-label">判定單位:</label>
<div class="layui-input-inline" style="width:150px"> <div class="layui-input-inline" style="width:150px">
<select name="deptID" id="deptID" lay-filter="deptID" asp-items="@ViewBag.DeptList"> <select name="deptID" id="deptID" lay-filter="deptID" lay-submit asp-items="@ViewBag.DeptList">
<option value="">全部</option> <option value="">全部</option>
</select> </select>
</div> </div>
@ -89,17 +90,17 @@
<div class="layui-inline"> <div class="layui-inline">
<label class="layui-form-label">異常日期:</label> <label class="layui-form-label">異常日期:</label>
<div class="layui-input-inline" style="width:150px"> <div class="layui-input-inline" style="width:150px">
<input id="dateStr" name="dateStr" autocomplete="off" class="layui-input" readonly=""> <input id="sdate" name="sdate" autocomplete="off" class="layui-input" readonly="">
</div> </div>
<div class="layui-form-mid">~</div> <div class="layui-form-mid">~</div>
<div class="layui-input-inline" style="width:150px"> <div class="layui-input-inline" style="width:150px">
<input id="dateEnd" name="dateEnd" autocomplete="off" class="layui-input" readonly=""> <input id="edate" name="edate" autocomplete="off" class="layui-input" readonly="">
</div> </div>
</div> </div>
</div> </div>
<div class="layui-col-sm1"> <div class="layui-col-sm1">
<div class="layui-inline layui-show-xs-block"> <div class="layui-inline layui-show-xs-block">
<button class="layui-btn layui-btn-sm layui-btn-normal" lay-submit lay-filter="querysubmit"> <button class="layui-btn layui-btn-sm layui-btn-normal" id="querysubmit" lay-filter="querysubmit">
<i class="layui-icon layui-icon-sm">&#xe615;</i> <i class="layui-icon layui-icon-sm">&#xe615;</i>
</button> </button>
</div> </div>
@ -117,44 +118,38 @@
form = layui.form; form = layui.form;
laydate = layui.laydate; laydate = layui.laydate;
laydate.render({ laydate.render({
elem: '#dateStr' elem: '#sdate'
, trigger: 'click' , trigger: 'click'
, format: 'yyyy/MM/dd' , format: 'yyyy/MM/dd'
, theme: 'grid' , theme: 'grid'
}); });
laydate.render({ laydate.render({
elem: '#dateEnd' elem: '#edate'
, trigger: 'click' , trigger: 'click'
, format: 'yyyy/MM/dd' , format: 'yyyy/MM/dd'
, theme: 'grid' , theme: 'grid'
}); });
//form.on('select(unit)', function (data) {
// $("#unitNo").val(data.value);
// //roleName = data.elem[data.elem.selectedIndex].text;
// var qs = $('button[lay-filter="querysubmit"]');
// qs.click();
//
// //hg.msghide("刷新数据!");
// //table && table.reload();
//
//});
}); });
/* ////搜索
hg.form.on('select(role)', function (data) { $('#querysubmit').click(function () {
alert(data.value); console.log('#btnSearch');
}); var factoryNo = $("#factoryNo").val();
*/ if (factoryNo) {
hg.msghide("刷新数据!");
tt();
}
else {
alert("請選擇廠別!!!!");
}
return false;
//监听表单提交事件
hg.form.onsubmit('querysubmit', function (data) {
hg.msghide("重新載入資料..");
table && table.reload(data);
}); });
var tableCols = [[ var tableCols = [[
{ {
field: 'exceptionDate', field: 'exceptionDate',
@ -253,7 +248,24 @@
} }
]; ];
//基本数据表格 //基本数据表格
var table = hg.table.datatable('query', '異常工時資料維護', '/WHS/GetExceptionWorktimeByQuery', {}, tableCols, toolbar, true, 'full-100', ['filter', 'print', 'exports']); //var table = hg.table.datatable('query', '異常工時資料維護', '/WHS/GetExceptionWorktimeByQuery', {}, tableCols, toolbar, true, 'full-100', ['filter', 'print', 'exports']);
// var table = hg.table.datatable('test', '條碼狀態維護', '/PCS/GetWipInfo', {}, tableCols, toolbar, true, 'full-100', ['filter', 'print', 'exports']); var table;
$(function () {
tt();
});
function tt() {
//基本数据表格
var fNO = "", uNO = "", lID = "", dID = "";
fNO = $("#factoryNo").val();
uNO = $("#unitNo").val();
lID = $("#lineID").val();
dID = $("#deptID").val();
table = hg.table.datatable('query', '異常工時資料維護', '/WHS/GetExceptionWorktimeByQuery?'
+ 'factoryNo=' + fNO + '&unitNo=' + uNO + '&lineID=' + lID + '&deptID=' + dID + '&sdate=' + $("#sdate").val() + '&edate=' + $("#edate").val()
, {}, tableCols, toolbar, true, 'full-100', ['filter', 'print', 'exports']);
}; // var table = hg.table.datatable('test', '條碼狀態維護', '/PCS/GetWipInfo', {}, tableCols, toolbar, true, 'full-100', ['filter', 'print', 'exports']);
</script> </script>
} }

257
AMESCoreStudio.Web/Views/WHS/WHS009C.cshtml

@ -17,7 +17,7 @@
<input type="hidden" asp-for="UpdateUserID" value="0" /> <input type="hidden" asp-for="UpdateUserID" value="0" />
<input type="hidden" asp-for="CreateDate" value="@System.DateTime.Now" /> <input type="hidden" asp-for="CreateDate" value="@System.DateTime.Now" />
<input type="hidden" asp-for="UpdateDate" value="@System.DateTime.Now" /> <input type="hidden" asp-for="UpdateDate" value="@System.DateTime.Now" />
<label>[新增]</label> <label class="control-label col-sm-2">[新增]</label>
<hr /> <hr />
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="FactoryNo" class="control-label col-sm-2"></label> <label asp-for="FactoryNo" class="control-label col-sm-2"></label>
@ -59,11 +59,22 @@
</select> </select>
<span asp-validation-for="DeptID" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="DeptID" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
@*//少異常類別*@ <div class="form-group form-inline my-sm-1">
@*//少類別編號*@ <label class="control-label col-sm-3">歸屬類別</label>
<select id="ExceptionType" class="custom-select col-sm-9">
<option value="I">內部</option>
<option value="O">外部</option>
</select>
</div>
<div class="form-group form-inline my-sm-1">
<label class="control-label col-sm-3">類別編號</label>
<select id="ExceptionClass" class="custom-select col-sm-9">
<option value="">請選擇</option>
</select>
</div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="ExceptionNo" class="control-label col-sm-3"></label> <label asp-for="ExceptionNo" class="control-label col-sm-3"></label>
<select asp-for="ExceptionNo" asp-items="@ViewBag.DeptList" class="custom-select col-sm-9"> <select asp-for="ExceptionNo" class="custom-select col-sm-9">
<option value="">N/A</option> <option value="">N/A</option>
</select> </select>
<span asp-validation-for="ExceptionNo" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="ExceptionNo" class="text-danger offset-sm-3 my-sm-1"></span>
@ -72,7 +83,7 @@
<label asp-for="WipNo" class="control-label col-sm-3"></label> <label asp-for="WipNo" class="control-label col-sm-3"></label>
<input asp-for="WipNo" class="form-control col-sm-6" /> <input asp-for="WipNo" class="form-control col-sm-6" />
<span asp-validation-for="WipNo" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="WipNo" class="text-danger offset-sm-3 my-sm-1"></span>
<input type="button" class="form-control col-sm-3 btn-link" value="檢查機種" /> <input id="searchItemNo" type="button" class="form-control col-sm-3 btn-link" value="檢查機種" />
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="ModelNo" class="control-label col-sm-3"></label> <label asp-for="ModelNo" class="control-label col-sm-3"></label>
@ -86,7 +97,7 @@
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="DecideUser" class="control-label col-sm-3"></label> <label asp-for="DecideUser" class="control-label col-sm-3"></label>
<select asp-for="DecideUser" asp-items="@ViewBag.DeptList" class="custom-select col-sm-9"></select> <select asp-for="DecideUser" class="custom-select col-sm-9"></select>
<span asp-validation-for="DecideUser" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="DecideUser" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
@ -96,24 +107,24 @@
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="StartTime" class="control-label col-sm-3"></label> <label asp-for="StartTime" class="control-label col-sm-3"></label>
<input asp-for="StartTime" type="datetime" class="form-control col-sm-9" /> <input asp-for="StartTime" class="form-control col-sm-9" />
<span asp-validation-for="StartTime" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="StartTime" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="EndTime" class="control-label col-sm-3"></label> <label asp-for="EndTime" class="control-label col-sm-3"></label>
<input asp-for="EndTime" type="datetime" class="form-control col-sm-9" /> <input asp-for="EndTime" class="form-control col-sm-9" />
<span asp-validation-for="EndTime" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="EndTime" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1">
<label asp-for="PersonNum" class="control-label col-sm-3"></label>
<input asp-for="PersonNum" class="form-control col-sm-6" />
<span asp-validation-for="PersonNum" class="text-danger offset-sm-3 my-sm-1"></span>
<input type="button" class="form-control col-sm-3 btn-link" value="計算異常工時" />
</div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="Time" class="control-label col-sm-3"></label> <label asp-for="Time" class="control-label col-sm-3"></label>
<input asp-for="Time" class="form-control col-sm-6" /> <input asp-for="Time" class="form-control col-sm-6" />
<span asp-validation-for="Time" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="Time" class="text-danger offset-sm-3 my-sm-1"></span>
<input id="countTime" type="button" class="form-control col-sm-3 btn-link" value="計算異常工時" />
</div>
<div class="form-group form-inline my-sm-1">
<label asp-for="PersonNum" class="control-label col-sm-3"></label>
<input asp-for="PersonNum" class="form-control col-sm-6" />
<span asp-validation-for="PersonNum" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="Memo" class="control-label col-sm-3"></label> <label asp-for="Memo" class="control-label col-sm-3"></label>
@ -121,7 +132,7 @@
<span asp-validation-for="Memo" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="Memo" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<label>[回復]</label> <label class="control-label col-sm-2">[回復]</label>
<hr /> <hr />
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="DutyDept" class="control-label col-sm-3"></label> <label asp-for="DutyDept" class="control-label col-sm-3"></label>
@ -163,40 +174,196 @@
} }
}); });
$("#UnitNoI").change(function () { $("#ExceptionType").change(function () {
console.log("#UnitNoI"); var data = $("#ExceptionType").val();
var data = $("#UnitNoI").val(); //console.info(data);
if (data == "0") { getExceptionNo(data);
$("#LineIDI").attr("disabled", true); });
$("#StationIDI").attr("disabled", true); $("#ExceptionClass").change(function () {
$("#OtherDeptI").val(0); var data = $("#ExceptionClass").val();
$("#OtherDeptI").attr("disabled", false); //console.info(data);
getExceptionNo(data);
});
$("#DecideDept").change(function () {
var data = $("#DecideDept").val();
//console.info(data);
getUserInfoes(data);
});
$('#searchItemNo').click(function () {
var data = $("#WipNo").val();
if (data) {
$.ajax({
url: "/WHS/GetWipAtt",
dataType: 'json',
data: { id: data },
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
//console.info(result.data);//確認itemNO/modelNO
$("#ModelNo").val(result.data.modelNO);
}
else {
alert("查無資料,請確認工單是否正確!");
}
}
});
} else {
alert("請填寫工單!");
} }
else {
$("#LineIDI").val(0); });
$("#StationIDI").val(0); $('#countTime').click(function () {
$("#LineIDI").attr("disabled", false); var data = "";
$("#StationIDI").attr("disabled", false); var data1 = $("#StartTime").val();
$("#OtherDeptI").attr("disabled", true); var data2 = $("#EndTime").val();
console.log(data1 +"countTime" + data2);
if (data1 && data2) {
data = data1 + "%" + data2;
$.ajax({
url: "/WHS/GetCountTimes",
dataType: 'json',
data: { id: data},
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$("#Time").val(result.data);
}
else {
alert(result.msg);
//alert("請確認時間區間填寫是否正確!");
}
}
});
} else {
alert("請填寫時間區間!");
} }
}); });
$("#UnitNoO").change(function () { function getUserInfoes(data) {
console.log("#UnitNoO"); $.ajax({
var data = $("#UnitNoO").val(); url: "/SYS/GetUserInfoes",
if (data == "0") { dataType: 'json',
$("#LineIDO").attr("disabled", true); contentType: "application/json",
$("#StationIDO").attr("disabled", true); type: 'get',
$("#v").val(0); success: function (result) {
$("#OtherDeptO").attr("disabled", false); if (result.data) {
} $("#DecideUser").empty();
else { $('#DecideUser').append(new Option("請選擇", ""));
$("#LineIDO").val(0); var count = 0;
$("#StationIDO").val(0); $.each(result.data, function (index, item) {
$("#LineIDO").attr("disabled", false); if (item.deptID == data) {
$("#StationIDO").attr("disabled", false); $('#DecideUser').append(new Option(item.userName, item.userID));
$("#OtherDeptO").attr("disabled", true); count = count + 1;
} }
});
if (count == 0) {
$("#DecideUser").empty();
$('#DecideUser').append(new Option("無選項", ""));
}
}
else {
$("#DecideUser").empty();
$('#DecideUser').append(new Option("無選項", ""));
}
layui.form.render("select");
}
});
};
function getExceptionClass(data) {
$.ajax({
url: "/PPS/GetExceptionClasses",
dataType: 'json',
//data: { id: data },
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$("#ExceptionClass").empty();
var count = 0;
$.each(result.data, function (index, item) {
if (item.exceptionGroupNo == data) {//修改等號 EXCEPTION_GROUP_NO
$('#ExceptionClass').append(new Option(item.exceptionClassName, item.exceptionClassNo));//修改參數
count = count + 1;
}
});
if (count == 0) {
$("#ExceptionClass").empty();
$('#ExceptionClass').append(new Option("無選項", ""));
$("#ExceptionNo").empty();//?
$('#ExceptionNo').append(new Option("無選項", ""));//?
}
}
else {
$("#ExceptionClass").empty();
$('#ExceptionClass').append(new Option("無選項", ""));
$("#ExceptionNo").empty();//?
$('#ExceptionNo').append(new Option("無選項", ""));//?
}
layui.form.render("select");
}
});
};
function getExceptionNo(data) {
$.ajax({
url: "/PPS/GetExceptionCodes",
dataType: 'json',
//data: { id: data },
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$("#ExceptionNo").empty();
$('#ExceptionNo').append(new Option("請選擇", ""));
var count = 0;
$.each(result.data, function (index, item) {
if (item.exceptionClassNo == data) { //修改等號
$('#ExceptionNo').append(new Option(item.exceptionDescCh, item.exceptionNo));//修改參數
count = count + 1;
}
});
if (count == 0) {
$("#ExceptionNo").empty();
$('#ExceptionNo').append(new Option("無選項", ""))
}
}
else {
$("#ExceptionNo").empty();
$('#ExceptionNo').append(new Option("無選項", ""));
}
layui.form.render("select");
}
});
};
layui.use(['laydate'], function () {
//form = layui.form;
laydate = layui.laydate;
laydate.render({
elem: '#StartTime'
, trigger: 'click'
, type: 'datetime'
, format: 'yyyy-MM-dd HH:mm'
, theme: 'grid'
});
laydate.render({
elem: '#EndTime'
, trigger: 'click'
, type: 'datetime'
, format: 'yyyy-MM-dd HH:mm'
, theme: 'grid'
});
//form.on('select(unitNo)', function (data) {
// var data = $("#unitNo").val();
// //console.info(data);
// getLineInfoes(data);
//});
}); });
</script> </script>

412
AMESCoreStudio.Web/Views/WHS/WHS009U.cshtml

@ -1,5 +1,7 @@
@model AMESCoreStudio.WebApi.Models.AMES.SupportUser @model AMESCoreStudio.WebApi.Models.AMES.ExceptionWorktime
@{ ViewData["Title"] = "WHS008U";
@{ ViewData["Title"] = "WHS009U";
Layout = "~/Views/Shared/_FormLayout.cshtml"; } Layout = "~/Views/Shared/_FormLayout.cshtml"; }
<style> <style>
.control-label { .control-label {
@ -8,103 +10,154 @@
</style> </style>
<div class="row"> <div class="row">
<div class="col-sm-12"> <div class="col-sm-12">
<form enctype="multipart/form-data" method="post" asp-action="WHS009USave"> <form enctype="multipart/form-data" method="post" asp-action="WHS009CSave">
<div asp-validation-summary="ModelOnly" class="text-danger"></div> <div asp-validation-summary="ModelOnly" class="text-danger"></div>
<input type="hidden" asp-for="SupportID" /> <input type="hidden" asp-for="ExceptionID" />
<input type="hidden" asp-for="CreateUserID" /> <input type="hidden" asp-for="CreateUserID" />
<input type="hidden" asp-for="UpdateUserID" value="0" /> <input type="hidden" asp-for="UpdateUserID" value="0" />
<input type="hidden" asp-for="CreateDate" /> <input type="hidden" asp-for="CreateDate" />
<input type="hidden" asp-for="UpdateDate" value="@System.DateTime.Now" /> <input type="hidden" asp-for="UpdateDate" value="@System.DateTime.Now" />
<input type="hidden" id="type" value="@ViewBag.type" /> <label class="control-label col-sm-2">[修改]</label>
<input type="hidden" id="UnitNoI" asp-for="UnitNoI" /> <hr />
<input type="hidden" id="LineIDI" asp-for="LineIDI" /> <div class="form-group form-inline my-sm-1">
<input type="hidden" id="StationIDI" asp-for="StationIDI" /> <label asp-for="FactoryNo" class="control-label col-sm-2"></label>
<input type="hidden" id="OtherDeptI" asp-for="OtherDeptI" /> <select asp-for="FactoryNo" asp-items="@ViewBag.FactoryList" class="custom-select col-sm-4" readonly></select>
<input type="hidden" id="UnitNoO" asp-for="UnitNoO" /> <span asp-validation-for="FactoryNo" class="text-danger offset-sm-3 my-sm-1"></span>
<input type="hidden" id="LineIDO" asp-for="LineIDO" /> </div>
<input type="hidden" id="StationIDO" asp-for="StationIDO" />
<input type="hidden" id="OtherDeptO" asp-for="OtherDeptO"/>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="Werks" class="control-label col-sm-3"></label> <label asp-for="UnitNo" class="control-label col-sm-2"></label>
<select asp-for="Werks" asp-items="@ViewBag.FactoryList" class="custom-select col-sm-9"></select> <select id="UnitNo" asp-for="UnitNo" asp-items="@ViewBag.FactoryUnit" class="custom-select col-sm-5" readonly></select>
<span asp-validation-for="Werks" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="UnitNo" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="SupportDate" class="control-label col-sm-3"></label> <label asp-for="LineID" class="control-label col-sm-3"></label>
<input asp-for="SupportDate" type="date" class="form-control col-sm-9" /> <select asp-for="LineID" asp-items="@ViewBag.LineList" class="custom-select col-sm-9" readonly>
<span asp-validation-for="SupportDate" class="text-danger offset-sm-3 my-sm-1"></span> </select>
<span asp-validation-for="LineID" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="ClassNo" class="control-label col-sm-3"></label> <label asp-for="ClassNo" class="control-label col-sm-3"></label>
<select asp-for="ClassNo" asp-items="@ViewBag.ClassList" class="custom-select col-sm-9"></select> <select asp-for="ClassNo" asp-items="@ViewBag.ClassList" class="custom-select col-sm-9" readonly></select>
<span asp-validation-for="ClassNo" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="ClassNo" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="UnitNoI" class="control-label col-sm-3"></label> <label asp-for="StationID" class="control-label col-sm-3"></label>
<select id="UnitNoIShow" asp-items="@ViewBag.FactoryUnit" class="custom-select col-sm-9"></select> <select asp-for="StationID" asp-items="@ViewBag.StationList" class="custom-select col-sm-9" readonly>
<span asp-validation-for="UnitNoI" class="text-danger offset-sm-3 my-sm-1"></span> <option value="">N/A</option>
</select>
<span asp-validation-for="StationID" class="text-danger offset-sm-3 my-sm-1"></span>
</div>
<div class="form-group form-inline my-sm-1">
<label asp-for="T2UserName" class="control-label col-sm-3"></label>
<input asp-for="T2UserName" class="form-control col-sm-9" readonly />
<span asp-validation-for="T2UserName" class="text-danger offset-sm-3 my-sm-1"></span>
</div>
<div class="form-group form-inline my-sm-1">
<label asp-for="DeptID" class="control-label col-sm-3"></label>
<select asp-for="DeptID" asp-items="@ViewBag.DeptList" class="custom-select col-sm-9" readonly>
<option value="">N/A</option>
</select>
<span asp-validation-for="DeptID" class="text-danger offset-sm-3 my-sm-1"></span>
</div>
<div class="form-group form-inline my-sm-1">
<label class="control-label col-sm-3" >歸屬類別</label>
<select id="ExceptionType" class="custom-select col-sm-9" readonly>
<option value="I">內部</option>
<option value="O">外部</option>
</select>
</div>
<div class="form-group form-inline my-sm-1">
<label class="control-label col-sm-3">類別編號</label>
<select id="ExceptionClass" class="custom-select col-sm-9" readonly>
<option value="">請選擇</option>
</select>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="LineIDI" class="control-label col-sm-3"></label> <label asp-for="ExceptionNo" class="control-label col-sm-3"></label>
<select id="LineIDIShow" asp-items="@ViewBag.LineList" class="custom-select col-sm-9"></select> <select asp-for="ExceptionNo" class="custom-select col-sm-9" readonly>
<span asp-validation-for="LineIDI" class="text-danger offset-sm-3 my-sm-1"></span> <option value="">N/A</option>
</select>
<span asp-validation-for="ExceptionNo" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="StationIDI" class="control-label col-sm-3"></label> <label asp-for="WipNo" class="control-label col-sm-3"></label>
<select id="StationIDIShow" asp-items="@ViewBag.StationList" class="custom-select col-sm-9"></select> <input asp-for="WipNo" class="form-control col-sm-6" readonly />
<span asp-validation-for="StationIDI" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="WipNo" class="text-danger offset-sm-3 my-sm-1"></span>
@*<input id="searchItemNo" type="button" class="form-control col-sm-3 btn-link" value="檢查機種" />*@
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="OtherDeptI" class="control-label col-sm-3"></label> <label asp-for="ModelNo" class="control-label col-sm-3"></label>
<select id="OtherDeptIShow" asp-items="@ViewBag.DeptList" class="custom-select col-sm-9"></select> <input asp-for="ModelNo" class="form-control col-sm-9" readonly />
<span asp-validation-for="OtherDeptI" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="ModelNo" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="UserNo" class="control-label col-sm-3"></label> <label asp-for="DecideDept" class="control-label col-sm-3"></label>
<input asp-for="UserNo" class="form-control col-sm-9" /> <select asp-for="DecideDept" asp-items="@ViewBag.DeptList" class="custom-select col-sm-9" readonly></select>
<span asp-validation-for="UserNo" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="DecideDept" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="UserNane" class="control-label col-sm-3"></label> <label asp-for="DecideUser" class="control-label col-sm-3"></label>
<input asp-for="UserNane" class="form-control col-sm-9" /> <select asp-for="DecideUser" class="custom-select col-sm-9" readonly></select>
<span asp-validation-for="UserNane" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="DecideUser" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="UnitNoO" class="control-label col-sm-3"></label> <label asp-for="ExceptionDate" class="control-label col-sm-3"></label>
<select id="UnitNoOShow" asp-items="@ViewBag.FactoryUnit" class="custom-select col-sm-9"></select> <input asp-for="ExceptionDate" type="date" class="form-control col-sm-9" readonly />
<span asp-validation-for="UnitNoO" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="ExceptionDate" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="LineIDO" class="control-label col-sm-3"></label> <label asp-for="StartTime" class="control-label col-sm-3"></label>
<select id="LineIDOShow" asp-items="@ViewBag.LineList" class="custom-select col-sm-9"></select> <input asp-for="StartTime" type="datetime" class="form-control col-sm-9" readonly />
<span asp-validation-for="LineIDO" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="StartTime" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="StationIDO" class="control-label col-sm-3"></label> <label asp-for="EndTime" class="control-label col-sm-3"></label>
<select id="StationIDOShow" asp-items="@ViewBag.StationList" class="custom-select col-sm-9"></select> <input asp-for="EndTime" type="datetime" class="form-control col-sm-9" readonly />
<span asp-validation-for="StationIDO" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="EndTime" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="OtherDeptO" class="control-label col-sm-3"></label> <label asp-for="PersonNum" class="control-label col-sm-3"></label>
<select id="OtherDeptOShow" asp-items="@ViewBag.DeptList"class="custom-select col-sm-9"></select> <input asp-for="PersonNum" class="form-control col-sm-6" readonly />
<span asp-validation-for="OtherDeptO" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="PersonNum" class="text-danger offset-sm-3 my-sm-1"></span>
@*<input id="countTime" type="button" class="form-control col-sm-3 btn-link" value="計算異常工時" />*@
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="Hours" class="control-label col-sm-3"></label> <label asp-for="Time" class="control-label col-sm-3"></label>
<input asp-for="Hours" class="form-control col-sm-9" /> <input asp-for="Time" class="form-control col-sm-6" readonly />
<span asp-validation-for="Hours" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="Time" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="Memo" class="control-label col-sm-3"></label> <label asp-for="Memo" class="control-label col-sm-3"></label>
<input asp-for="Memo" class="form-control col-sm-9" /> <input asp-for="Memo" class="form-control col-sm-9" readonly />
<span asp-validation-for="Memo" class="text-danger offset-sm-3 my-sm-1"></span> <span asp-validation-for="Memo" class="text-danger offset-sm-3 my-sm-1"></span>
</div> </div>
<label class="control-label col-sm-2">[回復]</label>
<hr />
<div class="form-group form-inline my-sm-1">
<label asp-for="DutyDept" class="control-label col-sm-3"></label>
<input asp-for="DutyDept" class="form-control col-sm-9" />
<span asp-validation-for="DutyDept" class="text-danger offset-sm-3 my-sm-1"></span>
</div>
<div class="form-group form-inline my-sm-1">
<label asp-for="PersonNo" class="control-label col-sm-3"></label>
<select id="PersonNo" asp-for="PersonNo" asp-items="@ViewBag.FactoryUnit" class="custom-select col-sm-9"></select>
<span asp-validation-for="PersonNo" class="text-danger offset-sm-3 my-sm-1"></span>
</div>
<div class="form-group form-inline my-sm-1">
<label asp-for="Measure" class="control-label col-sm-3"></label>
<input asp-for="Measure" class="form-control col-sm-9" />
<span asp-validation-for="Measure" class="text-danger offset-sm-3 my-sm-1"></span>
</div>
<div class="form-group form-inline my-sm-1">
<label asp-for="MeasureMemo" class="control-label col-sm-3"></label>
<input asp-for="MeasureMemo" class="form-control col-sm-9" />
<span asp-validation-for="MeasureMemo" class="text-danger offset-sm-3 my-sm-1"></span>
</div>
<span style="color: firebrick;word-break: break-all;" class="text-danger offset-sm-3">@Html.ValidationMessage("error")</span> <span style="color: firebrick;word-break: break-all;" class="text-danger offset-sm-3">@Html.ValidationMessage("error")</span>
<div class="form-group"> <div class="form-group">
<input type="submit" value="保存" class="btn btn-primary offset-sm-3" /> <input type="submit" value="保存" class="btn btn-primary offset-sm-3" />
</div> </div>
</form> </form>
</div> </div>
</div> </div>
@ -114,100 +167,179 @@
await Html.RenderPartialAsync("_FileinputScriptsPartial"); } await Html.RenderPartialAsync("_FileinputScriptsPartial"); }
<script type="text/javascript"> <script type="text/javascript">
$(document).ready(function () {
$(document).ready(function () {
var error = '@Html.ValidationMessage("error")'; var error = '@Html.ValidationMessage("error")';
if ($(error).text() != '') { if ($(error).text() != '') {
parent.hg.msg(error); parent.hg.msg(error);
} }
$("#UnitNoOShow").val($("#UnitNoO").val());
$("#LineIDOShow").val($("#LineIDO").val());
$("#StationIDOShow").val($("#StationIDO").val());
$("#OtherDeptOShow").val($("#OtherDeptO").val());
$("#UnitNoIShow").val($("#UnitNoI").val());
$("#LineIDIShow").val($("#LineIDI").val());
$("#StationIDIShow").val($("#StationIDI").val());
$("#OtherDeptIShow").val($("#OtherDeptI").val());
var type = $("#type").val();
console.log(type);
if (type == "i") {
$("#UnitNoOShow").attr("disabled", true);
$("#LineIDOShow").attr("disabled", true);
$("#StationIDOShow").attr("disabled", true);
$("#OtherDeptOShow").attr("disabled", true); }
else {
$("#UnitNoIShow").attr("disabled", true);
$("#LineIDIShow").attr("disabled", true);
$("#StationIDIShow").attr("disabled", true);
$("#OtherDeptIShow").attr("disabled", true);
}
}); });
$("#UnitNoIShow").change(function () { $("#ExceptionType").change(function () {
var data = $("#UnitNoIShow").val(); var data = $("#ExceptionType").val();
$("#UnitNoI").val(data); //console.info(data);
if (data == "0") { getExceptionNo(data);
$("#LineIDIShow").attr("disabled", true); });
$("#StationIDIShow").attr("disabled", true); $("#ExceptionClass").change(function () {
$("#OtherDeptIShow").val(0); var data = $("#ExceptionClass").val();
$("#OtherDeptIShow").attr("disabled", false); //console.info(data);
} getExceptionNo(data);
else { });
$("#LineIDIShow").val(0); $("#DecideDept").change(function () {
$("#StationIDIShow").val(0); var data = $("#DecideDept").val();
$("#LineIDIShow").attr("disabled", false); //console.info(data);
$("#StationIDIShow").attr("disabled", false); getUserInfoes(data);
$("#OtherDeptIShow").attr("disabled", true); });
} $('#searchItemNo').click(function () {
}); var data = $("#WipNo").val();
if (data) {
$.ajax({
url: "/WHS/GetWipAtt",
dataType: 'json',
data: { id: data },
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
//console.info(result.data);//確認itemNO/modelNO
$("#ModelNo").val(result.data.modelNO);
}
else {
hg.msghide("查無資料,請確認工單是否正確!");
}
}
});
} else {
hg.msghide("請填寫工單!");
}
});
$('#countTime').click(function () {
console.log("countTime");
var data = "";
var data1 = $("#StartTime").val();
var data2 = $("#EndTime").val();
if (data1 && data2) {
data = data1 + ":" + data2;
$.ajax({
url: "/WHS/GetCountTimes",
dataType: 'json',
data: { id: data},
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$("#Time").val(result.data);
}
else {
hg.msghide("請確認時間區間填寫是否正確!");
}
}
});
} else {
hg.msghide("請填寫時間區間!");
}
$("#UnitNoOShow").change(function () { });
var data = $("#UnitNoOShow").val();
$("#UnitNoO").val(data); function getUserInfoes(data) {
if (data == "0") { $.ajax({
$("#LineIDOShow").attr("disabled", true); url: "/SYS/GetUserInfoes",
$("#StationIDOShow").attr("disabled", true); dataType: 'json',
$("#OtherDeptOShow").val(0); contentType: "application/json",
$("#OtherDeptOShow").attr("disabled", false); type: 'get',
success: function (result) {
if (result.data) {
$("#DecideUser").empty();
$('#DecideUser').append(new Option("請選擇", ""));
var count = 0;
$.each(result.data, function (index, item) {
if (item.deptID == data) {
$('#DecideUser').append(new Option(item.userName, item.userID));
count = count + 1;
}
});
if (count == 0) {
$("#DecideUser").empty();
$('#DecideUser').append(new Option("無選項", ""));
}
}
else {
$("#DecideUser").empty();
$('#DecideUser').append(new Option("無選項", ""));
}
layui.form.render("select");
} }
else { });
$("#LineIDOShow").val(0); };
$("#StationIDOShow").val(0); function getExceptionClass(data) {
$("#LineIDOShow").attr("disabled", false); $.ajax({
$("#StationIDOShow").attr("disabled", false); url: "/BAS/GetLineInfoByUnit",
$("#OtherDeptOShow").attr("disabled", true); dataType: 'json',
//data: { id: data },
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$("#ExceptionClass").empty();
var count = 0;
$.each(result.data, function (index, item) {
if (item.deptID == data) {//修改等號
$('#ExceptionClass').append(new Option(item.userName, item.userID));//修改參數
count = count + 1;
}
});
if (count == 0) {
$("#ExceptionClass").empty();
$('#ExceptionClass').append(new Option("無選項", ""));
$("#ExceptionNo").empty();//?
$('#ExceptionNo').append(new Option("無選項", ""));//?
}
}
else {
$("#ExceptionClass").empty();
$('#ExceptionClass').append(new Option("無選項", ""));
$("#ExceptionNo").empty();//?
$('#ExceptionNo').append(new Option("無選項", ""));//?
}
layui.form.render("select");
} }
}); });
};
function getExceptionNo(data) {
$.ajax({
url: "/BAS/GetLineInfoByUnit",
dataType: 'json',
//data: { id: data },
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$("#LineIDIShow").change(function () { $("#ExceptionNo").empty();
var data = $("#LineIDIShow").val(); $('#ExceptionNo').append(new Option("請選擇", ""));
$("#LineIDI").val(data); var count = 0;
}); $.each(result.data, function (index, item) {
$("#StationIDIShow").change(function () { if (item.deptID == data) { //修改等號
var data = $("#StationIDIShow").val(); $('#ExceptionNo').append(new Option(item.userName, item.userID));//修改參數
$("#StationIDI").val(data); count = count + 1;
}); }
$("#OtherDeptIShow").change(function () { });
var data = $("#OtherDeptIShow").val(); if (count == 0) {
$("#OtherDeptI").val(data); $("#ExceptionNo").empty();
}); $('#ExceptionNo').append(new Option("無選項", ""))
$("#LineIDOShow").change(function () { }
var data = $("#LineIDOShow").val(); }
$("#LineIDO").val(data); else {
}); $("#ExceptionNo").empty();
$("#StationIDOShow").change(function () { $('#ExceptionNo').append(new Option("無選項", ""));
var data = $("#StationIDOShow").val(); }
$("#StationIDO").val(data); layui.form.render("select");
}); }
$("#OtherDeptOShow").change(function () {
var data = $("#OtherDeptOShow").val();
$("#OtherDeptO").val(data);
}); });
};
</script> </script>

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.dll

Binary file not shown.

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.pdb

Binary file not shown.

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.dll

Binary file not shown.

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.pdb

Binary file not shown.

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.dll

Binary file not shown.

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.pdb

Binary file not shown.

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.dll

Binary file not shown.

BIN
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.pdb

Binary file not shown.

1016
AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.xml

File diff suppressed because it is too large

4
AMESCoreStudio.WebApi/AMESCoreStudio.WebApi.csproj

@ -19,6 +19,10 @@
<Compile Remove="Controllers\AMES\LineInfosController.cs" /> <Compile Remove="Controllers\AMES\LineInfosController.cs" />
<Compile Remove="DTO\AccountDTO.cs" /> <Compile Remove="DTO\AccountDTO.cs" />
<Compile Remove="Models\Account.cs" /> <Compile Remove="Models\Account.cs" />
<Compile Remove="Models\AMES\ClassInfo.cs" />
<Compile Remove="Models\AMES\FactoryInfo.cs" />
<Compile Remove="Models\AMES\FactoryUnit.cs" />
<Compile Remove="Models\AMES\LineInfo.cs" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

15
AMESCoreStudio.WebApi/Controllers/AMES/BarcodeItemsController.cs

@ -265,18 +265,19 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
{ {
await _context.SaveChangesAsync(); await _context.SaveChangesAsync();
result.Success = true;
result.Msg = "OK";
return result;
} }
catch (DbUpdateConcurrencyException) catch (DbUpdateConcurrencyException ex)
{ {
result.Success = false;
throw; result.Msg = ex.Message;
return result;
//throw;
} }
result.Success = true;
result.Msg = "OK";
return result;
} }
/// <summary> /// <summary>

21
AMESCoreStudio.WebApi/Controllers/AMES/StandardWorkTimesController.cs

@ -43,6 +43,12 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
var standardWorkTime = await q.ToListAsync(); var standardWorkTime = await q.ToListAsync();
foreach (var data in standardWorkTime)
{
data.LineInfo = _context.LineInfoes.Find(data.LineID);
data.Stations = _context.Stationses.Find(data.StationID);
}
return standardWorkTime; return standardWorkTime;
} }
@ -64,6 +70,11 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
{ {
return NotFound(); return NotFound();
} }
foreach (var data in standardWorkTime)
{
data.LineInfo = _context.LineInfoes.Find(data.LineID);
data.Stations = _context.Stationses.Find(data.StationID);
}
return standardWorkTime; return standardWorkTime;
} }
@ -108,6 +119,11 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
{ {
return NotFound(); return NotFound();
} }
foreach (var data in standardWorkTime)
{
data.LineInfo = _context.LineInfoes.Find(data.LineID);
data.Stations = _context.Stationses.Find(data.StationID);
}
return standardWorkTime; return standardWorkTime;
} }
@ -147,6 +163,11 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
{ {
return NotFound(); return NotFound();
} }
foreach (var data in standardWorkTime)
{
data.LineInfo = _context.LineInfoes.Find(data.LineID);
data.Stations = _context.Stationses.Find(data.StationID);
}
return standardWorkTime; return standardWorkTime;
} }

33
AMESCoreStudio.WebApi/Controllers/AMES/WorkManPowersController.cs

@ -42,6 +42,13 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
q = q.OrderBy(p => p.PowerID); q = q.OrderBy(p => p.PowerID);
var workManPower = await q.ToListAsync(); var workManPower = await q.ToListAsync();
foreach (var data in workManPower)
{
var tt = _context.UserInfoes.Where(m => m.UserNo == data.UserNo).FirstOrDefaultAsync();
data.U = tt.Result;
//data.UserInfo = _context.UserInfoes.Find(data.UserNo);
//data.DeptInfo = _context.DeptInfoes.Find(data.UserInfo.DeptID);
}
return workManPower; return workManPower;
} }
@ -64,6 +71,13 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
{ {
return NotFound(); return NotFound();
} }
foreach (var data in workManPower)
{
//data.UserInfo = _context.UserInfoes.Find(data.UserNo);
var tt = _context.UserInfoes.Where(m => m.UserNo == data.UserNo).FirstOrDefaultAsync();
data.U = tt.Result;
//data.UserInfo = _context.UserInfoes.Find(data.UserNo);
}
return workManPower; return workManPower;
} }
@ -77,12 +91,13 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
/// <param name="classID"></param> /// <param name="classID"></param>
/// <param name="stationID"></param> /// <param name="stationID"></param>
/// <param name="userNo"></param> /// <param name="userNo"></param>
/// <param name="deptID"></param>
/// <param name="sdate"></param> /// <param name="sdate"></param>
/// <param name="edate"></param> /// <param name="edate"></param>
/// <returns></returns> /// <returns></returns>
// GET: api/ExceptionWorktimeOnlines/5 // GET: api/ExceptionWorktimeOnlines/5
[HttpGet("Query/{factoryid}/{unitid}/{lineid}/{classID}/{stationID}/{userNo}/{sdate}/{edate}")] [HttpGet("Query/{factoryid}/{unitid}/{lineid}/{classID}/{stationID}/{userNo}/{deptID}/{sdate}/{edate}")]
public async Task<ActionResult<IEnumerable<WorkManPower>>> GetWorkManPowerByQuery(string factoryid, string unitid, string lineid, string classID, string stationID, string userNo, string sdate, string edate) public async Task<ActionResult<IEnumerable<WorkManPower>>> GetWorkManPowerByQuery(string factoryid, string unitid, string lineid, string classID, string stationID, string userNo, string deptID, string sdate, string edate)
{ {
IQueryable<WorkManPower> q = _context.WorkManPowers; IQueryable<WorkManPower> q = _context.WorkManPowers;
if (factoryid != "*") if (factoryid != "*")
@ -97,6 +112,8 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
q = q.Where(p => p.StationID.Equals(stationID)); q = q.Where(p => p.StationID.Equals(stationID));
if (userNo != "*") if (userNo != "*")
q = q.Where(p => p.UserNo.Equals(userNo)); q = q.Where(p => p.UserNo.Equals(userNo));
if (deptID != "*")
q = q.Where(p => p.U.DeptID.Equals(deptID));
DateTime dateValue; DateTime dateValue;
@ -118,14 +135,20 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
} }
var exceptionWorktime = await q.ToListAsync(); var workManPower = await q.ToListAsync();
if (exceptionWorktime == null) if (workManPower == null)
{ {
return NotFound(); return NotFound();
} }
foreach (var data in workManPower)
{
var tt = _context.UserInfoes.Where(m => m.UserNo == data.UserNo).FirstOrDefaultAsync();
data.U = tt.Result;
//data.U = _context.UserInfoes.Find(data.UserNo);
}
return exceptionWorktime; return workManPower;
} }

19
AMESCoreStudio.WebApi/Models/AMES/FactoryUnit.cs

@ -6,14 +6,14 @@ using System.Runtime.Serialization;
namespace AMESCoreStudio.WebApi.Models.AMES namespace AMESCoreStudio.WebApi.Models.AMES
{ {
/// <summary> /// <summary>
/// 生產單位別 /// 用户资料表
/// </summary> /// </summary>
[Table("FACTORY_UNIT", Schema = "JHAMES")] [Table("FACTORY_UNIT", Schema = "JHAMES")]
[DataContract] [DataContract]
public class FactoryUnit public class FactoryUnit
{ {
/// <summary> /// <summary>
/// 生產單位代碼 ///
/// </summary> /// </summary>
[Key] [Key]
[Column("UNIT_NO")] [Column("UNIT_NO")]
@ -21,7 +21,7 @@ namespace AMESCoreStudio.WebApi.Models.AMES
public string UnitNO { get; set; } public string UnitNO { get; set; }
/// <summary> /// <summary>
/// 生產單位名稱 ///
/// </summary> /// </summary>
[Column("UNIT_NAME")] [Column("UNIT_NAME")]
[DataMember] [DataMember]
@ -30,7 +30,7 @@ namespace AMESCoreStudio.WebApi.Models.AMES
public string UnitName { get; set; } public string UnitName { get; set; }
/// <summary> /// <summary>
/// 生產單位簡碼 ///
/// </summary> /// </summary>
[Column("UNIT_CODE")] [Column("UNIT_CODE")]
[DataMember] [DataMember]
@ -45,16 +45,7 @@ namespace AMESCoreStudio.WebApi.Models.AMES
[DataMember] [DataMember]
[Required(ErrorMessage = "{0},不能空白")] [Required(ErrorMessage = "{0},不能空白")]
[Display(Name = "")] [Display(Name = "")]
public int SEQ { get; set; } = 1; public decimal SEQ { get; set; }
/// <summary>
/// 狀態
/// </summary>
[Column("STATUS_NO")]
[DataMember]
[Required(ErrorMessage = "{0},不能空白")]
[Display(Name = "狀態")]
public string StatusNo { get; set; } = "A";
} }
} }

12
AMESCoreStudio.WebApi/Models/AMES/StandardWorkTime.cs

@ -2,6 +2,7 @@
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Runtime.Serialization; using System.Runtime.Serialization;
using AMESCoreStudio.WebApi.Models.BAS;
namespace AMESCoreStudio.WebApi.Models.AMES namespace AMESCoreStudio.WebApi.Models.AMES
{ {
@ -140,7 +141,16 @@ namespace AMESCoreStudio.WebApi.Models.AMES
[Display(Name = "修改日期")] [Display(Name = "修改日期")]
public DateTime UpdateDate { get; set; } public DateTime UpdateDate { get; set; }
/// <summary>
/// 線別
/// </summary>
public virtual LineInfo LineInfo { get; set; }
/// <summary>
/// 站別
/// </summary>
public virtual Stations Stations { get; set; }
} }
} }

8
AMESCoreStudio.WebApi/Models/AMES/SupportUser.cs

@ -49,11 +49,11 @@ namespace AMESCoreStudio.WebApi.Models.AMES
public string UserNane { get; set; } public string UserNane { get; set; }
/// <summary> /// <summary>
/// 援入部門 /// 援入單位
/// </summary> /// </summary>
[Column("UNIT_NO_I")] [Column("UNIT_NO_I")]
[DataMember] [DataMember]
[Display(Name = "援入部門")] [Display(Name = "援入單位")]
public string UnitNoI { get; set; } public string UnitNoI { get; set; }
/// <summary> /// <summary>
@ -65,11 +65,11 @@ namespace AMESCoreStudio.WebApi.Models.AMES
public string OtherDeptI { get; set; } public string OtherDeptI { get; set; }
/// <summary> /// <summary>
/// 援出部門 /// 援出單位
/// </summary> /// </summary>
[Column("UNIT_NO_O")] [Column("UNIT_NO_O")]
[DataMember] [DataMember]
[Display(Name = "援出部門")] [Display(Name = "援出單位")]
public string UnitNoO { get; set; } public string UnitNoO { get; set; }
/// <summary> /// <summary>

8
AMESCoreStudio.WebApi/Models/AMES/WorkManPower.cs

@ -178,7 +178,13 @@ namespace AMESCoreStudio.WebApi.Models.AMES
[Display(Name = "修改日期")] [Display(Name = "修改日期")]
public DateTime UpdateDate { get; set; } public DateTime UpdateDate { get; set; }
/// <summary>
/// 人員
/// </summary>
public virtual AMESCoreStudio.WebApi.Models.SYS.UserInfo U { get; set; }
} }
} }

8
AMESCoreStudio.WebApi/Models/AMESContext.cs

@ -65,6 +65,14 @@ namespace AMESCoreStudio.WebApi
modelBuilder.Entity<RoleModule>().HasOne(r => r.Module).WithMany().HasForeignKey(r => r.ModuleID).IsRequired(); modelBuilder.Entity<RoleModule>().HasOne(r => r.Module).WithMany().HasForeignKey(r => r.ModuleID).IsRequired();
modelBuilder.Entity<StandardWorkTime>().HasOne(r => r.Stations).WithMany().HasForeignKey(r => r.StationID).IsRequired();
modelBuilder.Entity<StandardWorkTime>().HasOne(r => r.LineInfo).WithMany().HasForeignKey(r => r.LineID).IsRequired();
modelBuilder.Entity<UserInfo>().HasKey(c => new { c.UserNo});
modelBuilder.Entity<WorkManPower>().HasOne(r => r.U).WithMany().HasForeignKey(r => r.UserNo).IsRequired();
//modelBuilder.Entity<WorkManPower>().HasOne(r => r.DeptInfo).WithMany().HasForeignKey(r => r.UserNo).IsRequired();
} }
/// <summary> /// <summary>

BIN
AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.dll

Binary file not shown.

BIN
AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.pdb

Binary file not shown.

BIN
AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.dll

Binary file not shown.

BIN
AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.pdb

Binary file not shown.

1016
AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.xml

File diff suppressed because it is too large
Loading…
Cancel
Save