|
@@ -9,9 +9,18 @@ import com.ruoyi.basicData.mapper.TCustomerContactMapper;
|
|
|
import com.ruoyi.basicData.service.ITCorpsService;
|
|
|
import com.ruoyi.common.constant.UserConstants;
|
|
|
import com.ruoyi.common.core.domain.AjaxResult;
|
|
|
+import com.ruoyi.common.core.domain.entity.SysDept;
|
|
|
+import com.ruoyi.common.core.domain.entity.SysRole;
|
|
|
+import com.ruoyi.common.core.domain.entity.SysUser;
|
|
|
import com.ruoyi.common.core.domain.model.LoginUser;
|
|
|
import com.ruoyi.common.utils.DateUtils;
|
|
|
+import com.ruoyi.common.utils.SecurityUtils;
|
|
|
import com.ruoyi.common.utils.StringUtils;
|
|
|
+import com.ruoyi.system.domain.SysUserRole;
|
|
|
+import com.ruoyi.system.mapper.SysDeptMapper;
|
|
|
+import com.ruoyi.system.mapper.SysRoleMapper;
|
|
|
+import com.ruoyi.system.mapper.SysUserMapper;
|
|
|
+import com.ruoyi.system.mapper.SysUserRoleMapper;
|
|
|
import com.ruoyi.warehouseBusiness.domain.TWarehouseBills;
|
|
|
import com.ruoyi.warehouseBusiness.mapper.TWarehouseBillsMapper;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -33,6 +42,18 @@ public class TCorpsServiceImpl implements ITCorpsService {
|
|
|
private TCorpsMapper tCorpsMapper;
|
|
|
|
|
|
@Autowired
|
|
|
+ private SysRoleMapper roleMapper;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private SysDeptMapper sysDeptMapper;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private SysUserMapper sysUserMapper;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private SysUserRoleMapper userRoleMapper;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
private TCustomerContactMapper tCustomerContactMapper;
|
|
|
|
|
|
@Autowired
|
|
@@ -110,22 +131,18 @@ public class TCorpsServiceImpl implements ITCorpsService {
|
|
|
if (StringUtils.isEmpty(tCorps)) {
|
|
|
return AjaxResult.error("提交失败:客户信息为空");
|
|
|
}
|
|
|
- if (StringUtils.isEmpty(tCustomerContacts)) {
|
|
|
- return AjaxResult.error("提交失败:客户联系人为空");
|
|
|
- }
|
|
|
Long fPid = null;
|
|
|
+ SysUser user = loginUser.getUser();
|
|
|
TCorps corps = JSONArray.parseObject(tCorps, TCorps.class);
|
|
|
- JSONArray jsonArray = JSONArray.parseArray(tCustomerContacts);
|
|
|
- List<TCustomerContact> customerContactList = JSONObject.parseArray(jsonArray.toJSONString(), TCustomerContact.class);
|
|
|
if (StringUtils.isNull(corps.getfId())) {
|
|
|
- corps.setCreateBy(loginUser.getUser().getUserName());
|
|
|
+ corps.setCreateBy(user.getUserName());
|
|
|
corps.setCreateTime(new Date());
|
|
|
corps.setfStatus("0");
|
|
|
tCorpsMapper.insertTCorps(corps);
|
|
|
fPid=corps.getfId();
|
|
|
} else {
|
|
|
fPid=corps.getfId();
|
|
|
- corps.setUpdateBy(loginUser.getUser().getUserName());
|
|
|
+ corps.setUpdateBy(user.getUserName());
|
|
|
corps.setUpdateTime(new Date());
|
|
|
if(corps.getfStatus().equals("1")){
|
|
|
TWarehouseBills tWarehouseBill =new TWarehouseBills();
|
|
@@ -138,12 +155,79 @@ public class TCorpsServiceImpl implements ITCorpsService {
|
|
|
tCorpsMapper.updateTCorps(corps);
|
|
|
tCustomerContactMapper.deleteCustomerContactByCorps(fPid);
|
|
|
}
|
|
|
- for (TCustomerContact cc : customerContactList) {
|
|
|
- cc.setfPid(fPid);
|
|
|
- cc.setfStatus("0");
|
|
|
- cc.setCreateBy(loginUser.getUser().getUserName());
|
|
|
- cc.setCreateTime(new Date());
|
|
|
- tCustomerContactMapper.insertTCustomerContact(cc);
|
|
|
+ if (StringUtils.isNotEmpty(tCustomerContacts) && !"[]".equals(tCustomerContacts)) {
|
|
|
+ int line = 0;
|
|
|
+ SysDept dept = sysDeptMapper.selectDeptByDeptName("外部用户");
|
|
|
+ if (StringUtils.isNull(dept)) {
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error("未找到部门信息,请添加后再提交");
|
|
|
+ }
|
|
|
+ JSONArray jsonArray = JSONArray.parseArray(tCustomerContacts);
|
|
|
+ List<TCustomerContact> customerContactList = JSONObject.parseArray(jsonArray.toJSONString(), TCustomerContact.class);
|
|
|
+ for (TCustomerContact cc : customerContactList) {
|
|
|
+ line++;
|
|
|
+ if (StringUtils.isEmpty(cc.getfName())) {
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error("联系人第" + line + "行,缺少客户名称");
|
|
|
+ }
|
|
|
+ if (StringUtils.isEmpty(cc.getfTel())) {
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error("联系人第" + line + "行,缺少客户手机号");
|
|
|
+ }
|
|
|
+ if (StringUtils.isEmpty(cc.getfStatus())) {
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error("联系人第" + line + "行,缺少客户状态");
|
|
|
+ }
|
|
|
+ if (StringUtils.isNull(cc.gettId())) {
|
|
|
+ if (sysUserMapper.selectUserByUserNameOrTel(cc.getfTel()) > 0) {
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error("联系人第" + line + "行,手机号已被使用");
|
|
|
+ }
|
|
|
+ // 创建客户 登录账户
|
|
|
+ SysUser sysUser = new SysUser();
|
|
|
+ sysUser.setUserType("33");
|
|
|
+ sysUser.setUserSystem("2");
|
|
|
+ sysUser.setCreateTime(new Date());
|
|
|
+ sysUser.setUserName(cc.getfTel());
|
|
|
+ sysUser.setStatus(cc.getfStatus());
|
|
|
+ sysUser.setNickName(cc.getfName());
|
|
|
+ sysUser.setDeptId(dept.getDeptId());
|
|
|
+ sysUser.setPhonenumber(cc.getfTel());
|
|
|
+ sysUser.setCreateBy(user.getUserName());
|
|
|
+ sysUser.setPassword(SecurityUtils.encryptPassword(cc.getfTel()));
|
|
|
+ sysUserMapper.insertUser(sysUser);
|
|
|
+ // 新增用户与角色管理
|
|
|
+ // 查询是否存在车队 角色
|
|
|
+ SysRole role = roleMapper.selectRoleByName("外部用户");
|
|
|
+ if (StringUtils.isNull(role)) {
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error("未找到司机角色,请创建司机角色后提交");
|
|
|
+ }
|
|
|
+ // 创建用户与角色关联
|
|
|
+ List<SysUserRole> list = new ArrayList<SysUserRole>();
|
|
|
+ SysUserRole sysUserRole = new SysUserRole();
|
|
|
+ sysUserRole.setRoleId(role.getRoleId());
|
|
|
+ sysUserRole.setUserId(sysUser.getUserId());
|
|
|
+ list.add(sysUserRole);
|
|
|
+ userRoleMapper.batchUserRole(list);
|
|
|
+ } else {
|
|
|
+ SysUser use = sysUserMapper.selectUserByPhonenumber(cc.getfTel());
|
|
|
+ if (StringUtils.isNull(use)) {
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error("该手机号未找到用户信息,请确认操作用户信息是否被删除");
|
|
|
+ }
|
|
|
+ use.setDeptId(dept.getDeptId());
|
|
|
+ use.setStatus(cc.getfStatus());
|
|
|
+ use.setUpdateTime(new Date());
|
|
|
+ use.setUpdateBy(user.getUserName());
|
|
|
+ sysUserMapper.updateUser(user);
|
|
|
+ }
|
|
|
+ cc.setfPid(fPid);
|
|
|
+ cc.setfStatus("0");
|
|
|
+ cc.setCreateTime(new Date());
|
|
|
+ cc.setCreateBy(user.getUserName());
|
|
|
+ tCustomerContactMapper.insertTCustomerContact(cc);
|
|
|
+ }
|
|
|
}
|
|
|
return AjaxResult.success();
|
|
|
}
|