|
|
@@ -151,7 +151,9 @@ public class DeclareCustomsServiceImpl extends ServiceImpl<DeclareCustomsMapper,
|
|
|
declareCustoms.setCreateTime(new Date());
|
|
|
declareCustoms.setCreateUser(AuthUtil.getUserId());
|
|
|
declareCustoms.setTenantId(AuthUtil.getTenantId());
|
|
|
+ declareCustoms.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
|
|
|
declareCustoms.setStatus(0);
|
|
|
+ declareCustoms.setAuditStatus("录入");
|
|
|
baseMapper.insert(declareCustoms);
|
|
|
}else {
|
|
|
declareCustoms.setUpdateTime(new Date());
|
|
|
@@ -265,6 +267,110 @@ public class DeclareCustomsServiceImpl extends ServiceImpl<DeclareCustomsMapper,
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * 复制单据
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public R copyCustoms(DeclareCustoms declareCustoms){
|
|
|
+ LambdaQueryWrapper<DeclareCustoms> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ lambdaQueryWrapper.eq(DeclareCustoms::getId, declareCustoms.getId())
|
|
|
+ .eq(DeclareCustoms::getTenantId, AuthUtil.getTenantId())
|
|
|
+ .eq(DeclareCustoms::getIsDeleted, 0);
|
|
|
+ DeclareCustoms customs = baseMapper.selectOne(lambdaQueryWrapper);
|
|
|
+
|
|
|
+ if (ObjectUtil.isEmpty(customs)){
|
|
|
+ throw new SecurityException("信息获取异常");
|
|
|
+ }
|
|
|
+
|
|
|
+ customs.setId(null);
|
|
|
+ customs.setCreateUser(AuthUtil.getUserId());
|
|
|
+ customs.setCreateTime(new Date());
|
|
|
+ customs.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
|
|
|
+ customs.setSysNo("");
|
|
|
+ customs.setTenantId(AuthUtil.getTenantId());
|
|
|
+ customs.setDeclareDate(new Date());
|
|
|
+ customs.setStatus(null);
|
|
|
+ customs.setAuditStatus("");
|
|
|
+
|
|
|
+ //获得商品明细
|
|
|
+ LambdaQueryWrapper<DeclareCustomsItem> itemLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ itemLambdaQueryWrapper.eq(DeclareCustomsItem::getPid, declareCustoms.getId())
|
|
|
+ .eq(DeclareCustomsItem::getIsDeleted, 0)
|
|
|
+ .eq(DeclareCustomsItem::getTenantId, AuthUtil.getTenantId());
|
|
|
+ List<DeclareCustomsItem> itemList = declareCustomsItemMapper.selectList(itemLambdaQueryWrapper);
|
|
|
+ itemList.forEach(e ->{
|
|
|
+ e.setId(null);
|
|
|
+ e.setPid(null);
|
|
|
+ e.setCreateUser(AuthUtil.getUserId());
|
|
|
+ e.setCreateTime(new Date());
|
|
|
+ e.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
|
|
|
+ });
|
|
|
+ customs.setItemList(itemList);
|
|
|
+
|
|
|
+ //获得集装箱明细
|
|
|
+ LambdaQueryWrapper<DeclareCustomsContainer> containerLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ containerLambdaQueryWrapper.eq(DeclareCustomsContainer::getPid, declareCustoms.getId())
|
|
|
+ .eq(DeclareCustomsContainer::getIsDeleted, 0)
|
|
|
+ .eq(DeclareCustomsContainer::getTenantId, AuthUtil.getTenantId());
|
|
|
+ List<DeclareCustomsContainer> containerList = containerMapper.selectList(containerLambdaQueryWrapper);
|
|
|
+ containerList.forEach(e ->{
|
|
|
+ e.setId(null);
|
|
|
+ e.setPid(null);
|
|
|
+ e.setCreateUser(AuthUtil.getUserId());
|
|
|
+ e.setCreateTime(new Date());
|
|
|
+ e.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
|
|
|
+ });
|
|
|
+ customs.setContainerList(containerList);
|
|
|
+
|
|
|
+ //获得单证明细
|
|
|
+ LambdaQueryWrapper<DeclareCustomsDocuments> documentsLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ documentsLambdaQueryWrapper.eq(DeclareCustomsDocuments::getPid, declareCustoms.getId())
|
|
|
+ .eq(DeclareCustomsDocuments::getIsDeleted, 0)
|
|
|
+ .eq(DeclareCustomsDocuments::getTenantId, AuthUtil.getTenantId());
|
|
|
+ List<DeclareCustomsDocuments> documentsList = documentsMapper.selectList(documentsLambdaQueryWrapper);
|
|
|
+ documentsList.forEach(e ->{
|
|
|
+ e.setId(null);
|
|
|
+ e.setPid(null);
|
|
|
+ e.setCreateUser(AuthUtil.getUserId());
|
|
|
+ e.setCreateTime(new Date());
|
|
|
+ e.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
|
|
|
+ });
|
|
|
+ customs.setDocumentsList(documentsList);
|
|
|
+
|
|
|
+ //费用明细
|
|
|
+ LambdaQueryWrapper<DeclareCustomsFees> feesLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ documentsLambdaQueryWrapper.eq(DeclareCustomsDocuments::getPid, declareCustoms.getId())
|
|
|
+ .eq(DeclareCustomsDocuments::getIsDeleted, 0)
|
|
|
+ .eq(DeclareCustomsDocuments::getTenantId, AuthUtil.getTenantId());
|
|
|
+ List<DeclareCustomsFees> feesList = feesMapper.selectList(feesLambdaQueryWrapper);
|
|
|
+ feesList.forEach(e ->{
|
|
|
+ e.setId(null);
|
|
|
+ e.setPid(null);
|
|
|
+ e.setCreateUser(AuthUtil.getUserId());
|
|
|
+ e.setCreateTime(new Date());
|
|
|
+ e.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
|
|
|
+ });
|
|
|
+ customs.setFeesList(feesList);
|
|
|
+
|
|
|
+ //获取附件信息
|
|
|
+ LambdaQueryWrapper<DeclareCustomsFiles> filesLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ filesLambdaQueryWrapper.eq(DeclareCustomsFiles::getIsDeleted, 0)
|
|
|
+ .eq(DeclareCustomsFiles::getTenantId, AuthUtil.getTenantId())
|
|
|
+ .eq(DeclareCustomsFiles::getType, "1")
|
|
|
+ .eq(DeclareCustomsFiles::getPid, declareCustoms.getId());
|
|
|
+ List<DeclareCustomsFiles> filesList = filesMapper.selectList(filesLambdaQueryWrapper);
|
|
|
+ filesList.forEach(e ->{
|
|
|
+ e.setId(null);
|
|
|
+ e.setPid(null);
|
|
|
+ e.setCreateUser(AuthUtil.getUserId());
|
|
|
+ e.setCreateTime(new Date());
|
|
|
+ e.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
|
|
|
+ });
|
|
|
+ customs.setFileList(filesList);
|
|
|
+
|
|
|
+ return R.data(customs);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
* 报关请核
|
|
|
*/
|
|
|
@Override
|
|
|
@@ -367,7 +473,8 @@ public class DeclareCustomsServiceImpl extends ServiceImpl<DeclareCustomsMapper,
|
|
|
BigDecimal payAmount = new BigDecimal("0.00");
|
|
|
if (ObjectUtils.isNotNull(receivableOrderFeesList)) {
|
|
|
for (DeclareCustomsFees fees : receivableOrderFeesList) {
|
|
|
- payAmount = payAmount.add(fees.getPrice().multiply(fees.getExchangeRate(), MathContext.DECIMAL32));
|
|
|
+ payAmount = payAmount.add(fees.getAmount());
|
|
|
+ //payAmount = payAmount.add(fees.getPrice().multiply(fees.getExchangeRate(), MathContext.DECIMAL32));
|
|
|
}
|
|
|
}
|
|
|
auditProecessDTO.setPayAmount(payAmount);
|
|
|
@@ -381,7 +488,8 @@ public class DeclareCustomsServiceImpl extends ServiceImpl<DeclareCustomsMapper,
|
|
|
BigDecimal receivableAmount = new BigDecimal("0.00");
|
|
|
if (ObjectUtils.isNotNull(payOrderFeesList)) {
|
|
|
for (DeclareCustomsFees DeclareCustomsFees : payOrderFeesList) {
|
|
|
- receivableAmount = receivableAmount.add(DeclareCustomsFees.getPrice().multiply(DeclareCustomsFees.getExchangeRate(), MathContext.DECIMAL32));
|
|
|
+ receivableAmount = receivableAmount.add(DeclareCustomsFees.getAmount());
|
|
|
+ //receivableAmount = receivableAmount.add(DeclareCustomsFees.getPrice().multiply(DeclareCustomsFees.getExchangeRate(), MathContext.DECIMAL32));
|
|
|
}
|
|
|
}
|
|
|
auditProecessDTO.setReceivableAmount(receivableAmount);
|