Browse Source

厂家采购分享

master
dimengzhe 2 years ago
parent
commit
cbdbea3306
  1. 4
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyFeign.java
  2. 24
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/ShareBusVehicleApplyQuery.java
  3. 3
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/app/AppVehicleApplyVo.java
  4. 3
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyMapper.xml
  5. 5
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyRest.java
  6. 42
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyService.java
  7. 5
      anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFallback.java
  8. 5
      anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFeign.java
  9. 9
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java
  10. 1
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableService.java
  11. 21
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/ShareUserQuery.java
  12. 4
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeign.java
  13. 5
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeignFallback.java
  14. 2
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgMapper.java
  15. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgMapper.xml
  16. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgService.java
  17. 2
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserMapper.java
  18. 7
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserMapper.xml
  19. 5
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserRest.java
  20. 25
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java
  21. 23
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/vehicleApply/ShareVehicleApplyQuery.java
  22. 5
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/vehicleApply/VehicleApplyFeign.java
  23. 7
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/vehicleApply/VehicleApplyVo.java
  24. 6
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/vehicleApply/VehicleApplyRest.java
  25. 13
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/vehicleApply/VehicleApplyService.java

4
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyFeign.java

@ -93,4 +93,8 @@ public interface BusVehicleApplyFeign {
@ApiOperation(value = "采购申请作废")
@PostMapping(value = "/abandonApply")
ResultBean abandonApply(@RequestBody String[] sids);
@ApiOperation(value = "分享厂家采购")
@PostMapping(value = "/shareBusVehicleApply")
ResultBean shareBusVehicleApply(@RequestBody ShareBusVehicleApplyQuery shareQuery);
}

24
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/ShareBusVehicleApplyQuery.java

@ -0,0 +1,24 @@
package com.yxt.anrui.base.api.busvehicleapply;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2023/2/24 16:03
* @Description
*/
@Data
public class ShareBusVehicleApplyQuery implements Query {
private static final long serialVersionUID = 3209798058711300310L;
@ApiModelProperty("业务sid")
private String businessSid;
@ApiModelProperty("人员")
private List<String> members;
@ApiModelProperty("部门")
private List<String> groups;
}

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

@ -53,4 +53,7 @@ public class AppVehicleApplyVo implements Vo {
@ApiModelProperty("附件信息")
private List<String> fileList = new ArrayList<>();
@ApiModelProperty("是否存在分享按钮")
private boolean haveShare;
}

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

@ -77,7 +77,8 @@
ba.createOrgName,
ba.applyType,
ba.payRemarks,
ba.orgDeptName
ba.orgDeptName,
if(length(ba.nodeState) > 0, true, false) as haveShare
from bus_vehicle_apply ba
where sid = #{sid}
</select>

5
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyRest.java

@ -118,5 +118,10 @@ public class BusVehicleApplyRest implements BusVehicleApplyFeign {
return busVehicleApplyService.abandonApply(sids);
}
@Override
public ResultBean shareBusVehicleApply(ShareBusVehicleApplyQuery shareQuery) {
return busVehicleApplyService.shareBusVehicleApply(shareQuery);
}
}

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

@ -3,6 +3,7 @@ package com.yxt.anrui.base.biz.busvehicleapply;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
@ -53,6 +54,7 @@ import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.ShareUserQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.common.base.config.component.FileUploadComponent;
@ -68,6 +70,8 @@ import com.yxt.messagecenter.api.messagelist.MessageListFeign;
import com.yxt.messagecenter.api.messagetype.MessageTypeFeign;
import org.apache.commons.lang3.StringUtils;
import org.apache.tomcat.util.threads.ThreadPoolExecutor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -93,6 +97,8 @@ import java.util.stream.Collectors;
@Service
public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMapper, BusVehicleApply> {
Logger log = LoggerFactory.getLogger(BusVehicleApplyService.class);
@Autowired
private BusVehicleApplyDetailService busVehicleApplyDetailService;
@Autowired
@ -944,4 +950,40 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
public ActualAndOrgDeptVo getActualAndOrgDept(String vehicleOrderSid, String modelSid, String configSid) {
return baseMapper.getActualAndOrgDept(vehicleOrderSid, modelSid, configSid);
}
public ResultBean shareBusVehicleApply(ShareBusVehicleApplyQuery shareQuery) {
ResultBean rb = ResultBean.fireSuccess();
List<String> memberSidList = shareQuery.getMembers();
List<String> orgSidList = shareQuery.getGroups();
ShareUserQuery shareUserQuery = new ShareUserQuery();
shareUserQuery.setOrgSids(orgSidList);
shareUserQuery.setMemberSids(memberSidList);
ResultBean<List<String>> staffList = sysUserFeign.shareSelectUser(shareUserQuery);
if(memberSidList == null && orgSidList != null && orgSidList.size()>0){
if(staffList.getData() == null || staffList.getData().size() == 0){
return rb.setMsg("所选部门下无分享人员");
}
}
if(memberSidList == null && orgSidList == null && orgSidList.size() == 0){
return rb.setMsg("请选择人员");
}
//组装分享的消息数据
//根据业务sid查询业务参数
BusVehicleApply busVehicleApply = fetchBySid(shareQuery.getBusinessSid());
if(busVehicleApply == null){
return rb.setMsg("该申请不存在");
}
//流程定义id
String modelId = busVehicleApply.getProcDefId();
//移动端的参数
String taskId = busVehicleApply.getTaskId();
ResultBean<Map<String,Object>> resultBean = flowableFeign.selectFlowVaributes(taskId);
if(!resultBean.getData().isEmpty()){
Map<String,Object> appMap = (Map<String, Object>)resultBean.getData().get("app");
}
log.info("分享方法-resultBean:{}", JSONObject.toJSONString(resultBean));
//
return null;
}
}

5
anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFallback.java

@ -81,5 +81,10 @@ public class FlowableFallback implements FlowableFeign {
return null;
}
@Override
public ResultBean<Map<String,Object>> selectFlowVaributes(String taskId) {
return null;
}
}

5
anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFeign.java

@ -126,4 +126,9 @@ public interface FlowableFeign {
@GetMapping(value = "/selectFlowList")
@ResponseBody
ResultBean<List<FlowListVo>> selectFlowList();
@ApiOperation(value = "查询流程的业务参数")
@GetMapping(value = "/selectFlowVaributes")
@ResponseBody
ResultBean<Map<String,Object>> selectFlowVaributes(@RequestParam("taskId")String taskId);
}

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

@ -594,4 +594,13 @@ public class FlowableRest implements FlowableFeign {
public ResultBean<List<FlowListVo>> selectFlowList() {
return flowableService.selectFlowList();
}
@Override
public ResultBean<Map<String,Object>> selectFlowVaributes(String taskId) {
ResultBean<Map<String,Object>> rb = ResultBean.fireFail();
HistoricTaskInstance historicTaskInstance = historyService.createHistoricTaskInstanceQuery()
.includeProcessVariables().taskId(taskId).singleResult();
Map<String, Object> processVariables = historicTaskInstance.getProcessVariables();
return rb.success().setData(processVariables);
}
}

1
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableService.java

@ -17,6 +17,7 @@ import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.ApiParam;
import org.flowable.engine.TaskService;
import org.flowable.task.api.history.HistoricTaskInstance;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.PathVariable;

21
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/ShareUserQuery.java

@ -0,0 +1,21 @@
package com.yxt.anrui.portal.api.sysuser;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2023/2/24 15:13
* @Description
*/
@Data
public class ShareUserQuery implements Query {
private static final long serialVersionUID = 2148783813323541114L;
@ApiModelProperty("人员")
private List<String> memberSids;
@ApiModelProperty("部门")
private List<String> orgSids;
}

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

@ -251,4 +251,8 @@ public interface SysUserFeign {
@ApiOperation(value = "根据多个角色sid以及机构sid获取本机构链角色的用户")
@PostMapping(value = "/getUserByRoles")
ResultBean<List<SysUserVo>> getUserByRoles(@RequestBody UserByRolesAndOrgQuery userQuery);
@ApiOperation(value = "分享时查询的人员")
@PostMapping(value = "/shareSelectUser")
ResultBean<List<String>> shareSelectUser(@RequestBody ShareUserQuery shareUserQuery);
}

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

@ -230,4 +230,9 @@ public class SysUserFeignFallback implements SysUserFeign {
public ResultBean<List<SysUserVo>> getUserByRoles(UserByRolesAndOrgQuery userQuery) {
return null;
}
@Override
public ResultBean<List<String>> shareSelectUser(ShareUserQuery shareUserQuery) {
return null;
}
}

2
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgMapper.java

@ -111,4 +111,6 @@ public interface SysStaffOrgMapper extends BaseMapper<SysStaffOrg> {
List<SysOrgPathList> getList(String staffSid);
List<SysStaffOrg> selectStaffByOrgSid(@Param("orgSid") String sid, @Param("type") String type);
List<String> selectStaffByOrg(String orgSid);
}

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgMapper.xml

@ -116,4 +116,8 @@
<select id="selectStaffByOrgSid" resultType="com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg">
select * from sys_staff_org where orgSid = #{orgSid} and manageType = #{type}
</select>
<select id="selectStaffByOrg" resultType="java.lang.String">
select staffSid from sys_staff_org where orgSidPath like concat('%',#{orgSid},'%')
</select>
</mapper>

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgService.java

@ -312,4 +312,8 @@ public class SysStaffOrgService extends MybatisBaseService<SysStaffOrgMapper, Sy
public List<SysStaffOrg> selectStaffByOrgSid(String sid, String type) {
return baseMapper.selectStaffByOrgSid(sid,type);
}
public List<String> selectStaffByOrg(String orgSid) {
return baseMapper.selectStaffByOrg(orgSid);
}
}

2
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserMapper.java

@ -189,4 +189,6 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
int updateAppIdNull(String appId);
String fetchByUserNameAndUserPhone(@Param("userName") String userName,@Param("userPhone") String userPhone);
List<String> selectUserByStaffSid(@Param("list") List<String> staffList);
}

7
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserMapper.xml

@ -364,4 +364,11 @@
WHERE ss.name = #{userName}
AND su.mobile = #{userPhone}
</select>
<select id="selectUserByStaffSid" resultType="java.lang.String">
select * from sys_user where staffSid in
<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</select>
</mapper>

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

@ -649,4 +649,9 @@ public class SysUserRest implements SysUserFeign {
public ResultBean<List<SysUserVo>> getUserByRoles(UserByRolesAndOrgQuery userQuery) {
return sysUserService.getUserByRoles(userQuery);
}
@Override
public ResultBean<List<String>> shareSelectUser(ShareUserQuery shareUserQuery) {
return sysUserService.shareSelectUser(shareUserQuery);
}
}

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

@ -1343,4 +1343,29 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
ResultBean<List<SysUserVo>> objectResultBean = ResultBean.fireSuccess();
return objectResultBean.setData(list);
}
public ResultBean<List<String>> shareSelectUser(ShareUserQuery shareUserQuery) {
ResultBean<List<String>> rb = ResultBean.fireFail();
List<String> staffList = new ArrayList<>();
//人员list
List<String> memberList = shareUserQuery.getMemberSids();
//部门list
List<String> orgList = shareUserQuery.getOrgSids();
//查询该部门下子集部门的人员以及该部门下的人员
if(orgList != null && orgList.size()>0){
for (int i = 0; i < orgList.size(); i++) {
String orgSid = orgList.get(i);
//查询该部门下的所有人员以及查询该部门的子集下的所有人员
List<String> staffSidList = sysStaffOrgService.selectStaffByOrg(orgSid);
staffList.addAll(staffSidList);
}
}
if(memberList != null && memberList.size()>0){
staffList.addAll(memberList);
}
//去重
staffList=staffList.stream().distinct().collect(Collectors.toList());
List<String> userSidList = baseMapper.selectUserByStaffSid(staffList);
return rb.success().setData(userSidList);
}
}

23
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/vehicleApply/ShareVehicleApplyQuery.java

@ -0,0 +1,23 @@
package com.yxt.anrui.terminal.api.supplychain.vehicleApply;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2023/2/24 14:58
* @Description
*/
@Data
public class ShareVehicleApplyQuery implements Query {
private static final long serialVersionUID = 4456622318830996347L;
@ApiModelProperty("业务sid")
private String businessSid;
@ApiModelProperty("人员")
private List<String> members;
@ApiModelProperty("部门")
private List<String> groups;
}

5
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/vehicleApply/VehicleApplyFeign.java

@ -57,4 +57,9 @@ public interface VehicleApplyFeign {
@GetMapping("/getFlowOperateTitle")
@ResponseBody
ResultBean<String> getFlowOperateTitle(@SpringQueryMap VehicleApplyQuery query);
@ApiOperation("厂家采购分享")
@PostMapping("/shareMessage")
@ResponseBody
ResultBean shareMessage(@RequestBody ShareVehicleApplyQuery shareQuery);
}

7
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/vehicleApply/VehicleApplyVo.java

@ -5,6 +5,7 @@ import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
@ -58,5 +59,11 @@ public class VehicleApplyVo implements Vo {
@JsonProperty("depositRemark")
private String payRemarks;
@ApiModelProperty("附件信息")
private List<String> fileList = new ArrayList<>();
@ApiModelProperty("是否存在分享按钮")
private boolean haveShare;
}

6
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/vehicleApply/VehicleApplyRest.java

@ -1,5 +1,6 @@
package com.yxt.anrui.terminal.biz.supplychain.vehicleApply;
import com.yxt.anrui.terminal.api.supplychain.vehicleApply.ShareVehicleApplyQuery;
import com.yxt.anrui.terminal.api.supplychain.vehicleApply.VehicleApplyFeign;
import com.yxt.anrui.terminal.api.supplychain.vehicleApply.VehicleApplySzVo;
import com.yxt.anrui.terminal.api.supplychain.vehicleApply.VehicleApplyVo;
@ -59,4 +60,9 @@ public class VehicleApplyRest implements VehicleApplyFeign {
public ResultBean<String> getFlowOperateTitle(VehicleApplyQuery query) {
return vehicleApplyService.getFlowOperateTitle(query);
}
@Override
public ResultBean shareMessage(ShareVehicleApplyQuery shareQuery) {
return vehicleApplyService.shareMessage(shareQuery);
}
}

13
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/vehicleApply/VehicleApplyService.java

@ -13,12 +13,10 @@ import com.yxt.anrui.portal.api.appsubsetversion.AppSubVersionVo;
import com.yxt.anrui.portal.api.appsubsetversion.AppSubsetVersionFeign;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.ShareUserQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.terminal.api.supplychain.vehicleApply.VehicleApplyCarPageVo;
import com.yxt.anrui.terminal.api.supplychain.vehicleApply.VehicleApplyListVo;
import com.yxt.anrui.terminal.api.supplychain.vehicleApply.VehicleApplySzVo;
import com.yxt.anrui.terminal.api.supplychain.vehicleApply.VehicleApplyVo;
import com.yxt.anrui.terminal.api.supplychain.vehicleApply.*;
import com.yxt.anrui.terminal.api.supplychain.vehicleApply.flowable.VehicleApplyDto;
import com.yxt.anrui.terminal.api.supplychain.vehicleApply.flowable.VehicleApplyQuery;
import com.yxt.anrui.terminal.api.supplychain.vehicleApply.flowable.VehicleApplyTaskQuery;
@ -175,4 +173,11 @@ public class VehicleApplyService {
}
return rb.success().setData(resultBean.getData());
}
public ResultBean shareMessage(ShareVehicleApplyQuery shareQuery) {
ResultBean rb = ResultBean.fireFail();
return null;
}
}

Loading…
Cancel
Save