Browse Source

厂家采购修改

master
dimengzhe 3 years ago
parent
commit
392fc8c26a
  1. 3
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApply.java
  2. 3
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyDetailsVo.java
  3. 10
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyDto.java
  4. 29
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/DictCommonEnum.java
  5. 121
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyService.java
  6. 2
      anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/utils/ProcDefEnum.java
  7. 5
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeign.java
  8. 5
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeignFallback.java
  9. 19
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserListVo.java
  10. 5
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserRest.java
  11. 28
      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/BusVehicleApply.java

@ -64,4 +64,7 @@ public class BusVehicleApply extends BaseEntity {
@ApiModelProperty("订金付款备注")
private String payRemarks;
private String userSids;
private String userNames;
}

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

@ -53,4 +53,7 @@ public class BusVehicleApplyDetailsVo implements Vo {
private String applyType;
@ApiModelProperty("订金付款备注")
private String payRemarks;
private String userSids;
private String userNames;
}

10
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyDto.java

@ -2,15 +2,12 @@ package com.yxt.anrui.base.api.busvehicleapply;
import com.yxt.anrui.base.api.busvehicleapplydetail.BusVehicleApplyDetailDto;
import com.yxt.anrui.base.api.busvehicleapplysz.BusVehicleApplySzDto;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Pattern;
import java.util.List;
/**
@ -42,9 +39,9 @@ public class BusVehicleApplyDto implements Dto {
private String applicationDate;
@ApiModelProperty("申请人姓名")
private String createByName;
@ApiModelProperty("排产类型:计划/临时/厂家任务/客户订单")
@ApiModelProperty("采购原因:储备/临时/厂家任务")
private String schedulingType;
@ApiModelProperty(value = "排产类型key")
@ApiModelProperty(value = "采购原因key")
private String schedulingTypeKey;
@ApiModelProperty("当前订金金额")
private String currentAmount;
@ -67,4 +64,7 @@ public class BusVehicleApplyDto implements Dto {
@ApiModelProperty("订金付款备注")
private String payRemarks;
private String userSids;
private String userNames;
}

29
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/DictCommonEnum.java

@ -0,0 +1,29 @@
package com.yxt.anrui.base.common.enums;
import lombok.Getter;
/**
* @Author dimengzhe
* @Date 2022/9/14 15:00
* @Description 数据字典枚举
*/
public class DictCommonEnum {
@Getter
public static enum schedulingType {
/**
* 采购原因
*/
CB_SCHEDULINGTYPE("01", "储备"),
LS_SCHEDULINGTYPE("02", "临时"),
CJRW_SCHEDULINGTYPE("03", "厂家任务"),
;
private final String code;
private final String remarks;
schedulingType(String code, String remarks) {
this.code = code;
this.remarks = remarks;
}
}
}

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

@ -25,6 +25,7 @@ import com.yxt.anrui.base.biz.basevehiclemodel.BaseVehicleModelService;
import com.yxt.anrui.base.biz.busvehicleapplydetail.BusVehicleApplyDetailService;
import com.yxt.anrui.base.biz.busvehicleapplysz.BusVehicleApplySzService;
import com.yxt.anrui.base.common.enums.BillTypeEnum;
import com.yxt.anrui.base.common.enums.DictCommonEnum;
import com.yxt.anrui.base.common.enums.ManPurOrderType;
import com.yxt.anrui.base.common.utils.Rule;
import com.yxt.anrui.base.common.utils.domain.BillNo;
@ -38,7 +39,6 @@ import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
import com.yxt.anrui.flowable.api.sysprourl.SysProUrlFeign;
import com.yxt.anrui.flowable.api.sysprourl.SysProUrlVo;
import com.yxt.anrui.flowable.api.utils.ProcDefEnum;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
@ -52,7 +52,9 @@ import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.messagecenter.api.message.*;
import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.MessageFlowVo;
import com.yxt.messagecenter.api.message.MessageFlowableQuery;
import com.yxt.messagecenter.api.messagelist.MessageListFeign;
import com.yxt.messagecenter.api.messagetype.MessageTypeFeign;
import org.apache.commons.lang3.StringUtils;
@ -348,6 +350,9 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
if (r == 0) {
return rb.setMsg("操作失败!提交的数据不一致");
}
if (StringUtils.isBlank(dto.getSchedulingTypeKey())) {
return rb.setMsg("采购原因不能为空");
}
//新增修改保存
ResultBean<String> resultBean = saveOrUpdateDto(dto);
if (!resultBean.getSuccess()) {
@ -363,6 +368,11 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
appMap.put("sid", businessSid);
variables.put("money", Integer.valueOf(dto.getCurrentAmount()).intValue() > 0);
variables.put("app", appMap);
//判断是否是储备订单,若是,则isTrue网关参数为true=============添加
variables.put("isTrue", DictCommonEnum.schedulingType.CB_SCHEDULINGTYPE.getCode().equals(dto.getSchedulingTypeKey()));
if (DictCommonEnum.schedulingType.CB_SCHEDULINGTYPE.getCode().equals(dto.getSchedulingTypeKey())) {
bv.setNextNodeUserSids(dto.getUserSids());
}
//用户的部门全路径sid
bv.setOrgSidPath(orgSidPath);
//业务sid
@ -383,15 +393,14 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
busVehicleApply = fetchBySid(businessSid);
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo,messageFlowVo);
BeanUtil.copyProperties(ufVo, messageFlowVo);
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("厂家采购申请");
messageFlowableQuery.setMsgContent(busVehicleApply.getCreateByName()+"提交的"+messageFlowableQuery.getModuleName()+",请审批");
messageFlowableQuery.setMsgContent(busVehicleApply.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("供应链");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
// String msgSid = getMessage(ufVo, appMap, busVehicleApply);
return voResultBean;
}
if (r == 2) {
@ -462,6 +471,8 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
variables.put("app", appMap);
//根据业务sid查询排产信息
variables.put("money", busVehicleApply.getCurrentAmount().intValue() > 0);
//判断是否是储备订单,若是,则isTrue网关参数为true=============添加
variables.put("isTrue", DictCommonEnum.schedulingType.CB_SCHEDULINGTYPE.getCode().equals(busVehicleApply.getSchedulingTypeKey()));
bv.setFormVariables(variables);
if (bv.getTaskId().equals(busVehicleApply.getTaskId())) {
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv);
@ -523,25 +534,25 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
finPaymentrecordDto.setBusSid(r.getData());
finPaymentrecordFeign.save(finPaymentrecordDto);
}
try{
/* try{
ApPayBill apb=createApPayBill(busVehicleApply,vo);
ResultBean resultBean1 = finKingDeeFeign.draftApPayBill(apb);
}catch (Exception e){
log.error(e.getMessage());
}
}*/
} else {
//极光推送
busVehicleApply = fetchBySid(businessSid);
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo,messageFlowVo);
BeanUtil.copyProperties(ufVo, messageFlowVo);
ufVo.setProcDefId(busVehicleApply.getProcDefId());
ufVo.setProcInsId(busVehicleApply.getProcInstId());
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("厂家采购申请");
messageFlowableQuery.setMsgContent(busVehicleApply.getCreateByName()+"提交的"+messageFlowableQuery.getModuleName()+",请审批");
messageFlowableQuery.setMsgContent(busVehicleApply.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("供应链");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
}
@ -554,10 +565,11 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
/**
* 构造付款单
*
* @return
*/
private ApPayBill createApPayBill(BusVehicleApply busVehicleApply,List<BusVehicleApplyDetailVo> vo) {
ApPayBill apPayBill=new ApPayBill();
private ApPayBill createApPayBill(BusVehicleApply busVehicleApply, List<BusVehicleApplyDetailVo> vo) {
ApPayBill apPayBill = new ApPayBill();
apPayBill.setFPOSTDATE(busVehicleApply.getApplicationDate());
apPayBill.setFDATE(busVehicleApply.getApplicationDate());
apPayBill.setFCONTACTUNIT("010001");
@ -566,11 +578,11 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
apPayBill.setFPURCHASEORGID("101");
apPayBill.setFPURCHASEDEPTID("05.04");
apPayBill.setFPAYORGID("101");
List<ApPayBill.FPAYBILLENTRY> FPAYBILLENTRYs=new ArrayList<>();
for(BusVehicleApplyDetailVo b:vo){
if(com.yxt.common.base.utils.StringUtils.isNotBlank(b.getApplyForDeposit())
&&Double.valueOf(b.getApplyForDeposit())>0){
ApPayBill.FPAYBILLENTRY fpaybillentry=new ApPayBill.FPAYBILLENTRY();
List<ApPayBill.FPAYBILLENTRY> FPAYBILLENTRYs = new ArrayList<>();
for (BusVehicleApplyDetailVo b : vo) {
if (com.yxt.common.base.utils.StringUtils.isNotBlank(b.getApplyForDeposit())
&& Double.valueOf(b.getApplyForDeposit()) > 0) {
ApPayBill.FPAYBILLENTRY fpaybillentry = new ApPayBill.FPAYBILLENTRY();
fpaybillentry.setFPAYTOTALAMOUNTFOR(Double.valueOf(b.getUseDeposit()));
fpaybillentry.setFPAYAMOUNTFOR_E(Double.valueOf(b.getUseDeposit()));
fpaybillentry.setFSETTLEPAYAMOUNTFOR(Double.valueOf(b.getUseDeposit()));
@ -583,10 +595,10 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
FPAYBILLENTRYs.add(fpaybillentry);
}
}
if(FPAYBILLENTRYs.size()>0){
if (FPAYBILLENTRYs.size() > 0) {
apPayBill.setFPAYBILLENTRY(FPAYBILLENTRYs);
return apPayBill;
}else {
} else {
return null;
}
@ -607,12 +619,13 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
//根据业务sid查询排产信息
BusVehicleApply busVehicleApply = fetchBySid(query.getBusinessSid());
variables.put("money", busVehicleApply.getCurrentAmount().intValue() > 0);
//判断是否是储备订单,若是,则isTrue网关参数为true=============添加
variables.put("isTrue", DictCommonEnum.schedulingType.CB_SCHEDULINGTYPE.getCode().equals(busVehicleApply.getSchedulingTypeKey()));
bv.setFormVariables(variables);
bv.setModelId(ProcDefEnum.VEHICLEAPPLY.getProDefId());
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList());
// List<GetNodeVo> voList = resultBean.getData().stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList());
return rb.success().setData(voList);
}
@ -631,12 +644,13 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
//根据业务sid查询排产信息
BusVehicleApply busVehicleApply = fetchBySid(query.getBusinessSid());
variables.put("money", busVehicleApply.getCurrentAmount().intValue() > 0);
//判断是否是储备订单,若是,则isTrue网关参数为true=============添加
variables.put("isTrue", DictCommonEnum.schedulingType.CB_SCHEDULINGTYPE.getCode().equals(busVehicleApply.getSchedulingTypeKey()));
bv.setFormVariables(variables);
bv.setModelId(ProcDefEnum.VEHICLEAPPLY.getProDefId());
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList());
// List<GetNodeVo> voList = resultBean.getData().stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList());
return rb.success().setData(voList);
}
@ -670,6 +684,8 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
variables.put("app", appMap);
//根据业务sid查询排产信息
variables.put("money", busVehicleApply.getCurrentAmount().intValue() > 0);
//判断是否是储备订单,若是,则isTrue网关参数为true=============添加
variables.put("isTrue", DictCommonEnum.schedulingType.CB_SCHEDULINGTYPE.getCode().equals(busVehicleApply.getSchedulingTypeKey()));
flowTaskVo.setValues(variables);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo);
if (!resultBean.getSuccess()) {
@ -683,7 +699,7 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
busVehicleApply = fetchBySid(businessSid);
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo,messageFlowVo);
BeanUtil.copyProperties(ufVo, messageFlowVo);
String procId = busVehicleApply.getProcInstId();
ufVo.setProcInsId(procId);
ufVo.setProcDefId(busVehicleApply.getProcDefId());
@ -691,13 +707,13 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("厂家采购申请");
ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(procId);
ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(procId);
String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_();
List<String> receiveSidList = Arrays.asList(nextNodeUserSids.split(","));
if(receiveSidList.size() == 1 && receiveSidList.get(0).equals(busVehicleApply.getCreateBySid())){
messageFlowableQuery.setMsgContent("您提交的"+messageFlowableQuery.getModuleName()+"已被驳回,请重新提交");
}else{
messageFlowableQuery.setMsgContent(busVehicleApply.getCreateByName()+"提交的"+messageFlowableQuery.getModuleName()+",请审批");
if (receiveSidList.size() == 1 && receiveSidList.get(0).equals(busVehicleApply.getCreateBySid())) {
messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交");
} else {
messageFlowableQuery.setMsgContent(busVehicleApply.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
}
messageFlowableQuery.setMsgTitle("供应链");
@ -809,57 +825,4 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
vo.setPlateThicknessSize("底 " + vo.getPlateThicknessBottom() + " mm,边 " + vo.getPlateThicknessEdge() + " mm");
return rb.success().setData(vo);
}
/**
* 排产申请极光推送-移动端
*
* @param ufVo
* @param appMap
* @param busVehicleApply
* @return
*/
public String getMessage(UpdateFlowFieldVo ufVo, Map<String, Object> appMap, BusVehicleApply busVehicleApply) {
//=====极光推送信息========================================参数组装
String procId = busVehicleApply.getProcInstId();
ResultBean<List<LatestTaskVo>> resultBean = flowTaskFeign.getLatestTasks(procId);
String nextNodeUserSids = resultBean.getData().get(0).getASSIGNEE_();
List<String> receiveSidList = Arrays.asList(nextNodeUserSids.split(","));
//根据用户的sid查询用户的id
ResultBean<String> stringList1 = sysUserFeign.selectIdBySid(receiveSidList);
List<String> reveiveIdList = Arrays.asList(stringList1.getData().split(","));
MessageFlowableDto messageFlowableDto = new MessageFlowableDto();
MessageJsonDto messageJsonDto = new MessageJsonDto();
BeanUtil.copyProperties(ufVo, messageJsonDto);
//查询流程审批的页面操作地址组装json的参数
//根据taskDef和移动端标识
ResultBean<SysProUrlVo> selectUrlByKey = sysProUrlFeign.selectUrlByKey(ProcDefEnum.VEHICLEAPPLY.getProDefId(), ufVo.getTaskDefKey(), "1", "2");
SysProUrlVo sysProUrlVo = selectUrlByKey.getData();
messageFlowableDto.setBusinessSid(busVehicleApply.getSid());
messageFlowableDto.setApp_type("2");
if (sysProUrlVo.getUrl().contains("#")) {
messageFlowableDto.setModuleAction(Arrays.asList(sysProUrlVo.getUrl().split("#")).get(0));
List<Integer> codesInteger = Arrays.asList(Arrays.asList(sysProUrlVo.getUrl().split("#")).get(1).split(",")).stream().map(Integer::parseInt).collect(Collectors.toList());
int[] ints = codesInteger.stream().mapToInt(Integer::valueOf).toArray();
;
messageJsonDto.setButtons(ints);
} else {
messageFlowableDto.setModuleAction(sysProUrlVo.getUrl());
}
messageFlowableDto.setModuleSid(Arrays.asList(sysProUrlVo.getModulePluginName().split("#")).get(0));
messageJsonDto.setTaskName(ufVo.getNodeState());
messageJsonDto.setProcInsId(ufVo.getProcInsId());
messageJsonDto.setAppMap(appMap);
messageFlowableDto.setJson(messageJsonDto);
messageFlowableDto.setList(receiveSidList);
messageFlowableDto.setReceiveIdList(reveiveIdList);
messageFlowableDto.setModuleName("排产申请");
messageFlowableDto.setMsgContent("排产申请");
messageFlowableDto.setMsgTitle("排产申请");
messageFlowableDto.setCreateName(busVehicleApply.getCreateByName());
messageFlowableDto.setTaskId(ufVo.getTaskId());
ResultBean<String> stringResultBean = messageFeign.getMessage(messageFlowableDto);
String msgSid = stringResultBean.getData();
return msgSid;
}
}

2
anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/utils/ProcDefEnum.java

@ -14,7 +14,7 @@ public enum ProcDefEnum {
ADVANCEGINVOICEAPPLY("提前开票申请流程", "advance_ginvoiceapply:1:242664"),
ARREARSCARRYVEHICLE("欠款提车审批流程", "arrears_carryvehicle:1:232589"),
// VEHICLEAPPLY("排产申请流程", "process_9egcg169:7:467504"),//TODO
VEHICLEAPPLY("排产申请流程", "process_9egcg169:8:557504"),//TODO
VEHICLEAPPLY("排产申请流程", "process_9egcg169:9:600004"),//TODO
// RECORDAPPLICATION("入账申请", "record_application_7y80d4r8:1:265008"),//TODO
RECORDAPPLICATION("入库申请", "process_xbwq2c7p:1:530004"),//TODO
SCMVEHICLERETURN("采购退库", "process_md8aeoap:4:392512"),

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

@ -195,6 +195,7 @@ public interface SysUserFeign {
/**
* 参数当前用户角色sid部门sid
*
* @param query
* @return
*/
@ -219,4 +220,8 @@ public interface SysUserFeign {
@ApiOperation(value = "根据用户sid获取用户id")
@PostMapping(value = "selectIdBySid")
ResultBean<String> selectIdBySid(@RequestBody List<String> stringList);
@ApiOperation(value = "根据用户sid查询该分公司下所有销售经理的用户")
@GetMapping(value = "selectSysUserList")
ResultBean<List<SysUserListVo>> selectSysUserList(@RequestParam("userSid") String userSid);
}

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

@ -199,4 +199,9 @@ public class SysUserFeignFallback implements SysUserFeign {
public ResultBean<String> selectIdBySid(List<String> stringList) {
return null;
}
@Override
public ResultBean<List<SysUserListVo>> selectSysUserList(String userSid) {
return null;
}
}

19
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserListVo.java

@ -0,0 +1,19 @@
package com.yxt.anrui.portal.api.sysuser;
import com.yxt.common.core.vo.Vo;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2022/9/14 15:36
* @Description
*/
@Data
public class SysUserListVo implements Vo {
private static final long serialVersionUID = -3047907553025391436L;
private String name;
private String sid;
}

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

@ -604,4 +604,9 @@ public class SysUserRest implements SysUserFeign {
public ResultBean<String> selectIdBySid(List<String> stringList) {
return sysUserService.selectIdBySid(stringList);
}
@Override
public ResultBean<List<SysUserListVo>> selectSysUserList(String userSid) {
return sysUserService.selectSysUserList(userSid);
}
}

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

@ -1,6 +1,7 @@
package com.yxt.anrui.portal.biz.sysuser;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.crm.api.crmcustomer.CrmCustomer;
@ -42,6 +43,7 @@ import java.io.File;
import java.util.*;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
import static java.util.concurrent.Executors.newScheduledThreadPool;
@ -894,7 +896,7 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
if (StringUtils.isBlank(query.getRoleSid())) {
return rb.setMsg("角色sid不能为空");
}
if(StringUtils.isBlank(query.getOrgSidPath())){
if (StringUtils.isBlank(query.getOrgSidPath())) {
return rb.setMsg("机构全路径不能为空");
}
//根据角色sid获取角色的层级
@ -906,7 +908,7 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
}
sysUserVoList.removeAll(Collections.singleton(null));
}else{
} else {
return rb.setMsg("该角色层级未设置");
}
return rb.success().setData(sysUserVoList);
@ -989,4 +991,26 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
}
return rb.success().setData(sysUserVoList);
}
public ResultBean<List<SysUserListVo>> selectSysUserList(String userSid) {
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();
userRoleQuery.setRoleSid(roleSid);
userRoleQuery.setOrgSidPath(sysStaffOrg.getOrgSidPath());
ResultBean<List<SysUserVo>> resultBean = getUserByRole(userRoleQuery);
List<SysUserVo> sysUserVoList = resultBean.getData();
sysUserVoList.removeAll(Collections.singleton(null));
List<SysUserListVo> voList = Optional.ofNullable(sysUserVoList).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), SysUserListVo.class)).collect(Collectors.toList());
voList.removeAll(Collections.singleton(null));
if(voList.isEmpty()){
return rb.setMsg("下一环节没有用户");
}
return rb.success().setData(voList);
}
}
Loading…
Cancel
Save