From b5d80f607c87f04a70d09a16f456612dab69aff9 Mon Sep 17 00:00:00 2001 From: zhaoxiaohao <913652501@qq.com> Date: Mon, 27 Apr 2020 16:54:02 +0800 Subject: [PATCH] 添加获取真实姓名,修改医生的bug --- kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDoctorService.java | 3 kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/feign/fallback/SysDoctorServiceFallbackFactory.java | 35 +++++ kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor.html | 75 +++++++----- kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDoctorController.java | 10 + kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/company.html | 2 kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/model/SysDoctor.java | 125 ++++++++++++++++++++ kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/filter/UserInfoHeaderFilter.java | 34 ++++- kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctorTemplete.html | 4 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java | 40 +++++- kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/feign/SysDoctorService.java | 32 +++++ 10 files changed, 311 insertions(+), 49 deletions(-) diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDoctorService.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDoctorService.java index a60f8c9..2eceddb 100644 --- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDoctorService.java +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDoctorService.java @@ -9,6 +9,7 @@ import com.kidgrow.usercenter.vo.SysDoctorVo; import javax.servlet.http.HttpServletRequest; +import java.util.List; import java.util.Map; /** @@ -40,5 +41,7 @@ ResultBody enable(Map<String, Object> params); boolean saveOrUpdateSer(SysDoctorDto sysDoctor, HttpServletRequest request,SysUser user); + + List<SysDoctor> findByMap(Map<String, Object> map); } diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java index ddb172a..938e2b0 100644 --- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java @@ -8,7 +8,9 @@ import com.kidgrow.redis.util.RedisUtils; import com.kidgrow.usercenter.mapper.SysRoleMapper; import com.kidgrow.usercenter.mapper.SysRoleOrganizationMapper; +import com.kidgrow.usercenter.mapper.SysUserRoleMapper; import com.kidgrow.usercenter.model.SysRoleOrganization; +import com.kidgrow.usercenter.model.SysRoleUser; import com.kidgrow.usercenter.service.ISysRoleOrganizationService; import com.kidgrow.usercenter.service.ISysUserOrgService; import com.kidgrow.usercenter.service.ISysUserService; @@ -61,7 +63,12 @@ private RedisUtils redisUtils; @Autowired private SysRoleOrganizationServiceImpl SysRoleOrganizationServiceImpl; + @Autowired + private SysRoleMapper sysRoleMapper; + @Autowired + private SysUserRoleMapper sysUserRoleMapper; + private final String HOSPITAL_ADMIN="hospital_admin"; @Override public PageResult<SysDoctorVo> findList(Map<String, Object> params, SysUser user) { @@ -113,15 +120,17 @@ public ResultBody enable(Map<String, Object> params) { Long aLong = MapUtils.getLong(params,"id"); SysDoctor sysDoctor = baseMapper.selectById(aLong); + Boolean enabled = MapUtils.getBoolean(params, "enabled"); if (sysDoctor != null && sysDoctor.getUserId() != null) { SysUser byId = iSysUserService.getById(sysDoctor.getUserId()); if(byId!=null){ - byId.setEnabled(true); + byId.setEnabled(enabled); iSysUserService.updateById(byId); } } if(sysDoctor!=null){ - sysDoctor.setEnabled(true); + + sysDoctor.setEnabled(enabled); baseMapper.updateById(sysDoctor); }else { return ResultBody.failed("禁用失败"); @@ -153,6 +162,20 @@ sysUser.setCreateUserName(byId.getUsername()); } iSysUserService.save(sysUser); + //保存 角色信息 + Map<String,Object> map= new HashMap<>(); + map.put("code",HOSPITAL_ADMIN); + map.put("enabled",1); + map.put("is_del",0); + List<SysRole> sysRoles = sysRoleMapper.selectByMap(map); + if(sysRoles.size()>0){ + //保存一个角色 + SysRole sysRole = sysRoles.get(0); + SysRoleUser sysRoleUser=new SysRoleUser(); + sysRoleUser.setRoleId(sysRole.getId()); + sysRoleUser.setUserId(sysUser.getId()); + int insert = sysUserRoleMapper.insert(sysRoleUser); + } //保存doctor的数据 SysDoctor sysDoc=new SysDoctor(); BeanCopier beanCopier = BeanCopier.create(SysDoctorDto.class, SysDoctor.class, false); @@ -167,17 +190,13 @@ //保存将sys_user_org 保存部门 SysUserOrg sysUserOrg=new SysUserOrg(); sysUserOrg.setUserId(sysUser.getId()); - sysUserOrg.setEnabled(false); sysUserOrg.setOrgId(sysDoctor.getDepartmentId()); - sysUserOrg.setCreateTime(new Date()); //保存公司 sysUserOrgService.saveOrUpdate(sysUserOrg); SysUserOrg sysGongsi=new SysUserOrg(); sysGongsi.setUserId(sysUser.getId()); -// sysUser.setEnabled(false); sysGongsi.setOrgId(sysDoctor.getHospitalId()); -// sysUser.setCreateTime(new Date()); - sysUserOrgService.saveOrUpdate(sysUserOrg); + sysUserOrgService.saveOrUpdate(sysGongsi); //保存到Redis boolean hset = redisUtils.hset(RedisConstant.USER_ORGANIZATION, sysUserOrg.getUserId().toString(), sysUserOrg); }else { @@ -205,4 +224,11 @@ } return true; } + + @Override + public List<SysDoctor> findByMap(Map<String, Object> map) { + map.put("enabled",1); + map.put("is_del",0); + return baseMapper.selectByMap(map); + } } diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDoctorController.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDoctorController.java index 1c70d53..b30291d 100644 --- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDoctorController.java +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDoctorController.java @@ -71,7 +71,15 @@ SysDoctor model = sysDoctorService.getById(id); return ResultBody.ok().data(model).msg("查询成功"); } - + /** + * 根据 Map 查询 + */ + @ApiOperation(value = "查询") + @PostMapping("/findByMap") + public ResultBody findByMap(@RequestBody Map<String,Object> map) { + List<SysDoctor> models = sysDoctorService.findByMap(map); + return ResultBody.ok().data(models).msg("查询成功"); + } /** * 根据SysDoctor当做查询条件进行查询 */ diff --git a/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/model/SysDoctor.java b/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/model/SysDoctor.java new file mode 100644 index 0000000..b575c8e --- /dev/null +++ b/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/model/SysDoctor.java @@ -0,0 +1,125 @@ +package com.kidgrow.common.model; + +import com.baomidou.mybatisplus.annotation.TableLogic; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import org.hibernate.validator.constraints.NotEmpty; + +import javax.validation.constraints.NotNull; + +/** + * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br> + * + * @version 1.0 + * @Description: <br> + * @Project: 用户中心<br> + * @CreateDate: Created in 2020-04-02 14:02:50 <br> + * @Author: <a href="4345453@kidgrow.com">liuke</a> + */ +@Data +@EqualsAndHashCode(callSuper = false) +@NoArgsConstructor +@AllArgsConstructor +@TableName("sys_doctor") +public class SysDoctor extends SuperModel { + private static final long serialVersionUID = 1L; + + /** + * 关联的登录帐号ID + */ + private Long userId; + /** + * 所属医院ID + */ + @NotNull(message = "所属医院ID不能为空") + private Long hospitalId; + /** + * 医院名称 + */ + @NotEmpty(message = "医院名称不能为空") + private String hospitalName; + /** + * 科室ID + */ + private Long departmentId; + /** + * 科室名称 + */ + private String departmentName; + /** + * 医生姓名 + */ + @NotEmpty(message = "医生姓名不能为空") + private String doctorName; + /** + * 医生的头像 + */ + private String doctorLogo; + /** + * 医生联系方式 + */ + @NotEmpty(message = "医生联系方式不能为空") + private String doctorTel; + /** + * 职称ID + */ + private Long doctorRankId; + /** + * 职称 + */ + private String doctorRank; + /** + * 医生其它联系方式 + */ + private String doctorOtherLink; + /** + * 医生的email + */ + private String doctorEmail; + /** + * 医生简介 + */ + private String doctorAbout; + /** + * 是否医答医生 0否1是 + */ + private Boolean isAnswer; + /** + * 是否签约医生 0否1是 + */ + private Boolean isSigning; + /** + * 是否置顶 0否1是 + */ + private Boolean isTop; + /** + * 是否删除,1删除,0未删除 + */ + @TableLogic + private Boolean isDel; + /** + * 医生状态 1正常 0试用 + */ + @NotNull(message = "医生状态 1正常 0试用不能为空") + private Boolean doctorState; + /** + * 启用禁用状态,1启用,0停用 + */ + private Boolean enabled; + + /** + * 销售代表的id + */ + private String serverUserId; + /** + * 销售代表名称 + */ + private String serverUserName; + /** + * 创建者的部门 + */ + private String createUserOrgCode; +} diff --git a/kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/feign/SysDoctorService.java b/kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/feign/SysDoctorService.java new file mode 100644 index 0000000..37c5b1b --- /dev/null +++ b/kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/feign/SysDoctorService.java @@ -0,0 +1,32 @@ +package com.kidgrow.zuul.feign; + +import com.kidgrow.common.constant.ServiceNameConstants; +import com.kidgrow.common.model.ResultBody; +import com.kidgrow.common.model.SysUserOrg; +import com.kidgrow.zuul.feign.fallback.SysDoctorServiceFallbackFactory; +import com.kidgrow.zuul.feign.fallback.SysUserOrgServiceFallbackFactory; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; +import java.util.Map; + +/** + * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br> + * + * @Description: <br> + * @Project: <br> + * @CreateDate: Created in 2020/2/22 14:33 <br> + * @Author: <a href="4345453@kidgrow.com">liuke</a> + */ +@FeignClient(name = ServiceNameConstants.USER_SERVICE, fallbackFactory = SysDoctorServiceFallbackFactory.class, decode404 = true) +public interface SysDoctorService { + /** + * 根据条件查询 + * @param map + */ + @PostMapping(value = "/sysdoctor/findByMap") + ResultBody getListByMap(@RequestBody Map<String, Object> map); +} diff --git a/kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/feign/fallback/SysDoctorServiceFallbackFactory.java b/kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/feign/fallback/SysDoctorServiceFallbackFactory.java new file mode 100644 index 0000000..36b7800 --- /dev/null +++ b/kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/feign/fallback/SysDoctorServiceFallbackFactory.java @@ -0,0 +1,35 @@ +package com.kidgrow.zuul.feign.fallback; + +import com.kidgrow.common.model.ResultBody; +import com.kidgrow.common.model.SysUserOrg; +import com.kidgrow.zuul.feign.SysDoctorService; +import com.kidgrow.zuul.feign.SysOrganizationService; +import feign.hystrix.FallbackFactory; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +import java.util.List; +import java.util.Map; + +/** + * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br> + * + * @Description: <br> + * @Project: <br> + * @CreateDate: Created in 2020/2/22 14:33 <br> + * @Author: <a href="4345453@kidgrow.com">liuke</a> + */ +@Slf4j +@Component +public class SysDoctorServiceFallbackFactory implements FallbackFactory<SysDoctorService> { + + @Override + public SysDoctorService create(Throwable throwable) { + return new SysDoctorService() { + @Override + public ResultBody getListByMap(Map<String, Object> map) { + return ResultBody.failed("获取医生姓名失败"); + } + }; + } +} diff --git a/kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/filter/UserInfoHeaderFilter.java b/kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/filter/UserInfoHeaderFilter.java index 121789a..7d7bb36 100644 --- a/kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/filter/UserInfoHeaderFilter.java +++ b/kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/filter/UserInfoHeaderFilter.java @@ -5,14 +5,17 @@ import com.kidgrow.common.constant.CommonConstant; import com.kidgrow.common.constant.SecurityConstants; import com.kidgrow.common.model.ResultBody; +import com.kidgrow.common.model.SysDoctor; import com.kidgrow.common.model.SysOrganization; import com.kidgrow.common.model.SysUser; import com.kidgrow.common.utils.AddrUtil; +import com.kidgrow.zuul.feign.SysDoctorService; import com.netflix.zuul.ZuulFilter; import com.netflix.zuul.context.RequestContext; import eu.bitwalker.useragentutils.UserAgent; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cloud.netflix.zuul.filters.support.FilterConstants; import org.springframework.security.authentication.AnonymousAuthenticationToken; import org.springframework.security.core.Authentication; @@ -23,7 +26,9 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.net.URLEncoder; +import java.util.HashMap; import java.util.List; +import java.util.Map; import static org.springframework.cloud.netflix.zuul.filters.support.FilterConstants.FORM_BODY_WRAPPER_FILTER_ORDER; import static org.springframework.cloud.netflix.zuul.filters.support.FilterConstants.PRE_DECORATION_FILTER_ORDER; @@ -39,6 +44,8 @@ @Slf4j @Component public class UserInfoHeaderFilter extends ZuulFilter { + @Autowired + SysDoctorService sysDoctorService; @Override public String filterType() { return FilterConstants.PRE_TYPE; @@ -54,6 +61,8 @@ return true; } + + @SneakyThrows @Override public Object run() { @@ -66,18 +75,31 @@ String tenantId = ""; //客户端模式只返回一个clientId if (principal instanceof SysUser) { + SysUser user = (SysUser) authentication.getPrincipal(); + Map<String,Object> map=new HashMap<>(); + map.put("user_id",user.getId()); + ResultBody listByMap = sysDoctorService.getListByMap(map); + + List<SysDoctor> sysDoctors = JSON.parseArray(JSON.toJSONString(listByMap.getData()), SysDoctor.class); + String str=""; + if(sysDoctors!=null&&sysDoctors.size()>0){ + str= sysDoctors.get(0).getDoctorName(); + } ctx.addZuulRequestHeader(SecurityConstants.USER_ID_HEADER, String.valueOf(user.getId())); ctx.addZuulRequestHeader(SecurityConstants.USER_HEADER, user.getUsername()); - ctx.addZuulRequestHeader(SecurityConstants.USER_REAL_NAME, "");//待完善 + + ctx.addZuulRequestHeader(SecurityConstants.USER_REAL_NAME,str);//待完善 List<SysOrganization> organizations = (List<SysOrganization>) user.getOrganizations(); //将组织数据 存到header 里面 organizations.sort((e1,e2)->e1.getOrgLevel().compareTo(e2.getOrgLevel())); - ctx.addZuulRequestHeader(SecurityConstants.USER_ORG_ID_HEADER,String.valueOf(organizations.get(0).getId())); - ctx.addZuulRequestHeader(SecurityConstants.USER_ORG_NAME_HEADER, URLEncoder.encode(organizations.get(0).getOrgName(),"UTF-8")); - ctx.addZuulRequestHeader(SecurityConstants.USER_DEP_ID_HEADER,String.valueOf(organizations.get(organizations.size()-1).getId())); - ctx.addZuulRequestHeader(SecurityConstants.USER_DEP_NAME_HEADER,URLEncoder.encode(organizations.get(organizations.size()-1).getOrgName(),"UTF-8")); - ctx.addZuulRequestHeader(SecurityConstants.USER_ORGS_HEADER,JSON.toJSONString(organizations)); + if (organizations != null&&organizations.size()>0) { + ctx.addZuulRequestHeader(SecurityConstants.USER_ORG_ID_HEADER,String.valueOf(organizations.get(0).getId())); + ctx.addZuulRequestHeader(SecurityConstants.USER_ORG_NAME_HEADER, URLEncoder.encode(organizations.get(0).getOrgName(),"UTF-8")); + ctx.addZuulRequestHeader(SecurityConstants.USER_DEP_ID_HEADER,String.valueOf(organizations.get(organizations.size()-1).getId())); + ctx.addZuulRequestHeader(SecurityConstants.USER_DEP_NAME_HEADER,URLEncoder.encode(organizations.get(organizations.size()-1).getOrgName(),"UTF-8")); + ctx.addZuulRequestHeader(SecurityConstants.USER_ORGS_HEADER,JSON.toJSONString(organizations)); + } //将角色放到header ctx.addZuulRequestHeader(SecurityConstants.ROLE_HEADER, JSON.toJSONString(user.getRoles())); tenantId=String.valueOf(organizations.get(0).getId()); diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/company.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/company.html index 10ed26f..24705db 100644 --- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/company.html +++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/company.html @@ -26,7 +26,7 @@ </script> <!-- 表格状态列 --> <script type="text/html" id="company-tpl-state"> - <input type="checkbox" lay-filter="company-tpl-state" value="{{d.id}}" lay-skin="switch" lay-text="正常|以停用" + <input type="checkbox" lay-filter="company-tpl-state" value="{{d.id}}" lay-skin="switch" lay-text="正常|已停用" {{d.enabled==true?'checked':''}}/> </script> <!-- 表单弹窗 --> diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor.html index e2433f0..f63ed3f 100644 --- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor.html +++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor.html @@ -34,10 +34,14 @@ <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="reset">重置密码</a> <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a> <a class="layui-btn layui-btn-xs" lay-event="del">删除</a> - <a class="layui-btn layui-btn-xs" lay-event="enable">停用</a> + <!-- <a class="layui-btn layui-btn-xs" lay-event="enable">停用</a> --> </script> - +<!-- 表格状态列 --> +<script type="text/html" id="doctor-tpl-state"> + <input type="checkbox" lay-filter="doctor-tpl-state" value="{{d.id}}" lay-skin="switch" lay-text="正常|已停用" + {{d.enabled==true?'checked':''}}/> +</script> <!-- 表单弹窗 --> <script type="text/html" id="app-model"> <form id="app-form" lay-filter="app-form" class="layui-form model-form" > @@ -47,7 +51,7 @@ <label class="layui-form-label">医院名称</label> <div class="layui-input-block"> <input name="hospitalName" id="hospitalName" type="hidden" class="layui-input" maxlength="20"/> - <select id="hospitalId" name="hospitalId" lay-filter="getdepartment" placeholder="选择一个应用" lay-filter="role_clients"> + <select id="hospitalId" name="hospitalId" lay-filter="getdepartment" placeholder="选择一个应用" lay-verify="required" required> <option value="">-请选择-</option> </select> </div> @@ -56,7 +60,7 @@ <label class="layui-form-label">科室</label> <div class="layui-input-block"> <input name="departmentName" id="departmentName" placeholder="请输入应用名称" type="hidden" class="layui-input" maxlength="20"/> - <select id="departmentId" name="departmentId" lay-filter="departmentId" placeholder="选择一个应用" lay-filter="role_clients"> + <select id="departmentId" name="departmentId" lay-filter="departmentId" placeholder="选择一个应用" lay-verify="required" required> <option value="">-请选择-</option> </select> </div> @@ -74,7 +78,7 @@ <div class="layui-form-item"> <label class="layui-form-label" >销售代表名称</label> <div class="layui-input-block"> - <input name="serverUserName" type="text" class="layui-input" maxlength="15"/> + <input name="serverUserName" type="text" class="layui-input" maxlength="15" lay-verify="required" required/> </div> </div> </div> @@ -82,13 +86,13 @@ <div class="layui-form-item"> <label class="layui-form-label">联系方式</label> <div class="layui-input-block"> - <input name="doctorTel" type="text" class="layui-input" maxlength="20"/> + <input name="doctorTel" type="text" class="layui-input" maxlength="20" lay-verify="required|phone" required/> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">职称</label> <div class="layui-input-block"> - <input name="doctorRank" type="text" class="layui-input" maxlength="20"/> + <input name="doctorRank" type="text" class="layui-input" maxlength="20" lay-verify="required" required/> </div> </div> </div> @@ -96,13 +100,13 @@ <div class="layui-form-item"> <label class="layui-form-label">其它联系方式</label> <div class="layui-input-block"> - <input name="doctorOtherLink" type="text" class="layui-input" maxlength="20"/> + <input name="doctorOtherLink" type="text" class="layui-input" maxlength="20" lay-verify="required" required/> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">医生的email</label> <div class="layui-input-block"> - <input name="doctorEmail" type="text" class="layui-input" maxlength="20"/> + <input name="doctorEmail" type="text" class="layui-input" maxlength="20" lay-verify="required|email" required/> </div> </div> </div> @@ -175,7 +179,7 @@ <label class="layui-form-label">医院名称</label> <div class="layui-input-block"> <input name="hospitalName" id="hospitalId-add" type="hidden" class="layui-input" maxlength="20"/> - <select id="hospitalName-add" name="hospitalId" lay-filter="getdepartment-add" placeholder="选择一个应用" lay-filter="role_clients"> + <select id="hospitalName-add" name="hospitalId" lay-filter="getdepartment-add" placeholder="选择一个应用" lay-verify="required" required > <option value="">-请选择-</option> </select> </div> @@ -193,7 +197,7 @@ <label class="layui-form-label">科室</label> <div class="layui-input-block"> <input name="departmentName" id="departmentName" placeholder="请输入应用名称" type="hidden" class="layui-input" maxlength="20"/> - <select id="departmentId" name="departmentId" lay-filter="departmentId" placeholder="选择一个应用" lay-filter="role_clients"> + <select id="departmentId" name="departmentId" lay-filter="departmentId" placeholder="选择一个应用" lay-verify="required" required> <option value="">-请选择-</option> </select> </div> @@ -201,7 +205,7 @@ <div class="layui-form-item"> <label class="layui-form-label">职称</label> <div class="layui-input-block"> - <select id="doctorRankId" name="doctorRankId" lay-filter="doctorRankId" placeholder="选择一个职称" > + <select id="doctorRankId" name="doctorRankId" lay-filter="doctorRankId" placeholder="选择一个职称" lay-verify="required" required> <option value="">-请选择-</option> </select> <input name="doctorRank" id='doctorRank' type="hidden" class="layui-input" maxlength="20"/> @@ -212,7 +216,7 @@ <div class="layui-form-item"> <label class="layui-form-label">联系电话</label> <div class="layui-input-block"> - <input name="doctorTel" type="text" class="layui-input" maxlength="20"/> + <input name="doctorTel" type="text" class="layui-input" maxlength="20" lay-verify="required|phone" required/> </div> </div> <div class="layui-form-item"> @@ -226,7 +230,7 @@ <div class="layui-form-item"> <label class="layui-form-label">医生的email</label> <div class="layui-input-block"> - <input name="doctorEmail" type="text" class="layui-input" maxlength="20"/> + <input name="doctorEmail" type="text" class="layui-input" maxlength="20" lay-verify="required|email" required/> </div> </div> <div class="layui-form-item"> @@ -242,7 +246,7 @@ <label class="layui-form-label" >销售代表名称</label> <div class="layui-input-block"> <input name="serverUserName" id="serverUserName-add" type="hidden" class="layui-input" maxlength="15"/> - <select id="serverUserId-add" name="serverUserId" lay-filter="serverUserId-add" placeholder="选择一个应用" lay-filter="role_clients"> + <select id="serverUserId-add" name="serverUserId" lay-filter="serverUserId-add" placeholder="选择一个应用" lay-verify="required" required> <option value="">-请选择-</option> </select> </div> @@ -282,7 +286,7 @@ <div class="layui-form-item"> <label class="layui-form-label" >登录帐号</label> <div class="layui-input-block"> - <input name="username" type="text" class="layui-input" maxlength="15"/> + <input name="username" type="text" class="layui-input" maxlength="15" lay-verify="required" required/> </div> </div> </div> @@ -290,13 +294,13 @@ <div class="layui-form-item"> <label class="layui-form-label" >登录密码</label> <div class="layui-input-block"> - <input name="password" type="text" class="layui-input" maxlength="15"/> + <input name="password" type="text" lay-verify="required" class="layui-input" maxlength="15" lay-verify="required" required/> </div> </div> <div class="layui-form-item"> <label class="layui-form-label" >确认密码</label> <div class="layui-input-block"> - <input name="passwordSure" type="text" class="layui-input" maxlength="15"/> + <input name="passwordSure" type="text" lay-verify="required|confirmPass" class="layui-input" maxlength="15"/> </div> </div> </div> @@ -333,6 +337,7 @@ var util = layui.util; var admin = layui.admin; var upload = layui.upload; + form.verify({ confirmPass:function(value){ if($('input[name=password]').val() !== value) return '两次密码输入不一致!'; }}); //医院数据绑定在弹框里 var hospital = ""; @@ -366,6 +371,25 @@ layer.msg(data.msg, { icon: 2, time: 500 }); } }, 'Post'); + + // 修改company状态 + form.on('switch(doctor-tpl-state)', function (obj) { + layer.load(2); + admin.req('api-user/sysdoctor/enable', JSON.stringify({ + id: obj.elem.value, + enabled: obj.elem.checked ? true : false + }), function (data) { + layer.closeAll('loading'); + if (data.code == 0) { + layer.msg(data.msg, { icon: 1, time: 500 }); + //table.reload('table-user', {}); + } else { + layer.msg(data.msg, { icon: 2, time: 500 }); + $(obj.elem).prop('checked', !obj.elem.checked); + form.render('checkbox'); + } + }, 'POST'); + }); //职称添加数据 var getZhiCheng = function () { admin.req('api-user/sysdictionaries/findAll', JSON.stringify({ dictionariesClassId: "1248150699682988034" }), function (data) { @@ -447,6 +471,7 @@ return d.isSigning ? "是" : "否" } }, + { field: 'enabled', width: 250, align: 'center', templet: '#doctor-tpl-state', sort: true, title: '状态' }, { field: 'createTime', width: 250, sort: true, title: '时间', templet: "<div>{{layui.util.toDateString(d.createTime, 'yyyy年MM月dd日 HH:mm:ss')}}</div>" }, { field: 'serverUserName', width: 100, sort: true, title: '销售代表' }, { width: 200, width: 300, align: 'center', toolbar: '#doctor-table-bar', sort: true, title: '操作' }, @@ -487,20 +512,6 @@ layer.msg(data.msg, { icon: 2, time: 500 }); } }, 'delete'); - }); - } else if (layEvent === 'enable') { - layer.confirm('确定删除此用户吗?', function (i) { - layer.close(i); - layer.load(2); - admin.req('api-user/sysdoctor/enable', JSON.stringify({ id: obj.data.id }), function (data) { - layer.closeAll('loading'); - if (data.code == 0) { - layer.msg(data.msg, { icon: 1, time: 500 }); - table.reload('app-table', {}); - } else { - layer.msg(data.msg, { icon: 2, time: 500 }); - } - }, 'post'); }); } }); diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctorTemplete.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctorTemplete.html index 51e9a55..0c53143 100644 --- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctorTemplete.html +++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctorTemplete.html @@ -56,7 +56,7 @@ <div class="layui-form-item"> <label class="layui-form-label">话术类型</label> <div class="layui-input-block"> - <select name="templeteType" placeholder="话术类型" > + <select name="templeteType" placeholder="话术类型" lay-verify="required" required> <option value="">-请选择-</option> <option value="0">结论</option> <option value="1">建议</option> @@ -67,7 +67,7 @@ <div class="layui-form-item"> <label class="layui-form-label">开放类型</label> <div class="layui-input-block"> - <select id="publicType-add" name="publicType" placeholder="开放类型" > + <select id="publicType-add" name="publicType" placeholder="开放类型" lay-verify="required" required> <option value="">-请选择-</option> <option value="1">公开</option> <option value="0">私有</option> -- Gitblit v1.8.0