From c8914d554fa0e67ed32563d3ecd2c20095659915 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E7=AB=B9=E7=BA=A2?= Date: Thu, 15 Jun 2023 09:39:56 +0800 Subject: [PATCH] =?UTF-8?q?=E9=AB=98=E7=BA=A7=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cool/store/dao/HyAdvancedSettingDAO.java | 37 ++++++++++ .../store/mapper/HyAdvancedSettingMapper.java | 6 ++ .../mapper/HyAdvancedSettingMapper.xml | 30 +++----- .../store/request/AdvancedSettingRequest.java | 2 - .../com/cool/store/vo/AdvancedSettingVO.java | 2 - .../com/cool/store/vo/OrganizationVO.java | 2 +- .../store/service/AdvanceSettingService.java | 33 +++++++++ .../impl/AdvanceSettingServiceImpl.java | 63 +++++++++++++++++ .../store/service/impl/ZoneServiceImpl.java | 70 +++++++++++++++---- .../controller/AdvanceSettingController.java | 46 ++++++++++++ .../cool/store/controller/DeskController.java | 18 ----- .../cool/store/controller/ZoneController.java | 24 +++++-- 12 files changed, 268 insertions(+), 65 deletions(-) create mode 100644 coolstore-partner-dao/src/main/java/com/cool/store/dao/HyAdvancedSettingDAO.java create mode 100644 coolstore-partner-service/src/main/java/com/cool/store/service/AdvanceSettingService.java create mode 100644 coolstore-partner-service/src/main/java/com/cool/store/service/impl/AdvanceSettingServiceImpl.java create mode 100644 coolstore-partner-webb/src/main/java/com/cool/store/controller/AdvanceSettingController.java diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyAdvancedSettingDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyAdvancedSettingDAO.java new file mode 100644 index 000000000..2cafa8ee2 --- /dev/null +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyAdvancedSettingDAO.java @@ -0,0 +1,37 @@ +package com.cool.store.dao; + +import com.cool.store.entity.HyAdvancedSettingDO; +import com.cool.store.mapper.HyAdvancedSettingMapper; +import org.apache.ibatis.annotations.Param; +import org.springframework.stereotype.Repository; + +import javax.annotation.Resource; + +/** + * @Author suzhuhong + * @Date 2023/6/14 20:33 + * @Version 1.0 + */ +@Repository +public class HyAdvancedSettingDAO { + + + @Resource + HyAdvancedSettingMapper hyAdvancedSettingMapper; + + + public int insertSelective(HyAdvancedSettingDO record){ + return hyAdvancedSettingMapper.insertSelective(record); + } + + public int updateByPrimaryKeySelective( HyAdvancedSettingDO record){ + return hyAdvancedSettingMapper.updateByPrimaryKeySelective(record); + } + + + public HyAdvancedSettingDO selectAdvanceSetting(){ + return hyAdvancedSettingMapper.selectAdvanceSetting(); + } + + +} diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyAdvancedSettingMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyAdvancedSettingMapper.java index 9e2beea92..48519bc5b 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyAdvancedSettingMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyAdvancedSettingMapper.java @@ -22,4 +22,10 @@ public interface HyAdvancedSettingMapper { * dateTime:2023-05-29 03:49 */ int updateByPrimaryKeySelective(@Param("record") HyAdvancedSettingDO record); + + /** + * 查询高级设置 + * @return + */ + HyAdvancedSettingDO selectAdvanceSetting(); } \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/HyAdvancedSettingMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/HyAdvancedSettingMapper.xml index 490ff459f..e070f52e1 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/HyAdvancedSettingMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/HyAdvancedSettingMapper.xml @@ -16,6 +16,13 @@ id, partner_url, allocation_roles, tencent_video_account, tencent_video_key, create_time, update_time, create_user_id, update_user_id + + + insert into hy_advanced_setting @@ -73,32 +80,11 @@ update hy_advanced_setting - - + set partner_url = #{record.partnerUrl}, - - - allocation_roles = #{record.allocationRoles}, - - tencent_video_account = #{record.tencentVideoAccount}, - - tencent_video_key = #{record.tencentVideoKey}, - - - create_time = #{record.createTime}, - - - update_time = #{record.updateTime}, - - - create_user_id = #{record.createUserId}, - - update_user_id = #{record.updateUserId}, - - where id = #{record.id} \ No newline at end of file diff --git a/coolstore-partner-model/src/main/java/com/cool/store/request/AdvancedSettingRequest.java b/coolstore-partner-model/src/main/java/com/cool/store/request/AdvancedSettingRequest.java index c96394dab..b7b89ef75 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/request/AdvancedSettingRequest.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/request/AdvancedSettingRequest.java @@ -22,6 +22,4 @@ public class AdvancedSettingRequest { private String tencentVideoKey; - private List roleIdList; - } diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/AdvancedSettingVO.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/AdvancedSettingVO.java index bb0da6115..3fd74f2ae 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/vo/AdvancedSettingVO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/vo/AdvancedSettingVO.java @@ -22,6 +22,4 @@ public class AdvancedSettingVO { private String tencentVideoKey; - private List roleIdList; - } diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/OrganizationVO.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/OrganizationVO.java index bb5e727a6..b77fc62f9 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/vo/OrganizationVO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/vo/OrganizationVO.java @@ -14,7 +14,7 @@ import lombok.Data; public class OrganizationVO { @ApiModelProperty("id") - private Long id; + private String id; @ApiModelProperty("组织机构名称") private String name; diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/AdvanceSettingService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/AdvanceSettingService.java new file mode 100644 index 000000000..6b57aece8 --- /dev/null +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/AdvanceSettingService.java @@ -0,0 +1,33 @@ +package com.cool.store.service; + +import com.cool.store.request.AdvancedSettingRequest; +import com.cool.store.vo.AdvancedSettingVO; + +/** + * @Author suzhuhong + * @Date 2023/6/14 20:31 + * @Version 1.0 + */ +public interface AdvanceSettingService { + + + /** + * addAdvanceSetting + * @param userId + * @param advancedSettingRequest + * @return + */ + Boolean addOrUpdateAdvanceSetting(String userId, AdvancedSettingRequest advancedSettingRequest); + + + + /** + * 查询高级设置详情 + * @return + */ + AdvancedSettingVO getAdvancedSettingDetail(); + + + + +} diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/AdvanceSettingServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/AdvanceSettingServiceImpl.java new file mode 100644 index 000000000..2ab4301ac --- /dev/null +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/AdvanceSettingServiceImpl.java @@ -0,0 +1,63 @@ +package com.cool.store.service.impl; + +import com.cool.store.dao.HyAdvancedSettingDAO; +import com.cool.store.entity.HyAdvancedSettingDO; +import com.cool.store.request.AdvancedSettingRequest; +import com.cool.store.service.AdvanceSettingService; +import com.cool.store.vo.AdvancedSettingVO; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +/** + * @Author suzhuhong + * @Date 2023/6/14 20:31 + * @Version 1.0 + */ +@Service +public class AdvanceSettingServiceImpl implements AdvanceSettingService { + + @Resource + HyAdvancedSettingDAO hyAdvancedSettingDAO; + + + @Override + public Boolean addOrUpdateAdvanceSetting(String userId, AdvancedSettingRequest advancedSettingRequest) { + if (advancedSettingRequest.getId()!=null){ + //修改 + updateAdvanceSetting(userId,advancedSettingRequest); + } + HyAdvancedSettingDO hyAdvancedSettingDO = new HyAdvancedSettingDO(); + hyAdvancedSettingDO.setCreateUserId(userId); + hyAdvancedSettingDO.setPartnerUrl(advancedSettingRequest.getPartnerUrl()); + hyAdvancedSettingDO.setTencentVideoAccount(advancedSettingRequest.getTencentVideoAccount()); + hyAdvancedSettingDO.setTencentVideoKey(advancedSettingRequest.getTencentVideoKey()); + hyAdvancedSettingDAO.insertSelective(hyAdvancedSettingDO); + return Boolean.TRUE; + } + + private Boolean updateAdvanceSetting(String userId, AdvancedSettingRequest advancedSettingRequest) { + HyAdvancedSettingDO hyAdvancedSettingDO = new HyAdvancedSettingDO(); + hyAdvancedSettingDO.setCreateUserId(userId); + hyAdvancedSettingDO.setId(advancedSettingRequest.getId()); + hyAdvancedSettingDO.setPartnerUrl(advancedSettingRequest.getPartnerUrl()); + hyAdvancedSettingDO.setTencentVideoAccount(advancedSettingRequest.getTencentVideoAccount()); + hyAdvancedSettingDO.setTencentVideoKey(advancedSettingRequest.getTencentVideoKey()); + hyAdvancedSettingDAO.updateByPrimaryKeySelective(hyAdvancedSettingDO); + return Boolean.TRUE; + } + + @Override + public AdvancedSettingVO getAdvancedSettingDetail() { + HyAdvancedSettingDO hyAdvancedSettingDO = hyAdvancedSettingDAO.selectAdvanceSetting(); + if (hyAdvancedSettingDO==null){ + return null; + } + AdvancedSettingVO advancedSettingVO = new AdvancedSettingVO(); + advancedSettingVO.setId(hyAdvancedSettingDO.getId()); + advancedSettingVO.setPartnerUrl(hyAdvancedSettingDO.getPartnerUrl()); + advancedSettingVO.setTencentVideoAccount(hyAdvancedSettingDO.getTencentVideoAccount()); + advancedSettingVO.setTencentVideoKey(hyAdvancedSettingDO.getTencentVideoKey()); + return advancedSettingVO; + } +} diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ZoneServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ZoneServiceImpl.java index 2f8110b4b..52aae654d 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ZoneServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ZoneServiceImpl.java @@ -1,10 +1,7 @@ package com.cool.store.service.impl; import com.alibaba.fastjson.JSONObject; -import com.cool.store.dao.EnterpriseUserDAO; -import com.cool.store.dao.HyIntendDevMappingDAO; -import com.cool.store.dao.HyIntendDevZoneInfoDAO; -import com.cool.store.dao.HyOpenAreaInfoDAO; +import com.cool.store.dao.*; import com.cool.store.dto.partner.ZoneCheckDTO; import com.cool.store.entity.EnterpriseUserDO; import com.cool.store.entity.HyIntendDevZoneInfoDO; @@ -14,6 +11,9 @@ import com.cool.store.enums.ErrorCodeEnum; import com.cool.store.exception.ServiceException; import com.cool.store.request.IntentAreaSettingRequest; import com.cool.store.service.ZoneService; +import com.cool.store.utils.StringUtil; +import com.cool.store.vo.OpenAreaSingleVO; +import com.cool.store.vo.OrganizationVO; import com.cool.store.vo.ZoneCheckVO; import com.cool.store.vo.ZoneVO; import com.github.pagehelper.PageHelper; @@ -22,10 +22,7 @@ import org.apache.commons.collections4.CollectionUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -47,6 +44,8 @@ public class ZoneServiceImpl implements ZoneService { HyOpenAreaInfoDAO openAreaInfoDAO; @Resource EnterpriseUserDAO enterpriseUserDAO; + @Resource + RegionDAO regionDAO; @@ -116,14 +115,19 @@ public class ZoneServiceImpl implements ZoneService { List updateUserIdList = list.stream().map(HyIntendDevZoneInfoDO::getUpdateUserId).collect(Collectors.toList()); List updateUserList = enterpriseUserDAO.getUserInfoByUserIds(updateUserIdList); Map updateUserNameMap = updateUserList.stream().collect(Collectors.toMap(EnterpriseUserDO::getUserId, EnterpriseUserDO::getName)); - list.forEach(x->{ - ZoneVO zoneVO = new ZoneVO(); - zoneVO.setZoneName(x.getZoneName()); - zoneVO.setId(x.getId()); - zoneVO.setUpdateTime(x.getUpdateTime()); - zoneVO.setUpdateUserId(x.getUpdateUserId()); + Set regionSet = new HashSet<>(); + list.stream().forEach(x->{ + if (StringUtil.isNotEmpty(x.getAssociatedRegionId())){ + List regionIds = JSONObject.parseArray(x.getAssociatedRegionId(), String.class); + regionSet.addAll(regionIds); + } + }); + Map regionMap = regionDAO.getRegionMap(new ArrayList<>(regionSet)); + list.forEach(x->{ + ZoneVO zoneVO = handleZoneVO(regionMap, x); zoneVO.setUpdateUserName(updateUserNameMap.get(x.getUpdateUserId())); + result.add(zoneVO); }); hyIntendDevZoneInfoList.setList(result); return hyIntendDevZoneInfoList; @@ -135,8 +139,44 @@ public class ZoneServiceImpl implements ZoneService { if (hyIntendDevZoneInfoDO==null){ throw new ServiceException(ErrorCodeEnum.ZONE_NOT_EXIST); } + ZoneVO zoneVO = null; + EnterpriseUserDO enterpriseUserDO = enterpriseUserDAO.getUserInfoById(hyIntendDevZoneInfoDO.getUpdateUserId()); + if (StringUtil.isNotEmpty(hyIntendDevZoneInfoDO.getAssociatedRegionId())){ + List regionIds = JSONObject.parseArray(hyIntendDevZoneInfoDO.getAssociatedRegionId(), String.class); + Map regionMap = regionDAO.getRegionMap(regionIds); + zoneVO = handleZoneVO(regionMap, hyIntendDevZoneInfoDO); + zoneVO.setUpdateUserName(enterpriseUserDO.getName()); + } + List zoneCheckDTOS = hyIntendDevMappingDAO.selectByMappingIdList(Arrays.asList(zoneId)); + List openAreaVOS = new ArrayList<>(); + zoneCheckDTOS.forEach(x->{ + OpenAreaSingleVO openAreaSingleVO = new OpenAreaSingleVO(); + openAreaSingleVO.setId(x.getOpenAreaMappingId()); + openAreaVOS.add(openAreaSingleVO); + }); + zoneVO.setOpenAreaVOS(openAreaVOS); + return zoneVO; + } - return null; + + private ZoneVO handleZoneVO(Map regionMap,HyIntendDevZoneInfoDO hyIntendDevZoneInfoDO){ + ZoneVO zoneVO = new ZoneVO(); + zoneVO.setZoneName(hyIntendDevZoneInfoDO.getZoneName()); + zoneVO.setId(hyIntendDevZoneInfoDO.getId()); + zoneVO.setUpdateTime(hyIntendDevZoneInfoDO.getUpdateTime()); + List organizationVOS = new ArrayList<>(); + if (StringUtil.isNotEmpty(hyIntendDevZoneInfoDO.getAssociatedRegionId())){ + List regionIds = JSONObject.parseArray(hyIntendDevZoneInfoDO.getAssociatedRegionId(), String.class); + regionIds.forEach(regionId->{ + OrganizationVO organizationVO = new OrganizationVO(); + organizationVO.setId(regionId); + organizationVO.setName(regionMap.get(regionId)); + organizationVOS.add(organizationVO); + }); + } + zoneVO.setOrgVos(organizationVOS); + zoneVO.setUpdateUserId(hyIntendDevZoneInfoDO.getUpdateUserId()); + return zoneVO; } @Override diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/controller/AdvanceSettingController.java b/coolstore-partner-webb/src/main/java/com/cool/store/controller/AdvanceSettingController.java new file mode 100644 index 000000000..c68ff7049 --- /dev/null +++ b/coolstore-partner-webb/src/main/java/com/cool/store/controller/AdvanceSettingController.java @@ -0,0 +1,46 @@ +package com.cool.store.controller; + +import com.cool.store.context.CurrentUserHolder; +import com.cool.store.dao.HyAdvancedSettingDAO; +import com.cool.store.request.AdvancedSettingRequest; +import com.cool.store.response.ResponseResult; +import com.cool.store.service.AdvanceSettingService; +import com.cool.store.vo.AdvancedSettingVO; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +/** + * @Author suzhuhong + * @Date 2023/6/14 20:48 + * @Version 1.0 + */ +@RestControlle +@Slf4j +public class AdvanceSettingController { + + @Resource + AdvanceSettingService advanceSettingService; + + @GetMapping(path = "/getAdvanceSetting") + @ApiOperation("查询企业高级设置") + public ResponseResult getAdvanceSetting(){ + return ResponseResult.success(advanceSettingService.getAdvancedSettingDetail()); + } + + @GetMapping(path = "/changeAdvanceSetting") + @ApiOperation("新增或者修改高级设置") + public ResponseResult getAdvanceSetting(@RequestBody AdvancedSettingRequest advancedSettingRequest){ + return ResponseResult.success(advanceSettingService.addOrUpdateAdvanceSetting(CurrentUserHolder.getUserId(),advancedSettingRequest)); + } + + + + + +} diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/controller/DeskController.java b/coolstore-partner-webb/src/main/java/com/cool/store/controller/DeskController.java index e9ed2afe4..e8287818f 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/controller/DeskController.java +++ b/coolstore-partner-webb/src/main/java/com/cool/store/controller/DeskController.java @@ -290,24 +290,6 @@ public class DeskController { - @GetMapping(path = "/getAdvanceSetting") - @ApiOperation("查询企业高级设置") - public ResponseResult getAdvanceSetting(){ - - - return ResponseResult.success(); - } - - @GetMapping(path = "/changeAdvanceSetting") - @ApiOperation("新增或者修改高级设置") - public ResponseResult getAdvanceSetting(@RequestBody AdvancedSettingRequest advancedSettingRequest){ - - - return ResponseResult.success(); - } - - - diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/controller/ZoneController.java b/coolstore-partner-webb/src/main/java/com/cool/store/controller/ZoneController.java index 642f215c6..a3e150335 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/controller/ZoneController.java +++ b/coolstore-partner-webb/src/main/java/com/cool/store/controller/ZoneController.java @@ -1,7 +1,9 @@ package com.cool.store.controller; +import com.cool.store.context.CurrentUserHolder; import com.cool.store.request.IntentAreaSettingRequest; import com.cool.store.response.ResponseResult; +import com.cool.store.service.ZoneService; import com.cool.store.vo.ZoneVO; import com.github.pagehelper.PageInfo; import io.swagger.annotations.ApiImplicitParam; @@ -10,6 +12,8 @@ import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; +import javax.annotation.Resource; + /** * @Author suzhuhong * @Date 2023/6/14 11:40 @@ -19,19 +23,20 @@ import org.springframework.web.bind.annotation.*; @Slf4j public class ZoneController { + @Resource + ZoneService zoneService; @PostMapping(path = "/addZone") @ApiOperation("新建意向战区/开发战区") public ResponseResult addZone(@RequestBody IntentAreaSettingRequest intentAreaSettingRequest){ - - return ResponseResult.success(); + return ResponseResult.success(zoneService.addZone( CurrentUserHolder.getUserId(),intentAreaSettingRequest)); } @PostMapping(path = "/updateZone") @ApiOperation("编辑意向战区/开发战区") public ResponseResult updateZone(@RequestBody IntentAreaSettingRequest intentAreaSettingRequest){ - return ResponseResult.success(); + return ResponseResult.success(zoneService.updateZone(CurrentUserHolder.getUserId(),intentAreaSettingRequest)); } @GetMapping(path = "/getZoneList") @@ -42,7 +47,7 @@ public class ZoneController { public ResponseResult> getZoneList(@RequestParam(value = "type",required = false)String type, @RequestParam(value = "pageNumber",required = false,defaultValue = "1")Integer pageNumber, @RequestParam(value = "pageSize",required = false,defaultValue = "10")Integer pageSize){ - return ResponseResult.success(); + return ResponseResult.success(zoneService.getZoneList(type,pageSize,pageNumber)); } @@ -52,6 +57,15 @@ public class ZoneController { @ApiImplicitParam(name = "id", value = "id", required = false), }) public ResponseResult deletedZoneList(@RequestParam(value = "id",required = false)Long id){ - return ResponseResult.success(); + return ResponseResult.success(zoneService.deletedZone(id)); + } + + @GetMapping(path = "/zoneDetail") + @ApiOperation("战区详情") + @ApiImplicitParams({ + @ApiImplicitParam(name = "id", value = "id", required = false), + }) + public ResponseResult zoneDetail(@RequestParam(value = "id",required = false)Long id){ + return ResponseResult.success(zoneService.zoneDetail(id)); } }