|
@ -20,12 +20,14 @@ import com.yihu.jw.base.service.user.UserRoleService;
|
|
import com.yihu.jw.base.service.user.UserService;
|
|
import com.yihu.jw.base.service.user.UserService;
|
|
import com.yihu.jw.base.util.ConstantUtils;
|
|
import com.yihu.jw.base.util.ConstantUtils;
|
|
import com.yihu.jw.base.util.JavaBeanUtils;
|
|
import com.yihu.jw.base.util.JavaBeanUtils;
|
|
|
|
import com.yihu.jw.entity.base.doctor.BaseDoctorDO;
|
|
import com.yihu.jw.entity.base.org.BaseOrgUserDO;
|
|
import com.yihu.jw.entity.base.org.BaseOrgUserDO;
|
|
import com.yihu.jw.entity.base.user.UserDO;
|
|
import com.yihu.jw.entity.base.user.UserDO;
|
|
import com.yihu.jw.entity.base.user.UserRoleDO;
|
|
import com.yihu.jw.entity.base.user.UserRoleDO;
|
|
import com.yihu.jw.rm.base.BaseRequestMapping;
|
|
import com.yihu.jw.rm.base.BaseRequestMapping;
|
|
import com.yihu.mysql.query.BaseJpaService;
|
|
import com.yihu.mysql.query.BaseJpaService;
|
|
import com.yihu.utils.security.MD5;
|
|
import com.yihu.utils.security.MD5;
|
|
|
|
import io.swagger.models.auth.In;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.jdbc.core.BeanPropertyRowMapper;
|
|
import org.springframework.jdbc.core.BeanPropertyRowMapper;
|
|
import org.springframework.jdbc.core.JdbcTemplate;
|
|
import org.springframework.jdbc.core.JdbcTemplate;
|
|
@ -78,46 +80,66 @@ public class BaseOrgService extends BaseJpaService<BaseOrgDO, BaseOrgDao> {
|
|
* @param orgStatus
|
|
* @param orgStatus
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
public String queryOrgBaseInfoList(String codeOrName,String orgStatus,int page,int size) throws Exception {
|
|
|
|
List<Map<String,Object>> result = new ArrayList<>();
|
|
|
|
|
|
public JSONObject queryOrgBaseInfoList(String codeOrName,String orgStatus,int page,int size) throws Exception {
|
|
|
|
JSONObject result = new JSONObject();
|
|
int start = 0 == page ? page++ : (page - 1) * size;
|
|
int start = 0 == page ? page++ : (page - 1) * size;
|
|
int end = 0 == size ? size = 10 : page * size;
|
|
|
|
String code = null == codeOrName ? "": codeOrName;
|
|
|
|
String name = null == codeOrName ? "": codeOrName;
|
|
|
|
|
|
int end = 0 == size ? size = 10 : page * size;
|
|
|
|
String code = null == codeOrName ? "" : codeOrName;
|
|
|
|
String name = null == codeOrName ? "" : codeOrName;
|
|
String sql = "select id,code,name,case del when 1 then '有效' else '失效' end as status,concat(province_name,city_name,town_name,address) as address " +
|
|
String sql = "select id,code,name,case del when 1 then '有效' else '失效' end as status,concat(province_name,city_name,town_name,address) as address " +
|
|
"from base_org " +
|
|
|
|
|
|
" from base_org " +
|
|
" where " +
|
|
" where " +
|
|
" (code like '{code}' or ''='{code}')" +
|
|
|
|
|
|
" ((code like '{code}' or ''='{code}') and (del = '{orgStatus}' or ''='{orgStatus}'))" +
|
|
" or " +
|
|
" or " +
|
|
" (name like '{name}' or ''='{name}') " +
|
|
|
|
|
|
" ((name like '{name}' or ''='{name}') and (del = '{orgStatus}' or ''='{orgStatus}'))" +
|
|
" and" +
|
|
" and" +
|
|
" (del = '{orgStatus}' or ''='{orgStatus}')" +
|
|
" (del = '{orgStatus}' or ''='{orgStatus}')" +
|
|
" limit {start},{end}";
|
|
" limit {start},{end}";
|
|
String finalSql = sql.replace("{code}", "%" + code + "%")
|
|
|
|
|
|
String finalSql = sql
|
|
|
|
|
|
|
|
.replace("{code}", "%" + code + "%")
|
|
.replace("{name}", "%" + name + "%")
|
|
.replace("{name}", "%" + name + "%")
|
|
.replace("{orgStatus}", null == orgStatus ? "": orgStatus).replace("{start}", String.valueOf(start))
|
|
|
|
|
|
.replace("{orgStatus}", null == orgStatus ? "" : orgStatus).replace("{start}", String.valueOf(start))
|
|
.replace("{end}", String.valueOf(end));
|
|
.replace("{end}", String.valueOf(end));
|
|
result = jdbcTemplate.queryForList(finalSql);
|
|
|
|
return JavaBeanUtils.getInstance().mapListJson(result);
|
|
|
|
|
|
|
|
|
|
String countSql = "SELECT count(id)" +
|
|
|
|
" FROM base_org " +
|
|
|
|
" WHERE " +
|
|
|
|
" ((code like '{code}' or ''='{code}') and (del = '{orgStatus}' or ''='{orgStatus}'))" +
|
|
|
|
" OR " +
|
|
|
|
" ((name like '{name}' or ''='{name}') and (del = '{orgStatus}' or ''='{orgStatus}'))" +
|
|
|
|
" AND" +
|
|
|
|
" (del = '{orgStatus}' OR ''='{orgStatus}')";
|
|
|
|
String finalCountSql = countSql
|
|
|
|
.replace("{code}", "%" + code + "%")
|
|
|
|
.replace("{name}", "%" + name + "%")
|
|
|
|
.replace("{orgStatus}", null == orgStatus ? "" : orgStatus);
|
|
|
|
List<Map<String, Object>> list = jdbcTemplate.queryForList(finalSql);
|
|
|
|
Integer count = jdbcTemplate.queryForObject(finalCountSql, Integer.class);
|
|
|
|
result.put("count", count);
|
|
|
|
result.put("msg", JavaBeanUtils.getInstance().mapListJson(list));
|
|
|
|
return result;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
* 根据id查询机构
|
|
|
|
|
|
* 根据id查询机构,只查询机构的信息
|
|
* @param id
|
|
* @param id
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
public String queryOneById(String id) throws JsonProcessingException {
|
|
|
|
|
|
public JSONObject queryOneById(String id) throws JsonProcessingException {
|
|
|
|
JSONObject result = new JSONObject();
|
|
if(StringUtils.isEmpty(id)){
|
|
if(StringUtils.isEmpty(id)){
|
|
return "org not exist for id:"+id;
|
|
|
|
|
|
result.put("msg","org not exist for id:"+id);
|
|
|
|
result.put("response",ConstantUtils.FAIL);
|
|
|
|
return result;
|
|
}
|
|
}
|
|
BaseOrgDO baseOrgDO = baseOrgDao.findOne(id);
|
|
BaseOrgDO baseOrgDO = baseOrgDao.findOne(id);
|
|
if(null == baseOrgDO){
|
|
if(null == baseOrgDO){
|
|
return "";
|
|
|
|
|
|
return null;
|
|
}
|
|
}
|
|
List<BaseOrgUserDO> adminList = baseOrgUserService.findAllByOrgCode(baseOrgDO.getCode());
|
|
|
|
JSONObject jsonObject = JSONObject.parseObject(objectMapper.writeValueAsString(baseOrgDO));
|
|
|
|
jsonObject.put("admin",adminList);
|
|
|
|
return jsonObject.toJSONString();
|
|
|
|
|
|
result.put("response",ConstantUtils.SUCCESS);
|
|
|
|
result.put("msg",baseOrgDO);
|
|
|
|
return result;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@ -127,13 +149,13 @@ public class BaseOrgService extends BaseJpaService<BaseOrgDO, BaseOrgDao> {
|
|
*/
|
|
*/
|
|
public String createOrUpdateOrg(BaseOrgDO baseOrgDO,JSONObject orgAdminJson){
|
|
public String createOrUpdateOrg(BaseOrgDO baseOrgDO,JSONObject orgAdminJson){
|
|
UserDO userDO = null;
|
|
UserDO userDO = null;
|
|
String mobile = orgAdminJson.getString("mobile");
|
|
|
|
String adminName = orgAdminJson.getString("orgAdmin");
|
|
|
|
if(StringUtils.isEmpty(mobile)){
|
|
|
|
return "paramter for admin is null";
|
|
|
|
}
|
|
|
|
//id为空表示新增
|
|
//id为空表示新增
|
|
if(StringUtils.isEmpty(baseOrgDO.getId())){
|
|
if(StringUtils.isEmpty(baseOrgDO.getId())){
|
|
|
|
String mobile = orgAdminJson.getString("mobile");
|
|
|
|
String adminName = orgAdminJson.getString("orgAdmin");
|
|
|
|
if(StringUtils.isEmpty(mobile)){
|
|
|
|
return "paramter for admin is null";
|
|
|
|
}
|
|
baseOrgDO.setOrgAdmin(adminName);
|
|
baseOrgDO.setOrgAdmin(adminName);
|
|
baseOrgDao.save(baseOrgDO);
|
|
baseOrgDao.save(baseOrgDO);
|
|
|
|
|
|
@ -156,15 +178,10 @@ public class BaseOrgService extends BaseJpaService<BaseOrgDO, BaseOrgDao> {
|
|
userRoleDO.setUserId(userDO.getId());
|
|
userRoleDO.setUserId(userDO.getId());
|
|
userRoleService.save(userRoleDO);
|
|
userRoleService.save(userRoleDO);
|
|
}else{
|
|
}else{
|
|
String adminId = orgAdminJson.getString("id");
|
|
|
|
if(StringUtils.isEmpty(adminId)){
|
|
|
|
return "paramter id for admin is null when update";
|
|
|
|
}
|
|
|
|
BaseOrgDO oldBaseOrgDO = baseOrgDao.findOne(baseOrgDO.getId());
|
|
BaseOrgDO oldBaseOrgDO = baseOrgDao.findOne(baseOrgDO.getId());
|
|
if(null == oldBaseOrgDO){
|
|
if(null == oldBaseOrgDO){
|
|
return "no exist this org";
|
|
return "no exist this org";
|
|
}
|
|
}
|
|
baseOrgDO.setOrgAdmin(adminName);
|
|
|
|
baseOrgDao.save(baseOrgDO);
|
|
baseOrgDao.save(baseOrgDO);
|
|
if(!baseOrgDO.getTownCode().equalsIgnoreCase(oldBaseOrgDO.getTownCode())){
|
|
if(!baseOrgDO.getTownCode().equalsIgnoreCase(oldBaseOrgDO.getTownCode())){
|
|
orgTreeService.updateOrgTreeNode(oldBaseOrgDO,baseOrgDO,OrgTree.Level.town.getLevelValue());
|
|
orgTreeService.updateOrgTreeNode(oldBaseOrgDO,baseOrgDO,OrgTree.Level.town.getLevelValue());
|
|
@ -175,14 +192,6 @@ public class BaseOrgService extends BaseJpaService<BaseOrgDO, BaseOrgDao> {
|
|
if(!baseOrgDO.getProvinceCode().equalsIgnoreCase(oldBaseOrgDO.getProvinceCode())){
|
|
if(!baseOrgDO.getProvinceCode().equalsIgnoreCase(oldBaseOrgDO.getProvinceCode())){
|
|
orgTreeService.updateOrgTreeNode(oldBaseOrgDO,baseOrgDO,OrgTree.Level.province.getLevelValue());
|
|
orgTreeService.updateOrgTreeNode(oldBaseOrgDO,baseOrgDO,OrgTree.Level.province.getLevelValue());
|
|
}
|
|
}
|
|
userDO = userService.findById(adminId);
|
|
|
|
//没有修改就不保存
|
|
|
|
if(StringUtils.endsWithIgnoreCase(adminName,userDO.getUsername()) && StringUtils.endsWithIgnoreCase(mobile,userDO.getMobile())){
|
|
|
|
return ConstantUtils.SUCCESS;
|
|
|
|
}
|
|
|
|
userDO.setName(adminName);
|
|
|
|
userDO.setMobile(mobile);
|
|
|
|
userService.save(userDO);
|
|
|
|
}
|
|
}
|
|
return ConstantUtils.SUCCESS;
|
|
return ConstantUtils.SUCCESS;
|
|
}
|
|
}
|
|
@ -200,6 +209,30 @@ public class BaseOrgService extends BaseJpaService<BaseOrgDO, BaseOrgDao> {
|
|
return baseOrgDao.existsByCode(code);
|
|
return baseOrgDao.existsByCode(code);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 生效或失效单个机构
|
|
|
|
* @param id
|
|
|
|
* @param del
|
|
|
|
* @return
|
|
|
|
*/
|
|
|
|
public String enableOrDisableOrg(String id,String del){
|
|
|
|
JSONObject result = new JSONObject();
|
|
|
|
if(StringUtils.isEmpty(id) || StringUtils.isEmpty(del)){
|
|
|
|
result.put("msg","parameter id or del is null");
|
|
|
|
result.put("response",ConstantUtils.FAIL);
|
|
|
|
return result.toJSONString();
|
|
|
|
}
|
|
|
|
BaseOrgDO baseOrgDO = baseOrgDao.findOne(id);
|
|
|
|
if( null == baseOrgDO ){
|
|
|
|
result.put("msg","org not exist for id:" + id);
|
|
|
|
result.put("response",ConstantUtils.FAIL);
|
|
|
|
return result.toJSONString();
|
|
|
|
}
|
|
|
|
baseOrgDO.setDel(del);
|
|
|
|
this.save(baseOrgDO);
|
|
|
|
result.put("response",ConstantUtils.SUCCESS);
|
|
|
|
return result.toJSONString();
|
|
|
|
}
|
|
/**
|
|
/**
|
|
* 构建机构区域树形结构
|
|
* 构建机构区域树形结构
|
|
* @return
|
|
* @return
|