From 02b087d8d55a7931d87c6e39423d9362463d67c9 Mon Sep 17 00:00:00 2001 From: lidongdong <1459917685@qq.com> Date: 星期日, 09 十月 2022 14:13:49 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/huacheng_test' into huacheng_test --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSanShuoExpertServiceImpl.java | 113 +++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 70 insertions(+), 43 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSanShuoExpertServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSanShuoExpertServiceImpl.java index f019713..b932c4a 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSanShuoExpertServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSanShuoExpertServiceImpl.java @@ -28,6 +28,7 @@ import com.panzhihua.service_community.service.ComStreetService; import com.panzhihua.service_community.util.MyAESUtil; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.math.BigDecimal; @@ -35,6 +36,7 @@ import java.util.Date; import java.util.List; +import static java.util.Objects.isNull; import static java.util.Objects.nonNull; @Service @@ -60,53 +62,78 @@ * @return 处理结果 * */ @Override - public R addExpert(ComSanshuoExpertDTO comSanshuoExpertDTO) { - //是否重名 - List<ComSanshuoExpert> checkExpert=comSanshuoExpertDao.selectExpertByNameOrPhoneOrAccount(comSanshuoExpertDTO); - if (checkExpert.size() != 0){ - return R.fail("账号信息有重复"); - } - ComSanshuoExpert expert=new ComSanshuoExpert(); - BeanUtil.copyProperties(comSanshuoExpertDTO,expert); - if (nonNull(comSanshuoExpertDTO.getUnit())){ - String id = comSanshuoExpertDTO.getUnit(); - String[] split = id.split(","); - expert.setUnitId(split[split.length-1]); - } - expert.setId(Snowflake.getId()); - expert.setCreateTime(new Date()); - if (expert.getLevel()==2){ - expert.setIndustryCenterId(Long.parseLong(expert.getUnitId())); - expert.setUnit(comSanshuoIndustryCenterDao.selectById(expert.getUnitId()).getName()+"调解站"); - }else if(expert.getLevel()==3){ - expert.setStreetId(Long.parseLong(expert.getUnitId())); - expert.setUnit(comStreetDAO.selectById(expert.getUnitId()).getName()+"调解站"); - }else if(expert.getLevel()==4){ - expert.setCommunityId(Long.parseLong(expert.getUnitId())); - expert.setUnit(comActDAO.selectById(expert.getUnitId()).getName()+"调解站"); - } - expert.setStatus(1); - expert.setDelFlag(1); - int insert = comSanshuoExpertDao.insert(expert); - if (insert>0){ - try { - comSanshuoExpertDTO.setPassword(comSanshuoExpertDTO.getPassword()); - } catch (Exception e) { - e.printStackTrace(); + @Transactional(rollbackFor = Exception.class) + public R addOrUpdateExpert(ComSanshuoExpertDTO comSanshuoExpertDTO) { + if (isNull(comSanshuoExpertDTO.getId())){ + //是否重名 + List<ComSanshuoExpert> checkExpert=comSanshuoExpertDao.selectExpertByNameOrPhoneOrAccount(comSanshuoExpertDTO); + if (checkExpert.size() != 0){ + return R.fail("账号信息有重复"); } - //生成后台账号 - AdministratorsUserVO user=new AdministratorsUserVO(); - user.setUserId(Snowflake.getId()); - user.setAccount(comSanshuoExpertDTO.getAccount()); - user.setPassword(comSanshuoExpertDTO.getPassword()); - user.setName(comSanshuoExpertDTO.getName()); - user.setType(11); - user.setImageUrl(comSanshuoExpertDTO.getAvatar()); - return userService.sanShuoAddUser(user); + ComSanshuoExpert expert=new ComSanshuoExpert(); + BeanUtil.copyProperties(comSanshuoExpertDTO,expert); + if (nonNull(comSanshuoExpertDTO.getUnit())){ + String id = comSanshuoExpertDTO.getUnit(); + String[] split = id.split(","); + expert.setUnitId(split[split.length-1]); + } + expert.setId(Snowflake.getId()); + expert.setCreateTime(new Date()); + if (expert.getLevel()==2){ + expert.setIndustryCenterId(Long.parseLong(expert.getUnitId())); + expert.setUnit(comSanshuoIndustryCenterDao.selectById(expert.getUnitId()).getName()+"调解站"); + }else if(expert.getLevel()==3){ + expert.setStreetId(Long.parseLong(expert.getUnitId())); + expert.setUnit(comStreetDAO.selectById(expert.getUnitId()).getName()+"调解站"); + }else if(expert.getLevel()==4){ + expert.setCommunityId(Long.parseLong(expert.getUnitId())); + expert.setUnit(comActDAO.selectById(expert.getUnitId()).getName()+"调解站"); + } + expert.setStatus(1); + expert.setDelFlag(1); + int insert = comSanshuoExpertDao.insert(expert); + if (insert>0){ + try { + comSanshuoExpertDTO.setPassword(comSanshuoExpertDTO.getPassword()); + } catch (Exception e) { + e.printStackTrace(); + } + //生成后台账号 + AdministratorsUserVO user=new AdministratorsUserVO(); + user.setUserId(Snowflake.getId()); + user.setAccount(comSanshuoExpertDTO.getAccount()); + user.setPassword(comSanshuoExpertDTO.getPassword()); + user.setName(comSanshuoExpertDTO.getName()); + user.setType(11); + user.setImageUrl(comSanshuoExpertDTO.getAvatar()); + return R.ok(userService.sanShuoAddUser(user)); + } + }else { + ComSanshuoExpert expert=new ComSanshuoExpert(); + BeanUtil.copyProperties(comSanshuoExpertDTO,expert); + if (nonNull(comSanshuoExpertDTO.getUnit())){ + String id = comSanshuoExpertDTO.getUnit(); + String[] split = id.split(","); + expert.setUnitId(split[split.length-1]); + } + expert.setUpdateTime(new Date()); + if (expert.getLevel()==2){ + expert.setIndustryCenterId(Long.parseLong(expert.getUnitId())); + expert.setUnit(comSanshuoIndustryCenterDao.selectById(expert.getUnitId()).getName()+"调解站"); + }else if(expert.getLevel()==3){ + expert.setStreetId(Long.parseLong(expert.getUnitId())); + expert.setUnit(comStreetDAO.selectById(expert.getUnitId()).getName()+"调解站"); + }else if(expert.getLevel()==4){ + expert.setCommunityId(Long.parseLong(expert.getUnitId())); + expert.setUnit(comActDAO.selectById(expert.getUnitId()).getName()+"调解站"); + } + return R.ok(comSanshuoExpertDao.updateById(expert)); } - return R.fail("添加失败"); + + return R.fail("操作失败"); } + /** * 后台获取专家列表 * @param page -- Gitblit v1.7.1