Browse Source

1.新增樣品序號

2.修正每日工時資料維護的查詢條件下抓取的資料不正確
PTD
Shani 3 years ago
parent
commit
a6bbbef30e
  1. 4
      AMESCoreStudio.Web/Controllers/WHSController.cs
  2. 250
      AMESCoreStudio.Web/Views/WHS/WHS003.cshtml
  3. 11
      AMESCoreStudio.Web/Views/WHS/WHS005.cshtml
  4. 2
      AMESCoreStudio.Web/Views/WHS/WHS006.cshtml
  5. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.dll
  6. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.Views.pdb
  7. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.dll
  8. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.Web.pdb
  9. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.dll
  10. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.pdb
  11. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.dll
  12. BIN
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.pdb
  13. 20
      AMESCoreStudio.Web/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.xml
  14. 98
      AMESCoreStudio.WebApi/Controllers/AMES/SerialRulesController.cs
  15. 2
      AMESCoreStudio.WebApi/Controllers/AMES/StandardWorkTimesController.cs
  16. 5
      AMESCoreStudio.WebApi/Controllers/AMES/WorkManPowersController.cs
  17. BIN
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.dll
  18. BIN
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.Views.pdb
  19. BIN
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.dll
  20. BIN
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.pdb
  21. 20
      AMESCoreStudio.WebApi/bin/Debug/netcoreapp3.1/AMESCoreStudio.WebApi.xml

4
AMESCoreStudio.Web/Controllers/WHSController.cs

@ -586,11 +586,11 @@ namespace AMESCoreStudio.Web.Controllers
}
public async Task<IActionResult> GetStandardWorkTimes005Async(string u, string l, string i)
{
if (l == "")
if (string.IsNullOrEmpty(l))
return Json(new Table() { count = 0, data = null });
if (string.IsNullOrEmpty(i))
i = "Null";
if (string.IsNullOrEmpty(u))
if (string.IsNullOrEmpty(u) || u=="0")
u = "Null";
var result = await _whsApi.GetStandardWorkTimes005(u, l, i);

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

@ -232,255 +232,5 @@
}
</script>
@*<script>
var treeTable;
layui.config({
base: '../lib/layui_ext/'
}).extend({
treeTable: 'treetable/treeTable'
}).use(['treeTable', 'jquery', 'form', 'laydate'], function () {
treeTable = layui.treeTable;
var $ = layui.$;
var form = layui.form,
layer = layui.layer;
treeTable.on('tool(test)', function (obj) {
if (obj.event == 'edit') {
if (obj.data.standardID) {
hg.open('修改標準工時', '/WHS/WHS003U/' + obj.data.standardID, 480, 480);
}
}
if (obj.event == 'del') {
if (obj.data.standardID) {
var str;
str = "刪除";
hg.confirm("系統:" + obj.data.standardID + ",確定要" + str + "嗎?", function () {
$.ajax({
url: '/WHS/WHS003D',
data: { id: obj.data.standardID },
type: 'POST',
success: function (res) {
if (res.success) {
obj.del(); //只删本地数据
hg.msghide(str + "成功!", {
icon: 6
});
layui.table.reload('test', { page: { curr: $(".layui-laypage-em").next().html() } })
}
else {
hg.msg(data.msg);
}
},
error: function () {
hg.msg("网络请求失败!");
}
});
});
}
}
});
form.on('select(unitNo)', function (data) {
var data = $("#unitNo").val();
//console.info(data);
getLineInfoes(data);
});
});
var data = [];
$(document).ready(function () {
//console.log("ready");
request();
});
//通过table定义reload刷新列表,update本地填充一条数据
var TABLE = function () {
return {
reload: function () {
request();
},
update: function (d) {
var model = $.parseJSON(d);
var up = false;
layui.each(data, function (i, d) {
if (d.id == model.id) {
data[i] = model;
up = true;
return false;
}
});
up || data.push(model);
init(data);
}
}
}
var insTb;
function init(data) {
insTb = treeTable.render({
elem: '#test',
height: 'full-180',
text: {
none: '<div style="padding: 18px 0;">無資料</div>'
},
data: data,
tree: {
iconIndex: -1,
isPidData: false,
idName: 'standardID',
},
cols: [
{
field: 'standardID',
title: '#',
sort: true
},
{
field: 'unitNo',
title: '單位代號'
},
{
field: 'lineInfo',
title: '線別',
templet: function (d) {
var line;
if (d.lineInfo)
line = d.lineInfo["lineDesc"];
else
line = "N/A";
return line;
}
},
{
field: 'stations',
title: '站別',
templet: function (d) {
var station;
if (d.stations)
station = d.stations["stationName"];
else
station = "N/A";
return station;
}
},
{
field: 'itemNo',
title: '料號',
},
{
field: 'side',
title: '正背面',
},
{
field: 'opcnt',
title: '作業人數',
},
{
field: 'firstTime',
title: '首件產出時間(分)',
},
{
field: 'totalCT',
title: 'C/T(分)',
},
{
field: 'ct',
title: '節拍時間',
},
{
field: 'machineCT',
title: '操機數',
},
{
field: 'center',
width: 200,
title: '操作',
templet: function (item) {
var btn = '<a class="layui-btn layui-btn-normal layui-btn-xs layui-icon layui-icon-edit" lay-event="edit">修改</a>';
btn += ' <a class="layui-btn layui-btn-danger layui-btn-xs layui-icon layui-icon-delete" lay-event="del">刪除</a>';
return btn
}
}
],
style: 'margin-top:2;',
done: function () {
}
});
insTb.expandAll();
}
var table = new TABLE()
//更新TABLE資料
function request() {
var unit = $("#unitNo").val();
var lineID = $('#line').val();
var keywords = $('#modelname').val();
//if (unit || lineID) {
hg.request('/WHS/GetStandardWorkTimes2?u=' + unit + '&l=' + lineID + '&i=' + keywords, function (result) {
console.info(result.data);
data = result.data;
init(data);
});
//}
}
//新增
$('#btnAdd').click(function () {
var unit = $("#unitNo").val();
var lineID = $('#lineID').val();
if (lineID) {
hg.open('新增標準工時', '/WHS/WHS003C?unit=' + unit + "&lineID=" + lineID, 480, 480);
}
else {
alert("請選擇線別!!");
}
});
//搜索
$('#btnSearch').click(function () {
var unit = $("#unitNo").val();
var lineID = $('#lineID').val();
var line = $('#line').val();
if (lineID) {
$('#line').val(lineID);
}
else {
$('#line').val(-99);
}
//if (unit) {
// if (lineID) {
hg.msghide("刷新数据!");
request();
// } else {
// alert("請選擇線別!!");
// }
// }
//else {
// alert("請選擇生產單位!!");
// }
});
//利用ajax將資料傳到後端,來獲取到對應下拉框選項而出現的值
function getLineInfoes(data) {
$.ajax({
url: "/BAS/GetLineInfoByUnit",
dataType: 'json',
data: { id: data },
contentType: "application/json",
type: 'get',
success: function (result) {
if (result.data) {
$("#lineID").empty();//清空下拉框的值
$('#lineID').append(new Option("全部", "-99"));// 下拉選單裡新增元素
$.each(result.data, function (index, item) {
$('#lineID').append(new Option(item.lineDesc, item.lineID));// 下拉選單裡新增元素
});
}
else {
$("#lineID").empty();//清空下拉框的值
$('#lineID').append(new Option("無選項", "-99"));// 下拉選單裡新增元素
}
layui.form.render("select");//重新渲染 固定寫法
}
});
};
</script>*@
}

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

@ -34,7 +34,7 @@
</div>
<div class="layui-inline">
<div class="layui-form-item">
<button type="submit" class="layui-btn tt" lay-submit="" lay-filter="demo1">查詢</button>
<button id="btnSearch" class="layui-btn tt" lay-filter="submitBtn">查詢</button>
</div>
</div>
</form>
@ -55,9 +55,11 @@
var form = layui.form,
layer = layui.layer;
var table = layui.table;
table.render({
elem: '#test'
, url: "@Url.Action("GetStandardWorkTimes", "WHS")"
, title: '標準工時資料維護'
, cols: [[
{
@ -147,7 +149,8 @@
});
//如果需要使用原始保单提交方式(刷新整个页面)
//请注释掉下方 监听表单的 代码
form.on('submit(demo1)', function (data) {
form.on('submit(submitBtn)', function (data) {
console.log("reload");
//打印表单数据
table.reload('test', {
url: '/WHS/GetStandardWorkTimes005/',
@ -160,6 +163,7 @@
return false;//阻止默认表单提交行为
});
});
var options = {
el: '#demo1',
@ -172,13 +176,13 @@
list: [
'ALL',
'CLEAR',
'REVERSE',
]
},
data: [],
};
var demo1 = xmSelect.render(options)
setTimeout(function () {
console.log("setTimeout");
$.ajax({
url: '/BAS/GetLineInfoesList',
method: 'get',
@ -189,6 +193,7 @@
data: res.data,
autoRow: true,
})
console.log("setTimeoutsuccess");
}
});
}, 100);

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

@ -88,7 +88,7 @@
<div class="layui-col-sm4">
<div class="layui-inline">
@*<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" class="layui-form-label" title="站別" />
<div class="layui-input-inline" style="width:150px">
<select name="stationID" id="stationID" lay-filter="stationID" asp-items="@ViewBag.StationList">
<option value="">N/A</option>

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.

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

@ -3316,10 +3316,17 @@
</member>
<member name="M:AMESCoreStudio.WebApi.Controllers.AMES.SerialRulesController.GetSerialRuleByQurey(System.String,System.String)">
<summary>
料號基本資料檔 to ItemNO
取得出貨序號
</summary>
<param name="itemNo">料號</param>
<param name="lotNo">生產序號</param>
<returns></returns>
</member>
<member name="M:AMESCoreStudio.WebApi.Controllers.AMES.SerialRulesController.GetSampleSerialRule(System.String)">
<summary>
取得樣本序號
</summary>
<param name="itemNo">料號</param>
<param name="lotNo">料號</param>
<returns></returns>
</member>
<member name="M:AMESCoreStudio.WebApi.Controllers.AMES.SerialRulesController.PostSerialRule(AMESCoreStudio.WebApi.Models.AMES.SerialRule)">
@ -4023,6 +4030,15 @@
<param name="date_end">鎖定日期迄</param>
<returns></returns>
</member>
<member name="M:AMESCoreStudio.WebApi.Controllers.AMES.WipLockController.PostWipLockByItemNo(System.String,System.String,System.String)">
<summary>
根據料號批量鎖定工單
</summary>
<param name="itemNo">料號</param>
<param name="lockReason">鎖定原因</param>
<param name="lockUserNo">鎖定人員</param>
<returns></returns>
</member>
<member name="M:AMESCoreStudio.WebApi.Controllers.AMES.WipLockController.PostWipLock(AMESCoreStudio.WebApi.Models.AMES.WipLock)">
<summary>
新增工單鎖定資料檔

98
AMESCoreStudio.WebApi/Controllers/AMES/SerialRulesController.cs

@ -60,10 +60,10 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
}
/// <summary>
/// 料號基本資料檔 to ItemNO
/// 取得出貨序號
/// </summary>
/// <param name="itemNo">料號</param>
/// <param name="lotNo">號</param>
/// <param name="lotNo">生產序號</param>
/// <returns></returns>
[HttpGet("ByQurey/{itemNo}/{lotNo}")]
public async Task<ResultModel<string>> GetSerialRuleByQurey(string itemNo,string lotNo)
@ -170,11 +170,105 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
serial = serial.Replace("[SN4]", serialRuleNew.SnNum.ToString("0000"));
}
_context.Entry(serialRuleNew).State = EntityState.Modified;
try
{
await _context.SaveChangesAsync();
result.Success = true;
result.Msg = serial;
}
catch (Exception ex)
{
result.Success = false;
result.Msg = ex.InnerException.Message;
}
return result;
}
/// <summary>
/// 取得樣本序號
/// </summary>
/// <param name="itemNo">料號</param>
/// <returns></returns>
[HttpGet("Sample/{itemNo}")]
public async Task<ResultModel<string>> GetSampleSerialRule(string itemNo)
{
IQueryable<SerialRule> q = _context.SerialRules;
ResultModel<string> result = new ResultModel<string>();
if (string.IsNullOrWhiteSpace(itemNo)) {
itemNo = "Sample";
itemNo = itemNo.ToUpper();
}
var serialRule = await q.Where(p => p.ItemNo == itemNo).FirstOrDefaultAsync();
var serialRuleNew = serialRule;
if (serialRule == null)
{
result.Success = false;
result.Msg = "無料號對應出貨序號規則";
return result;
}
var strRule = serialRule.Rule.ToUpper();
var serial = serialRule.Rule;
if (strRule.Contains("[WW]"))
{
System.Globalization.GregorianCalendar gc = new System.Globalization.GregorianCalendar();
DateTime datetime = DateTime.Now;
int week = gc.GetWeekOfYear(datetime, System.Globalization.CalendarWeekRule.FirstDay, DayOfWeek.Sunday);
serial = serial.Replace("[WW]", week.ToString());
if (serialRule.WNum != week)
{
serialRuleNew.WNum = week;
if (serialRule.SnNum > 0)
serialRuleNew.SnNum = 0;
}
}
if (strRule.Contains("[YY]"))//年份後兩碼
{
var strYY = System.DateTime.Now.ToString("yy");
if (serialRule.YNum.ToString() != System.DateTime.Now.ToString("yy"))
{
serialRuleNew.YNum = int.Parse(System.DateTime.Now.ToString("yy"));
if (serialRule.SnNum > 0)
serialRuleNew.SnNum = 0;
}
strYY = strYY.Replace("0", "Z");
strYY = strYY.Replace("1", "A");
strYY = strYY.Replace("2", "B");
strYY = strYY.Replace("3", "C");
strYY = strYY.Replace("4", "D");
strYY = strYY.Replace("5", "E");
strYY = strYY.Replace("6", "F");
strYY = strYY.Replace("7", "G");
strYY = strYY.Replace("8", "H");
strYY = strYY.Replace("9", "J");
serial = serial.Replace("[YY]", strYY);
}
if (strRule.Contains("[SN5]"))
{
serialRuleNew.SnNum++;
serial = serial.Replace("[SN5]", serialRuleNew.SnNum.ToString("00000"));
}
_context.Entry(serialRuleNew).State = EntityState.Modified;
try
{
await _context.SaveChangesAsync();
result.Success = true;
result.Msg = serial;
}
catch (Exception ex)
{
result.Success = false;
result.Msg = ex.InnerException.Message;
}
return result;

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

@ -155,7 +155,7 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
if(u!="Null")
queryResult = queryResult.Where(p => p.UnitNo.Equals(u));
if(i!="Null")
queryResult = queryResult.Where(p => p.LineID.Equals(l));
queryResult = queryResult.Where(p => p.LineID.ToString() == l);
var standardWorkTime = await q.ToListAsync();

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

@ -100,6 +100,8 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
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;
if (stationID != "*")
q = q.Where(p => p.StationID.ToString()==stationID);
if (factoryid != "*")
q = q.Where(p => p.Werks.Equals(factoryid));
if (unitid != "*")
@ -108,14 +110,13 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
q = q.Where(p => p.LineID.Equals(lineid));
if (classID != "*")
q = q.Where(p => p.ClassID.Equals(classID));
if (stationID != "*")
q = q.Where(p => p.StationID.Equals(stationID));
if (userNo != "*")
q = q.Where(p => p.UserNo.Equals(userNo));
if (deptID != "*")
q = q.Where(p => p.U.DeptID.Equals(deptID));
DateTime dateValue;
if (sdate != "*")
{

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.

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

@ -3316,10 +3316,17 @@
</member>
<member name="M:AMESCoreStudio.WebApi.Controllers.AMES.SerialRulesController.GetSerialRuleByQurey(System.String,System.String)">
<summary>
料號基本資料檔 to ItemNO
取得出貨序號
</summary>
<param name="itemNo">料號</param>
<param name="lotNo">生產序號</param>
<returns></returns>
</member>
<member name="M:AMESCoreStudio.WebApi.Controllers.AMES.SerialRulesController.GetSampleSerialRule(System.String)">
<summary>
取得樣本序號
</summary>
<param name="itemNo">料號</param>
<param name="lotNo">料號</param>
<returns></returns>
</member>
<member name="M:AMESCoreStudio.WebApi.Controllers.AMES.SerialRulesController.PostSerialRule(AMESCoreStudio.WebApi.Models.AMES.SerialRule)">
@ -4023,6 +4030,15 @@
<param name="date_end">鎖定日期迄</param>
<returns></returns>
</member>
<member name="M:AMESCoreStudio.WebApi.Controllers.AMES.WipLockController.PostWipLockByItemNo(System.String,System.String,System.String)">
<summary>
根據料號批量鎖定工單
</summary>
<param name="itemNo">料號</param>
<param name="lockReason">鎖定原因</param>
<param name="lockUserNo">鎖定人員</param>
<returns></returns>
</member>
<member name="M:AMESCoreStudio.WebApi.Controllers.AMES.WipLockController.PostWipLock(AMESCoreStudio.WebApi.Models.AMES.WipLock)">
<summary>
新增工單鎖定資料檔

Loading…
Cancel
Save