万材erp项目
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

916 lines
38 KiB

<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
<th:block th:include="include :: header('修改制工')" />
<th:block th:include="include :: datetimepicker-css" />
<link th:href="@{/ajax/libs/select2/select2.css}" rel="stylesheet">
<link th:href="@{/ajax/libs/select2/select2-bootstrap.css}" rel="stylesheet">
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-workorderhead-edit" th:object="${workorderhead}">
<input name="poId" th:field="*{poId}" type="hidden">
<div class="form-group">
<label class="col-sm-3 control-label is-required">订单号:</label>
<div class="col-sm-8">
<input name="poNo" th:field="*{poNo}" class="form-control" type="text" required>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">#line:</label>
<div class="col-sm-8">
<input name="piNo" th:field="*{piNo}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label is-required">工单号:</label>
<div class="col-sm-8">
<input name="workNo" th:field="*{workNo}" class="form-control" type="text" readonly>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label is-required">客户名称:</label>
<div class="col-sm-8">
<select name="pName" class="form-control m-b">
<option value="-1">--请选择--</option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label is-required">客户代码:</label>
<div class="col-sm-8">
<select name="pCode" class="form-control m-b" disabled>
<option value="-1">--请选择--</option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">成品代码:</label>
<div class="col-sm-8">
<input name="cpCode" th:field="*{cpCode}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">成品名称:</label>
<div class="col-sm-8">
<input name="cpName" type="text" class="form-control" th:field="*{cpName}">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">开工日期:</label>
<div class="col-sm-8">
<div class="input-group">
<input name="beginDate" th:value="${#dates.format(workorderhead.beginDate, 'yyyy-MM-dd')}" class="form-control time-input" placeholder="yyyy-MM-dd" type="text">
<span class="input-group-addon"><i class="fa fa-calendar"></i></span>
</div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">完工日期:</label>
<div class="col-sm-8">
<div class="input-group">
<input name="endDate" th:value="${#dates.format(workorderhead.endDate, 'yyyy-MM-dd')}" class="form-control time-input" placeholder="yyyy-MM-dd" type="text">
<span class="input-group-addon"><i class="fa fa-calendar"></i></span>
</div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">开单日期:</label>
<div class="col-sm-8">
<div class="input-group">
<input name="poDate" th:value="${#dates.format(workorderhead.poDate, 'yyyy-MM-dd')}" class="form-control time-input" placeholder="yyyy-MM-dd" type="text" disabled>
<span class="input-group-addon"><i class="fa fa-calendar"></i></span>
</div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label is-required">交货日期:</label>
<div class="col-sm-8">
<div class="input-group">
<input name="sendDate" th:value="${#dates.format(workorderhead.sendDate, 'yyyy-MM-dd')}" class="form-control time-input" placeholder="yyyy-MM-dd" type="text">
<span class="input-group-addon"><i class="fa fa-calendar"></i></span>
</div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">规格型号:</label>
<div class="col-sm-8">
<input name="cpType" th:field="*{cpType}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">机种:</label>
<div class="col-sm-8">
<input type="text" name="cpMachineno" class="form-control" th:field="*{cpMachineno}">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">单位:</label>
<div class="col-sm-8">
<input name="cpDw" th:field="*{cpDw}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label is-required">订单数量:</label>
<div class="col-sm-8">
<input name="cpQty" th:field="*{cpQty}" class="form-control" type="text" required>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label is-required">投单数量:</label>
<div class="col-sm-8">
<input name="ylCpQty" th:field="*{ylCpQty}" class="form-control" type="text" required>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">成品版本号:</label>
<div class="col-sm-8">
<input name="versionNo" th:field="*{versionNo}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">客户厂区:</label>
<div class="col-sm-8">
<input name="Factory" th:field="*{Factory}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">备注内容:</label>
<div class="col-sm-8">
<textarea name="bzMemo" class="form-control">[[*{bzMemo}]]</textarea>
</div>
</div>
</form>
</div>
<div class="col-sm-12">
<label>版本号:</label>
<input type="text" name="versionNo" class="form-control" placeholder="请输入版本号" style="margin-bottom: 15px">
<button type="button" class="btn btn-success" id="bomTableSearch">搜索</button>
<button type="button" class="btn btn-success" onclick="bomTableReset()">重置</button>
<div class="col-sm-12 select-table table-striped" style="padding-bottom: 100px;">
<table id="bootstrap-table"></table>
</div>
</div>
<div class="col-sm-12" style="text-align: center">
<button type="button" class="btn btn-success" style="margin-top: 20px"
onclick="addBom()">确定
</button>
</div>
<div class="col-sm-12 select-table table-striped" style="padding-bottom: 100px;">
<table id="selectBomTable"></table>
</div>
<!--弹出框-->
<div class="modal inmodal" id="saleOrderModal" tabindex="-1"
role="dilog" aria-hidden="true" style="padding-bottom: 100px;">
<div class="modal-dialog" style="width: 800px">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"
aria-hidden="true"></button>
<h4 class="modal-title">选择订单</h4>
</div>
<div class="modal-body" style="text-align: center;">
<div class="row">
<div class="col-md-5">
<form id="saleOrderForm" class="form-group">
<label class="control-label col-md-4">订单号:</label>
<div class="col-md-8">
<input type="text" class="form-control" name="SaleorderNO"
id="SaleorderNO">
</div>
</form>
</div>
<div class="col-md-2">
<button type="button" class="btn btn-success" id="saleOrderNoSearch">搜索</button>
</div>
<div class="col-md-2">
<button type="button" class="btn btn-success" id="reset" onclick="reset()">重置</button>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="table-responsive">
<table id="saleOrderTable"
class="table table-striped table-responsive" style="padding-bottom: 50px;">
</table>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary"
onClick="confirm();">确定
</button>
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
<th:block th:include="include :: footer" />
<th:block th:include="include :: datetimepicker-js" />
<script th:src="@{/ajax/libs/select2/select2.js}"></script>
<script th:inline="javascript">
var prefix = ctx + "produce/workorderhead";
$("#form-workorderhead-edit").validate({
focusCleanup: true
});
function submitHandler() {
// if ($.validate.form()) {
// $.operate.save(prefix + "/edit", $('#form-workorderhead-edit').serialize());
// }
submit();
}
function submit() {
let selectBomTable = $("#selectBomTable").bootstrapTable("getData", true);
let formData = new FormData($("#form-workorderhead-edit")[0]);
formData.append("workorderLists", JSON.stringify(selectBomTable));
let data = {};
formData.forEach((value, key) => data[key] = value);
//alert(JSON.stringify(data));
$.ajax({
url: prefix + "/edit",
type: "post",
resultType: "json",
data: {"jsonStr": JSON.stringify(data)},
success: function (resp) {
if (resp.code === 0) {
alert("修改成功!");
//window.location.href = prefix;
var index = parent.layer.getFrameIndex(window.name);
var parent2 = window.parent;
parent2.$.table.refresh();
parent.layer.close(index);//关闭当前页
} else {
$.modal.msgError(resp.msg);
}
},
error: function () {
$.modal.msgError("出错了!");
}
});
}
//鼠标移入,显示完整的数据
function paramsMatter(value, row, index) {
var span = document.createElement("span");
span.setAttribute("title", value);
span.innerHTML = value;
return span.outerHTML;
}
let getData = [[${workorderhead}]];
//获取客户代码和名称
$.ajax({
url: ctx + "finance/customer/getName",
type: "post",
dataType: "json",
success: function (resp) {
if (resp.code === 0) {
if (resp.data.length > 0) {
$("select[name='pName']").empty();
$("select[name='pCode']").empty();
let data = resp.data;
//alert(data);
for (let i in data) {
$("select[name='pName']").append("<option value='" + data[i].pName + "'>" + data[i].pName + "</option>");
$("select[name='pCode']").append("<option value='" + data[i].pCode + "'>" + data[i].pCode + "</option>");
}
$("select[name='pName']").val(getData.pName).trigger("change");
}
} else {
$.modal.msgError(resp.msg);
}
},
error: function () {
$.modal.msgError("出错啦!");
}
})
//更改客户名称时改变客户代码
$("select[name='pName']").change(function () {
let pName = $(this).val();
$.ajax({
url: ctx + "finance/customer/item",
type: "post",
dataType: "json",
data: {"pName": pName},
success: function (resp) {
if (resp.code === 0) {
$("select[name='pCode']").val(resp.data[0].pCode).trigger("change");
} else {
$.modal.msgError(resp.msg);
}
},
error: function () {
$.modal.msgError("出错啦!");
}
})
})
//显示弹层
$("input[name='poNo']").on("click", function () {
$("#saleOrderModal").modal("show");
})
//重置
function reset() {
$("#SaleorderNO").val("");
$("#saleOrderTable").bootstrapTable("refresh");
}
//搜索销售列表
$("#saleOrderNoSearch").on("click", function () {
$("#saleOrderTable").bootstrapTable("refresh");
})
//bom表格重置
function bomTableReset() {
//$("#bootstrap-table").innerHtml("");
$("#bootstrap-table").bootstrapTable("removeAll");
$("input[name='versionNo']").val("");
selectDataToBom(wlCode);
}
//搜索bom表格
$("#bomTableSearch").on("click", function () {
$("#bootstrap-table").bootstrapTable("removeAll");
selectDataToBom(wlCode);
})
//点击选中销售订单
let wlCode = null;
//进去展示bom数据
wlCode = $("input[name='cpCode']").val()
selectDataToBom(wlCode);
//进去展示制工单子表数据
function showWorkOrderList(){
let poId=$("input[name='workNo']").val();
$.ajax({
url:ctx+"produce/list/getList",
type:"post",
dataType:"json",
data:{"poId":poId},
success: function (resp) {
if (resp.code === 0) {
let data = resp.data;
let count = $('#selectBomTable').bootstrapTable('getData').length;
for (let i in data) {
$("#selectBomTable").bootstrapTable('insertRow', {
index: count + i,
row: {
versionNo: data[i].versionNo,
wlCode: data[i].wlCode,
itemname: data[i].itemname,
itemstandard: data[i].itemstandard,
useNum: data[i].useNum,
lostpre: data[i].lostpre,
zpGuige: data[i].zpGuige,
memolist: data[i].memoList,
stockDw: data[i].stockDw
}
});
}
} else {
$.modal.msgError(resp.msg);
}
},
error: function () {
$.modal.msgError("出错啦!");
}
})
}
showWorkOrderList();
function confirm() {
$("#bootstrap-table").bootstrapTable("removeAll");
let row = $("#saleOrderTable").bootstrapTable("getSelections");
//alert(JSON.stringify(row));
if (row.length != 0) {
$("input[name='poNo']").val(row[0].saleorderNO);
$("input[name='piNo']").val(row[0].piNo);
$("input[name='sendDate']").val(row[0].sendDate);
$("select[name='pName']").val(row[0].pName).trigger("change");
$("input[name='cpCode']").val(row[0].wlCode);
$("input[name='cpName']").val(row[0].itemname);
$("input[name='Factory']").val(row[0].factory);
$("input[name='cpQty']").val(parseInt(row[0].qty) - parseInt(row[0].orderQty));
$.ajax({
url: ctx + "finance/saleorderlist/item",
type: "post",
dataType: "json",
data: {"SaleOrderID": row[0].saleorderNO, "wlCode": row[0].wlCode},
async: false,
success: function (resp) {
if (resp.code === 0) {
let data = resp.data;
//alert(JSON.stringify(data));
$("input[name='cpType']").val(data[0].itemstandard);
$("input[name='cpMachineno']").val(data[0].machineNo);
$("input[name='cpDw']").val(data[0].stockDw);
wlCode = data[0].wlCode;
selectDataToBom(wlCode);
} else {
$.modal.msgError(resp.msg);
}
},
error: function () {
$.modal.msgError("出错啦!");
}
});
reset();
}
$("#saleOrderModal").modal("hide");
}
//将选中的bom引入待确认bom表格
function addBom() {
let row = $("#bootstrap-table").bootstrapTable("getSelections");
let count = $('#selectBomTable').bootstrapTable('getData').length;
for (let i = 0; i < row.length; i++) {
let bootstrapTable = $("#selectBomTable").bootstrapTable("getRowByUniqueId", row[i].zpGuige);
//alert(bootstrapTable);
if (bootstrapTable != null) {
alert("供应商料号" + bootstrapTable.zpGuige + "已存在!");
continue;
}
$("#selectBomTable").bootstrapTable('insertRow', {
index: count + i,
row: {
wlCode: row[i].wlCode,
itemname: row[i].itemname,
itemstandard: row[i].itemstandard,
stockDw: row[i].stockDw,
useNum: 0,
zpGuige: row[i].zpGuige,
memolist: row[i].memolist
}
});
}
bomTableReset();
}
//将查询到的数据放入bom表格
function selectDataToBom(wlCode) {
let versionNo = $("#versionNo").val();
//alert(versionNo);
$.ajax({
url: ctx + "ck/bom/list",
type: "post",
dataType: "json",
data: {"versionNo": versionNo, "cpCode": wlCode},
success: function (resp) {
if (resp.code === 0) {
let data = resp.rows;
let count = $('#bootstrap-table').bootstrapTable('getData').length;
for (let i in data) {
$("#bootstrap-table").bootstrapTable('insertRow', {
index: count + i,
row: {
versionNo: data[i].versionNo,
wlCode: data[i].wlCode,
itemname: data[i].itemname,
itemstandard: data[i].itemstandard,
useNum: data[i].useNum,
lostpre: data[i].lostpre,
zpGuige: data[i].zpGuige,
memolist: data[i].memolist,
stockDw: data[i].stockDw,
bomHierarchy: data[i].bomHierarchy
}
});
}
} else {
$.modal.msgError(resp.msg);
}
},
error: function () {
$.modal.msgError("出错啦!");
}
})
}
//移除待提交bom表格的对应行数据
function remove(zpGuige) {
$("#selectBomTable").bootstrapTable("remove", {
field: 'zpGuige',
values: zpGuige
});
}
//bom表格
$('#bootstrap-table').bootstrapTable({
striped: true, // 是否显示行间隔色
cache: false, // 是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
// contentType :"application/x-www-form-urlencoded",
// pageNumber : 1, // 初始化加载第一页,默认第一页
// pageSize : 10, // 每页的记录行数(*)
// pageList : [ 5, 10,50], // 可供选择的每页的行数(*)
// clickToSelect : true, // 是否启用点击选中行
showToggle: false, // 是否显示详细视图和列表视图的切换按钮
cardView: false, // 是否显示详细视图
detailView: false, // 是否显示父子表
smartDisplay: false, // 加了这个才显示每页显示的行数
showExport: false, // 是否显示导出按钮
// singleSelect: true,
height: 400,
columns: [{
checkbox: true
},
{
field: 'bomHierarchy',
title: 'bom阶',
// visible: false
},
{
field: 'versionNo',
title: '版本号',
// visible: false
},
{
field: 'wlCode',
title: '原料基本码',
cellStyle: function (value, row, index) {
return {
css: {
"min-width": "80px",
"text-overflow": "ellipsis",
"overflow": "hidden",
"max-width": "100px",
"white-space": "nowrap"
}
}
},
formatter: paramsMatter
},
{
field: 'itemname',
title: '原料名称',
cellStyle: function (value, row, index) {
return {
css: {
"min-width": "80px",
"text-overflow": "ellipsis",
"overflow": "hidden",
"max-width": "100px",
"white-space": "nowrap"
}
}
},
formatter: paramsMatter
},
{
field: 'cpCode',
title: '成品代码',
visible: false
},
{
field: 'cpName',
title: '成品名称',
cellStyle: function (value, row, index) {
return {
css: {
"min-width": "80px",
"text-overflow": "ellipsis",
"overflow": "hidden",
"max-width": "100px",
"white-space": "nowrap"
}
}
},
formatter: paramsMatter,
visible: false
},
{
field: 'itemstandard',
title: '规格型号',
cellStyle: function (value, row, index) {
return {
css: {
"min-width": "80px",
"text-overflow": "ellipsis",
"overflow": "hidden",
"max-width": "100px",
"white-space": "nowrap"
}
}
},
formatter: paramsMatter
},
{
field: 'stockDw',
title: '单位'
},
{
field: 'useNum',
title: '使用量'
},
{
field: 'lostpre',
title: '损耗'
},
{
field: 'zpGuige',
title: '供应商料号',
cellStyle: function (value, row, index) {
return {
css: {
"min-width": "80px",
"text-overflow": "ellipsis",
"overflow": "hidden",
"max-width": "100px",
"white-space": "nowrap"
}
}
},
formatter: paramsMatter
},
{
field: 'memolist',
title: '说明',
cellStyle: function (value, row, index) {
return {
css: {
"min-width": "80px",
"text-overflow": "ellipsis",
"overflow": "hidden",
"max-width": "100px",
"white-space": "nowrap"
}
}
},
formatter: paramsMatter
},
]
});
//待提交bom表格
$('#selectBomTable').bootstrapTable({
striped: true, // 是否显示行间隔色
cache: false, // 是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
// contentType :"application/x-www-form-urlencoded",
// pageNumber : 1, // 初始化加载第一页,默认第一页
// pageSize : 10, // 每页的记录行数(*)
// pageList : [ 5, 10,50], // 可供选择的每页的行数(*)
// clickToSelect : true, // 是否启用点击选中行
showToggle: false, // 是否显示详细视图和列表视图的切换按钮
cardView: false, // 是否显示详细视图
detailView: false, // 是否显示父子表
smartDisplay: false, // 加了这个才显示每页显示的行数
showExport: false, // 是否显示导出按钮
singleSelect: true,
height: 400,
uniqueId: 'zpGuige',
columns: [{
checkbox: false
},
{
field: 'versionNo',
title: '版本号',
visible: false
},
{
field: 'wlCode',
title: '原料代码',
},
{
field: 'itemname',
title: '原料名称',
cellStyle: function (value, row, index) {
return {
css: {
"min-width": "80px",
"text-overflow": "ellipsis",
"overflow": "hidden",
"max-width": "100px",
"white-space": "nowrap"
}
}
},
formatter: paramsMatter
},
{
field: 'itemstandard',
title: '规格型号',
cellStyle: function (value, row, index) {
return {
css: {
"min-width": "80px",
"text-overflow": "ellipsis",
"overflow": "hidden",
"max-width": "100px",
"white-space": "nowrap"
}
}
},
formatter: paramsMatter
},
{
field: 'stockDw',
title: '单位'
},
{
field: 'useNum',
title: '使用量'
},
{
field: 'lostpre',
title: '损耗',
visible: false
},
{
field: 'zpGuige',
title: '供应商料号',
cellStyle: function (value, row, index) {
return {
css: {
"min-width": "80px",
"text-overflow": "ellipsis",
"overflow": "hidden",
"max-width": "100px",
"white-space": "nowrap"
}
}
},
formatter: paramsMatter
},
{
field: 'memolist',
title: '说明',
cellStyle: function (value, row, index) {
return {
css: {
"min-width": "80px",
"text-overflow": "ellipsis",
"overflow": "hidden",
"max-width": "100px",
"white-space": "nowrap"
}
}
},
formatter: paramsMatter
},
{
title: '操作',
align: 'center',
formatter: function (value, row, index) {
let actions = [];
// actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="edit()"><i class="fa fa-edit"></i>编辑</a> ');
actions.push('<a class="btn btn-danger btn-xs ' + '" href="javascript:void(0)" onclick="remove(\'' + row.zpGuige + '\')"><i class="fa fa-remove"></i>删除</a>');
return actions.join('');
}
}
]
});
//弹层订单列表
$('#saleOrderTable').bootstrapTable({
url: ctx + "finance/lsalesOrder/list",
method: 'post',
striped: true, // 是否显示行间隔色
cache: false, // 是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
pagination: true, // 是否显示分页(*)
contentType: "application/x-www-form-urlencoded",
queryParams: function (params) {
let curParams = {
// 传递参数查询参数
pageSize: params.limit,
pageNum: params.offset / params.limit + 1
// searchValue: params.search,
// orderByColumn: params.sort,
// isAsc: params.order
};
let saleOrderNO = $("#SaleorderNO").val();
//alert(wlCode);
let json = $.extend(curParams, {"SaleorderNO": saleOrderNO});
return json;
},
sidePagination: "server", // 分页方式:client客户端分页,server服务端分页(*)
pageNumber: 1, // 初始化加载第一页,默认第一页
pageSize: 5, // 每页的记录行数(*)
pageList: [5, 10, 50], // 可供选择的每页的行数(*)
clickToSelect: true, // 是否启用点击选中行
showToggle: false, // 是否显示详细视图和列表视图的切换按钮
cardView: false, // 是否显示详细视图
detailView: false, // 是否显示父子表
smartDisplay: false, // 加了这个才显示每页显示的行数
showExport: false, // 是否显示导出按钮
singleSelect: true,
height: 350,
columns: [
{
checkbox: true
},
{
field: 'saleorderNO',
title: '订单号',
},
{
field: 'pName',
title: '客户名称',
cellStyle: function (value, row, index) {
return {
css: {
"min-width": "80px",
"text-overflow": "ellipsis",
"overflow": "hidden",
"max-width": "100px",
"white-space": "nowrap"
}
}
},
formatter: paramsMatter
},
{
field: 'wlCode',
title: '料号',
},
{
field: 'itemname',
title: '名称',
cellStyle: function (value, row, index) {
return {
css: {
"min-width": "80px",
"text-overflow": "ellipsis",
"overflow": "hidden",
"max-width": "100px",
"white-space": "nowrap"
}
}
}
},
{
field: 'qty',
title: '订单数量'
},
{
field: 'orderQty',
title: '已交货数量'
},
{
field: 'qQty',
title: '未交货数量'
}, {
field: 'zzgdOrderqty',
title: '已下工单数量'
},
{
field: 'zzgdQQty',
title: '欠工单数量'
},
{
field: 'SendDate',
title: '交货日期',
cellStyle: function (value, row, index) {
return {
css: {
"min-width": "80px",
"text-overflow": "ellipsis",
"overflow": "hidden",
"max-width": "100px",
"white-space": "nowrap"
}
}
}
},
{
field: 'factory',
title: 'Factory',
cellStyle: function (value, row, index) {
return {
css: {
"min-width": "80px",
"text-overflow": "ellipsis",
"overflow": "hidden",
"max-width": "100px",
"white-space": "nowrap"
}
}
}
},
{
field: 'piNo',
title: 'PNO',
visible: false
}
]
});
</script>
</body>
</html>