Browse Source

1.修改組件新增

PTD
Marvin 2 years ago
parent
commit
36d69697ef
  1. 29
      AMESCoreStudio.Web/Controllers/PCSController.cs
  2. 7
      AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs
  3. 209
      AMESCoreStudio.Web/Views/PCS/PCS024.cshtml
  4. 4
      AMESCoreStudio.Web/Views/PCS/PCS024C.cshtml
  5. 2
      AMESCoreStudio.Web/Views/PCS/PCS025.cshtml
  6. 2
      AMESCoreStudio.Web/Views/PCS/PCS026.cshtml
  7. 42
      AMESCoreStudio.WebApi/Controllers/AMES/BarcodeItemsController.cs

29
AMESCoreStudio.Web/Controllers/PCSController.cs

@ -5917,7 +5917,7 @@ namespace AMESCoreStudio.Web.Controllers
if (ModelState.IsValid) if (ModelState.IsValid)
{ {
IResultModel result; IResultModel result;
result = await _pcsApi.PostBarcodeItem(JsonConvert.SerializeObject(model)); result = await _pcsApi.PostBarcodeItemAddnew(JsonConvert.SerializeObject(model));
if (result.Success) if (result.Success)
@ -5964,13 +5964,12 @@ namespace AMESCoreStudio.Web.Controllers
[ResponseCache(Duration = 0)] [ResponseCache(Duration = 0)]
[HttpGet] [HttpGet]
public async Task<IActionResult> GetBarcodeItemByUnitAsync(string ID) public async Task<IActionResult> GetBarcodeItemByUnit2Async(string ID)
{ {
string str, str1; string str, str1;
var strA = ID.Split("="); var strA = ID.Split("=");
str = strA[0]; str = strA[0];
str1 = strA[1]; str1 = strA[1];
//WO0002A10001
if (ID is null) if (ID is null)
return Json(new Table() { count = 0, data = null }); return Json(new Table() { count = 0, data = null });
@ -5986,6 +5985,30 @@ namespace AMESCoreStudio.Web.Controllers
return Json(new Table() { count = 0, data = null }); return Json(new Table() { count = 0, data = null });
} }
[ResponseCache(Duration = 0)]
[HttpGet]
public async Task<IActionResult> GetBarcodeItemByUnitAsync(string unitId,string barcodeNo)
{
//string str, str1;
//var strA = ID.Split("=");
//str = strA[0];
//str1 = strA[1];
//WO0002A10001
if (barcodeNo is null)
return Json(new Table() { count = 0, data = null });
var result = await _pcsApi.GetBItemByStr(unitId, barcodeNo);
//var result = await _pcsApi.GetBarcodeItemByUnit(ID);
if (result.Count > 0)
{
return Json(new Table() { code = 0, msg = "", data = result, count = result.Count });
}
return Json(new Table() { count = 0, data = null });
}
#endregion #endregion
#region PCS027 組件資料整批刪除 #region PCS027 組件資料整批刪除

7
AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs

@ -808,6 +808,13 @@ namespace AMESCoreStudio.Web
[WebApiClient.Attributes.HttpPost("api/BarcodeItems")] [WebApiClient.Attributes.HttpPost("api/BarcodeItems")]
ITask<ResultModel<BarcodeItem>> PostBarcodeItem([FromBody, RawJsonContent] string model); ITask<ResultModel<BarcodeItem>> PostBarcodeItem([FromBody, RawJsonContent] string model);
/// <summary>
/// 新增組件
/// </summary>
/// <returns></returns>
[WebApiClient.Attributes.HttpPost("api/BarcodeItems/PCS024")]
ITask<ResultModel<BarcodeItem>> PostBarcodeItemAddnew([FromBody, RawJsonContent] string model);
/// <summary> /// <summary>
/// 更新組件 /// 更新組件
/// </summary> /// </summary>

209
AMESCoreStudio.Web/Views/PCS/PCS024.cshtml

@ -23,17 +23,12 @@
<input id="unitId" type="hidden" name="unitId" value="@ViewBag.UnitNo" /> <input id="unitId" type="hidden" name="unitId" value="@ViewBag.UnitNo" />
</div> </div>
<div class="layui-inline" style="margin-right:5px;"> <div class="layui-inline" style="margin-right:5px;">
<input type="text" class="layui-input" id="edtSearch" value="" placeholder="請輸入內部條碼" style="display: inline-block;width: 140px;height: 30px;line-height: 30px;margin-left:20px;" /> <input id="barcodeNo" name="barcodeNo" autocomplete="off" class="layui-input" placeholder="請輸入內部條碼" style="display: inline-block;width: 140px;height: 30px;line-height: 30px;margin-left:20px;" />
</div> </div>
<div class="layui-inline" style="margin-left:0px;"> <div class="layui-inline layui-show-xs-block">
<div class="layui-btn-group"> <button class="layui-btn layui-btn-sm layui-btn-normal" lay-submit lay-filter="querysubmit">
<button id="btnSearch" class="layui-btn layui-btn-sm"> <i class="layui-icon layui-icon-sm">&#xe615;</i>
<i class="layui-icon">&#xe615;</i>搜索
</button> </button>
<button id="btnClearSearch" class="layui-btn layui-btn-sm layui-btn-primary">
<i class="layui-icon">&#x1006;</i>清除
</button>
</div>
</div> </div>
</div> </div>
<div class="layui-inline"> <div class="layui-inline">
@ -45,177 +40,69 @@
</div> </div>
@section Scripts{ @section Scripts{
<script type="text/javascript"> <script type="text/javascript">
var treeTable;
layui.config({
base: '../lib/layui_ext/' layui.use(['form', 'jquery', 'layer'], function () {
}).extend({ form = layui.form;
treeTable: 'treetable/treeTable'
}).use(['treeTable'], function () { var qs = $('button[lay-filter="querysubmit"]');
treeTable = layui.treeTable; qs.click();
//treeTable.on('tool(test)', function (obj) {
// if (obj.event == 'edit') {
// if (obj.data.lineID) {
// hg.open('修改線別', '/BAS/BAS003U/' + obj.data.lineID, 480, 480);
// }
// }
// if (obj.event == 'del') {
// var str;
// if (obj.data.statusNo == 'A')
// str = '停用';
// else
// str = '啟用';
// hg.confirm("系統:" + obj.data.lineDesc + ",确定要"+str+"吗?", function () {
// $.ajax({
// url: '/BAS/BAS003U2', //抓取停用
// data: { model: obj.data },
// type: 'POST',
// success: function (data) {
// if (data.success) {
// //obj.del(); //只删本地数据
// hg.msghide("成功!");
// var aa = $("#unitId").val();
// request(aa);
// }
// else {
// hg.msg(data.msg);
// }
// },
// error: function () {
// hg.msg("网络请求失败!");
// }
// });
// });
// }
//});
form.on('select(unit)', function (data) {
$("#unitId").val(data.value);
});
});
var data = [];
$(document).ready(function () {
request();
}); });
//通过table定义reload刷新列表,update本地填充一条数据
var TABLE = function () { //监听表单提交事件
return { hg.form.onsubmit('querysubmit', function (data) {
reload: function () { hg.msghide("重新載入資料..");
request(); table && table.reload(data);
},
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 tableCols = [[
} {
} field: 'b',
title: '內部條碼',
sort: true,
templet: function (d) {
return d.b['barcodeNo'];
} }
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: 'barcodeID',
},
cols: [
{ {
field: 'b', field: 's',
minWidth: 100, width: 200,
title: '內部條碼' title: '站別',
, templet: function (d) { sort: true,
console.log(d.b); templet: function (d) {
var iN; return d.s['stationName'];
if (d.i)
iN = d.b["barcodeNo"];
else
iN = "N/A";
return iN;
} }
}, },
{ {
field: 'partNo', field: 'itemNo',
minWidth: 100, width: 120,
title: '組件條碼' title: '組件代碼'
}, },
{ {
field: 'kpItemNo', field: 'kpItemNo',
minWidth: 100, width: 200,
title: '組件料號' title: '组件料號'
}, },
{ {
field: 'i', field: 'partNo',
title: '組件名稱' width: 120,
, templet: function (d) { title: '組件條碼'
var iN; }]
if (d.i) ];
iN = d.i["itemName"];
else
iN = "N/A";
return iN;
}
}
],
style: 'margin-top:0;',
done: function () {
}
});
insTb.expandAll();
}
var table = new TABLE()
//更新資料
function request() {
var aa = $("#unit").val();
var keywords = $('#edtSearch').val();
if (keywords && aa)
//hg.request('/PCS/GetBItem/' + aa + '/' + keywords , function (result) {
hg.request('/PCS/GetBarcodeItemByUnit/' + aa + '=' + keywords, function (result) {
data = result.data;
init(data);
});
}
//搜索
$('#btnSearch').click(function () {
var aa = $("#unit").val();
var keywords = $('#edtSearch').val();
if (aa) {
if (keywords) {
hg.msghide("刷新数据!");
request();
} else {
alert("請輸入條碼!!");
}
}
else {
alert("請選擇生產單位!!");
}
});
//清除
$('#btnClearSearch').click(function () {
$('#edtSearch').val("");
insTb.clearFilter();
});
//新增 //新增
$('#btnAdd').click(function () { $('#btnAdd').click(function () {
var keywords = $('#edtSearch').val(); var keywords = $('#barcodeNo').val();
if (keywords) if (keywords)
hg.open('新增組件資料', '/PCS/PCS024C/' + keywords, 480, 480); hg.open('新增組件資料', '/PCS/PCS024C/' + keywords, 640, 480);
else else
alert("請先輸入內部條碼!!"); alert("請先輸入內部條碼!!");
}); });
</script> var aa = $("#unit").val(); var keywords = $('#edtSearch').val();
//基本数据表格
var table = hg.table.datatable('test', '組件資料', '/PCS/GetBarcodeItemByUnit', {}, tableCols, toolbar, true, 'full-100', ['filter', 'print', 'exports']);
</script>
} }

4
AMESCoreStudio.Web/Views/PCS/PCS024C.cshtml

@ -34,7 +34,7 @@
<select asp-for="StationID" name="Role" id="Role" lay-filter="RoleInfo" asp-items="@ViewBag.GetStationsList" class="custom-select col-sm-9"> <select asp-for="StationID" name="Role" id="Role" lay-filter="RoleInfo" asp-items="@ViewBag.GetStationsList" class="custom-select col-sm-9">
<option value="">請選擇</option> <option value="">請選擇</option>
</select> </select>
<input type="hidden" name="RuleStationID" id="RuleStationID" /> <input type="hidden" name="StationID" id="StationID" />
</div> </div>
<div class="form-group form-inline my-sm-1"> <div class="form-group form-inline my-sm-1">
<label asp-for="ItemNo" class="control-label col-sm-3"></label> <label asp-for="ItemNo" class="control-label col-sm-3"></label>
@ -84,7 +84,7 @@
$("#Role").change(function () { $("#Role").change(function () {
var data = $("#Role").val(); var data = $("#Role").val();
console.info(data); console.info(data);
$("#RuleStationID").val(data); $("#StationID").val(data);
}) })
function getRoles(data) { function getRoles(data) {

2
AMESCoreStudio.Web/Views/PCS/PCS025.cshtml

@ -148,7 +148,7 @@
if (keywords) { if (keywords) {
hg.msghide("刷新数据!"); hg.msghide("刷新数据!");
table.reload('test', { table.reload('test', {
url: '/PCS/GetBarcodeItemByUnit/', url: '/PCS/GetBarcodeItemByUnit2/',
where: { where: {
ID: aa ID: aa
} }

2
AMESCoreStudio.Web/Views/PCS/PCS026.cshtml

@ -171,7 +171,7 @@
if (keywords) { if (keywords) {
hg.msghide("刷新数据!"); hg.msghide("刷新数据!");
table.reload('test', { table.reload('test', {
url: '/PCS/GetBarcodeItemByUnit/', url: '/PCS/GetBarcodeItemByUnit2/',
where: { where: {
ID: aa ID: aa
} }

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

@ -515,6 +515,48 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
return result; return result;
} }
/// <summary>
/// 新增條碼资料
/// </summary>
/// <param name="barcodeItem"></param>
/// <returns></returns>
// POST: api/BarcodeItems
// To protect from overposting attacks, enable the specific properties you want to bind to, for
// more details, see https://go.microsoft.com/fwlink/?linkid=2123754.
[HttpPost("PCS024")]
public async Task<ResultModel<BarcodeItem>> PostBarcodeItemsAddnew(BarcodeItem barcodeItem)
{
ResultModel<BarcodeItem> result = new ResultModel<BarcodeItem>();
Helper helper = new Helper(_context);
barcodeItem.BarcodeItemID = helper.GetIDKey("BARCODEITEM_ID").Result;
barcodeItem.B.BarcodeID = barcodeItem.BarcodeID;
if (PartNoExists(barcodeItem.PartNo))
{
result.Success = false;
result.Msg = "組件條碼重複";
return result;
}
try
{
_context.BarcodeItems.Add(barcodeItem);
_context.Entry(barcodeItem.B).State = EntityState.Detached;
_context.Entry(barcodeItem).State = EntityState.Added;
//_context.Set<BarcodeItem>().Add(barcodeItem);
await _context.SaveChangesAsync();
result.Success = true;
result.Msg = "OK";
}
catch (Exception ex)
{
result.Success = false;
result.Msg = ex.InnerException.Message;
}
return result;
}
/// <summary> /// <summary>
/// 删除條碼资料 /// 删除條碼资料
/// </summary> /// </summary>

Loading…
Cancel
Save