Browse Source

Merge branch 'dimengzhe'

master
dimengzhe 2 years ago
parent
commit
16a0fabcb7
  1. 132
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java
  2. 21
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java
  3. 7
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskService.java
  4. 2
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/flowable/AppFlowableRecordAndCommentVo.java
  5. 1
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/flowable/AppFlowableRecordVo.java
  6. 1
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/flowable/AppUserVo.java
  7. 7
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/app/AppService.java

132
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java

@ -1458,66 +1458,18 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
return rb.setMsg("请填写意见");
}
BusSalesOrder busSalesOrder = fetchBySid(query.getBusinessSid());
String businessTaskId = busSalesOrder.getTaskId();
if (StringUtils.isNotBlank(businessTaskId)) {
if(query.getUserSid().equals(busSalesOrder.getCreateBySid())){
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData());
updateFlowFiled(map);
//再加回来
BusSalesOrderDeposit busSalesOrderDeposit = busSalesOrderDepositService.selectByOrderSid(query.getBusinessSid());
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDeposit.getDepositTypeKey())) {
//根据订金sid查询虚拟订单和订金的关联
List<AppBusSalesOrderDepositListVo> listVos = busDepositFictitiousService.getList(busSalesOrderDeposit.getSid());
listVos.removeAll(Collections.singleton(null));
if (!listVos.isEmpty()) {
for (AppBusSalesOrderDepositListVo listVo : listVos) {
//添加负的记录
BusDepositFictitious busDepositFictitious = new BusDepositFictitious();
BeanUtil.copyProperties(listVo, busDepositFictitious, "sid");
busDepositFictitious.setPrice(new BigDecimal(listVo.getPayMoney()).negate());
busDepositFictitious.setDepositSid(busSalesOrderDeposit.getSid());
busDepositFictitious.setDepositBillNo(listVo.getVirtualOrderId());
busDepositFictitious.setDepositBillSid(listVo.getVirtualOrderSid());
busDepositFictitiousService.save(busDepositFictitious);
//查询该虚拟订金单已使用的订金值
String depositAll = busDepositFictitiousService.selectDeposit(listVo.getVirtualOrderId());
//更新该虚拟订单的订金值
busDepositService.updateDeposit(depositAll, listVo.getVirtualOrderId());
}
}
}
ResultBean<AppOrderDetailsVo> details = getSaleOrderDetails(query.getBusinessSid());
AppOrderDetailsVo vo = details.getData();
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getRemarks().equals(vo.getOrderType())) {
//更新已选择的车架号的状态为未锁定
List<String> list = busSalesOrderVehicleService.selectVehicleSid(query.getBusinessSid());
BusMainDepositUpdateQuery busMainDepositUpdateQuery = new BusMainDepositUpdateQuery();
busMainDepositUpdateQuery.setVinSidList(list);
busMainDepositUpdateQuery.setLockedState(VehicleState.LockEnum.UN_LOCK.getCode());
busMainDepositUpdateQuery.setLockedStateValue(VehicleState.LockEnum.UN_LOCK.getRemarks());
baseVehicleFeign.updateMainDepositByVinNo(busMainDepositUpdateQuery);
}
if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getRemarks().equals(vo.getOrderType())) {
List<BusSalesVehicleOrder> list = busSalesVehicleOrderService.selectLinkSid(query.getBusinessSid());
for (BusSalesVehicleOrder b : list) {
String linkSid = b.getLinkSid();
int count = b.getUsingNum();
//查询该采购订单的已使用台数
int num = busSalesVehicleOrderService.selectByLinkSid1(linkSid);
//更新
ResultBean resultBeanOrder = busVehicleOrderFeign.updateLockNum(linkSid, String.valueOf(num));
}
}
return rb.success().setData(resultBean.getData());
}else{
if (businessTaskId.equals(query.getTaskId())) {
if(busSalesOrder == null){
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setMsg("该销售订单不存在,流程已终止");
}else{
String businessTaskId = busSalesOrder.getTaskId();
if (StringUtils.isNotBlank(businessTaskId)) {
if(query.getUserSid().equals(busSalesOrder.getCreateBySid())){
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
@ -1573,9 +1525,67 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
return rb.success().setData(resultBean.getData());
}else{
if (businessTaskId.equals(query.getTaskId())) {
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData());
updateFlowFiled(map);
//再加回来
BusSalesOrderDeposit busSalesOrderDeposit = busSalesOrderDepositService.selectByOrderSid(query.getBusinessSid());
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDeposit.getDepositTypeKey())) {
//根据订金sid查询虚拟订单和订金的关联
List<AppBusSalesOrderDepositListVo> listVos = busDepositFictitiousService.getList(busSalesOrderDeposit.getSid());
listVos.removeAll(Collections.singleton(null));
if (!listVos.isEmpty()) {
for (AppBusSalesOrderDepositListVo listVo : listVos) {
//添加负的记录
BusDepositFictitious busDepositFictitious = new BusDepositFictitious();
BeanUtil.copyProperties(listVo, busDepositFictitious, "sid");
busDepositFictitious.setPrice(new BigDecimal(listVo.getPayMoney()).negate());
busDepositFictitious.setDepositSid(busSalesOrderDeposit.getSid());
busDepositFictitious.setDepositBillNo(listVo.getVirtualOrderId());
busDepositFictitious.setDepositBillSid(listVo.getVirtualOrderSid());
busDepositFictitiousService.save(busDepositFictitious);
//查询该虚拟订金单已使用的订金值
String depositAll = busDepositFictitiousService.selectDeposit(listVo.getVirtualOrderId());
//更新该虚拟订单的订金值
busDepositService.updateDeposit(depositAll, listVo.getVirtualOrderId());
}
}
}
ResultBean<AppOrderDetailsVo> details = getSaleOrderDetails(query.getBusinessSid());
AppOrderDetailsVo vo = details.getData();
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getRemarks().equals(vo.getOrderType())) {
//更新已选择的车架号的状态为未锁定
List<String> list = busSalesOrderVehicleService.selectVehicleSid(query.getBusinessSid());
BusMainDepositUpdateQuery busMainDepositUpdateQuery = new BusMainDepositUpdateQuery();
busMainDepositUpdateQuery.setVinSidList(list);
busMainDepositUpdateQuery.setLockedState(VehicleState.LockEnum.UN_LOCK.getCode());
busMainDepositUpdateQuery.setLockedStateValue(VehicleState.LockEnum.UN_LOCK.getRemarks());
baseVehicleFeign.updateMainDepositByVinNo(busMainDepositUpdateQuery);
}
if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getRemarks().equals(vo.getOrderType())) {
List<BusSalesVehicleOrder> list = busSalesVehicleOrderService.selectLinkSid(query.getBusinessSid());
for (BusSalesVehicleOrder b : list) {
String linkSid = b.getLinkSid();
int count = b.getUsingNum();
//查询该采购订单的已使用台数
int num = busSalesVehicleOrderService.selectByLinkSid1(linkSid);
//更新
ResultBean resultBeanOrder = busVehicleOrderFeign.updateLockNum(linkSid, String.valueOf(num));
}
}
return rb.success().setData(resultBean.getData());
}
}
}
}
}
return rb.setMsg("操作失败!提交的数据不一致!");
}

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

@ -414,6 +414,7 @@ public class FlowableRest implements FlowableFeign {
}
}
}
}
}
String comment = dto.getComment();
@ -500,6 +501,24 @@ public class FlowableRest implements FlowableFeign {
String id = flowElement.getId();
if (taskDefKey.equals(id) && i + 1 < flowElements.size()) {
FlowElement flowElement1 = flowElements.get(i + 1);
FlowElement flowElement2 = flowElements.get(i + 2);
List<SysUserVo> sysUserVoLists2 = new ArrayList<>();
if (flowElement2 instanceof UserTask) {
UserTask userTask = (UserTask) flowElement2;
List<String> candidateGroups = userTask.getCandidateGroups();
//根据角色查询用户
for (String roleSid : candidateGroups) {
UserQuery userQuery = new UserQuery();
userQuery.setRoleSid(roleSid);
userQuery.setOrgSidPath(dto.getOrgSidPath());
ResultBean<List<SysUserVo>> userByRole = sysUserFeign.getUserByRole(userQuery);
boolean success = userByRole.getSuccess();
if (!success) {
continue;
}
sysUserVoLists2.addAll(userByRole.getData());
}
}
if (flowElement1 instanceof UserTask) {
UserTask userTask = (UserTask) flowElement1;
List<String> candidateGroups = userTask.getCandidateGroups();
@ -523,7 +542,7 @@ public class FlowableRest implements FlowableFeign {
break;
}
//如果下一环节无用户,则默认系统管理员自动审批
if(sysUserVoLists.size() == 0 && StringUtils.isNotBlank(nextUserSid)){
if(sysUserVoLists.size() == 0 && sysUserVoLists2.size() == 1 && sysUserVoLists2.get(0).getSid().equals(nextUserSid)){
contains = true;
break;
}

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

@ -311,7 +311,6 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
List<FlowTask> hisFlowList = new ArrayList<>();
for (HistoricActivityInstance histIns : list) {
if (StringUtils.isNotBlank(histIns.getTaskId())) {
boolean isStop = false;
FlowTask flowTask = new FlowTask();
flowTask.setTaskId(histIns.getTaskId());
flowTask.setTaskName(histIns.getActivityName());
@ -335,9 +334,6 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
List<SysUserVo> data1 = sysUserVoResultBean.getData();
List<TaskUserInfo> taskUserInfos=new ArrayList<>();
for( SysUserVo data:data1){
if("admin".equals(data.getName())){
isStop = true;
}
TaskUserInfo taskUserInfo=new TaskUserInfo();
taskUserInfo.setAssigneeName(data.getName());
taskUserInfo.setAssigneeSid(data.getSid());
@ -348,9 +344,6 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
}
flowTask.setTaskUserInfos(taskUserInfos);
}
if(isStop){
continue;
}
// 展示审批人员
List<HistoricIdentityLink> linksForTask = historyService.getHistoricIdentityLinksForTask(histIns.getTaskId());

2
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/flowable/AppFlowableRecordAndCommentVo.java

@ -30,4 +30,6 @@ public class AppFlowableRecordAndCommentVo implements Vo {
@JsonProperty("processCommentVo")
private ProcessCommentVo processCommentVo;
}

1
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/flowable/AppFlowableRecordVo.java

@ -63,5 +63,4 @@ public class AppFlowableRecordVo implements Vo {
private String procDefId;
private Map<String,Object> procVars;
}

1
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/flowable/AppUserVo.java

@ -19,5 +19,4 @@ public class AppUserVo implements Vo {
@ApiModelProperty(value = "头像")
@JsonProperty("image")
private String assigneeHeadImage;
}

7
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/app/AppService.java

@ -86,6 +86,13 @@ public class AppService {
a.setTime(f.getFinishTime() == null ? new Date() : f.getFinishTime());
a.setFlowableRecordVo(f);
a.setState(0 + "");
List<AppUserVo> taskUserInfos = f.getTaskUserInfos();
if(taskUserInfos.size() == 1){
AppUserVo appUserVo = taskUserInfos.get(0);
if("admin".equals(appUserVo.getAssigneeName())){
return;
}
}
list.add(a);
});

Loading…
Cancel
Save