Browse Source

Merge remote-tracking branch 'origin/master'

zhanglei
yunuo970428 2 years ago
parent
commit
3eb287f473
  1. 3
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyDetailsVo.java
  2. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyQuery.java
  3. 1
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyMapper.java
  4. 4
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyService.java
  5. 5
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectedReceivablesDetailed.java
  6. 20
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java
  7. 3
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedMapper.java
  8. 11
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedMapper.xml
  9. 8
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedService.java
  10. 4
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java
  11. 110
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskService.java
  12. 20
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysHaveMessageQuery.java
  13. 16
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeign.java
  14. 4
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeignFallback.java
  15. 2
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmenu/SysMenuMapper.java
  16. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmenu/SysMenuMapper.xml
  17. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmenu/SysMenuService.java
  18. 8
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserRest.java
  19. 59
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java

3
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyDetailsVo.java

@ -67,4 +67,7 @@ public class BusVehicleApplyDetailsVo implements Vo {
private String carBrandSid;
@ApiModelProperty(value = "品牌名称")
private String carBrandName;
@ApiModelProperty("申请人orgPath")
private String orgPath;
}

2
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyQuery.java

@ -39,4 +39,6 @@ public class BusVehicleApplyQuery implements Query {
private String schedulingTypeKey;
private String applicationCode;
@ApiModelProperty("当前组织机构的全路径sid")
private String orgPath;
}

1
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyMapper.java

@ -50,4 +50,5 @@ public interface BusVehicleApplyMapper extends BaseMapper<BusVehicleApply> {
int selectCountBySids(String join);
ActualAndOrgDeptVo getActualAndOrgDept(@Param("sid") String vehicleOrderSid, @Param("modelSid") String modelSid, @Param("configSid") String configSid);
}

4
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyService.java

@ -161,6 +161,9 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
// String orgSid = sysStaffOrgFeign.getPathSidByUserSid(query.getUserSid()).getData();
// qw.eq("bva.createOrgSid", orgSid);
// }
if(StringUtils.isNotBlank(query.getOrgPath())){
qw.eq("bva.orgSidPath",query.getOrgPath());
}
}
qw.orderByDesc("bva.id");
@ -198,6 +201,7 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
BusVehicleApplyDetailsVo busVehicleApplyDetailsVo = new BusVehicleApplyDetailsVo();
BusVehicleApply busVehicleApply = this.fetchBySid(sid);
BeanUtil.copyProperties(busVehicleApply, busVehicleApplyDetailsVo);
busVehicleApplyDetailsVo.setOrgPath(busVehicleApply.getOrgSidPath());
List<BusVehicleApplyDetailVo> busVehicleApplyDetailVos = busVehicleApplyDetailService.fetchByApplySid(sid);
busVehicleApplyDetailsVo.setBusVehicleApplyDetailList(busVehicleApplyDetailVos);
return busVehicleApplyDetailsVo;

5
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectedReceivablesDetailed.java

@ -85,4 +85,9 @@ public class FinSelectedReceivablesDetailed extends BaseEntity {
@ApiModelProperty("应收未收sid")
private String receivablesSid;
@ApiModelProperty("全款贷款key:1是全款,2贷款")
private String payTypeKey;
@ApiModelProperty("全款贷款")
private String payType;
}

20
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java

@ -1334,15 +1334,16 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
//物料列表
List<ARReceivebill.FRECEIVEBILLENTRY> fEntityList = new ArrayList<>();
ARReceivebill.FRECEIVEBILLENTRY freceivebillentry = new ARReceivebill.FRECEIVEBILLENTRY();
//推送车款
List<FinSelectedReceivablesDetailedVo> finSelectedReceivablesDetailedVos1 = finSelectedReceivablesDetailedService.fetchByAuditState1(sid, 1, "车款");
//推送订金
List<FinSelectedReceivablesDetailedVo> finSelectedReceivablesDetailedVos2 = finSelectedReceivablesDetailedService.fetchByAuditState1(sid, 1, "订金");
//推送全款车款
List<FinSelectedReceivablesDetailedVo> finSelectedReceivablesDetailedVos1 = finSelectedReceivablesDetailedService.fetchByAuditState1(sid, 1, "车款","1");
//推送全款订金
List<FinSelectedReceivablesDetailedVo> finSelectedReceivablesDetailedVos2 = finSelectedReceivablesDetailedService.fetchByAuditState1(sid, 1, "订金","1");
List<FinSelectedReceivablesDetailedVo> voListv = finSelectedReceivablesDetailedService.selectDetailsList(sid, 1, "车款");
//查询是否含有车架号
List<String> stringsVin = voListv.stream().filter(v -> StringUtils.isNotBlank(v.getVIN())).map(v -> v.getVIN()).collect(Collectors.toList());
stringsVin.removeAll(Collections.singleton(null));
int carSize = 0;
//全款推送车款
if (finSelectedReceivablesDetailedVos1.size() > 0) {
if (!stringsVin.isEmpty()) {
//查询根据客户名称和手机号有哪些客户
@ -1464,7 +1465,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
}
//推送订金
//全款推送订金
if (finSelectedReceivablesDetailedVos2.size() > 0) {
voListv = finSelectedReceivablesDetailedService.selectDetailsList(sid, 1, "订金");
//查询是否含有车架号
@ -1581,7 +1582,16 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
}
//贷款推送车款
List<FinSelectedReceivablesDetailedVo> finSelectedReceivablesDetailedVos1_1 = finSelectedReceivablesDetailedService.fetchByAuditState1_1(sid, 1, "车款","2");
//贷款推送订金
List<FinSelectedReceivablesDetailedVo> finSelectedReceivablesDetailedVos2_1 = finSelectedReceivablesDetailedService.fetchByAuditState1_1(sid, 1, "订金","2");
if(finSelectedReceivablesDetailedVos1_1.size()>0){
}
if(finSelectedReceivablesDetailedVos2_1.size()>0){
}
//简易订单-订金收取
if (finSelectedReceivablesDetailedVos1.isEmpty() && finSelectedReceivablesDetailedVos2.isEmpty()) {
//先推送客户

3
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedMapper.java

@ -107,7 +107,8 @@ public interface FinSelectedReceivablesDetailedMapper extends BaseMapper<FinSele
List<FinSelectedReceivablesDetailed> getList(@Param("list") List<String> sidsList);
List<FinSelectedReceivablesDetailedVo> fetchByAuditState1(@Param("sid") String sid, @Param("state") int i, @Param("type") String type);
List<FinSelectedReceivablesDetailedVo> fetchByAuditState1(@Param("sid") String sid, @Param("state") int i, @Param("type") String type,@Param("payTypeKey")String payTypeKey);
List<FinSelectedReceivablesDetailedVo> fetchByAuditState1_1(@Param("sid") String sid, @Param("state") int i, @Param("type") String type,@Param("payTypeKey")String payTypeKey);
List<SelectCustomerVo> selectCustomerList(@Param("sid") String sid, @Param("state") int i, @Param("type") String type);

11
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedMapper.xml

@ -129,10 +129,19 @@
from fin_selected_receivables_detailed
where collSid = #{sid}
and auditState = #{state}
and receivablesName = #{type}
and receivablesName = #{type} and payTypeKey = #{payTypeKey}
group by concat(customerName, customerPhone)
</select>
<select id="fetchByAuditState1_1"
resultType="com.yxt.anrui.fin.api.finselectedreceivablesdetailed.FinSelectedReceivablesDetailedVo">
select *, sum(subscriptionMoney) as sumAll
from fin_selected_receivables_detailed
where collSid = #{sid}
and auditState = #{state}
and receivablesName = #{type} and payTypeKey = #{payTypeKey}
</select>
<select id="selectCustomerList" resultType="com.yxt.anrui.fin.api.finselectedreceivablesdetailed.SelectCustomerVo">
select customerName, customerPhone,customerSid
from fin_selected_receivables_detailed

8
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedService.java

@ -222,8 +222,12 @@ public class FinSelectedReceivablesDetailedService extends MybatisBaseService<Fi
return baseMapper.getList(sidsList);
}
public List<FinSelectedReceivablesDetailedVo> fetchByAuditState1(String sid, int i, String type) {
return baseMapper.fetchByAuditState1(sid, i, type);
public List<FinSelectedReceivablesDetailedVo> fetchByAuditState1(String sid, int i, String type,String payTypeKey) {
return baseMapper.fetchByAuditState1(sid, i, type,payTypeKey);
}
public List<FinSelectedReceivablesDetailedVo> fetchByAuditState1_1(String sid, int i, String type,String payTypeKey) {
return baseMapper.fetchByAuditState1_1(sid, i, type,payTypeKey);
}
public List<SelectCustomerVo> selectCustomerList(String sid, int i, String type) {

4
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java

@ -156,8 +156,8 @@ public class FlowableRest implements FlowableFeign {
if(dto.getFormVariables()==null)
dto.setFormVariables(new HashMap<String, Object>());
Map<String, Object> formVariables = dto.getFormVariables();
if(formVariables.get("orgPath")!=null){
String orgPath=formVariables.get("orgPath").toString();
if(StringUtils.isNotBlank(dto.getOrgSidPath())){
String orgPath=dto.getOrgSidPath();
formVariables.put("createrOrgPath",orgPath);//发起人的组织结构sid
//dto.setFormVariables(formVariables);
}

110
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskService.java

@ -33,6 +33,7 @@ import com.yxt.anrui.portal.api.sysuser.UserQuery;
import com.yxt.anrui.portal.api.sysuserrole.SysUserRoleFeign;
import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.ConstantUtils;
import com.yxt.common.base.utils.DateUtils;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery;
@ -548,13 +549,25 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
if(sysUserVoResultBean.getData()!=null){
flowTask.setStartUserSid(sysUserVoResultBean.getData().getSid());
flowTask.setStartUserName(sysUserVoResultBean.getData().getName());
ResultBean<String> pathSidByUserSid = sysStaffOrgFeign.getPathSidByUserSid(sysUserVoResultBean.getData().getSid());
String createOrgPath = ConstantUtils.getString(flowTask.getProcessVariables(),"createrOrgPath","");
String ogrName="";
if(pathSidByUserSid.getData()!=null){
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(pathSidByUserSid.getData());
ogrName=sysOrganizationVoResultBean.getData().getName();
if(StringUtils.isNotBlank(createOrgPath)){
List<String> stringList = Arrays.asList(createOrgPath.split("/"));
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(stringList.get(stringList.size()-1));
if(sysOrganizationVoResultBean.getData() != null){
if(StringUtils.isNotBlank(sysOrganizationVoResultBean.getData().getPsid())){
ResultBean<SysOrganizationVo> sysOrganizationVoResultBeanP = sysOrganizationFeign.fetchBySid(sysOrganizationVoResultBean.getData().getPsid());
if(sysOrganizationVoResultBeanP.getData() != null){
ogrName=sysOrganizationVoResultBean.getData().getName();
flowTask.setStartDeptName(ogrName+"-"+sysOrganizationVoResultBean.getData().getName());
}
}else{
flowTask.setStartDeptName(sysOrganizationVoResultBean.getData().getName());
}
}
}else{
flowTask.setStartDeptName(sysUserVoResultBean.getData().getOrganizationName());
}
flowTask.setStartDeptName(ogrName+"-"+sysUserVoResultBean.getData().getOrganizationName());
}
ResultBean<SysUserVo> sysUserVoResultBean2 = sysUserFeign.fetchBySid(userSid);
flowTask.setAssigneeName(sysUserVoResultBean2.getData().getName());
@ -764,13 +777,13 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
if(sysUserVoResultBean.getData()!=null){
flowTask.setStartUserSid(sysUserVoResultBean.getData().getSid());
flowTask.setStartUserName(sysUserVoResultBean.getData().getName());
ResultBean<String> pathSidByUserSid = sysStaffOrgFeign.getPathSidByUserSid(sysUserVoResultBean.getData().getSid());
/*ResultBean<String> pathSidByUserSid = sysStaffOrgFeign.getPathSidByUserSid(sysUserVoResultBean.getData().getSid());
String ogrName="";
if(pathSidByUserSid.getData()!=null){
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(pathSidByUserSid.getData());
ogrName=sysOrganizationVoResultBean.getData().getName();
}
flowTask.setStartDeptName(ogrName+"-"+sysUserVoResultBean.getData().getOrganizationName());
flowTask.setStartDeptName(ogrName+"-"+sysUserVoResultBean.getData().getOrganizationName());*/
}
// flowTask.setStartDeptName(sysUserVoResultBean.getData().getOrganizationName());
HistoricTaskInstance historicTaskInstance = historyService.createHistoricTaskInstanceQuery().includeProcessVariables().taskId(flowTask.getTaskId()).singleResult();
@ -786,12 +799,30 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
flowTask.setEndTime(new Date(end_time_t_l));
}
flowTask.setProcessVariables(historicTaskInstance.getProcessVariables());
// 设置手机端参数
// Map<String, Map<String, Object>> map = getAppOrPcVariables(flowTask);
// flowTask.setAppVariables(map.get("appVariables"));
// flowTask.setPcVariables(map.get("pcVariables"));
String createOrgPath = ConstantUtils.getString(flowTask.getProcessVariables(),"createrOrgPath","");
String ogrName="";
if(StringUtils.isNotBlank(createOrgPath)){
List<String> stringList = Arrays.asList(createOrgPath.split("/"));
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(stringList.get(stringList.size()-1));
if(sysOrganizationVoResultBean.getData() != null){
if(StringUtils.isNotBlank(sysOrganizationVoResultBean.getData().getPsid())){
ResultBean<SysOrganizationVo> sysOrganizationVoResultBeanP = sysOrganizationFeign.fetchBySid(sysOrganizationVoResultBean.getData().getPsid());
if(sysOrganizationVoResultBeanP.getData() != null){
ogrName=sysOrganizationVoResultBean.getData().getName();
flowTask.setStartDeptName(ogrName+"-"+sysOrganizationVoResultBean.getData().getName());
}
}else{
flowTask.setStartDeptName(sysOrganizationVoResultBean.getData().getName());
}
}
}else{
ResultBean<String> pathSidByUserSid = sysStaffOrgFeign.getPathSidByUserSid(sysUserVoResultBean.getData().getSid());
if(pathSidByUserSid.getData()!=null){
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(pathSidByUserSid.getData());
ogrName=sysOrganizationVoResultBean.getData().getName();
}
flowTask.setStartDeptName(ogrName+"-"+sysUserVoResultBean.getData().getOrganizationName());
}
hisTaskList.add(flowTask);
}
page.setTotal(count);
@ -895,7 +926,7 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
ResultBean<SysUserVo> sysUserVoResultBean = sysUserFeign.fetchBySid(histTask.get("START_USER_ID_").toString());
flowTask.setStartUserSid(sysUserVoResultBean.getData().getSid());
flowTask.setStartUserName(sysUserVoResultBean.getData().getName());
flowTask.setStartDeptName(sysUserVoResultBean.getData().getOrganizationName());
// flowTask.setStartDeptName(sysUserVoResultBean.getData().getOrganizationName());
HistoricTaskInstance historicTaskInstance = historyService.createHistoricTaskInstanceQuery().includeProcessVariables().taskId(flowTask.getTaskId()).singleResult();
flowTask.setProcessVariables(historicTaskInstance.getProcessVariables());
Object end_act_id = histTask.get("end_act_id_");
@ -914,10 +945,32 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
if(listResultBean.getData()!=null&&listResultBean.getData().size()>0){
flowTask.setSysProUrlVo(listResultBean.getData().get(0));
}
// 设置手机端参数
// Map<String, Map<String, Object>> map = getAppOrPcVariables(flowTask);
// flowTask.setAppVariables(map.get("appVariables"));
// flowTask.setPcVariables(map.get("pcVariables"));
//发起人部门
String createOrgPath = ConstantUtils.getString(flowTask.getProcessVariables(),"createOrgPath","");
String ogrName="";
if(StringUtils.isNotBlank(createOrgPath)){
List<String> stringList = Arrays.asList(createOrgPath.split("/"));
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(stringList.get(stringList.size()-1));
if(sysOrganizationVoResultBean.getData() != null){
if(StringUtils.isNotBlank(sysOrganizationVoResultBean.getData().getPsid())){
ResultBean<SysOrganizationVo> sysOrganizationVoResultBeanP = sysOrganizationFeign.fetchBySid(sysOrganizationVoResultBean.getData().getPsid());
if(sysOrganizationVoResultBeanP.getData() != null){
ogrName=sysOrganizationVoResultBean.getData().getName();
flowTask.setStartDeptName(ogrName+"-"+sysOrganizationVoResultBean.getData().getName());
}
}else{
flowTask.setStartDeptName(sysOrganizationVoResultBean.getData().getName());
}
}
}else{
ResultBean<String> pathSidByUserSid = sysStaffOrgFeign.getPathSidByUserSid(sysUserVoResultBean.getData().getSid());
if(pathSidByUserSid.getData()!=null){
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(pathSidByUserSid.getData());
ogrName=sysOrganizationVoResultBean.getData().getName();
}
flowTask.setStartDeptName(ogrName+"-"+sysUserVoResultBean.getData().getOrganizationName());
}
hisTaskList.add(flowTask);
}
@ -1977,7 +2030,26 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
if(sysUserVoResultBean.getData() != null) {
flowTask.setStartUserSid(sysUserVoResultBean.getData().getSid());
flowTask.setStartUserName(sysUserVoResultBean.getData().getName());
flowTask.setStartDeptName(sysUserVoResultBean.getData().getOrganizationName());
// flowTask.setStartDeptName(sysUserVoResultBean.getData().getOrganizationName());
String createOrgPath = ConstantUtils.getString(flowTask.getProcessVariables(),"createOrgPath","");
String ogrName="";
if(StringUtils.isNotBlank(createOrgPath)){
List<String> stringList = Arrays.asList(createOrgPath.split("/"));
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(stringList.get(stringList.size()-1));
if(sysOrganizationVoResultBean.getData() != null){
if(StringUtils.isNotBlank(sysOrganizationVoResultBean.getData().getPsid())){
ResultBean<SysOrganizationVo> sysOrganizationVoResultBeanP = sysOrganizationFeign.fetchBySid(sysOrganizationVoResultBean.getData().getPsid());
if(sysOrganizationVoResultBeanP.getData() != null){
ogrName=sysOrganizationVoResultBean.getData().getName();
flowTask.setStartDeptName(ogrName+"-"+sysOrganizationVoResultBean.getData().getName());
}
}else{
flowTask.setStartDeptName(sysOrganizationVoResultBean.getData().getName());
}
}
}else{
flowTask.setStartDeptName(sysUserVoResultBean.getData().getOrganizationName());
}
}
ResultBean<SysUserVo> sysUserVoResultBean2 = sysUserFeign.fetchBySid(userSid);
if(sysUserVoResultBean2.getData() != null) {

20
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysHaveMessageQuery.java

@ -0,0 +1,20 @@
package com.yxt.anrui.portal.api.sysuser;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2023/1/13 9:43
* @Description
*/
@Data
public class SysHaveMessageQuery implements Query {
private static final long serialVersionUID = -6612866428143416220L;
@ApiModelProperty("菜单路由")
private String menuUrl;
@ApiModelProperty("组织全路径sid")
private String orgPath;
}

16
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeign.java

@ -184,7 +184,7 @@ public interface SysUserFeign {
@ApiOperation(value = "根据用户的sid查询用户的组织信息")
@ResponseBody
@GetMapping("/selectUserInfoByUserSid/{userSid}/{orgSid}")
public ResultBean<SysUserInfoVo> selectUserInfoByUserSid(@PathVariable("userSid") String userSid,@PathVariable("orgSid") String orgSid);
public ResultBean<SysUserInfoVo> selectUserInfoByUserSid(@PathVariable("userSid") String userSid, @PathVariable("orgSid") String orgSid);
@PostMapping("/setIsEnable/{sid}/{isEnable}")
@ResponseBody
@ -229,22 +229,22 @@ public interface SysUserFeign {
@ApiOperation(value = "根据用户sid查询该分公司下所有销售经理的用户")
@GetMapping(value = "selectSysUserList")
ResultBean<List<SysUserListVo>> selectSysUserList(@RequestParam("userSid") String userSid);
ResultBean<List<SysUserListVo>> selectSysUserList(@RequestParam("orgPath") String userSid, @RequestParam(value = "orgPath", required = false) String orgPath);
@ApiOperation(value = "查询是否需要更换密码")
@GetMapping(value = "/selectPasswordByUserSid/{userSid}")
ResultBean<Boolean> selectPasswordByUserSid(@PathVariable("userSid")String userSid);
ResultBean<Boolean> selectPasswordByUserSid(@PathVariable("userSid") String userSid);
/**
* 查询该菜单是否允许创建是否有提醒消息
* @param menuSid 菜单sid
* @param orgPath 当前组织机构全路径sid
*
* @return
*/
@ApiOperation(value = "查询该菜单是否允许创建,是否有提醒消息")
@GetMapping(value = "/selectHaveMessage")
ResultBean selectHaveMessage(@RequestParam("menuSid")String menuSid,@RequestParam("orgPath")String orgPath);
@PostMapping(value = "/selectHaveMessage")
ResultBean selectHaveMessage(@RequestBody SysHaveMessageQuery sysHaveMessageQuery);
@ApiOperation(value = "根据用户sid获取当前用户所有的组织机构list")
@GetMapping(value = "/getOrgListByUserSid")
ResultBean<List<OrgList>> getOrgListByUserSid(@RequestParam("userSid")String userSid);
ResultBean<List<OrgList>> getOrgListByUserSid(@RequestParam("userSid") String userSid);
}

4
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeignFallback.java

@ -207,7 +207,7 @@ public class SysUserFeignFallback implements SysUserFeign {
}
@Override
public ResultBean<List<SysUserListVo>> selectSysUserList(String userSid) {
public ResultBean<List<SysUserListVo>> selectSysUserList(String userSid,String orgPath) {
return null;
}
@ -217,7 +217,7 @@ public class SysUserFeignFallback implements SysUserFeign {
}
@Override
public ResultBean selectHaveMessage(String menuSid, String orgPath) {
public ResultBean selectHaveMessage(SysHaveMessageQuery sysHaveMessageQuery) {
return null;
}

2
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmenu/SysMenuMapper.java

@ -72,4 +72,6 @@ public interface SysMenuMapper extends BaseMapper<SysMenu> {
* @return
*/
int selectBySourceSid(@Param("isEnable") int isEnable, @Param("sourceSid") String sourceSid);
List<SysMenu> selectByMenuUrl(String menuUrl);
}

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmenu/SysMenuMapper.xml

@ -59,4 +59,8 @@
where isEnable = #{isEnable}
and sourceSid = #{sourceSid}
</select>
<select id="selectByMenuUrl" resultType="com.yxt.anrui.portal.api.sysmenu.SysMenu">
select * from sys_menu where menuUrl = #{menuUrl}
</select>
</mapper>

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmenu/SysMenuService.java

@ -409,4 +409,8 @@ public class SysMenuService extends MybatisBaseService<SysMenuMapper, SysMenu> {
sysSourceMenuService.save(sysSourceMenu);
save(entity);
}
public List<SysMenu> selectByMenuUrl(String menuUrl) {
return baseMapper.selectByMenuUrl(menuUrl);
}
}

8
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserRest.java

@ -626,8 +626,8 @@ public class SysUserRest implements SysUserFeign {
}
@Override
public ResultBean<List<SysUserListVo>> selectSysUserList(String userSid) {
return sysUserService.selectSysUserList(userSid);
public ResultBean<List<SysUserListVo>> selectSysUserList(String userSid,String orgPath) {
return sysUserService.selectSysUserList(userSid,orgPath);
}
@Override
@ -636,8 +636,8 @@ public class SysUserRest implements SysUserFeign {
}
@Override
public ResultBean selectHaveMessage(String menuSid, String orgPath) {
return sysUserService.selectHaveMessage(menuSid,orgPath);
public ResultBean selectHaveMessage(SysHaveMessageQuery sysHaveMessageQuery) {
return sysUserService.selectHaveMessage(sysHaveMessageQuery);
}
@Override

59
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java

@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.crm.api.crmcustomer.CrmCustomer;
import com.yxt.anrui.crm.api.crmcustomer.CrmCustomerFeign;
import com.yxt.anrui.portal.api.sms.SmsFeign;
import com.yxt.anrui.portal.api.sysmenu.SysMenu;
import com.yxt.anrui.portal.api.sysorganization.SysOrganization;
import com.yxt.anrui.portal.api.sysstaffinfo.SysStaffinfo;
import com.yxt.anrui.portal.api.sysstaffinfo.SysStaffinfoVo;
@ -20,6 +21,7 @@ import com.yxt.anrui.portal.api.sysuser.wx.WxHomePageVo;
import com.yxt.anrui.portal.api.sysuser.wx.WxMySysUserInfoVo;
import com.yxt.anrui.portal.api.sysuser.wx.WxSysUserVo;
import com.yxt.anrui.portal.api.sysuserdefaultorg.SysUserDefaultOrg;
import com.yxt.anrui.portal.biz.sysmenu.SysMenuService;
import com.yxt.anrui.portal.biz.sysorganization.SysOrganizationService;
import com.yxt.anrui.portal.biz.sysrole.SysRoleService;
import com.yxt.anrui.portal.biz.sysstaffinfo.SysStaffinfoService;
@ -105,6 +107,8 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
@Autowired
private SysUserDefaultOrgService sysUserDefaultOrgService;
@Autowired
private SysMenuService sysMenuService;
public PagerVo<SysUser> listPage(PagerQuery<SysUserQuery> pq) {
@ -1100,17 +1104,21 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
return rb.success().setData(sysUserVoList);
}
public ResultBean<List<SysUserListVo>> selectSysUserList(String userSid) {
public ResultBean<List<SysUserListVo>> selectSysUserList(String userSid,String orgPath) {
ResultBean<List<SysUserListVo>> rb = ResultBean.fireFail();
//销售经理角色sid
String roleSid = "f07e98d3-d179-48ee-a5ff-5928addead3f";
//根据用户sid查询用户的部门全路径
SysUserVo vo = fetchBySidVo(userSid);
//根据staffSid获取用户的组织全路径
SysStaffOrg sysStaffOrg = sysStaffOrgService.getOrgByStaffSid(vo.getStaffSid());
UserQuery userRoleQuery = new UserQuery();
if(StringUtils.isNotBlank(orgPath)){
userRoleQuery.setOrgSidPath(orgPath);
}else{
//根据用户sid查询用户的部门全路径
SysUserVo vo = fetchBySidVo(userSid);
//根据staffSid获取用户的组织全路径
SysStaffOrg sysStaffOrg = sysStaffOrgService.getOrgByStaffSid(vo.getStaffSid());
userRoleQuery.setOrgSidPath(sysStaffOrg.getOrgSidPath());
}
userRoleQuery.setRoleSid(roleSid);
userRoleQuery.setOrgSidPath(sysStaffOrg.getOrgSidPath());
ResultBean<List<SysUserVo>> resultBean = getUserByRole(userRoleQuery);
List<SysUserVo> sysUserVoList = resultBean.getData();
sysUserVoList.removeAll(Collections.singleton(null));
@ -1152,8 +1160,10 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
return baseMapper.updateAppIdNull(appId);
}
public ResultBean selectHaveMessage(String menuSid, String orgPath) {
public ResultBean selectHaveMessage(SysHaveMessageQuery sysHaveMessageQuery) {
ResultBean rb = ResultBean.fireFail();
String menuUrl = sysHaveMessageQuery.getMenuUrl();
String orgPath = sysHaveMessageQuery.getOrgPath();
//根据orgPath 查询当前组织所管理的层级
List<String> orgPathsList = Arrays.asList(orgPath.split("/"));
String orgSid = orgPathsList.get(orgPathsList.size()-1);
@ -1161,20 +1171,29 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
if(sysOrganization == null){
return rb.setMsg("当前所在组织机构不存在");
}
//根据菜单sid查询所授权的角色
List<SysMenuRoleVoList> list = sysRoleService.selectRoleList(menuSid);
list.removeAll(Collections.singleton(null));
if(!list.isEmpty()){
List<String> typeList = list.stream().map(v->v.getRoleType()).collect(Collectors.toList());
if(StringUtils.isBlank(sysOrganization.getOrgLevelKey())){
return rb.setMsg("当前组织未设置管理层级");
}
if(!typeList.contains(sysOrganization.getOrgLevelKey())){
return rb.setMsg("请检查当前菜单是否为目前机构层级对应的角色");
}
//根据菜单路由查询菜单的sid
List<SysMenu> sysMenuList = sysMenuService.selectByMenuUrl(menuUrl);
if(sysMenuList.size()>1){
return rb.setMsg("当前菜单的路由存在多个,请联系管理员");
}else if(sysMenuList.size() == 0){
return rb.setMsg("当前菜单不存在");
}else{
return rb.setMsg("当前菜单未授权角色权限");
String menuSid = sysMenuList.get(0).getSid();
//根据菜单sid查询所授权的角色
List<SysMenuRoleVoList> list = sysRoleService.selectRoleList(menuSid);
list.removeAll(Collections.singleton(null));
if(!list.isEmpty()){
List<String> typeList = list.stream().map(v->v.getRoleType()).collect(Collectors.toList());
if(StringUtils.isBlank(sysOrganization.getOrgLevelKey())){
return rb.setMsg("当前组织未设置管理层级");
}
if(!typeList.contains(sysOrganization.getOrgLevelKey())){
return rb.setMsg("请检查当前菜单是否为目前机构层级对应的角色");
}
}else{
return rb.setMsg("当前菜单未授权角色权限");
}
}
return rb.success();
}

Loading…
Cancel
Save