Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
H
hp-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
hp-smart
Commits
006296a5
Commit
006296a5
authored
Feb 05, 2024
by
yukang
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
57401c2d
3f2de241
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
612 additions
and
133 deletions
+612
-133
HPBI001.java
src/main/java/com/baosight/hpjx/hp/bi/domain/HPBI001.java
+2
-2
ServiceHPBI001.java
.../java/com/baosight/hpjx/hp/bi/service/ServiceHPBI001.java
+13
-3
HPBI001.xml
src/main/java/com/baosight/hpjx/hp/bi/sql/HPBI001.xml
+7
-7
HPKC006.java
src/main/java/com/baosight/hpjx/hp/kc/domain/HPKC006.java
+157
-1
ServiceHPKC006.java
.../java/com/baosight/hpjx/hp/kc/service/ServiceHPKC006.java
+18
-4
HPKC006.xml
src/main/java/com/baosight/hpjx/hp/kc/sql/HPKC006.xml
+89
-26
HPPZ006.java
src/main/java/com/baosight/hpjx/hp/pz/domain/HPPZ006.java
+4
-4
ServiceHPPZ004.java
.../java/com/baosight/hpjx/hp/pz/service/ServiceHPPZ004.java
+5
-1
ServiceHPPZ006.java
.../java/com/baosight/hpjx/hp/pz/service/ServiceHPPZ006.java
+26
-31
ServiceHPPZ007.java
.../java/com/baosight/hpjx/hp/pz/service/ServiceHPPZ007.java
+5
-1
HPPZ006.xml
src/main/java/com/baosight/hpjx/hp/pz/sql/HPPZ006.xml
+4
-4
ServiceHPSC003.java
.../java/com/baosight/hpjx/hp/sc/service/ServiceHPSC003.java
+2
-1
ServiceHPSC004.java
.../java/com/baosight/hpjx/hp/sc/service/ServiceHPSC004.java
+22
-0
HPSC003.xml
src/main/java/com/baosight/hpjx/hp/sc/sql/HPSC003.xml
+35
-1
HPSC004.xml
src/main/java/com/baosight/hpjx/hp/sc/sql/HPSC004.xml
+22
-0
HPBI001.js
src/main/webapp/HP/BI/HPBI001.js
+16
-32
HPBI001.jsp
src/main/webapp/HP/BI/HPBI001.jsp
+12
-3
HPKC006.js
src/main/webapp/HP/KC/HPKC006.js
+132
-5
HPKC006.jsp
src/main/webapp/HP/KC/HPKC006.jsp
+10
-4
HPSC003.js
src/main/webapp/HP/SC/HPSC003.js
+28
-0
HPSC003.jsp
src/main/webapp/HP/SC/HPSC003.jsp
+3
-3
No files found.
src/main/java/com/baosight/hpjx/hp/bi/domain/HPBI001.java
View file @
006296a5
...
@@ -392,7 +392,7 @@ public class HPBI001 extends DaoEPBase {
...
@@ -392,7 +392,7 @@ public class HPBI001 extends DaoEPBase {
* @param novValue
* @param novValue
*/
*/
public
void
setnovValue
(
String
novValue
)
{
public
void
setnovValue
(
String
novValue
)
{
this
.
oct
Value
=
novValue
;
this
.
nov
Value
=
novValue
;
}
}
/**
/**
...
@@ -409,7 +409,7 @@ public class HPBI001 extends DaoEPBase {
...
@@ -409,7 +409,7 @@ public class HPBI001 extends DaoEPBase {
* @param decValue
* @param decValue
*/
*/
public
void
setdecValue
(
String
decValue
)
{
public
void
setdecValue
(
String
decValue
)
{
this
.
oct
Value
=
decValue
;
this
.
dec
Value
=
decValue
;
}
}
/**
/**
...
...
src/main/java/com/baosight/hpjx/hp/bi/service/ServiceHPBI001.java
View file @
006296a5
...
@@ -7,6 +7,7 @@ import com.baosight.hpjx.core.dao.DaoUtils;
...
@@ -7,6 +7,7 @@ import com.baosight.hpjx.core.dao.DaoUtils;
import
com.baosight.hpjx.hp.bi.domain.HPBI001
;
import
com.baosight.hpjx.hp.bi.domain.HPBI001
;
import
com.baosight.hpjx.hp.constant.HPConstant
;
import
com.baosight.hpjx.hp.constant.HPConstant
;
import
com.baosight.hpjx.hp.kc.domain.HPKC001
;
import
com.baosight.hpjx.hp.kc.domain.HPKC001
;
import
com.baosight.hpjx.hp.kc.domain.HPKC007
;
import
com.baosight.hpjx.hp.kc.tools.HPKCTools
;
import
com.baosight.hpjx.hp.kc.tools.HPKCTools
;
import
com.baosight.hpjx.hp.pz.tools.HPPZTools
;
import
com.baosight.hpjx.hp.pz.tools.HPPZTools
;
import
com.baosight.hpjx.util.*
;
import
com.baosight.hpjx.util.*
;
...
@@ -40,9 +41,18 @@ public class ServiceHPBI001 extends ServiceBase {
...
@@ -40,9 +41,18 @@ public class ServiceHPBI001 extends ServiceBase {
* @param inInfo
* @param inInfo
* @return
* @return
*/
*/
/* public EiInfo initLoad(EiInfo inInfo) {
public
EiInfo
initLoad
(
EiInfo
inInfo
)
{
return query(inInfo);
try
{
}*/
Map
queryMap
=
new
HashMap
();
queryMap
.
put
(
"inventTypes"
,
DEFAULT_INVENT_CODE
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
WH_RECORD_BLOCK_ID
),
queryMap
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
FACTORY_RECORD_BLOCK_ID
),
queryMap
);
//inInfo.addBlock(EiConstant.resultBlock).addBlockMeta(new HPKC007().eiMetadata);
}
catch
(
PlatException
e
)
{
LogUtils
.
setDetailMsg
(
inInfo
,
e
,
"初始化失败"
);
}
return
inInfo
;
}
/**
/**
* 查询操作
* 查询操作
...
...
src/main/java/com/baosight/hpjx/hp/bi/sql/HPBI001.xml
View file @
006296a5
...
@@ -59,7 +59,7 @@
...
@@ -59,7 +59,7 @@
'' AS DATE
'' AS DATE
FROM DUAL
FROM DUAL
UNION ALL
UNION ALL
SELECT '人均产量(kg)' AS INDNAME,
''
AS DAYVALUE,
SELECT '人均产量(kg)' AS INDNAME,
111
AS DAYVALUE,
14 AS MONVALUE, 14 AS YEARVALUE,
14 AS MONVALUE, 14 AS YEARVALUE,
14 AS JANVALUE, 14 AS FEBVALUE,
14 AS JANVALUE, 14 AS FEBVALUE,
14 AS MARVLAUE, 14 AS APRVALUE,
14 AS MARVLAUE, 14 AS APRVALUE,
...
@@ -72,12 +72,12 @@
...
@@ -72,12 +72,12 @@
FROM DUAL
FROM DUAL
) A
) A
WHERE 1=1
WHERE 1=1
<isNotEmpty
prepend=
" AND "
property=
"factory"
>
<!--
<isNotEmpty prepend=" AND " property="factory">
FACTORY LIKE CONCAT('%',CONCAT( #factory#,'%'))
FACTORY LIKE CONCAT('%',CONCAT( #factory#,'%'))
</isNotEmpty>
</isNotEmpty>
-->
<isNotEmpty
prepend=
" AND "
property=
"date"
>
<!--
<isNotEmpty prepend=" AND " property="date">
DATE = #date#
DATE = #date#
</isNotEmpty>
</isNotEmpty>
-->
<dynamic
prepend=
"ORDER BY"
>
<dynamic
prepend=
"ORDER BY"
>
<isEmpty
property=
"orderBy"
>
<isEmpty
property=
"orderBy"
>
INDNAME desc
INDNAME desc
...
@@ -102,12 +102,12 @@
...
@@ -102,12 +102,12 @@
SELECT '人均日产' AS SERIES,'585kg' AS VALUE,NULL AS FACTORY,NULL AS DATE, 5 AS SORT FROM DUAL
SELECT '人均日产' AS SERIES,'585kg' AS VALUE,NULL AS FACTORY,NULL AS DATE, 5 AS SORT FROM DUAL
) A
) A
WHERE 1=1
WHERE 1=1
<isNotEmpty
prepend=
" AND "
property=
"factory"
>
<!--
<isNotEmpty prepend=" AND " property="factory">
FACTORY LIKE CONCAT('%',CONCAT( #factory#,'%'))
FACTORY LIKE CONCAT('%',CONCAT( #factory#,'%'))
</isNotEmpty>
</isNotEmpty>
<isNotEmpty prepend=" AND " property="date">
<isNotEmpty prepend=" AND " property="date">
DATE = #date#
DATE = #date#
</isNotEmpty>
</isNotEmpty>
-->
<dynamic
prepend=
"ORDER BY"
>
<dynamic
prepend=
"ORDER BY"
>
<isEmpty
property=
"orderBy"
>
<isEmpty
property=
"orderBy"
>
SORT asc
SORT asc
...
...
src/main/java/com/baosight/hpjx/hp/kc/domain/HPKC006.java
View file @
006296a5
...
@@ -32,9 +32,15 @@ public class HPKC006 extends DaoEPBase {
...
@@ -32,9 +32,15 @@ public class HPKC006 extends DaoEPBase {
public
static
final
String
FIELD_INVENT_TYPE
=
"inventType"
;
/* 存货类型*/
public
static
final
String
FIELD_INVENT_TYPE
=
"inventType"
;
/* 存货类型*/
public
static
final
String
FIELD_INVENT_CODE
=
"inventCode"
;
/* 存货编码*/
public
static
final
String
FIELD_INVENT_CODE
=
"inventCode"
;
/* 存货编码*/
public
static
final
String
FIELD_INVENT_NAME
=
"inventName"
;
/* 存货名称*/
public
static
final
String
FIELD_INVENT_NAME
=
"inventName"
;
/* 存货名称*/
public
static
final
String
FIELD_INVENT_RECORD_ID
=
"inventRecordId"
;
/*
规格
*/
public
static
final
String
FIELD_INVENT_RECORD_ID
=
"inventRecordId"
;
/*
存货档案ID
*/
public
static
final
String
FIELD_AMOUNT
=
"amount"
;
/* 数量*/
public
static
final
String
FIELD_AMOUNT
=
"amount"
;
/* 数量*/
public
static
final
String
FIELD_WEIGHT
=
"weight"
;
/* 重量*/
public
static
final
String
FIELD_WEIGHT
=
"weight"
;
/* 重量*/
public
static
final
String
FIELD_LENGTH
=
"length"
;
/* 长*/
public
static
final
String
FIELD_WIDTH
=
"width"
;
/* 宽*/
public
static
final
String
FIELD_THICK
=
"thick"
;
/* 厚*/
public
static
final
String
FIELD_MATERIAL
=
"material"
;
/* 材质*/
public
static
final
String
FIELD_COEFFICIENT
=
"coefficient"
;
/* 系数*/
public
static
final
String
FIELD_UNIT
=
"unit"
;
/* 单位*/
public
static
final
String
FIELD_STATUS
=
"status"
;
/* 状态 0提交 1保存*/
public
static
final
String
FIELD_STATUS
=
"status"
;
/* 状态 0提交 1保存*/
public
static
final
String
FIELD_REMARK
=
"remark"
;
/* 备注*/
public
static
final
String
FIELD_REMARK
=
"remark"
;
/* 备注*/
public
static
final
String
FIELD_OLD_ENTER_NO
=
"oldEnterNo"
;
/* 原入库单号*/
public
static
final
String
FIELD_OLD_ENTER_NO
=
"oldEnterNo"
;
/* 原入库单号*/
...
@@ -90,6 +96,12 @@ public class HPKC006 extends DaoEPBase {
...
@@ -90,6 +96,12 @@ public class HPKC006 extends DaoEPBase {
private
BigDecimal
amount
=
new
BigDecimal
(
0.00
);
/* 数量*/
private
BigDecimal
amount
=
new
BigDecimal
(
0.00
);
/* 数量*/
private
BigDecimal
weight
=
new
BigDecimal
(
0.00
);
/* 重量*/
private
BigDecimal
weight
=
new
BigDecimal
(
0.00
);
/* 重量*/
private
Integer
status
=
new
Integer
(
0
);
/* 状态 0提交 1保存*/
private
Integer
status
=
new
Integer
(
0
);
/* 状态 0提交 1保存*/
private
BigDecimal
length
=
new
BigDecimal
(
0.00
);
/* 长*/
private
BigDecimal
width
=
new
BigDecimal
(
0.00
);
/* 宽*/
private
BigDecimal
thick
=
new
BigDecimal
(
0.00
);
/* 厚*/
private
String
material
=
" "
;
/* 材质*/
private
BigDecimal
coefficient
=
new
BigDecimal
(
0.00
);
/* 系数*/
private
String
unit
=
" "
;
/* 单位*/
private
String
remark
=
" "
;
/* 备注*/
private
String
remark
=
" "
;
/* 备注*/
private
String
oldEnterNo
=
" "
;
/* 原入库单号*/
private
String
oldEnterNo
=
" "
;
/* 原入库单号*/
private
String
createdBy
=
" "
;
/* 创建人*/
private
String
createdBy
=
" "
;
/* 创建人*/
...
@@ -165,6 +177,42 @@ public class HPKC006 extends DaoEPBase {
...
@@ -165,6 +177,42 @@ public class HPKC006 extends DaoEPBase {
eiColumn
.
setDescName
(
"重量"
);
eiColumn
.
setDescName
(
"重量"
);
eiMetadata
.
addMeta
(
eiColumn
);
eiMetadata
.
addMeta
(
eiColumn
);
eiColumn
=
new
EiColumn
(
FIELD_LENGTH
);
eiColumn
.
setType
(
"N"
);
eiColumn
.
setScaleLength
(
2
);
eiColumn
.
setFieldLength
(
10
);
eiColumn
.
setDescName
(
"长"
);
eiMetadata
.
addMeta
(
eiColumn
);
eiColumn
=
new
EiColumn
(
FIELD_WIDTH
);
eiColumn
.
setType
(
"N"
);
eiColumn
.
setScaleLength
(
2
);
eiColumn
.
setFieldLength
(
10
);
eiColumn
.
setDescName
(
"宽"
);
eiMetadata
.
addMeta
(
eiColumn
);
eiColumn
=
new
EiColumn
(
FIELD_THICK
);
eiColumn
.
setType
(
"N"
);
eiColumn
.
setScaleLength
(
2
);
eiColumn
.
setFieldLength
(
10
);
eiColumn
.
setDescName
(
"厚"
);
eiMetadata
.
addMeta
(
eiColumn
);
eiColumn
=
new
EiColumn
(
FIELD_MATERIAL
);
eiColumn
.
setDescName
(
"材质"
);
eiMetadata
.
addMeta
(
eiColumn
);
eiColumn
=
new
EiColumn
(
FIELD_COEFFICIENT
);
eiColumn
.
setType
(
"N"
);
eiColumn
.
setScaleLength
(
2
);
eiColumn
.
setFieldLength
(
10
);
eiColumn
.
setDescName
(
"系数"
);
eiMetadata
.
addMeta
(
eiColumn
);
eiColumn
=
new
EiColumn
(
FIELD_UNIT
);
eiColumn
.
setDescName
(
"单位"
);
eiMetadata
.
addMeta
(
eiColumn
);
eiColumn
=
new
EiColumn
(
FIELD_STATUS
);
eiColumn
=
new
EiColumn
(
FIELD_STATUS
);
eiColumn
.
setDescName
(
"状态 0提交 1保存"
);
eiColumn
.
setDescName
(
"状态 0提交 1保存"
);
eiMetadata
.
addMeta
(
eiColumn
);
eiMetadata
.
addMeta
(
eiColumn
);
...
@@ -424,6 +472,102 @@ public class HPKC006 extends DaoEPBase {
...
@@ -424,6 +472,102 @@ public class HPKC006 extends DaoEPBase {
this
.
weight
=
weight
;
this
.
weight
=
weight
;
}
}
/**
/**
* get the length - 长.
* @return the length
*/
public
BigDecimal
getLength
()
{
return
this
.
length
;
}
/**
* set the length - 长.
*
* @param length - 长
*/
public
void
setLength
(
BigDecimal
length
)
{
this
.
length
=
length
;
}
/**
* get the width - 宽.
* @return the width
*/
public
BigDecimal
getWidth
()
{
return
this
.
width
;
}
/**
* set the width - 宽.
*
* @param width - 宽
*/
public
void
setWidth
(
BigDecimal
width
)
{
this
.
width
=
width
;
}
/**
* get the thick - 厚.
* @return the thick
*/
public
BigDecimal
getThick
()
{
return
this
.
thick
;
}
/**
* set the thick - 厚.
*
* @param thick - 厚
*/
public
void
setThick
(
BigDecimal
thick
)
{
this
.
thick
=
thick
;
}
/**
* get the material - 材质.
* @return the material
*/
public
String
getMaterial
()
{
return
this
.
material
;
}
/**
* set the material - 材质.
*
* @param material - 材质
*/
public
void
setMaterial
(
String
material
)
{
this
.
material
=
material
;
}
/**
* get the coefficient - 系数.
* @return the coefficient
*/
public
BigDecimal
getCoefficient
()
{
return
this
.
coefficient
;
}
/**
* set the coefficient - 系数.
*
* @param coefficient - 系数
*/
public
void
setCoefficient
(
BigDecimal
coefficient
)
{
this
.
coefficient
=
coefficient
;
}
/**
* get the unit - 单位.
* @return the unit
*/
public
String
getUnit
()
{
return
this
.
unit
;
}
/**
* set the unit - 单位.
*
* @param unit - 单位
*/
public
void
setUnit
(
String
unit
)
{
this
.
unit
=
unit
;
}
/**
* get the status - 状态 0提交 1保存.
* get the status - 状态 0提交 1保存.
* @return the status
* @return the status
*/
*/
...
@@ -604,6 +748,12 @@ public class HPKC006 extends DaoEPBase {
...
@@ -604,6 +748,12 @@ public class HPKC006 extends DaoEPBase {
setInventRecordId
(
NumberUtils
.
toLong
(
StringUtils
.
toString
(
map
.
get
(
FIELD_INVENT_RECORD_ID
)),
inventRecordId
));
setInventRecordId
(
NumberUtils
.
toLong
(
StringUtils
.
toString
(
map
.
get
(
FIELD_INVENT_RECORD_ID
)),
inventRecordId
));
setAmount
(
NumberUtils
.
toBigDecimal
(
StringUtils
.
toString
(
map
.
get
(
FIELD_AMOUNT
)),
amount
));
setAmount
(
NumberUtils
.
toBigDecimal
(
StringUtils
.
toString
(
map
.
get
(
FIELD_AMOUNT
)),
amount
));
setWeight
(
NumberUtils
.
toBigDecimal
(
StringUtils
.
toString
(
map
.
get
(
FIELD_WEIGHT
)),
weight
));
setWeight
(
NumberUtils
.
toBigDecimal
(
StringUtils
.
toString
(
map
.
get
(
FIELD_WEIGHT
)),
weight
));
setLength
(
NumberUtils
.
toBigDecimal
(
StringUtils
.
toString
(
map
.
get
(
FIELD_LENGTH
)),
length
));
setWidth
(
NumberUtils
.
toBigDecimal
(
StringUtils
.
toString
(
map
.
get
(
FIELD_WIDTH
)),
width
));
setThick
(
NumberUtils
.
toBigDecimal
(
StringUtils
.
toString
(
map
.
get
(
FIELD_THICK
)),
thick
));
setMaterial
(
StringUtils
.
defaultIfEmpty
(
StringUtils
.
toString
(
map
.
get
(
FIELD_MATERIAL
)),
material
));
setCoefficient
(
NumberUtils
.
toBigDecimal
(
StringUtils
.
toString
(
map
.
get
(
FIELD_COEFFICIENT
)),
coefficient
));
setUnit
(
StringUtils
.
defaultIfEmpty
(
StringUtils
.
toString
(
map
.
get
(
FIELD_UNIT
)),
unit
));
setStatus
(
NumberUtils
.
toInteger
(
StringUtils
.
toString
(
map
.
get
(
FIELD_STATUS
)),
status
));
setStatus
(
NumberUtils
.
toInteger
(
StringUtils
.
toString
(
map
.
get
(
FIELD_STATUS
)),
status
));
setRemark
(
StringUtils
.
defaultIfEmpty
(
StringUtils
.
toString
(
map
.
get
(
FIELD_REMARK
)),
remark
));
setRemark
(
StringUtils
.
defaultIfEmpty
(
StringUtils
.
toString
(
map
.
get
(
FIELD_REMARK
)),
remark
));
setOldEnterNo
(
StringUtils
.
defaultIfEmpty
(
StringUtils
.
toString
(
map
.
get
(
FIELD_OLD_ENTER_NO
)),
oldEnterNo
));
setOldEnterNo
(
StringUtils
.
defaultIfEmpty
(
StringUtils
.
toString
(
map
.
get
(
FIELD_OLD_ENTER_NO
)),
oldEnterNo
));
...
@@ -636,6 +786,12 @@ public class HPKC006 extends DaoEPBase {
...
@@ -636,6 +786,12 @@ public class HPKC006 extends DaoEPBase {
map
.
put
(
FIELD_INVENT_RECORD_ID
,
StringUtils
.
toString
(
inventRecordId
,
eiMetadata
.
getMeta
(
FIELD_INVENT_RECORD_ID
)));
map
.
put
(
FIELD_INVENT_RECORD_ID
,
StringUtils
.
toString
(
inventRecordId
,
eiMetadata
.
getMeta
(
FIELD_INVENT_RECORD_ID
)));
map
.
put
(
FIELD_AMOUNT
,
StringUtils
.
toString
(
amount
,
eiMetadata
.
getMeta
(
FIELD_AMOUNT
)));
map
.
put
(
FIELD_AMOUNT
,
StringUtils
.
toString
(
amount
,
eiMetadata
.
getMeta
(
FIELD_AMOUNT
)));
map
.
put
(
FIELD_WEIGHT
,
StringUtils
.
toString
(
weight
,
eiMetadata
.
getMeta
(
FIELD_WEIGHT
)));
map
.
put
(
FIELD_WEIGHT
,
StringUtils
.
toString
(
weight
,
eiMetadata
.
getMeta
(
FIELD_WEIGHT
)));
map
.
put
(
FIELD_LENGTH
,
StringUtils
.
toString
(
length
,
eiMetadata
.
getMeta
(
FIELD_LENGTH
)));
map
.
put
(
FIELD_WIDTH
,
StringUtils
.
toString
(
width
,
eiMetadata
.
getMeta
(
FIELD_WIDTH
)));
map
.
put
(
FIELD_THICK
,
StringUtils
.
toString
(
thick
,
eiMetadata
.
getMeta
(
FIELD_THICK
)));
map
.
put
(
FIELD_MATERIAL
,
StringUtils
.
toString
(
material
,
eiMetadata
.
getMeta
(
FIELD_MATERIAL
)));
map
.
put
(
FIELD_COEFFICIENT
,
StringUtils
.
toString
(
coefficient
,
eiMetadata
.
getMeta
(
FIELD_COEFFICIENT
)));
map
.
put
(
FIELD_UNIT
,
StringUtils
.
toString
(
unit
,
eiMetadata
.
getMeta
(
FIELD_UNIT
)));
map
.
put
(
FIELD_STATUS
,
StringUtils
.
toString
(
status
,
eiMetadata
.
getMeta
(
FIELD_STATUS
)));
map
.
put
(
FIELD_STATUS
,
StringUtils
.
toString
(
status
,
eiMetadata
.
getMeta
(
FIELD_STATUS
)));
map
.
put
(
FIELD_REMARK
,
StringUtils
.
toString
(
remark
,
eiMetadata
.
getMeta
(
FIELD_REMARK
)));
map
.
put
(
FIELD_REMARK
,
StringUtils
.
toString
(
remark
,
eiMetadata
.
getMeta
(
FIELD_REMARK
)));
map
.
put
(
FIELD_OLD_ENTER_NO
,
StringUtils
.
toString
(
oldEnterNo
,
eiMetadata
.
getMeta
(
FIELD_OLD_ENTER_NO
)));
map
.
put
(
FIELD_OLD_ENTER_NO
,
StringUtils
.
toString
(
oldEnterNo
,
eiMetadata
.
getMeta
(
FIELD_OLD_ENTER_NO
)));
...
...
src/main/java/com/baosight/hpjx/hp/kc/service/ServiceHPKC006.java
View file @
006296a5
...
@@ -8,6 +8,7 @@ import com.baosight.hpjx.hp.constant.HPConstant;
...
@@ -8,6 +8,7 @@ import com.baosight.hpjx.hp.constant.HPConstant;
import
com.baosight.hpjx.hp.constant.HPSqlConstant
;
import
com.baosight.hpjx.hp.constant.HPSqlConstant
;
import
com.baosight.hpjx.hp.kc.domain.HPKC006
;
import
com.baosight.hpjx.hp.kc.domain.HPKC006
;
import
com.baosight.hpjx.hp.kc.tools.HPKCTools
;
import
com.baosight.hpjx.hp.kc.tools.HPKCTools
;
import
com.baosight.hpjx.hp.pz.domain.HPPZ006
;
import
com.baosight.hpjx.hp.pz.tools.HPPZTools
;
import
com.baosight.hpjx.hp.pz.tools.HPPZTools
;
import
com.baosight.hpjx.util.AssertUtils
;
import
com.baosight.hpjx.util.AssertUtils
;
import
com.baosight.hpjx.util.BeanUtils
;
import
com.baosight.hpjx.util.BeanUtils
;
...
@@ -20,6 +21,7 @@ import com.baosight.iplat4j.core.ei.EiConstant;
...
@@ -20,6 +21,7 @@ import com.baosight.iplat4j.core.ei.EiConstant;
import
com.baosight.iplat4j.core.ei.EiInfo
;
import
com.baosight.iplat4j.core.ei.EiInfo
;
import
com.baosight.iplat4j.core.exception.PlatException
;
import
com.baosight.iplat4j.core.exception.PlatException
;
import
com.baosight.iplat4j.core.service.impl.ServiceBase
;
import
com.baosight.iplat4j.core.service.impl.ServiceBase
;
import
com.baosight.iplat4j.core.util.NumberUtils
;
import
com.baosight.iplat4j.ed.util.SequenceGenerator
;
import
com.baosight.iplat4j.ed.util.SequenceGenerator
;
import
org.apache.commons.collections.MapUtils
;
import
org.apache.commons.collections.MapUtils
;
...
@@ -52,7 +54,7 @@ public class ServiceHPKC006 extends ServiceBase {
...
@@ -52,7 +54,7 @@ public class ServiceHPKC006 extends ServiceBase {
Map
queryMap
=
new
HashMap
();
Map
queryMap
=
new
HashMap
();
queryMap
.
put
(
"inventTypes"
,
DEFAULT_INVENT_CODE
);
queryMap
.
put
(
"inventTypes"
,
DEFAULT_INVENT_CODE
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
WH_RECORD_BLOCK_ID
),
queryMap
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
WH_RECORD_BLOCK_ID
),
queryMap
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
INVENT_NAME_BLOCK_ID
),
queryMap
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
INVENT_NAME_BLOCK_ID
),
queryMap
,
false
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
INVENT_SPEC_BLOCK_ID
),
queryMap
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
INVENT_SPEC_BLOCK_ID
),
queryMap
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
SPEC_NAME_BLOCK_ID
),
queryMap
,
false
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
SPEC_NAME_BLOCK_ID
),
queryMap
,
false
);
inInfo
.
addBlock
(
EiConstant
.
resultBlock
).
addBlockMeta
(
new
HPKC006
().
eiMetadata
);
inInfo
.
addBlock
(
EiConstant
.
resultBlock
).
addBlockMeta
(
new
HPKC006
().
eiMetadata
);
...
@@ -105,6 +107,18 @@ public class ServiceHPKC006 extends ServiceBase {
...
@@ -105,6 +107,18 @@ public class ServiceHPKC006 extends ServiceBase {
this
.
setBaseInfo
(
fKc006
);
this
.
setBaseInfo
(
fKc006
);
// 生成入库单号
// 生成入库单号
fKc006
.
setOtherEnterNo
(
SequenceGenerator
.
getNextSequence
(
HPConstant
.
SequenceId
.
OTHER_ENTER_NO
));
fKc006
.
setOtherEnterNo
(
SequenceGenerator
.
getNextSequence
(
HPConstant
.
SequenceId
.
OTHER_ENTER_NO
));
HPPZ006
hppz006
=
HPPZTools
.
checkAndSavePZ06
(
Integer
.
parseInt
(
resultRows
.
get
(
i
).
get
(
"inventType"
).
toString
()),
resultRows
.
get
(
i
).
get
(
"inventName"
).
toString
(),
NumberUtils
.
toBigDecimal
(
resultRows
.
get
(
i
).
get
(
"length"
)),
NumberUtils
.
toBigDecimal
(
resultRows
.
get
(
i
).
get
(
"width"
)),
NumberUtils
.
toBigDecimal
(
resultRows
.
get
(
i
).
get
(
"thick"
)),
NumberUtils
.
toBigDecimal
(
resultRows
.
get
(
i
).
get
(
"coefficient"
)),
resultRows
.
get
(
i
).
get
(
"material"
).
toString
(),
resultRows
.
get
(
i
).
get
(
"unit"
).
toString
()
);
fKc006
.
setInventRecordId
(
hppz006
.
getId
());
fKc006
.
setInventCode
(
hppz006
.
getInventCode
());
DaoUtils
.
insert
(
HPKC006
.
INSERT
,
fKc006
);
DaoUtils
.
insert
(
HPKC006
.
INSERT
,
fKc006
);
// 修改库存
// 修改库存
HPKCTools
.
updateStock
(
fKc006
.
getWhCode
(),
fKc006
.
getInventRecordId
(),
fKc006
.
getAmount
(),
HPKCTools
.
updateStock
(
fKc006
.
getWhCode
(),
fKc006
.
getInventRecordId
(),
fKc006
.
getAmount
(),
...
@@ -168,8 +182,8 @@ public class ServiceHPKC006 extends ServiceBase {
...
@@ -168,8 +182,8 @@ public class ServiceHPKC006 extends ServiceBase {
HPKC006
fKc006
=
new
HPKC006
();
HPKC006
fKc006
=
new
HPKC006
();
fKc006
.
fromMap
(
resultRows
.
get
(
i
));
fKc006
.
fromMap
(
resultRows
.
get
(
i
));
AssertUtils
.
isEmpty
(
fKc006
.
getWhCode
(),
"仓库名称不能为空"
);
AssertUtils
.
isEmpty
(
fKc006
.
getWhCode
(),
"仓库名称不能为空"
);
AssertUtils
.
isNull
(
fKc006
.
getInvent
Cod
e
(),
"存货名称不能为空"
);
AssertUtils
.
isNull
(
fKc006
.
getInvent
Nam
e
(),
"存货名称不能为空"
);
AssertUtils
.
isNull
(
fKc006
.
getInventRecordId
(),
"规格不能为空"
);
//
AssertUtils.isNull(fKc006.getInventRecordId(), "规格不能为空");
AssertUtils
.
isGt
(
BigDecimal
.
ZERO
,
fKc006
.
getAmount
(),
"数量必须大于0"
);
AssertUtils
.
isGt
(
BigDecimal
.
ZERO
,
fKc006
.
getAmount
(),
"数量必须大于0"
);
AssertUtils
.
isGt
(
BigDecimal
.
ZERO
,
fKc006
.
getWeight
(),
"重量必须大于0"
);
AssertUtils
.
isGt
(
BigDecimal
.
ZERO
,
fKc006
.
getWeight
(),
"重量必须大于0"
);
}
}
...
@@ -186,7 +200,7 @@ public class ServiceHPKC006 extends ServiceBase {
...
@@ -186,7 +200,7 @@ public class ServiceHPKC006 extends ServiceBase {
// 仓库名称
// 仓库名称
fKc006
.
setWhName
(
HPPZTools
.
getPz007ByCode
(
fKc006
.
getWhCode
()).
getWhName
());
fKc006
.
setWhName
(
HPPZTools
.
getPz007ByCode
(
fKc006
.
getWhCode
()).
getWhName
());
// 存货名称
// 存货名称
fKc006
.
setInventName
(
HPPZTools
.
getPz004ByCode
(
fKc006
.
getInventCode
()).
getInventName
());
//
fKc006.setInventName(HPPZTools.getPz004ByCode(fKc006.getInventCode()).getInventName());
}
}
/**
/**
...
...
src/main/java/com/baosight/hpjx/hp/kc/sql/HPKC006.xml
View file @
006296a5
...
@@ -3,28 +3,34 @@
...
@@ -3,28 +3,34 @@
<sqlMap
namespace=
"HPKC006"
>
<sqlMap
namespace=
"HPKC006"
>
<sql
id=
"column"
>
<sql
id=
"column"
>
ID as "id",
A.ID as "id",
COMPANY_CODE as "companyCode",
<!-- 企业编码 预留 -->
A.COMPANY_CODE as "companyCode",
<!-- 企业编码 预留 -->
DEP_CODE as "depCode",
<!-- 部门编码 预留 -->
A.DEP_CODE as "depCode",
<!-- 部门编码 预留 -->
RECEIPT_DATE as "receiptDate",
<!-- 单据日期 -->
A.RECEIPT_DATE as "receiptDate",
<!-- 单据日期 -->
OTHER_ENTER_NO as "otherEnterNo",
<!-- 其他入库单号 -->
A.OTHER_ENTER_NO as "otherEnterNo",
<!-- 其他入库单号 -->
WH_CODE as "whCode",
<!-- 仓库编码 -->
A.WH_CODE as "whCode",
<!-- 仓库编码 -->
WH_NAME as "whName",
<!-- 仓库名称 -->
A.WH_NAME as "whName",
<!-- 仓库名称 -->
INVENT_TYPE as "inventType",
<!-- 存货类型 -->
A.INVENT_TYPE as "inventType",
<!-- 存货类型 -->
INVENT_CODE as "inventCode",
<!-- 存货编码 -->
A.INVENT_CODE as "inventCode",
<!-- 存货编码 -->
INVENT_NAME as "inventName",
<!-- 存货名称 -->
A.INVENT_NAME as "inventName",
<!-- 存货名称 -->
INVENT_RECORD_ID as "inventRecordId",
<!-- 规格 -->
A.INVENT_RECORD_ID as "inventRecordId",
<!-- 规格 -->
AMOUNT as "amount",
<!-- 数量 -->
A.AMOUNT as "amount",
<!-- 数量 -->
WEIGHT as "weight",
<!-- 重量 -->
A.WEIGHT as "weight",
<!-- 重量 -->
STATUS as "status",
<!-- 状态 0提交 1保存 -->
B.LENGTH as "length",
REMARK as "remark",
<!-- 备注 -->
B.WIDTH as "width",
OLD_ENTER_NO as "oldEnterNo",
<!-- 原入库单号 -->
B.THICK as "thick",
CREATED_BY as "createdBy",
<!-- 创建人 -->
B.MATERIAL as "material",
CREATED_NAME as "createdName",
<!-- 创建人名称 -->
B.COEFFICIENT as "coefficient",
CREATED_TIME as "createdTime",
<!-- 创建时间 -->
B.UNIT AS "unit",
UPDATED_BY as "updatedBy",
<!-- 更新人 -->
A.STATUS as "status",
<!-- 状态 0提交 1保存 -->
UPDATED_NAME as "updatedName",
<!-- 更新人名称 -->
A.REMARK as "remark",
<!-- 备注 -->
UPDATED_TIME as "updatedTime"
<!-- 更新时间 -->
A.OLD_ENTER_NO as "oldEnterNo",
<!-- 原入库单号 -->
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"
<!-- 更新时间 -->
</sql>
</sql>
<sql
id=
"condition"
>
<sql
id=
"condition"
>
...
@@ -95,7 +101,7 @@
...
@@ -95,7 +101,7 @@
$orderBy$
$orderBy$
</isNotEmpty>
</isNotEmpty>
<isEmpty
property=
"orderBy"
>
<isEmpty
property=
"orderBy"
>
ID DESC
A.
ID DESC
</isEmpty>
</isEmpty>
</dynamic>
</dynamic>
</sql>
</sql>
...
@@ -103,10 +109,67 @@
...
@@ -103,10 +109,67 @@
<select
id=
"query"
parameterClass=
"java.util.HashMap"
resultClass=
"com.baosight.hpjx.hp.kc.domain.HPKC006"
>
<select
id=
"query"
parameterClass=
"java.util.HashMap"
resultClass=
"com.baosight.hpjx.hp.kc.domain.HPKC006"
>
SELECT
SELECT
<include
refid=
"column"
/>
<include
refid=
"column"
/>
FROM hpjx.t_hpkc006
FROM hpjx.t_hpkc006 A
LEFT JOIN hpjx.t_hppz006 B ON A.INVENT_RECORD_ID = B.ID
WHERE 1=1
WHERE 1=1
<include
refid=
"condition"
/>
<isNotEmpty
prepend=
" AND "
property=
"id"
>
<include
refid=
"customCondition"
/>
A.ID = #id#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"companyCode"
>
A.COMPANY_CODE = #companyCode#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"depCode"
>
A.DEP_CODE = #depCode#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"receiptDate"
>
A.RECEIPT_DATE = #receiptDate#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"otherEnterNo"
>
A.OTHER_ENTER_NO = #otherEnterNo#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"whCode"
>
A.WH_CODE = #whCode#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"whName"
>
A.WH_NAME = #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>
<isNotEmpty
prepend=
" AND "
property=
"inventRecordId"
>
A.INVENT_RECORD_ID = #inventRecordId#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"deleteFlag"
>
A.DELETE_FLAG = #deleteFlag#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"otherEnterNos"
>
A.OTHER_ENTER_NO IN
<iterate
close=
")"
open=
"("
conjunction=
","
property=
"otherEnterNos"
>
#otherEnterNos[]#
</iterate>
</isNotEmpty>
<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.INVENT_RECORD_ID IN (SELECT ID FROM ${hpjxSchema}.T_HPPZ006 WHERE SPEC = '')
</isEqual>
<isNotEqual
property=
"spec"
compareValue=
"无规格"
>
A.INVENT_RECORD_ID IN (SELECT ID FROM ${hpjxSchema}.T_HPPZ006 WHERE SPEC = #spec#)
</isNotEqual>
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"createdDateFrom"
>
A.CREATED_TIME
>
= CONCAT(REPLACE(#createdDateFrom#, '-', ''), '000000')
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"createdDateTo"
>
A.CREATED_TIME
<
= CONCAT(REPLACE(#createdDateTo#, '-', ''), '235959')
</isNotEmpty>
<!--<include refid="condition"/>-->
<!--<include refid="customCondition"/>-->
<include
refid=
"order"
/>
<include
refid=
"order"
/>
</select>
</select>
...
...
src/main/java/com/baosight/hpjx/hp/pz/domain/HPPZ006.java
View file @
006296a5
...
@@ -78,11 +78,11 @@ public class HPPZ006 extends DaoEPBase {
...
@@ -78,11 +78,11 @@ public class HPPZ006 extends DaoEPBase {
private
String
inventName
=
" "
;
/* 存货名称*/
private
String
inventName
=
" "
;
/* 存货名称*/
private
Integer
status
=
1
;
/* 状态 0未启用 1启用*/
private
Integer
status
=
1
;
/* 状态 0未启用 1启用*/
private
String
spec
=
" "
;
/* 规格*/
private
String
spec
=
" "
;
/* 规格*/
private
BigDecimal
length
=
new
BigDecimal
(
0.00
);
/* 长*/
private
BigDecimal
length
=
new
BigDecimal
(
0.00
0
);
/* 长*/
private
BigDecimal
width
=
new
BigDecimal
(
0.00
);
/* 宽*/
private
BigDecimal
width
=
new
BigDecimal
(
0.00
0
);
/* 宽*/
private
BigDecimal
thick
=
new
BigDecimal
(
0.00
);
/* 厚*/
private
BigDecimal
thick
=
new
BigDecimal
(
0.00
0
);
/* 厚*/
private
String
material
=
" "
;
/* 材质*/
private
String
material
=
" "
;
/* 材质*/
private
BigDecimal
coefficient
=
new
BigDecimal
(
0.00
);
/* 系数*/
private
BigDecimal
coefficient
=
new
BigDecimal
(
0.00
0
);
/* 系数*/
private
String
unit
=
" "
;
/* 单位*/
private
String
unit
=
" "
;
/* 单位*/
private
String
createdBy
=
" "
;
/* 创建人*/
private
String
createdBy
=
" "
;
/* 创建人*/
private
String
createdName
=
" "
;
/* 创建人名称*/
private
String
createdName
=
" "
;
/* 创建人名称*/
...
...
src/main/java/com/baosight/hpjx/hp/pz/service/ServiceHPPZ004.java
View file @
006296a5
...
@@ -178,7 +178,11 @@ public class ServiceHPPZ004 extends ServiceBase {
...
@@ -178,7 +178,11 @@ public class ServiceHPPZ004 extends ServiceBase {
map
.
put
(
"inventType"
,
eiInfo
.
getString
(
"inventType"
));
map
.
put
(
"inventType"
,
eiInfo
.
getString
(
"inventType"
));
List
<
DdynamicEnum
>
list
=
new
ArrayList
<>();
List
<
DdynamicEnum
>
list
=
new
ArrayList
<>();
list
.
add
(
DdynamicEnum
.
INVENT_NAME_BLOCK_ID
);
list
.
add
(
DdynamicEnum
.
INVENT_NAME_BLOCK_ID
);
CommonMethod
.
initBlock
(
eiInfo
,
list
,
map
);
boolean
isSplicingSymbol
=
true
;
if
(
eiInfo
.
getString
(
"isSplicingSymbol"
)
!=
null
)
{
isSplicingSymbol
=
Boolean
.
parseBoolean
(
eiInfo
.
getString
(
"isSplicingSymbol"
));
}
CommonMethod
.
initBlock
(
eiInfo
,
list
,
map
,
isSplicingSymbol
);
return
eiInfo
;
return
eiInfo
;
}
}
...
...
src/main/java/com/baosight/hpjx/hp/pz/service/ServiceHPPZ006.java
View file @
006296a5
...
@@ -167,40 +167,31 @@ public class ServiceHPPZ006 extends ServiceBase {
...
@@ -167,40 +167,31 @@ public class ServiceHPPZ006 extends ServiceBase {
* @return
* @return
*/
*/
public
EiInfo
checkAndSave
(
EiInfo
inInfo
){
public
EiInfo
checkAndSave
(
EiInfo
inInfo
){
String
inventType
=
inInfo
.
getString
(
"inventType"
);
inInfo
.
setCell
(
EiConstant
.
queryBlock
,
0
,
HPPZ006
.
FIELD_INVENT_TYPE
,
inInfo
.
getString
(
"inventType"
));
String
inventCode
=
inInfo
.
getString
(
"inventCode"
);
inInfo
.
setCell
(
EiConstant
.
queryBlock
,
0
,
HPPZ006
.
FIELD_INVENT_CODE
,
inInfo
.
getString
(
"inventCode"
));
String
inventName
=
inInfo
.
getString
(
"inventName"
);
inInfo
.
setCell
(
EiConstant
.
queryBlock
,
0
,
HPPZ006
.
FIELD_INVENT_NAME
,
inInfo
.
getString
(
"inventName"
));
String
length
=
inInfo
.
getString
(
"length"
);
inInfo
.
setCell
(
EiConstant
.
queryBlock
,
0
,
HPPZ006
.
FIELD_LENGTH
,
inInfo
.
getString
(
"length"
));
String
width
=
inInfo
.
getString
(
"width"
);
inInfo
.
setCell
(
EiConstant
.
queryBlock
,
0
,
HPPZ006
.
FIELD_WIDTH
,
inInfo
.
getString
(
"width"
));
String
thick
=
inInfo
.
getString
(
"thick"
);
inInfo
.
setCell
(
EiConstant
.
queryBlock
,
0
,
HPPZ006
.
FIELD_THICK
,
inInfo
.
getString
(
"thick"
));
String
material
=
inInfo
.
getString
(
"material"
);
inInfo
.
setCell
(
EiConstant
.
queryBlock
,
0
,
HPPZ006
.
FIELD_MATERIAL
,
inInfo
.
getString
(
"material"
));
String
coefficient
=
inInfo
.
getString
(
"coefficient"
);
inInfo
.
setCell
(
EiConstant
.
queryBlock
,
0
,
HPPZ006
.
FIELD_COEFFICIENT
,
inInfo
.
getString
(
"coefficient"
));
String
unit
=
inInfo
.
getString
(
"unit"
);
inInfo
.
setCell
(
EiConstant
.
queryBlock
,
0
,
HPPZ006
.
FIELD_UNIT
,
inInfo
.
getString
(
"unit"
));
List
<
Map
>
list
=
dao
.
query
(
"HPPZ006.queryByCondition"
,
new
HashMap
<
String
,
Object
>(){{
EiInfo
eiInfo
=
super
.
query
(
inInfo
,
"HPPZ006.queryByCondition"
,
new
HPPZ006
());
put
(
"inventType"
,
inventType
);
put
(
"inventCode"
,
inventCode
);
put
(
"inventName"
,
inventName
);
put
(
"length"
,
Objects
.
nonNull
(
length
)?
length:
""
);
put
(
"width"
,
Objects
.
nonNull
(
width
)?
width:
""
);
put
(
"thick"
,
Objects
.
nonNull
(
thick
)?
thick:
""
);
put
(
"material"
,
Objects
.
nonNull
(
material
)?
material:
""
);
put
(
"coefficient"
,
Objects
.
nonNull
(
coefficient
)?
coefficient:
""
);
put
(
"unit"
,
Objects
.
nonNull
(
unit
)?
unit:
""
);
}});
HPPZ006
hppz006
=
new
HPPZ006
();
HPPZ006
hppz006
=
new
HPPZ006
();
if
(
CollectionUtils
.
isEmpty
(
list
)){
if
(
CollectionUtils
.
isNotEmpty
(
eiInfo
.
getBlock
(
EiConstant
.
resultBlock
).
getRows
())){
hppz006
.
fromMap
(
list
.
get
(
0
));
Map
map
=
(
Map
)
eiInfo
.
getBlock
(
EiConstant
.
resultBlock
).
getRows
().
get
(
0
);
hppz006
.
fromMap
(
map
);
}
else
{
}
else
{
// 生成编码
// 生成编码
hppz006
.
setInventType
(
Integer
.
parseInt
(
in
ventType
));
hppz006
.
setInventType
(
Integer
.
parseInt
(
in
Info
.
getString
(
"inventType"
)
));
hppz006
.
setInventCode
(
SequenceGenerator
.
getNextSequence
(
HPConstant
.
SequenceId
.
INVENT_CODE
));
hppz006
.
setInventCode
(
SequenceGenerator
.
getNextSequence
(
HPConstant
.
SequenceId
.
INVENT_CODE
));
hppz006
.
setInventName
(
in
ventName
);
hppz006
.
setInventName
(
in
Info
.
getString
(
"inventCode"
)
);
hppz006
.
setLength
(
new
BigDecimal
(
length
));
hppz006
.
setLength
(
new
BigDecimal
(
inInfo
.
getString
(
"length"
)
));
hppz006
.
setWidth
(
new
BigDecimal
(
width
));
hppz006
.
setWidth
(
new
BigDecimal
(
inInfo
.
getString
(
"width"
)
));
hppz006
.
setThick
(
new
BigDecimal
(
thick
));
hppz006
.
setThick
(
new
BigDecimal
(
inInfo
.
getString
(
"thick"
)
));
hppz006
.
setMaterial
(
material
);
hppz006
.
setMaterial
(
inInfo
.
getString
(
"material"
)
);
hppz006
.
setCoefficient
(
new
BigDecimal
(
coefficient
));
hppz006
.
setCoefficient
(
new
BigDecimal
(
inInfo
.
getString
(
"coefficient"
)
));
hppz006
.
setUnit
(
unit
);
hppz006
.
setUnit
(
inInfo
.
getString
(
"unit"
)
);
hppz006
.
setStatus
(
CommonConstant
.
YesNo
.
YES_1
.
intValue
());
hppz006
.
setStatus
(
CommonConstant
.
YesNo
.
YES_1
.
intValue
());
hppz006
.
setSpec
(
HPPZTools
.
jointSpec
(
hppz006
.
getLength
(),
hppz006
.
getWidth
(),
hppz006
.
getThick
()));
hppz006
.
setSpec
(
HPPZTools
.
jointSpec
(
hppz006
.
getLength
(),
hppz006
.
getWidth
(),
hppz006
.
getThick
()));
DaoUtils
.
insert
(
HPPZ006
.
INSERT
,
hppz006
);
DaoUtils
.
insert
(
HPPZ006
.
INSERT
,
hppz006
);
...
@@ -238,9 +229,13 @@ public class ServiceHPPZ006 extends ServiceBase {
...
@@ -238,9 +229,13 @@ public class ServiceHPPZ006 extends ServiceBase {
if
(
ObjectUtils
.
isEmpty
(
map
.
get
(
"inventType"
)))
{
if
(
ObjectUtils
.
isEmpty
(
map
.
get
(
"inventType"
)))
{
map
.
put
(
"inventType"
,
eiInfo
.
getString
(
"inventType"
));
map
.
put
(
"inventType"
,
eiInfo
.
getString
(
"inventType"
));
}
}
boolean
isSplicingSymbol
=
true
;
if
(
eiInfo
.
getString
(
"isSplicingSymbol"
)
!=
null
)
{
isSplicingSymbol
=
Boolean
.
parseBoolean
(
eiInfo
.
getString
(
"isSplicingSymbol"
));
}
List
<
DdynamicEnum
>
list
=
new
ArrayList
<>();
List
<
DdynamicEnum
>
list
=
new
ArrayList
<>();
list
.
add
(
DdynamicEnum
.
MATERIAL_RECORD_BLOCK_ID
);
list
.
add
(
DdynamicEnum
.
MATERIAL_RECORD_BLOCK_ID
);
CommonMethod
.
initBlock
(
eiInfo
,
list
,
map
);
CommonMethod
.
initBlock
(
eiInfo
,
list
,
map
,
isSplicingSymbol
);
return
eiInfo
;
return
eiInfo
;
}
}
...
...
src/main/java/com/baosight/hpjx/hp/pz/service/ServiceHPPZ007.java
View file @
006296a5
...
@@ -148,7 +148,11 @@ public class ServiceHPPZ007 extends ServiceBase {
...
@@ -148,7 +148,11 @@ public class ServiceHPPZ007 extends ServiceBase {
public
EiInfo
queryComboBox
(
EiInfo
inInfo
)
{
public
EiInfo
queryComboBox
(
EiInfo
inInfo
)
{
List
<
DdynamicEnum
>
list
=
new
ArrayList
<>();
List
<
DdynamicEnum
>
list
=
new
ArrayList
<>();
list
.
add
(
DdynamicEnum
.
WH_RECORD_BLOCK_ID
);
list
.
add
(
DdynamicEnum
.
WH_RECORD_BLOCK_ID
);
CommonMethod
.
initBlock
(
inInfo
,
list
,
EiInfoUtils
.
getFirstRow
(
inInfo
));
boolean
isSplicingSymbol
=
true
;
if
(
inInfo
.
getString
(
"isSplicingSymbol"
)
!=
null
)
{
isSplicingSymbol
=
Boolean
.
parseBoolean
(
inInfo
.
getString
(
"isSplicingSymbol"
));
}
CommonMethod
.
initBlock
(
inInfo
,
list
,
EiInfoUtils
.
getFirstRow
(
inInfo
),
isSplicingSymbol
);
return
inInfo
;
return
inInfo
;
}
}
...
...
src/main/java/com/baosight/hpjx/hp/pz/sql/HPPZ006.xml
View file @
006296a5
...
@@ -96,19 +96,19 @@
...
@@ -96,19 +96,19 @@
INVENT_NAME = #inventName#
INVENT_NAME = #inventName#
</isNotEmpty>
</isNotEmpty>
<isNotNull
prepend=
" AND "
property=
"length"
>
<isNotNull
prepend=
" AND "
property=
"length"
>
IFNULL(LENGTH,'') =
#length#
IFNULL(LENGTH,'') =
cast(#length# as decimal(20,3))
</isNotNull>
</isNotNull>
<isNotNull
prepend=
" AND "
property=
"width"
>
<isNotNull
prepend=
" AND "
property=
"width"
>
IFNULL(WIDTH,'') =
#width#
IFNULL(WIDTH,'') =
cast(#width# as decimal(20,3))
</isNotNull>
</isNotNull>
<isNotNull
prepend=
" AND "
property=
"thick"
>
<isNotNull
prepend=
" AND "
property=
"thick"
>
IFNULL(THICK,'') =
#thick#
IFNULL(THICK,'') =
cast(#thick# as decimal(20,3))
</isNotNull>
</isNotNull>
<isNotNull
prepend=
" AND "
property=
"material"
>
<isNotNull
prepend=
" AND "
property=
"material"
>
IFNULL(MATERIAL,'') = #material#
IFNULL(MATERIAL,'') = #material#
</isNotNull>
</isNotNull>
<isNotNull
prepend=
" AND "
property=
"coefficient"
>
<isNotNull
prepend=
" AND "
property=
"coefficient"
>
IFNULL(COEFFICIENT,'') =
#coefficient#
IFNULL(COEFFICIENT,'') =
cast(#coefficient# as decimal(20,3))
</isNotNull>
</isNotNull>
<isNotNull
prepend=
" AND "
property=
"unit"
>
<isNotNull
prepend=
" AND "
property=
"unit"
>
IFNULL(UNIT,'') = #unit#
IFNULL(UNIT,'') = #unit#
...
...
src/main/java/com/baosight/hpjx/hp/sc/service/ServiceHPSC003.java
View file @
006296a5
...
@@ -39,7 +39,8 @@ public class ServiceHPSC003 extends ServiceBase {
...
@@ -39,7 +39,8 @@ public class ServiceHPSC003 extends ServiceBase {
* @return
* @return
*/
*/
public
EiInfo
initLoad
(
EiInfo
inInfo
)
{
public
EiInfo
initLoad
(
EiInfo
inInfo
)
{
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
FACTORY_RECORD_BLOCK_ID
),
null
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
FACTORY_RECORD_BLOCK_ID
,
DdynamicEnum
.
INVENT_NAME_BLOCK_ID
),
new
HashMap
<
String
,
Object
>(){{
put
(
"prdtType"
,
4
);}});
HPSC003
HPSC003
=
new
HPSC003
();
HPSC003
HPSC003
=
new
HPSC003
();
EiInfo
outInfo
=
super
.
initLoad
(
inInfo
,
HPSC003
);
EiInfo
outInfo
=
super
.
initLoad
(
inInfo
,
HPSC003
);
outInfo
.
addBlock
(
EiConstant
.
resultBlock
).
addBlockMeta
(
HPSC003
.
eiMetadata
);
outInfo
.
addBlock
(
EiConstant
.
resultBlock
).
addBlockMeta
(
HPSC003
.
eiMetadata
);
...
...
src/main/java/com/baosight/hpjx/hp/sc/service/ServiceHPSC004.java
View file @
006296a5
...
@@ -2,6 +2,7 @@ package com.baosight.hpjx.hp.sc.service;
...
@@ -2,6 +2,7 @@ package com.baosight.hpjx.hp.sc.service;
import
com.baosight.hpjx.common.DdynamicEnum
;
import
com.baosight.hpjx.common.DdynamicEnum
;
import
com.baosight.hpjx.core.dao.DaoUtils
;
import
com.baosight.hpjx.core.dao.DaoUtils
;
import
com.baosight.hpjx.hp.sc.domain.HPSC003
;
import
com.baosight.hpjx.hp.sc.domain.HPSC004
;
import
com.baosight.hpjx.hp.sc.domain.HPSC004
;
import
com.baosight.hpjx.util.CommonMethod
;
import
com.baosight.hpjx.util.CommonMethod
;
import
com.baosight.hpjx.util.EiInfoUtils
;
import
com.baosight.hpjx.util.EiInfoUtils
;
...
@@ -11,6 +12,7 @@ import com.baosight.iplat4j.core.ei.EiInfo;
...
@@ -11,6 +12,7 @@ import com.baosight.iplat4j.core.ei.EiInfo;
import
com.baosight.iplat4j.core.exception.PlatException
;
import
com.baosight.iplat4j.core.exception.PlatException
;
import
com.baosight.iplat4j.core.service.impl.ServiceBase
;
import
com.baosight.iplat4j.core.service.impl.ServiceBase
;
import
com.baosight.iplat4j.core.web.threadlocal.UserSession
;
import
com.baosight.iplat4j.core.web.threadlocal.UserSession
;
import
org.springframework.security.core.parameters.P
;
import
java.text.SimpleDateFormat
;
import
java.text.SimpleDateFormat
;
import
java.util.*
;
import
java.util.*
;
...
@@ -55,6 +57,26 @@ public class ServiceHPSC004 extends ServiceBase {
...
@@ -55,6 +57,26 @@ public class ServiceHPSC004 extends ServiceBase {
Map
<?,
?>
map
=
eiBlock
.
getRow
(
i
);
Map
<?,
?>
map
=
eiBlock
.
getRow
(
i
);
HPSC004
.
fromMap
(
map
);
HPSC004
.
fromMap
(
map
);
DaoUtils
.
insert
(
"HPSC004.insert"
,
HPSC004
.
toMap
());
DaoUtils
.
insert
(
"HPSC004.insert"
,
HPSC004
.
toMap
());
List
list
=
this
.
dao
.
query
(
"HPSC004.query"
,
new
HashMap
<
String
,
Object
>(){{
put
(
"companyCode"
,
HPSC004
.
getCompanyCode
());
put
(
"projCode"
,
HPSC004
.
getPrdtCode
());
put
(
"parentId"
,
HPSC004
.
getParentId
());
put
(
"planCommentDate"
,
""
);
put
(
"planCompletionDate"
,
""
);
}});
if
(
list
==
null
)
{
List
<
Map
>
list1
=
this
.
dao
.
query
(
"HPSC004.query"
,
new
HashMap
<
String
,
Object
>(){{
put
(
"companyCode"
,
HPSC004
.
getCompanyCode
());
put
(
"projCode"
,
HPSC004
.
getPrdtCode
());
put
(
"parentId"
,
HPSC004
.
getParentId
());
}});
HPSC003
HPSC003
=
new
HPSC003
();
HPSC003
.
setCompanyCode
(
HPSC004
.
getCompanyCode
());
HPSC003
.
setPrdtCode
(
HPSC004
.
getPrdtCode
());
HPSC003
.
setPlanInfoNo
(
HPSC004
.
getParentId
());
HPSC003
.
setPlanCompletionDate
(
list1
.
get
(
0
).
get
(
"planCompletionDate"
).
toString
());
DaoUtils
.
update
(
"HPSC003.updateDate"
,
HPSC003
.
toMap
());
}
}
}
inInfo
.
setStatus
(
EiConstant
.
STATUS_SUCCESS
);
inInfo
.
setStatus
(
EiConstant
.
STATUS_SUCCESS
);
inInfo
.
setMsg
(
"新增成功!"
);
inInfo
.
setMsg
(
"新增成功!"
);
...
...
src/main/java/com/baosight/hpjx/hp/sc/sql/HPSC003.xml
View file @
006296a5
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!-- table information
Generate time : 2024-01-17 10:33:49
Version : 1.0
schema : hpjx
tableName : T_HPSC003
ID BIGINT NOT NULL primarykey,
COMPANY_CODE VARCHAR NOT NULL,
PROJ_TYPE TINYINT,
PROJ_CODE VARCHAR,
PROJ_NAME VARCHAR,
PLAN_INFO_NO VARCHAR,
PRDT_CODE VARCHAR,
PRDT_NAME VARCHAR,
PLAN_COMPLETION_DATE VARCHAR,
STATUS TINYINT,
CREATED_BY VARCHAR,
CREATED_TIME DATETIME,
UPDATED_BY VARCHAR,
UPDATED_TIME DATETIME,
DEP_CODE VARCHAR,
REMARK VARCHAR
-->
<sqlMap
namespace=
"HPSC003"
>
<sqlMap
namespace=
"HPSC003"
>
<sql
id=
"condition"
>
<sql
id=
"condition"
>
...
@@ -232,4 +253,17 @@
...
@@ -232,4 +253,17 @@
ORDER BY PROJ_CODE
ORDER BY PROJ_CODE
</select>
</select>
<!--计划完成时间回写-->
<update
id=
"updateDate"
>
UPDATE hpjx.T_HPSC003
SET
PLAN_COMPLETION_DATE = #planCompletionDate#,
<!-- 计划完成日期 -->
UPDATED_BY = #updatedBy#,
<!-- 更新人 -->
UPDATED_TIME = #updatedTime#
<!-- 更新时间 -->
WHERE
COMPANY_CODE = #companyCode#
AND PROJ_CODE = #projCode#
AND PLAN_INFO_NO = #planInfoNo#
</update>
</sqlMap>
</sqlMap>
src/main/java/com/baosight/hpjx/hp/sc/sql/HPSC004.xml
View file @
006296a5
...
@@ -463,4 +463,26 @@
...
@@ -463,4 +463,26 @@
</isNotEmpty>
</isNotEmpty>
ORDER BY A.PROJ_CODE
ORDER BY A.PROJ_CODE
</select>
</select>
<select
id=
"queryDate"
parameterClass=
"java.util.HashMap"
resultClass=
"com.baosight.hpjx.hp.sc.domain.HPSC004"
>
SELECT
MAX(PLAN_COMPLETION_DATE) as "planCompletionDate"
<!-- 计划结束时间 -->
FROM hpjx.T_HPSC004 WHERE 1=1
<isNotEmpty
prepend=
" AND "
property=
"companyCode"
>
COMPANY_CODE = #companyCode#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"projCode"
>
PROJ_CODE = #projCode#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"parentId"
>
PARENT_ID = #parentId#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"planCommentDate"
>
IFNULL(PLAN_COMMENT_DATE,'') = #planCommentDate#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"planCompletionDate"
>
IFNULL(PLAN_COMPLETION_DATE,'') = #planCompletionDate#
</isNotEmpty>
</select>
</sqlMap>
</sqlMap>
src/main/webapp/HP/BI/HPBI001.js
View file @
006296a5
$
(
function
()
{
$
(
function
()
{
$
(
document
).
ready
(
function
()
{
$
(
"#inqu_status-0-date"
).
data
(
"kendoDatePicker"
).
value
(
new
Date
());
});
//$("#inqu_status-date").data("kendoDatePicker").value(new Date());
//$(element) .data("kendoDatePicker").value(Date)
$
(
"#QUERY"
).
click
();
/* $("#QUERY").on("click", function () {
/* $("#QUERY").on("click", function () {
resultGrid.dataSource.page(1);
resultGrid.dataSource.page(1);
buildOption("scrb");
buildOption("scrb");
...
@@ -21,6 +26,7 @@ $(function () {
...
@@ -21,6 +26,7 @@ $(function () {
$
(
'#mrsj'
).
append
(
str
);
$
(
'#mrsj'
).
append
(
str
);
})
})
buildOption
(
"scrb"
);
buildOption
(
"scrb"
);
resultGrid
.
dataSource
.
page
(
1
);
},
},
// 服务调用失败后的回调函数 onFail
// 服务调用失败后的回调函数 onFail
onFail
:
function
(
errorMsg
,
status
,
e
)
{
onFail
:
function
(
errorMsg
,
status
,
e
)
{
...
@@ -28,8 +34,8 @@ $(function () {
...
@@ -28,8 +34,8 @@ $(function () {
console
.
log
(
errorMsg
)
console
.
log
(
errorMsg
)
}
}
},
{
async
:
true
});
},
{
async
:
true
});
resultGrid
.
dataSource
.
page
(
1
);
//
resultGrid.dataSource.page(1);
buildOption
(
"scrb"
);
//
buildOption("scrb");
});
});
// 导出
// 导出
$
(
"#EXPORT"
).
on
(
"click"
,
function
()
{
$
(
"#EXPORT"
).
on
(
"click"
,
function
()
{
...
@@ -39,30 +45,7 @@ $(function () {
...
@@ -39,30 +45,7 @@ $(function () {
$
(
".k-menu-link"
).
click
();
$
(
".k-menu-link"
).
click
();
});
});
IPLATUI
.
EFGrid
.
result
=
{
pageable
:
{
pageSize
:
20
,
pageSizes
:
[
10
,
20
,
50
,
70
,
100
],
},
columns
:
[
{
field
:
"operator"
,
template
:
function
(
item
)
{
let
auditStatus
=
item
.
status
;
let
template
=
''
;
if
(
auditStatus
==
0
)
{
template
+=
'<a style="cursor: pointer;display: inline-flex;justify-content: center;" '
+
'onclick="check('
+
item
.
id
+
',1)" >提交</a>'
;
}
// else if (auditStatus == 1) {
// template += '<a style="cursor: pointer;display: inline-flex;justify-content: center;" ' +
// 'onclick="check(' + item.id + ',0)" >撤回</a>';
// }
return
template
;
}
}
],
}
});
});
function
check
(
id
,
auditStatus
)
{
function
check
(
id
,
auditStatus
)
{
...
@@ -89,7 +72,8 @@ function buildOption(vid){
...
@@ -89,7 +72,8 @@ function buildOption(vid){
var
colors
=
[
'#5470C6'
,
'#91CC75'
,
'#EE6666'
];
var
colors
=
[
'#5470C6'
,
'#91CC75'
,
'#EE6666'
];
var
option
=
{
var
option
=
{
title
:
{
title
:
{
text
:
'柱状图与折线图'
text
:
'生产月报'
,
left
:
'center'
},
},
tooltip
:
{
tooltip
:
{
trigger
:
'axis'
,
trigger
:
'axis'
,
...
@@ -106,7 +90,7 @@ function buildOption(vid){
...
@@ -106,7 +90,7 @@ function buildOption(vid){
xAxis
:
{
xAxis
:
{
type
:
'category'
,
type
:
'category'
,
//boundaryGap: false,
//boundaryGap: false,
data
:
[
'
Mon'
,
'Tue'
,
'Wed'
,
'Thu'
,
'Fri'
,
'Sat'
,
'Sun
'
]
data
:
[
'
1月'
,
'2月'
,
'3月'
,
'4月'
,
'5月'
,
'6月'
,
'7月'
,
'8月'
,
'9月'
,
'10月'
,
'11月'
,
'12月
'
]
},
},
yAxis
:
[
yAxis
:
[
{
{
...
@@ -127,7 +111,7 @@ function buildOption(vid){
...
@@ -127,7 +111,7 @@ function buildOption(vid){
color
:
'#4874CB'
,
color
:
'#4874CB'
,
yAxisIndex
:
0
,
yAxisIndex
:
0
,
barWidth
:
15
,
barWidth
:
15
,
data
:
[
120
,
200
,
150
,
80
,
70
,
110
,
130
]
data
:
[
120
,
200
,
150
,
80
,
70
,
110
,
130
,
120
,
200
,
150
,
80
,
70
]
},
},
{
{
name
:
'生产人数(吨)'
,
name
:
'生产人数(吨)'
,
...
@@ -135,14 +119,14 @@ function buildOption(vid){
...
@@ -135,14 +119,14 @@ function buildOption(vid){
color
:
'#EE822F'
,
color
:
'#EE822F'
,
yAxisIndex
:
0
,
yAxisIndex
:
0
,
barWidth
:
15
,
barWidth
:
15
,
data
:
[
130
,
120
,
200
,
160
,
80
,
70
,
140
]
data
:
[
130
,
120
,
200
,
160
,
80
,
70
,
140
,
130
,
120
,
200
,
160
,
80
]
},
},
{
{
name
:
'人均产量(kg)'
,
name
:
'人均产量(kg)'
,
type
:
'line'
,
type
:
'line'
,
color
:
'#F2BA03'
,
color
:
'#F2BA03'
,
yAxisIndex
:
1
,
// 指定该系列在y轴上的位置,默认是0,可选为:0 | 1 | 2 | ... | n (正整数)
yAxisIndex
:
1
,
// 指定该系列在y轴上的位置,默认是0,可选为:0 | 1 | 2 | ... | n (正整数)
data
:
[
130
,
120
,
200
,
160
,
80
,
70
,
140
]
data
:
[
130
,
120
,
200
,
160
,
80
,
70
,
140
,
130
,
120
,
200
,
160
,
80
]
}
}
]
]
};
};
...
...
src/main/webapp/HP/BI/HPBI001.jsp
View file @
006296a5
...
@@ -13,11 +13,20 @@
...
@@ -13,11 +13,20 @@
<EF:EFRegion
id=
"inqu"
title=
"查询条件"
>
<EF:EFRegion
id=
"inqu"
title=
"查询条件"
>
<div
class=
"row"
>
<div
class=
"row"
>
<EF:EFSelect
cname=
"工厂"
defaultValue=
"0"
ename=
"inqu_status-0-factory"
colWidth=
"3"
>
<
%
--
<
EF:EFSelect
cname=
"工厂"
defaultValue=
"0"
ename=
"inqu_status-0-factory"
colWidth=
"3"
>
<EF:EFOption
label=
"黄陂"
value=
"黄陂"
/>
<EF:EFOption
label=
"黄陂"
value=
"黄陂"
/>
<EF:EFOption
label=
"红安"
value=
"红安"
/>
<EF:EFOption
label=
"红安"
value=
"红安"
/>
</EF:EFSelect>
--%>
<EF:EFSelect
cname=
"工厂"
ename=
"inqu_status-0-factory"
colWidth=
"3"
filter=
"contains"
>
<
%
--
<
EF:EFOption
label=
"全部"
value=
""
/>
--%>
<EF:EFOptions
blockId=
"factory_record_block_id"
textField=
"textField"
valueField=
"valueField"
/>
</EF:EFSelect>
</EF:EFSelect>
<EF:EFDatePicker
ename=
"inqu_status-date"
colWidth=
"3"
cname=
"日期:"
<
%
--
<
EF:EFSelect
cname=
"仓库名称"
ename=
"inqu_status-0-whCode"
colWidth=
"3"
filter=
"contains"
>
<EF:EFOption
label=
"全部"
value=
""
/>
<EF:EFOptions
blockId=
"wh_record_block_id"
textField=
"textField"
valueField=
"valueField"
/>
</EF:EFSelect>
--%>
<EF:EFDatePicker
ename=
"inqu_status-0-date"
colWidth=
"3"
cname=
"日期:"
format=
"yyyy-MM-dd"
/>
format=
"yyyy-MM-dd"
/>
</div>
</div>
<
%
--
<
EF:EFButton
ename=
"QUERY"
cname=
"查询"
row=
"1"
class=
"btn-align-right"
></EF:EFButton>
--%>
<
%
--
<
EF:EFButton
ename=
"QUERY"
cname=
"查询"
row=
"1"
class=
"btn-align-right"
></EF:EFButton>
--%>
...
@@ -32,7 +41,7 @@
...
@@ -32,7 +41,7 @@
<EF:EFRegion
id=
"result"
title=
"汇总数据"
>
<EF:EFRegion
id=
"result"
title=
"汇总数据"
>
<EF:EFGrid
blockId=
"result"
autoDraw=
"no"
>
<EF:EFGrid
blockId=
"result"
autoDraw=
"no"
>
<EF:EFColumn
ename=
"id"
cname=
"主键"
hidden=
"true"
/
>
<
%
--
<
EF:EFColumn
ename=
"id"
cname=
"主键"
hidden=
"true"
/>
--%
>
<EF:EFColumn
ename=
"indNmae"
cname=
"指标名称"
readonly=
"true"
/>
<EF:EFColumn
ename=
"indNmae"
cname=
"指标名称"
readonly=
"true"
/>
<EF:EFColumn
ename=
"dayValue"
cname=
"日"
readonly=
"true"
/>
<EF:EFColumn
ename=
"dayValue"
cname=
"日"
readonly=
"true"
/>
<EF:EFColumn
ename=
"monValue"
cname=
"月"
readonly=
"true"
/>
<EF:EFColumn
ename=
"monValue"
cname=
"月"
readonly=
"true"
/>
...
...
src/main/webapp/HP/KC/HPKC006.js
View file @
006296a5
let
whNameGlobalData
=
[];
let
whNameGlobalData
=
[];
let
inventNameGlobalData
=
[];
let
inventNameGlobalData
=
[];
let
specGlobalData
=
[];
let
specGlobalData
=
[];
let
firstLoad
=
0
;
$
(
function
()
{
$
(
function
()
{
IPLATUI
.
EFGrid
=
{
IPLATUI
.
EFGrid
=
{
...
@@ -30,16 +31,56 @@ $(function() {
...
@@ -30,16 +31,56 @@ $(function() {
refreshSelect
(
container
,
inInfo
);
refreshSelect
(
container
,
inInfo
);
}
}
},
{
},
{
field
:
"invent
Cod
e"
,
field
:
"invent
Nam
e"
,
template
:
function
(
dataItem
)
{
template
:
function
(
dataItem
)
{
//let flag = false;
for
(
let
i
=
0
;
i
<
inventNameGlobalData
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
inventNameGlobalData
.
length
;
i
++
)
{
if
(
inventNameGlobalData
[
i
][
'valueField'
]
===
dataItem
[
'inventCode'
])
{
if
(
inventNameGlobalData
[
i
][
'textField'
]
===
dataItem
[
'inventName'
])
{
dataItem
.
inventCode
=
inventNameGlobalData
[
i
][
'valueField'
]
//flag= true;
return
inventNameGlobalData
[
i
][
'textField'
];
return
inventNameGlobalData
[
i
][
'textField'
];
}
}
}
}
return
""
;
return
dataItem
.
inventName
;
},
},
editor
:
function
(
container
,
options
)
{
editor
:
function
(
container
,
options
)
{
var
grid
=
container
.
closest
(
".k-grid"
).
data
(
"kendoGrid"
);
var
input
=
$
(
'<input />'
);
var
dataSource
;
input
.
attr
(
"name"
,
options
.
field
);
input
.
attr
(
"id"
,
options
.
field
);
input
.
appendTo
(
container
);
var
eiInfo
=
new
EiInfo
();
eiInfo
.
set
(
"inqu_status-0-inventTypes"
,
[
1
,
2
,
5
]);
eiInfo
.
set
(
"inqu_status-0-inventType"
,
options
.
model
[
"inventType"
]);
eiInfo
.
set
(
"isSplicingSymbol"
,
false
);
//eiInfo.set("inqu_status-0-inventTypes", [1, 2, 5]);
//eiInfo.set("inqu_status-0-inventCode", options.model["inventCode"]);
//eiInfo.set("inqu_status-0-company_name", options.model["company_name"]);
EiCommunicator
.
send
(
"HPPZ004"
,
"queryComboBox"
,
eiInfo
,
{
onSuccess
:
function
(
ei
)
{
dataSource
=
ei
.
getBlock
(
"invent_name_block_id"
).
getMappedRows
();
inventNameGlobalData
=
dataSource
;
},
onFail
:
function
(
ei
)
{
}
},
{
async
:
false
});
input
.
kendoAutoComplete
({
valuePrimitive
:
true
,
dataSource
:
dataSource
,
dataTextField
:
"textField"
,
dataValueField
:
"valueField"
,
required
:
"true"
,
optionLabelTemplate
:
"#:textField#"
,
valueTemplate
:
"#:valueField#"
,
template
:
"#:textField#"
,
filter
:
"contains"
});
}
/*editor: function (container, options) {
let inInfo = new EiInfo();
let inInfo = new EiInfo();
inInfo.set("inqu_status-0-inventTypes", [1, 2, 5]);
inInfo.set("inqu_status-0-inventTypes", [1, 2, 5]);
inInfo.set("inqu_status-0-inventType", options.model["inventType"]);
inInfo.set("inqu_status-0-inventType", options.model["inventType"]);
...
@@ -48,13 +89,35 @@ $(function() {
...
@@ -48,13 +89,35 @@ $(function() {
inInfo.set("blockId", "material_record_block_id");
inInfo.set("blockId", "material_record_block_id");
inInfo.set("field", options.field);
inInfo.set("field", options.field);
refreshSelect(container, inInfo);
refreshSelect(container, inInfo);
}
}
*/
},
{
},
{
field
:
"inventRecordId"
,
field
:
"inventRecordId"
,
template
:
function
(
dataItem
)
{
template
:
function
(
dataItem
)
{
for
(
let
i
=
0
;
i
<
specGlobalData
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
specGlobalData
.
length
;
i
++
)
{
if
(
specGlobalData
[
i
][
'valueField'
]
===
dataItem
[
'inventRecordId'
])
{
if
(
specGlobalData
[
i
][
'valueField'
]
===
dataItem
[
'inventRecordId'
])
{
return
specGlobalData
[
i
][
'textField'
];
let
inventRecordId
=
specGlobalData
[
i
][
'textField'
];
/*if (firstLoad === 1){
let inInfo = new EiInfo();
inInfo.set("inqu_status-0-id", dataItem['inventRecordId']);
EiCommunicator.send("HPPZ006", "query", inInfo, {
onSuccess: function (ei) {
let data = ei.blocks.result.rows;
var id = "#datacell__5";
$(id).text(e.model.inventCode)
dataItem["length"] = data[0][8]
dataItem["width"] = data[0][9]
dataItem["thick"] = data[0][10]
dataItem["material"] = data[0][11]
dataItem["coefficient"] = data[0][12]
dataItem["unit"] = data[0][13]
firstLoad = 0;
},
onFail: function (ei) {
}
}, {async: false});
//queryHPPZ006(inInfo,dataItem)
}*/
return
inventRecordId
;
}
}
}
}
return
""
;
return
""
;
...
@@ -71,6 +134,49 @@ $(function() {
...
@@ -71,6 +134,49 @@ $(function() {
}
}
}],
}],
loadComplete
:
function
(
grid
)
{
loadComplete
:
function
(
grid
)
{
},
//beforeAdd:function(){firstLoad = 1},
onSave
:
function
()
{
//firstLoad = 1;
},
afterEdit
:
function
(
e
)
{
if
(
e
.
field
===
"inventRecordId"
)
{
let
inInfo
=
new
EiInfo
();
inInfo
.
set
(
"inqu_status-0-id"
,
e
.
model
.
inventRecordId
);
EiCommunicator
.
send
(
"HPPZ006"
,
"query"
,
inInfo
,
{
onSuccess
:
function
(
ei
)
{
let
data
=
ei
.
blocks
.
result
.
rows
;
//var id = "#datacell__5";
//$(id).text(e.model.inventCode)
resultGrid
.
setCellValue
(
e
.
model
,
"length"
,
data
[
0
][
8
])
resultGrid
.
setCellValue
(
e
.
model
,
"width"
,
data
[
0
][
9
])
resultGrid
.
setCellValue
(
e
.
model
,
"thick"
,
data
[
0
][
10
])
resultGrid
.
setCellValue
(
e
.
model
,
"material"
,
data
[
0
][
11
])
resultGrid
.
setCellValue
(
e
.
model
,
"coefficient"
,
data
[
0
][
12
])
resultGrid
.
setCellValue
(
e
.
model
,
"unit"
,
data
[
0
][
13
])
//dataItem["length"] = data[0][8]
//dataItem["width"] = data[0][9]
//dataItem["thick"] = data[0][10]
//dataItem["material"] = data[0][11]
//dataItem["coefficient"] = data[0][12]
//dataItem["unit"] = data[0][13]
firstLoad
=
0
;
},
onFail
:
function
(
ei
)
{
}
},
{
async
:
false
});
//firstLoad = 1;
/*var id = "#datacell_"+e.row+"_5";
$(id).text(e.model.inventCode)
resultGrid.setCellValue({
list:7,
field:"inventRecordId",
cellValue:e.model.inventCode
})
console.log(e.model.inventCode);*/
//e.preventDefault(); // 不关闭单元格
}
}
}
}
}
}
}
...
@@ -89,6 +195,7 @@ $(window).load(function () {
...
@@ -89,6 +195,7 @@ $(window).load(function () {
// 仓库名称
// 仓库名称
let
inInfo
=
new
EiInfo
();
let
inInfo
=
new
EiInfo
();
inInfo
.
set
(
"inqu_status-0-inventTypes"
,
[
1
,
2
,
5
]);
inInfo
.
set
(
"inqu_status-0-inventTypes"
,
[
1
,
2
,
5
]);
inInfo
.
set
(
"isSplicingSymbol"
,
false
);
EiCommunicator
.
send
(
"HPPZ007"
,
"queryComboBox"
,
inInfo
,
{
EiCommunicator
.
send
(
"HPPZ007"
,
"queryComboBox"
,
inInfo
,
{
onSuccess
:
function
(
ei
)
{
onSuccess
:
function
(
ei
)
{
whNameGlobalData
=
ei
.
getBlock
(
"wh_record_block_id"
).
getMappedRows
();
whNameGlobalData
=
ei
.
getBlock
(
"wh_record_block_id"
).
getMappedRows
();
...
@@ -121,6 +228,7 @@ $(window).load(function () {
...
@@ -121,6 +228,7 @@ $(window).load(function () {
*/
*/
let
query
=
function
()
{
let
query
=
function
()
{
resultGrid
.
dataSource
.
page
(
1
);
// 点击查询按钮,从第1页开始查询
resultGrid
.
dataSource
.
page
(
1
);
// 点击查询按钮,从第1页开始查询
firstLoad
=
0
;
}
}
/**
/**
...
@@ -139,3 +247,22 @@ let save = function () {
...
@@ -139,3 +247,22 @@ let save = function () {
});
});
}
}
let
queryHPPZ006
=
function
(
inInfo
,
row
)
{
// 仓库名称
EiCommunicator
.
send
(
"HPPZ006"
,
"query"
,
inInfo
,
{
onSuccess
:
function
(
ei
)
{
let
data
=
ei
.
blocks
.
result
.
rows
;
row
.
length
=
data
[
0
][
8
]
row
.
width
=
data
[
0
][
9
]
row
.
thick
=
data
[
0
][
10
]
row
.
material
=
data
[
0
][
11
]
row
.
coefficient
=
data
[
0
][
12
]
row
.
unit
=
data
[
0
][
13
]
firstLoad
=
0
;
},
onFail
:
function
(
ei
)
{
}
},
{
async
:
false
});
}
src/main/webapp/HP/KC/HPKC006.jsp
View file @
006296a5
...
@@ -48,17 +48,23 @@
...
@@ -48,17 +48,23 @@
<EF:EFColumn
ename=
"otherEnterNo"
cname=
"入库单号"
enable=
"false"
width=
"130"
align=
"center"
/>
<EF:EFColumn
ename=
"otherEnterNo"
cname=
"入库单号"
enable=
"false"
width=
"130"
align=
"center"
/>
<EF:EFColumn
ename=
"receiptDate"
cname=
"单据日期"
editType=
"date"
dateFormat=
"yyyy-MM-dd"
<EF:EFColumn
ename=
"receiptDate"
cname=
"单据日期"
editType=
"date"
dateFormat=
"yyyy-MM-dd"
parseFormats=
"['yyyyMMdd']"
width=
"90"
align=
"center"
required=
"true"
readonly=
"true"
/>
parseFormats=
"['yyyyMMdd']"
width=
"90"
align=
"center"
required=
"true"
readonly=
"true"
/>
<EF:EFComboColumn
ename=
"inventType"
cname=
"存货类型"
width=
"100"
align=
"center"
required=
"true"
<EF:EFComboColumn
ename=
"inventType"
cname=
"存货类型"
width=
"100"
align=
"center"
required=
"true"
readonly=
"true"
>
readonly=
"true"
>
<EF:EFCodeOption
codeName=
"hpjx.hpkc.inventType"
condition=
"ITEM_CODE IN ('1', '2', '5')"
/>
<EF:EFCodeOption
codeName=
"hpjx.hpkc.inventType"
condition=
"ITEM_CODE IN ('1', '2', '5')"
/>
</EF:EFComboColumn>
</EF:EFComboColumn>
<EF:EFColumn
ename=
"whCode"
cname=
"仓库名称"
width=
"120"
align=
"center"
required=
"true"
readonly=
"true"
/>
<EF:EFColumn
ename=
"whCode"
cname=
"仓库名称"
width=
"120"
align=
"center"
required=
"true"
readonly=
"true"
/>
<EF:EFColumn
ename=
"inventCode"
cname=
"存货名称"
width=
"120"
align=
"center"
required=
"true"
readonly=
"true"
/>
<EF:EFColumn
ename=
"inventCode"
cname=
"存货名称"
width=
"120"
align=
"center"
required=
"true"
readonly=
"true"
hidden =
"true"
/>
<EF:EFColumn
ename=
"inventRecordId"
cname=
"规格"
width=
"120"
align=
"center"
required=
"true"
readonly=
"true"
/>
<EF:EFColumn
ename=
"inventName"
cname=
"存货名称"
width=
"120"
align=
"center"
required=
"true"
readonly=
"true"
/>
<EF:EFColumn
ename=
"inventRecordId"
cname=
"规格"
width=
"120"
align=
"center"
required=
"false"
readonly=
"true"
/>
<EF:EFColumn
ename=
"amount"
cname=
"数量"
format=
"{0:N3}"
maxLength=
"20"
width=
"100"
align=
"right"
<EF:EFColumn
ename=
"amount"
cname=
"数量"
format=
"{0:N3}"
maxLength=
"20"
width=
"100"
align=
"right"
sumType=
"all"
required=
"true"
readonly=
"true"
/>
sumType=
"all"
required=
"true"
readonly=
"true"
/>
<EF:EFColumn
ename=
"weight"
cname=
"重量"
format=
"{0:N3}"
maxLength=
"20"
width=
"100"
align=
"right"
<EF:EFColumn
ename=
"weight"
cname=
"重量"
format=
"{0:N3}"
maxLength=
"20"
width=
"100"
align=
"right"
sumType=
"all"
required=
"true"
readonly=
"true"
/>
sumType=
"all"
required=
"true"
readonly=
"true"
/>
<EF:EFColumn
ename=
"length"
cname=
"长"
width=
"120"
align=
"center"
format=
"{0:N3}"
required=
"false"
readonly=
"true"
/>
<EF:EFColumn
ename=
"width"
cname=
"宽"
width=
"120"
align=
"center"
format=
"{0:N3}"
required=
"false"
readonly=
"true"
/>
<EF:EFColumn
ename=
"thick"
cname=
"厚"
width=
"120"
align=
"center"
format=
"{0:N3}"
required=
"false"
readonly=
"true"
/>
<EF:EFColumn
ename=
"material"
cname=
"材质"
width=
"120"
align=
"center"
required=
"false"
readonly=
"true"
/>
<EF:EFColumn
ename=
"coefficient"
cname=
"系数"
width=
"120"
align=
"center"
format=
"{0:N3}"
required=
"false"
readonly=
"true"
/>
<EF:EFColumn
ename=
"unit"
cname=
"单位"
width=
"120"
align=
"center"
required=
"false"
readonly=
"true"
/>
<EF:EFColumn
ename=
"remark"
cname=
"备注"
width=
"150"
maxLength=
"255"
readonly=
"true"
/>
<EF:EFColumn
ename=
"remark"
cname=
"备注"
width=
"150"
maxLength=
"255"
readonly=
"true"
/>
<EF:EFColumn
ename=
"createdName"
cname=
"创建人"
enable=
"false"
width=
"100"
align=
"center"
/>
<EF:EFColumn
ename=
"createdName"
cname=
"创建人"
enable=
"false"
width=
"100"
align=
"center"
/>
<EF:EFColumn
ename=
"createdTime"
cname=
"创建日期"
enable=
"false"
width=
"140"
align=
"center"
<EF:EFColumn
ename=
"createdTime"
cname=
"创建日期"
enable=
"false"
width=
"140"
align=
"center"
...
...
src/main/webapp/HP/SC/HPSC003.js
View file @
006296a5
...
@@ -79,6 +79,21 @@ $(function () {
...
@@ -79,6 +79,21 @@ $(function () {
NotificationUtil
({
NotificationUtil
({
msg
:
'请选择一条或多条数据'
msg
:
'请选择一条或多条数据'
},
"warning"
);
},
"warning"
);
}
let
flag
=
false
;
for
(
let
i
=
0
;
i
<
rowCount
.
length
;
i
++
)
{
let
startT
=
new
Date
(
rowCount
[
i
].
planCommentDate
).
getTime
();
let
endT
=
new
Date
(
rowCount
[
i
].
planCompletionDate
).
getTime
();
if
(
startT
>
endT
)
{
flag
=
true
;
break
}
}
if
(
flag
){
NotificationUtil
({
msg
:
'计划结束时间不能小于计划开始时间'
},
"warning"
);
return
false
;
return
false
;
}
}
var
btnNode
=
$
(
this
);
var
btnNode
=
$
(
this
);
...
@@ -108,6 +123,19 @@ $(function () {
...
@@ -108,6 +123,19 @@ $(function () {
});
});
},
},
afterEdit
:
function
(
e
)
{
if
(
e
.
field
===
"planCompletionDate"
)
{
let
startT
=
new
Date
(
e
.
model
.
planCommentDate
).
getTime
();
let
endT
=
new
Date
(
e
.
model
.
planCompletionDate
).
getTime
();
if
(
startT
>
endT
)
{
e
.
preventDefault
();
NotificationUtil
({
msg
:
'计划结束时间不能小于计划开始时间'
},
"warning"
);
}
}
},
columns
:
[
columns
:
[
{
{
field
:
"operator"
,
field
:
"operator"
,
...
...
src/main/webapp/HP/SC/HPSC003.jsp
View file @
006296a5
...
@@ -14,11 +14,11 @@
...
@@ -14,11 +14,11 @@
<div
class=
"row"
>
<
%
--
blockId=
"inqu_status"
--
%
>
<div
class=
"row"
>
<
%
--
blockId=
"inqu_status"
--
%
>
<EF:EFInput
blockId=
"inqu_status"
ename=
"projCode"
colWidth=
"3"
cname=
"项目编号:"
/>
<EF:EFInput
blockId=
"inqu_status"
ename=
"projCode"
colWidth=
"3"
cname=
"项目编号:"
/>
<EF:EFInput
blockId=
"inqu_status"
ename=
"projName"
colWidth=
"3"
cname=
"项目名称:"
/>
<EF:EFInput
blockId=
"inqu_status"
ename=
"projName"
colWidth=
"3"
cname=
"项目名称:"
/>
<EF:EFSelect
ename=
"inqu_status-0-prdtType"
cname=
"部件类型"
colWidth=
"3"
filter=
"contains"
<
%
--
<
EF:EFSelect
ename=
"inqu_status-0-prdtType"
cname=
"部件类型"
colWidth=
"3"
filter=
"contains"
template=
"#=textField#"
valueTemplate=
"#=textField#"
>
template=
"#=textField#"
valueTemplate=
"#=textField#"
>
<EF:EFOption
label=
"全部"
value=
""
/>
<EF:EFOption
label=
"全部"
value=
""
/>
<EF:EFCodeOption
codeName=
"hpjx.hpkc.inventType"
condition=
"ITEM_CODE IN ('3','4')"
/>
<EF:EFCodeOption
codeName=
"hpjx.hpkc.inventType"
condition=
"ITEM_CODE IN ('3','4')"
/>
</EF:EFSelect>
</EF:EFSelect>
--%>
<EF:EFSelect
ename=
"inqu_status-0-prdtCode"
cname=
"部件名称"
filter=
"contains"
required=
"false"
colWidth=
"3"
<EF:EFSelect
ename=
"inqu_status-0-prdtCode"
cname=
"部件名称"
filter=
"contains"
required=
"false"
colWidth=
"3"
template=
"#=textField#"
valueTemplate=
"#=valueField#"
defaultValue=
"请选择"
>
template=
"#=textField#"
valueTemplate=
"#=valueField#"
defaultValue=
"请选择"
>
<EF:EFOption
label=
"请选择"
value=
""
/>
<EF:EFOption
label=
"请选择"
value=
""
/>
...
@@ -49,7 +49,7 @@
...
@@ -49,7 +49,7 @@
<EF:EFColumn
hidden=
"true"
enable=
"false"
ename=
"spec"
cname=
"规格"
readonly=
"true"
/>
<EF:EFColumn
hidden=
"true"
enable=
"false"
ename=
"spec"
cname=
"规格"
readonly=
"true"
/>
<EF:EFColumn
enable=
"false"
ename=
"remark"
cname=
"备注"
readonly=
"true"
/>
<EF:EFColumn
enable=
"false"
ename=
"remark"
cname=
"备注"
readonly=
"true"
/>
<EF:EFColumn
ename=
"planCompletionDate"
cname=
"计划完成日期"
editType=
"date"
dateFormat=
"yyyy/MM/dd"
width=
"150"
<EF:EFColumn
ename=
"planCompletionDate"
cname=
"计划完成日期"
editType=
"date"
dateFormat=
"yyyy/MM/dd"
width=
"150"
required=
'true'
readonly=
"true"
/>
required=
'true'
/>
<EF:EFColumn
enable=
"false"
ename=
"schedule"
cname=
"生产完工进度"
format=
"{0:N2}"
readonly=
"true"
/>
<EF:EFColumn
enable=
"false"
ename=
"schedule"
cname=
"生产完工进度"
format=
"{0:N2}"
readonly=
"true"
/>
<EF:EFComboColumn
enable=
"false"
ename=
"status"
cname=
"状态"
>
<EF:EFComboColumn
enable=
"false"
ename=
"status"
cname=
"状态"
>
<EF:EFOption
label=
"未提交"
value=
"0"
/>
<EF:EFOption
label=
"未提交"
value=
"0"
/>
...
...
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