Commit dfc62208 by shenweidong

7-24拉取代码

parents eb009d36 ce07b63a
......@@ -45,14 +45,18 @@ Thumbs.db
/.idea/artifacts/jyzb3.xml
/jyzb-mq/jyzb-mq-consumer/target/classes/application.yml
/jyzb-mq/jyzb-mq-producer/target/classes/application.yml
/jyzb-biz/src/main/java/com/junmp/jyzb/mapper/InventoryMapper.java.orig
/jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/InventoryServiceImpl.java.orig
/jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/PubOrgServiceImpl.java.orig
/jyzb-boot/pom.xml.orig
/jyzb-mq/jyzb-mq-consumer/src/main/java/com/junmp/jyzb/config/DirectReceiver.java.orig
/jyzb-biz/src/main/java/com/junmp/jyzb/controller/CabinetController111.java
/jyzb-biz/src/main/java/com/junmp/jyzb/controller/CabinetController111.java
/jyzb-biz/src/main/java/com/junmp/jyzb/controller/CabinetController111.java
/jyzb-biz/src/main/java/com/junmp/jyzb/controller/CabinetController111.java
/jyzb-biz/src/main/java/com/junmp/jyzb/controller/CabinetController111.java
/jyzb-biz/src/main/java/com/junmp/jyzb/controller/CabinetController111.java
/jyzb-mq/jyzb-mq-consumer/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
/jyzb-mq/jyzb-mq-consumer/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
/jyzb-mq/jyzb-mq-consumer/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
/jyzb-mq/jyzb-mq-consumer/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
/jyzb-mq/jyzb-mq-consumer/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
/jyzb-mq/jyzb-mq-producer/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
/jyzb-mq/jyzb-mq-producer/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
/jyzb-mq/jyzb-mq-producer/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
/jyzb-mq/jyzb-mq-consumer/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
/jyzb-mq/jyzb-mq-consumer/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
/jyzb-mq/jyzb-mq-consumer/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
/jyzb-mq/jyzb-mq-consumer/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
/jyzb-boot/src/main/resources/application.yml
/jyzb-boot/pom.xml
/.idea/encodings.xml
<<<<<<< HEAD
/jyzb-process/target
/jyzb-api/target/
/jyzb-biz/target/
##ignore this file##
/target/
.classpath
.project
/.settings/
##filter databfile、sln file##
*.mdb
*.ldb
*.sln
##class file##
*.com
*.class
*.dll
*.exe
*.o
*.so
# compression file
*.7z
*.dmg
*.gz
*.iso
*.jar
*.rar
*.tar
*.zip
*.via
*.tmp
*.err
# OS generated files #
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
Icon?
ehthumbs.db
Thumbs.db
/*/target/*
=======
/jyzb-boot/target
>>>>>>> develop
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="file://$APPLICATION_HOME_DIR$/jbr/bin/src/main/java" charset="UTF-8" />
<file url="file://$APPLICATION_HOME_DIR$/jbr/bin/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-api/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-api/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-biz/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-biz/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-boot/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-boot/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-common/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-common/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-mq/jyzb-mq-consumer/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-mq/jyzb-mq-consumer/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-mq/jyzb-mq-producer/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-mq/jyzb-mq-producer/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-mq/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-mq/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-process/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyzb-process/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/src/main/resources" charset="UTF-8" />
</component>
</project>
\ No newline at end of file
//package com.junmp.jyzb.api.bean.dto;
//
//import lombok.Data;
//
//@Data
//public class EquipmentSizeDto {
// /**
// * 号型ID
// */
// private String id;
//
// /**
// * 号型名称
// */
// private String name;
//}
//package com.junmp.jyzb.api.bean.dto;
//
//import lombok.Data;
//
//@Data
//public class EquipmentSupplierDto {
// /**
// * 类型ID
// */
// private String id;
//
// /**
// * 类型名称
// */
// private String name;
//}
//package com.junmp.jyzb.api.bean.dto;
//
//import lombok.Data;
//
//@Data
//public class EquipmentTypeDto {
// /**
// * 类型ID
// */
// private String id;
//
// /**
// * 类型名称
// */
// private String name;
//
//}
package com.junmp.jyzb.api.bean.dto;
import lombok.Data;
@Data
public class InventorySumDto {
/**
* 组织机构
*/
private String OrgName;
/**
* 位置
*/
private String locationType;
/**
*总数
*/
private int Num;
/**
*总价
*/
private int totalPrice;
}
package com.junmp.jyzb.api.bean.req;
import com.junmp.v2.common.bean.request.ValidationApi;
import com.junmp.v2.validator.api.validators.unique.TableUniqueValue;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
@Data
@EqualsAndHashCode(callSuper = false)
public class InventorySumReq {
/**
* 批次主键
*/
@NotBlank(message = "组织机构号不能为空", groups = {ValidationApi.edit.class})
private Long orgId;
/**
* 位置ID
*/
private String orgName;
/**
* 位置ID
*/
private String locationId;
/**
* 位置信息
*/
private String locationName;
/**
* 类型ID
*/
private String typeId;
/**
* 号型ID
*/
private String sizeId;
/**
* 根据类型分组
*/
private String groupBy;
}
package com.junmp.jyzb.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.junmp.jyzb.api.bean.dto.InventoryDto;
import com.junmp.jyzb.api.bean.dto.InventorySumDto;
import com.junmp.jyzb.api.bean.dto.ProductBatchDto;
import com.junmp.jyzb.api.bean.req.InventoryReq;
import com.junmp.jyzb.api.bean.req.InventorySumReq;
import com.junmp.jyzb.api.bean.req.ProductBatchReq;
import com.junmp.jyzb.api.bean.req.ProductReq;
import com.junmp.jyzb.entity.Inventory;
import com.junmp.jyzb.entity.InventorySummary;
import com.junmp.jyzb.entity.Product;
import com.junmp.jyzb.service.InventoryService;
import com.junmp.jyzb.service.InventorySummaryService;
import com.junmp.jyzb.utils.ResponseResult;
import com.junmp.v2.common.bean.response.ApiRes;
import com.junmp.v2.db.api.page.PageResult;
......@@ -27,12 +34,13 @@ import java.util.Map;
public class InventoryController {
@Resource
public InventoryService inventoryService;
@Resource
public InventorySummaryService inventorySummaryService;
@PostMapping("/GetEquipmentInfo")
@ApiOperation("根据组织机构或者仓库查询库存信息")
public ResponseResult getEquipmentInfo(@RequestBody Map<String,Object> msg) {
ResponseResult returnMsg = inventoryService.getEquipmentInfo(msg);
return returnMsg;
@ApiOperation("根据组织机构查询库存信息")
public ApiRes<PageResult<InventorySummary>> getEquipmentInfo(@RequestBody InventorySumReq req) {
return ApiRes.success(inventorySummaryService.getEquipmentInfo(req));
}
@PostMapping("/SetInventoryMsg")
......@@ -43,7 +51,7 @@ public class InventoryController {
}
@PostMapping("/GetInventoryList")
@ApiOperation("查询库存详细信息")
@ApiOperation("查询库存汇总信息")
public ResponseResult getInventoryList(@RequestBody Map<String,Object> msg) {
ResponseResult returnMsg = inventoryService.getInventoryList(msg);
return returnMsg;
......@@ -54,6 +62,12 @@ public class InventoryController {
public ApiRes<InventoryDto> getDetail(@RequestBody InventoryReq req) {
return ApiRes.success(inventoryService.getInventoryDetail(req));
}
@PostMapping("/getEquipmentInfo")
@ApiOperation("查询库存明细信息")
public ResponseResult getEquipmentInfo(@RequestBody Map<String, Object> msg) {
ResponseResult returnMsg = inventoryService.getEquipmentInfo(msg);
return returnMsg;
}
@PostMapping("/UpdateInventoryNum")
@ApiOperation("手动重置库存数量信息")
......
......@@ -79,12 +79,12 @@ public class Inventory implements Serializable {
private String state;
/**
* 业务状
* 业务状
*/
private String bussiness_state;
/**
* 位置状
* 位置状
*/
@TableField("location_state")
private String locationState;
......@@ -97,13 +97,13 @@ public class Inventory implements Serializable {
private Date productionDate;
/**
* 质保
* 质保
*/
@TableField("warranty_period")
private Integer warrantyPeriod;
private long warrantyPeriod;
/**
* 维保
* 维保
*/
@TableField("maintenance_period")
private Integer maintenancePeriod;
......@@ -113,7 +113,11 @@ public class Inventory implements Serializable {
*/
@TableField("fix_count")
private Integer fixCount;
/**
* 维修次数
*/
@TableField("term_state")
private int TermState;
/**
* 位置类型
*/
......
......@@ -27,7 +27,7 @@ public class InventorySummary implements Serializable {
* 组织机构id
*/
@ApiModelProperty(value = "组织机构id")
@TableField("org_id")
@TableField("org_id_int")
private String orgId;
/**
......
......@@ -24,7 +24,7 @@ public class PubOrg implements Serializable {
/**
* 主键
*/
@TableId(value = "org_id",type = IdType.ASSIGN_UUID)
@TableId(type = IdType.AUTO, value = "org_id")
private Long orgId;
/**
......@@ -195,5 +195,5 @@ public class PubOrg implements Serializable {
@TableField(value = "org_name")
private String orgName;
private static final long serialVersionUID = 1L;
// private static final long serialVersionUID = 1L;
}
\ No newline at end of file
package com.junmp.jyzb.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.junmp.jyzb.entity.InventorySummary;
import com.junmp.jyzb.entity.ProductBatch;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface InventorySummaryMapper {
public interface InventorySummaryMapper extends BaseMapper<InventorySummary> {
}
\ No newline at end of file
package com.junmp.jyzb.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.junmp.jyzb.entity.EquipmentSize;
import com.junmp.jyzb.entity.Product;
import com.junmp.jyzb.utils.ResponseResult;
import java.util.List;
import java.util.Map;
public interface EquipmentSizeService{
public interface EquipmentSizeService extends IService<EquipmentSize> {
ResponseResult addSize(Map<String, Object> msg);
ResponseResult getOneSize(Map<String,Object> id);
......
package com.junmp.jyzb.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.junmp.jyzb.entity.EquipmentSize;
import com.junmp.jyzb.entity.EquipmentType;
import com.junmp.jyzb.utils.ResponseResult;
import java.util.List;
import java.util.Map;
public interface EquipmentTypeService{
public interface EquipmentTypeService extends IService<EquipmentType> {
ResponseResult addEquipment(Map<String, Object> msg);
......
package com.junmp.jyzb.service;
public interface InventorySummaryService{
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.junmp.jyzb.api.bean.dto.InventorySumDto;
import com.junmp.jyzb.api.bean.req.InventorySumReq;
import com.junmp.jyzb.entity.Inventory;
import com.junmp.jyzb.entity.InventorySummary;
import com.junmp.jyzb.utils.ResponseResult;
import com.junmp.v2.db.api.page.PageResult;
public interface InventorySummaryService extends IService<InventorySummary> {
PageResult<InventorySummary> getEquipmentInfo(InventorySumReq req);
}
......@@ -75,11 +75,11 @@ public class CabinetServiceImpl extends ServiceImpl<CabinetMapper, Cabinet> impl
cabinet.setId(uuid);
cabinet.setCreateTime(currentDate);
cabinet.setUpdateTime(currentDate);
cabinet.setOrgId((Long) msg.get("orgId"));
// cabinet.setOrgId((String) msg.get("orgId"));
cabinet.setName((String) msg.get("name"));
//cabinet.setUpdateUser((String) msg.get("updateUser"));
cabinet.setLocation((String) msg.get("location"));
cabinet.setNum((Integer) msg.get("num"));
// cabinet.setNum((String) msg.get("num"));
cabinet.setCabinetNum(cabinetNum);
cabinetMapper.addCabinet(cabinet);
/**
......@@ -181,7 +181,7 @@ public class CabinetServiceImpl extends ServiceImpl<CabinetMapper, Cabinet> impl
cabinet.setId((String) msg.get("id"));
cabinet.setCabinetNum((String) msg.get("cabinetNum"));
cabinet.setName((String) msg.get("name"));
cabinet.setOrgId((Long) msg.get("orgId"));
// cabinet.setOrgId((String) msg.get("orgId"));
cabinet.setLocation((String) msg.get("location"));
//cabinet.setUpdateUser((String) msg.get("updateUser"));
//cabinet.setState((Integer) msg.get("errorState"));
......
......@@ -12,7 +12,6 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import com.junmp.jyzb.mapper.EquipmentSizeMapper;
import java.math.BigDecimal;
import java.util.*;
import static com.junmp.jyzb.utils.CheckBlank.checkNotBlank;
......@@ -66,7 +65,7 @@ public class EquipmentSizeServiceImpl extends ServiceImpl<EquipmentSizeMapper, E
size.setCode((String) msg.get("code"));
size.setName((String) msg.get("name"));
size.setNote((String) msg.get("note"));
size.setPrice((BigDecimal) msg.get("price"));
// size.setPrice((Double) msg.get("price"));
size.setEpcType((Integer) msg.get("epcType"));
equipmentSizeMapper.addSize(size);
......@@ -133,7 +132,7 @@ public class EquipmentSizeServiceImpl extends ServiceImpl<EquipmentSizeMapper, E
size.setName((String) msg.get("name"));
size.setNote((String) msg.get("note"));
size.setUpdateTime(currentDate);
size.setPrice((BigDecimal) msg.get("price"));
// size.setPrice((Double) msg.get("price"));
//size.setState((Integer) msg.get("state"));
size.setEpcType((Integer) msg.get("epcType"));
equipmentSizeMapper.updateSize(size);
......
......@@ -9,9 +9,7 @@ import com.junmp.jyzb.api.bean.dto.InventoryDto;
import com.junmp.jyzb.api.bean.req.InventoryReq;
import com.junmp.jyzb.entity.Inventory;
import com.junmp.jyzb.service.CabinetService;
import com.junmp.jyzb.service.InventoryService;
import com.junmp.jyzb.service.WarehouseService;
import com.junmp.jyzb.service.*;
import com.junmp.jyzb.utils.HttpStatus;
import com.junmp.jyzb.utils.ResponseResult;
import com.junmp.jyzb.utils.ReturnData;
......@@ -33,13 +31,13 @@ public class InventoryServiceImpl extends ServiceImpl<InventoryMapper, Inventory
@Resource
private InventoryMapper inventoryMapper;
@Resource
private EquipmentTypeServiceImpl equipmentTypeService;
private EquipmentTypeService equipmentTypeService;
@Resource
private EquipmentSizeServiceImpl equipmentSizeService;
private EquipmentSizeService equipmentSizeService;
@Resource
private WarehouseService warehouseService;
@Resource
private PubOrgServiceImpl PubOrgService;
private PubOrgService PubOrgService;
@Resource
private CabinetService cabinetService;
......
package com.junmp.jyzb.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.junmp.jyzb.api.bean.dto.InventoryDto;
import com.junmp.jyzb.api.bean.dto.InventorySumDto;
import com.junmp.jyzb.api.bean.req.InventorySumReq;
import com.junmp.jyzb.entity.InventorySummary;
import com.junmp.jyzb.service.InventorySummaryService;
import com.junmp.v2.db.api.factory.PageFactory;
import com.junmp.v2.db.api.factory.PageResultFactory;
import com.junmp.v2.db.api.page.PageResult;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import com.junmp.jyzb.mapper.InventorySummaryMapper;
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
@Service
public class InventorySummaryServiceImpl implements InventorySummaryService {
public class InventorySummaryServiceImpl extends ServiceImpl<InventorySummaryMapper, InventorySummary> implements InventorySummaryService {
@Override
public PageResult<InventorySummary> getEquipmentInfo(InventorySumReq req) {
LambdaQueryWrapper<InventorySummary> wp = createWrapper(req);//取出仓库中总数并计算
Page<InventorySummary> sumList= this.page(PageFactory.getDefaultPage(),wp);
return PageResultFactory.createPageResult(sumList);
}
private LambdaQueryWrapper<InventorySummary> createWrapper(InventorySumReq req) {
LambdaQueryWrapper<InventorySummary> wrapper = new LambdaQueryWrapper<>();
if (ObjectUtil.isEmpty(req)) {
return wrapper;
}
//根据组织机构号查询
wrapper.eq(ObjectUtil.isNotEmpty(req.getOrgId()), InventorySummary::getOrgId, req.getOrgId());
//根据组织机构名模糊查询
wrapper.like(ObjectUtil.isNotEmpty(req.getOrgName()), InventorySummary::getOrgName, req.getOrgName());
//位置信息
wrapper.eq(ObjectUtil.isNotEmpty(req.getLocationId()), InventorySummary::getLocationId, req.getLocationId());
wrapper.like(ObjectUtil.isNotEmpty(req.getLocationName()), InventorySummary::getLocationName, req.getLocationName());
//根据类别
wrapper.eq(ObjectUtil.isNotEmpty(req.getTypeId()), InventorySummary::getTypeId, req.getTypeId());
//号型
wrapper.eq(ObjectUtil.isNotEmpty(req.getSizeId()), InventorySummary::getSizeId, req.getSizeId());
@Resource
private InventorySummaryMapper inventorySummaryMapper;
wrapper.orderByDesc(InventorySummary::getUpdateTime);
return wrapper;
}
}
package com.junmp.jyzb.task;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.junmp.jyzb.api.util.GenCodeUtil;
import com.junmp.jyzb.entity.Company;
import com.junmp.jyzb.entity.Inventory;
import com.junmp.jyzb.entity.ProductSku;
import com.junmp.jyzb.mapper.ExpireMapper;
import com.junmp.jyzb.mapper.MsgMapper;
import com.junmp.jyzb.service.InventoryService;
import com.junmp.v2.common.util.BeanPlusUtil;
import com.junmp.v2.db.api.factory.PageFactory;
import com.junmp.v2.job.api.JobAction;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.time.LocalDate;
import java.util.Date;
import java.util.List;
import java.util.Map;
......@@ -27,13 +38,48 @@ public class InvExpireMsg implements JobAction {
@Resource
private ExpireMapper ExpireMapper;
@Resource
private ExpireMapper InvertoryMapper;
private InventoryService inventoryService;
@Override
public void action() {
Company company = new Company();
// int InvCount=
Map<String,Object> oneMsg = ExpireMapper.QueryTop1000ExpireInv();
LambdaQueryWrapper<Inventory> wrapper = new LambdaQueryWrapper<>();
// 分页参数
int pageSize = 1000; // 每页记录数,可以根据需求调整
int currentPage = 1; // 当前页数
//所有待判断的物资
wrapper.eq( Inventory::getTermState, 0);
long termCount= inventoryService.count(wrapper);
if (termCount>0)
{
// 分页查询
while ((currentPage - 1) * pageSize < termCount) {
processPageData( currentPage, pageSize);
currentPage++;
}
}
}
// 处理每页数据
private void processPageData(long pageSize, long currentPage)
{
LocalDate localdate =LocalDate.now();
// 使用LambdaQueryWrapper构建查询条件
LambdaQueryWrapper<Inventory> wrapper = Wrappers.lambdaQuery();
wrapper.eq( Inventory::getTermState, 0);
wrapper.apply("production_date <= DATE_SUB({0}, INTERVAL warranty_period DAY)", localdate);
//获取过质保期的物资信息
List<Inventory> page= inventoryService.page(PageFactory.getDefaultPage(pageSize,currentPage),wrapper).getRecords();
page.forEach(o->o.setTermState(1));
inventoryService.saveOrUpdateBatch(page);
// Page<Inventory> page = inventoryService.page(PageFactory.getDefaultPage(), wrapper)
}
}
......@@ -10,8 +10,7 @@
<artifactId>jyzb-boot</artifactId>
<version>1.0.0</version>
<name>jyzb-boot</name>
<packaging>war</packaging>
<!-- <packaging>war</packaging>-->
<dependencies>
<dependency>
......@@ -28,7 +27,10 @@
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>com.junmp.v2</groupId>
<artifactId>log-biz-manage</artifactId>
</dependency>
<dependency>
<groupId>com.junmp.v2</groupId>
<artifactId>v2-security-boot-starter</artifactId>
......@@ -89,6 +91,7 @@
<artifactId>jyzb-biz</artifactId>
</dependency>
<dependency>
<groupId>com.junmp.jyzb</groupId>
<artifactId>jyzb-process</artifactId>
......@@ -131,4 +134,3 @@
</plugins>
</build>
</project>
......@@ -4,7 +4,7 @@
server:
tomcat:
uri-encoding: UTF-8 #tomcat编码
port: 10051 #tomcat端口
port: 10031 #tomcat端口
spring:
main:
#bea同名类进行注册时,准许覆盖注册
......
E:\vue_project\jyzb_platformV2\jyzb-mq\jyzb-mq-consumer\src\main\java\com\junmp\jyzb\config\DirectReceiver.java
E:\vue_project\jyzb_platformV2\jyzb-mq\jyzb-mq-consumer\src\main\java\com\junmp\jyzb\config\DirectRabbitConfig.java
E:\vue_project\jyzb_platformV2\jyzb-mq\jyzb-mq-consumer\src\main\java\com\junmp\jyzb\MqConsumerApplication.java
E:\vue_project\jyzb_platformV2\jyzb-mq\jyzb-mq-consumer\src\main\java\com\junmp\jyzb\controller\SendMsgController.java
E:\vue_project\jyzb_platformV2\jyzb-mq\jyzb-mq-producer\src\main\java\com\junmp\jyzb\controller\SendMsgController.java
E:\vue_project\jyzb_platformV2\jyzb-mq\jyzb-mq-producer\src\main\java\com\junmp\jyzb\MqProducerApplication.java
E:\vue_project\jyzb_platformV2\jyzb-mq\jyzb-mq-producer\src\main\java\com\junmp\jyzb\config\DirectRabbitConfig.java
package com.junmp.junmpProcess.cmd;
import org.flowable.common.engine.api.FlowableIllegalArgumentException;
import org.flowable.common.engine.api.FlowableObjectNotFoundException;
import org.flowable.common.engine.impl.interceptor.Command;
import org.flowable.common.engine.impl.interceptor.CommandContext;
import org.flowable.engine.compatibility.Flowable5CompatibilityHandler;
import org.flowable.engine.impl.persistence.entity.ExecutionEntity;
import org.flowable.engine.impl.util.CommandContextUtil;
import org.flowable.engine.impl.util.Flowable5Util;
import org.flowable.engine.runtime.ProcessInstance;
import java.io.Serializable;
public class DeleteFlowableProcessInstanceCmd implements Command<Void>, Serializable {
private static final long serialVersionUID = 1L;
protected String processInstanceId;
protected String deleteReason;
protected boolean cascade = false;
public DeleteFlowableProcessInstanceCmd(String processInstanceId, String deleteReason) {
this.processInstanceId = processInstanceId;
this.deleteReason = deleteReason;
}
public DeleteFlowableProcessInstanceCmd(String processInstanceId, String deleteReason,boolean cascade) {
this.processInstanceId = processInstanceId;
this.deleteReason = deleteReason;
this.cascade = cascade;
}
@Override
public Void execute(CommandContext commandContext) {
if (processInstanceId == null) {
throw new FlowableIllegalArgumentException("processInstanceId is null");
}
ExecutionEntity processInstanceEntity = CommandContextUtil.getExecutionEntityManager(commandContext).findById(processInstanceId);
if (processInstanceEntity == null) {
throw new FlowableObjectNotFoundException("No process instance found for id '" + processInstanceId + "'", ProcessInstance.class);
}
if (processInstanceEntity.isDeleted()) {
return null;
}
if (Flowable5Util.isFlowable5ProcessDefinitionId(commandContext, processInstanceEntity.getProcessDefinitionId())) {
Flowable5CompatibilityHandler compatibilityHandler = Flowable5Util.getFlowable5CompatibilityHandler();
compatibilityHandler.deleteProcessInstance(processInstanceId, deleteReason);
} else {
CommandContextUtil.getExecutionEntityManager(commandContext).deleteProcessInstance(processInstanceEntity.getProcessInstanceId(), deleteReason, cascade);
}
return null;
}
}
\ No newline at end of file
......@@ -10,10 +10,7 @@ import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.junmp.junmpProcess.common.R;
import com.junmp.junmpProcess.common.Result;
import com.junmp.junmpProcess.dto.ApplyDTO;
import com.junmp.junmpProcess.dto.HandleDataDTO;
import com.junmp.junmpProcess.dto.StartProcessInstanceDTO;
import com.junmp.junmpProcess.dto.TaskDTO;
import com.junmp.junmpProcess.dto.*;
import com.junmp.junmpProcess.dto.json.JunmpUserInfo;
import com.junmp.junmpProcess.dto.json.UserInfo;
import com.junmp.junmpProcess.entity.ProcessTemplates;
......@@ -72,25 +69,50 @@ public class BpmnController {
@ApiOperation("创建流程和表单")
@PostMapping(value = "create")
public ResponseResult create(@RequestBody ProcessVO processVO) throws JsonProcessingException {
return WorkProcessService.createBpmn(processVO);
public ApiRes<Boolean> create(@RequestBody ProcessVO processVO) throws JsonProcessingException {
return ApiRes.success(WorkProcessService.createBpmn(processVO));
}
/**
* 编辑表单
* 修改表单
*/
@ApiOperation("修改表单")
@PutMapping("updateForm")
public ResponseResult updateForm(@RequestBody UpdateProcessVO process) throws JsonProcessingException {
return WorkProcessService.updateForm(process);
public ApiRes<Boolean> updateForm(@RequestBody UpdateProcessVO process) throws JsonProcessingException {
return ApiRes.success(WorkProcessService.updateForm(process));
}
/**
* 编辑表单
* 修改表单
*/
@ApiOperation("删除流程实例")
@PostMapping("deleteForm")
public ApiRes<Boolean> deleteProcessInstanceById(@RequestBody ProcessDTO process) {
return ApiRes.success(WorkProcessService.deleteProcessInstance(process));
}
/**
* 修改表单名称和备注
*/
@ApiOperation("修改表单名称和备注")
@PostMapping("updateFormName")
public ApiRes<Boolean> updateFormName(@RequestBody UpdateProcessVO process) throws JsonProcessingException {
return ApiRes.success(WorkProcessService.updateFormName(process));
}
/**
* 转交
*/
@ApiOperation("轉交")
@PutMapping("turn")
public ResponseResult turn(@RequestBody TurnVo turns) {
return WorkProcessService.turn(turns);
public ApiRes<Boolean> turn(@RequestBody TurnVo turns) {
if (WorkProcessService.turn(turns))
{
return ApiRes.success();
}
else
{
return ApiRes.failure("沒有可用实例");
}
}
@ApiOperation("通过流程定义id启动流程")
......@@ -103,7 +125,6 @@ public class BpmnController {
public PageResult<HistoryProcessInstanceVO> applyList(@RequestBody ApplyDTO ApplyDTO) {
return WorkProcessService.applyList(ApplyDTO);
}
@ApiOperation("查看我的待办")
@PostMapping("toDoList")
public PageResult<TaskVO> toDoList(@RequestBody TaskDTO taskDTO){
......
package com.junmp.junmpProcess.dto;
import com.alibaba.fastjson.JSONObject;
import lombok.Data;
@Data
public class ProcessDTO {
private String processDefinitionId;
private String templateId;
}
......@@ -9,6 +9,8 @@ import com.junmp.junmpProcess.dto.json.*;
import com.junmp.junmpProcess.exception.WorkFlowException;
import com.junmp.junmpProcess.mapper.OrgUserMapper;
import com.junmp.junmpProcess.service.Repository.ProcessTemplateService;
import com.junmp.v2.auth.api.bean.login.LoginUser;
import com.junmp.v2.auth.api.context.LoginContext;
import com.junmp.v2.sys.api.UserServiceApi;
import com.junmp.v2.sys.api.bean.user.dto.RoleUserDto;
import com.junmp.v2.sys.api.bean.user.vo.QueryUserInfoVo;
......@@ -128,9 +130,27 @@ public class CounterSignListener implements ExecutionListener {
{
assigneeList.add(userId.getUserID());
}
}
}
else if (Type.equals("5"))//上级审批
{
LoginUser StartUser= LoginContext.getContext().getLoginUser();
List<UserListDTO> userList= orgUserMapper.QueryUserParentOrg(StartUser.getUserId().toString());
if (userList.size()<=0)//没有上级则本身已是上级
{
assigneeList.add(StartUser.getUserId().toString());
}
else//
{
for (UserListDTO userId :userList)
{
assigneeList.add(userId.getUserID());
}
}
}
if (assigneeList.size()!=0)
......
......@@ -22,4 +22,6 @@ public interface OrgUserMapper {
* @Return
*/
public List<UserListDTO> QueryUserByRoleIdAndOrg(String roleId,String orgId);
public List<UserListDTO> QueryUserParentOrg(String userId);
}
......@@ -4,10 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonNode;
import com.junmp.junmpProcess.common.Result;
import com.junmp.junmpProcess.dto.ApplyDTO;
import com.junmp.junmpProcess.dto.HandleDataDTO;
import com.junmp.junmpProcess.dto.StartProcessInstanceDTO;
import com.junmp.junmpProcess.dto.TaskDTO;
import com.junmp.junmpProcess.dto.*;
import com.junmp.junmpProcess.entity.ProcessTemplates;
import com.junmp.junmpProcess.vo.*;
import com.junmp.jyzb.entity.ProductSku;
......@@ -26,14 +23,28 @@ public interface WorkProcessService {
*
* @return
*/
ResponseResult createBpmn(ProcessVO processVO) throws JsonProcessingException;
Boolean createBpmn(ProcessVO processVO) throws JsonProcessingException;
/**
* 编辑表单
*
* @return
*/
ResponseResult updateForm(UpdateProcessVO process) throws JsonProcessingException;
ResponseResult turn(TurnVo turns);
Boolean deleteProcessInstance(ProcessDTO processInstance);
/**
* 编辑表单
*
* @return
*/
Boolean updateForm(UpdateProcessVO process)throws JsonProcessingException;
/**
* 编辑表单名称
*
* @return
*/
Boolean updateFormName(UpdateProcessVO process);
Boolean turn(TurnVo turns);
/**
* @Author: Zhaojw
......
......@@ -14,6 +14,7 @@ import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.common.collect.Lists;
import com.junmp.junmpProcess.cmd.DeleteFlowableProcessInstanceCmd;
import com.junmp.junmpProcess.dto.*;
import com.junmp.junmpProcess.dto.json.*;
import com.junmp.junmpProcess.entity.ProcessTemplates;
......@@ -28,6 +29,8 @@ import com.junmp.junmpProcess.vo.*;
import com.junmp.jyzb.utils.HttpStatus;
import com.junmp.jyzb.utils.ResponseResult;
import com.junmp.jyzb.utils.ReturnMsg;
import com.junmp.v2.auth.api.bean.login.LoginUser;
import com.junmp.v2.auth.api.context.LoginContext;
import com.junmp.v2.common.bean.request.BaseRequest;
import com.junmp.v2.db.api.factory.PageFactory;
import com.junmp.v2.db.api.factory.PageResultFactory;
......@@ -38,19 +41,18 @@ import org.flowable.bpmn.BpmnAutoLayout;
import org.flowable.bpmn.model.*;
import org.flowable.bpmn.model.Process;
import org.flowable.common.engine.impl.identity.Authentication;
import org.flowable.engine.HistoryService;
import org.flowable.engine.RepositoryService;
import org.flowable.engine.RuntimeService;
import org.flowable.engine.TaskService;
import org.flowable.engine.*;
import org.flowable.engine.delegate.ExecutionListener;
import org.flowable.engine.history.HistoricActivityInstance;
import org.flowable.engine.history.HistoricProcessInstance;
import org.flowable.engine.history.HistoricProcessInstanceQuery;
import org.flowable.engine.impl.persistence.entity.ExecutionEntity;
import org.flowable.engine.repository.Deployment;
import org.flowable.engine.repository.ProcessDefinition;
import org.flowable.engine.runtime.Execution;
import org.flowable.engine.runtime.ProcessInstance;
import org.flowable.engine.runtime.ProcessInstanceBuilder;
import org.flowable.engine.runtime.ProcessInstanceQuery;
import org.flowable.engine.task.Attachment;
import org.flowable.engine.task.Comment;
import org.flowable.task.api.DelegationState;
......@@ -84,7 +86,8 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
private ProcessTemplateService processTemplateService;
@Resource
private RepositoryService repositoryService;
@Autowired
protected ManagementService managementService;
@Resource
private RuntimeService runtimeService;
......@@ -124,7 +127,7 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
}
return task;
}
public ResponseResult turn(TurnVo turns)
public Boolean turn(TurnVo turns)
{
......@@ -144,9 +147,9 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
taskService.setOwner(turns.getTaskId(), owner);
}
return new ResponseResult(HttpStatus.SUCCESS,ReturnMsg.PASS,"转办成功");
return true;
} else {
return new ResponseResult(HttpStatus.NO_SUCH_PROCESS,ReturnMsg.PASS,"没有运行时的任务实例,请确认!");
return false;
}
}
......@@ -200,7 +203,7 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
pageResult.setTotalPage(PageUtil.totalPage(Convert.toInt(pageResult.getTotalRows()), Convert.toInt(pageResult.getPageSize())));
return pageResult;
}
public ResponseResult createBpmn(ProcessVO processVO) throws JsonProcessingException {
public Boolean createBpmn(ProcessVO processVO) throws JsonProcessingException {
//流程定义
ObjectMapper objectMapper = new ObjectMapper();
JsonNode processJsonNode = objectMapper.readTree(processVO.getProcessJson());
......@@ -222,15 +225,78 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
BpmnModel bpmnModel = toBpmn(processJsonNode,formJsonNode,formName,templateId);
Deployment deploy = repositoryService.createDeployment()
.addBpmnModel(processVO.getFormName()+".bpmn20.xml", bpmnModel)
.name(processVO.getFormName())
.addBpmnModel(templateId+".bpmn20.xml", bpmnModel)
.name(templateId)
.category(templateId)
.deploy();
return new ResponseResult(HttpStatus.SUCCESS,ReturnMsg.PASS,deploy.getId());
return true;
}
/**
* @Author: Zhaojw
* @Description: 删除流程实例
* @DateTime: 2023/7/22 10:16
* @Params:
* @Return
*/
public Boolean deleteProcessInstance(ProcessDTO processInstance)
{
List<ProcessInstance> processInstances = runtimeService.createProcessInstanceQuery()
.processDefinitionId(processInstance.getProcessDefinitionId())
.list();
// 使用增强型 for 循环遍历列表
for (ProcessInstance processInstancesItem : processInstances) {
// 在这里对每个 ProcessInstance 进行处理
long count = runtimeService.createProcessInstanceQuery().processInstanceId(processInstancesItem.getId()).count();
if (count > 0) {
DeleteFlowableProcessInstanceCmd cmd = new DeleteFlowableProcessInstanceCmd(processInstancesItem.getId(), "删除流程实例", true);
managementService.executeCommand(cmd);
// 删除与已删除流程定义相关的部署数据
repositoryService.deleteDeployment(processInstancesItem.getDeploymentId(), true);
} else {
HistoricProcessInstanceQuery query= historyService.createHistoricProcessInstanceQuery()
.processInstanceId(processInstancesItem.getId());
// 查询历史流程实例数据
HistoricProcessInstance historicProcessInstance = query.singleResult();
if (historicProcessInstance != null) {
historyService.deleteHistoricProcessInstance(processInstancesItem.getId());
}
}
}
ProcessTemplates pro=processTemplateService.getById(processInstance.getTemplateId());
if (pro!=null)
{
processTemplateService.removeById(processInstance.getTemplateId());
}
return true;
}
/**
* @Author: Zhaojw
* @Description: 修改表单名称
* @DateTime: 2023/7/21 14:30
* @Params:
* @Return
*/
public Boolean updateFormName(UpdateProcessVO process) {
ProcessTemplates processTemplates = processTemplateService.getById(process.getTemplateId());
processTemplates.setFormName(process.getFormName());
processTemplates.setRemark(process.getRemark());
processTemplates.setUpdated(new Date());
return processTemplateService.updateById(processTemplates);//更新表单明细表信息
}
/**
* 编辑表单详情
......@@ -239,24 +305,33 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
*/
@Transactional
public ResponseResult updateForm(UpdateProcessVO process) throws JsonProcessingException {
public Boolean updateForm(UpdateProcessVO process) throws JsonProcessingException {
ObjectMapper objectMapper = new ObjectMapper();
JsonNode processJsonNode = objectMapper.readTree(process.getProcessJson());
JsonNode formJsonNode = objectMapper.readTree(process.getFormJson());
String formName=process.getFormName().toString();
String templateId = idWorker.nextId()+"";
ProcessTemplates processTemplates = processTemplateService.getById(process.getFormId());
String formName="";
ProcessTemplates processTemplates = processTemplateService.getById(process.getTemplateId());
if (ObjectUtil.isNotEmpty(process.getFormName()))
{
formName= process.getFormName().toString();
processTemplates.setFormName(process.getFormName());
processTemplates.setFormJson(process.getFormJson());
processTemplates.setProcessJson(process.getProcessJson());
}
processTemplates.setFormJson(formJsonNode.toString());
processTemplates.setProcessJson(processJsonNode.toString());
String fj=process.getFormJson().toString();
// processTemplates.setFormJson(process.getFormJson().toString());
processTemplates.setProcessJson(process.getProcessJson().toString());
processTemplates.setUpdated(new Date());
processTemplateService.updateById(processTemplates);//更新表单明细表信息
BpmnModel bpmnModel = toBpmn(processJsonNode,formJsonNode,formName,templateId);
BpmnModel bpmnModel = toBpmn(processJsonNode,formJsonNode,formName,process.getTemplateId());
Deployment deploy = repositoryService.createDeployment()
.addBpmnModel(process.getFormName()+".bpmn20.xml", bpmnModel)
.name(process.getFormName())
.addBpmnModel(process.getTemplateId()+".bpmn20.xml", bpmnModel)
.name(process.getTemplateId())
.category(process.getTemplateId())
.deploy();
return new ResponseResult(HttpStatus.SUCCESS,ReturnMsg.PASS,"");
return true;
}
......@@ -505,19 +580,19 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
public ResponseResult start(StartProcessInstanceDTO processInstanceDto) {
try {
LoginUser StartUser= LoginContext.getContext().getLoginUser();
JSONObject formData = processInstanceDto.getFormData();
JunmpUserInfo startUserInfo = processInstanceDto.getStartUserInfo();
Authentication.setAuthenticatedUserId(startUserInfo.getUserId());
// JunmpUserInfo startUserInfo = processInstanceDto.getStartUserInfo();
Authentication.setAuthenticatedUserId(StartUser.getUserId().toString());
Map<String,Object> processVariables= new HashMap<>();
processVariables.put(FORM_VAR,formData);
processVariables.put(START_USER_INFO,JSONObject.toJSONString(startUserInfo));
processVariables.put(START_USER_INFO,JSONObject.toJSONString(StartUser));
processVariables.put(PROCESS_STATUS,BUSINESS_STATUS_1);
// processVariables.put("initiator",JSONObject.toJSONString(startUserInfo));
ArrayList<JunmpUserInfo> userInfos = CollUtil.newArrayList(startUserInfo);
ArrayList<LoginUser> userInfos = CollUtil.newArrayList(StartUser);
Map formValue = JSONObject.parseObject(formData.toJSONString(), new TypeReference<Map>() {
});
processVariables.putAll(formValue);
......@@ -526,10 +601,9 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
ProcessInstanceBuilder processInstanceBuilder = runtimeService.createProcessInstanceBuilder();
ProcessInstance processInstance = processInstanceBuilder
.processDefinitionId(processInstanceDto.getProcessDefinitionId())
.variable("initiator",startUserInfo.getUserId())
.variable("initiator",StartUser.getUserId())
.variables(processVariables)
.businessStatus(BUSINESS_STATUS_1)
.start();
//手动完成第一个任务
......@@ -562,19 +636,16 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
*/
@Override
public PageResult<HistoryProcessInstanceVO> applyList(ApplyDTO applyDTO) {
LoginUser StartUser= LoginContext.getContext().getLoginUser();
PageResult<HistoryProcessInstanceVO> pageResult=new PageResult<HistoryProcessInstanceVO>();
// List<Task> tasks = taskService.createTaskQuery()
// .taskCandidateOrAssigned(applyDTO.getCurrentUserInfo().getId())
// .list();
// List<Task> list = taskService.createTaskQuery().processInstanceId(processInstanceId).list();
List<HistoricProcessInstance> historicProcessInstances =
historyService.createHistoricProcessInstanceQuery()
.includeProcessVariables()
.startedBy(applyDTO.getCurrentUserInfo().getId())
.startedBy(StartUser.getUserId().toString())
.orderByProcessInstanceStartTime().desc()
.listPage((applyDTO.getPageNo() - 1) * applyDTO.getPageSize(), applyDTO.getPageSize());
long count = historyService.createHistoricProcessInstanceQuery()
.startedBy(applyDTO.getCurrentUserInfo().getId()).count();
.startedBy(StartUser.getUserId().toString()).count();
List<HistoryProcessInstanceVO> historyProcessInstanceVOS = new ArrayList<>();
Page<HistoryProcessInstanceVO> page = new Page<>();
for (HistoricProcessInstance historicProcessInstance : historicProcessInstances) {
......@@ -618,11 +689,12 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
*/
@Override
public PageResult<TaskVO> toDoList(TaskDTO taskDTO) {
List<Task> tasks = taskService.createTaskQuery().taskAssignee(taskDTO.getCurrentUserInfo().getUserId())
LoginUser StartUser= LoginContext.getContext().getLoginUser();
List<Task> tasks = taskService.createTaskQuery().taskAssignee(StartUser.getUserId().toString())
.includeProcessVariables()
.orderByTaskCreateTime().desc()
.listPage((taskDTO.getPageNo() - 1) * taskDTO.getPageSize(), taskDTO.getPageSize());
long count = taskService.createTaskQuery().taskAssignee(taskDTO.getCurrentUserInfo().getUserId()).count();
long count = taskService.createTaskQuery().taskAssignee(StartUser.getUserId().toString()).count();
List<TaskVO> taskVOS= new ArrayList<>();
Page<TaskVO> page =new Page<>();
for (Task task : tasks) {
......@@ -665,14 +737,15 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
*/
@Override
public Result<Page<TaskVO>> doneList(TaskDTO taskDTO) {
LoginUser StartUser= LoginContext.getContext().getLoginUser();
List<HistoricTaskInstance> tasks = historyService.createHistoricTaskInstanceQuery()
.taskAssignee(taskDTO.getCurrentUserInfo().getUserId())
.taskAssignee(StartUser.getUserId().toString())
.finished()
.includeProcessVariables()
.orderByTaskCreateTime().desc()
.listPage((taskDTO.getPageNo() - 1) * taskDTO.getPageSize(), taskDTO.getPageSize());
long count = historyService.createHistoricTaskInstanceQuery()
.taskAssignee(taskDTO.getCurrentUserInfo().getUserId()).count();
.taskAssignee(StartUser.getUserId().toString()).count();
List<TaskVO> taskVOS = new ArrayList<>();
Page<TaskVO> page = new Page<>();
for (HistoricTaskInstance task : tasks) {
......@@ -714,8 +787,9 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
@Override
public ResponseResult revoke(HandleDataDTO handleDataDTO) {
UserInfo currentUserInfo = handleDataDTO.getCurrentUserInfo();
Authentication.setAuthenticatedUserId(currentUserInfo.getId());
LoginUser StartUser= LoginContext.getContext().getLoginUser();
// UserInfo currentUserInfo = handleDataDTO.getCurrentUserInfo();
Authentication.setAuthenticatedUserId(StartUser.getUserId().toString());
List<AttachmentDTO> attachments = handleDataDTO.getAttachments();
String comments = handleDataDTO.getComments();
JSONObject formData = handleDataDTO.getFormData();
......@@ -747,7 +821,8 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
}
@Override
public ResponseResult agree(HandleDataDTO handleDataDTO) {
UserInfo currentUserInfo = handleDataDTO.getCurrentUserInfo();
LoginUser StartUser= LoginContext.getContext().getLoginUser();
List<AttachmentDTO> attachments = handleDataDTO.getAttachments();
String comments = handleDataDTO.getComments();
JSONObject formData = handleDataDTO.getFormData();
......@@ -766,7 +841,7 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
}
runtimeService.setVariables(task.getProcessInstanceId(), map);//设置进入当前流程
Authentication.setAuthenticatedUserId(currentUserInfo.getId());
Authentication.setAuthenticatedUserId(StartUser.getUserId().toString());
if (StringUtils.isNotBlank(comments)) {
taskService.addComment(task.getId(), task.getProcessInstanceId(), "opinion", comments);
}
......@@ -809,7 +884,8 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
@Override
public Result delegateTask(HandleDataDTO handleDataDTO) {
UserInfo currentUserInfo = handleDataDTO.getCurrentUserInfo();
LoginUser StartUser= LoginContext.getContext().getLoginUser();
List<AttachmentDTO> attachments = handleDataDTO.getAttachments();
String comments = handleDataDTO.getComments();
JSONObject formData = handleDataDTO.getFormData();
......@@ -824,7 +900,7 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
}
runtimeService.setVariables(task.getProcessInstanceId(), map);
Authentication.setAuthenticatedUserId(currentUserInfo.getId());
Authentication.setAuthenticatedUserId(StartUser.getUserId().toString());
if (StringUtils.isNotBlank(comments)) {
taskService.addComment(task.getId(), task.getProcessInstanceId(), "opinion", comments);
}
......@@ -845,7 +921,8 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
@Override
public Result resolveTask(HandleDataDTO handleDataDTO) {
UserInfo currentUserInfo = handleDataDTO.getCurrentUserInfo();
LoginUser StartUser= LoginContext.getContext().getLoginUser();
List<AttachmentDTO> attachments = handleDataDTO.getAttachments();
String comments = handleDataDTO.getComments();
JSONObject formData = handleDataDTO.getFormData();
......@@ -860,7 +937,7 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
}
runtimeService.setVariables(task.getProcessInstanceId(), map);
Authentication.setAuthenticatedUserId(currentUserInfo.getId());
Authentication.setAuthenticatedUserId(StartUser.getUserId().toString());
if (StringUtils.isNotBlank(comments)) {
taskService.addComment(task.getId(), task.getProcessInstanceId(), "opinion", comments);
}
......@@ -880,8 +957,9 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
@Override
public ResponseResult refuse(HandleDataDTO handleDataDTO) {
UserInfo currentUserInfo = handleDataDTO.getCurrentUserInfo();
Authentication.setAuthenticatedUserId(currentUserInfo.getId());
LoginUser StartUser= LoginContext.getContext().getLoginUser();
Authentication.setAuthenticatedUserId(StartUser.getUserId().toString());
List<AttachmentDTO> attachments = handleDataDTO.getAttachments();
String comments = handleDataDTO.getComments();
JSONObject formData = handleDataDTO.getFormData();
......@@ -916,8 +994,9 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
@Override
public Result assignee(HandleDataDTO handleDataDTO) {
UserInfo currentUserInfo = handleDataDTO.getCurrentUserInfo();
Authentication.setAuthenticatedUserId(currentUserInfo.getId());
LoginUser StartUser= LoginContext.getContext().getLoginUser();
Authentication.setAuthenticatedUserId(StartUser.getUserId().toString());
List<AttachmentDTO> attachments = handleDataDTO.getAttachments();
String comments = handleDataDTO.getComments();
JSONObject formData = handleDataDTO.getFormData();
......@@ -950,8 +1029,8 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
@Override
public Result rollback(HandleDataDTO handleDataDTO) {
UserInfo currentUserInfo = handleDataDTO.getCurrentUserInfo();
Authentication.setAuthenticatedUserId(currentUserInfo.getId());
LoginUser StartUser= LoginContext.getContext().getLoginUser();
Authentication.setAuthenticatedUserId(StartUser.getUserId().toString());
List<AttachmentDTO> attachments = handleDataDTO.getAttachments();
String comments = handleDataDTO.getComments();
JSONObject formData = handleDataDTO.getFormData();
......
......@@ -53,7 +53,6 @@ public class BpmnConvert {
bpmnModel.addProcess(process);
// 二.开始结束节点
// 二.开始结束节点
StartEvent startEvent = new StartEvent();// 新建开始节点
startEvent.setId("_start");
startEvent.setInitiator("initiator");
......
......@@ -4,8 +4,9 @@ import lombok.Data;
@Data
public class UpdateProcessVO {
private String formId;
private String templateId;
private String formJson;
private String formName;
private String processJson;
private String remark;
}
......@@ -20,4 +20,22 @@
where sr.role_id in ${roleId} and po.org_id in ${orgId}
GROUP BY su.user_id,su.real_name
</select>
<select id="QueryUserParentOrg" resultMap="UserListDTO">
SELECT
CASE
WHEN userorg2.org_id = -1 THEN mainUser.user_id
ELSE user2.user_id
END AS user_id,
user2.real_name
FROM (
SELECT org.org_id, user.user_id, user.real_name, org.org_parent_id, org.org_name
FROM `sys_user` AS user
JOIN sys_user_org AS userorg ON userorg.user_id = user.user_id
JOIN pub_org AS org ON org.org_id = userorg.org_id
WHERE user.user_id = ${userId}
) AS mainUser
JOIN sys_user_org AS userorg2 ON mainUser.org_parent_id = userorg2.org_id
JOIN sys_user AS user2 ON user2.user_id = userorg2.user_id;
</select>
</mapper>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论