<!DOCTYPE HTML> <html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> <meta charset="utf-8"> <head th:include="include :: header"></head> <th:block th:include="include :: bootstrap-baguetteBox-css" /> <style> .table-striped-left{ width: 58%; /*margin-right: 4px;*/ } .table-striped-right{ /*right: -10px;*/ width: 41.9%; float: right; } .table-striped-bottom{ width: 100%; padding-top:0px; } .info_text{ float: right; } .info_text li{ font-size: 16px; } .info_text li span{ font-size: 20px; font-weight: bold; color: rgb(28,132,198); } /* 缩略图 */ #my_thumbnail{ height: 85px; overflow-x: auto; border: 1px solid blue; } #my_thumbnail img{ margin: 0 5px; } element.style { width: 50%; } .fixed-table-toolbar .bs-bars, .fixed-table-toolbar .columns, .fixed-table-toolbar .search { position: relative; margin-top: 40px; margin-bottom: 0px; line-height: 34px; } .table-striped-left .select-list li{ width:47%; float:right; } .select-list li select { border: 1px solid #ddd; border-radius: 4px; background: transparent; outline: none; font-size:13px; height: 30px; width: 200px; /*margin-left:4px; margin-top:6px;*/ display:inline-block; vertical-align:middle; } .selectClass{ margin-top:0px; display:inline-block; vertical-align:middle; } /*.select-info { width: 100%; background: #fff; border-radius: 6px; margin-top: 1px; padding: 10px 1px; box-shadow: 1px 1px 3px rgb(0 0 0 / 20%); }*/ .color-red{ color:red; } </style> <body class="gray-bg"> <div class="container-div"> <input type="hidden" id="baudrate"> <input type="hidden" id="url"> <input type="hidden" id="comm"> <div class="row"> <div class="col-sm-12 select-info"> <form id="dept-form"> <div class="select-list"> <div id="divhtml"> </div> <ul> <li> 收货单号:<input type="text" id="code" name="deptName"/> </li> <li> <a class="btn btn-primary btn-rounded btn-sm" id="list-btn"><i class="fa fa-search"></i> 搜索</a> </li> </ul> <ul class="info_text"> <li>物料总数:<span id="material_length"></span></li> <li>总单据数量:<span id="qty_length"></span></li> <li>已收货数量:<span id="qtyCompleted_length"></span></li> </ul> </div> </form> </div> <div class="col-sm-12 select-info table-striped-left" style="padding-top: 20px;"> <!--组盘输入区 --> <ul class="select-list"> <input type="text" id="materialCode" hidden/> <li style="display: none">id:<input type="text" id="detailId"/></li> <li > 收货数量: <input type="text" id="receiveNum" readonly/></li> <li ><span class="color-red">*</span>容器编号:<input type="text" id="containerCode" placeholder="请用pda扫码获取"/></li> <li hidden>库位编码:<input type="text" id="locationCoder"/></li> <!--<li id="barhidden"> 托盘号:<input type="text" id="barCodeHeaderCode" readonly style="width: 50%"/> <input type="hidden" id="barCodeHeaderId" /> <button class="btn btn-sm btn-success" onclick="selectCode()">请选择</button> </li>--> <div id="batteryHidden" hidden> <li ><span class="selectClass"><span class="color-red">*</span>电池包类型:</span> <select id="batteryPackType" name="batteryPackType" class="form-control" th:with="batteryPackType=${@dict.getType('batteryPackType')}" placeholder="电池类必填"> <option value="">--请选择--</option> <option th:each="dict : ${batteryPackType}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}"></option> </select> </li> <li > <span class="selectClass"><span class="color-red">*</span>再生利用:</span> <select id="type" name="type" class="form-control" th:with="types=${@dict.getType('types')}"> <option value="">--请选择--</option> <option th:each="dict : ${types}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}"></option> </select> </li> <li > <span class="selectClass"><span class="color-red">*</span>利用类型: </span> <select id="storageType" name="storageType" class="form-control" th:with="storageTypes=${@dict.getType('storageType')}"> <option value="">--请选择--</option> <option th:each="dict : ${storageTypes}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}"></option> </select> </li> <li > <span class="selectClass"><span class="color-red">*</span>入库场景:</span> <select id="inType" name="inType" class="form-control" th:with="receiptScenes=${@dict.getType('receiptScenes')}"> <option value="">--请选择--</option> <option th:each="dict : ${receiptScenes}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}"></option> </select> </li> <li > <span class="selectClass"><span class="color-red">*</span>电池类型: </span> <select id="batteryTypes" name="batteryTypes" class="form-control" th:with="batteryTypes=${@dict.getType('batteryTypes')}"> <option value="">--请选择--</option> <option th:each="dict : ${batteryTypes}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}"></option> </select> </li> <li > <span class="selectClass"><span class="color-red">*</span>完整程度:</span> <select id="completeness" name="completeness" class="form-control" th:with="completeness=${@dict.getType('completeness')}"> <option value="">--请选择--</option> <option th:each="dict : ${completeness}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}"></option> </select> </li> <li><span class="color-red">*</span>皮 重(kg):<input type="text" id="materialTareWeight"/><button class="btn btn-sm btn-success" onclick="getWeight(0)">取重</button></li> <li><span class="color-red">*</span>毛 重(kg): <input type="text" id="materialGrossWeight"/><button class="btn btn-sm btn-success" onclick="getWeight(1)">取重</button></li> <li><span class="color-red">*</span>净 重(kg):<input type="text" id="materialNetWeight"/></li> <li><span class="color-red">*</span>电 量: <input type="text" id="electricQuantity" placeholder="电池类必填"/></li> <li><span class="color-red">*</span>回 收 人 : <select type="text" id="recycler" th:with="completeness=${@UserServiceImpl.getRecover()}"> <option th:each="dict : ${completeness}" th:text="${dict.userName}" th:value="${dict.userName}"></option> </select></li> <li>国家编码: <input type="text" id="countryCode" placeholder="请用pda扫码获取"/></li> <li >电池包备注:<textarea style="height: 80px;width: 200px;vertical-align:middle;" id="remark" placeholder="备注"></textarea></li> <li><div class="form-group gallery" style="width:77%;white-space: nowrap" > <a href="" id="cameraId"> <img id="camera" name="camera" src="" width="100%" height="200px"/> </a> <button id="plc" name="plc" class="btn btn-danger btn-sm" type="button">电池拍照</button> </div></li> <!--<div class="form-group" style="width:300px;white-space: nowrap"> <img id="camera" name="camera" src="" width="300px" height="200px"/> </div> <div class="form-group" style="width:150px;margin: 0 auto;"> <button id="plc" name="plc" class="btn btn-danger" type="button">电池拍照</button> </div>--> <!--<li> <img id="camera" name="camera" src="" width="300px" height="200px"/> </li> <li> <div id="my_thumbnail" style="width:150px;height:150px;margin-left: 10px;margin-top:5px;"> </div> </li>--> </div> </ul> <div style="padding-left:37%;"> <button class="btn btn-danger" style="width:150px;" onclick="receipt()">组   盘</button> </div> </div> <div class="col-sm-12 table-striped-right" style="padding-top: 13px;"> <!--需要组盘入库明细 --> <table id="bootstrap-table" style="background: rgb(255, 255, 255);" data-mobile-responsive="true" class="table table-bordered table-hover text-nowrap"></table> </div> <div class="col-sm-12 select-info table-striped-bottom"> <div class="btn-group hidden-xs" id="toolbar1" role="group"> <a class="btn btn-outline btn-danger btn-rounded" onclick="batRemove()" shiro:hasPermission="receipt:receiptDetail:remove"> <i class="fa fa-trash-o"></i> 取消收货 </a> <a class="btn btn-outline btn-warning btn-rounded" onclick="createTask()" shiro:hasPermission="receipt:receiptContainer:add"> <i class="fa fa-edit"></i> 生成任务 </a> <a class="btn btn-outline btn-primary btn-rounded" href="/wms/task/taskHeader?InternalTaskType=100"> <i class="fa fa-edit"></i> 跳转任务 </a> <a class="btn btn-outline btn-primary btn-rounded" onclick="batteryPackagePrints()"> <i class="fa fa-edit"></i> 电池包打印 </a> </div> <table id="bootstrap-table1" data-mobile-responsive="true" class="table table-bordered table-hover text-nowrap"></table> <!-- <ul class="select-list top_text">--> <!-- <li><span class="table-title">本物料库存</span></li>--> <!-- </ul>--> <!-- <table id="bootstrap-table2" data-mobile-responsive="true"--> <!-- class="table table-bordered table-hover text-nowrap"></table>--> <!-- <ul class="select-list top_text">--> <!-- <li>空容器类型:<select name="type" id="containerType" th:with="typeList=${@containerType.getCode()}">--> <!-- <option value="">所有</option>--> <!-- <option th:each="c:${typeList}" th:text="${c['name']}" th:value="${c['code']}"></option>--> <!-- </select></li>--> <!-- <li>--> <!-- <button class="btn btn-sm btn-success" onclick="containerTypeSearch()">搜索</button>--> <!-- </li>--> <!-- </ul>--> <!-- <table id="bootstrap-table3" data-mobile-responsive="true"--> <!-- class="table table-bordered table-hover text-nowrap"></table>--> </div> </div> </div> <div th:include="include :: footer"></div> <script th:src="@{/webjars/sockjs-client/1.0.2/sockjs.min.js}"></script> <script th:src="@{/webjars/stomp-websocket/2.3.3/stomp.min.js}"></script> <script th:src="@{/js/websocket.js}"></script> <th:block th:include="include :: bootstrap-baguetteBox-js" /> <th:block th:include="include :: thumbnail_customized-js" /> <script th:inline="javascript"> var addFlag = [[${@permission.hasPermi('receipt:receiving:add')}]]; var removeFlag = [[${@permission.hasPermi('receipt:receiving:remove')}]]; var prefix = ctx + "receipt/receiving"; var Types = [[${@dict.getType('taskType')}]]; var Status=[[${@dict.getType('receiptContainerHeaderStatus')}]]; var inventoryStatus =[[${@dict.getType('inventoryStatus')}]]; var batteryTypes = [[${@dict.getType('batteryTypes')}]]; var batteryPackType = [[${@dict.getType('batteryPackType')}]]; var supplier =[[${@SupplierService.getCode()}]]; var completeness = [[${@dict.getType('completeness')}]]; connect(); $(function () { $("#bootstrap-table3").bootstrapTable({ url: ctx+'config/container/emptyContainer', iconSize: "outline", modalName: "空盒", pagination: true, // 是否显示分页(*) pageNumber: 1,// 初始化加载第一页,默认第一页 method: 'post', pageSize: 5, // 每页的记录行数(*) showRefresh: true, pageList: [10, 25, 50], contentType: "application/x-www-form-urlencoded", columns: [{ field : 'code', title : '容器编号' },{ field : 'locationCode', title : '库位编号' }] }); initData(); }); function initData(){ let weightData = {"useArea":"batteryFlag"} let config2 = { url: ctx+'config/serialPorts/getInfo', type: "POST", dataType: "json", data: weightData, success: function (result) { if(result.code==web_status.SUCCESS){ $("#url").val(result.data.url); $("#baudrate").val(result.data.baudrate); $("#comm").val(result.data.currCom); } } }; $.ajax(config2) } /*function showGreeting(message) { $("#greetings").append("<tr><td>" + message + "</td></tr>"); }*/ // 收货显示的数据 function list_select(code) { $.ajax({ url: prefix + "/scanBill", type: 'post', datatype: 'json', data: { code: code }, error:function (response) { //console.log(response); }, success: function (value) { var qty_show=0; var qtyCompleted_show=0; $("#bootstrap-table").bootstrapTable('removeAll'); if(value.data){ for (var i = 0; i < value.data.length; i++) { if (value.data[i].totalQty > value.data[i].openQty || value.data[i].totalWeight > value.data[i].openWeight) { $("#bootstrap-table").bootstrapTable('insertRow', { index: 0, row: { projectNo:value.data[i].project, id: value.data[i].id, materialName: value.data[i].materialName, receiptId: value.data[i].receiptId, receiptCode: value.data[i].receiptCode, materialCode: value.data[i].materialCode, totalQty: value.data[i].totalQty, openQty: value.data[i].openQty, totalWeight: value.data[i].totalWeight, openWeight: value.data[i].openWeight, inventorySts: value.data[i].inventorySts, materialUnit: value.data[i].materialUnit, electricQuantity: value.data[i].electricQuantity, batteryPackageWeight: value.data[i].batteryPackageWeight, } }); } qty_show=value.data[i].totalQty + qty_show; qtyCompleted_show=value.data[i].openQty + qtyCompleted_show; } $("#material_length").text(value.data.length); $("#qty_length").text(qty_show); $("#qtyCompleted_length").text(qtyCompleted_show); } else { $.modal.alertError(value.msg) } } }) } function list_receiptInfo(code) { $.ajax({ url: prefix + "/getReceiptInfoByBill", type: 'post', datatype: 'json', data: { code: code }, error:function (response) { console.log(response); }, success: function (value) { $("#bootstrap-table1").bootstrapTable('removeAll'); if(value.data){ $("#bootstrap-table1").bootstrapTable('load',value.data); /*for (var i = 0; i < value.data.length; i++) { $("#bootstrap-table1").bootstrapTable('insertRow', { index: 0, row: { projectNo :value.data[i].projectNo, id: value.data[i].id, receiptContainerId:value.data[i].receiptContainerId, receiptDetailId:value.data[i].receiptDetailId, containerCode: value.data[i].containerCode, locationCode: value.data[i].locationCode, materialCode: value.data[i].materialCode, materialName: value.data[i].materialName, materialSpec: value.data[i].materialSpec, sn:value.data[i].sn, taskType:value.data[i].taskType, qty: value.data[i].qty, weights: value.data[i].weights, status: value.data[i].status, created: value.data[i].created, createdBy: value.data[i].createdBy, electricQuantity: value.data[i].electricQuantity, batteryPackTwoCode: value.data[i].batteryPackTwoCode, materialIsBattery: value.data[i].materialIsBattery, batteryPackageWeight: value.data[i].batteryPackageWeight } }); }*/ } else { console.log("没有查找到入库容器!") } } }) } $("#list-btn").click(initTable); $("body").bind("keypress",function(e){ // 兼容FF和IE和Opera var theEvent = e || window.event; var code = theEvent.keyCode || theEvent.which || theEvent.charCode; if (code == 13) { e.preventDefault(); //回车执行查询 initTable(); // list_select($("#code").val()); } }); function initTable(){ var receiptCode=$("#code").val(); list_select(receiptCode); list_receiptInfo(receiptCode); $("#bootstrap-table1").bootstrapTable('removeAll'); $("#bootstrap-table2").bootstrapTable('removeAll'); } //点击将值赋值到文本框 $("#bootstrap-table").bootstrapTable({ // url: prefix + "/list", createUrl: prefix + "/add", updateUrl: prefix + "/edit/{id}", removeUrl: prefix + "/remove", contentType: "application/x-www-form-urlencoded", clickToSelect: true, modalName: "收货", pagination: true, // 是否显示分页(*) pageNumber: 1, // 初始化加载第一页,默认第一页 pageSize: 10, // 每页的记录行数(*) pageList: [10, 25, 50, 100], // 可供选择的每页的行数(*) onRefresh: function(){ }, onClickRow:function(row,ele,field){ let code=$("#code").val(); $("#detailId").val(row.id); $("#receiveNum").val(row.totalQty-row.openQty); $("#receiveWeight").val(row.totalWeight-row.openWeight) $("#materialCode").val(row.materialCode); //console.log(row) if(row.materialCode.startsWith("196")){ $("#batteryHidden").show(); $("#receiveNum").val(1); $("#barhidden").hide(); }else{ $("#batteryHidden").hide(); $("#barhidden").show(); } $.ajax({ url:prefix+'/getInventoryInfo', type:'post', data:{ code:code, id:row.id }, success:res=>{ // $("#bootstrap-table1").bootstrapTable('load',res.data.list); $("#bootstrap-table2").bootstrapTable('load',res.data.inventoryList); $("#storageType").val(res.data.curBill.storageType) $("#type").val(res.data.curBill.type) $("#batteryTypes").val(res.data.curBill.batteryTypes) $("#completeness").val(res.data.curBill.completeness) // $("#bootstrap-table3").bootstrapTable('load',res.data.containerList); } }) }, columns: [ // { // field : 'id', // title : 'id号' // }, // { // field : 'receiptCode', // title : '收货单编码' // }, { field : 'materialIsBattery', title : '是否电池', visible: false }, { field : 'id', title : '明细id' }, { field : 'materialCode', title : '物料编码' }, { field: "materialName", title: "名称" }, { field : 'totalQty', title : '单据数量' }, { field : 'openQty', title : '已入数量' }, { field : 'electricQuantity', title : '电池包电量' }, { field : 'inventorySts', title : '库存状态' }, { field : 'projectNo', title : '项目号' }, { field : 'materialUnit', title : '单位' }, ] }); $("#bootstrap-table1").bootstrapTable({ removeUrl: ctx + "receipt/receiptContainerDetail/remove", // search: true, //搜索 showRefresh: true, //刷新 showToggle:true, //视图切换 clickToSelect: true, showColumns:true, //列选择 // detailView:true, toolbar: "#toolbar1", showExport: true, //导出 exportDataType: "all", //导出类型basic', 'all', 'selected'.当前页、所有数据、选中数据 modalName: "入库组盘", iconSize: "outline", toolbar: "#toolbar1", contentType: "application/x-www-form-urlencoded", onRefresh: function(){ list_receiptInfo($("#code").val()); }, columns: [ { checkbox: true, }, { title: '操作', align: 'center', events:'operateEvents', formatter: function(value, row, index) { var actions = []; if (row.status == 0) { actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>取消</a>'); } //console.log(row ) if (row.batteryPackTwoCode !=''&&row.batteryPackTwoCode !=undefined) { actions.push('<a class="btn btn-danger btn-xs" href="#" onclick="batteryPackagePrint(\'' + row.id + '\')"><i class="fa fa-edit"></i>打印</a>'); } return actions.join(''); } }, { field : 'status', title : '组盘状态', align: 'center', formatter: function(value, row, index) { return $.table.selectDictLabel(Status, value); } }, { field : 'batteryPackTwoCode', title : '电池包二维码' }, { field : 'containerCode', title : '容器编号', visible: false }, { field : 'id', title : '组盘明细id', visible: false }, { field : 'receiptContainerId', title : '组盘头id', visible: false }, { field : 'materialCode', title : '物料编码' }, { field:"materialName", title:"物料名称" }, { field:"materialSpec", title:"物料规格" }, { field: 'materialUnit', title: '物料单位' }, { field : 'qty', title : '数量' }, { field : 'electricQuantity', title : '电池包电量' }, { field : 'supplierCode', title : '供应商', align: 'center', formatter: function(value, row, index) { var actions = []; $.each(supplier, function(index, dict) { if (dict.code == value) { actions.push("<span class='badge badge-info'>" + dict.name + "</span>"); return false; } }); return actions.join(''); } }, { field : 'materialBatch', title : '原料批号', }, { field : 'completeness', title : '完整程度', formatter: function(value, row, index) { return $.table.selectDictLabel(completeness, value); } }, { field : 'batteryTypes', title : '电池产品类型', formatter: function(value, row, index) { return $.table.selectDictLabel(batteryTypes, value); } }, { field : 'batteryPackType', title : '电池包种类', align: 'center', visible:true, formatter: function(value, row, index) { return $.table.selectDictLabel(batteryPackType, value); } }, { field : 'poundCode', title : '过磅单号' , }, { field : 'recycler', title : '回收人' , }, { field : 'countryCode', title : '国家编码' , }, { field : 'materialGrossWeight', title : '电池毛重(kg)' , }, { field : 'materialTareWeight', title : '电池皮重(kg)' , }, { field : 'materialNetWeight', title : '电池净重(kg)' , }, { field : 'remark', title : '电池包入库备注' , }, { field : 'receiptDetailId', title : '入库单明细id' }, { field : 'created', title : '创建时间' }, { field : 'createdBy', title : '创建人' }] }); $("#bootstrap-table2").bootstrapTable({ removeUrl: ctx + "receipt/receiptContainerDetail/remove", clickToSelect: true, showColumns:true, //列选择 showExport: true, //导出 iconSize: "outline", toolbar: "#toolbar", exportDataType: "all", //导出类型basic', 'all', 'selected'.当前页、所有数据、选中数据 modalName: "入库组盘", pagination: true, // 是否显示分页(*) pageNumber: 1, // 初始化加载第一页,默认第一页 pageSize: 5, // 每页的记录行数(*) pageList: [10, 25, 50], contentType: "application/x-www-form-urlencoded", columns: [ { field : 'containerCode', title : '容器编号' }, { field : 'electricQuantity', title : '电池包电量' }, { field : 'materialCode', title : '存货编码' }, { field : 'materialName', title : '物料名称' }, { field : 'materialSpec', title : '物料规格' }, { field : 'qty', title : '数量' }, // { // field : 'sn', // title : '序列号' // }, { field : 'companyName', title : '货主' }, { field : 'locationCode', title : '库位编号' }, { field : 'status', title : '库存状态' , align: 'center', formatter: function(value, row, index) { return $.table.selectDictLabel(inventoryStatus, value); } }, ] }); window.operateEvents = { 'click #qty': function (e, value, row, index) { var url = prefix + '/add?'; jQuery.each(row, function(key, val) { url = url + key + "=" + encodeURI(val) + "&"; }); var modalName="入库组盘"; $.modal.open("添加"+modalName,url); } }; function receiving_refresh() { var receiving_code = localStorage.getItem("receiving_code"); $("#code").val(receiving_code); if (receiving_code) { initTable(); } localStorage.removeItem("receiving_code"); } receiving_refresh(); function remove(id) { $.modal.confirm("确定删除该组盘?", function() { var url = ctx + "receipt/receiptContainerDetail/remove"; var data = { "ids": id }; $.operate.submitAndCallback(url, "post", "json", data, initTable); }); } function positioning() { let rows = $("#bootstrap-table1").bootstrapTable('getSelections'); if (rows.length == 0) { $.modal.alertWarning("请至少选择一条记录"); return; } var url = ctx+"receipt/receiptContainerHeader/position"; var ids = ""; for (var i = 0; i<rows.length; i++){ ids += rows[i].receiptContainerId; ids += ","; } var data = { "ids": ids }; $.modal.loading("正在处理中,请稍后..."); var config = { url: url, type: "post", dataType: "json", data: data, success: function(result) { $.operate.ajaxSuccess(result); list_receiptInfo($("#code").val()); } }; $.ajax(config) $.table.refresh("bootstrap-table1"); } function refresh() { var receiptCode=$("#code").val(); list_select(receiptCode); list_receiptInfo(receiptCode); $("#bootstrap-table1").bootstrapTable('removeAll'); $("#bootstrap-table2").bootstrapTable('removeAll'); } function cancelPositioning() { let rows = $("#bootstrap-table1").bootstrapTable('getSelections'); if (rows.length == 0) { $.modal.alertWarning("请至少选择一条记录"); return; } var url = ctx+"receipt/receiptContainerHeader/cancelPosition"; var ids = ""; for (var i = 0; i<rows.length; i++){ ids += rows[i].receiptContainerId; ids += ","; } var data = { "ids": ids }; $.modal.loading("正在处理中,请稍后..."); var config = { url: url, type: "post", dataType: "json", data: data, success: function(result) { $.operate.ajaxSuccess(result); list_receiptInfo($("#code").val()); } }; $.ajax(config) $.table.refresh("bootstrap-table1"); } function batRemove() { let rows = $("#bootstrap-table1").bootstrapTable('getSelections'); if (rows.length == 0) { $.modal.alertWarning("请至少选择一条记录"); return; } var url = ctx+"receipt/receiptContainerDetail/remove"; var ids = ""; for (var i = 0; i<rows.length; i++){ ids += rows[i].id; ids += ","; } var data = { "ids": ids }; var config = { url: url, type: "post", dataType: "json", data: data, success: function(result) { $.operate.ajaxSuccess(result); list_receiptInfo($("#code").val()); list_select($("#code").val()); } }; $.ajax(config); $.table.refresh("bootstrap-table1"); } /** * 取重接口 * 调用连接称重电脑的接口 */ function getWeight(num){ let currCom = $("#comm").val(); let baudrate = $("#baudrate").val(); let url = $("#url").val(); if(url==''){ $.modal.msgError("物料称重地磅地址为空,请先配置地磅地址!") return; } if(currCom==''){ $.modal.msgError("物料称重地磅串口为空,请先指定串口!") return; } if(baudrate==''){ $.modal.msgError("物料称重地磅波特率为空,请先指定波特率!") return; } // let url='http://10.34.101.77:8888/wms/API/WMS/v2/getWeightForSerial'; let type = "POST"; let dataType = "json"; let data = {"comm":currCom,"baudrate":baudrate}; let config = { url: url, type: type, // timeout:2000, dataType: dataType, data: data, // beforeSend: function () { // $.modal.loading("正在处理中,请稍后..."); // }, success: function (result) { if(result.code==web_status.SUCCESS){ if(num==0){ $("#materialTareWeight").val(result.data) $.operate.ajaxSuccess(result); }else{ $("#materialGrossWeight").val(result.data) $.operate.ajaxSuccess(result); } } }, error: function(data) { console.log(data); }, ontimeout: function (){ $.modal.msgError("串口超时。。。"); } }; $.ajax(config) } document.getElementById("plc") .addEventListener("click", function() { $.ajax({ cache : false, type : "POST", url : ctx + "API/WMS/v2/cameraLogin", dataType: 'json', data : { "cameraId": "3" }, async : false, error : function(request) { $.modal.alertError("请求失败!"); }, success : function(result) { if (result.code == web_status.SUCCESS) { getData(); $.modal.msgSuccess(result.msg); }else{ $.modal.alertError(result.data); } } }); }); function getData(){ let url = "/wms/img/Capture/material.jpg?" + Date.parse(new Date()); if (!CheckImgExists(url)) { window.setTimeout(function(){getData();},2000); }; $("#camera").attr('src',url); $("#cameraId").attr('href',url); baguetteBox.run('.gallery'); } //判断图片是否存在 function CheckImgExists(imgurl) { var ImgObj = new Image(); //判断图片是否存在 ImgObj.src = imgurl; //没有图片,则返回-1 if (ImgObj.fileSize > 0 || (ImgObj.width > 0 && ImgObj.height > 0)) { return true; } else { return false; } } /** * 组盘 */ function receipt() { let containerCode = $("#containerCode").val(); let locationCode = $("#locationCoder").val(); let barCodeHeaderCode = $("#barCodeHeaderCode").val(); Receiving(locationCode, containerCode,barCodeHeaderCode); } /** * 组盘 * @param locationCode * @param containerCode */ function Receiving(locationCode,containerCode,barCodeHeaderCode) { let receiptCode=$("#code").val(); let num=$("#receiveNum").val(); let receiptDetailId=$("#detailId").val(); let weights = $("#receiveWeight").val(); let locationCoder = $("#locationCoder").val(); let barCodeHeaderId = $("#barCodeHeaderId").val(); let batteryPackType = $("#batteryPackType").val(); let batteryTypes = $("#batteryTypes").val(); let completeness = $("#completeness").val(); let electricQuantity = $("#electricQuantity").val(); let storageType = $("#storageType").val(); let type = $("#type").val(); let countryCode = $("#countryCode").val(); let remark = $("#remark").val(); let area = $("#area").val(); let inType = $("#inType").val(); let materialTareWeight = $("#materialTareWeight").val(); let materialGrossWeight = $("#materialGrossWeight").val(); let materialNetWeight = $("#materialNetWeight").val(); let recycler = $("#recycler").val(); let batteryPath=$("#camera")[0].src; if(batteryPath.indexOf("jpg")<=-1){ batteryPath=''; } /*let materialCode = $("#materialCode").val(); if(materialCode.startsWith("196")&&barCodeHeaderId==''){ if(num) }*/ //console.log(materialCode) $.ajax({ url:ctx + "receipt/receiving/save", type:'post', data:{ receiptCode:receiptCode, qty: num, receiptDetailId:receiptDetailId, locationCode:locationCoder, // locationCoder:locationCoder, containerCode:containerCode, barCodeHeaderCode:barCodeHeaderCode, barCodeHeaderId:barCodeHeaderId, batteryPackType:batteryPackType, batteryTypes:batteryTypes, completeness:completeness, electricQuantity:electricQuantity, batteryQty:num, weights:weights, materialTareWeight:materialTareWeight, materialGrossWeight:materialGrossWeight, materialNetWeight:materialNetWeight, recycler:recycler, storageType:storageType, type:type, countryCode:countryCode, remark:remark, area:area, inType:inType, batteryPath:batteryPath, }, success:function (data) { if(data.code===200){ $.modal.msgSuccess('成功'); $("#countryCode").val(''); $("#camera").attr("src", ''); $("#containerCode").val(''); initTable(); } else{ $.modal.msg(data.msg); } } }) } function chooseStation(id) { var url = ctx + "receipt/receiptContainerHeader/chooseStation" + "/" + id; $.modal.open("选择站台", url); } function createTask() { let rows=$("#bootstrap-table1").bootstrapTable('getSelections'); if (rows.length == 0) { $.modal.alertWarning("请至少选择一条记录"); return; } // if(rows[0].taskType == 200) { // let ids = ""; // for(let i=0; i<rows.length; i++) { // if(ids == "") { // ids = rows[i].receiptContainerId; // } else { // ids = ids + "," + rows[i].receiptContainerId // } // } // // chooseStation(ids); // } else { let url = ctx + "receipt/receiptContainerHeader/createTask"; let ids = ""; for(let i=0; i<rows.length; i++) { ids = ids + rows[i].receiptContainerId + "," } let data = { "ids": ids.substring(0, ids.length-1) }; $.modal.loading("正在处理中,请稍后..."); var config = { url: url, type: "post", dataType: "json", data: data, success: function(result) { if (result.code == web_status.SUCCESS) { $.modal.msgSuccess(result.msg); $.table.refresh("bootstrap-table1"); } else { $.modal.alertError(result.msg); } $.modal.closeLoading(); } }; $.ajax(config) // } } function containerTypeSearch() { var params = { query:{containerType:$("#containerType").val()} } $("#bootstrap-table3").bootstrapTable('refresh',params); } //选择主条码 function selectCode(){ var url = ctx + "receipt/receiving/listBarCodeHeaderCode"; $.modal.open("选择托盘号", url); } function batteryPackagePrint(id){ var url = ctx + "receipt/receiptContainerDetail/reportBatteryPackage/" + id; $.modal.open("入库电池包打印" , url); } function batteryPackagePrints(){ var rows=$("#bootstrap-table1").bootstrapTable('getSelections'); if (rows.length == 0) { $.modal.alertWarning("请至少选择一条记录"); return; } var ids = ""; for(var i=0; i<rows.length; i++) { ids = ids + rows[i].id + "," } var url = ctx + "receipt/receiptContainerDetail/reportBatteryPackage/" + ids; $.modal.open("入库电池包打印" , url); } $("#materialGrossWeight").blur(function(){ console.log($("#materialTareWeight").val()) if($("#materialTareWeight").val()!=''){ let total = numMinus($("#materialGrossWeight").val(),$("#materialTareWeight").val()) $("#materialNetWeight").val(total) }else{ $("#materialNetWeight").val() } }) $("#materialTareWeight").blur(function(){ if($("#materialGrossWeight")!=''){ let total = numMinus($("#materialGrossWeight").val(),$("#materialTareWeight").val()) $("#materialNetWeight").val(total) }else{ $("#materialNetWeight").val() } }) function numMinus(num1, num2) { var baseNum, baseNum1, baseNum2; try { baseNum1 = num1.toString().split(".")[1].length; } catch (e) { baseNum1 = 0; } try { baseNum2 = num2.toString().split(".")[1].length; } catch (e) { baseNum2 = 0; } baseNum = Math.pow(10, Math.max(baseNum1, baseNum2)); return (num1 * baseNum - num2 * baseNum) / baseNum; }; function DBShowCamera(){ // open } </script> </body> </html>