更新全选打包

This commit is contained in:
19991905653 2024-04-03 15:39:24 +08:00
parent 95e68d745e
commit baedf85e77
6 changed files with 39 additions and 11 deletions

View File

@ -48,6 +48,7 @@ public interface TbCashierCartMapper {
int updateByOrderId(@Param("orderId") String orderId,@Param("status") String status);
QueryCartPo selectProductNumByMarketId(@Param("day") String day, @Param("shopId") String shopId, @Param("masterId") String masterId);
List<TbCashierCart> selectAllByMarketId(@Param("day") String day, @Param("shopId") String shopId, @Param("masterId") String masterId);
void updateIsGift(@Param("maskerId")String maskerId,@Param("status")String status,@Param("shopId") Integer shopId,@Param("day") String day);

View File

@ -12,5 +12,6 @@ public class OrderDetailPo {
private String productName;
private String status;
private Integer productNum;
private Integer returnNum;
private BigDecimal orderAmount;
}

View File

@ -42,6 +42,8 @@ public class DutyService {
private ShopUserDutyPayMapper shopUserDutyPayMapper;
@Autowired
private TbProductSkuMapper productSkuMapper;
@Autowired
private CloudPrinterService cloudPrinterService;
@Transactional(rollbackFor = Exception.class)
public void exect(String message) {
try {
@ -265,6 +267,7 @@ public class DutyService {
JSONObject tokenJson = TokenUtil.parseParamFromToken(tbToken.getToken());
Integer shopId = tokenJson.getInteger("shopId");
Integer staffId = tokenJson.getInteger("staffId");
cloudPrinterService.handoverprintData(token,day,"");
shopUserDutyMapper.updateStatusByTokenId(day,shopId,staffId);
}
}

View File

@ -573,7 +573,20 @@ public class OrderService {
if (StringUtils.isEmpty(cartVo.getStatus())) {
cartVo.setStatus("false");
}
cashierCartMapper.updateIsGift(cartVo.getMasterId(), cartVo.getStatus(), Integer.valueOf(cartVo.getShopId()), day);
List<TbCashierCart> list = cashierCartMapper.selectAllByMarketId(day,cartVo.getShopId(),cartVo.getMasterId());
for (TbCashierCart cashierCart:list){
TbProductWithBLOBs product = tbProductMapper.selectByPrimaryKey(Integer.valueOf(cashierCart.getProductId()));
if ("true".equals(cartVo.getStatus())){
cashierCart.setTotalAmount(new BigDecimal(cashierCart.getTotalNumber()).multiply(cashierCart.getSalePrice().add(product.getPackFee())));
cashierCart.setPackFee(new BigDecimal(cashierCart.getTotalNumber()).multiply(product.getPackFee()));
}else {
cashierCart.setTotalAmount(new BigDecimal(cashierCart.getTotalNumber()).multiply(cashierCart.getSalePrice()));
cashierCart.setPackFee(BigDecimal.ZERO);
}
cashierCart.setIsPack(cartVo.getStatus());
cashierCartMapper.updateByPrimaryKeySelective(cashierCart);
}
// cashierCartMapper.updateIsGift(cartVo.getMasterId(), cartVo.getStatus(), Integer.valueOf(cartVo.getShopId()), day);
return Result.success(CodeEnum.SUCCESS);
}

View File

@ -501,7 +501,7 @@ public class PayService {
BigDecimal totalAmount=BigDecimal.ZERO;
BigDecimal packAMount=orderInfo.getPackFee();
BigDecimal packAMount=BigDecimal.ZERO;
BigDecimal saleAmount=BigDecimal.ZERO;
BigDecimal feeAmount=BigDecimal.ZERO;
BigDecimal payAmount=BigDecimal.ZERO;
@ -519,9 +519,13 @@ public class PayService {
// List<ReturnWTZInfo.ReturnDetail> details=new ArrayList<>();
Map<Integer,TbOrderDetail> map1 = new HashMap<>();
Map<Integer,Integer> map1 = new HashMap<>();
for (TbOrderDetail orderDetail:list){
map1.put(orderDetail.getId(),orderDetail);
if (Objects.isNull(orderDetail.getNum())){
map1.put(orderDetail.getId(),0);
}else {
map1.put(orderDetail.getId(),orderDetail.getNum());
}
}
for (TbOrderDetail it : orderDetails) {
it=tbOrderDetailMapper.selectByPrimaryKey(it.getId());
@ -529,25 +533,30 @@ public class PayService {
if (it.getStatus().equals("refund")) {
continue;
}
if (map1.get(it.getId()).getNum() > it.getNum()-it.getReturnNum()){
if (map1.get(it.getId()) > it.getNum()-it.getReturnNum()){
throw new MsgException("可退数量:"+ (it.getNum()-it.getReturnNum()));
}
if (map1.get(it.getId()) == 0){
map1.put(it.getId(),it.getNum());
}
OrderDetailPo detailPo = new OrderDetailPo();
// totalAmount = totalAmount.add(it.getPriceAmount());
totalAmount = totalAmount.add(it.getPriceAmount().divide(new BigDecimal(it.getNum()),2,BigDecimal.ROUND_DOWN).multiply(new BigDecimal(map1.get(it.getId()).getNum())));
totalAmount = totalAmount.add(it.getPriceAmount().divide(new BigDecimal(it.getNum()),2,BigDecimal.ROUND_DOWN).multiply(new BigDecimal(map1.get(it.getId()))));
saleAmount = saleAmount.add(it.getPrice());
payAmount=payAmount.add(it.getPriceAmount().divide(new BigDecimal(it.getNum()),2,BigDecimal.ROUND_DOWN).multiply(new BigDecimal(map1.get(it.getId()).getNum())));
payAmount=payAmount.add(it.getPriceAmount().divide(new BigDecimal(it.getNum()),2,BigDecimal.ROUND_DOWN).multiply(new BigDecimal(map1.get(it.getId()))));
// payAmount=payAmount.add(it.getPriceAmount());
packAMount = packAMount.add(it.getPackAmount().divide(new BigDecimal(it.getNum()),2,BigDecimal.ROUND_DOWN).multiply(new BigDecimal(map1.get(it.getId()))));
detailPo.setId(it.getId());
if (map1.get(it.getId()).getNum()+it.getReturnNum() >= it.getNum()){
if (map1.get(it.getId())+it.getReturnNum() >= it.getNum()){
detailPo.setStatus("refund");
}else {
detailPo.setStatus("closed");
}
detailPo.setReturnNum(map1.get(it.getId()));
detailPos.add(detailPo);
it.setNum(map1.get(it.getId()).getNum());
it.setNum(map1.get(it.getId()));
it.setReturnNum(0);
it.setStatus("closed");
it.setCreateTime(new Date());

View File

@ -381,8 +381,9 @@
<select id="selectByOrderId" resultMap="BaseResultMap">
select * from tb_cashier_cart where order_id=#{orderId} and `status`=#{status}
</select>
<select id="selectAllByMarketId" resultType="com.chaozhanggui.system.cashierservice.entity.TbCashierCart">
select * from tb_cashier_cart where master_id = #{maskerId} and trade_day = #{day} and shop_id = #{shopId} and status = 'create'
</select>
</mapper>