Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
H
hg-smart
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
platform
hg-smart
Commits
222b3360
Commit
222b3360
authored
May 17, 2024
by
liuyang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
2024-05-17 存货预警查询
parent
bba4eb9a
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
411 additions
and
0 deletions
+411
-0
HGKC012.java
src/main/java/com/baosight/hggp/hg/kc/domain/HGKC012.java
+114
-0
ServiceHGKC012.java
.../java/com/baosight/hggp/hg/kc/service/ServiceHGKC012.java
+44
-0
HGKC012.xml
src/main/java/com/baosight/hggp/hg/kc/sql/HGKC012.xml
+136
-0
HGKC012.js
src/main/webapp/HG/KC/HGKC012.js
+36
-0
HGKC012.jsp
src/main/webapp/HG/KC/HGKC012.jsp
+81
-0
No files found.
src/main/java/com/baosight/hggp/hg/kc/domain/HGKC012.java
0 → 100644
View file @
222b3360
package
com
.
baosight
.
hggp
.
hg
.
kc
.
domain
;
import
com.baosight.iplat4j.core.ei.EiColumn
;
import
com.baosight.iplat4j.core.util.NumberUtils
;
import
com.baosight.iplat4j.core.util.StringUtils
;
import
java.math.BigDecimal
;
import
java.util.Map
;
/**
* @author LiuYang
* @version 1.0 2024/5/16
*/
public
class
HGKC012
extends
HGKC010
{
private
static
final
long
serialVersionUID
=
1L
;
public
static
final
String
FIELD_WARN_NUM
=
"warnNum"
;
/* 预警数量*/
public
static
final
String
FIELD_PRINC
=
"princ"
;
/* 负责人*/
public
static
final
String
COL_WARN_NUM
=
"WARN_NUM"
;
/* 预警数量*/
public
static
final
String
COL_PRINC
=
"PRINC"
;
/* 负责人*/
public
static
final
String
QUERY
=
"HGKC012.query"
;
private
BigDecimal
warnNum
=
new
BigDecimal
(
"0"
);
/* 预警数量*/
private
String
princ
=
" "
;
/* 负责人*/
/**
* initialize the metadata.
*/
public
void
initMetaData
()
{
EiColumn
eiColumn
;
eiColumn
=
new
EiColumn
(
FIELD_WARN_NUM
);
eiColumn
.
setType
(
"N"
);
eiColumn
.
setScaleLength
(
0
);
eiColumn
.
setFieldLength
(
12
);
eiColumn
.
setDescName
(
"预警数量"
);
eiMetadata
.
addMeta
(
eiColumn
);
eiColumn
=
new
EiColumn
(
FIELD_PRINC
);
eiColumn
.
setDescName
(
"负责人"
);
eiMetadata
.
addMeta
(
eiColumn
);
}
/**
* the constructor.
*/
public
HGKC012
()
{
super
.
initMetaData
();
initMetaData
();
}
/**
* get the warnNum - 预警数量.
* @return the warnNum
*/
public
BigDecimal
getWarnNum
()
{
return
this
.
warnNum
;
}
/**
* set the warnNum - 预警数量.
*
* @param warnNum - 预警数量
*/
public
void
setWarnNum
(
BigDecimal
warnNum
)
{
this
.
warnNum
=
warnNum
;
}
/**
* get the value from Map.
*
* @param map - source data map
*/
/**
* get the princ - 负责人.
* @return the princ
*/
public
String
getPrinc
()
{
return
this
.
princ
;
}
/**
* set the princ - 负责人.
*
* @param princ - 负责人
*/
public
void
setPrinc
(
String
princ
)
{
this
.
princ
=
princ
;
}
@Override
public
void
fromMap
(
Map
map
)
{
super
.
fromMap
(
map
);
setWarnNum
(
NumberUtils
.
toBigDecimal
(
StringUtils
.
toString
(
map
.
get
(
FIELD_WARN_NUM
)),
warnNum
));
setPrinc
(
StringUtils
.
defaultIfEmpty
(
StringUtils
.
toString
(
map
.
get
(
FIELD_PRINC
)),
princ
));
}
/**
* set the value to Map.
*/
@Override
public
Map
toMap
()
{
Map
map
=
super
.
toMap
();
map
.
put
(
FIELD_WARN_NUM
,
StringUtils
.
toString
(
warnNum
,
eiMetadata
.
getMeta
(
FIELD_WARN_NUM
)));
map
.
put
(
FIELD_PRINC
,
StringUtils
.
toString
(
princ
,
eiMetadata
.
getMeta
(
FIELD_PRINC
)));
return
map
;
}
}
src/main/java/com/baosight/hggp/hg/kc/service/ServiceHGKC012.java
0 → 100644
View file @
222b3360
package
com
.
baosight
.
hggp
.
hg
.
kc
.
service
;
import
com.baosight.hggp.common.DdynamicEnum
;
import
com.baosight.hggp.common.InventTypeEnum
;
import
com.baosight.hggp.hg.kc.domain.HGKC012
;
import
com.baosight.hggp.util.CommonMethod
;
import
com.baosight.iplat4j.core.ei.EiConstant
;
import
com.baosight.iplat4j.core.ei.EiInfo
;
import
com.baosight.iplat4j.core.service.impl.ServiceEPBase
;
import
java.util.Arrays
;
import
java.util.HashMap
;
import
java.util.Map
;
/**
* @author LiuYang
* @version 1.0 2024/5/16
*/
public
class
ServiceHGKC012
extends
ServiceEPBase
{
// 指定存货类型
private
static
final
Integer
[]
DEFAULT_INVENT_CODE
=
{
InventTypeEnum
.
RAW
.
getCode
(),
InventTypeEnum
.
CONSUMABLE
.
getCode
()};
@Override
public
EiInfo
initLoad
(
EiInfo
inInfo
)
{
inInfo
=
super
.
query
(
inInfo
,
HGKC012
.
QUERY
);
Map
queryMap
=
new
HashMap
();
queryMap
.
put
(
"inventTypes"
,
DEFAULT_INVENT_CODE
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
USER_BLOCK_ID
),
null
,
true
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
WH_RECORD_BLOCK_ID
,
DdynamicEnum
.
INVENT_RECORD_BLOCK_ID
,
DdynamicEnum
.
SPEC_NAME_BLOCK_ID
,
DdynamicEnum
.
INVENT_TYPE_BLOCK_ID
),
queryMap
);
inInfo
.
getBlock
(
EiConstant
.
resultBlock
).
setBlockMeta
(
new
HGKC012
().
eiMetadata
);
return
inInfo
;
}
@Override
public
EiInfo
query
(
EiInfo
inInfo
)
{
return
super
.
query
(
inInfo
,
HGKC012
.
QUERY
,
new
HGKC012
());
}
}
src/main/java/com/baosight/hggp/hg/kc/sql/HGKC012.xml
0 → 100644
View file @
222b3360
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap
namespace=
"HGKC012"
>
<sql
id=
"column"
>
A.ID as "id",
A.COMPANY_CODE as "companyCode",
<!-- 企业编码 -->
A.DEP_CODE as "depCode",
<!-- 部门编码 -->
A.CREATED_BY as "createdBy",
<!-- 记录创建者 -->
A.CREATED_NAME as "createdName",
<!-- 记录创建名称 -->
A.CREATED_TIME as "createdTime",
<!-- 记录创建时间 -->
A.UPDATED_BY as "updatedBy",
<!-- 记录修改者 -->
A.UPDATED_NAME as "updatedName",
<!-- 记录修改名称 -->
A.UPDATED_TIME as "updatedTime",
<!-- 记录修改时间 -->
A.COMPANY_CODE as "companyCode",
<!-- 公司编码 -->
A.COMPANY_NAME as "companyName",
<!-- 公司名称 -->
A.WH_CODE as "whCode",
<!-- 仓库编码 -->
A.WH_NAME as "whName",
<!-- 仓库名称 -->
A.INVENT_TYPE as "inventType",
<!-- 存货类型 -->
A.INVENT_CODE as "inventCode",
<!-- 存货编码 -->
A.INVENT_NAME as "inventName",
<!-- 存货名称 -->
A.SPEC_ID as "specId",
<!-- 规格ID -->
A.SPEC as "spec",
<!-- 规格 -->
A.MATERIAL as "material",
<!-- 材质 -->
A.UNIT as "unit",
<!-- 单位 -->
A.LENGTH as "length",
<!-- 长度 -->
A.WIDTH as "width",
<!-- 宽度 -->
A.THICK as "thick",
<!-- 厚度 -->
A.INV_QTY as "invQty",
<!-- 库存数量 -->
A.INV_UNIT_WEIGHT as "invUnitWeight",
<!-- 库存单重 -->
A.INV_WEIGHT as "invWeight",
<!-- 库存重量 -->
A.FACTORY_CODE as "factoryCode",
<!-- 厂区编码 -->
A.FACTORY_NAME as "factoryName",
<!-- 厂区名称 -->
B.WARN_NUM as warnNum,
<!-- 预警值 -->
C.PRINC as "princ"
<!-- 负责人 -->
</sql>
<sql
id=
"authCondition"
>
<!-- 无权限时使用 -->
<isNotEmpty
prepend=
" AND "
property=
"authDepCode"
>
A.DEP_CODE = #authDepCode#
</isNotEmpty>
<!-- 仅本人和部门组合 -->
<isEqual
prepend=
" AND "
property=
"authCombination"
compareValue=
"1"
>
(A.CREATED_BY = #authOnlyPeople# OR A.DEP_CODE IN
<iterate
close=
")"
open=
"("
conjunction=
","
property=
"authDepCodes"
>
#authDepCodes[]#
</iterate>
)
</isEqual>
<!-- 仅本人或部门 -->
<isNotEqual
prepend=
" AND "
property=
"authCombination"
compareValue=
"1"
>
<isNotEmpty
property=
"authOnlyPeople"
>
A.CREATED_BY = #authOnlyPeople#
</isNotEmpty>
<isNotEmpty
property=
"authDepCodes"
>
A.DEP_CODE IN
<iterate
close=
")"
open=
"("
conjunction=
","
property=
"authDepCodes"
>
#authDepCodes[]#
</iterate>
</isNotEmpty>
</isNotEqual>
</sql>
<sql
id=
"condition"
>
<include
refid=
"authCondition"
/>
<isNotEmpty
prepend=
" AND "
property=
"specId"
>
A.SPEC_ID = #specId#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"whCode"
>
A.WH_CODE = #whCode#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"whName"
>
A.WH_NAME LIKE '%' || #whName# || '%'
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"inventType"
>
A.INVENT_TYPE = #inventType#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"inventCode"
>
A.INVENT_CODE = #inventCode#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"inventName"
>
A.INVENT_NAME = #inventName#
</isNotEmpty>
</sql>
<!--<sql id="customCondition">
<isNotEmpty prepend=" AND " property="inventTypes">
A.INVENT_TYPE IN <iterate close=")" open="(" conjunction="," property="inventTypes">#inventTypes[]#</iterate>
</isNotEmpty>
<isNotEmpty prepend=" AND " property="spec">
<isEqual property="spec" compareValue="无规格">
A.SPEC_ID IN (SELECT ID FROM ${hggpSchema}.HGPZ006 WHERE SPEC = '')
</isEqual>
<isNotEqual property="spec" compareValue="无规格">
A.SPEC_ID IN (SELECT ID FROM ${hggpSchema}.HGPZ006 WHERE SPEC = #spec#)
</isNotEqual>
</isNotEmpty>
</sql>-->
<sql
id=
"order"
>
<dynamic
prepend=
"ORDER BY"
>
<isNotEmpty
property=
"order"
>
$order$
</isNotEmpty>
<isEmpty
property=
"order"
>
A.CREATED_TIME DESC, A.ID DESC
</isEmpty>
</dynamic>
</sql>
<select
id=
"query"
parameterClass=
"java.util.HashMap"
resultClass=
"com.baosight.hggp.hg.kc.domain.HGKC012"
>
SELECT
<include
refid=
"column"
/>
FROM ${hggpSchema}.HGKC010 A
INNER JOIN ${hggpSchema}.HGPZ010 B ON A.SPEC_ID = B.INVENT_RECORD_ID
LEFT JOIN ${hggpSchema}.hgpz007 C ON A.WH_CODE = C.WH_CODE
WHERE A.INV_QTY
<
= B.WARN_NUM
<include
refid=
"authCondition"
/>
<isNotEmpty
prepend=
" AND "
property=
"spec"
>
A.SPEC = #spec#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"specId"
>
A.SPEC_ID = #specId#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"whCode"
>
A.WH_CODE = #whCode#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"whName"
>
A.WH_NAME LIKE '%' || #whName# || '%'
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"inventType"
>
A.INVENT_TYPE = #inventType#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"inventCode"
>
A.INVENT_CODE = #inventCode#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"inventName"
>
A.INVENT_NAME = #inventName#
</isNotEmpty>
<include
refid=
"order"
/>
</select>
</sqlMap>
\ No newline at end of file
src/main/webapp/HG/KC/HGKC012.js
0 → 100644
View file @
222b3360
$
(
function
()
{
IPLATUI
.
EFGrid
=
{
pageable
:
{
pageSize
:
20
,
pageSizes
:
[
20
,
50
,
70
,
100
],
},
"result"
:
{
columns
:
[],
loadComplete
:
function
(
grid
)
{
// 此grid对象
/*grid.dataSource.bind("change", function(e) {
if (e.field == "inventRecordId") {
var tr,index;
// 获取此model元素信息
var item = e.items[0];
for (let i = 0; i < inventAllGlobalData.length; i++) {
if (inventAllGlobalData[i]['valueField'] === item.inventRecordId) {
resultGrid.setCellValue(item, 'material', inventAllGlobalData[i]['param1Field'])
resultGrid.setCellValue(item, 'unit', inventAllGlobalData[i]['param2Field'])
}
}
}
});*/
}
}
}
// 查询
$
(
"#QUERY"
).
on
(
"click"
,
query
);
});
let
query
=
function
()
{
resultGrid
.
dataSource
.
page
(
1
);
// 点击查询按钮,从第1页开始查询
}
\ No newline at end of file
src/main/webapp/HG/KC/HGKC012.jsp
0 → 100644
View file @
222b3360
<%--
Created by IntelliJ IDEA.
User: 1
Date: 2024/5/16
Time: 18:15
To change this template use File | Settings | File Templates.
--%>
<!DOCTYPE html>
<%@ page contentType="text/html; charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib prefix="EF" tagdir="/WEB-INF/tags/EF" %>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<EF:EFPage title="库存预警查询">
<EF:EFRegion id="inqu" title="查询条件">
<div class="row">
<div class="row">
<EF:EFSelect cname="存货类型" blockId="inqu_status" ename="inventType" row="0" colWidth="3"
filter="contains">
<EF:EFOption label="全部" value=""/>
<EF:EFOptions blockId="invent_type_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
<EF:EFSelect cname="仓库名称" blockId="inqu_status" ename="whCode" row="0" colWidth="3" filter="contains"
defultValue="">
<EF:EFOption label="全部" value=""/>
<EF:EFOptions blockId="wh_record_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
<EF:EFSelect cname="存货名称" blockId="inqu_status" ename="inventCode" row="0" colWidth="3"
filter="contains"
defultValue="">
<EF:EFOption label="全部" value=""/>
<EF:EFOptions blockId="invent_record_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
<EF:EFSelect cname="规格" blockId="inqu_status" ename="spec" row="0" colWidth="3" filter="contains"
defultValue="">
<EF:EFOption label="全部" value=""/>
<EF:EFOptions blockId="spec_name_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
</div>
</div>
</EF:EFRegion>
<EF:EFRegion id="result" title="明细信息">
<EF:EFGrid blockId="result" autoDraw="override" isFloat="true" checkMode="row">
<EF:EFColumn ename="id" cname="内码" hidden="true"/>
<EF:EFColumn ename="inventRecordId" cname="存货档案ID" hidden="true"/>
<EF:EFComboColumn ename="inventType" cname="存货类型" enable="false" width="100" align="center">
<EF:EFOptions blockId="invent_type_block_id" textField="textField" valueField="valueField"/>
</EF:EFComboColumn>
<EF:EFComboColumn ename="whCode" cname="仓库名称" enable="false" width="120" align="center"
columnTemplate="#=textField#" itemTemplate="#=textField#"
blockName="wh_record_block_id" textField="textField" valueField="valueField"
filter="contains">
</EF:EFComboColumn>
<EF:EFComboColumn ename="inventCode" cname="存货名称" enable="false" width="120" align="center"
columnTemplate="#=textField#" itemTemplate="#=textField#"
blockName="invent_record_block_id" textField="textField" valueField="valueField"
filter="contains">
</EF:EFComboColumn>
<EF:EFColumn ename="spec" cname="规格" enable="false" width="120" align="center"/>
<EF:EFColumn ename="material" cname="材质" enable="false" width="120" align="center"/>
<EF:EFColumn ename="unit" cname="单位" enable="false" width="120" align="center"/>
<EF:EFColumn ename="warnNum" cname="预警值" enable="false" width="90" align="right" format="{0:N0}"/>
<EF:EFColumn ename="invQty" cname="库存数量" enable="false" width="90" align="right" format="{0:N0}"/>
<EF:EFColumn ename="invWeight" cname="库存重量(T)" enable="false" width="90" align="right" format="{0:N3}"/>
<EF:EFComboColumn ename="princ" cname="仓库负责人" width="120" align="center" enable="false"
blockName="user_block_id" textField="textField" valueField="valueField"
columnTemplate="#=textField#" itemTemplate="#=textField#"
filter="contains">
</EF:EFComboColumn>
<%--<EF:EFColumn ename="princ" cname="仓库负责人" width="120" align="center"/>--%>
<%-- <EF:EFColumn ename="createdName" cname="创建人" enable="false" width="100" align="center"/>
<EF:EFColumn ename="createdTime" cname="创建时刻" enable="false" width="140" align="center"
editType="datetime" parseFormats="['yyyyMMddHHmmss']"/>--%>
</EF:EFGrid>
</EF:EFRegion>
</EF:EFPage>
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