Browse Source

企业相关,代码初步修改

dev
yujintao 6 years ago
parent
commit
91c7c00e78
  1. 22
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiCustomEnterpriseController.java
  2. 49
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/CustomEnterpriseServiceImpl.java
  3. 5
      esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/enterprise/form/EnterpriseInfoFormDTO.java
  4. 3
      esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/enterprise/result/EnterpriseInfoResultDTO.java
  5. 13
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/enterprise/dao/EnterpriseInfoDao.java
  6. 47
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/enterprise/redis/EnterpriseInfoRedis.java
  7. 18
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/enterprise/service/impl/EnterpriseInfoServiceImpl.java
  8. 10
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/feign/UserFeignClient.java
  9. 7
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/resources/mapper/enterprise/EnterpriseInfoDao.xml
  10. 25
      esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/form/CompleteRequisiteUserInfoDTO.java
  11. 29
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java

22
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiCustomEnterpriseController.java

@ -27,27 +27,27 @@ public class ApiCustomEnterpriseController {
private CustomEnterpriseService customEnterpriseService;
/**
* @Description 企业信息完善
* @return void
* @Description 企业信息完善选填
* @Author songyunpeng
* @Date 2020/2/28
* @Date 2020/2/28
* @Param [enterpriseInfoDTO]
* @return void
**/
@GetMapping("/completeSelectiveInfo")
@GetMapping("completeSelectiveInfo")
public Result completeEnterpriseInfo(EnterpriseInfoFormDTO enterpriseInfoFormDTO) {
return customEnterpriseService.completeEnterpriseInfo(enterpriseInfoFormDTO);
}
/**
* @Description 查询企业信息
* @return com.elink.esua.epdc.dto.enterprise.result.EnterpriseInfoResultDTO
* @Description 查询企业信息
* @Author songyunpeng
* @Date 2020/2/28
* @Date 2020/2/28
* @Param [userId]
* @return com.elink.esua.epdc.dto.enterprise.result.EnterpriseInfoResultDTO
**/
@GetMapping("/getByUserId")
@GetMapping("getByUserId")
public Result<EnterpriseInfoResultDTO> getByUserId(@LoginUser TokenDto tokenDto) {
String userId = tokenDto.getUserId();
String userId = tokenDto.getUserId();
return customEnterpriseService.selectOneEnterpriseInfo(userId);
}
@ -60,7 +60,7 @@ public class ApiCustomEnterpriseController {
* @date 2020/2/28 13:34
*/
@PostMapping("completeRequisiteInfo")
public Result completeRequisiteInfo(@LoginUser TokenDto tokenDto,CompleteRequisiteInfoDTO fromDto) {
public Result completeRequisiteInfo(@LoginUser TokenDto tokenDto, CompleteRequisiteInfoDTO fromDto) {
return customEnterpriseService.completeRequisiteInfo(fromDto, tokenDto);
}
}

49
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/CustomEnterpriseServiceImpl.java

@ -8,9 +8,7 @@ import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult;
import cn.binarywang.wx.miniapp.bean.WxMaUserInfo;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.exception.RenException;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.form.CompleteRequisiteInfoDTO;
import com.elink.esua.epdc.feign.CustomFeignClient;
import com.elink.esua.epdc.redis.AppUserRedis;
import com.elink.esua.epdc.service.CustomEnterpriseService;
import com.elink.esua.epdc.utils.WxMaServiceUtils;
@ -18,7 +16,6 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import me.chanjar.weixin.common.error.WxErrorException;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
@ -52,20 +49,39 @@ public class CustomEnterpriseServiceImpl implements CustomEnterpriseService {
@Override
public Result completeRequisiteInfo(CompleteRequisiteInfoDTO fromDto, TokenDto tokenDto) {
public Result completeRequisiteInfo(CompleteRequisiteInfoDTO formDto, TokenDto tokenDto) {
// 验证手机号
this.checkSmsCode(fromDto.getMobile(), fromDto.getSmsCode());
fromDto.setUserId(tokenDto.getUserId());
if (StringUtils.isNotBlank(fromDto.getWxCode())&&StringUtils.isNotBlank(fromDto.getIv())&&StringUtils.isNotBlank(fromDto.getEncryptedData())) {
String sessionKey = this.getUserSessionKey(fromDto.getWxCode());
WxMaUserInfo wxMaUserInfo = wxMaServiceUtils.normalWxMaService().getUserService().getUserInfo(sessionKey, fromDto.getEncryptedData(), fromDto.getIv());
if (StringUtils.isBlank(wxMaUserInfo.getUnionId())) {
return new Result().error("解析微信开放平台ID失败");
}
fromDto.setWxUnionId(wxMaUserInfo.getUnionId());
}
this.checkSmsCode(formDto.getMobile(), formDto.getSmsCode());
formDto.setUserId(tokenDto.getUserId());
formDto.setWxUnionId(getWxUnionId(formDto.getWxCode(), formDto.getIv(), formDto.getEncryptedData()));
return customFeignClient.completeRequisiteInfo(formDto);
}
return customFeignClient.completeRequisiteInfo(fromDto);
/**
* 解析微信用户unionid
* <p>代码说明
* 小程序端用户完善信息界面提交数据前会调用{@link com.elink.esua.epdc.controller.ApiAppUserController#checkWxUnionId(TokenDto)}
* 获取用户是否已绑定了微信unionId
* 如果用户保存过unionId前端不会再上送encryptedDatawxCodeiv这三个参数</p>
*
* @param wxCode
* @param iv
* @param encryptedData
* @return java.lang.String
* @author work@yujt.net.cn
* @date 2020/2/28 14:51
*/
private String getWxUnionId(String wxCode, String iv, String encryptedData) {
if (StringUtils.isBlank(wxCode) || StringUtils.isBlank(iv) || StringUtils.isBlank(encryptedData)) {
return null;
}
String sessionKey = this.getUserSessionKey(wxCode);
WxMaUserInfo wxMaUserInfo = wxMaServiceUtils.normalWxMaService().getUserService().getUserInfo(sessionKey, encryptedData, iv);
if (null == wxMaUserInfo || StringUtils.isBlank(wxMaUserInfo.getUnionId())) {
throw new RenException("解析微信数据失败,请刷新后重试");
}
return wxMaUserInfo.getUnionId();
}
/**
@ -94,6 +110,9 @@ public class CustomEnterpriseServiceImpl implements CustomEnterpriseService {
}
} catch (WxErrorException e) {
e.printStackTrace();
if (e.getError().getErrorCode() == 40163) {
throw new RenException("禁止重复提交,请刷新页面后重试");
}
throw new RenException(e.getError().getErrorMsg());
}
return null;

5
esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/enterprise/form/EnterpriseInfoFormDTO.java

@ -41,11 +41,6 @@ public class EnterpriseInfoFormDTO implements Serializable {
@NotBlank(message = "ID不能为空")
private String id;
/**
* 用户id
*/
private String userId;
/**
* 法定代表人
*/

3
esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/enterprise/result/EnterpriseInfoResultDTO.java

@ -104,9 +104,10 @@ public class EnterpriseInfoResultDTO implements Serializable {
* 居住网格id
*/
private Long deptId;
/**
* 所有部门名称
*/
private String allDeptNames;
private String deptName;
}

13
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/enterprise/dao/EnterpriseInfoDao.java

@ -18,7 +18,6 @@
package com.elink.esua.epdc.modules.enterprise.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.enterprise.EnterpriseInfoDTO;
import com.elink.esua.epdc.dto.enterprise.form.EnterpriseInfoFormDTO;
import com.elink.esua.epdc.dto.enterprise.result.EnterpriseInfoResultDTO;
import com.elink.esua.epdc.modules.enterprise.entity.EnterpriseInfoEntity;
@ -34,20 +33,20 @@ import org.apache.ibatis.annotations.Param;
@Mapper
public interface EnterpriseInfoDao extends BaseDao<EnterpriseInfoEntity> {
/**
* @Description 企业信息完善
* @return void
* @Description 企业信息完善
* @Author songyunpeng
* @Date 2020/2/28
* @Date 2020/2/28
* @Param [enterpriseInfoDTO]
* @return void
**/
void completeEnterpriseInfo(EnterpriseInfoFormDTO formDTO);
/**
* @Description 查询企业信息
* @return com.elink.esua.epdc.dto.enterprise.result.EnterpriseInfoResultDTO
* @Description 查询企业信息
* @Author songyunpeng
* @Date 2020/2/28
* @Date 2020/2/28
* @Param [userId]
* @return com.elink.esua.epdc.dto.enterprise.result.EnterpriseInfoResultDTO
**/
EnterpriseInfoResultDTO selectOneEnterpriseInfo(@Param("userId") String userId);
}

47
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/enterprise/redis/EnterpriseInfoRedis.java

@ -1,47 +0,0 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.modules.enterprise.redis;
import com.elink.esua.epdc.commons.tools.redis.RedisUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* 企业信息表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-02-28
*/
@Component
public class EnterpriseInfoRedis {
@Autowired
private RedisUtils redisUtils;
public void delete(Object[] ids) {
}
public void set(){
}
public String get(String id){
return null;
}
}

18
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/enterprise/service/impl/EnterpriseInfoServiceImpl.java

@ -17,6 +17,7 @@
package com.elink.esua.epdc.modules.enterprise.service.impl;
import cn.hutool.core.util.ArrayUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
@ -34,7 +35,6 @@ import com.elink.esua.epdc.dto.epdc.form.CompleteRequisiteUserInfoDTO;
import com.elink.esua.epdc.dto.form.CompleteRequisiteInfoDTO;
import com.elink.esua.epdc.modules.enterprise.dao.EnterpriseInfoDao;
import com.elink.esua.epdc.modules.enterprise.entity.EnterpriseInfoEntity;
import com.elink.esua.epdc.modules.enterprise.redis.EnterpriseInfoRedis;
import com.elink.esua.epdc.modules.enterprise.service.EnterpriseInfoService;
import com.elink.esua.epdc.modules.feign.AdminFeignClient;
import com.elink.esua.epdc.modules.feign.UserFeignClient;
@ -57,10 +57,6 @@ import java.util.Map;
@Service
public class EnterpriseInfoServiceImpl extends BaseServiceImpl<EnterpriseInfoDao, EnterpriseInfoEntity> implements EnterpriseInfoService {
@Autowired
private EnterpriseInfoRedis enterpriseInfoRedis;
@Autowired
private AdminFeignClient adminFeignClient;
@ -126,7 +122,15 @@ public class EnterpriseInfoServiceImpl extends BaseServiceImpl<EnterpriseInfoDao
@Override
public EnterpriseInfoResultDTO selectOneEnterpriseInfo(String userId) {
return baseDao.selectOneEnterpriseInfo(userId);
EnterpriseInfoResultDTO result = baseDao.selectOneEnterpriseInfo(userId);
String deptName = result.getDeptName();
if (StringUtils.isNotBlank(deptName)) {
String[] split = deptName.split("-");
if (ArrayUtil.isNotEmpty(split) && split.length == NumConstant.FOUR) {
result.setDeptName(split[NumConstant.TWO] + "-" + split[NumConstant.THREE]);
}
}
return result;
}
@GlobalTransactional
@ -148,8 +152,6 @@ public class EnterpriseInfoServiceImpl extends BaseServiceImpl<EnterpriseInfoDao
//更新用户表数据
CompleteRequisiteUserInfoDTO userInfoDTO = ConvertUtils.sourceToTarget(fromDto, CompleteRequisiteUserInfoDTO.class);
userInfoDTO.setDwellingPlace(enterpriseInfoDTO.getEnterpriseAddress());
userInfoDTO.setNickName(parentResult.getData().getGrid()+"-"+ fromDto.getRealName().substring(NumConstant.ZERO, NumConstant.ONE)
+ (Integer.parseInt(fromDto.getSex()) == NumConstant.ZERO ? "女士" : "先生"));
userFeignClient.completeRequisiteInfo(userInfoDTO);
return new Result();
}

10
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/feign/UserFeignClient.java

@ -9,17 +9,17 @@ import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* @author: qushutong
* @Date: 2020/2/28 14:41
* @Description: 更新用户
* @author: qushutong
* @Date: 2020/2/28 14:41
* @Description: 更新用户
*/
@FeignClient(name = ServiceConstant.EPDC_USER_SERVER, fallback = UserFeignClientFallback.class)
public interface UserFeignClient {
/***
* 更新用户
* @param
* @return Result<List<Long>>
* @param fromDto
* @return Result<List < Long>>
* @author qushutong
* @date 2020/2/28 14:43
*/

7
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/resources/mapper/enterprise/EnterpriseInfoDao.xml

@ -3,7 +3,6 @@
<mapper namespace="com.elink.esua.epdc.modules.enterprise.dao.EnterpriseInfoDao">
<resultMap id="enterpriseInfoMap" type="com.elink.esua.epdc.dto.enterprise.result.EnterpriseInfoResultDTO">
<result property="id" column="ID"/>
<result property="userId" column="USER_ID"/>
@ -19,9 +18,9 @@
<result property="industry" column="INDUSTRY"/>
<result property="businessScope" column="BUSINESS_SCOPE"/>
<result property="deptId" column="DEPT_ID"/>
<result property="allDeptNames" column="ALL_DEPT_NAMES"/>
<result property="deptName" column="ALL_DEPT_NAMES"/>
</resultMap>
<update id="completeEnterpriseInfo" parameterType="com.elink.esua.epdc.dto.enterprise.form.EnterpriseInfoFormDTO">
UPDATE epdc_enterprise_info
<trim prefix="set" suffixOverrides=",">
@ -33,7 +32,7 @@
</trim>
WHERE ID=#{id}
</update>
<select id="selectOneEnterpriseInfo" resultMap="enterpriseInfoMap">
select t.ID,t.USER_ID,t.REAL_NAME,t.SEX,MOBILE,t.ENTERPRISE_NAME,t.UNIFORM_SOCIAL_CREDIT_CODE,t.ENTERPRISE_ADDRESS,
t.LEGAL_PERSON,t.REGISTERED_CAPITAL,t.EMPLOYED_POPULATION,t.INDUSTRY,t.BUSINESS_SCOPE,t.DEPT_ID,t.ALL_DEPT_NAMES

25
esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/form/CompleteRequisiteUserInfoDTO.java

@ -17,11 +17,31 @@ public class CompleteRequisiteUserInfoDTO implements Serializable {
private String realName;
private String sex;
private String mobile;
private Long deptId;
/**
* 父所有部门
*/
private String parentDeptIds;
/**
* 父所有部门
*/
private String parentDeptNames;
/**
* 所有部门ID
*/
private String allDeptIds;
/**
* 所有部门名称
*/
private String allDeptNames;
private String userId;
@ -29,7 +49,10 @@ public class CompleteRequisiteUserInfoDTO implements Serializable {
private String wxUnionId;
private String nickName;
/**网格名称*/
private String grid;
}

29
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java

@ -862,7 +862,7 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem
/**
* @param gridIdList
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.epdc.result.EpdcGridUserResultDTO>>
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.epdc.result.EpdcGridUserResultDTO>>
* @Author yinzuomei
* @Description 根据网格id查询网格下所有的用户
* @Date 2019/12/19 15:03
@ -1089,17 +1089,24 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem
@Override
public Result completeRequisiteInfo(CompleteRequisiteUserInfoDTO fromDto) {
UserDTO userDTO = ConvertUtils.sourceToTarget(fromDto, UserDTO.class);
UserEntity userEntity = baseDao.selectById(fromDto.getUserId());
//而且姓名必须与用户表中原来的姓名一致,否则不更新姓名与昵称。
if (!userEntity.getRealName().equals(userDTO.getRealName())) {
userDTO.setRealName(userEntity.getRealName());
userDTO.setNickname(userEntity.getNickname());
String userId = fromDto.getUserId();
UserEntity userEntity = baseDao.selectById(userId);
// 用于更新用户信息
UserEntity updateUser = ConvertUtils.sourceToTarget(fromDto, UserEntity.class);
// 党员姓名必须与用户表中原来的姓名一致,否则不更新姓名与昵称。
if (userEntity.getPartyFlag().equals(YesOrNoEnum.YES.value()) && !userEntity.getRealName().equals(updateUser.getRealName())) {
updateUser.setRealName(null);
} else {
updateUser.setLastName(fromDto.getRealName().substring(NumConstant.ZERO, NumConstant.ONE));
updateUser.setNickname(fromDto.getGrid() + "-" + updateUser.getLastName() + (Integer.parseInt(fromDto.getSex()) == NumConstant.ZERO ? "女士" : "先生"));
}
updateUser.setId(userId);
// 非党员用户状态修改为待审核l
if (userEntity.getPartyFlag().equals(YesOrNoEnum.NO.value())) {
updateUser.setState(AppUserStatesEnum.STATE_COMPLETED_INFORMATION_PENDING_REVIEW.value());
}
userDTO.setId(fromDto.getUserId());
//用户状态修改为待审核l
userDTO.setState(AppUserStatesEnum.STATE_COMPLETED_INFORMATION_PENDING_REVIEW.value());
update(userDTO);
baseDao.updateById(updateUser);
return new Result();
}
}

Loading…
Cancel
Save