diff --git a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysImportFanRecordController.java b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysImportFanRecordController.java index 3e1202771..e85a65438 100644 --- a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysImportFanRecordController.java +++ b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysImportFanRecordController.java @@ -4,6 +4,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import com.stdiet.common.utils.StringUtils; import com.stdiet.custom.domain.SysImportFanWxAccount; import com.stdiet.custom.domain.SysWxSaleAccount; import com.stdiet.custom.service.ISysImportFanWxAccountService; @@ -55,6 +56,12 @@ public class SysImportFanRecordController extends BaseController { startPage(); List list = sysImportFanRecordService.selectSysImportFanRecordList(sysImportFanRecord); + SysImportFanWxAccount sysImportFanWxAccount = new SysImportFanWxAccount(); + if(list != null && list.size() > 0){ + //总导粉量 + int totalNum = sysImportFanRecordService.selectTotalSysImportFanNum(sysImportFanRecord); + list.get(0).setTotalFanNum(totalNum); + } return getDataTable(list); } @@ -89,7 +96,34 @@ public class SysImportFanRecordController extends BaseController @PostMapping public AjaxResult add(@RequestBody SysImportFanRecord sysImportFanRecord) { - return toAjax(sysImportFanRecordService.insertSysImportFanRecord(sysImportFanRecord)); + if(sysImportFanRecord.getImportFanDate() == null){ + return AjaxResult.error("导入日期不存在"); + } + int row = 0; + //批量保存 + if(StringUtils.isNotEmpty(sysImportFanRecord.getImportFanChannels() )){ + String[] importFanChannelArray = sysImportFanRecord.getImportFanChannels().split(","); + String[] importFanLiveArray = sysImportFanRecord.getImportFanLives().split(","); + String[] wxAccountIdArray = sysImportFanRecord.getWxAccountIds().split(","); + String[] fanNumArray = sysImportFanRecord.getFanNums().split(","); + int index = -1; + for (String importFanChannel : importFanChannelArray) { + index++; + if(StringUtils.isEmpty(importFanChannel)){ + continue; + } + sysImportFanRecord.setImportFanChannel(Long.parseLong(importFanChannel)); + sysImportFanRecord.setImportFanLive(StringUtils.isEmpty(importFanLiveArray[index]) ? 0L : Long.parseLong(importFanLiveArray[index])); + sysImportFanRecord.setWxAccountId(Long.parseLong(wxAccountIdArray[index])); + sysImportFanRecord.setFanNum(Long.parseLong(fanNumArray[index])); + row = sysImportFanRecordService.insertSysImportFanRecord(sysImportFanRecord); + } + }else{ + if(sysImportFanRecord.getImportFanChannel() != null){ + row = sysImportFanRecordService.insertSysImportFanRecord(sysImportFanRecord); + } + } + return toAjax(row); } /** diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysImportFanRecord.java b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysImportFanRecord.java index 7c9222937..bd3480d6c 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysImportFanRecord.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysImportFanRecord.java @@ -52,4 +52,17 @@ public class SysImportFanRecord extends BaseEntity private String liveNutritionistName; private List> wxAccountList; + + + private String importFanChannels; + + private String importFanLives; + + private String wxAccountIds; + + private String fanNums; + + + //总进粉数量 + private Integer totalFanNum; } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysImportFanRecordMapper.java b/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysImportFanRecordMapper.java index eb430d355..42a83f3c9 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysImportFanRecordMapper.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysImportFanRecordMapper.java @@ -65,4 +65,7 @@ public interface SysImportFanRecordMapper * @return */ public SysImportFanRecord getFanRecordByChannelLive(SysImportFanRecord sysImportFanRecord); + + //查询总导粉数量 + int selectTotalSysImportFanNum(SysImportFanRecord sysImportFanRecord); } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysImportFanWxAccountMapper.java b/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysImportFanWxAccountMapper.java index eaef49511..1a87c2f4a 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysImportFanWxAccountMapper.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysImportFanWxAccountMapper.java @@ -74,4 +74,11 @@ public interface SysImportFanWxAccountMapper * @return */ List> getTotalImportFanNum(SysImportFanWxAccount sysImportFanWxAccount); + + /** + * 根据记录ID删除对应所有微信 + * @param ids + * @return + */ + int deleteSysImportFanWxAccountByFanRecordIds(Long[] ids); } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysImportFanRecordService.java b/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysImportFanRecordService.java index 70ece7c90..d2b370823 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysImportFanRecordService.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysImportFanRecordService.java @@ -58,4 +58,7 @@ public interface ISysImportFanRecordService * @return 结果 */ public int deleteSysImportFanRecordById(Long id); + + //查询总导粉数量 + int selectTotalSysImportFanNum(SysImportFanRecord sysImportFanRecord); } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysImportFanWxAccountService.java b/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysImportFanWxAccountService.java index 78277a5dd..4686fc880 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysImportFanWxAccountService.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysImportFanWxAccountService.java @@ -74,4 +74,11 @@ public interface ISysImportFanWxAccountService * @return */ List> getTotalImportFanNum(SysImportFanWxAccount sysImportFanWxAccount); + + /** + * 根据记录ID删除对应所有微信 + * @param ids + * @return + */ + int deleteSysImportFanWxAccountByFanRecordIds(Long[] ids); } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysImportFanRecordServiceImpl.java b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysImportFanRecordServiceImpl.java index 8ccb0d8e8..9c5fb2be2 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysImportFanRecordServiceImpl.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysImportFanRecordServiceImpl.java @@ -107,7 +107,11 @@ public class SysImportFanRecordServiceImpl implements ISysImportFanRecordService @Override public int deleteSysImportFanRecordByIds(Long[] ids) { - return sysImportFanRecordMapper.deleteSysImportFanRecordByIds(ids); + int row = sysImportFanRecordMapper.deleteSysImportFanRecordByIds(ids); + if(row > 0){ + sysImportFanWxAccountService.deleteSysImportFanWxAccountByFanRecordIds(ids); + } + return row; } /** @@ -119,6 +123,16 @@ public class SysImportFanRecordServiceImpl implements ISysImportFanRecordService @Override public int deleteSysImportFanRecordById(Long id) { - return sysImportFanRecordMapper.deleteSysImportFanRecordById(id); + int row = sysImportFanRecordMapper.deleteSysImportFanRecordById(id); + if(row > 0){ + Long[] ids = {id}; + sysImportFanWxAccountService.deleteSysImportFanWxAccountByFanRecordIds(ids); + } + return row; + } + + //查询总导粉数量 + public int selectTotalSysImportFanNum(SysImportFanRecord sysImportFanRecord){ + return sysImportFanRecordMapper.selectTotalSysImportFanNum(sysImportFanRecord); } } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysImportFanWxAccountServiceImpl.java b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysImportFanWxAccountServiceImpl.java index ba564cfd4..ff8d52037 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysImportFanWxAccountServiceImpl.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysImportFanWxAccountServiceImpl.java @@ -114,4 +114,13 @@ public class SysImportFanWxAccountServiceImpl implements ISysImportFanWxAccountS public List> getTotalImportFanNum(SysImportFanWxAccount sysImportFanWxAccount){ return sysImportFanWxAccountMapper.getTotalImportFanNum(sysImportFanWxAccount); } + + /** + * 根据记录ID删除对应所有微信 + * @param ids + * @return + */ + public int deleteSysImportFanWxAccountByFanRecordIds(Long[] ids){ + return sysImportFanWxAccountMapper.deleteSysImportFanWxAccountByFanRecordIds(ids); + } } \ No newline at end of file diff --git a/stdiet-custom/src/main/resources/mapper/custom/SysImportFanRecordMapper.xml b/stdiet-custom/src/main/resources/mapper/custom/SysImportFanRecordMapper.xml index 4f6ea7699..f7966e605 100644 --- a/stdiet-custom/src/main/resources/mapper/custom/SysImportFanRecordMapper.xml +++ b/stdiet-custom/src/main/resources/mapper/custom/SysImportFanRecordMapper.xml @@ -54,7 +54,16 @@ where fc.del_flag = 0 and fc.import_fan_date = #{importFanDate} and fc.import_fan_channel = #{importFanChannel} - and fc.import_fan_live = #{importFanLive} + order by fc.import_fan_date desc,fc.import_fan_channel asc + + + + + + update sys_import_fan_wx_account set del_flag = 1 where import_fan_record_id in + + #{id} + + + \ No newline at end of file diff --git a/stdiet-ui/src/components/ImportFanRecord/ImportFan/index.vue b/stdiet-ui/src/components/ImportFanRecord/ImportFan/index.vue index b4a9e248a..7fa8f0234 100644 --- a/stdiet-ui/src/components/ImportFanRecord/ImportFan/index.vue +++ b/stdiet-ui/src/components/ImportFanRecord/ImportFan/index.vue @@ -1,6 +1,7 @@ - +