|
|
@@ -17,25 +17,32 @@
|
|
|
package org.springblade.box.tube.ocean.service.impl;
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
+import org.springblade.box.tube.entity.Transport;
|
|
|
+import org.springblade.box.tube.ocean.dto.ShippingBillDTO;
|
|
|
import org.springblade.box.tube.ocean.entity.*;
|
|
|
import org.springblade.box.tube.ocean.mapper.*;
|
|
|
import org.springblade.box.tube.ocean.service.IShippingBillService;
|
|
|
-import org.springblade.client.feign.ICorpsDescClient;
|
|
|
-import org.springblade.client.feign.IPortClient;
|
|
|
+import org.springblade.check.dto.AuditProecessDTO;
|
|
|
+import org.springblade.check.entity.AuditPathsActs;
|
|
|
+import org.springblade.check.entity.AuditPathsLevels;
|
|
|
+import org.springblade.check.feign.ICheckClient;
|
|
|
import org.springblade.client.feign.ISerialClient;
|
|
|
+import org.springblade.core.mp.support.Condition;
|
|
|
import org.springblade.core.secure.utils.AuthUtil;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
import org.springblade.system.user.feign.IUserClient;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.interceptor.TransactionAspectSupport;
|
|
|
|
|
|
+import java.math.BigDecimal;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* 海运进、出口单据信息 服务实现类
|
|
|
@@ -52,14 +59,6 @@ public class ShippingBillServiceImpl extends ServiceImpl<ShippingBillMapper, Shi
|
|
|
|
|
|
private ISerialClient serialClient;//生成系统编号
|
|
|
|
|
|
- private IPortClient portClient;//地点
|
|
|
-
|
|
|
- private ICorpsDescClient corpsDescClient;//客户
|
|
|
-
|
|
|
- private final ShippingVesselMapper shippingVesselMapper;
|
|
|
-
|
|
|
- private final ShippingVoyageMapper shippingVoyageMapper;
|
|
|
-
|
|
|
private final ShippingBillDetailsMapper shippingBillDetailsMapper;
|
|
|
|
|
|
private final ShippingBoxTypeMapper shippingBoxTypeMapper;
|
|
|
@@ -70,33 +69,41 @@ public class ShippingBillServiceImpl extends ServiceImpl<ShippingBillMapper, Shi
|
|
|
|
|
|
private final ShippingMatchBoxMapper shippingMatchBoxMapper;
|
|
|
|
|
|
+ private final ICheckClient iCheckClient;
|
|
|
+
|
|
|
@Override
|
|
|
- public IPage<ShippingBill> selectShippingBillPage(IPage<ShippingBill> page, ShippingBill shippingBill) {
|
|
|
+ public IPage<ShippingBillDTO> selectShippingBillPage(IPage<ShippingBillDTO> page, ShippingBillDTO shippingBill) {
|
|
|
return page.setRecords(baseMapper.selectShippingBillPage(page, shippingBill));
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public ShippingBill getDetails(QueryWrapper<ShippingBill> queryWrapper) {
|
|
|
- ShippingBill shippingBill = baseMapper.selectOne(queryWrapper);
|
|
|
+ public ShippingBill getDetails(ShippingBill shippingBill) {
|
|
|
+ ShippingBill shippingBillDetail = baseMapper.selectOne(Condition.getQueryWrapper(shippingBill));
|
|
|
if (ObjectUtils.isNull(shippingBill)) {
|
|
|
throw new RuntimeException("未查到数据信息");
|
|
|
}
|
|
|
//明细
|
|
|
ShippingBillDetails shippingBillDetails = shippingBillDetailsMapper.selectOne(new LambdaQueryWrapper<ShippingBillDetails>().eq(ShippingBillDetails::getPid, shippingBill.getId()));
|
|
|
- shippingBill.setShippingBillDetails(shippingBillDetails);
|
|
|
+ shippingBillDetail.setShippingBillDetails(shippingBillDetails);
|
|
|
//箱型箱量
|
|
|
List<ShippingBoxType> shippingBoxType = shippingBoxTypeMapper.selectList(new LambdaQueryWrapper<ShippingBoxType>().eq(ShippingBoxType::getPid, shippingBill.getId()));
|
|
|
- shippingBill.setShippingBoxTypeList(shippingBoxType);
|
|
|
+ shippingBillDetail.setShippingBoxTypeList(shippingBoxType);
|
|
|
//配箱
|
|
|
List<ShippingMatchBox> shippingMatchBox = shippingMatchBoxMapper.selectList(new LambdaQueryWrapper<ShippingMatchBox>().eq(ShippingMatchBox::getPid, shippingBill.getId()));
|
|
|
- shippingBill.setShippingMatchBoxList(shippingMatchBox);
|
|
|
- //费用明细
|
|
|
- List<ShippingFees> shippingFees = shippingFeesMapper.selectList(new LambdaQueryWrapper<ShippingFees>().eq(ShippingFees::getPid, shippingBill.getId()));
|
|
|
- shippingBill.setShippingFeesList(shippingFees);
|
|
|
+ shippingBillDetail.setShippingMatchBoxList(shippingMatchBox);
|
|
|
+ if (ObjectUtils.isNotNull(shippingBill.getFeeStatusType())) {
|
|
|
+ //费用明细
|
|
|
+ List<ShippingFees> shippingFees = shippingFeesMapper.selectList(new LambdaQueryWrapper<ShippingFees>().eq(ShippingFees::getPid, shippingBill.getId()).eq(ShippingFees::getIsCheck, 2));
|
|
|
+ shippingBillDetail.setShippingFeesList(shippingFees);
|
|
|
+ } else {
|
|
|
+ //费用明细
|
|
|
+ List<ShippingFees> shippingFees = shippingFeesMapper.selectList(new LambdaQueryWrapper<ShippingFees>().eq(ShippingFees::getPid, shippingBill.getId()));
|
|
|
+ shippingBillDetail.setShippingFeesList(shippingFees);
|
|
|
+ }
|
|
|
//附件
|
|
|
List<ShippingFile> shippingFile = shippingFileMapper.selectList(new LambdaQueryWrapper<ShippingFile>().eq(ShippingFile::getPid, shippingBill.getId()));
|
|
|
- shippingBill.setShippingFileList(shippingFile);
|
|
|
- return shippingBill;
|
|
|
+ shippingBillDetail.setShippingFileList(shippingFile);
|
|
|
+ return shippingBillDetail;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@@ -158,29 +165,259 @@ public class ShippingBillServiceImpl extends ServiceImpl<ShippingBillMapper, Shi
|
|
|
}
|
|
|
//箱型箱量
|
|
|
if (ObjectUtils.isNotNull(shippingBill.getShippingBoxTypeList())) {
|
|
|
- for (ShippingBoxType shippingBoxType:shippingBill.getShippingBoxTypeList()) {
|
|
|
+ int boxQuantity = 0;
|
|
|
+ for (ShippingBoxType shippingBoxType : shippingBill.getShippingBoxTypeList()) {
|
|
|
+ shippingBoxType.setBoxTypeName(shippingBoxType.get$boxTypeId());
|
|
|
+ if (shippingBoxType.getId() == null) {
|
|
|
+ shippingBoxType.setCreateUser(AuthUtil.getUserId());
|
|
|
+ shippingBoxType.setCreateTime(new Date());
|
|
|
+ shippingBoxType.setTenantId(AuthUtil.getTenantId());
|
|
|
+ shippingBoxType.setPid(shippingBill.getId());
|
|
|
+ shippingBoxTypeMapper.insert(shippingBoxType);
|
|
|
+ } else {
|
|
|
+ shippingBoxType.setUpdateUser(AuthUtil.getUserId());
|
|
|
+ shippingBoxType.setUpdateTime(new Date());
|
|
|
+ shippingBoxTypeMapper.updateById(shippingBoxType);
|
|
|
+ }
|
|
|
+ if (ObjectUtils.isNotNull(shippingBoxType.getBoxQuantity())) {
|
|
|
+ boxQuantity += shippingBoxType.getBoxQuantity();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //箱量
|
|
|
+ shippingBill.setShippingBoxTypeNumber(boxQuantity);
|
|
|
+ //TEU
|
|
|
+ StringBuilder boxTypeNumber = new StringBuilder();
|
|
|
+ List<String> boxType = shippingBill.getShippingBoxTypeList().stream().filter(e -> ObjectUtils.isNotNull(e.getBoxTypeName())).map(ShippingBoxType::getBoxTypeName).distinct().collect(Collectors.toList());
|
|
|
+ for (String boxType_ : boxType) {
|
|
|
+ if (ObjectUtils.isNotNull(boxType) && boxType.size() > 0) {
|
|
|
+ List<ShippingBoxType> boxTypeSize = shippingBill.getShippingBoxTypeList().stream().filter(e -> ObjectUtils.isNotNull(e.getBoxTypeName()) && e.getBoxTypeName().equals(boxType_)).collect(Collectors.toList());
|
|
|
+ if (ObjectUtils.isNotNull(boxTypeSize) && boxTypeSize.size() > 0) {
|
|
|
+ boxTypeNumber.append(boxType_).append("X").append(boxTypeSize.size()).append(",");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (ObjectUtils.isNotNull(boxTypeNumber)) {
|
|
|
+ shippingBill.setShippingBoxTypeTEU(boxTypeNumber.substring(0, boxTypeNumber.length() - 1));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //配箱信息
|
|
|
+ if (ObjectUtils.isNotNull(shippingBill.getShippingMatchBoxList())) {
|
|
|
+ for (ShippingMatchBox shippingMatchBox : shippingBill.getShippingMatchBoxList()) {
|
|
|
+ shippingMatchBox.setBoxTypeName(shippingMatchBox.get$boxTypeId());
|
|
|
+ if (shippingMatchBox.getId() == null) {
|
|
|
+ shippingMatchBox.setCreateUser(AuthUtil.getUserId());
|
|
|
+ shippingMatchBox.setCreateTime(new Date());
|
|
|
+ shippingMatchBox.setTenantId(AuthUtil.getTenantId());
|
|
|
+ shippingMatchBox.setPid(shippingBill.getId());
|
|
|
+ shippingMatchBoxMapper.insert(shippingMatchBox);
|
|
|
+ } else {
|
|
|
+ shippingMatchBox.setUpdateUser(AuthUtil.getUserId());
|
|
|
+ shippingMatchBox.setUpdateTime(new Date());
|
|
|
+ shippingMatchBoxMapper.updateById(shippingMatchBox);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //费用信息
|
|
|
+ if (ObjectUtils.isNotNull(shippingBill.getShippingFeesList())) {
|
|
|
+ for (ShippingFees shippingFees : shippingBill.getShippingFeesList()) {
|
|
|
+ if (shippingFees.getId() == null) {
|
|
|
+ shippingFees.setCreateUser(AuthUtil.getUserId());
|
|
|
+ shippingFees.setCreateTime(new Date());
|
|
|
+ shippingFees.setTenantId(AuthUtil.getTenantId());
|
|
|
+ shippingFees.setPid(shippingBill.getId());
|
|
|
+ shippingFeesMapper.insert(shippingFees);
|
|
|
+ } else {
|
|
|
+ shippingFees.setUpdateUser(AuthUtil.getUserId());
|
|
|
+ shippingFees.setUpdateTime(new Date());
|
|
|
+ shippingFeesMapper.updateById(shippingFees);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //附件
|
|
|
+ if (ObjectUtils.isNotNull(shippingBill.getShippingFileList())) {
|
|
|
+ for (ShippingFile shippingFile : shippingBill.getShippingFileList()) {
|
|
|
+ if (shippingFile.getId() == null) {
|
|
|
+ shippingFile.setCreateUser(AuthUtil.getUserId());
|
|
|
+ shippingFile.setCreateTime(new Date());
|
|
|
+ shippingFile.setTenantId(AuthUtil.getTenantId());
|
|
|
+ shippingFile.setPid(shippingBill.getId());
|
|
|
+ shippingFileMapper.insert(shippingFile);
|
|
|
+ } else {
|
|
|
+ shippingFile.setUpdateUser(AuthUtil.getUserId());
|
|
|
+ shippingFile.setUpdateTime(new Date());
|
|
|
+ shippingFileMapper.updateById(shippingFile);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return shippingBill;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ShippingBill checkShippingBill(ShippingBill shippingBill) {
|
|
|
+ ShippingBill selectShippingBill = baseMapper.selectById(shippingBill.getId());
|
|
|
+ //审批数据
|
|
|
+ AuditProecessDTO auditProecessDTO = new AuditProecessDTO();
|
|
|
+ //获取审批级次
|
|
|
+ List<AuditPathsLevels> auditPathsLevels;
|
|
|
+ // 判断是否有审批流,如果审批流已开启就进入审批流,否则直接走申请通过
|
|
|
+ Integer checkFlag = shippingBill.getCheckFlag();
|
|
|
+ AuditPathsActs pathsActs;
|
|
|
+ if (checkFlag == null) {
|
|
|
+ throw new SecurityException("请核失败:未配置请核标识");
|
|
|
+ }
|
|
|
+
|
|
|
+ //海运出口审批流程
|
|
|
+ if ("HYCK".equals(shippingBill.getBillType()) && checkFlag == 1) {
|
|
|
+ if (shippingBill.getApprovalType().equals("1")) {
|
|
|
+ if (shippingBill.getCheckFlag() == 1 && selectShippingBill.getStatus() != 0) {
|
|
|
+ throw new SecurityException("订单已开启审核,请勿重复提交");
|
|
|
+ }
|
|
|
+ //是否开启流程
|
|
|
+ pathsActs = iCheckClient.getActsByActId(1101, "status");
|
|
|
+ //获取审批信息
|
|
|
+ auditPathsLevels = iCheckClient.listLevelsByActId(1101, "status");
|
|
|
+
|
|
|
+ auditProecessDTO.setProcessType("海运出口单据审批");
|
|
|
+ // 绑定审核类型
|
|
|
+ auditProecessDTO.setCheckType(shippingBill.getBillType() + "-DJ");
|
|
|
+ } else {
|
|
|
+ if (shippingBill.getCheckFlag() == 1 && selectShippingBill.getStatus() != 0) {
|
|
|
+ throw new SecurityException("订单已开启审核,请勿重复提交");
|
|
|
+ }
|
|
|
+ //是否开启流程
|
|
|
+ pathsActs = iCheckClient.getActsByActId(1102, "feeStatus");
|
|
|
+ //获取审批信息
|
|
|
+ auditPathsLevels = iCheckClient.listLevelsByActId(1102, "feeStatus");
|
|
|
|
|
|
+ auditProecessDTO.setProcessType("海运出口费用审批");
|
|
|
+ // 绑定审核类型
|
|
|
+ auditProecessDTO.setCheckType(shippingBill.getBillType() + "-FY");
|
|
|
}
|
|
|
- shippingBill.getShippingBillDetails().setAccountingDeptName(shippingBill.getShippingBillDetails().get$accountingDeptId());//核算部门
|
|
|
- shippingBill.getShippingBillDetails().setShipName(shippingBill.getShippingBillDetails().get$shipId());//船名
|
|
|
- shippingBill.getShippingBillDetails().setBranchPayPlaceName(shippingBill.getShippingBillDetails().get$branchPayPlaceId());//分单付费地点
|
|
|
- shippingBill.getShippingBillDetails().setGoodsName(shippingBill.getShippingBillDetails().get$goodsId());//货物
|
|
|
- shippingBill.getShippingBillDetails().setOperatorName(shippingBill.getShippingBillDetails().get$operatorId());//操作员
|
|
|
- shippingBill.getShippingBillDetails().setMainPayPlaceName(shippingBill.getShippingBillDetails().get$mainPayPlaceId());//主单付费地点
|
|
|
- shippingBill.getShippingBillDetails().setVoyageNumber(shippingBill.getShippingBillDetails().get$voyageNumberId());//航次
|
|
|
- if (shippingBill.getShippingBillDetails().getId() == null) {
|
|
|
- shippingBill.getShippingBillDetails().setCreateUser(AuthUtil.getUserId());
|
|
|
- shippingBill.getShippingBillDetails().setCreateTime(new Date());
|
|
|
- shippingBill.getShippingBillDetails().setTenantId(AuthUtil.getTenantId());
|
|
|
- shippingBill.getShippingBillDetails().setPid(shippingBill.getId());
|
|
|
- shippingBillDetailsMapper.insert(shippingBill.getShippingBillDetails());
|
|
|
+
|
|
|
+ /* 进口返程审批流程 */
|
|
|
+ } else if ("HYJK".equals(shippingBill.getBillType()) && checkFlag == 2) {
|
|
|
+ if (shippingBill.getApprovalType().equals("1")) {
|
|
|
+ if (shippingBill.getCheckFlag() == 1 && selectShippingBill.getStatus() != 0) {
|
|
|
+ throw new SecurityException("订单已开启审核,请勿重复提交");
|
|
|
+ }
|
|
|
+ //是否开启流程
|
|
|
+ pathsActs = iCheckClient.getActsByActId(1103, "status");
|
|
|
+ //获取审批信息
|
|
|
+ auditPathsLevels = iCheckClient.listLevelsByActId(1103, "status");
|
|
|
+
|
|
|
+ auditProecessDTO.setProcessType("海运进口单据审批");
|
|
|
+ // 绑定审核类型
|
|
|
+ auditProecessDTO.setCheckType(shippingBill.getBillType() + "-DJ");
|
|
|
} else {
|
|
|
- shippingBill.getShippingBillDetails().setUpdateUser(AuthUtil.getUserId());
|
|
|
- shippingBill.getShippingBillDetails().setUpdateTime(new Date());
|
|
|
- shippingBillDetailsMapper.updateById(shippingBill.getShippingBillDetails());
|
|
|
+ if (shippingBill.getCheckFlag() == 1 && selectShippingBill.getStatus() != 0) {
|
|
|
+ throw new SecurityException("订单已开启审核,请勿重复提交");
|
|
|
+ }
|
|
|
+ //是否开启流程
|
|
|
+ pathsActs = iCheckClient.getActsByActId(1104, "feeStatus");
|
|
|
+ //获取审批信息
|
|
|
+ auditPathsLevels = iCheckClient.listLevelsByActId(1104, "feeStatus");
|
|
|
+
|
|
|
+ auditProecessDTO.setProcessType("海运进口费用审批");
|
|
|
+ // 绑定审核类型
|
|
|
+ auditProecessDTO.setCheckType(shippingBill.getBillType() + "-FY");
|
|
|
+ }
|
|
|
+
|
|
|
+ } else {
|
|
|
+ throw new SecurityException("请核失败:请核标识设置不正确");
|
|
|
+ }
|
|
|
+
|
|
|
+ // 没开启审批流直接走 通过流程
|
|
|
+ if (pathsActs == null || pathsActs.getIsEnable() == 2) {
|
|
|
+ throw new SecurityException("当前租户未查询到审批流配置");
|
|
|
+ } else {
|
|
|
+
|
|
|
+ //修改单据状态
|
|
|
+ selectShippingBill.setStatus(1);
|
|
|
+ baseMapper.updateById(selectShippingBill);
|
|
|
+
|
|
|
+ if (CollectionUtils.isEmpty(auditPathsLevels)) {
|
|
|
+ throw new SecurityException("开启审批失败:未查询到审批信息");
|
|
|
+ }
|
|
|
+
|
|
|
+ // 追加跳转路由url
|
|
|
+ auditProecessDTO.setUrl(shippingBill.getUrl());
|
|
|
+ auditProecessDTO.setPageStatus(shippingBill.getPageStatus());
|
|
|
+ auditProecessDTO.setPageLabel(shippingBill.getPageLabel());
|
|
|
+
|
|
|
+ BigDecimal payAmount = new BigDecimal("0.00");
|
|
|
+ BigDecimal receivableAmount = new BigDecimal("0.00");
|
|
|
+ if (ObjectUtils.isNotNull(shippingBill.getShippingFeesList()) && shippingBill.getShippingFeesList().size() > 0) {
|
|
|
+ for (ShippingFees shippingFees : shippingBill.getShippingFeesList()) {
|
|
|
+ if (shippingFees.getIsCheck() == 0) {
|
|
|
+ if (shippingFees.getFeesType() == 1) {
|
|
|
+ receivableAmount = receivableAmount.add(shippingFees.getAmount());
|
|
|
+ } else if (shippingFees.getFeesType() == 2) {
|
|
|
+ payAmount = payAmount.add(shippingFees.getAmount());
|
|
|
+ }
|
|
|
+ shippingFees.setIsCheck(2);
|
|
|
+ shippingFees.setUpdateUser(AuthUtil.getUserId());
|
|
|
+ shippingFees.setUpdateUserName(AuthUtil.getUserName());
|
|
|
+ shippingFees.setUpdateTime(new Date());
|
|
|
+ shippingFeesMapper.updateById(shippingFees);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ auditProecessDTO.setPayAmount(payAmount);
|
|
|
+ auditProecessDTO.setReceivableAmount(receivableAmount);
|
|
|
+ //审批数据
|
|
|
+ auditProecessDTO.setMorderNo(shippingBill.getShippingBillDetails().getContractNo());
|
|
|
+ auditProecessDTO.setOrderRemark(shippingBill.getRemarks());
|
|
|
+ auditProecessDTO.setCorpId(shippingBill.getCorpId());
|
|
|
+ auditProecessDTO.setCheckType(shippingBill.getBillType());
|
|
|
+ auditProecessDTO.setPathsLevelsList(auditPathsLevels);
|
|
|
+ auditProecessDTO.setActId(1);
|
|
|
+ auditProecessDTO.setSrcBillId(shippingBill.getId());
|
|
|
+ auditProecessDTO.setBillId(shippingBill.getId());
|
|
|
+ auditProecessDTO.setBillNo(shippingBill.getSysNo());
|
|
|
+ auditProecessDTO.setSendUserId(AuthUtil.getUserId());
|
|
|
+ auditProecessDTO.setSendName(AuthUtil.getUserName());
|
|
|
+ auditProecessDTO.setSendTime(new Date());
|
|
|
+ R financeProcess = iCheckClient.createFinanceProcess(auditProecessDTO);
|
|
|
+ if (!financeProcess.isSuccess()) {
|
|
|
+ throw new SecurityException("操作失败,请联系管理员");
|
|
|
}
|
|
|
}
|
|
|
return shippingBill;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public R passCheck(Long id) {
|
|
|
+ ShippingBill shippingBill = baseMapper.selectById(id);
|
|
|
+ if (shippingBill == null) {
|
|
|
+ throw new SecurityException("审批通过失败");
|
|
|
+ }
|
|
|
+ shippingBill.setStatus(3);
|
|
|
+ baseMapper.updateById(shippingBill);
|
|
|
+ //入库生成账单
|
|
|
+// this.paymentApply(shippingBill, shippingBill.getBillType(), shippingBill.getBillType());
|
|
|
+ return R.success("操作成功");
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R underReview(Long id) {
|
|
|
+ ShippingBill shippingBill = baseMapper.selectById(id);
|
|
|
+ if (shippingBill == null) {
|
|
|
+ throw new SecurityException("审批通过失败");
|
|
|
+ }
|
|
|
+ shippingBill.setStatus(2);
|
|
|
+ baseMapper.updateById(shippingBill);
|
|
|
+ return R.success("操作成功");
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R passCancel(Long id) {
|
|
|
+ ShippingBill shippingBill = baseMapper.selectById(id);
|
|
|
+ if (shippingBill == null) {
|
|
|
+ throw new SecurityException("审批通过失败");
|
|
|
+ }
|
|
|
+ shippingBill.setStatus(0);
|
|
|
+ baseMapper.updateById(shippingBill);
|
|
|
+ return R.success("操作成功");
|
|
|
+ }
|
|
|
+
|
|
|
}
|