Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
warehouse
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
胡懿
warehouse
Commits
a86d376d
Commit
a86d376d
authored
Mar 02, 2023
by
zhanglt
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.yqdchina.com/huyi/warehouse
into zlt
parents
4efefa92
306e67ac
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
382 additions
and
208 deletions
+382
-208
LodopFuncs.js
src/main/webapp/static/common/js/LodopFuncs.js
+1
-1
anihead.jsp
src/main/webapp/webpage/include/anihead.jsp
+5
-0
goodsList.jsp
...main/webapp/webpage/modules/warehouse/goods/goodsList.jsp
+0
-9
materialLossDetail.jsp
...age/modules/warehouse/materialloss/materialLossDetail.jsp
+252
-0
materialLossForm.jsp
...bpage/modules/warehouse/materialloss/materialLossForm.jsp
+67
-174
materialLossList.js
...ebpage/modules/warehouse/materialloss/materialLossList.js
+32
-8
profitWarehousingList.js
...ules/warehouse/profitwarehousing/profitWarehousingList.js
+25
-9
profitWarehousingList.jsp
...les/warehouse/profitwarehousing/profitWarehousingList.jsp
+0
-7
No files found.
src/main/webapp/static/common/js/LodopFuncs.js
View file @
a86d376d
...
...
@@ -98,7 +98,7 @@ function getLodop(oOBJECT, oEMBED) {
var
strLodopUpdate
=
strFontTag
+
"需要升级!点击这里<a href='install_lodop32.zip' target='_self'>执行升级</a>"
;
var
strLodop64Install
=
strFontTag
+
"未安装!点击这里<a href='install_lodop64.zip' target='_self'>执行安装</a>"
;
var
strLodop64Update
=
strFontTag
+
"需要升级!点击这里<a href='install_lodop64.zip' target='_self'>执行升级</a>"
;
var
strCLodopInstallA
=
"<br><font color='#FF00FF'>Web打印服务CLodop未安装启动,点击这里<a href='"
+
projectName
+
"/common/file/CLodop_Setup_for_Win64NT_6.571EN.zip' target='_self'>下载执行安装</a>"
;
var
strCLodopInstallA
=
"<br><font color='#FF00FF'>Web打印服务CLodop未安装启动,点击这里<a href='"
+
ctxStatic
+
"/common/file/CLodop_Setup_for_Win64NT_6.571EN.zip' target='_self'>下载执行安装</a>"
;
var
strCLodopInstallB
=
"<br>(若此前已安装过,可<a href='CLodop.protocol:setup' target='_self'>点这里直接再次启动</a>)"
;
var
strCLodopUpdate
=
"<br><font color='#FF00FF'>Web打印服务CLodop需升级!点击这里<a href='CLodop_Setup_for_Win32NT.zip' target='_self'>执行升级</a>"
;
var
strLodop7FontTag
=
"<br><font color='#FF00FF'>Web打印服务Lodop7"
;
...
...
src/main/webapp/webpage/include/anihead.jsp
View file @
a86d376d
...
...
@@ -61,3 +61,7 @@
<script type="text/javascript">var ctx = '${ctx}', ctxStatic='${ctxStatic}';</script>
<link rel="stylesheet" id="theme" href="${ctxStatic}/common/css/app-${cookie.theme.value==null?'blue':cookie.theme.value}.css" />
<script src="${ctxStatic}/common/js/jeeplus.js"></script>
<script src="${ctxStatic}/common/js/LodopFuncs.js"></script>
<object id="LODOP_OB" classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" width=0 height=0 style="display: none;">
<embed id="LODOP_EM" type="application/x-print-lodop" width=0 height=0></embed>
</object>
\ No newline at end of file
src/main/webapp/webpage/modules/warehouse/goods/goodsList.jsp
View file @
a86d376d
...
...
@@ -8,13 +8,6 @@
<
%@
include
file=
"/webpage/include/bootstraptable.jsp"
%
>
<
%@
include
file=
"/webpage/include/treeview.jsp"
%
>
<
%@
include
file=
"goodsList.js"
%
>
<script>
var
projectName
=
"${ctxStatic}"
;
</script>
<script
type=
"text/javascript"
src=
"${ctxStatic}/common/js/LodopFuncs.js"
></script>
<object
id=
"LODOP_OB"
classid=
"clsid:2105C259-1E0C-4534-8141-A753534CB4CA"
width=
0
height=
0
>
<embed
id=
"LODOP_EM"
type=
"application/x-print-lodop"
width=
0
height=
0
></embed>
</object>
</head>
<body>
<div
class=
"wrapper wrapper-content"
>
...
...
@@ -127,6 +120,5 @@
</div>
</div>
</div>
</body>
</html>
\ No newline at end of file
src/main/webapp/webpage/modules/warehouse/materialloss/materialLossDetail.jsp
0 → 100644
View file @
a86d376d
<%--
Created by IntelliJ IDEA.
User: yangzi
Date: 2023/2/21
Time: 10:29
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ include file="/webpage/include/taglib.jsp" %>
<div id="toolbar" class="text-left">
<c:if test="${mode == 'add' || mode == 'edit'}">
<a class="btn btn-primary btn-sm" onclick="addDetail('#detail_table')" title="新增"><i class="fa fa-plus"></i>
添加</a>
</c:if>
</div>
<table id="detail_table" data-toolbar="#toolbar"></table>
<script>
var selector = "#detail_table";
function initTable() {
var data = ${fns:toJson(materialLoss.materialLossInfoList)};
$(selector).bootstrapTable({
data: data,
columns: [{checkbox: true},
{
field: 'no',
title: '序号',
align: 'center',
width: 60,
formatter: function (value, row, index) {
var tpl = $("#hideTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g, "");
var html = Mustache.render(tpl, {
idx: index,
row: row
})
return html + '<span>' + (index + 1) + '</span>'
}
},
{
field: 'ledgerInfo.name',
title: '物资名称',
formatter: function (value, row, index) {
return Mustache.render($("#ledgerInfoNameTpl").html(), {
row: row,
idx: index
})
}
},
{
field: 'ledgerInfo.code',
title: '物资编码',
formatter: function (value, row, index) {
return Mustache.render($("#ledgerInfoCodeTpl").html(), {
row: row,
idx: index
})
}
},
{
field: 'ledgerInfo.type.name',
title: '类型',
formatter: function (value, row, index) {
return Mustache.render($("#ledgerInfoTypeTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g, ""), {
row: row,
idx: index
})
}
},
{
field: 'ledgerInfo.model',
title: '型号',
formatter: function (value, row, index) {
return Mustache.render($("#ledgerInfoModelTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g, ""), {
row: row,
idx: index
})
}
},
{
field: 'ledgerInfo.amount',
title: '单价',
formatter: function (value, row, index) {
return Mustache.render($("#ledgerInfoAmountTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g, ""), {
row: row,
idx: index
})
}
},
{
field: 'ledgerInfo.batchNum',
title: '批次号',
formatter: function (value, row, index) {
return Mustache.render($("#ledgerInfoBatchNumTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g, ""), {
row: row,
idx: index
})
}
},
{
field: 'ledgerInfo.shelves.name',
title: '货架',
formatter: function (value, row, index) {
return Mustache.render($("#ledgerInfoShelvesTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g, ""), {
row: row,
idx: index
})
}
},
{
field: 'remarks',
title: '备注',
formatter: function (value, row, index) {
return Mustache.render($("#remarksTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g, ""), {
row: row,
idx: index
})
}
},
{
field: '',
title: '操作',
formatter: function (value, row, index) {
var text = row.delFlag == 1 ? '撤销删除' : '删除';
var result = ["<a href='javascript:void(0);' onclick=\"removeRow(" + index + ", '" + row.id + "', '" + row.delFlag + "')\">" + text + "</a>"]
return result.join('');
}
}
]
});
}
function getSelections() {
return $(selector).bootstrapTable('getSelections');
}
/**
* 手动添加明细
* @param selector
*/
function addDetail(selector) {
jp.openGridSelectDialog({
title: '选择物资台账明细',
isMultiSelect: true,
url: "${ctx}/warehouse/ledger/ledger/findByQrOrCode",
fieldLabels: "物资编码|物资名称|类型|型号|批次号|单价",
fieldKeys: "code|name|type.name|model|batchNum|amount",
searchLabels: "物资编码",
searchKeys: "code",
}, function (items) {
if (Array.isArray(items)) {
var data = items.map(function (item) {
item[0] = false;
return {
id: '',
delFlag: 0,
remarks: '',
ledgerInfo: item
}
})
$(selector).bootstrapTable('append', data)
}
})
}
function removeRow(index, rowId, rowDelFlag) {
if (rowId) {
var delFlag = rowDelFlag === 1 ? 0 : 1
updateRow(index, {
delFlag: delFlag
})
} else {
$(selector).bootstrapTable("remove", {
field: '$index',
values: [index]
})
}
}
function updateRow(index, row) {
$(selector).bootstrapTable('updateRow', {
index: index,
row: row
})
}
function onInputChange(rowIndex, elem, field) {
var obj = {};
obj[field] = $(elem).val();
updateRow(rowIndex, obj);
}
/**
* 获取所有明细数据
* @returns {*|jQuery}
*/
function getTableData() {
return $(selector).bootstrapTable('getData');
}
</script>
<script id="hideTpl" type="text/html">
<input id="materialLossInfoList{{idx}}_id" name="materialLossInfoList[{{idx}}].id" type="hidden"
value="{{row.id}}"/>
<input id="materialLossInfoList{{idx}}_delFlag" name="materialLossInfoList[{{idx}}].delFlag"
type="hidden" value="{{row.delFlag}}"/>
<input id="materialLossInfoList{{idx}}_materialLoss"
name="materialLossInfoList[{{idx}}].materialLoss.id" type="hidden"
value="{{row.materialLoss.id}}"/>
<input id="materialLossInfoList{{idx}}_ledgerInfoId"
name="materialLossInfoList[{{idx}}].ledgerInfo.id" type="hidden" value="{{row.ledgerInfo.id}}"/>
</script>
<script id="ledgerInfoNameTpl" type="text/html">
<input id="materialLossInfoList{{idx}}_ledgerInfoName" readonly
name="materialLossInfoList[{{idx}}].ledgerInfo.name" type="text" class="form-control"
value="{{row.ledgerInfo.name}}"/>
</script>
<script id="ledgerInfoCodeTpl" type="text/html">
<input id="materialLossInfoList{{idx}}_ledgerInfoCode" readonly
name="materialLossInfoList[{{idx}}].ledgerInfo.code" type="text" class="form-control"
value="{{row.ledgerInfo.code}}"/>
</script>
<script id="ledgerInfoTypeTpl" type="text/html">//<!--
<sys:treeselect id="materialLossInfoList{{idx}}_ledgerInfoType" name="materialLossInfoList[{{idx}}].ledgerInfo.type.id" value="{{row.ledgerInfo.type.id}}" labelName="materialLossInfoList{{idx}}.ledgerInfo.type.name" labelValue="{{row.ledgerInfo.type.name}}"
title="类型" url="/warehouse/materialtype/materialType/treeData" cssClass="form-control " disabled="disabled" allowClear="true"/>//-->
</script>
<script id="ledgerInfoModelTpl" type="text/html">
<input id="materialLossInfoList{{idx}}_ledgerInfoModel"
name="materialLossInfoList[{{idx}}].ledgerInfo.model" type="text" class="form-control" readonly
value="{{row.ledgerInfo.model}}"/>
</script>
<script id="ledgerInfoAmountTpl" type="text/html">
<input id="materialLossInfoList{{idx}}_ledgerInfoAmount"
name="materialLossInfoList[{{idx}}].ledgerInfo.amount" type="text" readonly class="form-control"
value="{{row.ledgerInfo.amount}}"/>
</script>
<script id="ledgerInfoShelvesTpl" type="text/html">
<input id="materialLossInfoList{{idx}}_ledgerInfoShelves"
name="materialLossInfoList[{{idx}}].ledgerInfo.shelves.name" type="text" readonly class="form-control"
value="{{row.ledgerInfo.shelves.name}}"/>
</script>
<script id="ledgerInfoBatchNumTpl" type="text/html">
<input id="materialLossInfoList{{idx}}_ledgerInfoBatchNum"
name="materialLossInfoList[{{idx}}].ledgerInfo.batchNum" type="text" readonly class="form-control"
value="{{row.ledgerInfo.batchNum}}"/>
</script>
<script id="remarksTpl" type="text/html">
<textarea id="storageInfoList{{idx}}_remarks" name="storageInfoList[{{idx}}].remarks" rows="2"
onchange="onInputChange('{{idx}}', this, 'remarks')" class="form-control ">{{row.remarks}}</textarea>
</script>
src/main/webapp/webpage/modules/warehouse/materialloss/materialLossForm.jsp
View file @
a86d376d
<
%@
page
contentType=
"text/html;charset=UTF-8"
%
>
<
%@
include
file=
"/webpage/include/taglib.jsp"
%
>
<
%@
include
file=
"/webpage/include/taglib.jsp"
%
>
<html>
<head>
<title>
物资盘亏记录管理
</title>
<meta
name=
"decorator"
content=
"ani"
/>
<script
type=
"text/javascript"
>
$
(
document
).
ready
(
function
()
{
jp
.
ajaxForm
(
"#inputForm"
,
function
(
data
){
if
(
data
.
success
){
jp
.
success
(
data
.
msg
);
jp
.
go
(
"${ctx}/warehouse/materialloss/materialLoss"
);
}
else
{
jp
.
error
(
data
.
msg
);
$
(
"#inputForm"
).
find
(
"button:submit"
).
button
(
"reset"
);
}
});
$
(
'#time'
).
datetimepicker
({
format
:
"YYYY-MM-DD HH:mm:ss"
});
});
function
addRow
(
list
,
idx
,
tpl
,
row
){
$
(
list
).
append
(
Mustache
.
render
(
tpl
,
{
idx
:
idx
,
delBtn
:
true
,
row
:
row
}));
$
(
list
+
idx
).
find
(
"select"
).
each
(
function
(){
$
(
this
).
val
(
$
(
this
).
attr
(
"data-value"
));
});
$
(
list
+
idx
).
find
(
"input[type='checkbox'], input[type='radio']"
).
each
(
function
(){
var
ss
=
$
(
this
).
attr
(
"data-value"
).
split
(
','
);
for
(
var
i
=
0
;
i
<
ss
.
length
;
i
++
){
if
(
$
(
this
).
val
()
==
ss
[
i
]){
$
(
this
).
attr
(
"checked"
,
"checked"
);
}
}
});
$
(
list
+
idx
).
find
(
".form_datetime"
).
each
(
function
(){
$
(
this
).
datetimepicker
({
format
:
"YYYY-MM-DD HH:mm:ss"
});
});
}
function
delRow
(
obj
,
prefix
){
var
id
=
$
(
prefix
+
"_id"
);
var
delFlag
=
$
(
prefix
+
"_delFlag"
);
if
(
id
.
val
()
==
""
){
$
(
obj
).
parent
().
parent
().
remove
();
}
else
if
(
delFlag
.
val
()
==
"0"
){
delFlag
.
val
(
"1"
);
$
(
obj
).
html
(
"÷"
).
attr
(
"title"
,
"撤销删除"
);
$
(
obj
).
parent
().
parent
().
addClass
(
"error"
);
}
else
if
(
delFlag
.
val
()
==
"1"
){
delFlag
.
val
(
"0"
);
$
(
obj
).
html
(
"×"
).
attr
(
"title"
,
"删除"
);
$
(
obj
).
parent
().
parent
().
removeClass
(
"error"
);
}
}
</script>
<title>
物资盘亏记录管理
</title>
<meta
name=
"decorator"
content=
"ani"
/>
<link
rel=
"stylesheet"
href=
"${ctxStatic}/common/css/form.css"
>
<link
rel=
"stylesheet"
href=
"${ctxStatic}/plugin/bootstrapTable/bootstrap-table.min.css"
>
<script
type=
"text/javascript"
src=
"${ctxStatic}/plugin/bootstrapTable/bootstrap-table.min.js"
></script>
<script
type=
"text/javascript"
src=
"${ctxStatic}/plugin/bootstrapTable/bootstrap-table-zh-CN.js"
></script>
</head>
<body>
<div
class=
"wrapper wrapper-content"
>
<div
class=
"row"
>
<div
class=
"col-md-12"
>
<div
class=
"panel panel-primary"
>
<div
class=
"panel-heading"
>
<h3
class=
"panel-title"
>
<a
class=
"panelButton"
href=
"${ctx}/warehouse/materialloss/materialLoss"
><i
class=
"ti-angle-left"
></i>
返回
</a>
</h3>
</div>
<div
class=
"panel-body"
>
<form:form
id=
"inputForm"
modelAttribute=
"materialLoss"
action=
"${ctx}/warehouse/materialloss/materialLoss/save"
method=
"post"
class=
"form-horizontal"
>
<form:hidden
path=
"id"
/>
<div
class=
"form-group"
>
<label
class=
"col-sm-2 control-label"
>
盘亏单号:
</label>
<div
class=
"col-sm-10"
>
<form:input
path=
"number"
htmlEscape=
"false"
class=
"form-control "
/>
</div>
</div>
<div
class=
"form-group"
>
<label
class=
"col-sm-2 control-label"
>
操作人:
</label>
<div
class=
"col-sm-10"
>
<form:input
path=
"operator"
htmlEscape=
"false"
class=
"form-control "
/>
</div>
</div>
<div
class=
"form-group"
>
<label
class=
"col-sm-2 control-label"
>
盘亏时间:
</label>
<div
class=
"col-sm-10"
>
<div
class=
'input-group form_datetime'
id=
'time'
>
<input
type=
'text'
name=
"time"
class=
"form-control "
value=
"<fmt:formatDate value="
${
materialLoss
.
time
}"
pattern=
"yyyy-MM-dd HH:mm:ss"
/>
"/>
<span
class=
"input-group-addon"
>
<span
class=
"glyphicon glyphicon-calendar"
></span>
</span>
</div>
</div>
</div>
<div
class=
"form-group"
>
<label
class=
"col-sm-2 control-label"
>
备注信息:
</label>
<div
class=
"col-sm-10"
>
<form:textarea
path=
"remarks"
htmlEscape=
"false"
rows=
"4"
class=
"form-control "
/>
</div>
</div>
<div
class=
"tabs-container"
>
<ul
class=
"nav nav-tabs"
>
<li
class=
"active"
><a
data-toggle=
"tab"
href=
"#tab-1"
aria-expanded=
"true"
>
盘亏明细表:
</a>
</li>
</ul>
<div
class=
"tab-content"
>
<div
id=
"tab-1"
class=
"tab-pane fade in active"
>
<a
class=
"btn btn-white btn-sm"
onclick=
"addRow('#materialLossInfoList', materialLossInfoRowIdx, materialLossInfoTpl);materialLossInfoRowIdx = materialLossInfoRowIdx + 1;"
title=
"新增"
><i
class=
"fa fa-plus"
></i>
新增
</a>
<table
class=
"table table-striped table-bordered table-condensed"
>
<thead>
<tr>
<th
class=
"hide"
></th>
<th>
盘亏表主表ID
</th>
<th>
物资台账明细ID
</th>
<th>
备注信息
</th>
<th
width=
"10"
>
</th>
</tr>
</thead>
<tbody
id=
"materialLossInfoList"
>
</tbody>
</table>
<script
type=
"text/template"
id=
"materialLossInfoTpl"
>
//
<!--
<
tr
id
=
"materialLossInfoList{{idx}}"
>
<
td
class
=
"hide"
>
<
input
id
=
"materialLossInfoList{{idx}}_id"
name
=
"materialLossInfoList[{{idx}}].id"
type
=
"hidden"
value
=
"{{row.id}}"
/>
<
input
id
=
"materialLossInfoList{{idx}}_delFlag"
name
=
"materialLossInfoList[{{idx}}].delFlag"
type
=
"hidden"
value
=
"0"
/>
<
/td
>
<
td
>
<
input
id
=
"materialLossInfoList{{idx}}_materialLoss"
name
=
"materialLossInfoList[{{idx}}].materialLoss.id"
type
=
"text"
value
=
"{{row.materialLoss.id}}"
class
=
"form-control "
/>
<
/td
>
<
td
>
<
input
id
=
"materialLossInfoList{{idx}}_ledgerInfo"
name
=
"materialLossInfoList[{{idx}}].ledgerInfo.id"
type
=
"text"
value
=
"{{row.ledgerInfo.id}}"
class
=
"form-control "
/>
<
/td
>
<
td
>
<
textarea
id
=
"materialLossInfoList{{idx}}_remarks"
name
=
"materialLossInfoList[{{idx}}].remarks"
rows
=
"4"
class
=
"form-control "
>
{{
row
.
remarks
}}
<
/textarea
>
<
/td
>
<
td
class
=
"text-center"
width
=
"10"
>
{{
#
delBtn
}}
<
span
class
=
"close"
onclick
=
"delRow(this, '#materialLossInfoList{{idx}}')"
title
=
"删除"
>&
times
;
<
/span>{{/
delBtn
}}
<
/td
>
<
/tr>/
/-->
</script>
<script
type=
"text/javascript"
>
var
materialLossInfoRowIdx
=
0
,
materialLossInfoTpl
=
$
(
"#materialLossInfoTpl"
).
html
().
replace
(
/
(\/\/
\<!
\-\-)
|
(\/\/\-\-
>
)
/g
,
""
);
$
(
document
).
ready
(
function
()
{
var
data
=
$
{
fns
:
toJson
(
materialLoss
.
materialLossInfoList
)};
for
(
var
i
=
0
;
i
<
data
.
length
;
i
++
){
addRow
(
'#materialLossInfoList'
,
materialLossInfoRowIdx
,
materialLossInfoTpl
,
data
[
i
]);
materialLossInfoRowIdx
=
materialLossInfoRowIdx
+
1
;
}
});
</script>
</div>
</div>
</div>
<c:if
test=
"${mode == 'add' || mode=='edit'}"
>
<div
class=
"col-lg-3"
></div>
<div
class=
"col-lg-6"
>
<div
class=
"form-group text-center"
>
<div>
<button
class=
"btn btn-primary btn-block btn-lg btn-parsley"
data-loading-text=
"正在提交..."
>
提 交
</button>
</div>
</div>
</div>
</c:if>
</form:form>
</div>
</div>
</div>
</div>
<div
class=
"wrapper wrapper-content"
>
<div
class=
"row"
>
<div
class=
"col-md-12"
>
<div
class=
"panel panel-primary"
>
<div
class=
"panel-body"
>
<form:form
id=
"inputForm"
modelAttribute=
"materialLoss"
action=
"${ctx}/warehouse/materialloss/materialLoss/save"
method=
"post"
class=
"form-horizontal"
>
<form:hidden
path=
"id"
/>
<h3
class=
"text-center"
>
物资盘亏表
</h3>
<table
class=
"table table-bordered main-table"
>
<tr>
<td>
<font
color=
"red"
>
*
</font>
单号
</td>
<td>
<form:input
path=
"number"
htmlEscape=
"false"
readonly=
"true"
class=
"form-control required"
/>
</td>
<td><font
color=
"red"
>
*
</font>
操作人
</td>
<td>
<sys:userselect
id=
"operator"
name=
"operator.id"
value=
"${materialLoss.operator.id}"
labelName=
"operator.name"
labelValue=
"${materialLoss.operator.name}"
disabled=
"disabled"
cssClass=
"form-control required"
/>
</td>
</tr>
<tr>
<td><font
color=
"red"
>
*
</font>
盘亏时间
</td>
<td>
<div
class=
'input-group form_datetime'
id=
'time'
>
<input
type=
'text'
name=
"time"
class=
"form-control required"
autocomplete=
"off"
value=
"<fmt:formatDate value="
${
materialLoss
.
time
}"
pattern=
"yyyy-MM-dd HH:mm:ss"
/>
"/>
<span
class=
"input-group-addon"
>
<span
class=
"glyphicon glyphicon-calendar"
></span>
</span>
</div>
</td>
<td>
备注
</td>
<td>
<form:textarea
path=
"remarks"
htmlEscape=
"false"
rows=
"4"
class=
"form-control "
/>
</td>
</tr>
<tr>
<td
colspan=
"4"
>
<
%@
include
file=
"materialLossDetail.jsp"
%
>
</td>
</tr>
</table>
</form:form>
</div>
</div>
</div>
</div>
</div>
<script
type=
"text/javascript"
>
$
(
document
).
ready
(
function
()
{
initTable
();
$
(
'#time'
).
datetimepicker
({
format
:
"YYYY-MM-DD HH:mm:ss"
});
});
</script>
</body>
</html>
\ No newline at end of file
src/main/webapp/webpage/modules/warehouse/materialloss/materialLossList.js
View file @
a86d376d
...
...
@@ -241,21 +241,21 @@ $(document).ready(function() {
$
(
'#materialLossTable'
).
bootstrapTable
(
'refresh'
);
}
function
add
(){
jp
.
go
(
"${ctx}/warehouse/materialloss/materialLoss/form/add"
);
jp
.
openSaveDialog
(
"新增物资盘亏"
,
"${ctx}/warehouse/materialloss/materialLoss/form/add"
,
'1200'
,
'800'
);
}
function
edit
(
id
){
if
(
id
==
undefined
){
id
=
getIdSelections
();
}
jp
.
go
(
"${ctx}/warehouse/materialloss/materialLoss/form/edit?id="
+
id
);
jp
.
openSaveDialog
(
"编辑物资盘亏"
,
"${ctx}/warehouse/materialloss/materialLoss/form/edit?id="
+
id
,
'1200'
,
'800'
);
}
function
view
(
id
){
//没有权限时,不显示确定按钮
if
(
id
==
undefined
){
id
=
getIdSelections
();
}
jp
.
go
(
"${ctx}/warehouse/materialloss/materialLoss/form/view?id="
+
id
);
jp
.
openViewDialog
(
"查看物资盘亏"
,
"${ctx}/warehouse/materialloss/materialLoss/form/view?id="
+
id
,
'1200'
,
'800'
);
}
...
...
@@ -299,9 +299,15 @@ $(document).ready(function() {
<
table
class
=
"ani table"
>
<
thead
>
<
tr
>
<
th
>
盘亏表主表
ID
<
/th
>
<
th
>
物资台账明细
ID
<
/th
>
<
th
>
备注信息
<
/th
>
<
th
>
物资名称
<
/th
>
<
th
>
物资编号
<
/th
>
<
th
>
类型
<
/th
>
<
th
>
型号
<
/th
>
<
th
>
单价
<
/th
>
<
th
>
批次号
<
/th
>
<
th
>
货架
<
/th
>
<
th
>
仓库
<
/th
>
<
th
>
备注
<
/th
>
<
/tr
>
<
/thead
>
<
tbody
id
=
"materialLossChild-{{idx}}-1-List"
>
...
...
@@ -313,10 +319,28 @@ $(document).ready(function() {
<
script
type
=
"text/template"
id
=
"materialLossChild1Tpl"
>
//<!--
<
tr
>
<
td
>
{{
row
.
materialLoss
.
id
}}
{{
row
.
ledgerInfo
.
name
}}
<
/td
>
<
td
>
{{
row
.
ledgerInfo
.
id
}}
{{
row
.
ledgerInfo
.
code
}}
<
/td
>
<
td
>
{{
row
.
ledgerInfo
.
type
.
name
}}
<
/td
>
<
td
>
{{
row
.
ledgerInfo
.
model
}}
<
/td
>
<
td
>
{{
row
.
ledgerInfo
.
amount
}}
<
/td
>
<
td
>
{{
row
.
ledgerInfo
.
batchNum
}}
<
/td
>
<
td
>
{{
row
.
ledgerInfo
.
shelves
.
name
}}
<
/td
>
<
td
>
{{
row
.
ledgerInfo
.
shelves
.
warehouse
.
name
}}
<
/td
>
<
td
>
{{
row
.
remarks
}}
...
...
src/main/webapp/webpage/modules/warehouse/profitwarehousing/profitWarehousingList.js
View file @
a86d376d
...
...
@@ -279,6 +279,7 @@ $(document).ready(function() {
var
data1
=
profitWarehousing
.
profitWarehousingInfoList
;
for
(
var
i
=
0
;
i
<
data1
.
length
;
i
++
){
data1
[
i
].
dict
=
{};
data1
[
i
].
qrCodeStr
=
data1
[
1
].
qrCode
&&
JSON
.
stringify
(
data1
[
1
].
qrCode
);
addRow
(
'#profitWarehousingChild-'
+
row
.
id
+
'-1-List'
,
profitWarehousingChild1RowIdx
,
profitWarehousingChild1Tpl
,
data1
[
i
]);
profitWarehousingChild1RowIdx
=
profitWarehousingChild1RowIdx
+
1
;
}
...
...
@@ -299,21 +300,24 @@ $(document).ready(function() {
LODOP
=
getLodop
(
document
.
getElementById
(
'LODOP_OB'
),
document
.
getElementById
(
'LODOP_EM'
));
}
function
printQr
(
id
)
{
function
printQr
(
id
,
qrCodeStr
)
{
jp
.
loading
(
'loading...'
);
try
{
if
(
!
LODOP
){
initLodop
();
}
if
(
LODOP
){
jp
.
get
(
"${ctx}/warehouse/profitwarehousing/profitWarehousing/printQr?profitWarehousingInfoId="
+
id
,
function
(
res
)
{
var
list
=
res
.
body
.
goodsInfo
.
qrCodeList
;
LODOP
.
PRINT_INIT
(
"打印货品"
);
LODOP
.
SET_PRINT_PAGESIZE
(
1
,
400
,
600
,
0
)
createAllPage
(
list
);
LODOP
.
PREVIEW
();
if
(
qrCodeStr
){
var
qrCode
=
JSON
.
parse
(
qrCodeStr
);
preview_LODOP
(
qrCode
);
jp
.
close
();
})
}
else
{
jp
.
get
(
"${ctx}/warehouse/profitwarehousing/profitWarehousing/printQr?profitWarehousingInfoId="
+
id
,
function
(
res
)
{
var
profitWarehousingInfo
=
res
.
body
.
profitWarehousingInfo
;
preview_LODOP
(
profitWarehousingInfo
.
qrCode
);
jp
.
close
();
})
}
}
else
{
jp
.
close
();
}
...
...
@@ -324,6 +328,18 @@ $(document).ready(function() {
})
}
}
function
preview_LODOP
(
qrCode
){
if
(
qrCode
&&
qrCode
.
url
){
LODOP
.
PRINT_INIT
(
"打印货品"
);
LODOP
.
SET_PRINT_PAGESIZE
(
1
,
400
,
600
,
0
)
var
imgUrl
=
"${ctxPath}/"
+
qrCode
.
url
;
LODOP
.
ADD_PRINT_IMAGE
(
'0%'
,
"0%"
,
"100%"
,
"100%"
,
"<img width='150' border='0' src='"
+
imgUrl
+
"' />"
);
LODOP
.
PREVIEW
();
}
else
{
jp
.
error
(
'二维码不存在!'
)
}
}
<
/script
>
<
script
type
=
"text/template"
id
=
"profitWarehousingChildrenTpl"
>
//<!--
...
...
@@ -376,7 +392,7 @@ $(document).ready(function() {
{{
row
.
remarks
}}
<
/td
>
<
td
>
<
button
class
=
"btn btn-primary btn-sm"
onclick
=
"printQr('{{row.id}}')"
>
<
button
class
=
"btn btn-primary btn-sm"
onclick
=
"printQr('{{row.id}}'
, '{{row.qrCodeStr}}'
)"
>
打印二维码
<
/button
>
<
button
class
=
"btn btn-danger btn-sm"
onclick
=
"cleanQr('{{row.id}}')"
>
...
...
src/main/webapp/webpage/modules/warehouse/profitwarehousing/profitWarehousingList.jsp
View file @
a86d376d
...
...
@@ -8,13 +8,6 @@
<
%@
include
file=
"/webpage/include/bootstraptable.jsp"
%
>
<
%@
include
file=
"/webpage/include/treeview.jsp"
%
>
<
%@
include
file=
"profitWarehousingList.js"
%
>
<script>
var
projectName
=
"${ctxStatic}"
;
</script>
<script
type=
"text/javascript"
src=
"${ctxStatic}/common/js/LodopFuncs.js"
></script>
<object
id=
"LODOP_OB"
classid=
"clsid:2105C259-1E0C-4534-8141-A753534CB4CA"
width=
0
height=
0
>
<embed
id=
"LODOP_EM"
type=
"application/x-print-lodop"
width=
0
height=
0
></embed>
</object>
</head>
<body>
<div
class=
"wrapper wrapper-content"
>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment