diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxRaffleActivityController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxRaffleActivityController.java index d0115a92e..4d0b15326 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxRaffleActivityController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxRaffleActivityController.java @@ -299,7 +299,7 @@ public class WxRaffleActivityController extends BaseController { @ApiOperation("抽奖") @PostMapping("recordItemSave") - public ResultData recordItemSave(@RequestBody WxRaffleActivityRecordItem wxCashBackActivityRecord) { + public ResultData recordItemSave(@RequestBody WxRaffleActivityRecord wxCashBackActivityRecord) { TenantEntity tenantEntity = getTenantInfo(); wxCashBackActivityRecord.updateTenantInfo(tenantEntity); wxCashBackActivityService.saveOrUpdateRecordItem(wxCashBackActivityRecord); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxRaffleActivityRecordItemMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxRaffleActivityRecordItemMapper.java index 24cda59e4..8a0e471cc 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxRaffleActivityRecordItemMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxRaffleActivityRecordItemMapper.java @@ -23,5 +23,7 @@ public interface WxRaffleActivityRecordItemMapper extends CommonMapper selectMerchantRecords(WxRaffleActivityRecordItem wxCashBackActivity); + + void deleteByRecordId(WxRaffleActivityRecordItem wxCashBackActivity); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxRaffleActivityService.java b/mallinkService/src/main/java/com/iformall/service/WxRaffleActivityService.java index 44ab9d8b7..57d59cbbb 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxRaffleActivityService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxRaffleActivityService.java @@ -72,7 +72,7 @@ public interface WxRaffleActivityService { void auditRecord(WxRaffleActivityRecord record); - void saveOrUpdateRecordItem(WxRaffleActivityRecordItem record); + void saveOrUpdateRecordItem(WxRaffleActivityRecord record); void calcuteMoney(WxRaffleActivityRecordItem record); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxRaffleActivityServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxRaffleActivityServiceImpl.java index 71cc22c7a..6aad959c6 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRaffleActivityServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRaffleActivityServiceImpl.java @@ -378,16 +378,30 @@ public class WxRaffleActivityServiceImpl implements WxRaffleActivityService { } @Override - public void saveOrUpdateRecordItem(WxRaffleActivityRecordItem record) { - final IdWorker idWorker = IdWorker.get(); - if (null == record.getId()) { - record.setId(idWorker.nextId()); - record.setCreateDate(new Date()); - record.setUpdateDate(new Date()); - wxActivityRecordItemMapper.insert(record); - }else { - record.setUpdateDate(new Date()); - wxActivityRecordItemMapper.updateById(record); + public void saveOrUpdateRecordItem(WxRaffleActivityRecord record) { + WxRaffleActivityRecord r = wxActivityRecordMapper.selectById(record.getId(), record.getTenantId()); + if (null == r) { + return; + } + + WxRaffleActivityRecordItem ri = new WxRaffleActivityRecordItem(); + ri.updateTenantInfo(r); + ri.setActivityId(r.getActivityId()); + ri.setRecordId(r.getId()); + wxActivityRecordItemMapper.deleteByRecordId(ri); + + if (null != record.getRecordItemList() && record.getRecordItemList().size() > 0 ) { + final IdWorker idWorker = IdWorker.get(); + for (int i = 0 ;i < record.getRecordItemList().size() ; i ++) { + WxRaffleActivityRecordItem _ri = record.getRecordItemList().get(i); + _ri.setId(idWorker.nextId()); + _ri.setActivityId(r.getActivityId()); + _ri.setMerchantId(r.getMerchantId()); + _ri.setRecordId(r.getId()); + _ri.updateTenantInfo(r); + calcuteMoney(_ri); + wxActivityRecordItemMapper.insert(_ri); + } } } diff --git a/mallinkService/src/main/resources/mapper/WxRaffleActivityRecordItemMapper.xml b/mallinkService/src/main/resources/mapper/WxRaffleActivityRecordItemMapper.xml index cfc4c0e59..bd20c188b 100644 --- a/mallinkService/src/main/resources/mapper/WxRaffleActivityRecordItemMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxRaffleActivityRecordItemMapper.xml @@ -118,4 +118,8 @@ group by merchant_id + + + delete from wx_raffle_activity_record_item + \ No newline at end of file