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
f2914810
Commit
f2914810
authored
Jun 05, 2024
by
江和松
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
其他入库代码优化,以及提交后影响实时库存
parent
ee6b4164
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
386 additions
and
552 deletions
+386
-552
HGConstant.java
src/main/java/com/baosight/hggp/hg/constant/HGConstant.java
+22
-7
HGKC006A.java
src/main/java/com/baosight/hggp/hg/kc/domain/HGKC006A.java
+23
-4
ServiceHGKC006.java
.../java/com/baosight/hggp/hg/kc/service/ServiceHGKC006.java
+34
-73
ServiceHGKC006A.java
...java/com/baosight/hggp/hg/kc/service/ServiceHGKC006A.java
+67
-107
ServiceHGKC007.java
.../java/com/baosight/hggp/hg/kc/service/ServiceHGKC007.java
+11
-11
HGKC006A.xml
src/main/java/com/baosight/hggp/hg/kc/sql/HGKC006A.xml
+9
-202
HGKCTools.java
src/main/java/com/baosight/hggp/hg/kc/tools/HGKCTools.java
+18
-0
HGKC006.js
src/main/webapp/HG/KC/HGKC006.js
+14
-6
HGKC006A.js
src/main/webapp/HG/KC/HGKC006A.js
+173
-137
HGKC006A.jsp
src/main/webapp/HG/KC/HGKC006A.jsp
+15
-5
No files found.
src/main/java/com/baosight/hggp/hg/constant/HGConstant.java
View file @
f2914810
...
...
@@ -263,17 +263,32 @@ public class HGConstant {
/**
*
* 数据来源
*
出库单
数据来源
* @author:songx
* @date:2024/5/15,15:18
*/
public
static
class
Source
{
// 盘点
public
static
final
Integer
PD
=
1
;
public
static
class
CKSource
{
// 手动录入
public
static
final
Integer
SDLR
=
1
;
// 盘亏
public
static
final
Integer
PK
=
2
;
// 调拨
public
static
final
Integer
DB
=
2
;
// 其他
public
static
final
Integer
QT
=
3
;
public
static
final
Integer
DB
=
3
;
}
/**
*
* 入库单数据来源
* @author:songx
* @date:2024/5/15,15:18
*/
public
static
class
RKSource
{
// 手动录入
public
static
final
Integer
SDLR
=
1
;
// 盘盈
public
static
final
Integer
PY
=
2
;
// 调拨
public
static
final
Integer
DB
=
3
;
}
/**
...
...
src/main/java/com/baosight/hggp/hg/kc/domain/HGKC006A.java
View file @
f2914810
...
...
@@ -22,7 +22,7 @@ public class HGKC006A extends DaoEPBase {
private
static
final
long
serialVersionUID
=
1L
;
public
static
final
String
FIELD_ID
=
"id"
;
public
static
final
String
FIELD_ID
=
"id"
;
public
static
final
String
FIELD_ACCOUNT_CODE
=
"accountCode"
;
/* 企业编码*/
public
static
final
String
FIELD_DEP_CODE
=
"depCode"
;
/* 部门编码*/
public
static
final
String
FIELD_CREATED_BY
=
"createdBy"
;
/* 记录创建者*/
...
...
@@ -66,12 +66,14 @@ public class HGKC006A extends DaoEPBase {
public
static
final
String
FIELD_PART_WIDTH
=
"partWidth"
;
/* 零件-宽*/
public
static
final
String
FIELD_PART_THICK
=
"partThick"
;
/* 零件-厚*/
public
static
final
String
FIELD_PART_SPEC
=
"partSpec"
;
/* 零件规格*/
public
static
final
String
FIELD_PART_SPEC_ID
=
"partSpecId"
;
/* 零件规格ID*/
public
static
final
String
FIELD_PRIMARY_ID
=
"primaryId"
;
/* 主表id*/
public
static
final
String
FIELD_PRICE
=
"price"
;
/* 单价*/
public
static
final
String
FIELD_AMOUNT
=
"amount"
;
/* 金额*/
public
static
final
String
FIELD_SOURCE
=
"source"
;
/* 数据来源*/
public
static
final
String
COL_ID
=
"ID"
;
public
static
final
String
COL_ID
=
"ID"
;
public
static
final
String
COL_ACCOUNT_CODE
=
"ACCOUNT_CODE"
;
/* 企业编码*/
public
static
final
String
COL_DEP_CODE
=
"DEP_CODE"
;
/* 部门编码*/
public
static
final
String
COL_CREATED_BY
=
"CREATED_BY"
;
/* 记录创建者*/
...
...
@@ -115,6 +117,7 @@ public class HGKC006A extends DaoEPBase {
public
static
final
String
COL_PART_WIDTH
=
"PART_WIDTH"
;
/* 零件-宽*/
public
static
final
String
COL_PART_THICK
=
"PART_THICK"
;
/* 零件-厚*/
public
static
final
String
COL_PART_SPEC
=
"PART_SPEC"
;
/* 零件规格*/
public
static
final
String
COL_PART_SPEC_ID
=
"PART_SPEC_ID"
;
/* 零件规格ID*/
public
static
final
String
COL_PRIMARY_ID
=
"PRIMARY_ID"
;
/* 主表id*/
public
static
final
String
COL_PRICE
=
"PRICE"
;
/* 单价*/
public
static
final
String
COL_AMOUNT
=
"AMOUNT"
;
/* 金额*/
...
...
@@ -126,7 +129,7 @@ public class HGKC006A extends DaoEPBase {
public
static
final
String
UPDATE
=
"HGKC006A.update"
;
public
static
final
String
DELETE
=
"HGKC006A.delete"
;
private
Long
id
=
new
Long
(
0
);
private
Long
id
=
new
Long
(
0
);
private
String
accountCode
=
" "
;
/* 企业编码*/
private
String
depCode
=
" "
;
/* 部门编码*/
private
String
createdBy
=
" "
;
/* 记录创建者*/
...
...
@@ -170,6 +173,7 @@ public class HGKC006A extends DaoEPBase {
private
BigDecimal
partWidth
=
new
BigDecimal
(
0.000
);
/* 零件-宽*/
private
BigDecimal
partThick
=
new
BigDecimal
(
0.000
);
/* 零件-厚*/
private
String
partSpec
=
" "
;
/* 零件规格*/
private
Long
partSpecId
=
new
Long
(
0
);
/* 规格id*/
private
Long
primaryId
=
new
Long
(
0
);
/* 主表id*/
private
BigDecimal
price
=
new
BigDecimal
(
"0"
);
/* 单价*/
private
BigDecimal
amount
=
new
BigDecimal
(
"0"
);
/* 金额*/
...
...
@@ -385,6 +389,10 @@ public class HGKC006A extends DaoEPBase {
eiColumn
.
setDescName
(
"零件规格"
);
eiMetadata
.
addMeta
(
eiColumn
);
eiColumn
=
new
EiColumn
(
FIELD_PART_SPEC_ID
);
eiColumn
.
setDescName
(
"零件规格ID"
);
eiMetadata
.
addMeta
(
eiColumn
);
eiColumn
=
new
EiColumn
(
FIELD_PRIMARY_ID
);
eiColumn
.
setDescName
(
"主表id"
);
eiMetadata
.
addMeta
(
eiColumn
);
...
...
@@ -428,7 +436,7 @@ public class HGKC006A extends DaoEPBase {
/**
* set the id .
*
* @param id
* @param id
*/
public
void
setId
(
Long
id
)
{
this
.
id
=
id
;
...
...
@@ -1185,6 +1193,15 @@ public class HGKC006A extends DaoEPBase {
public
void
setSource
(
Integer
source
)
{
this
.
source
=
source
;
}
public
Long
getPartSpecId
()
{
return
partSpecId
;
}
public
void
setPartSpecId
(
Long
partSpecId
)
{
this
.
partSpecId
=
partSpecId
;
}
/**
* get the value from Map.
*
...
...
@@ -1237,6 +1254,7 @@ public class HGKC006A extends DaoEPBase {
setPartWidth
(
NumberUtils
.
toBigDecimal
(
StringUtils
.
toString
(
map
.
get
(
FIELD_PART_WIDTH
)),
partWidth
));
setPartThick
(
NumberUtils
.
toBigDecimal
(
StringUtils
.
toString
(
map
.
get
(
FIELD_PART_THICK
)),
partThick
));
setPartSpec
(
StringUtils
.
defaultIfEmpty
(
StringUtils
.
toString
(
map
.
get
(
FIELD_PART_SPEC
)),
partSpec
));
setPartSpecId
(
NumberUtils
.
toLong
(
StringUtils
.
toString
(
map
.
get
(
FIELD_PART_SPEC_ID
)),
partSpecId
));
setPrimaryId
(
NumberUtils
.
toLong
(
StringUtils
.
toString
(
map
.
get
(
FIELD_PRIMARY_ID
)),
primaryId
));
setPrice
(
NumberUtils
.
toBigDecimal
(
StringUtils
.
toString
(
map
.
get
(
FIELD_PRICE
)),
price
));
setAmount
(
NumberUtils
.
toBigDecimal
(
StringUtils
.
toString
(
map
.
get
(
FIELD_AMOUNT
)),
amount
));
...
...
@@ -1294,6 +1312,7 @@ public class HGKC006A extends DaoEPBase {
map
.
put
(
FIELD_PART_WIDTH
,
StringUtils
.
toString
(
partWidth
,
eiMetadata
.
getMeta
(
FIELD_PART_WIDTH
)));
map
.
put
(
FIELD_PART_THICK
,
StringUtils
.
toString
(
partThick
,
eiMetadata
.
getMeta
(
FIELD_PART_THICK
)));
map
.
put
(
FIELD_PART_SPEC
,
StringUtils
.
toString
(
partSpec
,
eiMetadata
.
getMeta
(
FIELD_PART_SPEC
)));
map
.
put
(
FIELD_PART_SPEC_ID
,
StringUtils
.
toString
(
partSpecId
,
eiMetadata
.
getMeta
(
FIELD_PART_SPEC_ID
)));
map
.
put
(
FIELD_PRIMARY_ID
,
StringUtils
.
toString
(
primaryId
,
eiMetadata
.
getMeta
(
FIELD_PRIMARY_ID
)));
map
.
put
(
FIELD_PRICE
,
StringUtils
.
toString
(
price
,
eiMetadata
.
getMeta
(
FIELD_PRICE
)));
map
.
put
(
FIELD_AMOUNT
,
StringUtils
.
toString
(
amount
,
eiMetadata
.
getMeta
(
FIELD_AMOUNT
)));
...
...
src/main/java/com/baosight/hggp/hg/kc/service/ServiceHGKC006.java
View file @
f2914810
...
...
@@ -8,9 +8,9 @@ import com.baosight.hggp.hg.constant.HGConstant;
import
com.baosight.hggp.hg.cw.tools.HGCWTools
;
import
com.baosight.hggp.hg.cw.vo.UserVO
;
import
com.baosight.hggp.hg.kc.domain.HGKC003
;
import
com.baosight.hggp.hg.kc.domain.HGKC006
;
import
com.baosight.hggp.hg.kc.domain.*
;
import
com.baosight.hggp.hg.kc.domain.HGKC006
;
import
com.baosight.hggp.hg.kc.tools.HGKCTools
;
import
com.baosight.hggp.hg.kc.utils.HGKCUtils
;
import
com.baosight.hggp.hg.utils.HGUtils
;
import
com.baosight.hggp.hg.xs.tools.HGXSTools
;
...
...
@@ -21,11 +21,10 @@ import com.baosight.iplat4j.core.ei.EiInfo;
import
com.baosight.iplat4j.core.exception.PlatException
;
import
com.baosight.iplat4j.core.service.impl.ServiceBase
;
import
com.baosight.iplat4j.ed.util.SequenceGenerator
;
import
org.springframework.util.CollectionUtils
;
import
java.util.Arrays
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.math.BigDecimal
;
import
java.util.*
;
/**
* 其他入库单
...
...
@@ -34,7 +33,7 @@ import java.util.Map;
* @date:2024/1/15,11:20
*/
public
class
ServiceHGKC006
extends
ServiceBase
{
/**
* 画面初始化
*
...
...
@@ -56,7 +55,7 @@ public class ServiceHGKC006 extends ServiceBase {
}
return
inInfo
;
}
/**
* 查询数据列表
*
...
...
@@ -77,7 +76,7 @@ public class ServiceHGKC006 extends ServiceBase {
}
/**
* 保存操作.
*
...
...
@@ -96,7 +95,6 @@ public class ServiceHGKC006 extends ServiceBase {
hgkc006
.
fromMap
(
resultRows
.
get
(
i
));
hgkc006
.
setOtherEnterDate
(
DateUtils
.
formatShort
(
hgkc006
.
getOtherEnterDate
()));
if
(
hgkc006
.
getId
()
==
null
||
hgkc006
.
getId
()
==
0
)
{
hgkc006
.
setSubmitStatus
(
HGConstant
.
ProductStatus
.
WTJ
);
this
.
add
(
hgkc006
);
}
else
{
this
.
modify
(
hgkc006
);
...
...
@@ -110,7 +108,7 @@ public class ServiceHGKC006 extends ServiceBase {
}
return
inInfo
;
}
/**
* 校验保存的数据
*
...
...
@@ -121,10 +119,17 @@ public class ServiceHGKC006 extends ServiceBase {
for
(
int
i
=
0
;
i
<
resultRows
.
size
();
i
++)
{
HGKC006
hgkc006
=
new
HGKC006
();
hgkc006
.
fromMap
(
resultRows
.
get
(
i
));
AssertUtils
.
isNull
(
hgkc006
.
getSubmitStatus
(),
"是否启用不能为空"
);
if
(
Objects
.
nonNull
(
hgkc006
.
getId
())&&
hgkc006
.
getId
()>
0
){
AssertUtils
.
isTrue
(
hgkc006
.
getSubmitStatus
().
compareTo
(
HGConstant
.
ProductStatus
.
YTJ
)
==
0
,
"领料单已提交,不可修改"
);
}
AssertUtils
.
isEmpty
(
UserSessionUtils
.
getAccountCode
(),
"当前用户未绑定公司,无法操作数据,请联系管理员!"
);
AssertUtils
.
isEmpty
(
UserSessionUtils
.
getOrgId
(),
"当前用户未绑定部门,无法操作数据,请联系管理员!"
);
AssertUtils
.
isEmpty
(
hgkc006
.
getCompanyCode
(),
"请选择公司!"
);
AssertUtils
.
isEmpty
(
hgkc006
.
getWhCode
(),
"请选择仓库信息!"
);
AssertUtils
.
isEmpty
(
hgkc006
.
getWhName
(),
"请选择仓库信息!"
);
}
}
/**
* 新增
*
...
...
@@ -136,10 +141,11 @@ public class ServiceHGKC006 extends ServiceBase {
UserVO
userVO
=
HGCWTools
.
HgCw002
.
getUserCompany
();
hgkc006
.
setCompanyCode
(
userVO
.
getUsercode
());
hgkc006
.
setCompanyName
(
userVO
.
getUsername
());
hgkc006
.
setSource
(
HGConstant
.
Source
.
QT
);
hgkc006
.
setSource
(
HGConstant
.
RKSource
.
SDLR
);
hgkc006
.
setSubmitStatus
(
HGConstant
.
ProductStatus
.
WTJ
);
DaoUtils
.
insert
(
HGKC006
.
INSERT
,
hgkc006
);
}
/**
* 修改数据
*
...
...
@@ -163,6 +169,18 @@ public class ServiceHGKC006 extends ServiceBase {
hgkc006
.
fromMap
(
map
);
DaoUtils
.
update
(
HGKC006
.
CHECK
,
hgkc006
.
toMap
());
}
List
<
HGKC006A
>
hgkc006AList
=
HGKCTools
.
HgKc006A
.
getHgkc008aList
(
hgkc006
.
getId
());
AssertUtils
.
isEmpty
(
hgkc006AList
,
"没有明细信息无法提交"
);
if
(!
CollectionUtils
.
isEmpty
(
hgkc006AList
)){
for
(
HGKC006A
hgkc006A
:
hgkc006AList
){
//增加库存
HGKCUtils
.
HgKc010
.
updateInv
(
hgkc006A
.
getCompanyCode
(),
hgkc006A
.
getWhCode
(),
hgkc006A
.
getPartSpecId
(),
hgkc006A
.
getInvQty
(),
hgkc006A
.
getInvUnitWeight
(),
hgkc006A
.
getInvWeight
());
}
}
eiInfo
.
setStatus
(
EiConstant
.
STATUS_SUCCESS
);
eiInfo
.
setMsg
(
"提交成功!"
);
}
catch
(
PlatException
e
)
{
eiInfo
.
setStatus
(
EiConstant
.
STATUS_FAILURE
);
eiInfo
.
setMsg
(
"提交失败,原因参见详细错误描述!"
);
...
...
@@ -170,66 +188,9 @@ public class ServiceHGKC006 extends ServiceBase {
logError
(
"提交失败!"
,
e
.
getMessage
());
return
eiInfo
;
}
eiInfo
.
setStatus
(
EiConstant
.
STATUS_SUCCESS
);
eiInfo
.
setMsg
(
"提交成功!"
);
return
eiInfo
;
}
/**
* 新增操作.
*
* @param inInfo
* @return
*/
@Override
@OperationLogAnnotation
(
operModul
=
"其他入库单"
,
operType
=
"新增"
,
operDesc
=
"新增"
)
public
EiInfo
insert
(
EiInfo
inInfo
)
{
try
{
List
<
Map
>
resultRows
=
inInfo
.
getBlock
(
EiConstant
.
resultBlock
).
getRows
();
// 数据校验
this
.
checkSaveData
(
resultRows
);
// 数据写入
for
(
int
i
=
0
;
i
<
resultRows
.
size
();
i
++)
{
HGKC006
hgkc006
=
new
HGKC006
();
hgkc006
.
fromMap
(
resultRows
.
get
(
i
));
this
.
add
(
hgkc006
);
}
inInfo
=
this
.
query
(
inInfo
);
inInfo
.
setStatus
(
EiConstant
.
STATUS_DEFAULT
);
inInfo
.
setMsg
(
"操作成功!本次对["
+
resultRows
.
size
()
+
"]条数据新增成功!"
);
}
catch
(
Exception
e
)
{
LogUtils
.
setDetailMsg
(
inInfo
,
e
,
"新增失败"
);
}
return
inInfo
;
}
/**
* 修改操作
*
* @param inInfo
* @return
*/
@OperationLogAnnotation
(
operModul
=
"其他入库单"
,
operType
=
"修改"
,
operDesc
=
"修改操作"
)
public
EiInfo
update
(
EiInfo
inInfo
)
{
try
{
List
<
Map
>
resultRows
=
inInfo
.
getBlock
(
EiConstant
.
resultBlock
).
getRows
();
// 数据校验
this
.
checkSaveData
(
resultRows
);
for
(
int
i
=
0
;
i
<
resultRows
.
size
();
i
++)
{
HGKC006
hppz009
=
new
HGKC006
();
hppz009
.
fromMap
(
resultRows
.
get
(
i
));
DaoUtils
.
update
(
HGKC006
.
UPDATE
,
hppz009
);
}
inInfo
=
this
.
query
(
inInfo
);
inInfo
.
setStatus
(
EiConstant
.
STATUS_DEFAULT
);
inInfo
.
setMsg
(
"操作成功!本次对["
+
resultRows
.
size
()
+
"]条数据修改成功!"
);
}
catch
(
Exception
e
)
{
LogUtils
.
setDetailMsg
(
inInfo
,
e
,
"修改失败"
);
}
return
inInfo
;
}
/**
* 删除操作
*
...
...
@@ -258,5 +219,5 @@ public class ServiceHGKC006 extends ServiceBase {
}
return
inInfo
;
}
}
src/main/java/com/baosight/hggp/hg/kc/service/ServiceHGKC006A.java
View file @
f2914810
...
...
@@ -3,26 +3,20 @@ package com.baosight.hggp.hg.kc.service;
import
com.baosight.hggp.aspect.annotation.OperationLogAnnotation
;
import
com.baosight.hggp.common.DdynamicEnum
;
import
com.baosight.hggp.core.dao.DaoUtils
;
import
com.baosight.hggp.
hg.constant.HGConstant
;
import
com.baosight.hggp.
core.security.UserSessionUtils
;
import
com.baosight.hggp.hg.kc.domain.HGKC006
;
import
com.baosight.hggp.hg.kc.domain.HGKC006A
;
import
com.baosight.hggp.hg.kc.utils.HGKCUtils
;
import
com.baosight.hggp.hg.xs.tools.HGXSTools
;
import
com.baosight.hggp.util.AssertUtils
;
import
com.baosight.hggp.util.CommonMethod
;
import
com.baosight.hggp.util.LogUtils
;
import
com.baosight.hggp.hg.constant.HGConstant
;
import
com.baosight.hggp.hg.kc.domain.*
;
import
com.baosight.hggp.hg.kc.tools.HGKCTools
;
import
com.baosight.hggp.util.*
;
import
com.baosight.hggp.util.contants.ACConstants
;
import
com.baosight.iplat4j.core.ei.EiConstant
;
import
com.baosight.iplat4j.core.ei.EiInfo
;
import
com.baosight.iplat4j.core.exception.PlatException
;
import
com.baosight.iplat4j.core.service.impl.ServiceBase
;
import
com.baosight.iplat4j.ed.util.SequenceGenerator
;
import
java.util.Arrays
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.math.BigDecimal
;
import
java.util.*
;
/**
* 其他入库单明细
...
...
@@ -31,7 +25,7 @@ import java.util.Map;
* @date:2024/1/15,11:20
*/
public
class
ServiceHGKC006A
extends
ServiceBase
{
/**
* 画面初始化
*
...
...
@@ -42,15 +36,22 @@ public class ServiceHGKC006A extends ServiceBase {
@OperationLogAnnotation
(
operModul
=
"其他入库单明细"
,
operType
=
"查询"
,
operDesc
=
"初始化"
)
public
EiInfo
initLoad
(
EiInfo
inInfo
)
{
try
{
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
INVENT_TYPE_BOX_BLOCK_ID
),
null
,
false
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
INVENT_RECORD_BOX_BLOCK_ID
),
null
,
false
);
String
whCode
=
inInfo
.
getCellStr
(
EiConstant
.
queryBlock
,
ACConstants
.
ROW_CODE_0
,
HGKC006A
.
FIELD_WH_CODE
);
String
companyCode
=
inInfo
.
getCellStr
(
EiConstant
.
queryBlock
,
ACConstants
.
ROW_CODE_0
,
HGKC006A
.
FIELD_COMPANY_CODE
);
Map
map
=
new
HashMap
();
map
.
put
(
HGKC006A
.
FIELD_ACCOUNT_CODE
,
UserSessionUtils
.
getAccountCode
());
map
.
put
(
HGKC006A
.
FIELD_WH_CODE
,
whCode
);
map
.
put
(
HGKC006A
.
FIELD_COMPANY_CODE
,
companyCode
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
INVENT_TYPE_BOX_BLOCK_ID
,
DdynamicEnum
.
INVENT_CODE_BOX_BLOCK_ID
,
DdynamicEnum
.
SPEC_BOX_BLOCK_ID
),
map
,
false
);
inInfo
.
addBlock
(
EiConstant
.
resultBlock
).
addBlockMeta
(
new
HGKC006A
().
eiMetadata
);
}
catch
(
PlatException
e
)
{
LogUtils
.
setDetailMsg
(
inInfo
,
e
,
"初始化失败"
);
}
return
inInfo
;
}
/**
* 查询数据列表
*
...
...
@@ -62,12 +63,21 @@ public class ServiceHGKC006A extends ServiceBase {
public
EiInfo
query
(
EiInfo
inInfo
)
{
try
{
inInfo
=
super
.
query
(
inInfo
,
HGKC006A
.
QUERY
,
new
HGKC006A
());
String
whCode
=
inInfo
.
getCellStr
(
EiConstant
.
queryBlock
,
ACConstants
.
ROW_CODE_0
,
HGKC006A
.
FIELD_WH_CODE
);
String
companyCode
=
inInfo
.
getCellStr
(
EiConstant
.
queryBlock
,
ACConstants
.
ROW_CODE_0
,
HGKC006A
.
FIELD_COMPANY_CODE
);
Map
map
=
new
HashMap
();
map
.
put
(
HGKC006A
.
FIELD_ACCOUNT_CODE
,
UserSessionUtils
.
getAccountCode
());
map
.
put
(
HGKC006A
.
FIELD_WH_CODE
,
whCode
);
map
.
put
(
HGKC006A
.
FIELD_COMPANY_CODE
,
companyCode
);
CommonMethod
.
initBlock
(
inInfo
,
Arrays
.
asList
(
DdynamicEnum
.
INVENT_TYPE_BOX_BLOCK_ID
,
DdynamicEnum
.
INVENT_CODE_BOX_BLOCK_ID
,
DdynamicEnum
.
SPEC_BOX_BLOCK_ID
),
map
,
false
);
}
catch
(
Exception
e
)
{
LogUtils
.
setDetailMsg
(
inInfo
,
e
,
"查询失败"
);
}
return
inInfo
;
}
/**
* 保存操作.
*
...
...
@@ -76,98 +86,59 @@ public class ServiceHGKC006A extends ServiceBase {
*/
@OperationLogAnnotation
(
operModul
=
"其他入库单明细"
,
operType
=
"插入"
,
operDesc
=
"保存"
)
public
EiInfo
save
(
EiInfo
inInfo
)
{
try
{
List
<
Map
>
resultRows
=
inInfo
.
getBlock
(
EiConstant
.
resultBlock
).
getRows
();
// 数据校验
this
.
checkSaveData
(
resultRows
);
// 写入数据
for
(
int
i
=
0
;
i
<
resultRows
.
size
();
i
++)
{
HGKC006A
hgkc006A
=
new
HGKC006A
();
hgkc006A
.
fromMap
(
resultRows
.
get
(
i
));
if
(
hgkc006A
.
getId
()
==
null
||
hgkc006A
.
getId
()
==
0
)
{
Map
queryMap
=
new
HashMap
();
queryMap
.
put
(
"id"
,
inInfo
.
getCellStr
(
EiConstant
.
queryBlock
,
ACConstants
.
ROW_CODE_0
,
HGKC006A
.
FIELD_PRIMARY_ID
));
List
<
HGKC006
>
list
=
this
.
dao
.
query
(
HGKC006
.
QUERY
,
queryMap
);
this
.
add
(
hgkc006A
,
list
.
get
(
0
));
}
else
{
this
.
modify
(
hgkc006A
);
}
try
{
Map
resultMap
=
EiInfoUtils
.
getFirstRow
(
inInfo
,
EiConstant
.
resultBlock
);
HGKC006A
hgkc006a
=
new
HGKC006A
();
hgkc006a
.
fromMap
(
resultMap
);
//查询主单
HGKC006
hgkc006
=
HGKCTools
.
HgKc006
.
getById
(
hgkc006a
.
getPrimaryId
());
this
.
checkSaveData
(
hgkc006a
,
hgkc006
);
this
.
setData
(
hgkc006a
,
hgkc006
);
if
(
Objects
.
nonNull
(
hgkc006a
.
getId
())&&
hgkc006a
.
getId
()!=
0
){
DaoUtils
.
update
(
HGKC006A
.
UPDATE
,
hgkc006a
);
}
else
{
hgkc006a
.
setPrimaryId
(
hgkc006
.
getId
());
hgkc006a
.
setOtherEnterNo
(
hgkc006
.
getOtherEnterNo
());
DaoUtils
.
insert
(
HGKC006A
.
INSERT
,
hgkc006a
);
}
inInfo
=
this
.
query
(
inInfo
);
inInfo
.
setStatus
(
EiConstant
.
STATUS_DEFAULT
);
inInfo
.
setMsg
(
"操作成功!本次对["
+
resultRows
.
size
()
+
"]条数据保存成功!"
);
}
catch
(
Exception
e
)
{
LogUtils
.
setDetailMsg
(
inInfo
,
e
,
"保存失败"
);
}
return
inInfo
;
}
/**
* 校验保存的数据
*
* @param resultRows
*/
private
void
checkSaveData
(
List
<
Map
>
resultRows
)
{
// 数据校验
for
(
int
i
=
0
;
i
<
resultRows
.
size
();
i
++)
{
HGKC006A
hgkc006A
=
new
HGKC006A
();
hgkc006A
.
fromMap
(
resultRows
.
get
(
i
));
//AssertUtils.isNull(hgkc006A.s(), "是否启用不能为空");
private
void
setData
(
HGKC006A
hgkc006a
,
HGKC006
hgkc006
)
{
if
(
Objects
.
nonNull
(
hgkc006
)){
hgkc006a
.
setProjCode
(
hgkc006
.
getProjCode
());
hgkc006a
.
setProjName
(
hgkc006
.
getProjName
());
hgkc006a
.
setWhCode
(
hgkc006
.
getWhCode
());
hgkc006a
.
setWhName
(
hgkc006
.
getWhName
());
hgkc006a
.
setCompanyCode
(
hgkc006
.
getCompanyCode
());
hgkc006a
.
setCompanyName
(
hgkc006
.
getCompanyName
());
hgkc006a
.
setSource
(
hgkc006
.
getSource
());
}
}
/**
* 新增
*
* @param hgkc006A
* @throws Exception
*/
private
void
add
(
HGKC006A
hgkc006A
,
HGKC006
hgkc006
)
throws
Exception
{
hgkc006A
.
setPrimaryId
(
hgkc006
.
getId
());
hgkc006A
.
setOtherEnterNo
(
hgkc006
.
getOtherEnterNo
());
DaoUtils
.
insert
(
HGKC006A
.
INSERT
,
hgkc006A
);
// 更新库存数量
HGKCUtils
.
HgKc010
.
updateInv
(
hgkc006
.
getCompanyCode
(),
hgkc006
.
getWhCode
(),
hgkc006A
.
getInventRecordId
(),
hgkc006A
.
getInvQty
(),
hgkc006A
.
getInvUnitWeight
(),
hgkc006A
.
getInvWeight
());
}
/**
* 修改数据
*
* @param hgkc006A
*/
private
void
modify
(
HGKC006A
hgkc006A
)
{
DaoUtils
.
update
(
HGKC006A
.
UPDATE
,
hgkc006A
);
}
/**
* 修改操作
*
* @param inInfo
* @return
* 校验保存的数据
*/
@OperationLogAnnotation
(
operModul
=
"其他入库单明细"
,
operType
=
"修改"
,
operDesc
=
"修改操作"
)
public
EiInfo
update
(
EiInfo
inInfo
)
{
try
{
List
<
Map
>
resultRows
=
inInfo
.
getBlock
(
EiConstant
.
resultBlock
).
getRows
();
// 数据校验
this
.
checkSaveData
(
resultRows
);
for
(
int
i
=
0
;
i
<
resultRows
.
size
();
i
++)
{
HGKC006A
hppz009
=
new
HGKC006A
();
hppz009
.
fromMap
(
resultRows
.
get
(
i
));
DaoUtils
.
update
(
HGKC006A
.
UPDATE
,
hppz009
);
}
inInfo
=
this
.
query
(
inInfo
);
inInfo
.
setStatus
(
EiConstant
.
STATUS_DEFAULT
);
inInfo
.
setMsg
(
"操作成功!本次对["
+
resultRows
.
size
()
+
"]条数据修改成功!"
);
}
catch
(
Exception
e
)
{
LogUtils
.
setDetailMsg
(
inInfo
,
e
,
"修改失败"
);
private
void
checkSaveData
(
HGKC006A
hgkc006a
,
HGKC006
hgkc006
)
{
AssertUtils
.
isEmpty
(
UserSessionUtils
.
getAccountCode
(),
"当前用户未绑定公司,无法操作数据,请联系管理员!"
);
AssertUtils
.
isEmpty
(
UserSessionUtils
.
getOrgId
(),
"当前用户未绑定部门,无法操作数据,请联系管理员!"
);
AssertUtils
.
isNull
(
hgkc006a
.
getPrimaryId
(),
"未获取到其他入库单ID信息"
);
HGKC010
hgkc010
=
HGKCTools
.
HgKc010
.
get
(
hgkc006a
.
getCompanyCode
(),
hgkc006a
.
getWhCode
(),
hgkc006a
.
getPartSpecId
());
if
(
hgkc010
==
null
){
throw
new
PlatException
(
"实时库存不存在!"
);
}
int
result
=
hgkc006a
.
getInvQty
().
compareTo
(
hgkc010
.
getInvQty
());
if
(
result
>
0
){
throw
new
PlatException
(
"实时库存数量不够,无法保存!"
);
}
return
inInfo
;
}
/**
* 删除操作
*
...
...
@@ -181,18 +152,7 @@ public class ServiceHGKC006A extends ServiceBase {
for
(
int
i
=
0
;
i
<
resultRows
.
size
();
i
++)
{
HGKC006A
hgkc006A
=
new
HGKC006A
();
hgkc006A
.
fromMap
(
resultRows
.
get
(
i
));
// 校验企业下是否存在用户
int
count
=
HGXSTools
.
XsUser
.
countByAccount
(
hgkc006A
.
getAccountCode
());
if
(
count
>
0
)
{
// throw new PlatException(String.format("企业[%s]已关联用户,请先解除用户", hgkc006A.getAccountName()));
}
DaoUtils
.
update
(
HGKC006A
.
DELETE
,
hgkc006A
);
// 扣减库存
Map
queryMap
=
new
HashMap
();
queryMap
.
put
(
"id"
,
inInfo
.
getCellStr
(
EiConstant
.
queryBlock
,
ACConstants
.
ROW_CODE_0
,
HGKC006A
.
FIELD_PRIMARY_ID
));
List
<
HGKC006
>
list
=
this
.
dao
.
query
(
HGKC006
.
QUERY
,
queryMap
);
HGKCUtils
.
HgKc010
.
updateInv
(
list
.
get
(
0
).
getCompanyCode
(),
list
.
get
(
0
).
getWhCode
(),
hgkc006A
.
getInventRecordId
(),
hgkc006A
.
getInvQty
().
negate
(),
hgkc006A
.
getInvWeight
().
negate
());
}
inInfo
=
this
.
query
(
inInfo
);
inInfo
.
setStatus
(
EiConstant
.
STATUS_DEFAULT
);
...
...
@@ -202,5 +162,5 @@ public class ServiceHGKC006A extends ServiceBase {
}
return
inInfo
;
}
}
src/main/java/com/baosight/hggp/hg/kc/service/ServiceHGKC007.java
View file @
f2914810
...
...
@@ -35,7 +35,7 @@ import java.util.Map;
* @date:2024/1/15,11:20
*/
public
class
ServiceHGKC007
extends
ServiceBase
{
/**
* 画面初始化
*
...
...
@@ -57,7 +57,7 @@ public class ServiceHGKC007 extends ServiceBase {
}
return
inInfo
;
}
/**
* 查询数据列表
*
...
...
@@ -78,7 +78,7 @@ public class ServiceHGKC007 extends ServiceBase {
}
/**
* 保存操作.
*
...
...
@@ -111,7 +111,7 @@ public class ServiceHGKC007 extends ServiceBase {
}
return
inInfo
;
}
/**
* 校验保存的数据
*
...
...
@@ -125,7 +125,7 @@ public class ServiceHGKC007 extends ServiceBase {
AssertUtils
.
isNull
(
hgkc007
.
getSubmitStatus
(),
"是否启用不能为空"
);
}
}
/**
* 新增
*
...
...
@@ -137,10 +137,10 @@ public class ServiceHGKC007 extends ServiceBase {
UserVO
userVO
=
HGCWTools
.
HgCw002
.
getUserCompany
();
hgkc007
.
setCompanyCode
(
userVO
.
getUsercode
());
hgkc007
.
setCompanyName
(
userVO
.
getUsername
());
hgkc007
.
setSource
(
HGConstant
.
Source
.
QT
);
hgkc007
.
setSource
(
HGConstant
.
CKSource
.
SDLR
);
DaoUtils
.
insert
(
HGKC007
.
INSERT
,
hgkc007
);
}
/**
* 修改数据
*
...
...
@@ -174,7 +174,7 @@ public class ServiceHGKC007 extends ServiceBase {
eiInfo
.
setMsg
(
"提交成功!"
);
return
eiInfo
;
}
/**
* 新增操作.
*
...
...
@@ -203,7 +203,7 @@ public class ServiceHGKC007 extends ServiceBase {
return
inInfo
;
}
/**
* 修改操作
*
...
...
@@ -229,7 +229,7 @@ public class ServiceHGKC007 extends ServiceBase {
}
return
inInfo
;
}
/**
* 删除操作
*
...
...
@@ -258,5 +258,5 @@ public class ServiceHGKC007 extends ServiceBase {
}
return
inInfo
;
}
}
src/main/java/com/baosight/hggp/hg/kc/sql/HGKC006A.xml
View file @
f2914810
<?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">
<!-- table information
Generate time : 2024-05-24 16:39:30
Version : 1.0
schema : hggp
tableName : HGKC006A
ID BIGINT NOT NULL primarykey,
ACCOUNT_CODE VARCHAR,
DEP_CODE VARCHAR,
CREATED_BY VARCHAR NOT NULL,
CREATED_NAME VARCHAR NOT NULL,
CREATED_TIME VARCHAR NOT NULL,
UPDATED_BY VARCHAR NOT NULL,
UPDATED_NAME VARCHAR NOT NULL,
UPDATED_TIME VARCHAR NOT NULL,
DELETE_FLAG TINYINT,
COMPANY_CODE VARCHAR,
COMPANY_NAME VARCHAR,
OTHER_ENTER_DATE VARCHAR,
OTHER_ENTER_NO VARCHAR NOT NULL,
WH_CODE VARCHAR,
WH_NAME VARCHAR,
INVENT_RECORD_ID BIGINT,
INVENT_TYPE VARCHAR,
INVENT_CODE VARCHAR NOT NULL,
INVENT_NAME VARCHAR NOT NULL,
INV_QTY DECIMAL,
INV_UNIT_WEIGHT DECIMAL,
INV_WEIGHT DECIMAL,
OTHER_ENTER_NO_OLD VARCHAR,
REMARK VARCHAR,
FACTORY_CODE VARCHAR,
PROD_ORDER_NO VARCHAR,
PROD_TASK_NO VARCHAR,
PROJ_CODE VARCHAR,
PROJ_NAME VARCHAR,
PRDT_TYPE TINYINT,
PRDT_CODE VARCHAR,
PRDT_NAME VARCHAR,
PRDT_LENGTH DECIMAL,
PRDT_WIDTH DECIMAL,
PRDT_THICK DECIMAL,
PRDT_SPEC VARCHAR,
PART_TYPE TINYINT,
PART_CODE VARCHAR,
PART_NAME VARCHAR,
PART_LENGTH DECIMAL,
PART_WIDTH DECIMAL,
PART_THICK DECIMAL,
PART_SPEC VARCHAR,
PRIMARY_ID BIGINT,
PRICE DECIMAL,
AMOUNT DECIMAL,
SOURCE TINYINT
-->
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap
namespace=
"HGKC006A"
>
<sql
id=
"condition"
>
...
...
@@ -188,6 +135,9 @@
<isNotEmpty
prepend=
" AND "
property=
"partSpec"
>
PART_SPEC = #partSpec#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"partSpecId"
>
PART_SPEC_ID = #partSpecId#
</isNotEmpty>
<isNotEmpty
prepend=
" AND "
property=
"primaryId"
>
PRIMARY_ID = #primaryId#
</isNotEmpty>
...
...
@@ -205,7 +155,7 @@
<select
id=
"query"
parameterClass=
"java.util.HashMap"
resultClass=
"com.baosight.hggp.hg.kc.domain.HGKC006A"
>
SELECT
ID as "id",
ID as "id",
ACCOUNT_CODE as "accountCode",
<!-- 企业编码 -->
DEP_CODE as "depCode",
<!-- 部门编码 -->
CREATED_BY as "createdBy",
<!-- 记录创建者 -->
...
...
@@ -249,6 +199,7 @@
PART_WIDTH as "partWidth",
<!-- 零件-宽 -->
PART_THICK as "partThick",
<!-- 零件-厚 -->
PART_SPEC as "partSpec",
<!-- 零件规格 -->
PART_SPEC_ID as "partSpecId",
<!-- 零件规格id -->
PRIMARY_ID as "primaryId",
<!-- 主表id -->
PRICE as "price",
<!-- 单价 -->
AMOUNT as "amount",
<!-- 金额 -->
...
...
@@ -271,152 +222,6 @@
<include
refid=
"condition"
/>
</select>
<!--
<isNotEmpty prepend=" AND " property="id">
ID = #id#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="accountCode">
ACCOUNT_CODE = #accountCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="depCode">
DEP_CODE = #depCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="createdBy">
CREATED_BY = #createdBy#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="createdName">
CREATED_NAME = #createdName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="createdTime">
CREATED_TIME = #createdTime#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="updatedBy">
UPDATED_BY = #updatedBy#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="updatedName">
UPDATED_NAME = #updatedName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="updatedTime">
UPDATED_TIME = #updatedTime#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="deleteFlag">
DELETE_FLAG = #deleteFlag#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="companyCode">
COMPANY_CODE = #companyCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="companyName">
COMPANY_NAME = #companyName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="otherEnterDate">
OTHER_ENTER_DATE = #otherEnterDate#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="otherEnterNo">
OTHER_ENTER_NO = #otherEnterNo#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="whCode">
WH_CODE = #whCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="whName">
WH_NAME = #whName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="inventRecordId">
INVENT_RECORD_ID = #inventRecordId#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="inventType">
INVENT_TYPE = #inventType#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="inventCode">
INVENT_CODE = #inventCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="inventName">
INVENT_NAME = #inventName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="invQty">
INV_QTY = #invQty#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="invUnitWeight">
INV_UNIT_WEIGHT = #invUnitWeight#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="invWeight">
INV_WEIGHT = #invWeight#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="otherEnterNoOld">
OTHER_ENTER_NO_OLD = #otherEnterNoOld#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="remark">
REMARK = #remark#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="factoryCode">
FACTORY_CODE = #factoryCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="prodOrderNo">
PROD_ORDER_NO = #prodOrderNo#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="prodTaskNo">
PROD_TASK_NO = #prodTaskNo#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="projCode">
PROJ_CODE = #projCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="projName">
PROJ_NAME = #projName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="prdtType">
PRDT_TYPE = #prdtType#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="prdtCode">
PRDT_CODE = #prdtCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="prdtName">
PRDT_NAME = #prdtName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="prdtLength">
PRDT_LENGTH = #prdtLength#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="prdtWidth">
PRDT_WIDTH = #prdtWidth#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="prdtThick">
PRDT_THICK = #prdtThick#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="prdtSpec">
PRDT_SPEC = #prdtSpec#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="partType">
PART_TYPE = #partType#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="partCode">
PART_CODE = #partCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="partName">
PART_NAME = #partName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="partLength">
PART_LENGTH = #partLength#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="partWidth">
PART_WIDTH = #partWidth#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="partThick">
PART_THICK = #partThick#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="partSpec">
PART_SPEC = #partSpec#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="primaryId">
PRIMARY_ID = #primaryId#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="price">
PRICE = #price#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="amount">
AMOUNT = #amount#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="source">
SOURCE = #source#
</isNotEmpty>
-->
<insert
id=
"insert"
>
INSERT INTO ${hggpSchema}.HGKC006A (ID,
...
...
@@ -463,12 +268,13 @@
PART_WIDTH,
<!-- 零件-宽 -->
PART_THICK,
<!-- 零件-厚 -->
PART_SPEC,
<!-- 零件规格 -->
PART_SPEC_ID,
<!-- 零件规格id -->
PRIMARY_ID,
<!-- 主表id -->
PRICE,
<!-- 单价 -->
AMOUNT,
<!-- 金额 -->
SOURCE
<!-- 数据来源 -->
)
VALUES (#id#, #accountCode#, #depCode#, #createdBy#, #createdName#, #createdTime#, #updatedBy#, #updatedName#, #updatedTime#, #deleteFlag#, #companyCode#, #companyName#, #otherEnterDate#, #otherEnterNo#, #whCode#, #whName#, #inventRecordId#, #inventType#, #inventCode#, #inventName#, #invQty#, #invUnitWeight#, #invWeight#, #otherEnterNoOld#, #remark#, #factoryCode#, #prodOrderNo#, #prodTaskNo#, #projCode#, #projName#, #prdtType#, #prdtCode#, #prdtName#, #prdtLength#, #prdtWidth#, #prdtThick#, #prdtSpec#, #partType#, #partCode#, #partName#, #partLength#, #partWidth#, #partThick#, #partSpec#, #primaryId#, #price#, #amount#, #source#)
VALUES (#id#, #accountCode#, #depCode#, #createdBy#, #createdName#, #createdTime#, #updatedBy#, #updatedName#, #updatedTime#, #deleteFlag#, #companyCode#, #companyName#, #otherEnterDate#, #otherEnterNo#, #whCode#, #whName#, #inventRecordId#, #inventType#, #inventCode#, #inventName#, #invQty#, #invUnitWeight#, #invWeight#, #otherEnterNoOld#, #remark#, #factoryCode#, #prodOrderNo#, #prodTaskNo#, #projCode#, #projName#, #prdtType#, #prdtCode#, #prdtName#, #prdtLength#, #prdtWidth#, #prdtThick#, #prdtSpec#, #partType#, #partCode#, #partName#, #partLength#, #partWidth#, #partThick#, #partSpec#,
#partSpecId#,
#primaryId#, #price#, #amount#, #source#)
</insert>
<delete
id=
"delete"
>
...
...
@@ -521,6 +327,7 @@
PART_WIDTH = #partWidth#,
<!-- 零件-宽 -->
PART_THICK = #partThick#,
<!-- 零件-厚 -->
PART_SPEC = #partSpec#,
<!-- 零件规格 -->
PART_SPEC_ID = #partSpecId#,
<!-- 零件规格id -->
PRIMARY_ID = #primaryId#,
<!-- 主表id -->
PRICE = #price#,
<!-- 单价 -->
AMOUNT = #amount#,
<!-- 金额 -->
...
...
src/main/java/com/baosight/hggp/hg/kc/tools/HGKCTools.java
View file @
f2914810
...
...
@@ -316,6 +316,24 @@ public class HGKCTools {
}
}
public
static
class
HgKc006
{
public
static
HGKC006
getById
(
Long
id
)
{
AssertUtils
.
isEmpty
(
Collections
.
singleton
(
id
),
"ID为空!"
);
HGKC006
result
=
(
HGKC006
)
DaoBase
.
getInstance
().
get
(
HGKC006
.
QUERY
,
HGKC006
.
FIELD_ID
,
id
);
return
result
;
}
}
public
static
class
HgKc006A
{
public
static
List
<
HGKC006A
>
getHgkc008aList
(
Long
primaryId
)
{
Map
paramMap
=
new
HashMap
();
paramMap
.
put
(
"primaryId"
,
primaryId
);
List
<
HGKC006A
>
results
=
DaoBase
.
getInstance
().
query
(
HGKC006A
.
QUERY
,
paramMap
);
return
results
;
}
}
public
static
class
HgKc008
{
public
static
HGKC008
getById
(
Long
id
)
{
...
...
src/main/webapp/HG/KC/HGKC006.js
View file @
f2914810
...
...
@@ -20,7 +20,7 @@ $(function () {
// 详情
if
(
item
.
id
)
{
template
+=
'<a style="cursor: pointer;display: inline-flex;justify-content: center;margin:auto 5px" '
+
'onclick="jump('
+
item
.
id
+
',
\'
'
+
item
.
submitStatus
+
'
\'
)" >详情</a>'
;
+
'onclick="jump('
+
item
.
id
+
',
\'
'
+
item
.
submitStatus
+
'
\'
,
\'
'
+
item
.
whCode
+
'
\'
,
\'
'
+
item
.
companyCode
+
'
\'
)" >详情</a>'
;
}
return
template
;
}
...
...
@@ -134,8 +134,12 @@ function check(id, auditStatus) {
inEiInfo
.
set
(
"result-0-submitStatus"
,
auditStatus
);
EiCommunicator
.
send
(
'HGKC006'
,
'check'
,
inEiInfo
,
{
onSuccess
(
response
)
{
message
(
"提交成功"
);
resultGrid
.
dataSource
.
page
(
1
);
if
(
response
.
status
==
"-1"
)
{
NotificationUtil
({
msg
:
response
.
msg
,
detailMsg
:
response
.
detailMsg
},
"error"
);
}
else
{
NotificationUtil
(
response
.
msg
);
query
();
}
},
onFail
(
errorMessage
,
status
,
e
)
{
NotificationUtil
(
"执行失败!"
,
"error"
);
...
...
@@ -147,9 +151,13 @@ function check(id, auditStatus) {
);
}
//详情
function
jump
(
id
,
submitStatus
)
{
var
herf
=
ctx
+
"
\\
web
\
\"
+ "
HGKC006A
?
inqu_status
-
0
-
primaryId
=
" + id + "
&
inqu_status
-
0
-
submitStatus
=
"+ submitStatus +"
&
efParentFormEname
=
HGKC006
";
window.open(herf);
function
jump
(
id
,
submitStatus
,
whCode
,
companyCode
)
{
JSColorbox
.
open
({
href
:
"HGKC006A?methodName=initLoad&inqu_status-0-primaryId="
+
id
+
"&inqu_status-0-whCode="
+
whCode
+
"&inqu_status-0-companyCode="
+
companyCode
+
"&inqu_status-0-submitStatus="
+
submitStatus
,
title
:
"<div style='text-align: center;'>其他入库详情</div>"
,
width
:
"80%"
,
height
:
"80%"
,
});
}
/**
* 选择生产任务
...
...
src/main/webapp/HG/KC/HGKC006A.js
View file @
f2914810
let
InventNameGlobalData
=
[];
let
inventAllGlobalData
=
[];
$
(
function
()
{
$
(
".row"
).
children
().
attr
(
"class"
,
"col-md-3"
);
var
inventRecordBoxBlocks
=
__eiInfo
.
getBlock
(
"invent_code_box_block_id"
).
getMappedRows
();
var
specBoxBlocks
=
__eiInfo
.
getBlock
(
"spec_box_block_id"
).
getMappedRows
();
// 查询
$
(
"#QUERY"
).
on
(
"click"
,
query
);
IPLATUI
.
EFGrid
.
result
=
{
pageable
:
{
pageSize
:
20
,
pageSizes
:
[
10
,
20
,
30
,
50
,
100
,
200
],
},
columns
:
[{
field
:
"inventCode"
,
filter
:
function
(
options
)
{
return
_
.
filter
(
InventNameGlobalData
,
function
(
item
)
{
return
item
[
"param1Field"
]
==
"true"
;
})
},
template
:
function
(
dataItem
)
{
for
(
let
i
=
0
;
i
<
InventNameGlobalData
.
length
;
i
++
)
{
if
(
InventNameGlobalData
[
i
][
'valueField'
]
===
dataItem
[
'inventCode'
])
{
dataItem
[
'inventName'
]
=
InventNameGlobalData
[
i
][
'param1Field'
];
return
InventNameGlobalData
[
i
][
'textField'
];
columns
:
[
{
field
:
"inventCode"
,
template
:
function
(
item
)
{
let
template
=
""
;
if
(
item
.
inventCode
){
for
(
let
i
=
0
;
i
<
inventRecordBoxBlocks
.
length
;
i
++
){
if
(
item
.
inventCode
===
inventRecordBoxBlocks
[
i
][
'valueField'
]){
template
=
inventRecordBoxBlocks
[
i
][
'valueField'
];
}
}
}
return
template
;
},
editor
:
function
(
container
,
options
)
{
var
input
=
$
(
'<input />'
);
input
.
attr
(
"name"
,
options
.
field
);
input
.
attr
(
"id"
,
options
.
field
);
input
.
appendTo
(
container
);
input
.
kendoDropDownList
({
dataSource
:
inventRecordBoxBlocks
,
minLength
:
0
,
dataTextField
:
"textField"
,
dataValueField
:
"valueField"
,
optionLabelTemplate
:
"[#:valueField#]#:textField#"
,
valueTemplate
:
"[#:valueField#]#:textField#"
,
template
:
"[#:valueField#]#:textField#"
,
filter
:
"contains"
});
}
return
""
;
},
editor
:
function
(
container
,
options
)
{
let
inInfo
=
new
EiInfo
();
inInfo
.
set
(
"inqu_status-0-isSplicingSymbol"
,
false
);
inInfo
.
set
(
"serviceName"
,
"HGPZ005"
);
inInfo
.
set
(
"methodName"
,
"queryInventNameBox"
);
inInfo
.
set
(
"blockId"
,
"invent_name_box_block_id"
);
inInfo
.
set
(
"field"
,
options
.
field
);
refreshSelect
(
container
,
inInfo
);
}
},{
field
:
"invQty"
,
template
:
function
(
item
)
{
if
(
item
.
invQty
&&
item
.
invUnitWeight
){
let
invWeight
=
item
.
invQty
*
item
.
invUnitWeight
;
//item['invWeight'] = invWeight.toString();
resultGrid
.
setCellValue
(
item
,
'invWeight'
,
invWeight
);
{
field
:
"partSpec"
,
template
:
function
(
item
)
{
let
template
=
""
;
if
(
item
.
partSpec
){
for
(
let
i
=
0
;
i
<
specBoxBlocks
.
length
;
i
++
){
if
(
item
.
partSpec
===
specBoxBlocks
[
i
][
'valueField'
]){
template
=
specBoxBlocks
[
i
][
'valueField'
];
}
}
}
return
template
;
},
editor
:
function
(
container
,
options
)
{
let
inInfo
=
new
EiInfo
();
inInfo
.
set
(
"inqu_status-0-whCode"
,
options
.
model
[
"whCode"
]);
inInfo
.
set
(
"inqu_status-0-companyCode"
,
options
.
model
[
"companyCode"
]);
inInfo
.
set
(
"inqu_status-0-inventType"
,
options
.
model
[
"inventType"
]);
inInfo
.
set
(
"inqu_status-0-inventCode"
,
options
.
model
[
"inventCode"
]);
inInfo
.
set
(
"field"
,
options
.
field
);
let
dataSource
;
EiCommunicator
.
send
(
"HGKC010"
,
"querySpecBox"
,
inInfo
,
{
onSuccess
:
function
(
ei
)
{
dataSource
=
ei
.
getBlock
(
"spec_box_block_id"
).
getMappedRows
();
},
onFail
:
function
(
ei
)
{
}
},
{
async
:
false
});
var
input
=
$
(
'<input />'
);
input
.
attr
(
"name"
,
options
.
field
);
input
.
attr
(
"id"
,
options
.
field
);
input
.
appendTo
(
container
);
input
.
kendoDropDownList
({
dataSource
:
dataSource
,
minLength
:
0
,
dataTextField
:
"textField"
,
dataValueField
:
"valueField"
,
optionLabelTemplate
:
"[#:valueField#]#:textField#"
,
valueTemplate
:
"[#:valueField#]#:textField#"
,
template
:
"[#:valueField#]#:textField#"
,
filter
:
"contains"
});
}
if
(
item
.
invQty
&&
item
.
price
){
let
amount
=
item
.
invQty
*
item
.
price
;
//item['amount'] = amount.toString();
resultGrid
.
setCellValue
(
item
,
'amount'
,
amount
);
},
{
field
:
"primaryId"
,
template
:
function
(
item
)
{
item
[
'primaryId'
]
=
$
(
"#inqu_status-0-primaryId"
).
val
();
return
$
(
"#inqu_status-0-primaryId"
).
val
();
}
return
item
.
invQty
;
}
},
{
field
:
"invUnitWeight"
,
template
:
function
(
item
)
{
if
(
item
.
invQty
&&
item
.
invUnitWeight
){
let
invWeight
=
item
.
invQty
*
item
.
invUnitWeight
;
//item['invWeight'] = invWeight.toString();
resultGrid
.
setCellValue
(
item
,
'invWeight'
,
invWeight
);
},
{
field
:
"whCode"
,
template
:
function
(
item
)
{
item
[
'whCode'
]
=
$
(
"#inqu_status-0-whCode"
).
val
();
return
$
(
"#inqu_status-0-whCode"
).
val
();
}
return
item
.
invUnitWeight
;
}
},{
field
:
"price"
,
template
:
function
(
item
)
{
if
(
item
.
invQty
&&
item
.
price
){
let
amount
=
item
.
invQty
*
item
.
price
;
//item['amount'] = amount.toString();
resultGrid
.
setCellValue
(
item
,
'amount'
,
amount
);
,
{
field
:
"companyCode"
,
template
:
function
(
item
)
{
item
[
'companyCode'
]
=
$
(
"#inqu_status-0-companyCode"
).
val
();
return
$
(
"#inqu_status-0-companyCode"
).
val
();
}
return
item
.
price
;
}
},
],
],
loadComplete
:
function
(
grid
)
{
// 此grid对象
grid
.
dataSource
.
bind
(
"change"
,
function
(
e
)
{
if
(
e
.
field
==
"inventCode"
)
{
var
tr
,
index
;
// 获取此model元素信息
var
item
=
e
.
items
[
0
];
for
(
let
i
=
0
;
i
<
inventAllGlobalData
.
length
;
i
++
)
{
if
(
inventAllGlobalData
[
i
][
'valueField'
]
===
item
.
inventCode
)
{
resultGrid
.
setCellValue
(
item
,
'partSpec'
,
inventAllGlobalData
[
i
][
'param2Field'
])
resultGrid
.
setCellValue
(
item
,
'inventType'
,
inventAllGlobalData
[
i
][
'param3Field'
])
resultGrid
.
setCellValue
(
item
,
'partLength'
,
inventAllGlobalData
[
i
][
'param4Field'
])
resultGrid
.
setCellValue
(
item
,
'partWidth'
,
inventAllGlobalData
[
i
][
'param5Field'
])
resultGrid
.
setCellValue
(
item
,
'partThick'
,
inventAllGlobalData
[
i
][
'param6Field'
])
resultGrid
.
setCellValue
(
item
,
'coefficient'
,
inventAllGlobalData
[
i
][
'param7Field'
])
resultGrid
.
setCellValue
(
item
,
'inventRecordId'
,
inventAllGlobalData
[
i
][
'param8Field'
])
calUnitWeight
(
item
,
inventAllGlobalData
[
i
][
'param4Field'
],
inventAllGlobalData
[
i
][
'param5Field'
],
inventAllGlobalData
[
i
][
'param6Field'
],
inventAllGlobalData
[
i
][
'param7Field'
]);
var
item
=
e
.
items
[
0
];
//数量计算
if
(
e
.
field
==
"invQty"
)
{
if
(
item
.
invQty
&&
item
.
invUnitWeight
){
let
totalWeight
=
item
.
invQty
*
item
.
invUnitWeight
;
resultGrid
.
setCellValue
(
item
,
'invWeight'
,
totalWeight
)
}
if
(
item
.
price
&&
item
.
invQty
){
let
totalAmount
=
item
.
price
*
item
.
invQty
;
resultGrid
.
setCellValue
(
item
,
'amount'
,
totalAmount
)
}
loadChange
(
grid
,
e
,
"price"
);
}
//单价计算
if
(
e
.
field
==
"price"
)
{
if
(
item
.
price
&&
item
.
invQty
){
let
totalAmount
=
item
.
price
*
item
.
invQty
;
resultGrid
.
setCellValue
(
item
,
'amount'
,
totalAmount
)
}
}
if
(
e
.
field
==
"inventType"
)
{
//选择后,先加载此方法,再加载属性中的方法,所以存货类型加载时,先修改存货编号下拉框的查询
let
inInfo
=
new
EiInfo
();
inInfo
.
set
(
"inqu_status-0-whCode"
,
item
.
whCode
);
inInfo
.
set
(
"inqu_status-0-companyCode"
,
item
.
companyCode
);
inInfo
.
set
(
"inqu_status-0-inventType"
,
item
.
inventType
);
EiCommunicator
.
send
(
"HGKC010"
,
"queryInventCodeBox"
,
inInfo
,
{
onSuccess
:
function
(
ei
)
{
inventRecordBoxBlocks
=
ei
.
getBlock
(
"invent_code_box_block_id"
).
getMappedRows
();
},
onFail
:
function
(
ei
)
{
}
},
{
async
:
false
});
resultGrid
.
setCellValue
(
item
,
'inventCode'
,
""
)
resultGrid
.
setCellValue
(
item
,
'inventName'
,
""
)
resultGrid
.
setCellValue
(
item
,
'partSpecId'
,
""
)
resultGrid
.
setCellValue
(
item
,
'partSpec'
,
""
)
resultGrid
.
setCellValue
(
item
,
'partLength'
,
""
)
resultGrid
.
setCellValue
(
item
,
'partWidth'
,
""
)
resultGrid
.
setCellValue
(
item
,
'partThick'
,
""
)
resultGrid
.
setCellValue
(
item
,
'invQty'
,
""
)
resultGrid
.
setCellValue
(
item
,
'invUnitWeight'
,
""
)
resultGrid
.
setCellValue
(
item
,
'invWeight'
,
""
)
loadChange
(
grid
,
e
,
"inventCode"
);
}
if
(
e
.
field
==
"inventCode"
)
{
for
(
let
i
=
0
;
i
<
inventRecordBoxBlocks
.
length
;
i
++
){
if
(
item
.
inventCode
===
inventRecordBoxBlocks
[
i
][
'valueField'
]){
resultGrid
.
setCellValue
(
item
,
'inventName'
,
inventRecordBoxBlocks
[
i
][
'textField'
])
}
}
resultGrid
.
setCellValue
(
item
,
'partSpecId'
,
""
)
resultGrid
.
setCellValue
(
item
,
'partSpec'
,
""
)
resultGrid
.
setCellValue
(
item
,
'partLength'
,
""
)
resultGrid
.
setCellValue
(
item
,
'partWidth'
,
""
)
resultGrid
.
setCellValue
(
item
,
'partThick'
,
""
)
resultGrid
.
setCellValue
(
item
,
'invQty'
,
""
)
resultGrid
.
setCellValue
(
item
,
'invUnitWeight'
,
""
)
resultGrid
.
setCellValue
(
item
,
'invWeight'
,
""
)
loadChange
(
grid
,
e
,
"partSpec"
);
}
if
(
e
.
field
==
"partSpec"
)
{
for
(
let
i
=
0
;
i
<
specBoxBlocks
.
length
;
i
++
){
if
(
item
.
partSpec
===
specBoxBlocks
[
i
][
'valueField'
]){
resultGrid
.
setCellValue
(
item
,
'partLength'
,
specBoxBlocks
[
i
][
'param1Field'
])
resultGrid
.
setCellValue
(
item
,
'partWidth'
,
specBoxBlocks
[
i
][
'param2Field'
])
resultGrid
.
setCellValue
(
item
,
'partThick'
,
specBoxBlocks
[
i
][
'param3Field'
])
resultGrid
.
setCellValue
(
item
,
'invQty'
,
specBoxBlocks
[
i
][
'param4Field'
])
resultGrid
.
setCellValue
(
item
,
'invUnitWeight'
,
specBoxBlocks
[
i
][
'param5Field'
])
resultGrid
.
setCellValue
(
item
,
'invWeight'
,
specBoxBlocks
[
i
][
'param6Field'
])
resultGrid
.
setCellValue
(
item
,
'partSpecId'
,
specBoxBlocks
[
i
][
'param7Field'
])
}
}
resultGrid
.
setCellValue
(
item
,
'price'
,
""
)
resultGrid
.
setCellValue
(
item
,
'amount'
,
""
)
loadChange
(
grid
,
e
,
"invQty"
);
}
});
},
...
...
@@ -107,12 +211,6 @@ $(function () {
}
}
// 查询
$
(
"#QUERY"
).
on
(
"click"
,
query
);
// 选择生产任务
$
(
"#SELECT_TASK"
).
on
(
"click"
,
selectTask
);
});
/**
...
...
@@ -134,68 +232,6 @@ $(window).load(function () {
*/
let
query
=
function
()
{
resultGrid
.
dataSource
.
page
(
1
);
initInvent
();
initSpec
();
}
/**
* 初始化存货
*/
let
initInvent
=
function
()
{
let
inInfo
=
new
EiInfo
();
EiCommunicator
.
send
(
"HGPZ005"
,
"queryInventCodeBox"
,
inInfo
,
{
onSuccess
:
function
(
ei
)
{
InventNameGlobalData
=
ei
.
getBlock
(
"invent_record_box_block_id"
).
getMappedRows
();
},
onFail
:
function
(
ei
)
{
}
},
{
async
:
false
});
}
/**
* 初始化规格
*/
let
initSpec
=
function
()
{
let
inInfo
=
new
EiInfo
();
//inInfo.set("inqu_status-0-inventTypes", [1, 2]);
inInfo
.
set
(
"inqu_status-0-isSplicingSymbol"
,
false
);
EiCommunicator
.
send
(
"HGPZ005"
,
"queryInventNameBox"
,
inInfo
,
{
onSuccess
:
function
(
ei
)
{
inventAllGlobalData
=
ei
.
getBlock
(
"invent_name_box_block_id"
).
getMappedRows
();
},
onFail
:
function
(
ei
)
{
}
},
{
async
:
false
});
}
/**
* 选择生产任务
*/
let
selectTask
=
function
()
{
JSColorbox
.
open
({
href
:
"HGKC003A?methodName=initLoad"
,
title
:
"<div style='text-align: center;'>生产任务查询</div>"
,
width
:
"80%"
,
height
:
"80%"
,
callbackName
:
selectTaskCallback
});
}
/**
* 挑选库存回调
*/
let
selectTaskCallback
=
function
()
{
// 刷新页面
query
();
// 关闭弹窗
JSColorbox
.
close
();
}
let
calUnitWeight
=
function
(
item
,
length
,
width
,
thick
,
coefficient
)
{
if
(
length
&&
width
&&
thick
&&
coefficient
){
let
amount
=
length
*
width
*
thick
*
coefficient
/
1000000
;
//item['amount'] = amount.toString();
resultGrid
.
setCellValue
(
item
,
'invUnitWeight'
,
amount
);
}
}
/**
...
...
@@ -211,7 +247,7 @@ let save = function () {
$
.
each
(
rows
,
function
(
index
,
item
)
{
let
inventType
=
item
.
get
(
"inventType"
);
let
inventCode
=
item
.
get
(
"inventCode"
);
let
inventRecordId
=
item
.
get
(
"inventRecordId"
);
let
inventRecordId
=
item
.
get
(
"inventRecordId"
);
if
(
isBlank
(
inventType
)){
message
(
"选中的第"
+
(
index
+
1
)
+
"行
\"
存货类型
\"
,不能为空!"
);
flag
=
false
;
...
...
src/main/webapp/HG/KC/HGKC006A.jsp
View file @
f2914810
...
...
@@ -7,6 +7,10 @@
<EF:EFPage
title=
"其他入库单明细"
>
<EF:EFRegion
id=
"inqu"
title=
"查询条件"
>
<EF:EFInput
ename=
"inqu_status-0-primaryId"
cname=
"领料单id"
colWidth=
"3"
type=
"hidden"
/>
<EF:EFInput
ename=
"inqu_status-0-whCode"
cname=
"仓库编码"
colWidth=
"3"
type=
"hidden"
/>
<EF:EFInput
ename=
"inqu_status-0-companyCode"
cname=
"仓库编码"
colWidth=
"3"
type=
"hidden"
/>
<EF:EFInput
ename=
"inqu_status-0-submitStatus"
cname=
"状态"
colWidth=
"3"
type=
"hidden"
/>
<div
class=
"row"
>
<
%
--
<
EF:EFSelect
cname=
"存货名称"
blockId=
"inqu_status"
ename=
"inventCode"
row=
"0"
colWidth=
"3"
filter=
"contains"
defultValue=
""
>
...
...
@@ -30,15 +34,19 @@
<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=
"primaryId"
cname=
"主表id"
hidden=
"true"
/>
<EF:EFColumn
ename=
"whCode"
cname=
"仓库编码"
hidden=
"true"
/>
<EF:EFColumn
ename=
"companyCode"
cname=
"公司编号"
hidden=
"true"
/>
<EF:EFComboColumn
ename=
"inventType"
cname=
"存货类型"
width=
"120"
align=
"center"
required=
"true"
blockName=
"invent_type_box_block_id"
textField=
"textField"
valueField=
"valueField"
columnTemplate=
"#=textField#"
itemTemplate=
"#=textField#"
enable
=
"false"
columnTemplate=
"#=textField#"
itemTemplate=
"#=textField#"
readonly
=
"false"
filter=
"contains"
>
</EF:EFComboColumn>
<EF:EFColumn
ename=
"inventCode"
cname=
"存货名称"
width=
"120"
align=
"center"
required=
"true"
readonly=
"true"
/>
<EF:EFColumn
ename=
"inventName"
cname=
"存货名称"
hidden=
"true"
/>
<EF:EFColumn
ename=
"partSpec"
cname=
"规格"
width=
"120"
align=
"center"
required=
"true"
enable=
"false"
/>
<EF:EFColumn
ename=
"inventRecordId"
cname=
"规格id"
width=
"120"
align=
"center"
required=
"true"
enable=
"false"
hidden=
"true"
/>
<EF:EFColumn
ename=
"partSpec"
cname=
"规格"
width=
"120"
align=
"center"
required=
"true"
enable=
"true"
/>
<EF:EFColumn
ename=
"partSpecId"
cname=
"规格id"
hidden=
"true"
/>
<EF:EFColumn
ename=
"inventRecordId"
cname=
"存货档案id"
width=
"120"
align=
"center"
required=
"true"
enable=
"false"
hidden=
"true"
/>
<EF:EFColumn
ename=
"partLength"
cname=
"长(MM)"
enable=
"false"
width=
"80"
align=
"right"
format=
"{0:N3}"
/>
<EF:EFColumn
ename=
"partWidth"
cname=
"宽(MM)"
enable=
"false"
width=
"80"
align=
"right"
format=
"{0:N3}"
/>
<EF:EFColumn
ename=
"partThick"
cname=
"厚(MM)"
enable=
"false"
width=
"80"
align=
"right"
format=
"{0:N3}"
/>
...
...
@@ -46,7 +54,8 @@
<EF:EFColumn
ename=
"invQty"
cname=
"数量"
width=
"120"
align=
"right"
format=
"{0:N0}"
defaultValue=
"0"
data-regex=
"/^-?[0-9]{1,17}([.][0-9]{1,3})?$/"
data-errorprompt=
"请输入数字,该值最大可设置17位整数和3位小数!"
/>
data-errorprompt=
"请输入数字,该值最大可设置17位整数和3位小数!"
required=
"true"
/>
<EF:EFColumn
ename=
"invUnitWeight"
cname=
"单重"
width=
"120"
align=
"right"
format=
"{0:N3}"
defaultValue=
"0"
data-regex=
"/^-?[0-9]{1,17}([.][0-9]{1,3})?$/"
...
...
@@ -57,7 +66,8 @@
<EF:EFColumn
ename=
"price"
cname=
"单价"
width=
"120"
align=
"right"
format=
"{0:N3}"
defaultValue=
"0"
data-regex=
"/^-?[0-9]{1,17}([.][0-9]{1,3})?$/"
data-errorprompt=
"请输入数字,该值最大可设置17位整数和3位小数!"
/>
data-errorprompt=
"请输入数字,该值最大可设置17位整数和3位小数!"
required=
"true"
/>
<EF:EFColumn
ename=
"amount"
cname=
"金额"
width=
"120"
align=
"right"
enable=
"false"
format=
"{0:N3}"
/>
</EF:EFGrid>
</EF:EFRegion>
...
...
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