Commit 4fb5556d by 李小惠

修改我的事务接口,业务管理接口,调岗接口

parent b9f27e17
package com.junmp.jyzb.api.bean.dto; package com.junmp.jyzb.api.bean.dto;
import com.junmp.v2.common.bean.request.BaseRequest;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
...@@ -127,14 +125,23 @@ public class BusFormDto { ...@@ -127,14 +125,23 @@ public class BusFormDto {
private String note; private String note;
/** /**
* 供应商id * 商id
*/ */
private String supplierId; private String supplierId;
/** /**
* 供应商名称 * 商名称
*/ */
private String supplierName; private String supplierName;
/**
* 厂商类型(0为供应商,1为生产厂商,2为维修单位,3为销毁单位)
*/
private Integer agencyType;
/**
* 装备类别拼接
*/
private String equipmentList;
/** /**
* 仓库id * 仓库id
...@@ -158,24 +165,18 @@ public class BusFormDto { ...@@ -158,24 +165,18 @@ public class BusFormDto {
private String updateUser; private String updateUser;
/** /**
* 报废类型(1报废出库,2移入报废区) * 报废销毁类型(1销毁出库,2移入报废区)
*/ */
private Integer type; private Integer type;
/** /**
* 维修单位id * 单据使用次数(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
*/
private String repairId;
/**
* 维修单位名称
*/
private String repairName;
/**
* 销毁、报废单位id
*/ */
private String destoryId; private String useCount;
/** /**
* 销毁、报废单位名称 * 审核人信息
*/ */
private String destoryName; private String currentAssign;
} }
...@@ -7,6 +7,7 @@ import lombok.Data; ...@@ -7,6 +7,7 @@ import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
...@@ -92,5 +93,19 @@ public class ReassignmentDto { ...@@ -92,5 +93,19 @@ public class ReassignmentDto {
*/ */
private String updateUser; private String updateUser;
/**
* 装备总数
*/
private Integer totalNum;
/**
* 装备总金额
*/
private BigDecimal price;
/**
* 类型(调入警员0,调出警员1)
*/
private Integer reassigmentType;
} }
\ No newline at end of file
...@@ -33,6 +33,11 @@ public class SupplierDto { ...@@ -33,6 +33,11 @@ public class SupplierDto {
private String shortName; private String shortName;
/** /**
* 类型(0为供应商,1为生产厂商,2为维修单位,3为销毁单位)
*/
private Integer agencyType;
/**
* 联系人 * 联系人
*/ */
private String contacts; private String contacts;
......
...@@ -132,14 +132,18 @@ public class QueryBusFormReq extends BaseRequest { ...@@ -132,14 +132,18 @@ public class QueryBusFormReq extends BaseRequest {
private String note; private String note;
/** /**
* 供应商id * 商id
*/ */
private String supplierId; private String supplierId;
/** /**
* 供应商名称 * 商名称
*/ */
private String supplierName; private String supplierName;
/**
* 厂商类型(0为供应商,1为生产厂商,2为维修单位,3为销毁单位)
*/
private Integer agencyType;
/** /**
* 仓库id * 仓库id
...@@ -183,24 +187,25 @@ public class QueryBusFormReq extends BaseRequest { ...@@ -183,24 +187,25 @@ public class QueryBusFormReq extends BaseRequest {
private String order; private String order;
/** /**
* 报废类型(1报废出库,2移入报废区) * 报废销毁类型(1销毁出库,2移入报废区)
*/ */
private Integer type; private Integer type;
/** /**
* 维修单位id * 单据使用次数(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
*/
private String repairId;
/**
* 维修单位名称
*/ */
private String repairName; private String useCount;
/** /**
* 销毁、报废单位id *装备类别拼接
*/ */
private String destoryId; private String equipmentList;
/** /**
* 销毁、报废单位名称 * 装备名称
*/ */
private String destoryName; private String typeName;
//当前登录人员
private String userId;
} }
package com.junmp.jyzb.api.bean.query; package com.junmp.jyzb.api.bean.query;
import com.baomidou.mybatisplus.annotation.TableField;
import com.junmp.v2.common.bean.request.BaseRequest; import com.junmp.v2.common.bean.request.BaseRequest;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
...@@ -105,4 +107,17 @@ public class QueryReassignmentReq extends BaseRequest { ...@@ -105,4 +107,17 @@ public class QueryReassignmentReq extends BaseRequest {
*/ */
private String column; private String column;
/**
* 装备总数
*/
private Integer totalNum;
/**
* 装备总金额
*/
private BigDecimal price;
/**
* 类型(调入警员0,调出警员1)
*/
private Integer reassigmentType;
} }
...@@ -16,6 +16,10 @@ public class QuerySupplierReq extends BaseRequest { ...@@ -16,6 +16,10 @@ public class QuerySupplierReq extends BaseRequest {
private String id; private String id;
private String code; private String code;
/**
* 类型(0为供应商,1为生产厂商,2为维修单位,3为销毁单位)
*/
private Integer agencyType;
private String shortName; private String shortName;
......
...@@ -132,15 +132,18 @@ public class UpdateBusFormReq extends BaseRequest { ...@@ -132,15 +132,18 @@ public class UpdateBusFormReq extends BaseRequest {
private String note; private String note;
/** /**
* 供应商id * 商id
*/ */
private String supplierId; private String supplierId;
/** /**
* 供应商名称 * 商名称
*/ */
private String supplierName; private String supplierName;
/**
* 厂商类型(0为供应商,1为生产厂商,2为维修单位,3为销毁单位)
*/
private Integer agencyType;
/** /**
* 仓库id * 仓库id
*/ */
...@@ -163,24 +166,18 @@ public class UpdateBusFormReq extends BaseRequest { ...@@ -163,24 +166,18 @@ public class UpdateBusFormReq extends BaseRequest {
private String updateUser; private String updateUser;
/** /**
* 报废类型(1报废出库,2移入报废区) * 报废销毁类型(1销毁出库,2移入报废区)
*/ */
private Integer type; private Integer type;
/** /**
* 维修单位id * 单据使用次数(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
*/
private String repairId;
/**
* 维修单位名称
*/ */
private String repairName; private String useCount;
/**
* 销毁、报废单位id
*/
private String destoryId;
/** /**
* 销毁、报废单位名称 *装备类别拼接
*/ */
private String destoryName; private String equipmentList;
} }
package com.junmp.jyzb.api.bean.req; package com.junmp.jyzb.api.bean.req;
import com.baomidou.mybatisplus.annotation.TableField;
import com.junmp.v2.common.bean.request.BaseRequest; import com.junmp.v2.common.bean.request.BaseRequest;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
@Data @Data
...@@ -94,4 +96,18 @@ public class UpdateReassignmentReq extends BaseRequest { ...@@ -94,4 +96,18 @@ public class UpdateReassignmentReq extends BaseRequest {
*/ */
private String updateUser; private String updateUser;
/**
* 装备总数
*/
private Integer totalNum;
/**
* 装备总金额
*/
private BigDecimal price;
/**
* 类型(调入警员0,调出警员1)
*/
private Integer reassigmentType;
} }
...@@ -17,6 +17,12 @@ public class UpdateSupplierReq { ...@@ -17,6 +17,12 @@ public class UpdateSupplierReq {
@NotBlank(message = "供应商编码不能为空", groups = {ValidationApi.edit.class, ValidationApi.add.class}) @NotBlank(message = "供应商编码不能为空", groups = {ValidationApi.edit.class, ValidationApi.add.class})
private String code; private String code;
/**
* 类型,(0为供应商,1为生产厂商,2为维修单位,3为销毁单位)
*/
@NotNull(message = "类型不能为空", groups = {ValidationApi.edit.class, ValidationApi.add.class})
private Integer agencyType;
private String shortName; private String shortName;
private String contacts; private String contacts;
......
...@@ -37,24 +37,10 @@ public class BussinessController { ...@@ -37,24 +37,10 @@ public class BussinessController {
@PostMapping("/AddBussinessOrder") @PostMapping("/AddBussinessOrder")
@ApiOperation("创建业务单") @ApiOperation("创建业务单")
public ApiRes<String> AddBussinessOrder(@RequestBody @Validated(ValidationApi.add.class) UpdateBusFormReq req){ public ApiRes<String> AddBussinessOrder(@RequestBody @Validated(ValidationApi.add.class) UpdateBusFormReq req){
//判断是否有工作流id,如果有则将状态进行修改
if (ObjectUtil.isEmpty(req.getProcessDefinitionId()))
{
req.setExamineState("none");
}
else
{
req.setExamineState("working");
}
return ApiRes.success(busFormService.AddBussinessOrder(req)); return ApiRes.success(busFormService.AddBussinessOrder(req));
} }
//修改业务单
@PostMapping("/UpdateBussinessOrder")
@ApiOperation("修改业务单")
public ApiRes<Boolean> UpdateBussinessOrder(@RequestBody @Validated(ValidationApi.edit.class) UpdateBusFormReq req){
return ApiRes.success(busFormService.UpdateBussinessOrder(req));
}
//查看业务单(可以条件查询) //查看业务单(可以条件查询)
@PostMapping("/showBussinessOrder") @PostMapping("/showBussinessOrder")
......
...@@ -56,11 +56,11 @@ public class OrderController { ...@@ -56,11 +56,11 @@ public class OrderController {
//修改任务单只允许工作流id为空的时候(视为草稿可以进行修改) //修改任务单只允许工作流id为空的时候(视为草稿可以进行修改)
@PostMapping("/UpdateOrder") // @PostMapping("/UpdateOrder")
@ApiOperation("修改任务单") // @ApiOperation("修改任务单")
public ApiRes<Boolean> updateOrder(@RequestBody @Validated(ValidationApi.edit.class) UpdateOrderReq req) { // public ApiRes<Boolean> updateOrder(@RequestBody @Validated(ValidationApi.edit.class) UpdateOrderReq req) {
return ApiRes.success(orderMainService.updateOrder(req)); // return ApiRes.success(orderMainService.updateOrder(req));
} // }
//查询任务列表(根据组织机构id) //查询任务列表(根据组织机构id)
......
...@@ -156,18 +156,28 @@ public class BusForm implements Serializable { ...@@ -156,18 +156,28 @@ public class BusForm implements Serializable {
private String note; private String note;
/** /**
* 供应商id * 商id
*/ */
@TableField(value = "supplier_id") @TableField(value = "supplier_id")
private String supplierId; private String supplierId;
/** /**
* 供应商名称 * 商名称
*/ */
@TableField(value = "supplier_name") @TableField(value = "supplier_name")
private String supplierName; private String supplierName;
/**
* 厂商类型(0为供应商,1为生产厂商,2为维修单位,3为销毁单位)
*/
@TableField(value = "agency_type")
private Integer agencyType;
/** /**
* 装备类别拼接
*/
@TableField(value = "equipment_list")
private String equipmentList;
/**
* 仓库id * 仓库id
*/ */
@TableField(value = "warehouse_id") @TableField(value = "warehouse_id")
...@@ -204,35 +214,22 @@ public class BusForm implements Serializable { ...@@ -204,35 +214,22 @@ public class BusForm implements Serializable {
private String updateUser; private String updateUser;
/** /**
* 报废类型(1报废出库,2移入报废区) * 报废销毁类型(1销毁出库,2移入报废区)
*/ */
private Integer type; private Integer type;
/**
* 维修单位id
*/
@TableField(value = "repair_id")
private String repairId;
/**
* 维修单位名称
*/
@TableField(value = "repair_name")
private String repairName;
/**
* 销毁、报废单位id
*/
@TableField(value = "destory_id")
private String destoryId;
/**
* 销毁、报废单位名称
*/
@TableField(value = "destory_name")
private String destoryName;
/** /**
* 审核人信息 * 审核人信息
*/ */
@TableField(value = "current_assign") @TableField(value = "current_assign")
private String currentAssign; private String currentAssign;
/**
* 单据使用次数(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
*/
@TableField(value = "use_count")
private String useCount;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.TableField; ...@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
...@@ -122,6 +123,24 @@ public class Reassignment implements Serializable { ...@@ -122,6 +123,24 @@ public class Reassignment implements Serializable {
@TableField(value = "update_user") @TableField(value = "update_user")
private String updateUser; private String updateUser;
/**
* 装备总数
*/
@TableField(value = "total_num")
private Integer totalNum;
/**
* 装备总金额
*/
@TableField(value = "price")
private BigDecimal price;
/**
* 类型(调入警员0,调出警员1)
*/
@TableField(value = "reassigment_type")
private Integer reassigmentType;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
} }
\ No newline at end of file
package com.junmp.jyzb.entity; package com.junmp.jyzb.entity;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import com.junmp.v2.common.bean.request.ValidationApi;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable; import java.io.Serializable;
...@@ -9,6 +10,8 @@ import lombok.AllArgsConstructor; ...@@ -9,6 +10,8 @@ import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import javax.validation.constraints.NotNull;
@Data @Data
@TableName("base_supplier") @TableName("base_supplier")
public class Supplier implements Serializable { public class Supplier implements Serializable {
...@@ -37,6 +40,12 @@ public class Supplier implements Serializable { ...@@ -37,6 +40,12 @@ public class Supplier implements Serializable {
private String shortName; private String shortName;
/** /**
* 类型,(0为供应商,1为生产厂商,2为维修单位,3为销毁单位)
*/
@TableField(value = "agency_type")
private Integer agencyType;
/**
* 联系人 * 联系人
*/ */
@TableField(value = "contacts") @TableField(value = "contacts")
......
...@@ -19,17 +19,12 @@ import java.util.List; ...@@ -19,17 +19,12 @@ import java.util.List;
public interface BusFormService extends IService<BusForm> { public interface BusFormService extends IService<BusForm> {
/** /**
* 创建业务单 * 创建业务单、修改业务单
* @return * @return
*/ */
String AddBussinessOrder(UpdateBusFormReq req); String AddBussinessOrder(UpdateBusFormReq req);
/**
* 修改业务单
* @param req
* @return
*/
boolean UpdateBussinessOrder(UpdateBusFormReq req);
//查看业务单(可根据条件查询) //查看业务单(可根据条件查询)
PageResult<BusFormDto> showBussinessOrder(QueryBusFormReq req); PageResult<BusFormDto> showBussinessOrder(QueryBusFormReq req);
......
...@@ -21,7 +21,7 @@ public interface OrderMainService extends IService<OrderMain> { ...@@ -21,7 +21,7 @@ public interface OrderMainService extends IService<OrderMain> {
String AddFinishOrder(UpdateOrderReq req); String AddFinishOrder(UpdateOrderReq req);
//更新任务单 //更新任务单
Boolean updateOrder(UpdateOrderReq req); // Boolean updateOrder(UpdateOrderReq req);
Boolean ChangeOrderState(UpdateOrderReq req); Boolean ChangeOrderState(UpdateOrderReq req);
//判断任务单是否存在 //判断任务单是否存在
......
...@@ -11,6 +11,7 @@ import com.junmp.junmpProcess.service.IFlowInstanceService; ...@@ -11,6 +11,7 @@ import com.junmp.junmpProcess.service.IFlowInstanceService;
import com.junmp.jyzb.api.bean.dto.BusFormDto; import com.junmp.jyzb.api.bean.dto.BusFormDto;
import com.junmp.jyzb.api.bean.dto.GeneratePurchaseQuicklyDto; import com.junmp.jyzb.api.bean.dto.GeneratePurchaseQuicklyDto;
import com.junmp.jyzb.api.bean.query.BussinessOrderDetialReq; import com.junmp.jyzb.api.bean.query.BussinessOrderDetialReq;
import com.junmp.jyzb.api.bean.query.InventorySumReq;
import com.junmp.jyzb.api.bean.query.QueryBusFormReq; import com.junmp.jyzb.api.bean.query.QueryBusFormReq;
import com.junmp.jyzb.api.bean.req.GeneratePurchaseQuicklyReq; import com.junmp.jyzb.api.bean.req.GeneratePurchaseQuicklyReq;
import com.junmp.jyzb.api.bean.req.UpdateBusFormReq; import com.junmp.jyzb.api.bean.req.UpdateBusFormReq;
...@@ -32,6 +33,8 @@ import com.junmp.v2.db.api.factory.PageResultFactory; ...@@ -32,6 +33,8 @@ import com.junmp.v2.db.api.factory.PageResultFactory;
import com.junmp.v2.db.api.page.PageResult; import com.junmp.v2.db.api.page.PageResult;
import com.junmp.v2.sys.user.entity.SysUserOrg; import com.junmp.v2.sys.user.entity.SysUserOrg;
import com.junmp.v2.sys.user.service.SysUserOrgService; import com.junmp.v2.sys.user.service.SysUserOrgService;
import org.flowable.engine.TaskService;
import org.flowable.task.api.Task;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
...@@ -62,6 +65,9 @@ public class BusFormServiceImpl extends ServiceImpl<BusFormMapper, BusForm> impl ...@@ -62,6 +65,9 @@ public class BusFormServiceImpl extends ServiceImpl<BusFormMapper, BusForm> impl
@Resource @Resource
private InventorySummaryMapper inventorySummaryMapper; private InventorySummaryMapper inventorySummaryMapper;
@Resource
protected TaskService taskService;
/** /**
* 创建业务单 * 创建业务单
* @param req * @param req
...@@ -69,9 +75,23 @@ public class BusFormServiceImpl extends ServiceImpl<BusFormMapper, BusForm> impl ...@@ -69,9 +75,23 @@ public class BusFormServiceImpl extends ServiceImpl<BusFormMapper, BusForm> impl
*/ */
@Override @Override
public String AddBussinessOrder(UpdateBusFormReq req) { public String AddBussinessOrder(UpdateBusFormReq req) {
//判断是否有工作流id,如果有则将状态进行修改
if (ObjectUtil.isEmpty(req.getProcessDefinitionId()))
{
req.setExamineState("none");
}
else
{
req.setExamineState("working");
}
//判断该单据是否可以进行修改(如果审核中则不允许修改)
// if (req.getExamineState().equals("working")){
// throw new ServiceException(OrderExceptionEnum.ORDER_CAN_NOT_UPDATE);
// }
BusForm busForm = new BusForm(); BusForm busForm = new BusForm();
BeanUtil.copyProperties(req,busForm); BeanUtil.copyProperties(req,busForm);
//设置业务单的使用次数(默认是出库一次,入库一次)
busForm.setUseCount("bothUsing");
if (ObjectUtil.isNull(req.getId())){ if (ObjectUtil.isNull(req.getId())){
String id= UUID.randomUUID().toString(); String id= UUID.randomUUID().toString();
busForm.setId(id); busForm.setId(id);
...@@ -94,7 +114,7 @@ public class BusFormServiceImpl extends ServiceImpl<BusFormMapper, BusForm> impl ...@@ -94,7 +114,7 @@ public class BusFormServiceImpl extends ServiceImpl<BusFormMapper, BusForm> impl
busForm.setCreateTime(DateTimeUtil.getCurrentDateTime()); busForm.setCreateTime(DateTimeUtil.getCurrentDateTime());
} }
String processInstanceId=null;
//执行工作流 //执行工作流
if (req.getExamineState().equals("working")) if (req.getExamineState().equals("working"))
{ {
...@@ -103,40 +123,64 @@ public class BusFormServiceImpl extends ServiceImpl<BusFormMapper, BusForm> impl ...@@ -103,40 +123,64 @@ public class BusFormServiceImpl extends ServiceImpl<BusFormMapper, BusForm> impl
startProcessInstanceDTO.setOrderId(busForm.getId()); startProcessInstanceDTO.setOrderId(busForm.getId());
startProcessInstanceDTO.setOrderType("bussinessOrder"); startProcessInstanceDTO.setOrderType("bussinessOrder");
startProcessInstanceDTO.setUserId(req.getApplyUserId()); startProcessInstanceDTO.setUserId(req.getApplyUserId());
String ProcessInstanceId= FlowInstanceService.startProcessInstanceById(startProcessInstanceDTO); //发物单位和收物单位
busForm.setProcessId(ProcessInstanceId); if (req.getBussinessType().equals("use")){
startProcessInstanceDTO.setStartOrgName(req.getOrgName());
String assigns= FlowInstanceService.GetNextAssign(ProcessInstanceId);//这里需要手动更新审核人信息 } else if (req.getBussinessType().equals("purchase")) {
busForm.setCurrentAssign(assigns); startProcessInstanceDTO.setStartOrgName(req.getSupplierName());
startProcessInstanceDTO.setEndOrgName(req.getOrgName());
} else if (req.getBussinessType().equals("allocate")) {
startProcessInstanceDTO.setStartOrgName(req.getStartOrgName());
startProcessInstanceDTO.setEndOrgName(req.getEndOrgName());
} else if (req.getBussinessType().equals("repair")) {
startProcessInstanceDTO.setStartOrgName(req.getOrgName());
startProcessInstanceDTO.setEndOrgName(req.getSupplierName());
} }
else if (req.getBussinessType().equals("remove")) {
startProcessInstanceDTO.setStartOrgName(req.getOrgName());
}
else if (req.getBussinessType().equals("destruction")) {
startProcessInstanceDTO.setStartOrgName(req.getOrgName());
startProcessInstanceDTO.setEndOrgName(req.getSupplierName());
}
//装备列表
startProcessInstanceDTO.setEquipmentList(req.getEquipmentList());
//业务类型
startProcessInstanceDTO.setBussinessType(req.getBussinessType());
processInstanceId= FlowInstanceService.startProcessInstanceById(startProcessInstanceDTO);
}
if(ObjectUtil.isNotNull(req.getId())){ //判断当前审核是否跳过
//已经是一个草稿,在点击提交的时候只需要更新即可,因为数据库中已经存在该单据 if (processInstanceId!=null && processInstanceId.substring(0,4).equals("skip") ){
String substring = processInstanceId.substring(4);
busForm.setProcessId(substring);
if (ObjectUtil.isNotNull(req.getId()) && !req.getId().trim().isEmpty()) {
updateById(busForm); updateById(busForm);
} else {
//保存
this.save(busForm);
}
Task currentTask = taskService.createTaskQuery().processInstanceId(substring).singleResult();
// 直接完成当前任务
taskService.complete(currentTask.getId());
}else { }else {
busForm.setProcessId(processInstanceId);
String assigns= FlowInstanceService.GetNextAssign(processInstanceId);//这里需要手动更新审核人信息
busForm.setCurrentAssign(assigns);
if (ObjectUtil.isNotNull(req.getId()) && !req.getId().trim().isEmpty()) {
//已经是一个草稿,在点击提交的时候只需要更新即可,因为数据库中已经存在该单据
updateById(busForm);
} else {
//保存 //保存
this.save(busForm); this.save(busForm);
} }
return busForm.getId();
} }
/** return busForm.getId();
* 修改业务单
* @param req
* @return
*/
@Override
public boolean UpdateBussinessOrder(UpdateBusFormReq req) {
BusForm busForm = getById(req.getId());
if (!busForm.getExamineState().equals("none")){
throw new ServiceException(OrderExceptionEnum.ORDER_CAN_NOT_UPDATE);
}
BeanPlusUtil.copyProperties(req,busForm);
busForm.setUpdateTime(DateTimeUtil.getCurrentDateTime());
return updateById(busForm);
} }
/** /**
* 查询业务单,(可以根据业务单进行修改) * 查询业务单,(可以根据业务单进行修改)
* @param req * @param req
...@@ -152,17 +196,7 @@ public class BusFormServiceImpl extends ServiceImpl<BusFormMapper, BusForm> impl ...@@ -152,17 +196,7 @@ public class BusFormServiceImpl extends ServiceImpl<BusFormMapper, BusForm> impl
req.setColumn(req.getColumn().replaceAll("[A-Z]", "_$0").toLowerCase()); req.setColumn(req.getColumn().replaceAll("[A-Z]", "_$0").toLowerCase());
req.setOrder(req.getOrder().toLowerCase()); req.setOrder(req.getOrder().toLowerCase());
} }
LambdaQueryWrapper<BusForm> eq = new LambdaQueryWrapper<BusForm>() LambdaQueryWrapper<BusForm> eq = createWrapper(req);
//单据类型
.eq(ObjectUtil.isNotNull(req.getBussinessType()), BusForm::getBussinessType, req.getBussinessType())
//审核状态
.eq(ObjectUtil.isNotNull(req.getExamineState()) && !req.getExamineState().trim().isEmpty(), BusForm::getExamineState, req.getExamineState())
//仓库id
.eq(ObjectUtil.isNotNull(req.getWarehouseId()), BusForm::getWarehouseId, req.getWarehouseId())
.eq(ObjectUtil.isNotNull(req.getOrgId()),BusForm::getOrgId,req.getOrgId())
.ge(ObjectUtil.isNotNull(req.getStartTime()), BusForm::getCreateTime, req.getStartTime())
.le(ObjectUtil.isNotNull(req.getEndTime()), BusForm::getCreateTime, req.getEndTime())
.last("order by " + req.getColumn() + " " + req.getOrder());
long size = list(eq).size(); long size = list(eq).size();
Page<BusForm> page = page(PageFactory.getDefaultPage(req.getPageNo(), req.getPageSize()), eq); Page<BusForm> page = page(PageFactory.getDefaultPage(req.getPageNo(), req.getPageSize()), eq);
List<BusFormDto> collect = page.getRecords().stream().map(busForm -> { List<BusFormDto> collect = page.getRecords().stream().map(busForm -> {
...@@ -251,6 +285,57 @@ public class BusFormServiceImpl extends ServiceImpl<BusFormMapper, BusForm> impl ...@@ -251,6 +285,57 @@ public class BusFormServiceImpl extends ServiceImpl<BusFormMapper, BusForm> impl
return returnList; return returnList;
} }
private LambdaQueryWrapper<BusForm> createWrapper(QueryBusFormReq req) {
LambdaQueryWrapper<BusForm> eq = new LambdaQueryWrapper<BusForm>()
//组织机构
.eq(ObjectUtil.isNotNull(req.getOrgId()),BusForm::getOrgId,req.getOrgId())
//当前登录人
.or(wrapper -> wrapper.eq(BusForm::getApplyUserId, req.getUserId()).eq(BusForm::getCurrentAssign, req.getUserId()))
//装备名称模糊查询
.like(ObjectUtil.isNotNull(req.getTypeName()),BusForm::getEquipmentList,req.getTypeName())
//单号
.like(ObjectUtil.isNotNull(req.getBussinessCode()),BusForm::getBussinessCode,req.getBussinessCode())
//领用人
.like(ObjectUtil.isNotNull(req.getReturnUser()),BusForm::getReturnUser,req.getReturnUser())
//经办人
.like(ObjectUtil.isNotNull(req.getAgent()),BusForm::getAgent,req.getAgent())
//供应商名称
.like(ObjectUtil.isNotNull(req.getSupplierName()),BusForm::getSupplierName,req.getSupplierName())
//发物单位
.like(ObjectUtil.isNotNull(req.getStartOrgName()),BusForm::getStartOrgName,req.getStartOrgName())
//收物单位
.like(ObjectUtil.isNotNull(req.getEndOrgName()),BusForm::getEndOrgName,req.getEndOrgName())
//开始时间
.ge(ObjectUtil.isNotNull(req.getStartTime()), BusForm::getCreateTime, req.getStartTime())
//结束时间
.le(ObjectUtil.isNotNull(req.getEndTime()), BusForm::getCreateTime, req.getEndTime())
.last("order by " + req.getColumn() + " " + req.getOrder());
//业务单据审核状态
if (ObjectUtil.isNotNull(req.getExamineState()) && req.getExamineState().equals("unaudited")){
List<String> examineStateList=new ArrayList<>();
examineStateList.add("none");
examineStateList.add("working");
eq.in(ObjectUtil.isNotNull(req.getExamineState() ) && !req.getExamineState().trim().isEmpty(), BusForm::getExamineState,examineStateList);
} else if (ObjectUtil.isNotNull(req.getExamineState()) && req.getExamineState().equals("finished")) {
eq.eq(ObjectUtil.isNotNull(req.getExamineState() ) && !req.getExamineState().trim().isEmpty(), BusForm::getExamineState, req.getExamineState());
}
//报废、销毁的业务类型
if (ObjectUtil.isNotNull(req.getBussinessType()) && req.getBussinessType().equals("both")){
List<String> bussinessTypeList=new ArrayList<>();
bussinessTypeList.add("remove");
bussinessTypeList.add("destruction");
eq.in(ObjectUtil.isNotNull(req.getExamineState() ) && !req.getExamineState().trim().isEmpty(), BusForm::getExamineState,bussinessTypeList);
}else {
eq.eq(ObjectUtil.isNotNull(req.getBussinessType()) && !req.getBussinessType().trim().isEmpty(), BusForm::getBussinessType, req.getBussinessType());
}
return eq;
}
} }
......
...@@ -119,6 +119,10 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain ...@@ -119,6 +119,10 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
} else { } else {
req.setExamineState("working"); req.setExamineState("working");
} }
//判断该单据是否可以进行修改(如果审核中则不允许修改)
if (req.getExamineState().equals("working")){
throw new ServiceException(OrderExceptionEnum.ORDER_CAN_NOT_UPDATE);
}
OrderMain order = new OrderMain(); OrderMain order = new OrderMain();
BeanPlusUtil.copyProperties(req, order); BeanPlusUtil.copyProperties(req, order);
//先判断该单据id是否存在,如果存在,进行更新操作即可 //先判断该单据id是否存在,如果存在,进行更新操作即可
...@@ -310,38 +314,40 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain ...@@ -310,38 +314,40 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
//更新任务单(进入工作流中之后不能进行更改) //更新任务单(进入工作流中之后不能进行更改)
@Transactional(rollbackFor = Exception.class) // @Transactional(rollbackFor = Exception.class)
@Override // @Override
public Boolean updateOrder(UpdateOrderReq req) { // public Boolean updateOrder(UpdateOrderReq req) {
OrderMain order = orderMainExist(req.getId()); // OrderMain order = orderMainExist(req.getId());
if (!order.getExamineState().equals("none")) // if (!order.getExamineState().equals("none"))
{ // {
throw new ServiceException(OrderExceptionEnum.ORDER_CAN_NOT_UPDATE); // throw new ServiceException(OrderExceptionEnum.ORDER_CAN_NOT_UPDATE);
} // }
//(直接删除并重新插入数据)---------------------------------------------- // //(直接删除并重新插入数据)----------------------------------------------
orderDetailService.remove(new LambdaQueryWrapper<OrderDetail>().eq(OrderDetail::getOrderId, req.getId())); // orderDetailService.remove(new LambdaQueryWrapper<OrderDetail>().eq(OrderDetail::getOrderId, req.getId()));
Integer sumNum=0; // Integer sumNum=0;
BigDecimal priceTotal=new BigDecimal(0); // BigDecimal priceTotal=new BigDecimal(0);
List<OrderDetail> detailList = new ArrayList<>(); // List<OrderDetail> detailList = new ArrayList<>();
for (UpdateOrderDetailReq listReq:req.getDetailList()) { // for (UpdateOrderDetailReq listReq:req.getDetailList()) {
OrderDetail detail=new OrderDetail(); // OrderDetail detail=new OrderDetail();
BeanPlusUtil.copyProperties(listReq, detail); // BeanPlusUtil.copyProperties(listReq, detail);
detail.setOrderId(order.getId()); // detail.setOrderId(order.getId());
//设置单据类型 // //设置单据类型
detail.setType(order.getOrderType()); // detail.setType(order.getOrderType());
//将数量和价格进行累加 // //将数量和价格进行累加
sumNum += detail.getPlanNum(); // sumNum += detail.getPlanNum();
priceTotal = priceTotal.add(BigDecimal.valueOf(detail.getPlanNum()).multiply(detail.getPrice())) ; // priceTotal = priceTotal.add(BigDecimal.valueOf(detail.getPlanNum()).multiply(detail.getPrice())) ;
detail.setCreateTime(DateTimeUtil.getCurrentDateTime()); // detail.setCreateTime(DateTimeUtil.getCurrentDateTime());
detailList.add(detail); // detailList.add(detail);
} // }
orderDetailService.saveBatch(detailList); // orderDetailService.saveBatch(detailList);
//设置总价格和总数量 // //设置总价格和总数量
order.setPrice(priceTotal); // order.setPrice(priceTotal);
order.setInventoryQuantity(sumNum); // order.setInventoryQuantity(sumNum);
order.setCreateTime(DateTimeUtil.getCurrentDateTime()); // order.setCreateTime(DateTimeUtil.getCurrentDateTime());
return this.updateById(order); // return this.updateById(order);
} // }
//
//更新任务单(进入工作流中之后不能进行更改) //更新任务单(进入工作流中之后不能进行更改)
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
......
...@@ -733,6 +733,7 @@ public class PolicemanServiceImpl extends ServiceImpl<PolicemanMapper, Policeman ...@@ -733,6 +733,7 @@ public class PolicemanServiceImpl extends ServiceImpl<PolicemanMapper, Policeman
startProcessInstanceDTO.setOrderId(reassignment.getId()); startProcessInstanceDTO.setOrderId(reassignment.getId());
startProcessInstanceDTO.setOrderType("reassigment"); startProcessInstanceDTO.setOrderType("reassigment");
startProcessInstanceDTO.setUserId(req.getUserId()); startProcessInstanceDTO.setUserId(req.getUserId());
startProcessInstanceDTO.setBussinessType("transfer");
String ProcessInstanceId= FlowInstanceService.startProcessInstanceById(startProcessInstanceDTO); String ProcessInstanceId= FlowInstanceService.startProcessInstanceById(startProcessInstanceDTO);
reassignment.setProcessId(ProcessInstanceId); reassignment.setProcessId(ProcessInstanceId);
String assigns= FlowInstanceService.GetNextAssign(ProcessInstanceId);//这里需要手动更新审核人信息 String assigns= FlowInstanceService.GetNextAssign(ProcessInstanceId);//这里需要手动更新审核人信息
......
...@@ -15,6 +15,13 @@ public interface CommonConstants { ...@@ -15,6 +15,13 @@ public interface CommonConstants {
String START_USER_INFO="startUser"; String START_USER_INFO="startUser";
String ORDER_ID="orderId"; String ORDER_ID="orderId";
String ORDER_TYPE="orderType"; String ORDER_TYPE="orderType";
String START_ORG_NAME="startOrgName";//发物单位
String END_ORG_NAME="endOrgName";//收物单位
String EQUIPMENT_LIST="equipmentList";//装备列表拼接
String BUSSINESS_TYPE="bussinessType"; //单据业务类型
String OUT_IN_STATE="outInState";//出入库单据状态(出库还是入库)
String BUSINESS_STATUS_1="正在处理"; //正在处理 String BUSINESS_STATUS_1="正在处理"; //正在处理
String BUSINESS_STATUS_2="撤销";//撤销 String BUSINESS_STATUS_2="撤销";//撤销
String BUSINESS_STATUS_3="驳回";//驳回 String BUSINESS_STATUS_3="驳回";//驳回
......
...@@ -20,6 +20,10 @@ public class ApplyDTO extends PageDTO { ...@@ -20,6 +20,10 @@ public class ApplyDTO extends PageDTO {
private Date startTime; private Date startTime;
//结束时间 //结束时间
private Date endTime; private Date endTime;
//备注 //发物单位
private String note; private String startOrgName;
//装备名称
private String typeName;
//审核状态
private String bussinessStatus;
} }
...@@ -18,7 +18,20 @@ public class StartProcessInstanceDTO { ...@@ -18,7 +18,20 @@ public class StartProcessInstanceDTO {
private String processDefinitionId; private String processDefinitionId;
private JSONObject formData; private JSONObject formData;
private String orderId; private String orderId;
//单据类型(入库单,出库单,业务单)
private String orderType; private String orderType;
private String userId; private String userId;
private String triggerId; private String triggerId;
//发物单位
private String startOrgName;
//收物单位
private String endOrgName;
//装备列表拼接
private String equipmentList;
//单据业务类型
private String bussinessType;
//出入库单据状态(出库还是入库)
private String outInState;
} }
...@@ -2,6 +2,7 @@ package com.junmp.junmpProcess.dto; ...@@ -2,6 +2,7 @@ package com.junmp.junmpProcess.dto;
import com.junmp.junmpProcess.dto.json.JunmpUserInfo; import com.junmp.junmpProcess.dto.json.JunmpUserInfo;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import liquibase.pro.packaged.S;
import lombok.Data; import lombok.Data;
import com.junmp.junmpProcess.dto.json.UserInfo; import com.junmp.junmpProcess.dto.json.UserInfo;
...@@ -21,6 +22,10 @@ public class TaskDTO extends PageDTO { ...@@ -21,6 +22,10 @@ public class TaskDTO extends PageDTO {
private Date startTime; private Date startTime;
//结束时间 //结束时间
private Date endTime; private Date endTime;
//备注 //发物单位
private String note; private String startOrgName;
//装备名称
private String typeName;
//审核状态
private String bussinessStatus;
} }
...@@ -140,6 +140,25 @@ public class FlowInstanceServiceImpl extends FlowServiceFactory implements IFlow ...@@ -140,6 +140,25 @@ public class FlowInstanceServiceImpl extends FlowServiceFactory implements IFlow
processVariables.put(FORM_Trigger,processInstanceDto.getTriggerId());//获取触发器信息 processVariables.put(FORM_Trigger,processInstanceDto.getTriggerId());//获取触发器信息
processVariables.put(ORDER_ID,processInstanceDto.getOrderId()); processVariables.put(ORDER_ID,processInstanceDto.getOrderId());
processVariables.put(ORDER_TYPE,processInstanceDto.getOrderType()); processVariables.put(ORDER_TYPE,processInstanceDto.getOrderType());
//发物单位
if (ObjectUtil.isNotNull(processInstanceDto.getOutInState())){
processVariables.put(START_ORG_NAME,processInstanceDto.getStartOrgName());
}
//收物单位
if (ObjectUtil.isNotNull(processInstanceDto.getOutInState())){
processVariables.put(END_ORG_NAME,processInstanceDto.getEndOrgName());
}
//装备名称拼接
if (ObjectUtil.isNotNull(processInstanceDto.getEquipmentList())){
processVariables.put(EQUIPMENT_LIST,processInstanceDto.getEquipmentList());
}
//单据类型
processVariables.put(BUSSINESS_TYPE,processInstanceDto.getBussinessType());
//出入库状态
if (ObjectUtil.isNotNull(processInstanceDto.getOutInState())){
processVariables.put(OUT_IN_STATE,processInstanceDto.getOutInState());
}
processVariables.put(START_USER_INFO,JSONObject.toJSONString(StartUser)); processVariables.put(START_USER_INFO,JSONObject.toJSONString(StartUser));
processVariables.put(PROCESS_STATUS,BUSINESS_STATUS_1); processVariables.put(PROCESS_STATUS,BUSINESS_STATUS_1);
......
...@@ -266,10 +266,29 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask ...@@ -266,10 +266,29 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
TaskQuery taskQuery = taskService.createTaskQuery().taskAssignee(StartUser.getUserId().toString()) TaskQuery taskQuery = taskService.createTaskQuery().taskAssignee(StartUser.getUserId().toString())
.includeProcessVariables() .includeProcessVariables()
.orderByTaskCreateTime().desc(); .orderByTaskCreateTime().desc();
//条件查询(流程名称,开始时间,结束时间) //条件查询(流程名称,开始时间,结束时间,发物单位,装备名称
if (ObjectUtil.isNotNull(taskDTO.getProcessDefinitionName()) && ! taskDTO.getProcessDefinitionName().trim().isEmpty()){ if (ObjectUtil.isNotNull(taskDTO.getProcessDefinitionName()) && ! taskDTO.getProcessDefinitionName().trim().isEmpty()){
taskQuery = taskQuery.processDefinitionNameLike("%"+taskDTO.getProcessDefinitionName()+"%"); taskQuery = taskQuery.processDefinitionNameLike("%"+taskDTO.getProcessDefinitionName()+"%");
} }
//装备名称
if (ObjectUtil.isNotNull(taskDTO.getTypeName()) && ! taskDTO.getTypeName().trim().isEmpty()){
taskQuery=taskQuery.taskVariableValueLike(EQUIPMENT_LIST,"%"+taskDTO.getTypeName()+"%");
}
//发物单位
if (ObjectUtil.isNotNull(taskDTO.getStartOrgName()) && ! taskDTO.getStartOrgName().trim().isEmpty()){
taskQuery = taskQuery.taskVariableValueLike(START_ORG_NAME,"%"+taskDTO.getStartOrgName()+"%");
}
//流程状态
if (ObjectUtil.isNotNull(taskDTO.getBussinessStatus()) && taskDTO.getBussinessStatus().equals("正在处理")){
taskQuery=taskQuery.taskVariableValueEquals(BUSINESS_STATUS_1,taskDTO.getBussinessStatus());
}else if (ObjectUtil.isNotNull(taskDTO.getBussinessStatus()) && taskDTO.getBussinessStatus().equals("撤销")){
taskQuery=taskQuery.taskVariableValueEquals(BUSINESS_STATUS_2,taskDTO.getBussinessStatus());
}else if (ObjectUtil.isNotNull(taskDTO.getBussinessStatus()) && taskDTO.getBussinessStatus().equals("驳回")){
taskQuery=taskQuery.taskVariableValueEquals(BUSINESS_STATUS_3,taskDTO.getBussinessStatus());
}else if (ObjectUtil.isNotNull(taskDTO.getBussinessStatus()) && taskDTO.getBussinessStatus().equals("已结束")){
taskQuery=taskQuery.taskVariableValueEquals(BUSINESS_STATUS_4,taskDTO.getBussinessStatus());
}
//开始时间
if (ObjectUtil.isNotNull(taskDTO.getStartTime())) { if (ObjectUtil.isNotNull(taskDTO.getStartTime())) {
taskQuery = taskQuery.taskCreatedAfter(taskDTO.getStartTime()); taskQuery = taskQuery.taskCreatedAfter(taskDTO.getStartTime());
} }
...@@ -302,6 +321,14 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask ...@@ -302,6 +321,14 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
taskVO.setCurrentActivityName(getCurrentName(processInstance.getId(),false,processInstance.getProcessDefinitionId())); taskVO.setCurrentActivityName(getCurrentName(processInstance.getId(),false,processInstance.getProcessDefinitionId()));
taskVO.setBusinessStatus(MapUtil.getStr(processVariables,PROCESS_STATUS)); taskVO.setBusinessStatus(MapUtil.getStr(processVariables,PROCESS_STATUS));
taskVO.setStartOrgName(MapUtil.getStr(processVariables,START_ORG_NAME));
taskVO.setEndOrgName(MapUtil.getStr(processVariables,END_ORG_NAME));
taskVO.setEquipmentList(MapUtil.getStr(processVariables,EQUIPMENT_LIST));
taskVO.setBussinessType(MapUtil.getStr(processVariables,BUSSINESS_TYPE));
taskVO.setOutInState(MapUtil.getStr(processVariables,OUT_IN_STATE));
taskVO.setTaskCreatedTime(task.getCreateTime()); taskVO.setTaskCreatedTime(task.getCreateTime());
DelegationState delegationState = task.getDelegationState(); DelegationState delegationState = task.getDelegationState();
if(delegationState!=null){ if(delegationState!=null){
...@@ -344,6 +371,24 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask ...@@ -344,6 +371,24 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
if (ObjectUtil.isNotNull(taskDTO.getEndTime())){ if (ObjectUtil.isNotNull(taskDTO.getEndTime())){
historicTaskQuery =historicTaskQuery.taskCreatedBefore(taskDTO.getEndTime()); historicTaskQuery =historicTaskQuery.taskCreatedBefore(taskDTO.getEndTime());
} }
//装备名称
if (ObjectUtil.isNotNull(taskDTO.getTypeName()) && ! taskDTO.getTypeName().trim().isEmpty()){
historicTaskQuery=historicTaskQuery.taskVariableValueLike(EQUIPMENT_LIST,"%"+taskDTO.getTypeName()+"%");
}
//发物单位
if (ObjectUtil.isNotNull(taskDTO.getStartOrgName()) && ! taskDTO.getStartOrgName().trim().isEmpty()){
historicTaskQuery = historicTaskQuery.taskVariableValueLike(START_ORG_NAME,"%"+taskDTO.getStartOrgName()+"%");
}
//流程状态
if (ObjectUtil.isNotNull(taskDTO.getBussinessStatus()) && taskDTO.getBussinessStatus().equals("正在处理")){
historicTaskQuery=historicTaskQuery.taskVariableValueEquals(BUSINESS_STATUS_1,taskDTO.getBussinessStatus());
}else if (ObjectUtil.isNotNull(taskDTO.getBussinessStatus()) && taskDTO.getBussinessStatus().equals("撤销")){
historicTaskQuery=historicTaskQuery.taskVariableValueEquals(BUSINESS_STATUS_2,taskDTO.getBussinessStatus());
}else if (ObjectUtil.isNotNull(taskDTO.getBussinessStatus()) && taskDTO.getBussinessStatus().equals("驳回")){
historicTaskQuery=historicTaskQuery.taskVariableValueEquals(BUSINESS_STATUS_3,taskDTO.getBussinessStatus());
}else if (ObjectUtil.isNotNull(taskDTO.getBussinessStatus()) && taskDTO.getBussinessStatus().equals("已结束")){
historicTaskQuery=historicTaskQuery.taskVariableValueEquals(BUSINESS_STATUS_4,taskDTO.getBussinessStatus());
}
List<HistoricTaskInstance> tasks = historicTaskQuery.listPage((taskDTO.getPageNo() - 1) * taskDTO.getPageSize(), taskDTO.getPageSize()); List<HistoricTaskInstance> tasks = historicTaskQuery.listPage((taskDTO.getPageNo() - 1) * taskDTO.getPageSize(), taskDTO.getPageSize());
long count = historicTaskQuery.count(); long count = historicTaskQuery.count();
...@@ -384,6 +429,12 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask ...@@ -384,6 +429,12 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
taskVO.setBusinessStatus(MapUtil.getStr(processVariables, PROCESS_STATUS)); taskVO.setBusinessStatus(MapUtil.getStr(processVariables, PROCESS_STATUS));
taskVO.setEndTime(task.getEndTime()); taskVO.setEndTime(task.getEndTime());
taskVO.setStartOrgName(MapUtil.getStr(processVariables,START_ORG_NAME));
taskVO.setEndOrgName(MapUtil.getStr(processVariables,END_ORG_NAME));
taskVO.setEquipmentList(MapUtil.getStr(processVariables,EQUIPMENT_LIST));
taskVO.setBussinessType(MapUtil.getStr(processVariables,BUSSINESS_TYPE));
taskVO.setOutInState(MapUtil.getStr(processVariables,OUT_IN_STATE));
long totalTimes = task.getEndTime() == null ? long totalTimes = task.getEndTime() == null ?
(Calendar.getInstance().getTimeInMillis() - task.getStartTime().getTime()) : (Calendar.getInstance().getTimeInMillis() - task.getStartTime().getTime()) :
(task.getEndTime().getTime() - task.getStartTime().getTime()); (task.getEndTime().getTime() - task.getStartTime().getTime());
...@@ -439,6 +490,26 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask ...@@ -439,6 +490,26 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
if (ObjectUtil.isNotNull(applyDTO.getEndTime())){ if (ObjectUtil.isNotNull(applyDTO.getEndTime())){
desc =desc.startedBefore(applyDTO.getEndTime()); desc =desc.startedBefore(applyDTO.getEndTime());
} }
//装备名称
if (ObjectUtil.isNotNull(applyDTO.getTypeName()) && ! applyDTO.getTypeName().trim().isEmpty()){
desc=desc.variableValueLike(EQUIPMENT_LIST,"%"+applyDTO.getTypeName()+"%");
}
//发物单位
if (ObjectUtil.isNotNull(applyDTO.getStartOrgName()) && ! applyDTO.getStartOrgName().trim().isEmpty()){
desc = desc.variableValueLike(START_ORG_NAME,"%"+applyDTO.getStartOrgName()+"%");
}
//流程状态
if (ObjectUtil.isNotNull(applyDTO.getBussinessStatus()) && applyDTO.getBussinessStatus().equals("正在处理")){
desc=desc.variableValueEquals(BUSINESS_STATUS_1,applyDTO.getBussinessStatus());
}else if (ObjectUtil.isNotNull(applyDTO.getBussinessStatus()) && applyDTO.getBussinessStatus().equals("撤销")){
desc=desc.variableValueEquals(BUSINESS_STATUS_2,applyDTO.getBussinessStatus());
}else if (ObjectUtil.isNotNull(applyDTO.getBussinessStatus()) && applyDTO.getBussinessStatus().equals("驳回")){
desc=desc.variableValueEquals(BUSINESS_STATUS_3,applyDTO.getBussinessStatus());
}else if (ObjectUtil.isNotNull(applyDTO.getBussinessStatus()) && applyDTO.getBussinessStatus().equals("已结束")){
desc=desc.variableValueEquals(BUSINESS_STATUS_4,applyDTO.getBussinessStatus());
}
List<HistoricProcessInstance> historicProcessInstances = desc.listPage((applyDTO.getPageNo() - 1) * applyDTO.getPageSize(), applyDTO.getPageSize()); List<HistoricProcessInstance> historicProcessInstances = desc.listPage((applyDTO.getPageNo() - 1) * applyDTO.getPageSize(), applyDTO.getPageSize());
long count = desc.count(); long count = desc.count();
// long count = historyService.createHistoricProcessInstanceQuery() // long count = historyService.createHistoricProcessInstanceQuery()
...@@ -467,6 +538,12 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask ...@@ -467,6 +538,12 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
historyProcessInstanceVO.setCurrentActivityName(getCurrentName(historicProcessInstance.getId(), flag, historicProcessInstance.getProcessDefinitionId())); historyProcessInstanceVO.setCurrentActivityName(getCurrentName(historicProcessInstance.getId(), flag, historicProcessInstance.getProcessDefinitionId()));
historyProcessInstanceVO.setBusinessStatus(MapUtil.getStr(processVariables, PROCESS_STATUS)); historyProcessInstanceVO.setBusinessStatus(MapUtil.getStr(processVariables, PROCESS_STATUS));
historyProcessInstanceVO.setStartOrgName(MapUtil.getStr(processVariables,START_ORG_NAME));
historyProcessInstanceVO.setEndOrgName(MapUtil.getStr(processVariables,END_ORG_NAME));
historyProcessInstanceVO.setEquipmentList(MapUtil.getStr(processVariables,EQUIPMENT_LIST));
historyProcessInstanceVO.setBussinessType(MapUtil.getStr(processVariables,BUSSINESS_TYPE));
historyProcessInstanceVO.setOutInState(MapUtil.getStr(processVariables,OUT_IN_STATE));
long totalTimes = historicProcessInstance.getEndTime() == null ? long totalTimes = historicProcessInstance.getEndTime() == null ?
(Calendar.getInstance().getTimeInMillis() - historicProcessInstance.getStartTime().getTime()) : (Calendar.getInstance().getTimeInMillis() - historicProcessInstance.getStartTime().getTime()) :
(historicProcessInstance.getEndTime().getTime() - historicProcessInstance.getStartTime().getTime()); (historicProcessInstance.getEndTime().getTime() - historicProcessInstance.getStartTime().getTime());
......
...@@ -34,4 +34,15 @@ public class HistoryProcessInstanceVO { ...@@ -34,4 +34,15 @@ public class HistoryProcessInstanceVO {
private String businessStatus; private String businessStatus;
@ApiModelProperty("耗时") @ApiModelProperty("耗时")
private String duration; private String duration;
@ApiModelProperty("发物单位")
private String startOrgName;
@ApiModelProperty("收物单位")
private String endOrgName;
@ApiModelProperty("装备列表")
private String equipmentList;
@ApiModelProperty("单据类型")
private String bussinessType;
@ApiModelProperty("出入库状态")
private String outInState;
} }
...@@ -41,4 +41,15 @@ public class TaskVO { ...@@ -41,4 +41,15 @@ public class TaskVO {
private String duration; private String duration;
@ApiModelProperty("委派状态") @ApiModelProperty("委派状态")
private DelegationState delegationState; private DelegationState delegationState;
@ApiModelProperty("发物单位")
private String startOrgName;
@ApiModelProperty("收物单位")
private String endOrgName;
@ApiModelProperty("装备列表")
private String equipmentList;
@ApiModelProperty("单据类型")
private String bussinessType;
@ApiModelProperty("出入库状态")
private String outInState;
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论