Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
jinli gu
JSH ERP
Commits
b08d349b
Commit
b08d349b
authored
Jan 29, 2019
by
cjl
Browse files
添加出库时开启序列号的商品强制附加使用序列号
parent
b55e9d15
Changes
31
Show whitespace changes
Inline
Side-by-side
src/main/java/com/jsh/erp/datasource/mappers/SerialNumberMapperEx.java
View file @
b08d349b
package
com.jsh.erp.datasource.mappers
;
import
com.jsh.erp.datasource.entities.SerialNumber
;
import
com.jsh.erp.datasource.entities.SerialNumberEx
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.Date
;
import
java.util.List
;
/**
...
...
@@ -42,4 +42,19 @@ public interface SerialNumberMapperEx {
* 未删除为卖出的视为有效
* */
int
findSerialNumberByMaterialId
(
@Param
(
"materialId"
)
Long
materialId
);
/**
* 查询符合条件的序列号数量
* */
int
countSerialNumberByMaterialIdAndDepotheadId
(
@Param
(
"materialId"
)
Long
materialId
,
@Param
(
"depotheadId"
)
Long
depotheadId
,
@Param
(
"isSell"
)
String
isSell
);
/**
* 卖出: update jsh_serial_number set is_Sell='1' ,depothead_Id='depotheadId' where 1=1 and material_Id='materialId'
* and is_Sell !='1' and delete_Flag !='1' {limit 0,count}
* */
int
sellSerialNumber
(
@Param
(
"materialId"
)
Long
materialId
,
@Param
(
"depotheadId"
)
Long
depotheadId
,
@Param
(
"count"
)
Integer
count
,
@Param
(
"updateTime"
)
Date
updateTime
,
@Param
(
"updater"
)
Long
updater
);
/**
* 赎回:update jsh_serial_number set is_Sell='0' where 1=1 and material_Id='materialId'
* and depothead_Id='depotheadId' and is_Sell !='0' and delete_Flag !='1' {limit 0,count}
* */
int
cancelSerialNumber
(
@Param
(
"materialId"
)
Long
materialId
,
@Param
(
"depotheadId"
)
Long
depotheadId
,
@Param
(
"count"
)
Integer
count
,
@Param
(
"updateTime"
)
Date
updateTime
,
@Param
(
"updater"
)
Long
updater
);
}
src/main/java/com/jsh/erp/service/depotHead/DepotHeadService.java
View file @
b08d349b
...
...
@@ -2,14 +2,22 @@ package com.jsh.erp.service.depotHead;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.constants.BusinessConstants
;
import
com.jsh.erp.datasource.entities.DepotHead
;
import
com.jsh.erp.datasource.entities.DepotHeadExample
;
import
com.jsh.erp.datasource.entities.DepotItem
;
import
com.jsh.erp.datasource.entities.User
;
import
com.jsh.erp.datasource.mappers.DepotHeadMapper
;
import
com.jsh.erp.datasource.mappers.DepotHeadMapperEx
;
import
com.jsh.erp.datasource.mappers.DepotItemMapperEx
;
import
com.jsh.erp.datasource.vo.DepotHeadVo4InDetail
;
import
com.jsh.erp.datasource.vo.DepotHeadVo4InOutMCount
;
import
com.jsh.erp.datasource.vo.DepotHeadVo4List
;
import
com.jsh.erp.datasource.vo.DepotHeadVo4StatementAccount
;
import
com.jsh.erp.service.depotItem.DepotItemService
;
import
com.jsh.erp.service.serialNumber.SerialNumberService
;
import
com.jsh.erp.service.supplier.SupplierService
;
import
com.jsh.erp.service.user.UserService
;
import
com.jsh.erp.utils.StringUtil
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
...
...
@@ -33,6 +41,19 @@ public class DepotHeadService {
@Resource
private
DepotHeadMapper
depotHeadMapper
;
@Resource
private
DepotHeadMapperEx
depotHeadMapperEx
;
@Resource
private
UserService
userService
;
@Resource
DepotItemService
depotItemService
;
@Resource
private
SupplierService
supplierService
;
@Resource
private
SerialNumberService
serialNumberService
;
@Resource
DepotItemMapperEx
depotItemMapperEx
;
public
DepotHead
getDepotHead
(
long
id
)
{
return
depotHeadMapper
.
selectByPrimaryKey
(
id
);
...
...
@@ -45,7 +66,7 @@ public class DepotHeadService {
public
List
<
DepotHeadVo4List
>
select
(
String
type
,
String
subType
,
String
number
,
String
beginTime
,
String
endTime
,
String
dhIds
,
int
offset
,
int
rows
)
{
List
<
DepotHeadVo4List
>
resList
=
new
ArrayList
<
DepotHeadVo4List
>();
List
<
DepotHeadVo4List
>
list
=
depotHeadMapper
.
selectByConditionDepotHead
(
type
,
subType
,
number
,
beginTime
,
endTime
,
dhIds
,
offset
,
rows
);
List
<
DepotHeadVo4List
>
list
=
depotHeadMapper
Ex
.
selectByConditionDepotHead
(
type
,
subType
,
number
,
beginTime
,
endTime
,
dhIds
,
offset
,
rows
);
if
(
null
!=
list
)
{
for
(
DepotHeadVo4List
dh
:
list
)
{
if
(
dh
.
getOthermoneylist
()
!=
null
)
{
...
...
@@ -73,7 +94,7 @@ public class DepotHeadService {
public
int
countDepotHead
(
String
type
,
String
subType
,
String
number
,
String
beginTime
,
String
endTime
,
String
dhIds
)
{
return
depotHeadMapper
.
countsByDepotHead
(
type
,
subType
,
number
,
beginTime
,
endTime
,
dhIds
);
return
depotHeadMapper
Ex
.
countsByDepotHead
(
type
,
subType
,
number
,
beginTime
,
endTime
,
dhIds
);
}
@Transactional
(
value
=
"transactionManager"
,
rollbackFor
=
Exception
.
class
)
...
...
@@ -169,11 +190,11 @@ public class DepotHeadService {
}
public
Long
getMaxId
()
{
return
depotHeadMapper
.
getMaxId
();
return
depotHeadMapper
Ex
.
getMaxId
();
}
public
String
findMaterialsListByHeaderId
(
Long
id
)
{
String
allReturn
=
depotHeadMapper
.
findMaterialsListByHeaderId
(
id
);
String
allReturn
=
depotHeadMapper
Ex
.
findMaterialsListByHeaderId
(
id
);
return
allReturn
;
}
...
...
@@ -194,27 +215,27 @@ public class DepotHeadService {
}
public
List
<
DepotHeadVo4InDetail
>
findByAll
(
String
beginTime
,
String
endTime
,
String
type
,
Integer
pid
,
String
dids
,
Integer
oId
,
Integer
offset
,
Integer
rows
)
{
return
depotHeadMapper
.
findByAll
(
beginTime
,
endTime
,
type
,
pid
,
dids
,
oId
,
offset
,
rows
);
return
depotHeadMapper
Ex
.
findByAll
(
beginTime
,
endTime
,
type
,
pid
,
dids
,
oId
,
offset
,
rows
);
}
public
int
findByAllCount
(
String
beginTime
,
String
endTime
,
String
type
,
Integer
pid
,
String
dids
,
Integer
oId
)
{
return
depotHeadMapper
.
findByAllCount
(
beginTime
,
endTime
,
type
,
pid
,
dids
,
oId
);
return
depotHeadMapper
Ex
.
findByAllCount
(
beginTime
,
endTime
,
type
,
pid
,
dids
,
oId
);
}
public
List
<
DepotHeadVo4InOutMCount
>
findInOutMaterialCount
(
String
beginTime
,
String
endTime
,
String
type
,
Integer
pid
,
String
dids
,
Integer
oId
,
Integer
offset
,
Integer
rows
)
{
return
depotHeadMapper
.
findInOutMaterialCount
(
beginTime
,
endTime
,
type
,
pid
,
dids
,
oId
,
offset
,
rows
);
return
depotHeadMapper
Ex
.
findInOutMaterialCount
(
beginTime
,
endTime
,
type
,
pid
,
dids
,
oId
,
offset
,
rows
);
}
public
int
findInOutMaterialCountTotal
(
String
beginTime
,
String
endTime
,
String
type
,
Integer
pid
,
String
dids
,
Integer
oId
)
{
return
depotHeadMapper
.
findInOutMaterialCountTotal
(
beginTime
,
endTime
,
type
,
pid
,
dids
,
oId
);
return
depotHeadMapper
Ex
.
findInOutMaterialCountTotal
(
beginTime
,
endTime
,
type
,
pid
,
dids
,
oId
);
}
public
List
<
DepotHeadVo4StatementAccount
>
findStatementAccount
(
String
beginTime
,
String
endTime
,
Integer
organId
,
String
supType
,
Integer
offset
,
Integer
rows
)
{
return
depotHeadMapper
.
findStatementAccount
(
beginTime
,
endTime
,
organId
,
supType
,
offset
,
rows
);
return
depotHeadMapper
Ex
.
findStatementAccount
(
beginTime
,
endTime
,
organId
,
supType
,
offset
,
rows
);
}
public
int
findStatementAccountCount
(
String
beginTime
,
String
endTime
,
Integer
organId
,
String
supType
)
{
return
depotHeadMapper
.
findStatementAccountCount
(
beginTime
,
endTime
,
organId
,
supType
);
return
depotHeadMapper
Ex
.
findStatementAccountCount
(
beginTime
,
endTime
,
organId
,
supType
);
}
public
BigDecimal
findAllMoney
(
Integer
supplierId
,
String
type
,
String
subType
,
String
mode
,
String
endTime
)
{
...
...
@@ -224,12 +245,12 @@ public class DepotHeadService {
}
else
if
(
mode
.
equals
(
"合计"
))
{
modeName
=
"DiscountLastMoney"
;
}
return
depotHeadMapper
.
findAllMoney
(
supplierId
,
type
,
subType
,
modeName
,
endTime
);
return
depotHeadMapper
Ex
.
findAllMoney
(
supplierId
,
type
,
subType
,
modeName
,
endTime
);
}
public
List
<
DepotHeadVo4List
>
getDetailByNumber
(
String
number
)
{
List
<
DepotHeadVo4List
>
resList
=
new
ArrayList
<
DepotHeadVo4List
>();
List
<
DepotHeadVo4List
>
list
=
depotHeadMapper
.
getDetailByNumber
(
number
);
List
<
DepotHeadVo4List
>
list
=
depotHeadMapper
Ex
.
getDetailByNumber
(
number
);
if
(
null
!=
list
)
{
for
(
DepotHeadVo4List
dh
:
list
)
{
if
(
dh
.
getOthermoneylist
()
!=
null
)
{
...
...
@@ -254,4 +275,115 @@ public class DepotHeadService {
return
resList
;
}
/**
* create by: cjl
* description:
* 新增单据主表及单据子表信息
* create time: 2019/1/25 14:36
* @Param: beanJson
* @Param: inserted
* @Param: deleted
* @Param: updated
* @return java.lang.String
*/
@Transactional
(
value
=
"transactionManager"
,
rollbackFor
=
Exception
.
class
)
public
void
addDepotHeadAndDetail
(
String
beanJson
,
String
inserted
,
String
deleted
,
String
updated
)
throws
Exception
{
/**处理单据主表数据*/
DepotHead
depotHead
=
JSONObject
.
parseObject
(
beanJson
,
DepotHead
.
class
);
//判断用户是否已经登录过,登录过不再处理
User
userInfo
=
userService
.
getCurrentUser
();
depotHead
.
setOperpersonname
(
userInfo
==
null
?
null
:
userInfo
.
getUsername
());
depotHead
.
setCreatetime
(
new
Timestamp
(
System
.
currentTimeMillis
()));
depotHead
.
setStatus
(
false
);
depotHeadMapperEx
.
adddepotHead
(
depotHead
);
/**入库和出库处理预付款信息*/
if
(
BusinessConstants
.
PAY_TYPE_PREPAID
.
equals
(
depotHead
.
getPaytype
())){
if
(
depotHead
.
getOrganid
()!=
null
)
{
supplierService
.
updateAdvanceIn
(
depotHead
.
getOrganid
(),
BigDecimal
.
ZERO
.
subtract
(
depotHead
.
getTotalprice
()));
}
}
/**入库和出库处理单据子表信息*/
depotItemService
.
saveDetials
(
inserted
,
deleted
,
updated
,
depotHead
.
getId
());
}
/**
* create by: cjl
* description:
* 更新单据主表及单据子表信息
* create time: 2019/1/28 14:47
* @Param: id
* @Param: beanJson
* @Param: inserted
* @Param: deleted
* @Param: updated
* @Param: preTotalPrice
* @return java.lang.Object
*/
@Transactional
(
value
=
"transactionManager"
,
rollbackFor
=
Exception
.
class
)
public
void
updateDepotHeadAndDetail
(
Long
id
,
String
beanJson
,
String
inserted
,
String
deleted
,
String
updated
,
BigDecimal
preTotalPrice
)
throws
Exception
{
/**更新单据主表信息*/
DepotHead
depotHead
=
JSONObject
.
parseObject
(
beanJson
,
DepotHead
.
class
);
//判断用户是否已经登录过,登录过不再处理
depotHead
.
setId
(
id
);
User
userInfo
=
userService
.
getCurrentUser
();
depotHead
.
setOperpersonname
(
userInfo
==
null
?
null
:
userInfo
.
getUsername
());
depotHead
.
setOpertime
(
new
Timestamp
(
System
.
currentTimeMillis
()));
depotHeadMapperEx
.
updatedepotHead
(
depotHead
);
/**入库和出库处理预付款信息*/
if
(
BusinessConstants
.
PAY_TYPE_PREPAID
.
equals
(
depotHead
.
getPaytype
())){
if
(
depotHead
.
getOrganid
()!=
null
){
supplierService
.
updateAdvanceIn
(
depotHead
.
getOrganid
(),
BigDecimal
.
ZERO
.
subtract
(
depotHead
.
getTotalprice
().
subtract
(
preTotalPrice
)));
}
}
/**入库和出库处理单据子表信息*/
depotItemService
.
saveDetials
(
inserted
,
deleted
,
updated
,
depotHead
.
getId
());
}
/**
* create by: cjl
* description:
* 删除单据主表及子表信息
* create time: 2019/1/28 17:29
* @Param: id
* @return java.lang.Object
*/
@Transactional
(
value
=
"transactionManager"
,
rollbackFor
=
Exception
.
class
)
public
void
deleteDepotHeadAndDetail
(
Long
id
)
throws
Exception
{
//查询单据主表信息
DepotHead
depotHead
=
getDepotHead
(
id
);
User
userInfo
=
userService
.
getCurrentUser
();
//删除出库数据回收序列号
if
(
BusinessConstants
.
DEPOTHEAD_TYPE_OUT
.
equals
(
depotHead
.
getType
())
&&!
BusinessConstants
.
SUB_TYPE_TRANSFER
.
equals
(
depotHead
.
getSubtype
())){
//查询单据子表列表
List
<
DepotItem
>
depotItemList
=
depotItemMapperEx
.
findDepotItemListBydepotheadId
(
id
,
BusinessConstants
.
ENABLE_SERIAL_NUMBER_ENABLED
);
/**回收序列号*/
if
(
depotItemList
!=
null
&&
depotItemList
.
size
()>
0
){
for
(
DepotItem
depotItem:
depotItemList
){
serialNumberService
.
cancelSerialNumber
(
depotItem
.
getMaterialid
(),
depotItem
.
getHeaderid
(),
depotItem
.
getOpernumber
().
intValue
(),
userInfo
);
}
}
}
/**删除单据子表数据*/
depotItemMapperEx
.
deleteDepotItemByDepotHeadIds
(
new
Long
[]{
id
});
/**删除单据主表信息*/
deleteDepotHead
(
id
);
}
/**
* create by: cjl
* description:
* 批量删除单据主表及子表信息
* create time: 2019/1/28 17:29
* @Param: id
* @return java.lang.Object
*/
@Transactional
(
value
=
"transactionManager"
,
rollbackFor
=
Exception
.
class
)
public
void
batchDeleteDepotHeadAndDetail
(
String
ids
)
throws
Exception
{
if
(
StringUtil
.
isNotEmpty
(
ids
)){
String
[]
headIds
=
ids
.
split
(
","
);
for
(
int
i
=
0
;
i
<
headIds
.
length
;
i
++){
deleteDepotHeadAndDetail
(
new
Long
(
headIds
[
i
]));
}
}
}
}
src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java
View file @
b08d349b
...
...
@@ -2,9 +2,15 @@ package com.jsh.erp.service.depotItem;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.constants.BusinessConstants
;
import
com.jsh.erp.datasource.entities.*
;
import
com.jsh.erp.datasource.mappers.DepotHeadMapper
;
import
com.jsh.erp.datasource.mappers.DepotItemMapper
;
import
com.jsh.erp.datasource.mappers.DepotItemMapperEx
;
import
com.jsh.erp.datasource.mappers.SerialNumberMapperEx
;
import
com.jsh.erp.service.material.MaterialService
;
import
com.jsh.erp.service.serialNumber.SerialNumberService
;
import
com.jsh.erp.service.user.UserService
;
import
com.jsh.erp.utils.ErpInfo
;
import
com.jsh.erp.utils.QueryUtils
;
import
com.jsh.erp.utils.StringUtil
;
...
...
@@ -17,6 +23,7 @@ import org.springframework.transaction.annotation.Transactional;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -34,7 +41,17 @@ public class DepotItemService {
@Resource
private
DepotItemMapper
depotItemMapper
;
@Resource
private
DepotItemMapperEx
depotItemMapperEx
;
@Resource
private
MaterialService
materialService
;
@Resource
SerialNumberMapperEx
serialNumberMapperEx
;
@Resource
private
DepotHeadMapper
depotHeadMapper
;
@Resource
SerialNumberService
serialNumberService
;
@Resource
private
UserService
userService
;
public
DepotItem
getDepotItem
(
long
id
)
{
return
depotItemMapper
.
selectByPrimaryKey
(
id
);
...
...
@@ -46,11 +63,11 @@ public class DepotItemService {
}
public
List
<
DepotItem
>
select
(
String
name
,
Integer
type
,
String
remark
,
int
offset
,
int
rows
)
{
return
depotItemMapper
.
selectByConditionDepotItem
(
name
,
type
,
remark
,
offset
,
rows
);
return
depotItemMapper
Ex
.
selectByConditionDepotItem
(
name
,
type
,
remark
,
offset
,
rows
);
}
public
int
countDepotItem
(
String
name
,
Integer
type
,
String
remark
)
{
return
depotItemMapper
.
countsByDepotItem
(
name
,
type
,
remark
);
return
depotItemMapper
Ex
.
countsByDepotItem
(
name
,
type
,
remark
);
}
@Transactional
(
value
=
"transactionManager"
,
rollbackFor
=
Exception
.
class
)
...
...
@@ -87,7 +104,7 @@ public class DepotItemService {
}
public
List
<
DepotItemVo4HeaderId
>
getHeaderIdByMaterial
(
String
materialParam
,
String
depotIds
)
{
return
depotItemMapper
.
getHeaderIdByMaterial
(
materialParam
,
depotIds
);
return
depotItemMapper
Ex
.
getHeaderIdByMaterial
(
materialParam
,
depotIds
);
}
public
List
<
DepotItemVo4DetailByTypeAndMId
>
findDetailByTypeAndMaterialIdList
(
Map
<
String
,
String
>
map
)
{
...
...
@@ -96,7 +113,7 @@ public class DepotItemService {
if
(!
StringUtil
.
isEmpty
(
mIdStr
))
{
mId
=
Long
.
parseLong
(
mIdStr
);
}
return
depotItemMapper
.
findDetailByTypeAndMaterialIdList
(
mId
,
QueryUtils
.
offset
(
map
),
QueryUtils
.
rows
(
map
));
return
depotItemMapper
Ex
.
findDetailByTypeAndMaterialIdList
(
mId
,
QueryUtils
.
offset
(
map
),
QueryUtils
.
rows
(
map
));
}
public
int
findDetailByTypeAndMaterialIdCounts
(
Map
<
String
,
String
>
map
)
{
...
...
@@ -105,7 +122,7 @@ public class DepotItemService {
if
(!
StringUtil
.
isEmpty
(
mIdStr
))
{
mId
=
Long
.
parseLong
(
mIdStr
);
}
return
depotItemMapper
.
findDetailByTypeAndMaterialIdCounts
(
mId
);
return
depotItemMapper
Ex
.
findDetailByTypeAndMaterialIdCounts
(
mId
);
}
public
List
<
DepotItemVo4Material
>
findStockNumByMaterialIdList
(
Map
<
String
,
String
>
map
)
{
...
...
@@ -115,7 +132,7 @@ public class DepotItemService {
mId
=
Long
.
parseLong
(
mIdStr
);
}
String
monthTime
=
map
.
get
(
"monthTime"
);
return
depotItemMapper
.
findStockNumByMaterialIdList
(
mId
,
monthTime
,
QueryUtils
.
offset
(
map
),
QueryUtils
.
rows
(
map
));
return
depotItemMapper
Ex
.
findStockNumByMaterialIdList
(
mId
,
monthTime
,
QueryUtils
.
offset
(
map
),
QueryUtils
.
rows
(
map
));
}
public
int
findStockNumByMaterialIdCounts
(
Map
<
String
,
String
>
map
)
{
...
...
@@ -125,7 +142,7 @@ public class DepotItemService {
mId
=
Long
.
parseLong
(
mIdStr
);
}
String
monthTime
=
map
.
get
(
"monthTime"
);
return
depotItemMapper
.
findStockNumByMaterialIdCounts
(
mId
,
monthTime
);
return
depotItemMapper
Ex
.
findStockNumByMaterialIdCounts
(
mId
,
monthTime
);
}
@Transactional
(
value
=
"transactionManager"
,
rollbackFor
=
Exception
.
class
)
...
...
@@ -140,36 +157,36 @@ public class DepotItemService {
public
int
findByTypeAndMaterialId
(
String
type
,
Long
mId
)
{
if
(
type
.
equals
(
TYPE
))
{
return
depotItemMapper
.
findByTypeAndMaterialIdIn
(
mId
);
return
depotItemMapper
Ex
.
findByTypeAndMaterialIdIn
(
mId
);
}
else
{
return
depotItemMapper
.
findByTypeAndMaterialIdOut
(
mId
);
return
depotItemMapper
Ex
.
findByTypeAndMaterialIdOut
(
mId
);
}
}
public
List
<
DepotItemVo4WithInfoEx
>
getDetailList
(
Long
headerId
)
{
return
depotItemMapper
.
getDetailList
(
headerId
);
return
depotItemMapper
Ex
.
getDetailList
(
headerId
);
}
public
List
<
DepotItemVo4WithInfoEx
>
findByAll
(
String
headIds
,
String
materialIds
,
Integer
offset
,
Integer
rows
)
{
return
depotItemMapper
.
findByAll
(
headIds
,
materialIds
,
offset
,
rows
);
return
depotItemMapper
Ex
.
findByAll
(
headIds
,
materialIds
,
offset
,
rows
);
}
public
int
findByAllCount
(
String
headIds
,
String
materialIds
)
{
return
depotItemMapper
.
findByAllCount
(
headIds
,
materialIds
);
return
depotItemMapper
Ex
.
findByAllCount
(
headIds
,
materialIds
);
}
public
BigDecimal
findByType
(
String
type
,
Integer
ProjectId
,
Long
MId
,
String
MonthTime
,
Boolean
isPrev
)
{
if
(
TYPE
.
equals
(
type
))
{
if
(
isPrev
)
{
return
depotItemMapper
.
findByTypeInIsPrev
(
ProjectId
,
MId
,
MonthTime
);
return
depotItemMapper
Ex
.
findByTypeInIsPrev
(
ProjectId
,
MId
,
MonthTime
);
}
else
{
return
depotItemMapper
.
findByTypeInIsNotPrev
(
ProjectId
,
MId
,
MonthTime
);
return
depotItemMapper
Ex
.
findByTypeInIsNotPrev
(
ProjectId
,
MId
,
MonthTime
);
}
}
else
{
if
(
isPrev
)
{
return
depotItemMapper
.
findByTypeOutIsPrev
(
ProjectId
,
MId
,
MonthTime
);
return
depotItemMapper
Ex
.
findByTypeOutIsPrev
(
ProjectId
,
MId
,
MonthTime
);
}
else
{
return
depotItemMapper
.
findByTypeOutIsNotPrev
(
ProjectId
,
MId
,
MonthTime
);
return
depotItemMapper
Ex
.
findByTypeOutIsNotPrev
(
ProjectId
,
MId
,
MonthTime
);
}
}
}
...
...
@@ -177,41 +194,64 @@ public class DepotItemService {
public
BigDecimal
findPriceByType
(
String
type
,
Integer
ProjectId
,
Long
MId
,
String
MonthTime
,
Boolean
isPrev
)
{
if
(
TYPE
.
equals
(
type
))
{
if
(
isPrev
)
{
return
depotItemMapper
.
findPriceByTypeInIsPrev
(
ProjectId
,
MId
,
MonthTime
);
return
depotItemMapper
Ex
.
findPriceByTypeInIsPrev
(
ProjectId
,
MId
,
MonthTime
);
}
else
{
return
depotItemMapper
.
findPriceByTypeInIsNotPrev
(
ProjectId
,
MId
,
MonthTime
);
return
depotItemMapper
Ex
.
findPriceByTypeInIsNotPrev
(
ProjectId
,
MId
,
MonthTime
);
}
}
else
{
if
(
isPrev
)
{
return
depotItemMapper
.
findPriceByTypeOutIsPrev
(
ProjectId
,
MId
,
MonthTime
);
return
depotItemMapper
Ex
.
findPriceByTypeOutIsPrev
(
ProjectId
,
MId
,
MonthTime
);
}
else
{
return
depotItemMapper
.
findPriceByTypeOutIsNotPrev
(
ProjectId
,
MId
,
MonthTime
);
return
depotItemMapper
Ex
.
findPriceByTypeOutIsNotPrev
(
ProjectId
,
MId
,
MonthTime
);
}
}
}
public
BigDecimal
buyOrSale
(
String
type
,
String
subType
,
Long
MId
,
String
MonthTime
,
String
sumType
)
{
if
(
SUM_TYPE
.
equals
(
sumType
))
{
return
depotItemMapper
.
buyOrSaleNumber
(
type
,
subType
,
MId
,
MonthTime
,
sumType
);
return
depotItemMapper
Ex
.
buyOrSaleNumber
(
type
,
subType
,
MId
,
MonthTime
,
sumType
);
}
else
{
return
depotItemMapper
.
buyOrSalePrice
(
type
,
subType
,
MId
,
MonthTime
,
sumType
);
return
depotItemMapper
Ex
.
buyOrSalePrice
(
type
,
subType
,
MId
,
MonthTime
,
sumType
);
}
}
public
BigDecimal
findGiftByType
(
String
subType
,
Integer
ProjectId
,
Long
MId
,
String
type
)
{
if
(
IN
.
equals
(
type
))
{
return
depotItemMapper
.
findGiftByTypeIn
(
subType
,
ProjectId
,
MId
);
return
depotItemMapper
Ex
.
findGiftByTypeIn
(
subType
,
ProjectId
,
MId
);
}
else
{
return
depotItemMapper
.
findGiftByTypeOut
(
subType
,
ProjectId
,
MId
);
return
depotItemMapper
Ex
.
findGiftByTypeOut
(
subType
,
ProjectId
,
MId
);
}
}
@Transactional
(
value
=
"transactionManager"
,
rollbackFor
=
Exception
.
class
)
public
String
saveDetials
(
String
inserted
,
String
deleted
,
String
updated
,
Long
headerId
)
throws
DataAccessException
{
public
String
saveDetials
(
String
inserted
,
String
deleted
,
String
updated
,
Long
headerId
)
throws
Exception
{
//查询单据主表信息
DepotHead
depotHead
=
depotHeadMapper
.
selectByPrimaryKey
(
headerId
);
//获得当前操作人
User
userInfo
=
userService
.
getCurrentUser
();
//转为json
JSONArray
insertedJson
=
JSONArray
.
parseArray
(
inserted
);
JSONArray
deletedJson
=
JSONArray
.
parseArray
(
deleted
);
JSONArray
updatedJson
=
JSONArray
.
parseArray
(
updated
);
/**
* 2019-01-28优先处理删除的
* 删除的可以继续卖,删除的需要将使用的序列号回收
* 插入的需要判断当前货源是否充足
* 更新的需要判断货源是否充足
* */
if
(
null
!=
deletedJson
)
{
for
(
int
i
=
0
;
i
<
deletedJson
.
size
();
i
++)
{
//首先回收序列号,如果是调拨,不用处理序列号
JSONObject
tempDeletedJson
=
JSONObject
.
parseObject
(
deletedJson
.
getString
(
i
));
if
(
BusinessConstants
.
DEPOTHEAD_TYPE_OUT
.
equals
(
depotHead
.
getType
())
&&!
BusinessConstants
.
SUB_TYPE_TRANSFER
.
equals
(
depotHead
.
getSubtype
())){
DepotItem
depotItem
=
getDepotItem
(
tempDeletedJson
.
getLong
(
"Id"
));
serialNumberMapperEx
.
cancelSerialNumber
(
depotItem
.
getMaterialid
(),
depotItem
.
getHeaderid
(),
depotItem
.
getOpernumber
().
intValue
(),
new
Date
(),
userInfo
==
null
?
null
:
userInfo
.
getId
());
}
this
.
deleteDepotItem
(
tempDeletedJson
.
getLong
(
"Id"
));
}
}
if
(
null
!=
insertedJson
)
{
for
(
int
i
=
0
;
i
<
insertedJson
.
size
();
i
++)
{
DepotItem
depotItem
=
new
DepotItem
();
...
...
@@ -289,18 +329,25 @@ public class DepotItemService {
depotItem
.
setMtype
(
tempInsertedJson
.
getString
(
"MType"
));
}
this
.
insertDepotItemWithObj
(
depotItem
);
/**出库时处理序列号*/
if
(
BusinessConstants
.
DEPOTHEAD_TYPE_OUT
.
equals
(
depotHead
.
getType
())
&&!
BusinessConstants
.
SUB_TYPE_TRANSFER
.
equals
(
depotHead
.
getSubtype
())){
//查询单据子表中开启序列号的数据列表
serialNumberService
.
checkAndUpdateSerialNumber
(
depotItem
,
userInfo
);
}
}
if
(
null
!=
deletedJson
)
{
for
(
int
i
=
0
;
i
<
deletedJson
.
size
();
i
++)
{
JSONObject
tempDeletedJson
=
JSONObject
.
parseObject
(
deletedJson
.
getString
(
i
));
this
.
deleteDepotItem
(
tempDeletedJson
.
getLong
(
"Id"
));
}
}
if
(
null
!=
updatedJson
)
{
for
(
int
i
=
0
;
i
<
updatedJson
.
size
();
i
++)
{
JSONObject
tempUpdatedJson
=
JSONObject
.
parseObject
(
updatedJson
.
getString
(
i
));
DepotItem
depotItem
=
this
.
getDepotItem
(
tempUpdatedJson
.
getLong
(
"Id"
));
//首先回收序列号
if
(
BusinessConstants
.
DEPOTHEAD_TYPE_OUT
.
equals
(
depotHead
.
getType
())
&&!
BusinessConstants
.
SUB_TYPE_TRANSFER
.
equals
(
depotHead
.
getSubtype
()))
{
serialNumberMapperEx
.
cancelSerialNumber
(
depotItem
.
getMaterialid
(),
depotItem
.
getHeaderid
(),
depotItem
.
getOpernumber
().
intValue
(),
new
Date
(),
userInfo
==
null
?
null
:
userInfo
.
getId
());
}
depotItem
.
setId
(
tempUpdatedJson
.
getLong
(
"Id"
));
depotItem
.
setMaterialid
(
tempUpdatedJson
.
getLong
(
"MaterialId"
));
depotItem
.
setMunit
(
tempUpdatedJson
.
getString
(
"Unit"
));
...
...
@@ -362,6 +409,12 @@ public class DepotItemService {
depotItem
.
setOtherfield5
(
tempUpdatedJson
.
getString
(
"OtherField5"
));
depotItem
.
setMtype
(
tempUpdatedJson
.
getString
(
"MType"
));
this
.
updateDepotItemWithObj
(
depotItem
);
/**出库时处理序列号*/
if
(
BusinessConstants
.
DEPOTHEAD_TYPE_OUT
.
equals
(
depotHead
.
getType
())
&&!
BusinessConstants
.
SUB_TYPE_TRANSFER
.
equals
(
depotHead
.
getSubtype
())){
//查询单据子表中开启序列号的数据列表
serialNumberService
.
checkAndUpdateSerialNumber
(
depotItem
,
userInfo
);
}
}
}
return
null
;
...
...
@@ -386,4 +439,5 @@ public class DepotItemService {
}
return
unitName
;
}
}
src/main/java/com/jsh/erp/service/serialNumber/SerialNumberService.java
View file @
b08d349b
...
...
@@ -4,9 +4,7 @@ import com.alibaba.fastjson.JSONObject;
import
com.jsh.erp.constants.BusinessConstants
;
import
com.jsh.erp.constants.ExceptionConstants
;
import
com.jsh.erp.datasource.entities.*
;
import
com.jsh.erp.datasource.mappers.MaterialMapperEx
;
import
com.jsh.erp.datasource.mappers.SerialNumberMapper
;
import
com.jsh.erp.datasource.mappers.SerialNumberMapperEx
;
import
com.jsh.erp.datasource.mappers.*
;
import
com.jsh.erp.exception.BusinessRunTimeException
;
import
com.jsh.erp.service.depotItem.DepotItemService
;
import
com.jsh.erp.service.material.MaterialService
;
...
...
@@ -39,9 +37,13 @@ public class SerialNumberService {
@Resource
private
MaterialMapperEx
materialMapperEx
;
@Resource
private
MaterialMapper
materialMapper
;
@Resource
private
DepotItemService
depotItemService
;
@Resource
private
UserService
userService
;
@Resource
private
DepotItemMapperEx
depotItemMapperEx
;
public
SerialNumber
getSerialNumber
(
long
id
)
{
...
...
@@ -173,9 +175,9 @@ public class SerialNumberService {
serialNumberEx
.
setMaterialId
(
getSerialNumberMaterialIdByMaterialName
(
serialNumberEx
.
getMaterialName
()));
}
//删除标记,默认未删除
serialNumberEx
.
setDeleteFlag
(
false
);
serialNumberEx
.
setDeleteFlag
(
BusinessConstants
.
DELETE_FLAG_EXISTS
);
//已卖出,默认未否
serialNumberEx
.
setIsSell
(
false
);
serialNumberEx
.
setIsSell
(
BusinessConstants
.
IS_SELL_HOLD
);
Date
date
=
new
Date
();
serialNumberEx
.
setCreateTime
(
date
);
serialNumberEx
.
setUpdateTime
(
date
);
...
...
@@ -231,7 +233,7 @@ public class SerialNumberService {
}
//获得唯一商品
if
(
BusinessConstants
.
MATERIAL_NOT_
ENABLE_SERIAL_NUMBER
==
mlist
.
get
(
0
).
getEnableSerialNumber
()){
if
(
BusinessConstants
.
ENABLE_SERIAL_NUMBER
_NOT_ENABLED
.
equals
(
mlist
.
get
(
0
).
getEnableSerialNumber
())
)
{
//商品未开启序列号
throw
new
BusinessRunTimeException
(
ExceptionConstants
.
MATERIAL_NOT_ENABLE_SERIAL_NUMBER_CODE
,
ExceptionConstants
.
MATERIAL_NOT_ENABLE_SERIAL_NUMBER_MSG
);
...
...
@@ -254,4 +256,66 @@ public class SerialNumberService {
return
null
;
}
/**
* create by: cjl
* description:
* 出库时判断序列号库存是否足够,
* 同时将对应的序列号绑定单据
* create time: 2019/1/24 16:24
* @Param: List<DepotItem>
* @return void
*/
public
void
checkAndUpdateSerialNumber
(
DepotItem
depotItem
,
User
userInfo
)
throws
Exception
{
if
(
depotItem
!=
null
){
//查询商品下已分配的可用序列号数量
int
SerialNumberSum
=
serialNumberMapperEx
.
countSerialNumberByMaterialIdAndDepotheadId
(
depotItem
.
getMaterialid
(),
null
,
BusinessConstants
.
IS_SELL_HOLD
);
if
(
depotItem
.
getOpernumber
().
intValue
()>
SerialNumberSum
){
//获取商品名称
Material
material
=
materialMapper
.
selectByPrimaryKey
(
depotItem
.
getMaterialid
());
throw
new
BusinessRunTimeException
(
ExceptionConstants
.
MATERIAL_SERIAL_NUMBERE_NOT_ENOUGH_CODE
,
String
.
format
(
ExceptionConstants
.
MATERIAL_SERIAL_NUMBERE_NOT_ENOUGH_MSG
,
material
==
null
?
""
:
material
.
getName
()));
}
//商品下序列号充足,分配序列号
sellSerialNumber
(
depotItem
.
getMaterialid
(),
depotItem
.
getHeaderid
(),
depotItem
.
getOpernumber
().
intValue
(),
userInfo
);
}
}
/**
*
*
* */
/**
* create by: cjl
* description:
* 卖出序列号
* create time: 2019/1/25 9:17
* @Param: materialId
* @Param: depotheadId
* @Param: isSell 卖出'1'
* @Param: Count 卖出或者赎回的数量
* @return com.jsh.erp.datasource.entities.SerialNumberEx
*/
@Transactional
(
value
=
"transactionManager"
,
rollbackFor
=
Exception
.
class
)
public
int
sellSerialNumber
(
Long
materialId
,
Long
depotheadId
,
int
count
,
User
user
)
throws
Exception
{
return
serialNumberMapperEx
.
sellSerialNumber
(
materialId
,
depotheadId
,
count
,
new
Date
(),
user
==
null
?
null
:
user
.
getId
());
}
/**
* create by: cjl
* description:
* 赎回序列号
* create time: 2019/1/25 9:17
* @Param: materialId
* @Param: depotheadId
* @Param: isSell 赎回'0'
* @Param: Count 卖出或者赎回的数量
* @return com.jsh.erp.datasource.entities.SerialNumberEx
*/
@Transactional
(
value
=
"transactionManager"
,
rollbackFor
=
Exception
.
class
)
public
int
cancelSerialNumber
(
Long
materialId
,
Long
depotheadId
,
int
count
,
User
user
)
throws
Exception
{
return
serialNumberMapperEx
.
cancelSerialNumber
(
materialId
,
depotheadId
,
count
,
new
Date
(),
user
==
null
?
null
:
user
.
getId
());
}
}
src/main/java/com/jsh/erp/service/supplier/SupplierService.java
View file @
b08d349b
...
...
@@ -78,8 +78,13 @@ public class SupplierService {
@Transactional
(
value
=
"transactionManager"
,
rollbackFor
=
Exception
.
class
)
public
int
updateAdvanceIn
(
Long
supplierId
,
BigDecimal
advanceIn
){
Supplier
supplier
=
supplierMapper
.
selectByPrimaryKey
(
supplierId
);
if
(
supplier
!=
null
){
supplier
.
setAdvancein
(
supplier
.
getAdvancein
().
add
(
advanceIn
));
//增加预收款的金额,可能增加的是负值
return
supplierMapper
.
updateByPrimaryKeySelective
(
supplier
);
}
else
{
return
0
;
}
}
public
List
<
Supplier
>
findBySelectCus
()
{
...
...
src/main/resources/mapper_xml/DepotHeadMapperEx.xml
View file @
b08d349b
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.jsh.erp.datasource.mappers.DepotHeadMapper"
>
<mapper
namespace=
"com.jsh.erp.datasource.mappers.DepotHeadMapper
Ex
"
>
<resultMap
extends=
"BaseResultMap"
id=
"ResultMapEx"
type=
"com.jsh.erp.datasource.vo.DepotHeadVo4List"
>
<resultMap
extends=
"
com.jsh.erp.datasource.mappers.DepotHeadMapper.
BaseResultMap"
id=
"ResultMapEx"
type=
"com.jsh.erp.datasource.vo.DepotHeadVo4List"
>
<result
column=
"ProjectName"
jdbcType=
"VARCHAR"
property=
"projectName"
/>
<result
column=
"OrganName"
jdbcType=
"VARCHAR"
property=
"organName"
/>
<result
column=
"HandsPersonName"
jdbcType=
"VARCHAR"
property=
"handsPersonName"
/>
...
...
@@ -282,4 +282,112 @@
</if>
</select>
<insert
id=
"adddepotHead"
parameterType=
"com.jsh.erp.datasource.entities.DepotHead"
useGeneratedKeys=
"true"
keyProperty=
"id"
keyColumn=
"id"
>
insert into jsh_depothead (Type, SubType,
ProjectId, DefaultNumber, Number,
OperPersonName, CreateTime, OperTime,
OrganId, HandsPersonId, AccountId,
ChangeAmount, AllocationProjectId, TotalPrice,
PayType, Remark, Salesman,
AccountIdList, AccountMoneyList, Discount,
DiscountMoney, DiscountLastMoney, OtherMoney,
OtherMoneyList, OtherMoneyItem, AccountDay,
Status)
values (#{type,jdbcType=VARCHAR}, #{subtype,jdbcType=VARCHAR},
#{projectid,jdbcType=BIGINT}, #{defaultnumber,jdbcType=VARCHAR}, #{number,jdbcType=VARCHAR},
#{operpersonname,jdbcType=VARCHAR}, #{createtime,jdbcType=TIMESTAMP}, #{opertime,jdbcType=TIMESTAMP},
#{organid,jdbcType=BIGINT}, #{handspersonid,jdbcType=BIGINT}, #{accountid,jdbcType=BIGINT},
#{changeamount,jdbcType=DECIMAL}, #{allocationprojectid,jdbcType=BIGINT}, #{totalprice,jdbcType=DECIMAL},
#{paytype,jdbcType=VARCHAR}, #{remark,jdbcType=VARCHAR}, #{salesman,jdbcType=VARCHAR},
#{accountidlist,jdbcType=VARCHAR}, #{accountmoneylist,jdbcType=VARCHAR}, #{discount,jdbcType=DECIMAL},
#{discountmoney,jdbcType=DECIMAL}, #{discountlastmoney,jdbcType=DECIMAL}, #{othermoney,jdbcType=DECIMAL},
#{othermoneylist,jdbcType=VARCHAR}, #{othermoneyitem,jdbcType=VARCHAR}, #{accountday,jdbcType=INTEGER},
#{status,jdbcType=BIT})
</insert>
<update
id=
"updatedepotHead"
parameterType=
"com.jsh.erp.datasource.entities.DepotHead"
>
update jsh_depothead
<set>
<if
test=
"type != null"
>
Type = #{type,jdbcType=VARCHAR},
</if>
<if
test=
"subtype != null"
>
SubType = #{subtype,jdbcType=VARCHAR},
</if>
<if
test=
"projectid != null"
>
ProjectId = #{projectid,jdbcType=BIGINT},
</if>
<if
test=
"defaultnumber != null"
>
DefaultNumber = #{defaultnumber,jdbcType=VARCHAR},
</if>
<if
test=
"number != null"
>
Number = #{number,jdbcType=VARCHAR},
</if>
<if
test=
"operpersonname != null"
>
OperPersonName = #{operpersonname,jdbcType=VARCHAR},
</if>
<if
test=
"opertime != null"
>
OperTime = #{opertime,jdbcType=TIMESTAMP},
</if>
<if
test=
"organid != null"
>
OrganId = #{organid,jdbcType=BIGINT},
</if>
<if
test=
"handspersonid != null"
>
HandsPersonId = #{handspersonid,jdbcType=BIGINT},
</if>
<if
test=
"accountid != null"
>
AccountId = #{accountid,jdbcType=BIGINT},
</if>
<if
test=
"changeamount != null"
>
ChangeAmount = #{changeamount,jdbcType=DECIMAL},
</if>
<if
test=
"allocationprojectid != null"
>
AllocationProjectId = #{allocationprojectid,jdbcType=BIGINT},
</if>
<if
test=
"totalprice != null"
>
TotalPrice = #{totalprice,jdbcType=DECIMAL},
</if>
<if
test=
"paytype != null"
>
PayType = #{paytype,jdbcType=VARCHAR},
</if>
<if
test=
"remark != null"
>
Remark = #{remark,jdbcType=VARCHAR},
</if>
<if
test=
"salesman != null"
>
Salesman = #{salesman,jdbcType=VARCHAR},
</if>
<if
test=
"accountidlist != null"
>
AccountIdList = #{accountidlist,jdbcType=VARCHAR},
</if>
<if
test=
"accountmoneylist != null"
>
AccountMoneyList = #{accountmoneylist,jdbcType=VARCHAR},
</if>
<if
test=
"discount != null"
>
Discount = #{discount,jdbcType=DECIMAL},
</if>
<if
test=
"discountmoney != null"
>
DiscountMoney = #{discountmoney,jdbcType=DECIMAL},
</if>
<if
test=
"discountlastmoney != null"
>
DiscountLastMoney = #{discountlastmoney,jdbcType=DECIMAL},
</if>
<if
test=
"othermoney != null"
>
OtherMoney = #{othermoney,jdbcType=DECIMAL},
</if>
<if
test=
"othermoneylist != null"
>
OtherMoneyList = #{othermoneylist,jdbcType=VARCHAR},
</if>
<if
test=
"othermoneyitem != null"
>
OtherMoneyItem = #{othermoneyitem,jdbcType=VARCHAR},
</if>
<if
test=
"accountday != null"
>
AccountDay = #{accountday,jdbcType=INTEGER},
</if>
<if
test=
"status != null"
>
Status = #{status,jdbcType=BIT},
</if>
</set>
where Id = #{id,jdbcType=BIGINT}
</update>
</mapper>
\ No newline at end of file
src/main/resources/mapper_xml/DepotItemMapperEx.xml
View file @
b08d349b
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.jsh.erp.datasource.mappers.DepotItemMapper"
>
<mapper
namespace=
"com.jsh.erp.datasource.mappers.DepotItemMapperEx"
>
<resultMap
id=
"HeaderIdResultMap"
type=
"com.jsh.erp.datasource.entities.DepotItemVo4HeaderId"
>
<result
column=
"HeaderId"
jdbcType=
"BIGINT"
property=
"headerid"
/>
</resultMap>
...
...
@@ -12,12 +13,12 @@
<result
column=
"oTime"
jdbcType=
"TIMESTAMP"
property=
"otime"
/>
</resultMap>
<resultMap
extends=
"BaseResultMap"
id=
"ResultAndMaterialMap"
type=
"com.jsh.erp.datasource.entities.DepotItemVo4Material"
>
<resultMap
extends=
"
com.jsh.erp.datasource.mappers.DepotItemMapper.
BaseResultMap"
id=
"ResultAndMaterialMap"
type=
"com.jsh.erp.datasource.entities.DepotItemVo4Material"
>
<result
column=
"mName"
jdbcType=
"VARCHAR"
property=
"mname"
/>
<result
column=
"mModel"
jdbcType=
"VARCHAR"
property=
"mmodel"
/>
</resultMap>
<resultMap
extends=
"BaseResultMap"
id=
"ResultWithInfoExMap"
type=
"com.jsh.erp.datasource.entities.DepotItemVo4WithInfoEx"
>
<resultMap
extends=
"
com.jsh.erp.datasource.mappers.DepotItemMapper.
BaseResultMap"
id=
"ResultWithInfoExMap"
type=
"com.jsh.erp.datasource.entities.DepotItemVo4WithInfoEx"
>
<result
column=
"MName"
jdbcType=
"VARCHAR"
property=
"MName"
/>
<result
column=
"MModel"
jdbcType=
"VARCHAR"
property=
"MModel"
/>
<result
column=
"MaterialUnit"
jdbcType=
"VARCHAR"
property=
"MaterialUnit"
/>
...
...
@@ -33,7 +34,7 @@
<result
column=
"UName"
jdbcType=
"VARCHAR"
property=
"UName"
/>
</resultMap>
<resultMap
extends=
"BaseResultMap"
id=
"ResultByMaterial"
type=
"com.jsh.erp.datasource.entities.DepotItemVo4WithInfoEx"
>
<resultMap
extends=
"
com.jsh.erp.datasource.mappers.DepotItemMapper.
BaseResultMap"
id=
"ResultByMaterial"
type=
"com.jsh.erp.datasource.entities.DepotItemVo4WithInfoEx"
>
<result
column=
"MId"
jdbcType=
"VARCHAR"
property=
"MId"
/>
<result
column=
"MName"
jdbcType=
"VARCHAR"
property=
"MName"
/>
<result
column=
"MModel"
jdbcType=
"VARCHAR"
property=
"MModel"
/>
...
...
@@ -41,7 +42,7 @@
<result
column=
"MColor"
jdbcType=
"VARCHAR"
property=
"MColor"
/>
</resultMap>
<select
id=
"selectByConditionDepotItem"
parameterType=
"com.jsh.erp.datasource.entities.DepotItemExample"
resultMap=
"BaseResultMap"
>
<select
id=
"selectByConditionDepotItem"
parameterType=
"com.jsh.erp.datasource.entities.DepotItemExample"
resultMap=
"
com.jsh.erp.datasource.mappers.DepotItemMapper.
BaseResultMap"
>
select *
FROM jsh_depotitem
where 1=1
...
...
@@ -274,4 +275,35 @@
and jsh_depotitem.MaterialId =${MId}
</select>
<select
id=
"findDepotItemListBydepotheadId"
resultType=
"com.jsh.erp.datasource.entities.DepotItem"
>
select
dep.id,dep.headerId,dep.materialid,dep.munit,dep.opernumber,
dep.basicnumber,dep.unitprice,dep.taxunitprice,dep.allprice,dep.remark,
dep.img,dep.incidentals,dep.depotid,dep.anotherdepotid,dep.taxrate,
dep.taxmoney,dep.taxlastmoney,dep.otherfield1,dep.otherfield2,dep.otherfield3,
dep.otherfield4,dep.otherfield5,dep.mtype
from jsh_depotitem dep,jsh_material mat
where 1=1
<if
test=
"depotheadId != null"
>
and HeaderId = #{depotheadId}
</if>
and dep.materialid=mat.id
<if
test=
"enableSerialNumber != null"
>
and mat.enableSerialNumber = #{enableSerialNumber}
</if>
</select>
<delete
id=
"deleteDepotItemByDepotHeadIds"
>
delete from jsh_depotitem
where 1=1
and HeaderId in
(
<foreach
collection=
"depotheadIds"
item=
"depotheadId"
separator=
","
>
#{depotheadId}
</foreach>
)
</delete>
</mapper>
\ No newline at end of file
src/main/resources/mapper_xml/MaterialMapper.xml
View file @
b08d349b
...
...
@@ -29,7 +29,7 @@
<result
column=
"OtherField1"
jdbcType=
"VARCHAR"
property=
"otherfield1"
/>
<result
column=
"OtherField2"
jdbcType=
"VARCHAR"
property=
"otherfield2"
/>
<result
column=
"OtherField3"
jdbcType=
"VARCHAR"
property=
"otherfield3"
/>
<result
column=
"enableSerialNumber"
jdbcType=
"
BIT
"
property=
"enableSerialNumber"
/>
<result
column=
"enableSerialNumber"
jdbcType=
"
VARCHAR
"
property=
"enableSerialNumber"
/>
</resultMap>
<sql
id=
"Example_Where_Clause"
>
<!--
...
...
@@ -172,7 +172,7 @@
#{lowprice,jdbcType=DECIMAL}, #{presetpriceone,jdbcType=DECIMAL}, #{presetpricetwo,jdbcType=DECIMAL},
#{unitid,jdbcType=BIGINT}, #{firstoutunit,jdbcType=VARCHAR}, #{firstinunit,jdbcType=VARCHAR},
#{pricestrategy,jdbcType=VARCHAR}, #{enabled,jdbcType=BIT}, #{otherfield1,jdbcType=VARCHAR},
#{otherfield2,jdbcType=VARCHAR}, #{otherfield3,jdbcType=VARCHAR},#{enableSerialNumber,jdbcType=
BIT
})
#{otherfield2,jdbcType=VARCHAR}, #{otherfield3,jdbcType=VARCHAR},#{enableSerialNumber,jdbcType=
VARCHAR
})
</insert>
<insert
id=
"insertSelective"
parameterType=
"com.jsh.erp.datasource.entities.Material"
>
<!--
...
...
@@ -325,7 +325,7 @@
#{otherfield3,jdbcType=VARCHAR},
</if>
<if
test=
"enableSerialNumber != null"
>
#{enableSerialNumber,jdbcType=
BIT
},
#{enableSerialNumber,jdbcType=
VARCHAR
},
</if>
</trim>
</insert>
...
...
@@ -452,7 +452,7 @@
OtherField1 = #{record.otherfield1,jdbcType=VARCHAR},
OtherField2 = #{record.otherfield2,jdbcType=VARCHAR},
OtherField3 = #{record.otherfield3,jdbcType=VARCHAR}
enableSerialNumber = #{record.enableSerialNumber,jdbcType=
BIT
}
enableSerialNumber = #{record.enableSerialNumber,jdbcType=
VARCHAR
}
<if
test=
"_parameter != null"
>
<include
refid=
"Update_By_Example_Where_Clause"
/>
</if>
...
...
src/main/resources/mapper_xml/MaterialMapperEx.xml
View file @
b08d349b
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.jsh.erp.datasource.mappers.MaterialMapperEx"
>
<resultMap
id=
"BaseResultMap"
type=
"com.jsh.erp.datasource.entities.Material"
>
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
-->
<id
column=
"Id"
jdbcType=
"BIGINT"
property=
"id"
/>
<result
column=
"CategoryId"
jdbcType=
"BIGINT"
property=
"categoryid"
/>
<result
column=
"Name"
jdbcType=
"VARCHAR"
property=
"name"
/>
<result
column=
"Mfrs"
jdbcType=
"VARCHAR"
property=
"mfrs"
/>
<result
column=
"Packing"
jdbcType=
"DECIMAL"
property=
"packing"
/>
<result
column=
"SafetyStock"
jdbcType=
"DECIMAL"
property=
"safetystock"
/>
<result
column=
"Model"
jdbcType=
"VARCHAR"
property=
"model"
/>
<result
column=
"Standard"
jdbcType=
"VARCHAR"
property=
"standard"
/>
<result
column=
"Color"
jdbcType=
"VARCHAR"
property=
"color"
/>
<result
column=
"Unit"
jdbcType=
"VARCHAR"
property=
"unit"
/>
<result
column=
"Remark"
jdbcType=
"VARCHAR"
property=
"remark"
/>
<result
column=
"RetailPrice"
jdbcType=
"DECIMAL"
property=
"retailprice"
/>
<result
column=
"LowPrice"
jdbcType=
"DECIMAL"
property=
"lowprice"
/>
<result
column=
"PresetPriceOne"
jdbcType=
"DECIMAL"
property=
"presetpriceone"
/>
<result
column=
"PresetPriceTwo"
jdbcType=
"DECIMAL"
property=
"presetpricetwo"
/>
<result
column=
"UnitId"
jdbcType=
"BIGINT"
property=
"unitid"
/>
<result
column=
"FirstOutUnit"
jdbcType=
"VARCHAR"
property=
"firstoutunit"
/>
<result
column=
"FirstInUnit"
jdbcType=
"VARCHAR"
property=
"firstinunit"
/>
<result
column=
"PriceStrategy"
jdbcType=
"VARCHAR"
property=
"pricestrategy"
/>
<result
column=
"Enabled"
jdbcType=
"BIT"
property=
"enabled"
/>
<result
column=
"OtherField1"
jdbcType=
"VARCHAR"
property=
"otherfield1"
/>
<result
column=
"OtherField2"
jdbcType=
"VARCHAR"
property=
"otherfield2"
/>
<result
column=
"OtherField3"
jdbcType=
"VARCHAR"
property=
"otherfield3"
/>
<result
column=
"enableSerialNumber"
jdbcType=
"BIT"
property=
"enableSerialNumber"
/>
</resultMap>
<resultMap
extends=
"BaseResultMap"
id=
"ResultMapList"
type=
"com.jsh.erp.datasource.entities.MaterialVo4Unit"
>
<resultMap
extends=
"com.jsh.erp.datasource.mappers.MaterialMapper.BaseResultMap"
id=
"ResultMapList"
type=
"com.jsh.erp.datasource.entities.MaterialVo4Unit"
>
<result
column=
"unitName"
jdbcType=
"VARCHAR"
property=
"unitName"
/>
<result
column=
"categoryName"
jdbcType=
"VARCHAR"
property=
"categoryName"
/>
</resultMap>
<resultMap
extends=
"BaseResultMap"
id=
"ResultAndUnitMap"
type=
"com.jsh.erp.datasource.entities.MaterialVo4Unit"
>
<resultMap
extends=
"
com.jsh.erp.datasource.mappers.MaterialMapper.
BaseResultMap"
id=
"ResultAndUnitMap"
type=
"com.jsh.erp.datasource.entities.MaterialVo4Unit"
>
<result
column=
"UName"
jdbcType=
"VARCHAR"
property=
"unitName"
/>
</resultMap>
...
...
src/main/resources/mapper_xml/SerialNumberMapper.xml
View file @
b08d349b
...
...
@@ -9,13 +9,14 @@
<id
column=
"id"
jdbcType=
"BIGINT"
property=
"id"
/>
<result
column=
"material_Id"
jdbcType=
"BIGINT"
property=
"materialId"
/>
<result
column=
"serial_Number"
jdbcType=
"VARCHAR"
property=
"serialNumber"
/>
<result
column=
"is_Sell"
jdbcType=
"
BIT
"
property=
"isSell"
/>
<result
column=
"is_Sell"
jdbcType=
"
VARCHAR
"
property=
"isSell"
/>
<result
column=
"remark"
jdbcType=
"VARCHAR"
property=
"remark"
/>
<result
column=
"delete_Flag"
jdbcType=
"
BIT
"
property=
"deleteFlag"
/>
<result
column=
"delete_Flag"
jdbcType=
"
VARCHAR
"
property=
"deleteFlag"
/>
<result
column=
"create_Time"
jdbcType=
"TIMESTAMP"
property=
"createTime"
/>
<result
column=
"creator"
jdbcType=
"BIGINT"
property=
"creator"
/>
<result
column=
"update_Time"
jdbcType=
"TIMESTAMP"
property=
"updateTime"
/>
<result
column=
"updater"
jdbcType=
"BIGINT"
property=
"updater"
/>
<result
column=
"depothead_Id"
jdbcType=
"BIGINT"
property=
"depotheadId"
/>
</resultMap>
<sql
id=
"Example_Where_Clause"
>
<!--
...
...
@@ -89,7 +90,7 @@
This element is automatically generated by MyBatis Generator, do not modify.
-->
id, material_Id, serial_Number, is_Sell, remark, delete_Flag, create_Time, creator,
update_Time, updater
update_Time, updater
,depothead_Id
</sql>
<select
id=
"selectByExample"
parameterType=
"com.jsh.erp.datasource.entities.SerialNumberExample"
resultMap=
"BaseResultMap"
>
<!--
...
...
@@ -145,11 +146,11 @@
insert into jsh_serial_number (id, material_Id, serial_Number,
is_Sell, remark, delete_Flag,
create_Time, creator, update_Time,
updater)
updater
,depothead_Id
)
values (#{id,jdbcType=BIGINT}, #{materialId,jdbcType=BIGINT}, #{serialNumber,jdbcType=VARCHAR},
#{isSell,jdbcType=
BIT
}, #{remark,jdbcType=VARCHAR}, #{deleteFlag,jdbcType=
BIT
},
#{isSell,jdbcType=
VARCHAR
}, #{remark,jdbcType=VARCHAR}, #{deleteFlag,jdbcType=
VARCHAR
},
#{createTime,jdbcType=TIMESTAMP}, #{creator,jdbcType=BIGINT}, #{updateTime,jdbcType=TIMESTAMP},
#{updater,jdbcType=BIGINT})
#{updater,jdbcType=BIGINT}
,#{depotheadId,jdbcType=BIGINT}
)
</insert>
<insert
id=
"insertSelective"
parameterType=
"com.jsh.erp.datasource.entities.SerialNumber"
>
<!--
...
...
@@ -188,6 +189,9 @@
<if
test=
"updater != null"
>
updater,
</if>
<if
test=
"depotheadId != null"
>
depothead_Id,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
...
...
@@ -200,13 +204,13 @@
#{serialNumber,jdbcType=VARCHAR},
</if>
<if
test=
"isSell != null"
>
#{isSell,jdbcType=
BIT
},
#{isSell,jdbcType=
VARCHAR
},
</if>
<if
test=
"remark != null"
>
#{remark,jdbcType=VARCHAR},
</if>
<if
test=
"deleteFlag != null"
>
#{deleteFlag,jdbcType=
BIT
},
#{deleteFlag,jdbcType=
VARCHAR
},
</if>
<if
test=
"createTime != null"
>
#{createTime,jdbcType=TIMESTAMP},
...
...
@@ -220,6 +224,9 @@
<if
test=
"updater != null"
>
#{updater,jdbcType=BIGINT},
</if>
<if
test=
"depotheadId != null"
>
#{depotheadId,jdbcType=BIGINT},
</if>
</trim>
</insert>
<select
id=
"countByExample"
parameterType=
"com.jsh.erp.datasource.entities.SerialNumberExample"
resultType=
"java.lang.Integer"
>
...
...
@@ -249,13 +256,13 @@
serial_Number = #{record.serialNumber,jdbcType=VARCHAR},
</if>
<if
test=
"record.isSell != null"
>
is_Sell = #{record.isSell,jdbcType=
BIT
},
is_Sell = #{record.isSell,jdbcType=
VARCHAR
},
</if>
<if
test=
"record.remark != null"
>
remark = #{record.remark,jdbcType=VARCHAR},
</if>
<if
test=
"record.deleteFlag != null"
>
delete_Flag = #{record.deleteFlag,jdbcType=
BIT
},
delete_Flag = #{record.deleteFlag,jdbcType=
VARCHAR
},
</if>
<if
test=
"record.createTime != null"
>
create_Time = #{record.createTime,jdbcType=TIMESTAMP},
...
...
@@ -269,6 +276,9 @@
<if
test=
"record.updater != null"
>
updater = #{record.updater,jdbcType=BIGINT},
</if>
<if
test=
"record.depotheadId != null"
>
depothead_Id = #{record.depotheadId,jdbcType=BIGINT},
</if>
</set>
<if
test=
"_parameter != null"
>
<include
refid=
"Update_By_Example_Where_Clause"
/>
...
...
@@ -283,13 +293,14 @@
set id = #{record.id,jdbcType=BIGINT},
material_Id = #{record.materialId,jdbcType=BIGINT},
serial_Number = #{record.serialNumber,jdbcType=VARCHAR},
is_Sell = #{record.isSell,jdbcType=
BIT
},
is_Sell = #{record.isSell,jdbcType=
VARCHAR
},
remark = #{record.remark,jdbcType=VARCHAR},
delete_Flag = #{record.deleteFlag,jdbcType=
BIT
},
delete_Flag = #{record.deleteFlag,jdbcType=
VARCHAR
},
create_Time = #{record.createTime,jdbcType=TIMESTAMP},
creator = #{record.creator,jdbcType=BIGINT},
update_Time = #{record.updateTime,jdbcType=TIMESTAMP},
updater = #{record.updater,jdbcType=BIGINT}
updater = #{record.updater,jdbcType=BIGINT},
depothead_Id = #{record.depotheadId,jdbcType=BIGINT}
<if
test=
"_parameter != null"
>
<include
refid=
"Update_By_Example_Where_Clause"
/>
</if>
...
...
@@ -308,13 +319,13 @@
serial_Number = #{serialNumber,jdbcType=VARCHAR},
</if>
<if
test=
"isSell != null"
>
is_Sell = #{isSell,jdbcType=
BIT
},
is_Sell = #{isSell,jdbcType=
VARCHAR
},
</if>
<if
test=
"remark != null"
>
remark = #{remark,jdbcType=VARCHAR},
</if>
<if
test=
"deleteFlag != null"
>
delete_Flag = #{deleteFlag,jdbcType=
BIT
},
delete_Flag = #{deleteFlag,jdbcType=
VARCHAR
},
</if>
<if
test=
"createTime != null"
>
create_Time = #{createTime,jdbcType=TIMESTAMP},
...
...
@@ -328,6 +339,9 @@
<if
test=
"updater != null"
>
updater = #{updater,jdbcType=BIGINT},
</if>
<if
test=
"depotheadId != null"
>
depothead_Id = #{depotheadId,jdbcType=BIGINT},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
...
...
@@ -339,13 +353,14 @@
update jsh_serial_number
set material_Id = #{materialId,jdbcType=BIGINT},
serial_Number = #{serialNumber,jdbcType=VARCHAR},
is_Sell = #{isSell,jdbcType=
BIT
},
is_Sell = #{isSell,jdbcType=
VARCHAR
},
remark = #{remark,jdbcType=VARCHAR},
delete_Flag = #{deleteFlag,jdbcType=
BIT
},
delete_Flag = #{deleteFlag,jdbcType=
VARCHAR
},
create_Time = #{createTime,jdbcType=TIMESTAMP},
creator = #{creator,jdbcType=BIGINT},
update_Time = #{updateTime,jdbcType=TIMESTAMP},
updater = #{updater,jdbcType=BIGINT}
updater = #{updater,jdbcType=BIGINT},
depothead_Id = #{depotheadId,jdbcType=BIGINT}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>
\ No newline at end of file
src/main/resources/mapper_xml/SerialNumberMapperEx.xml
View file @
b08d349b
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.jsh.erp.datasource.mappers.SerialNumberMapperEx"
>
<resultMap
id=
"
BaseResultMap"
type=
"com.jsh.erp.datasource.entities.SerialNumberEx"
>
<resultMap
extends=
"com.jsh.erp.datasource.mappers.SerialNumberMapper.BaseResultMap"
id=
"SerialNumberEx
BaseResultMap"
type=
"com.jsh.erp.datasource.entities.SerialNumberEx"
>
<id
column=
"id"
jdbcType=
"BIGINT"
property=
"id"
/>
<result
column=
"material_Id"
jdbcType=
"BIGINT"
property=
"materialId"
/>
<result
column=
"materialName"
jdbcType=
"VARCHAR"
property=
"materialName"
/>
<result
column=
"serial_Number"
jdbcType=
"VARCHAR"
property=
"serialNumber"
/>
<result
column=
"is_Sell"
jdbcType=
"BIT"
property=
"isSell"
/>
<result
column=
"remark"
jdbcType=
"VARCHAR"
property=
"remark"
/>
<result
column=
"delete_Flag"
jdbcType=
"BIT"
property=
"deleteFlag"
/>
<result
column=
"create_Time"
jdbcType=
"TIMESTAMP"
property=
"createTime"
/>
<result
column=
"update_Time"
jdbcType=
"TIMESTAMP"
property=
"updateTime"
/>
<result
column=
"creator"
jdbcType=
"BIGINT"
property=
"creator"
/>
<result
column=
"updater"
jdbcType=
"BIGINT"
property=
"updater"
/>
<result
column=
"creatorName"
jdbcType=
"VARCHAR"
property=
"creatorName"
/>
<result
column=
"updaterName"
jdbcType=
"VARCHAR"
property=
"updaterName"
/>
</resultMap>
<select
id=
"selectByConditionSerialNumber"
resultMap=
"BaseResultMap"
>
<select
id=
"selectByConditionSerialNumber"
resultMap=
"
SerialNumberEx
BaseResultMap"
>
select
ser.id, ser.material_Id, ser.serial_Number, ser.is_Sell, ser.remark, ser.delete_Flag, ser.create_Time,
ser.update_Time,mat.name as materialName,null as creator,null as updater,null as creatorName, null as updaterName
ser.update_Time,mat.name as materialName,null as creator,null as updater,null as creatorName,
null as updaterName,ser.depothead_Id
FROM jsh_serial_number ser
left JOIN jsh_material mat on mat.id = ser.material_Id
where 1=1
...
...
@@ -52,11 +44,11 @@
</if>
order by ser.id desc
</select>
<select
id=
"findById"
resultMap=
"BaseResultMap"
>
<select
id=
"findById"
resultMap=
"
SerialNumberEx
BaseResultMap"
>
SELECT
ser.id, ser.material_Id, ser.serial_Number, ser.is_Sell, ser.remark, ser.delete_Flag, ser.create_Time,
ser.update_Time,ser.creator,ser.updater,mat.name as materialName,cr.username as creatorName,
ur.username as updaterName
ur.username as updaterName
,ser.depothead_Id
FROM jsh_serial_number ser
left JOIN jsh_material mat on mat.id = ser.material_Id
left join jsh_user cr on ser.creator=cr.id
...
...
@@ -65,10 +57,10 @@
and ser.id=#{id}
order by ser.id desc
</select>
<select
id=
"findBySerialNumber"
resultMap=
"BaseResultMap"
>
<select
id=
"findBySerialNumber"
resultMap=
"
SerialNumberEx
BaseResultMap"
>
SELECT
ser.id, ser.material_Id, ser.serial_Number, ser.is_Sell, ser.remark, ser.delete_Flag, ser.create_Time,
ser.update_Time,ser.creator,ser.updater
ser.update_Time,ser.creator,ser.updater
,ser.depothead_Id
FROM jsh_serial_number ser
where 1=1
<if
test=
"serialNumber != null"
>
...
...
@@ -80,10 +72,10 @@
useGeneratedKeys=
"true"
keyProperty=
"id"
keyColumn=
"id"
>
insert into jsh_serial_number
(material_Id, serial_Number, is_Sell, remark,delete_Flag,
create_Time, creator,update_Time, updater)
create_Time, creator,update_Time, updater
,depothead_Id
)
values
(#{materialId},#{serialNumber},#{isSell},#{remark},#{deleteFlag},
#{createTime},#{creator},#{updateTime},#{updater}
#{createTime},#{creator},#{updateTime},#{updater}
,#{depotheadId}
)
</insert>
<update
id=
"updateSerialNumber"
parameterType=
"com.jsh.erp.datasource.entities.SerialNumberEx"
>
...
...
@@ -96,13 +88,13 @@
serial_Number = #{serialNumber,jdbcType=VARCHAR},
</if>
<if
test=
"isSell != null"
>
is_Sell = #{isSell,jdbcType=
BIT
},
is_Sell = #{isSell,jdbcType=
VARCHAR
},
</if>
<if
test=
"remark != null"
>
remark = #{remark,jdbcType=VARCHAR},
</if>
<if
test=
"deleteFlag != null"
>
delete_Flag = #{deleteFlag,jdbcType=
BIT
},
delete_Flag = #{deleteFlag,jdbcType=
VARCHAR
},
</if>
<if
test=
"updateTime != null"
>
update_Time = #{updateTime,jdbcType=TIMESTAMP},
...
...
@@ -110,9 +102,13 @@
<if
test=
"updater != null"
>
updater = #{updater,jdbcType=BIGINT},
</if>
<if
test=
"depotheadId != null"
>
depothead_Id = #{depotheadId,jdbcType=BIGINT},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<select
id=
"findSerialNumberByMaterialId"
resultType=
"java.lang.Integer"
>
SELECT
count(ser.id)
...
...
@@ -124,5 +120,93 @@
and ser.delete_Flag !='1'
and ser.is_Sell !='1'
</select>
<select
id=
"countSerialNumberByMaterialIdAndDepotheadId"
resultType=
"java.lang.Integer"
>
SELECT
count(ser.id)
FROM jsh_serial_number ser
where 1=1
<if
test=
"materialId != null"
>
and ser.material_Id=#{materialId}
</if>
<if
test=
"depotheadId != null"
>
and ser.depothead_Id=#{depotheadId}
</if>
and ser.is_Sell =#{isSell,jdbcType=VARCHAR}
and ser.delete_Flag !='1'
</select>
<update
id=
"sellSerialNumber"
>
update jsh_serial_number
<set>
is_Sell = '1',
<if
test=
"depotheadId !=null "
>
depothead_Id = #{depotheadId},
</if>
<if
test=
"updateTime !=null "
>
update_Time = #{updateTime},
</if>
<if
test=
"updater != null"
>
updater = #{updater},
</if>
</set>
where 1=1
<if
test=
"materialId != null"
>
and material_Id = #{materialId}
</if>
and is_Sell != '1'
<if
test=
"count != null"
>
and id in
( select batchSN.id from
( select selFrom.id from jsh_serial_number selFrom
where 1=1
<if
test=
"materialId != null"
>
and selFrom.material_Id = #{materialId}
</if>
and selFrom.is_Sell != '1'
limit 0,#{count}
) batchSN
)
</if>
</update>
<update
id=
"cancelSerialNumber"
>
update jsh_serial_number
<set>
is_Sell = '0',
<if
test=
"updateTime !=null "
>
update_Time = #{updateTime},
</if>
<if
test=
"updater != null"
>
updater = #{updater},
</if>
</set>
where 1=1
<if
test=
"materialId != null"
>
and material_Id = #{materialId}
</if>
<if
test=
"depotheadId !=null "
>
and depothead_Id = #{depotheadId,jdbcType=BIGINT}
</if>
and is_Sell != '0'
<if
test=
"count != null"
>
and id in
( select batchSN.id from
( select selFrom.id from jsh_serial_number selFrom
where 1=1
<if
test=
"materialId != null"
>
and selFrom.material_Id = #{materialId}
</if>
<if
test=
"depotheadId !=null "
>
and selFrom.depothead_Id = #{depotheadId,jdbcType=BIGINT}
</if>
and selFrom.is_Sell !='0'
limit 0,#{count}
) batchSN
)
</if>
</update>
</mapper>
\ No newline at end of file
Prev
1
2
Next
Write
Preview
Supports
Markdown
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