|
@@ -1,10 +1,21 @@
|
|
|
package cn.com.ty.lift.system.user.service.impl;
|
|
|
|
|
|
+import cn.com.ty.lift.common.constants.ApiConstants;
|
|
|
import cn.com.ty.lift.system.user.dao.entity.Expert;
|
|
|
+import cn.com.ty.lift.system.user.dao.entity.UserAccount;
|
|
|
+import cn.com.ty.lift.system.user.dao.entity.UserInfo;
|
|
|
+import cn.com.ty.lift.system.user.dao.entity.model.ExpertRequest;
|
|
|
import cn.com.ty.lift.system.user.dao.mapper.ExpertMapper;
|
|
|
import cn.com.ty.lift.system.user.service.IExpertService;
|
|
|
+import cn.com.ty.lift.system.user.service.IUserAccountService;
|
|
|
+import cn.com.ty.lift.system.user.service.IUserInfoService;
|
|
|
+import cn.com.xwy.boot.web.dto.RestResponse;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
+
|
|
|
+import java.time.LocalDateTime;
|
|
|
|
|
|
/**
|
|
|
* <p>
|
|
@@ -17,4 +28,33 @@ import org.springframework.stereotype.Service;
|
|
|
@Service
|
|
|
public class ExpertServiceImpl extends ServiceImpl<ExpertMapper, Expert> implements IExpertService {
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IUserAccountService userAccountService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IUserInfoService userInfoService;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public RestResponse add(ExpertRequest expertRequest) {
|
|
|
+ UserAccount userAccount = new UserAccount();
|
|
|
+ userAccount.setMobile(expertRequest.getMobile());
|
|
|
+ //设置用户为专家
|
|
|
+ userAccount.setExpertFlag(ApiConstants.UserConstants.IS_EXPERT);
|
|
|
+ userAccount.setType(ApiConstants.UserConstants.TYPE_USER);
|
|
|
+ userAccountService.save(userAccount);
|
|
|
+ //设置专家基础信息
|
|
|
+ UserInfo userInfo = new UserInfo();
|
|
|
+ userInfo.setMobile(expertRequest.getMobile());
|
|
|
+ userInfo.setUserId(userAccount.getUserId());
|
|
|
+ userInfoService.save(userInfo);
|
|
|
+ //设置专家信息
|
|
|
+ Expert expert = new Expert();
|
|
|
+ expert.setName(expertRequest.getName());
|
|
|
+ expert.setDescription(expertRequest.getDescription());
|
|
|
+ expert.setUpdateTime(LocalDateTime.now());
|
|
|
+ expert.setUserId(userAccount.getUserId());
|
|
|
+ this.save(expert);
|
|
|
+ return RestResponse.success(null, ApiConstants.RESULT_SUCCESS, "保存专家信息成功");
|
|
|
+ }
|
|
|
}
|