package cn.gistack.sm.sjztmd.service.impl;
|
|
import cn.gistack.sm.sjztmd.entity.AttResManagePerson;
|
import cn.gistack.sm.sjztmd.entity.PatrolResponsiblePerson;
|
import cn.gistack.sm.sjztmd.mapper.AttResManagePersonMapper;
|
import cn.gistack.sm.sjztmd.service.IAttResManagePersonService;
|
import cn.gistack.sm.sjztmd.vo.PersonVO;
|
import cn.gistack.sm.sjztmd.vo.UserPersonVO;
|
import cn.gistack.system.user.entity.User;
|
import cn.gistack.system.user.feign.IUserClient;
|
import com.baomidou.dynamic.datasource.annotation.DS;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import org.springblade.core.tool.api.R;
|
import org.springblade.core.tool.utils.Func;
|
import org.springblade.core.tool.utils.StringUtil;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import java.util.List;
|
import java.util.Set;
|
|
/**
|
* @ClassName AttResManagePersonServiceImpl
|
* @Description TODO
|
* @Author aix
|
* @Date 2023/4/22 11:10
|
* @Version 1.0
|
*/
|
@Service
|
@DS("zt")
|
public class AttResManagePersonServiceImpl extends ServiceImpl<AttResManagePersonMapper, AttResManagePerson> implements IAttResManagePersonService {
|
|
@Autowired
|
private IUserClient userClient;
|
|
@Override
|
public Boolean saveOrUpdateResManagePerson(AttResManagePerson attResManagePerson) {
|
if (StringUtil.isBlank(attResManagePerson.getResGuid()))
|
return false;
|
if (StringUtil.isBlank(attResManagePerson.getSysResource()))
|
return false;
|
if (StringUtil.isBlank(attResManagePerson.getType()))
|
return false;
|
Integer res = StringUtil.isBlank(attResManagePerson.getGuid())? baseMapper.insertResManagePersion(attResManagePerson):baseMapper.updateResManagePersonByGuid(attResManagePerson);
|
return res > 0;
|
}
|
|
@Override
|
@Transactional
|
public R saveOrUpdateResManagePerson(List<AttResManagePerson> attResManagePersons) {
|
Boolean res = false;
|
for (AttResManagePerson attResManagePerson:attResManagePersons) {
|
if (jodd.util.StringUtil.isEmpty(attResManagePerson.getResGuid()))
|
return R.fail("resGuid不能为空");
|
if (jodd.util.StringUtil.isEmpty(attResManagePerson.getType()))
|
return R.fail("type不能为空");
|
if (jodd.util.StringUtil.isEmpty(attResManagePerson.getSysResource()))
|
return R.fail("sysResource不能为空");
|
if (jodd.util.StringUtil.isEmpty(attResManagePerson.getUserPhone()))
|
return R.fail("userPhone不能为空");
|
if (jodd.util.StringUtil.isEmpty(attResManagePerson.getUserName()))
|
return R.fail("userName不能为空");
|
res = saveOrUpdateResManagePerson(attResManagePerson);
|
}
|
return R.data(res);
|
}
|
|
@Override
|
public List<AttResManagePerson> attResManagePersonListByResIds(String resId) {
|
return baseMapper.attResManagePersonListByResId(Func.toLongList(resId));
|
}
|
|
@Override
|
@DS("master")
|
public List<PatrolResponsiblePerson> getPatrolResponsiblePersonAll() {
|
return baseMapper.getPatrolResponsiblePersonAll();
|
}
|
|
/**
|
* 根据水库编号及责任人类型查询相关责任人信息
|
* @param res_cd
|
* @param personList
|
* @return
|
*/
|
@Override
|
public List<PersonVO> getPersonListByResGuid(String res_cd, List<String> personList) {
|
return baseMapper.getPersonListByResGuid(res_cd,personList);
|
}
|
|
@Override
|
public int synchronizationAddUser() {
|
// 同步没有责任人表中没有的用户
|
List<UserPersonVO> userPersonVOS = baseMapper.getPersonByUserNotExists();
|
int i = 0;
|
for (UserPersonVO vo:userPersonVOS) {
|
User user = new User();
|
user.setId(Long.parseLong(vo.getUserPhone()));
|
user.setAccount(vo.getUserPhone());
|
user.setPassword("383977f7a48c4600a6cadff28f4340cee30f3011");
|
user.setRoleId(vo.getRoleId());
|
// 如果是巡查责任人,设置为默认部门
|
if (user.getRoleId().equals("1642713427301355522")) {
|
user.setDeptId(String.valueOf(Integer.parseInt(vo.getAdCode()) + 1));
|
} else {
|
user.setDeptId(vo.getAdCode());
|
}
|
user.setDeptId(vo.getAdCode());
|
user.setName(vo.getUserName().trim());
|
user.setRealName(vo.getUserName().trim());
|
user.setPhone(vo.getUserPhone());
|
try {
|
R<Boolean> ret = userClient.saveUser(user);
|
if (ret.getData()) {
|
i++;
|
}
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
|
}
|
return i;
|
}
|
|
@Override
|
public int synchronizationUpdateUser() {
|
// 同步没有责任人表中没有的用户
|
int ret = baseMapper.updateUserByPerson();
|
return ret;
|
}
|
|
/**
|
* 通过水库代码获取巡查责任人及技术责任人手机号
|
* @param list
|
* @return
|
*/
|
@Override
|
public Set<String> getPersonListByWaterCodeList(List<String> list) {
|
return baseMapper.getPersonListByWaterCodeList(list);
|
}
|
}
|