| | |
| | | import com.ruoyi.common.core.web.domain.AjaxResult; |
| | | import com.ruoyi.common.core.web.page.PageInfo; |
| | | import com.ruoyi.system.api.domain.SysRole; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.feignClient.SysRoleClient; |
| | | import com.ruoyi.system.api.feignClient.SysUserClient; |
| | | import com.ruoyi.system.api.model.GetSysRoleByIds; |
| | | import io.seata.spring.annotation.GlobalTransactional; |
| | | import org.springframework.http.HttpStatus; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | import java.util.Optional; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | |
| | | |
| | | @Resource |
| | | private SysRoleClient sysRoleClient; |
| | | |
| | | @Resource |
| | | private SysUserClient sysUserClient; |
| | | |
| | | |
| | | |
| | |
| | | * @return |
| | | */ |
| | | @Override |
| | | @GlobalTransactional//分布式事务 |
| | | public AjaxResult addPartner(Partner partner) { |
| | | //校验参数和重复数据 |
| | | AjaxResult ajaxResult = addPartnerParameterCheck(partner); |
| | |
| | | //添加新数据 |
| | | this.save(partner); |
| | | //添加登录账户 |
| | | |
| | | SysUser user = new SysUser(); |
| | | user.setAccount(partner.getAccount()); |
| | | user.setPhonenumber(partner.getPhoneOne()); |
| | | user.setUserName(partner.getName()); |
| | | user.setNickName(partner.getName()); |
| | | user.setAvatar(partner.getLogoUrl()); |
| | | user.setPassword(partner.getPassword()); |
| | | user.setStatus("0"); |
| | | user.setDelFlag("0"); |
| | | user.setRoleId(partner.getRoleId().longValue()); |
| | | R r = sysUserClient.addSysUser(user); |
| | | if(200 != r.getCode()){ |
| | | throw new RuntimeException(r.getMsg()); |
| | | } |
| | | return AjaxResult.success(); |
| | | } |
| | | |
| | |
| | | @Override |
| | | public Partner getPartner(Integer id) { |
| | | Partner partner = this.getById(id); |
| | | if(null == partner){ |
| | | return partner; |
| | | } |
| | | GetSysRoleByIds ids = new GetSysRoleByIds(); |
| | | ids.setIds(Arrays.asList(partner.getRoleId())); |
| | | //获取相关的角色id |
| | |
| | | * @return |
| | | */ |
| | | @Override |
| | | @GlobalTransactional//分布式事务 |
| | | public AjaxResult editPartner(Partner partner) { |
| | | //校验参数和重复数据 |
| | | AjaxResult ajaxResult = addPartnerParameterCheck(partner); |
| | |
| | | if(null != one && !one.getId().equals(partner.getId())){ |
| | | return AjaxResult.error("登录账号不能重复"); |
| | | } |
| | | Partner oldPartner = this.getById(partner.getId()); |
| | | SysUser user = sysUserClient.queryUserByAccount(oldPartner.getAccount()).getData(); |
| | | |
| | | //修改数据 |
| | | this.updateById(partner); |
| | | //修改登录账户 |
| | | |
| | | if(null == user){ |
| | | user = new SysUser(); |
| | | user.setStatus("0"); |
| | | user.setDelFlag("0"); |
| | | user.setAccount(partner.getAccount()); |
| | | user.setPhonenumber(partner.getPhoneOne()); |
| | | user.setUserName(partner.getName()); |
| | | user.setNickName(partner.getName()); |
| | | user.setAvatar(partner.getLogoUrl()); |
| | | user.setPassword(partner.getPassword()); |
| | | user.setRoleId(partner.getRoleId().longValue()); |
| | | R r = sysUserClient.addSysUser(user); |
| | | if(200 != r.getCode()){ |
| | | throw new RuntimeException(r.getMsg()); |
| | | } |
| | | }else{ |
| | | user.setAccount(partner.getAccount()); |
| | | user.setPhonenumber(partner.getPhoneOne()); |
| | | user.setUserName(partner.getName()); |
| | | user.setNickName(partner.getName()); |
| | | user.setAvatar(partner.getLogoUrl()); |
| | | user.setPassword(partner.getPassword()); |
| | | user.setRoleId(partner.getRoleId().longValue()); |
| | | R r = sysUserClient.updateSysUser(user); |
| | | if(200 != r.getCode()){ |
| | | throw new RuntimeException(r.getMsg()); |
| | | } |
| | | } |
| | | return AjaxResult.success(); |
| | | } |
| | | |
| | |
| | | * @param id 合作商id |
| | | */ |
| | | @Override |
| | | public void delPartner(Integer id) { |
| | | @GlobalTransactional//分布式事务 |
| | | public AjaxResult delPartner(Integer id) { |
| | | //查询有无关联数据 |
| | | //站点 |
| | | |
| | | // todo 代码完善 |
| | | //充电桩 |
| | | |
| | | Partner partner = this.getById(id); |
| | | if(null == partner){ |
| | | return AjaxResult.error("删除失败"); |
| | | } |
| | | partner.setDelFlag(true); |
| | | this.updateById(partner); |
| | | SysUser user = sysUserClient.queryUserByAccount(partner.getAccount()).getData(); |
| | | user.setDelFlag("2"); |
| | | sysUserClient.updateUser(user); |
| | | return AjaxResult.success(); |
| | | } |
| | | |
| | | |
| | |
| | | * @param resetPassword |
| | | */ |
| | | @Override |
| | | @GlobalTransactional//分布式事务 |
| | | public AjaxResult resetPassword(ResetPassword resetPassword) { |
| | | if(null == resetPassword.getId()){ |
| | | return AjaxResult.error("合作商id不能为空"); |
| | |
| | | partner.setPassword(resetPassword.getPassword()); |
| | | this.updateById(partner); |
| | | //修改登录账号的密码 |
| | | |
| | | SysUser user = sysUserClient.queryUserByAccount(partner.getAccount()).getData(); |
| | | user.setPassword(partner.getPassword()); |
| | | sysUserClient.resetPassword(user); |
| | | return AjaxResult.success(); |
| | | } |
| | | } |