kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java
@@ -156,9 +156,9 @@ int surplus = surplusDay.intValue(); mapVo.put("surplus",surplus); mapVo.put("logo",logo); //获取 售后服务工程师 mapVo.put("saleUserName",sysOrganization.getSaleUserName()); mapVo.put("saleUserTel",sysOrganization.getSaleUserTel()); //获取 售后服务工程师********不能从sysOrganization获取,从department获取 /* mapVo.put("saleUserName",sysOrganization.getSaleUserName()); mapVo.put("saleUserTel",sysOrganization.getSaleUserTel());*/ return ResultBody.ok().data(mapVo); }else { return ResultBody.failed("该用户套餐已经失效"); kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDepartment.java
@@ -2,6 +2,8 @@ import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.kidgrow.common.model.SuperModel; import lombok.AllArgsConstructor; import lombok.Data; @@ -36,22 +38,29 @@ /** * 组织Id */ @JsonSerialize(using = ToStringSerializer.class) private Long orgId; /** * 医院Id */ @NotNull(message = "医院Id不能为空") @JsonSerialize(using = ToStringSerializer.class) private Long hospitalId; /** * 负责的销售代表 */ @NotNull(message = "负责的销售代表不能为空") @NotNull(message = "服务代表不能为空") @JsonSerialize(using = ToStringSerializer.class) private Long serverUserId; /** * 销售代表的名字 */ @NotEmpty(message = "销售代表的名字不能为空") @NotEmpty(message = "服务代表的名字不能为空") private String serverUserName; /** * 销售代表电话 */ private String serverUserTel; /** * 状态,1启用,0停用 */ @@ -61,4 +70,20 @@ */ @TableLogic private Boolean isDel; /** * 负责的销售代表 */ @NotNull(message = "负责的销售代表不能为空") @JsonSerialize(using = ToStringSerializer.class) private Long saleUserId; /** * 销售代表的名字 */ @NotEmpty(message = "销售代表的名字不能为空") private String saleUserName; /** * 销售代表电话 */ private String saleUserTel; } kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysHospital.java
@@ -137,4 +137,9 @@ * 创建者的部门 */ private String createUserOrgCode; /** * 帐号数量,默认6 */ private Integer accountsCount; } kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysUserMapper.java
@@ -26,4 +26,11 @@ List<SysUser> findList(Page<SysUser> page, @Param("u") Map<String, Object> params); Integer selectCountByMap(@Param("u")Map<String, Object> map); /** * 查询指定角色用户 * @param type:0销售,1运维 * @return */ List<SysUser> findAppointUsers(@Param("type") Integer type); } kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysUserService.java
@@ -3,7 +3,6 @@ import com.kidgrow.common.model.*; import com.kidgrow.common.service.ISuperService; import com.kidgrow.usercenter.model.SysUserExcel; import org.springframework.web.bind.annotation.RequestBody; import javax.servlet.http.HttpServletRequest; import java.util.List; @@ -119,4 +118,11 @@ ResultBody registerByPhone(Map<String, Object> map); ResultBody updatePhone(Map<String, Object> map,SysUser sysUser); /** * 查询指定角色用户 * @param type:0销售,1运维 * @return */ ResultBody findAppointUsers(Integer type); } kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java
@@ -5,7 +5,6 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.kidgrow.common.annotation.LoginUser; import com.kidgrow.common.constant.CommonConstant; import com.kidgrow.common.constant.SecurityConstants; import com.kidgrow.common.context.ClientContextHolder; @@ -482,4 +481,10 @@ return ResultBody.failed("该手机号没有验证码"); } } @Override public ResultBody findAppointUsers(Integer type) { List<SysUser> list = baseMapper.findAppointUsers(type); return ResultBody.ok().data(list); } } kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysUserMapper.xml
@@ -74,4 +74,27 @@ <select id="selectCountByMap" parameterType="map" resultType="integer"> select count(*) from sys_user t <include refid="where_map" /> </select> <select id="findAppointUsers" parameterType="Integer" resultType="com.kidgrow.common.model.SysUser"> SELECT USERS.id, USERS.nickname, USERS.mobile FROM `sys_role_user` RU LEFT JOIN sys_user USERS ON RU.user_id = USERS.id LEFT JOIN sys_role ROLE ON RU.role_id = ROLE.id WHERE USERS.is_del = 0 <if test="type == 0"> AND ROLE.`code` IN ( 'salemanager', 'sale') </if> <if test="type == 1"> AND ROLE.`code` IN ( 'oprationmanager', 'opration') </if> </select> </mapper> kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserController.java
@@ -375,4 +375,14 @@ public ResultBody updatePhone(@RequestBody Map<String,Object> map, @LoginUser SysUser sysUser) { return appUserService.updatePhone(map,sysUser); } /** * 获取指定用户信息(销售人员和服务人员) */ @GetMapping("users/getAppointUser") public ResultBody getAppointUser(){ String type = request.getParameter("type"); return appUserService.findAppointUsers(Integer.parseInt(type)); } } kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/resources/application.yml
@@ -74,5 +74,6 @@ - sys_role_organization ignoreSqls: - com.kidgrow.usercenter.mapper.SysRoleMapper.findAll - com.kidgrow.usercenter.mapper.SysUserMapper.findAppointUsers kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/model/SysOrganization.java
@@ -1,19 +1,13 @@ package com.kidgrow.common.model; import com.kidgrow.common.model.SuperModel; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.extension.activerecord.Model; import lombok.AllArgsConstructor; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import org.hibernate.validator.constraints.*; import org.hibernate.validator.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.util.Date; /** * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br> @@ -58,18 +52,6 @@ * 部门的code */ private String orgCode; /** * 负责的销售id */ private Long saleUserId; /** * 销售代表的名字 */ private String saleUserName; /** * 负责销售的联系方式 */ private String saleUserTel; /** * 是否删除,1删除,0未删除 */ kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_form_base.html
@@ -23,7 +23,7 @@ <label class="layui-form-label">科室名称</label> <div class="layui-input-block"> <input name="departmentName" id="departmentName" placeholder="科室名称" type="text" class="layui-input" maxlength="50" lay-verify="required" required style="width: 150px;" /> maxlength="50" lay-verify="required" required style="width: 175px;" />  </div> </div> <div class="layui-col-sm3"> @@ -42,12 +42,12 @@ </div> <div class="layui-form-item"> <div class="layui-row"> <div class="layui-col-sm7"> <div class="layui-col-sm4"> <label class="layui-form-label">医院类型</label> <div class="layui-input-block"> <input name="hospitalTypeId" id="hospitalTypeId" type="hidden" value="" /> <select name="hospitalTypeName" id="hospitalTypeName" lay-filter="hospitalTypeName" style="width: 300px;"> style="width: 50px;"> <option value="">请选择</option> </select> </div> @@ -60,6 +60,13 @@ style="width: 300px;"> <option value="">请选择</option> </select> </div> </div> <div class="layui-col-sm3"> <label class="layui-form-label">帐号数量</label> <div class="layui-input-block"> <input id="accountsCount" name="accountsCount" type="text" value="6" class="layui-input" maxlength="50" lay-verify="required|integer" style="width: 200px;" /> </div> </div> </div> @@ -94,33 +101,60 @@ </div> <div class="layui-form-item"> <div class="layui-row"> <div class="layui-col-sm3"> <div class="layui-col-sm4"> <label class="layui-form-label">区号</label> <div class="layui-input-block"> <input name="areaCode" id="areaCode" lay-verify="required" required type="text" class="layui-input" maxlength="10" /> </div> </div> <div class="layui-col-sm3"> <div class="layui-col-sm4"> <label class="layui-form-label">经度</label> <div class="layui-input-block"> <input name="longitude" id="longitude" type="text" class="layui-input" maxlength="20" /> </div> </div> <div class="layui-col-sm3"> <div class="layui-col-sm4"> <label class="layui-form-label">纬度</label> <div class="layui-input-block"> <input name="latitude" id="latitude" type="text" class="layui-input" maxlength="20" /> </div> </div> <div class="layui-col-sm3"> </div> </div> <div class="layui-form-item"> <div class="layui-row"> <div class="layui-col-sm4"> <label class="layui-form-label">服务人员</label> <div class="layui-input-block"> <input name="serverUserId" id="serverUserId" type="hidden" value="" /> <select lay-verify="required" required name="serverUserName" id="serverUserName" style="width: 150px;"> style="width: 150px;" lay-filter="serverUserName"> </select> </div> </div> <div class="layui-col-sm6"> <label class="layui-form-label">服务人电话</label> <div class="layui-input-block"> <input name="serverUserTel" id="serverUserTel" type="text" class="layui-input" maxlength="20" value=""/> </div> </div> </div> </div> <div class="layui-form-item"> <div class="layui-col-sm4"> <label class="layui-form-label">销售人员</label> <div class="layui-input-block"> <input name="saleUserId" id="saleUserId" type="hidden" value="" /> <select lay-verify="required" required name="saleUserName" id="saleUserName" style="width: 150px;" lay-filter="saleUserName"> </select> </div> </div> <div class="layui-col-sm6"> <label class="layui-form-label">销售人电话</label> <div class="layui-input-block"> <input name="saleUserTel" id="saleUserTel" type="text" class="layui-input" maxlength="20" value=""/> </div> </div> </div> @@ -141,6 +175,8 @@ </form> <script> layui.use(['form', 'table', 'util', 'config', 'admin', 'area', 'dic', 'autocomplete'], function () { var form = layui.form; var table = layui.table; @@ -152,6 +188,62 @@ var dic = layui.dic; var autocomplete = layui.autocomplete; var $ = layui.jquery; //加载服务人员信息 var loadServerUser = function (selectVal) { admin.req('api-user/users/getAppointUser', { type: 1 }, function (data) { layer.closeAll('loading'); if (0 === data.code) { if (data.data.length > 0) { $.each(data.data, function (index, item) { if (selectVal == item.id) { $('#serverUserName').append(new Option(item.nickname, item.id, false, true)); } else { //往下拉菜单里添加元素 $('#serverUserName').append(new Option(item.nickname, item.id, false, false)); } }) } if(hosIdForEdit == ""){ $("#serverUserTel").val(data.data[0].mobile); form.render(); } } else { layer.msg(data.msg, { icon: 2, time: 500 }); } }, 'get'); } //加载销售人员信息 var loadSaleUser = function (selectVal) { admin.req('api-user/users/getAppointUser', { type: 0 }, function (data) { layer.closeAll('loading'); if (0 === data.code) { if (data.data.length > 0) { $.each(data.data, function (index, item) { //往下拉菜单里添加元素 if (selectVal == item.id) { $('#saleUserName').append(new Option(item.nickname, item.id, false, true)); } else { $('#saleUserName').append(new Option(item.nickname, item.id, false, false)); } }); if(hosIdForEdit == ""){ $("#saleUserTel").val(data.data[0].mobile); form.render(); } } } else { layer.msg(data.msg, { icon: 2, time: 500 }); } }, 'get'); } //医院资质数据 dic.dicData("#hospitalQualifiedName", "HOSPITAL_QUALIFIED", ""); @@ -205,11 +297,15 @@ var departmentData = { serverUserId: $("#serverUserName").val(), serverUserName: $("#serverUserName option:selected").text(), serverUserTel: $("#serverUserTel").val(), departmentName: $("#departmentName").val(), id: $("#departmentId").val(), orgId: $("#departmentOrgId").val(), updateUserId: data.data.orgId, hospitalId: data.data.id hospitalId: data.data.id, saleUserId: $("#saleUserName").val(), saleUserName: $("#saleUserName option:selected").text(), saleUserTel: $("#saleUserTel").val() }; admin.req('api-user/sysdepartment', JSON.stringify(departmentData), function (data) { layer.closeAll('loading'); @@ -245,7 +341,7 @@ } }); //加载当前所在部门的在职员工 admin.req('api-user/users/getThisUserOrganizationUser', {}, function (data) { /*admin.req('api-user/users/getThisUserOrganizationUser', {}, function (data) { layer.closeAll('loading'); if (0 === data.code) { if (data.data.length > 0) { @@ -260,10 +356,12 @@ } else { layer.msg(data.msg, { icon: 2, time: 500 }); } }, 'get'); }, 'get');*/ //检查科室名是否存在 $("#departmentName").blur(function () { debugger if (edithospitalData != null) { if (edithospitalData.departmentName == $("#departmentName").val()) { return false; @@ -310,11 +408,20 @@ if (departData.length > 1) { layer.msg("该医院下有多个科室,默认显示第一个", { icon: 1, time: 2000 }); } $("#serverUserId").val(departData[0].serverUserId); $("#serverUserName").val(departData[0].serverUserId); loadServerUser(departData[0].serverUserId); $("#departmentName").val(departData[0].departmentName); $("#departmentId").val(departData[0].id); $("#departmentOrgId").val(departData[0].orgId); $("#saleUserId").val(departData[0].saleUserId); loadSaleUser(departData[0].saleUserId); if(hosIdForEdit != ""){ $("#serverUserTel").val(departData[0].serverUserTel); $("#saleUserTel").val(departData[0].saleUserTel); } form.render(); } } @@ -335,8 +442,39 @@ var hosIdForEdit = ""; if (edithospitalData != null) { hosIdForEdit = edithospitalData.hospitalId; if (!strUtil.isEmpty(hosIdForEdit)) if (!strUtil.isEmpty(hosIdForEdit)){} loadDatas(hosIdForEdit); } layui.use('form', function () { var $ = layui.$ , layer = layui.layer , form = layui.form form.verify({ integer: [ /^[1-9]\d*$/ , '只能输入正整数' ] }); }); form.on("select(serverUserName)", function (data) { loadUserMobile('serverUserTel',data.value); }); form.on("select(saleUserName)", function (data) { loadUserMobile('saleUserTel',data.value); }); var loadUserMobile = function(id,userId){ admin.req('api-user/users/' + userId, { }, function (data) { if (data != null) { $("#" + id).val(data.mobile); }else { layer.msg(data.msg, { icon: 2, time: 500 }); } }, 'get') } }); </script>