|
@@ -6,9 +6,11 @@ import com.github.pagehelper.Page;
|
|
|
import com.tourism.common.core.annotation.MyDataSource;
|
|
|
import com.tourism.common.core.base.dao.BaseDaoMapper;
|
|
|
import com.tourism.common.core.base.service.BaseService;
|
|
|
+import com.tourism.common.core.constant.ErrorCodeEnum;
|
|
|
import com.tourism.common.core.constant.GlobalDeletedFlag;
|
|
|
import com.tourism.common.core.object.CallResult;
|
|
|
import com.tourism.common.core.object.MyRelationParam;
|
|
|
+import com.tourism.common.core.object.ResponseResult;
|
|
|
import com.tourism.common.core.util.MyModelUtil;
|
|
|
import com.tourism.common.dict.service.GlobalDictService;
|
|
|
import com.tourism.common.sequence.wrapper.IdGeneratorWrapper;
|
|
@@ -16,12 +18,16 @@ import com.tourism.webadmin.app.website.dto.TourGroupUserToWebDto;
|
|
|
import com.tourism.webadmin.back.dao.TourOrderMapper;
|
|
|
import com.tourism.webadmin.back.dto.TourOrderDto;
|
|
|
import com.tourism.webadmin.back.model.TourOrder;
|
|
|
+import com.tourism.webadmin.back.model.TourProjectGroupPurchaseRebate;
|
|
|
import com.tourism.webadmin.back.model.TourUser;
|
|
|
+import com.tourism.webadmin.back.model.constant.GroupPurchaseRebate;
|
|
|
import com.tourism.webadmin.back.service.TourOrderPassenageService;
|
|
|
import com.tourism.webadmin.back.service.TourOrderService;
|
|
|
+import com.tourism.webadmin.back.service.TourProjectGroupPurchaseRebateService;
|
|
|
import com.tourism.webadmin.back.service.TourismProjectService;
|
|
|
import com.tourism.webadmin.config.DataSourceType;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.apache.poi.hpsf.Decimal;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
@@ -50,6 +56,8 @@ public class TourOrderServiceImpl extends BaseService<TourOrder, Long> implement
|
|
|
private TourismProjectService tourismProjectService;
|
|
|
@Autowired
|
|
|
private GlobalDictService globalDictService;
|
|
|
+ @Autowired
|
|
|
+ private TourProjectGroupPurchaseRebateService tourProjectGroupPurchaseRebateService;
|
|
|
|
|
|
/**
|
|
|
* 返回当前Service的主表Mapper对象。
|
|
@@ -158,4 +166,34 @@ public class TourOrderServiceImpl extends BaseService<TourOrder, Long> implement
|
|
|
tourOrder.setDataState(GlobalDeletedFlag.NORMAL);
|
|
|
return tourOrder;
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 更新参与拼团的其他订单价格
|
|
|
+ * @param userId 用户id groupPurchaseProgressId 拼团id
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public BigDecimal getTourUserRebate(Long userId, Long groupPurchaseProgressId){
|
|
|
+ return tourOrderMapper.getTourUserRebate(userId, groupPurchaseProgressId);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 订单进行核销操作
|
|
|
+ * @param tourOrderDto 订单Dto
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public void clearRebate(TourOrderDto tourOrderDto,TourOrder tourOrder){
|
|
|
+ //返利记录加一条记录
|
|
|
+ TourProjectGroupPurchaseRebate tourProjectGroupPurchaseRebate = new TourProjectGroupPurchaseRebate();
|
|
|
+ tourProjectGroupPurchaseRebate.setUserId(tourOrder.getCreateUserId());
|
|
|
+ tourProjectGroupPurchaseRebate.setGroupPurchaseProgressId(tourOrder.getGroupPurchaseProgressId());
|
|
|
+ tourProjectGroupPurchaseRebate.setOrderId(tourOrder.getId());
|
|
|
+ tourProjectGroupPurchaseRebate.setPrice(BigDecimal.ZERO.subtract(tourOrderDto.getRebatePrice()));
|
|
|
+ tourProjectGroupPurchaseRebate.setPriceUnit(tourOrder.getCurrency());
|
|
|
+ tourProjectGroupPurchaseRebate.setReason(GroupPurchaseRebate.SYSTEM_RETURN_ZERO);
|
|
|
+ tourProjectGroupPurchaseRebateService.saveNew(tourProjectGroupPurchaseRebate);
|
|
|
+ //订单金额进行金额扣除
|
|
|
+ tourOrder.setTotalAmount(tourOrder.getTotalAmount().subtract(tourOrderDto.getRebatePrice()));
|
|
|
+ updateById(tourOrder);
|
|
|
+ }
|
|
|
}
|