Commit 85ff729a by 赵剑炜

Merge branch 'develop' of http://gitlab.sothing.top/843502640/jyzb_platformV2 into develop-zhaojw

parents de2547ae 4b0c70d3
......@@ -138,7 +138,7 @@ public class BusFormDto {
/**
* 厂商类型(0为供应商,1为生产厂商,2为维修单位,3为销毁单位)
*/
private Integer agencyType;
private String agencyType;
/**
* 装备类别拼接
......@@ -168,7 +168,7 @@ public class BusFormDto {
/**
* 报废类型(1销毁出库,2移入报废区)
*/
private Integer type;
private String type;
/**
* 单据使用次数(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
......@@ -194,5 +194,12 @@ public class BusFormDto {
* 维保期
*/
private Integer maintenancePeriod;
/**
* 单据当前状态(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
*/
private String orderCurrentState;
/**
* 单据上次状态(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
*/
private String orderLastState;
}
......@@ -41,7 +41,7 @@ public class OrderDetailDto implements Serializable {
private Integer modifyQuantity;
private BigDecimal price;
private BigDecimal totalPrice;
/**
* 在库数
*/
......@@ -61,4 +61,6 @@ public class OrderDetailDto implements Serializable {
* 维保期
*/
private Integer maintenancePeriod;
private String remark;
}
package com.junmp.jyzb.api.bean.dto;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import java.io.Serializable;
......@@ -23,6 +24,11 @@ public class OrderDto implements Serializable {
*/
private String bussinessType;
/**
* 业务单据编号
*/
private String bussinessCode;
/**
* 订单号
*/
private String orderCode;
......@@ -37,6 +43,7 @@ public class OrderDto implements Serializable {
/**
* 供应商名称
*/
private String supplierId;
private String supplierName;
/**
* 收物单位
......@@ -75,10 +82,7 @@ public class OrderDto implements Serializable {
*/
private String invList;
/**
* 生产厂商
*/
private String manufacturerName;
/**
* 明细列表
*/
......@@ -89,8 +93,6 @@ public class OrderDto implements Serializable {
private String createUser;
private String allocateType;
private String repairName;
private String destoryName;
/**
* 附件地址
......@@ -103,4 +105,24 @@ public class OrderDto implements Serializable {
private String returnUser;
/**
* 移入仓库id
*/
private String locationId;
/**
* 移入仓库名称
*/
private String locationName;
/**
* 移入仓库id
*/
private String removeLocationId;
/**
* 移入仓库名称
*/
private String removeLocationName;
private String note;
}
package com.junmp.jyzb.api.bean.dto;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import java.io.Serializable;
......@@ -36,7 +37,7 @@ public class OrderMainDto implements Serializable {
//收物单位
private String endOrgName;
private String supplierId;
//供应商名称
private String supplierName;
......@@ -72,10 +73,7 @@ public class OrderMainDto implements Serializable {
*/
private Integer manualState;
/**
* 生产厂商id
*/
private String manufacturerId;
/**
* 调拨类型(2支拨,1价拨),调拨出入库才有
......@@ -97,5 +95,23 @@ public class OrderMainDto implements Serializable {
*/
private String createUser;
/**
* 移入仓库id
*/
private String locationId;
/**
* 移入仓库名称
*/
private String locationName;
/**
* 移入仓库id
*/
private String removeLocationId;
/**
* 移入仓库名称
*/
private String removeLocationName;
}
package com.junmp.jyzb.api.bean.dto;
import com.junmp.v2.common.bean.request.ValidationApi;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.util.Date;
@Data
public class QuickSuggestionsDto {
/**
* id
*/
private Long id;
/**
* 用户id
*/
private Long userId;
/**
* 审批意见
*/
private String text;
/**
* 应用场景(1为审批时使用)
*/
private Integer useType;
/**
* 创建时间
*/
private Date createTime;
/**
* 更新时间
*/
private Date updateTime;
}
......@@ -22,7 +22,7 @@ public class ReassignmentDto {
/**
* 经办人
*/
private String userName;
private String agent;
/**
* 工作流id
......@@ -46,7 +46,9 @@ public class ReassignmentDto {
/**
* 警员带走装备
*/
private String eqsList;
private String detailList;
private String invList;
/**
* 组织机构id(谁申请,就是谁的组织机构号)
......@@ -105,7 +107,7 @@ public class ReassignmentDto {
/**
* 类型(调入警员0,调出警员1)
*/
private Integer reassigmentType;
private String reassignmentType;
}
\ No newline at end of file
......@@ -41,4 +41,7 @@ public class BussinessOrderDetialReq {
private Integer maintenancePeriod;
//在库数
private Integer stockNumber;
//报废区数
private Integer brokenNumber;
}
......@@ -5,12 +5,21 @@ import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
/**
* 主单据实体类
*/
@Data
public class OrderReq {
private String id;
private BigDecimal price;
private Integer actualQuantity;
private Integer orderState;
private String orderState;
//组织机构id
private Long orgId;
//组织机构名称
private String orgName;
//业务类型
private String bussinessType;
private List<DetailOrderReq> orderDetail;
private List<PurchaseEqsReq> purchaseList;
}
......@@ -4,26 +4,19 @@ import lombok.Data;
import java.util.List;
/**
* 总的出入记录上报实体类对象
*/
@Data
public class OutInLogsReq {
//组织机构id
private Long orgId;
//组织机构名称
private String orgName;
//设备标识
private String device;
//出入设备
private Integer deviceType;
//业务类型
private String bussinessType;
//出入状态
private String outInState;
//所属位置(0仓库1单警柜)
private Integer locationType;
private OrderReq orderMain;
private List<SummaryLogReq> logSummaryList;
/**
* 主单据对象
*/
private OrderReq order;
/**
* 出入库记录对象
*/
private List<SummaryLogReq> logList;
}
......@@ -15,9 +15,13 @@ public class PurchaseEqsReq {
private Date productionDate;
private Integer warranyPeriod;
private Integer maintenancePeriod;
//仓库id和仓库name
private String locationId;
private String locationName;
private String supplierId;
private String supplierName;
//装备类型0单件,1装备包
private Integer equipmentType;
private BigDecimal price;
}
......@@ -11,10 +11,25 @@ public class SummaryLogReq {
private String orderCode;
private String locationId;
private String locationName;
//组织机构id
private Long orgId;
//组织机构名称
private String orgName;
private String userName;
private Date useTime;
private String picture;
private String equipmentList;
private Integer number;
//业务类型
private String bussinessType;
//设备标识
private String device;
//出入设备
private Integer deviceType;
//出入状态
private String outInState;
//所属位置(0仓库1单警柜)
private Integer locationType;
private List<DetailLogReq> logDetailList;
}
......@@ -36,7 +36,7 @@ public class OrderDetailReq extends BaseRequest {
private Integer actualNum;
private BigDecimal totalPrice;
private BigDecimal price;
private String orderType;
......@@ -72,5 +72,5 @@ public class OrderDetailReq extends BaseRequest {
* 维保期
*/
private Integer maintenancePeriod;
private String remark;
}
package com.junmp.jyzb.api.bean.query;
import com.baomidou.mybatisplus.annotation.TableField;
import com.junmp.v2.common.bean.request.BaseRequest;
import lombok.Data;
import lombok.EqualsAndHashCode;
......@@ -35,6 +36,7 @@ public class OrderMainReq extends BaseRequest {
private Long endOrgId;
private String endOrgName;
private String supplierId;
/**
* 供应商名称
*/
......@@ -65,6 +67,7 @@ public class OrderMainReq extends BaseRequest {
private String attachmentLocation;
private String invList;
private String typeName;
/**
* 创建时间
......@@ -91,10 +94,7 @@ public class OrderMainReq extends BaseRequest {
//排序规则
private String order;
/**
* 生产厂商id
*/
private String manufacturerName;
/**
* 调拨类型(2支拨,1价拨),调拨出入库才有
......@@ -106,6 +106,24 @@ public class OrderMainReq extends BaseRequest {
*/
private String returnUserId;
/**
* 移入仓库id
*/
private String locationId;
/**
* 移入仓库名称
*/
private String locationName;
/**
* 移入仓库id
*/
private String removeLocationId;
/**
* 移入仓库名称
*/
private String removeLocationName;
private List<OrderDetailReq> detailList;
}
......@@ -13,10 +13,10 @@ import java.util.List;
@EqualsAndHashCode(callSuper = true)
public class PolicemanReq extends BaseRequest {
@NotBlank(message = "警员主键不能为空", groups = {add.class,edit.class, delete.class, detail.class})
@NotBlank(message = "警员主键不能为空", groups = {add.class, detail.class})
private String id;
@NotBlank(message = "姓名不能为空", groups = {add.class})
@NotBlank(message = "姓名不能为空")
private String name;
private String cabinetId;
......@@ -30,7 +30,7 @@ public class PolicemanReq extends BaseRequest {
private String policeCode;
@NotBlank(message = "性别不能为空", groups = {add.class})
@NotBlank(message = "性别不能为空")
private String sex;
private String faceInfo;
......@@ -43,16 +43,16 @@ public class PolicemanReq extends BaseRequest {
private String doorCode;
//账号
@NotBlank(message = "账号不能为空", groups = {add.class})
@NotBlank(message = "账号不能为空")
private String account;
//密码
@NotBlank(message = "密码不能为空", groups = {add.class})
@NotBlank(message = "密码不能为空")
private String password;
private String photo;
@NotBlank(message = "电话不能为空", groups = {add.class})
@NotBlank(message = "电话不能为空")
private String phone;
private Date createTime;
......
package com.junmp.jyzb.api.bean.query;
import com.baomidou.mybatisplus.annotation.TableField;
import com.junmp.v2.common.bean.request.BaseRequest;
import lombok.Data;
import lombok.EqualsAndHashCode;
......@@ -189,7 +190,7 @@ public class QueryBusFormReq extends BaseRequest {
/**
* 报废销毁类型(1销毁出库,2移入报废区)
*/
private Integer type;
private String type;
/**
* 单据使用次数(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
......@@ -211,4 +212,13 @@ public class QueryBusFormReq extends BaseRequest {
//是否创建空数据,true则创建,false则不创建
private Boolean isCreateNullDate;
/**
* 单据当前状态(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
*/
private String orderCurrentState;
/**
* 单据上次状态(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
*/
private String orderLastState;
}
package com.junmp.jyzb.api.bean.query;
import com.junmp.v2.common.bean.request.ValidationApi;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
@Data
public class QueryQuickSuggestionsReq {
/**
* id
*/
private Long id;
/**
* 用户id
*/
@NotNull(message = "用户id不能为空",groups = {ValidationApi.detail.class})
private Long userId;
/**
* 审批意见
*/
private String text;
/**
* 应用场景(1为审批时使用)
*/
private Integer useType;
/**
* 创建时间
*/
private Date createTime;
/**
* 更新时间
*/
private Date updateTime;
}
......@@ -21,7 +21,7 @@ public class QueryReassignmentReq extends BaseRequest {
/**
* 经办人
*/
private String userName;
private String agent;
/**
* 工作流id
......@@ -43,7 +43,10 @@ public class QueryReassignmentReq extends BaseRequest {
/**
* 警员带走装备
*/
private String eqsList;
private String detailList;
private String invList;
/**
* 组织机构id(警员原组织机构id)
......@@ -118,6 +121,12 @@ public class QueryReassignmentReq extends BaseRequest {
/**
* 类型(调入警员0,调出警员1)
*/
private Integer reassigmentType;
private String reassignmentType;
//登录人id
private String userId;
private String typeName;
private String sizeName;
}
......@@ -25,6 +25,11 @@ public class UpdateBusFormReq extends BaseRequest {
private String processDefinitionId;
/**
* 工作流实例id
*/
private String processId;
/**
* 单据业务类型
*/
@NotBlank(message = "业务单据类型不能为空",groups = {add.class,edit.class})
......@@ -168,7 +173,7 @@ public class UpdateBusFormReq extends BaseRequest {
/**
* 报废销毁类型(1销毁出库,2移入报废区)
*/
private Integer type;
private String type;
/**
* 单据使用次数(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
......@@ -180,5 +185,14 @@ public class UpdateBusFormReq extends BaseRequest {
*/
private String invList;
/**
* 单据当前状态(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
*/
private String orderCurrentState;
/**
* 单据上次状态(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
*/
private String orderLastState;
}
......@@ -41,7 +41,7 @@ public class UpdateOrderDetailReq implements Serializable {
private String supplierName;
private Integer planNum;
private BigDecimal totalPrice;
private BigDecimal price;
private String warehouseId;
......@@ -79,4 +79,6 @@ public class UpdateOrderDetailReq implements Serializable {
*/
private Integer maintenancePeriod;
private String remark;
}
package com.junmp.jyzb.api.bean.req;
import com.baomidou.mybatisplus.annotation.TableField;
import com.junmp.jyzb.api.bean.Validator.IsNumber;
import com.junmp.v2.common.bean.request.BaseRequest;
import lombok.Data;
......@@ -131,10 +132,6 @@ public class UpdateOrderReq extends BaseRequest implements Serializable {
*/
private List<UpdateOrderDetailReq> detailList;
/**
* 生产厂商
*/
private String manufacturerName;
/**
* 调拨类型(2支拨,1价拨),调拨出入库才有
......@@ -155,6 +152,24 @@ public class UpdateOrderReq extends BaseRequest implements Serializable {
//备注
private String note;
/**
* 移入仓库id
*/
private String locationId;
/**
* 移入仓库名称
*/
private String locationName;
/**
* 移入仓库id
*/
private String removeLocationId;
/**
* 移入仓库名称
*/
private String removeLocationName;
//消息类型()
private String api;
}
package com.junmp.jyzb.api.bean.req;
import com.junmp.v2.common.bean.request.ValidationApi;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
@Data
public class UpdateQuickSuggestionsReq {
/**
* id
*/
@NotNull(message = "删除时主键id不能为空",groups = {ValidationApi.delete.class})
private Long id;
/**
* 用户id
*/
@NotNull(message = "用户id不能为空",groups = {ValidationApi.add.class})
private Long userId;
/**
* 审批意见
*/
@NotBlank(message = "审批意见不能为空",groups = {ValidationApi.add.class})
private String text;
/**
* 应用场景(1为审批时使用)
*/
@NotNull(message = "应用场景不能为空",groups = {ValidationApi.add.class})
private Integer useType;
/**
* 创建时间
*/
private Date createTime;
/**
* 更新时间
*/
private Date updateTime;
}
......@@ -19,12 +19,14 @@ public class UpdateReassignmentReq extends BaseRequest {
/**
* 经办人
*/
private String userName;
private String agent;
/**
* 申请人id
*/
private String userId;
private String orderCode;
/**
* 工作流id
*/
......@@ -48,8 +50,8 @@ public class UpdateReassignmentReq extends BaseRequest {
/**
* 警员带走装备
*/
private String eqsList;
private String detailList;
private String invList;
/**
* 组织机构id(警员原组织机构id)
*/
......@@ -108,6 +110,6 @@ public class UpdateReassignmentReq extends BaseRequest {
/**
* 类型(调入警员0,调出警员1)
*/
private Integer reassigmentType;
private String reassignmentType;
}
......@@ -6,7 +6,8 @@ import lombok.Getter;
@Getter
public enum InventoryExceptionEnum implements IExceptionEnum {
INVENTORY_NOT_EXIST(CommonConstant.DEFAULT_USER_ERROR_CODE,"装备信息不存在")
INVENTORY_NOT_EXIST(CommonConstant.DEFAULT_USER_ERROR_CODE,"装备信息不存在"),
INVENTORY_BEYOND_STOCK(CommonConstant.DEFAULT_USER_ERROR_CODE,"填写的报废的装备数量大于实际能进行报废的数量"),
;
/**
* 错误编码
......
......@@ -51,10 +51,10 @@ public class BussinessController {
}
//根据调拨单,一键生成采购单
@PostMapping("/GeneratePurchaseQuickly")
@ApiOperation("快速生成采购单")
public ApiRes<List<GeneratePurchaseQuicklyDto>> GeneratePurchaseQuickly(@RequestBody GeneratePurchaseQuicklyReq req){
return ApiRes.success(busFormService.GeneratePurchaseQuickly(req));
}
// @PostMapping("/GeneratePurchaseQuickly")
// @ApiOperation("快速生成采购单")
// public ApiRes<List<GeneratePurchaseQuicklyDto>> GeneratePurchaseQuickly(@RequestBody GeneratePurchaseQuicklyReq req){
// return ApiRes.success(busFormService.GeneratePurchaseQuickly(req));
// }
}
......@@ -265,4 +265,9 @@ public class InventoryController {
return ApiRes.success(inventorySummaryService.selectTotalNum(req));
}
@PostMapping("/selectSumByItems")
public ApiRes<List<InventorySummary>> selectSumByItems(@RequestBody SelectTotalNumReq req){
return ApiRes.success(inventorySummaryService.selectSumByItems(req));
}
}
......@@ -69,9 +69,9 @@ public class OutAndInboundController {
return ApiRes.success(logDetailService.getInOutRecords(req));
}
@PostMapping("/OutInRecords")
public ApiRes<Boolean> OutInRecords(@RequestBody OutInLogsReq req){
return ApiRes.success(logSummaryService.processInventoryRecords(req));
}
// @PostMapping("/OutInRecords")
// public ApiRes<Boolean> OutInRecords(@RequestBody OutInLogsReq req){
// return ApiRes.success(logSummaryService.processInventoryRecords(req));
// }
}
......@@ -186,8 +186,7 @@ public class PoliceController {
*/
@PostMapping("/PoliceBindBox")
@ApiOperation("人员绑定箱门")
public ApiRes<Boolean> PoliceBindBox(@RequestBody PolicemanReq req){
public ApiRes<Boolean> PoliceBindBox(@RequestBody @Validated(ValidationApi.add.class) PolicemanReq req){
return ApiRes.success(policemanService.PoliceBindBox(req));
}
......
......@@ -225,10 +225,15 @@ public class BusForm implements Serializable {
private String currentAssign;
/**
* 单据使用次数(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
* 单据当前状态(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
*/
@TableField(value = "use_count")
private String useCount;
@TableField(value = "order_current_state")
private String orderCurrentState;
/**
* 单据上次状态(forbidden禁止使用,outgoing 仅出库使用,incoming仅入库使用,bothuseing出入库都可以使用一次)
*/
@TableField(value = "order_last_state")
private String orderLastState;
private static final long serialVersionUID = 1L;
......
package com.junmp.jyzb.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
......@@ -16,7 +18,7 @@ public class CabinetBoxPolice implements Serializable {
/**
*
*/
@TableField(value = "id")
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
......
......@@ -25,8 +25,8 @@ public class EquipmentSize implements Serializable {
* 装备号型ID
*/
@ApiModelProperty(value = "装备号型ID")
@TableField("id")
@Id
@TableId(value = "id",type = IdType.ASSIGN_UUID)
private String id;
/**
......
......@@ -20,8 +20,10 @@ public class InventorySummary implements Serializable {
* 装备汇总id
*/
@ApiModelProperty(value = "装备汇总id")
private String id;
@TableId(type = IdType.AUTO)
private Long id;
private String valuekey;
/**
* 组织机构id
*/
......
package com.junmp.jyzb.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
......@@ -18,7 +19,7 @@ public class LogDetail implements Serializable {
/**
* 出入库明细ID
*/
@TableId(type = IdType.AUTO)
private Long detailId;
/**
* 出入库汇总id
......
......@@ -20,6 +20,7 @@ public class LogSummary implements Serializable {
/**
* 出入库汇总ID
*/
@TableId(type = IdType.AUTO)
private Long id;
/**
......
package com.junmp.jyzb.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
......@@ -17,7 +15,7 @@ import java.util.Date;
@NoArgsConstructor
@TableName("bussiness_order_detail")
public class OrderDetail implements Serializable {
@TableField("id")
@TableId(type = IdType.AUTO)
private Long id;
@TableField("order_id")
......@@ -62,6 +60,9 @@ import java.util.Date;
@TableField("price")
private BigDecimal price;
@TableField("total_price")
private BigDecimal totalPrice;
@TableField("order_type")
private String orderType;
......@@ -102,4 +103,7 @@ import java.util.Date;
*/
@TableField("maintenance_period")
private Integer maintenancePeriod;
@TableField("remark")
private String remark;
}
......@@ -14,7 +14,7 @@ import java.util.Date;
@NoArgsConstructor
@TableName("bussiness_order_main")
public class OrderMain implements Serializable {
@TableId(value = "id",type = IdType.ASSIGN_UUID)
private String id;
@TableField("order_type")
......@@ -44,6 +44,8 @@ public class OrderMain implements Serializable {
@TableField("end_org_name")
private String endOrgName;
@TableField("supplier_id")
private String supplierId;
@TableField("supplier_name")
private String supplierName;
......@@ -89,8 +91,7 @@ public class OrderMain implements Serializable {
@TableField("current_assign")
private String currentAssign;
@TableField("return_date")
private Date returnDate;
@TableField("use_date")
private Date useDate;
......@@ -116,11 +117,6 @@ public class OrderMain implements Serializable {
@TableField("update_user")
private String updateUser;
/**
* 生产厂商id
*/
@TableField("manufacturer_name")
private String manufacturerName;
/**
* 调拨类型(2支拨,1价拨)
......@@ -133,16 +129,33 @@ public class OrderMain implements Serializable {
@TableField("return_user_id")
private String returnUserId;
@TableField("repair_name")
private String repairName;
@TableField("destory_name")
private String destoryName;
@TableField("return_user")
private String returnUser;
@TableField("return_date")
private Date returnDate;
/**
* 移入仓库id
*/
@TableField("location_id")
private String locationId;
/**
* 移入仓库名称
*/
@TableField("location_name")
private String locationName;
/**
* 移入仓库id
*/
@TableField("remove_location_id")
private String removeLocationId;
/**
* 移入仓库名称
*/
@TableField("remove_location_name")
private String removeLocationName;
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
package com.junmp.jyzb.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
......@@ -29,7 +27,7 @@ public class PoliceEquipment implements Serializable {
/**
* 警员ID
*/
@TableField("police_id")
@TableField(value = "police_id")
private String policeId;
@TableField("police_name")
......@@ -68,9 +66,21 @@ public class PoliceEquipment implements Serializable {
/**
* 组织机构ID
*/
@TableField("org_id")
@TableField(value = "org_id",updateStrategy = FieldStrategy.IGNORED)
private Long orgId;
/**
* 装备来源仓库id
*/
@TableField(value = "location_id",updateStrategy = FieldStrategy.IGNORED)
private String locationId;
/**
* 装备存放位置
*/
@TableField(value = "storage_location",updateStrategy = FieldStrategy.IGNORED)
private String storageLocation;
//装备单价
@TableField("price")
private BigDecimal price;
......
......@@ -88,5 +88,8 @@ public class Policeman implements Serializable {
@TableField(value = "hk_face_device")
private Integer hkFaceDevice;
@TableField(exist = false)
private List<PoliceEquipment> policeEquipmentList;
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
......@@ -24,7 +24,7 @@ import java.util.Date;
@TableName("vie_price_sum_summary")
public class PriceSumSummary implements Serializable {
@TableId(value = "id")
@TableId(value = "id",type = IdType.ASSIGN_UUID)
private String id;
/**
......
package com.junmp.jyzb.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
......@@ -23,7 +24,7 @@ public class Reassignment implements Serializable {
/**
* id
*/
@TableId(value = "id",type = IdType.ASSIGN_UUID)
private String id;
/**
......@@ -53,8 +54,14 @@ public class Reassignment implements Serializable {
/**
* 警员带走装备
*/
@TableField(value = "eqs_list")
private String eqsList;
@TableField(value = "detail_list")
private String detailList;
/**
* 警员带走装备
*/
@TableField(value = "inv_list")
private String invList;
/**
* 组织机构id(谁申请,就是谁的组织机构号)
......@@ -91,8 +98,8 @@ public class Reassignment implements Serializable {
/**
* 经办人
*/
@TableField(value = "user_name")
private String userName;
@TableField(value = "agent")
private String agent;
/**
* 申请时间
......@@ -137,8 +144,11 @@ public class Reassignment implements Serializable {
/**
* 类型(调入警员0,调出警员1)
*/
@TableField(value = "reassigment_type")
private Integer reassigmentType;
@TableField(value = "reassignment_type")
private String reassignmentType;
private static final long serialVersionUID = 1L;
......
......@@ -17,6 +17,7 @@ import com.junmp.jyzb.service.BusFormService;
import com.junmp.jyzb.service.OrderMainService;
import com.junmp.jyzb.service.ReassignmentService;
import com.junmp.jyzb.service.StocktakeService;
import com.junmp.v2.auth.api.LoginUserApi;
import com.junmp.v2.auth.api.bean.login.LoginUser;
import com.junmp.v2.auth.api.context.LoginContext;
import com.junmp.v2.common.exception.base.ServiceException;
......@@ -27,6 +28,8 @@ import com.junmp.v2.message.api.bean.req.MessageSendReq;
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;
import com.junmp.v2.sys.user.entity.SysUserOrg;
import com.junmp.v2.sys.user.service.SysUserOrgService;
import com.junmp.v2.sys.user.service.SysUserService;
import org.flowable.bpmn.model.Process;
import org.flowable.bpmn.model.UserTask;
......@@ -67,6 +70,9 @@ public class CounterSignListener implements ExecutionListener {
private OrgUserMapper orgUserMapper;
@Resource
private ReassignmentService reassignmentService;
@Resource
private SysUserOrgService sysUserOrgService;
@Override
public void notify(DelegateExecution execution) {
String currentActivityId = execution.getCurrentActivityId();
......@@ -90,7 +96,8 @@ public class CounterSignListener implements ExecutionListener {
}
ApproverGroups group=currentNode.getApproverGroups().get(0);
String Type=group.getApproverType();
if (Type.equals("1")||Type.equals("8"))//指定人员,不处理
// if (Type.equals("1")||Type.equals("8"))//指定人员,不处理
if (Type.equals("8"))//指定人员,不处理
{
List<String> assignedUser = group.getApproverIds();
......@@ -114,6 +121,7 @@ public class CounterSignListener implements ExecutionListener {
roleList = roleList.substring(0, roleList.length() - 1);
roleList+=")";//至此拼接完成
LoginUser StartUser= LoginContext.getContext().getLoginUser();
List<UserListDTO> userList=orgUserMapper.QueryUserByRoleId(roleList, StartUser.getUserId().toString());
for (UserListDTO userId :userList)
......@@ -173,19 +181,56 @@ public class CounterSignListener implements ExecutionListener {
{
LoginUser StartUser= LoginContext.getContext().getLoginUser();
List<UserListDTO> userList= orgUserMapper.QueryUserWithParentOrg(StartUser.getUserId().toString());
List<String> Roles=group.getApproverIds();
String roleList="";
if (Roles.size()>0) { //角色不为空
//开始拼接传入的多角色
roleList = "(";
for (String role : Roles) {
roleList += role + ",";
}
roleList = roleList.substring(0, roleList.length() - 1);
roleList += ")";//至此拼接完成
}else {
throw new WorkFlowException("审核流配置不正确,无指定的组织机构!");
}
if (userList.size()<=0)//没有上级则本身已是上级
{
assigneeList.add(StartUser.getUserId().toString());
//那么我就直接照同级下的满足角色的userId
List<UserListDTO> userList1 = orgUserMapper.QueryUserByRoleId(roleList, StartUser.getUserId().toString());
for (UserListDTO userId : userList1) {
assigneeList.add(userId.getUserID());
}
}
else//
else//表示他不是最上级的组织机构,还需要进行判断
{
for (UserListDTO userId :userList)
{
assigneeList.add("1");
// assigneeList.add(userId.getUserID());
//判断当前登录人是否在上级的userIdlist中,如果存在,则表示下一个节点的也是当前登录人所在组织机构下的userID中
boolean flag=false;
for (UserListDTO currentUser :userList) {
if (currentUser.getUserID().equals(StartUser.getUserId().toString())){
flag=true;
}
}
//如果未找到则表示下一个节点是上级组织机构下的某个角色的userId
if (!flag){
List<UserListDTO> userList1=orgUserMapper.QueryUserByRoleId(roleList, userList.get(0).getUserID());
for (UserListDTO userId :userList1)
{
assigneeList.add(userId.getUserID());
}
}
else{//下一个节点的审核人和当前灯枯人是同一个组织机构
List<UserListDTO> userList1=orgUserMapper.QueryUserByRoleId(roleList, StartUser.getUserId().toString());
for (UserListDTO userId :userList1)
{
assigneeList.add(userId.getUserID());
}
}
}
......
......@@ -4,6 +4,8 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.junmp.junmpProcess.dto.json.ChildNode;
import com.junmp.junmpProcess.utils.RabbitMQUtils2;
//import com.rabbitmq.client.Channel;
......@@ -15,6 +17,7 @@ import com.junmp.jyzb.api.bean.req.UpdateBusFormReq;
import com.junmp.jyzb.api.bean.req.UpdateOrderDetailReq;
import com.junmp.jyzb.api.bean.req.UpdateOrderReq;
import com.junmp.jyzb.api.bean.req.UpdateReassignmentReq;
import com.junmp.jyzb.api.exception.enums.InventoryExceptionEnum;
import com.junmp.jyzb.api.exception.enums.OrderExceptionEnum;
import com.junmp.jyzb.entity.*;
import com.junmp.jyzb.service.*;
......@@ -66,6 +69,12 @@ import java.util.stream.Collectors;
@Resource
private StocktakeService stocktakeService;
@Resource
private InventorySummaryService inventorySummaryService;
@Resource
private InventoryService inventoryService;
protected Logger logger = LoggerFactory.getLogger(this.getClass());
@SneakyThrows
......@@ -118,16 +127,7 @@ import java.util.stream.Collectors;
.eq(BusForm::getProcessId, processInstanceId));
busForm.setExamineState("finished");
if (busForm.getBussinessType().equals("remove")){
String detailList = busForm.getDetailList();
List<BussinessOrderDetialReq> list = JSON.parseArray(detailList, BussinessOrderDetialReq.class);
for (BussinessOrderDetialReq bussinessOrderDetialReq:list) {
//如果数量相同则直接将全部在库数的装备表中的该仓库的装备状态全部设置为报废,并且修改库存汇总表中的数据
if (bussinessOrderDetialReq.getPlanNum()==bussinessOrderDetialReq.getStockNumber()){
}else {//如果数量不相等,状态不进行修改,只修改库存汇总表中的信息
}
}
busFormService.updateBrokenResult(busForm);
}
busFormService.updateById(busForm);
}
......@@ -135,9 +135,10 @@ import java.util.stream.Collectors;
Reassignment one = reassignmentService.getOne(new LambdaQueryWrapper<Reassignment>()
.eq(Reassignment::getProcessId, processInstanceId));
UpdateReassignmentReq updateReassignmentReq = new UpdateReassignmentReq();
one.setExamineState("finished");
BeanPlusUtil.copyProperties(one,updateReassignmentReq);
updateReassignmentReq.setExamineState("finished");
policemanService.changePoliceOrg(updateReassignmentReq);
reassignmentService.updateById(one);
}
if (Type.equals("stocktakeOrder")){//盘库申请单
......
......@@ -36,7 +36,7 @@ public interface InventorySummaryMapper extends BaseMapper<InventorySummary> {
List<InventorySummary> selectByEqs(@Param("orgId") Long orgId);
//出入库时无单据查询库存汇总并统计更新或者记账时根据单据查询库存汇总并统计更新
//根据组织机构,仓库,type,size,unitprice查询库存汇总信息
List<InventorySummary> selectSumByItems(@Param("list") List<Object[]> searchCriteria);
//根据组织机构查询报表中的本级及下一级信息
......
package com.junmp.jyzb.rabbitmq;
import com.alibaba.fastjson.JSON;
import com.junmp.jyzb.api.bean.query.InAndOutRecordReq.OutInLogsReq;
import com.junmp.jyzb.service.LogSummaryService;
import com.junmp.jyzb.service.OrderMainService;
......@@ -18,11 +19,13 @@ public class OutInLogsReceiver {
@Resource
private LogSummaryService logSummaryService;
@RabbitListener(queues = "11111")//监听队列名
private void a(OutInLogsReq req, Channel channel, @Header(AmqpHeaders.DELIVERY_TAG) long deliveryTag){
@RabbitListener(queues = "orderResult")//监听队列名
private void a(String msg, Channel channel, @Header(AmqpHeaders.DELIVERY_TAG) long deliveryTag){
try {
System.out.println("req = " + req);
System.out.println("msg = " + msg);
OutInLogsReq req = JSON.parseObject(msg, OutInLogsReq.class);
//将消息进行消费
Boolean result = logSummaryService.processInventoryRecords(req);
if (result){
......
......@@ -34,5 +34,8 @@ public interface BusFormService extends IService<BusForm> {
PageResult<BusFormDto> showBussinessOrder(QueryBusFormReq req);
//根据调拨单,一键生成采购单
List<GeneratePurchaseQuicklyDto> GeneratePurchaseQuickly(GeneratePurchaseQuicklyReq req);
// List<GeneratePurchaseQuicklyDto> GeneratePurchaseQuickly(GeneratePurchaseQuicklyReq req);
//更新报废数量
boolean updateBrokenResult(BusForm busForm);
}
......@@ -42,7 +42,7 @@ public interface InventorySummaryService extends IService<InventorySummary> {
List<InventorySummary> EquipmentStatistics(InventorySumReq req);
//出入库时无单据查询库存汇总并统计更新或者记账时根据单据查询库存汇总并统计更新
List<InventorySummary> selectSumByItems(List<Object[]> searchCriteria);
List<InventorySummary> selectSumByItems(SelectTotalNumReq req);
boolean insertToSummary();
......
......@@ -284,7 +284,7 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
ElasticsearchUtil es=new ElasticsearchUtil<>(client);
// 先从ES中拿到检索数据
List<EquipmentType> searchResults = es.searchEntities("type_pinyin","name",0, 50, req.getTypeName(),EquipmentType.class);
List<EquipmentType> searchResults = es.searchEntities("type_pinyin","name",0, 50,req.getType(), req.getTypeName(),EquipmentType.class);
LambdaQueryWrapper<EquipmentType> wp = this.createWrapper(req);
// 获取所有组织机构数据
List<EquipmentType> allTypes = this.list(wp);
......
......@@ -30,6 +30,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestBody;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
......@@ -250,8 +251,45 @@ public class InventorySummaryServiceImpl extends ServiceImpl<InventorySummaryMa
//出入库时无单据查询库存汇总并统计更新或者记账时根据单据查询库存汇总并统计更新
@Override
public List<InventorySummary> selectSumByItems(List<Object[]> searchCriteria) {
return inventorySummaryMapper.selectSumByItems(searchCriteria);
public List<InventorySummary> selectSumByItems(SelectTotalNumReq req) {
List<InventorySumReq> list = req.getList();
List<Object[]> searchItem=new ArrayList<>();
for (InventorySumReq inv:list) {
Object[] item=new Object[]{inv.getOrgId(),inv.getLocationId(),inv.getTypeId(),inv.getSizeId(),inv.getUnitPrice()};
searchItem.add(item);
}
List<InventorySummary> inventorySummaryList = inventorySummaryMapper.selectSumByItems(searchItem);
//判断装备的list是否和传入的list的size是否相等,如果相等则表示所有的库存数量都能查询到,如果不相等则进行遍历将不满足要求的进行新增一条装备数量为0的库存信息进行返回给前端
if (list.size()==inventorySummaryList.size()){
return inventorySummaryList;
}else {
List<InventorySummary> returnList=new ArrayList<>();
for (InventorySumReq inv:list) {
boolean flag=false;
for (InventorySummary is:inventorySummaryList) {
if (inv.getOrgId().equals(is.getOrgId())&& inv.getLocationId().equals(is.getLocationId())
&& inv.getTypeId().equals(is.getTypeId()) && inv.getSizeId().equals(is.getTypeId())
&& is.getUnitPrice().compareTo(new BigDecimal(inv.getUnitPrice()))==0){
flag=true;
returnList.add(is);
break;
}
}
if (!flag){
InventorySummary inventorySummary = new InventorySummary();
BeanPlusUtil.copyProperties(inv,inventorySummary);
inventorySummary.setStockNumber(0);
inventorySummary.setOutboundNumber(0);
inventorySummary.setPrice(BigDecimal.ZERO);
inventorySummary.setBrokenNumber(0);
inventorySummary.setDestructionNumber(0);
returnList.add(inventorySummary);
}
}
return returnList;
}
}
@Override
......
package com.junmp.jyzb.utils;
import cn.hutool.core.util.ObjectUtil;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.elasticsearch.action.search.SearchRequest;
import org.elasticsearch.action.search.SearchResponse;
......@@ -25,7 +26,7 @@ public class ElasticsearchUtil<T> {
this.client = client;
}
public List<T> searchEntities(String typeName,String index, Integer pageNum, Integer pageSize, String keyword, Class<T> entityClass) throws IOException {
public List<T> searchEntities(String typeName,String index, Integer pageNum, Integer pageSize,Integer type, String keyword, Class<T> entityClass) throws IOException {
if (pageNum < 0) pageNum = 0;
SearchRequest request = new SearchRequest(typeName);
......@@ -44,6 +45,9 @@ public class ElasticsearchUtil<T> {
{
builder.postFilter(new TermQueryBuilder("delFlag", 1));
}
if (ObjectUtil.isNotNull(type)){
builder.postFilter(new TermQueryBuilder("type",type));
}
builder.query(boolQueryBuilder);
builder.timeout(new TimeValue(60, TimeUnit.SECONDS));
......
package com.junmp.jyzb.utils;
import com.alibaba.fastjson.JSON;
import org.springframework.amqp.core.BindingBuilder;
import org.springframework.amqp.core.DirectExchange;
import org.springframework.amqp.core.Exchange;
......@@ -17,11 +18,12 @@ public class RabbitMQSendMsg {
private RabbitAdmin rabbitAdmin;
public void SendMsg(String exchangeName,String name,Object msg)
{
Queue queue=new Queue(name,true,false,false);
Exchange exchange = new DirectExchange(exchangeName, true, false);
rabbitAdmin.declareQueue(queue);
rabbitAdmin.declareExchange(exchange);
rabbitAdmin.declareBinding(BindingBuilder.bind(queue).to(exchange).with(name).noargs());
rabbitTemplate.convertAndSend(exchangeName, name, msg);
Queue queue=new Queue(name,true,false,false);
Exchange exchange = new DirectExchange(exchangeName, true, false);
rabbitAdmin.declareQueue(queue);
rabbitAdmin.declareExchange(exchange);
rabbitAdmin.declareBinding(BindingBuilder.bind(queue).to(exchange).with(name).noargs());
String jsonString = JSON.toJSONString(msg);
rabbitTemplate.convertAndSend(exchangeName, name, jsonString);
}
}
......@@ -467,12 +467,14 @@
</foreach>
</select>
<select id="selectEqsByItem" resultType="com.junmp.jyzb.entity.Inventory">
select * from base_inventory where
<foreach collection="list" item="item" separator="or">
select * from base_inventory where (
<foreach collection="list" item="item" separator="or">
(
location_state = 'in' AND state = 'normal' AND org_id_int = ${item[0]} AND location_id = '${item[1]}' AND type_id = ${item[3]} AND size_id = '${item[2]}' AND unit_price = ${item[4]}
location_state = 'in' AND state = 'normal' AND org_id_int = ${item[0]} AND location_id = '${item[1]}' AND
type_id = ${item[3]} AND size_id = '${item[2]}' AND unit_price = ${item[4]}
)
</foreach>
)
</select>
<select id="GetInvInfoByEpc" resultType="com.junmp.jyzb.api.bean.dto.InventoryDto">
SELECT bi.*, po.org_name, es.name, et.name, bs.name, bw.name
......
......@@ -281,11 +281,13 @@
</select>
<select id="selectSumByItems" resultType="com.junmp.jyzb.entity.InventorySummary">
select * from base_inventory_summary where
<foreach collection="list" item="item" separator="or">
<foreach collection="list" item="item" separator="or">
(
org_id_int = ${item[0]} AND location_id = '${item[1]}' AND type_id = ${item[2]} AND size_id = '${item[3]}' AND unit_price = ${item[4]}
org_id_int = ${item[0]} AND location_id = '${item[1]}' AND type_id = ${item[2]} AND size_id = '${item[3]}'
AND unit_price = ${item[4]}
)
</foreach>
</select>
<select id="getByOrgId" resultType="com.junmp.jyzb.api.bean.dto.TjDto.TjOrgEqsDto"
parameterType="java.lang.Long">
......
......@@ -72,6 +72,9 @@
<if test="null != req.bussinessType and '' != req.bussinessType ">
and bussiness_type = #{req.bussinessType}
</if>
<if test="null != req.typeName and '' != req.typeName ">
and inv_list like concat('%',#{req.typeName},'%')
</if>
<if test="req.startOrgId != null and req.startOrgId != ''">
and start_org_id = #{req.startOrgId}
</if>
......@@ -81,7 +84,10 @@
<if test="req.orderState !=null and req.orderState != ''">
and order_state = #{req.orderState}
</if>
<if test="req.examineState !=null and req.examineState != ''">
<if test=" req.examineState=='unaudited'">
and examine_state in('none','working')
</if>
<if test="req.examineState !=null and req.examineState != '' and req.examineState!='unaudited'">
and examine_state = #{req.examineState}
</if>
<if test="req.startTime != null and req.startTime != ''">
......
......@@ -251,7 +251,7 @@ WHERE o.org_id IN
<select id="selectUserBypoliceIds" resultType="com.junmp.jyzb.api.bean.dto.PolicemanDto">
select b.* FROM(
select
su.user_id,su.account,su.status_flag as state,suo.org_id,p.id,p.name,p.cabinet_box_id,p.police_code,
su.user_id,su.account,su.status_flag as state,suo.org_id,p.id,p.name,p.police_code,
p.face_info,p.password,p.photo,p.phone,p.id_card,p.identity,su.create_time,p.hk_face_device
FROM sys_user su
join sys_user_org suo on su.user_id=suo.user_id and suo.org_id=#{orgId}
......@@ -290,7 +290,7 @@ WHERE o.org_id IN
select count(*) from(
select b.* FROM
(select
su.user_id,su.account,su.status_flag as state,suo.org_id,p.id,p.name,p.cabinet_box_id,p.police_code,p.face_info,p.password,p.photo,p.phone,p.id_card,p.identity,p.hk_face_device
su.user_id,su.account,su.status_flag as state,suo.org_id,p.id,p.name,p.police_code,p.face_info,p.password,p.photo,p.phone,p.id_card,p.identity,p.hk_face_device
FROM sys_user su
join sys_user_org suo on su.user_id=suo.user_id and suo.org_id=#{orgId}
left join base_policeman p on p.user_id=su.user_id
......
......@@ -4,23 +4,28 @@ import com.junmp.junmpProcess.common.utils.ResponseResult;
import com.junmp.junmpProcess.dto.ApplyDTO;
import com.junmp.junmpProcess.dto.HandleDataDTO;
import com.junmp.junmpProcess.dto.TaskDTO;
import com.junmp.junmpProcess.service.IFlowInstanceService;
import com.junmp.junmpProcess.service.IFlowTaskService;
import com.junmp.junmpProcess.service.QuickSuggestionsService;
import com.junmp.junmpProcess.vo.HistoryProcessInstanceVO;
import com.junmp.junmpProcess.vo.RecordVO;
import com.junmp.junmpProcess.vo.TaskDetailVO;
import com.junmp.junmpProcess.vo.TaskVO;
import com.junmp.jyzb.api.bean.dto.QuickSuggestionsDto;
import com.junmp.jyzb.api.bean.query.QueryQuickSuggestionsReq;
import com.junmp.jyzb.api.bean.req.UpdateQuickSuggestionsReq;
import com.junmp.v2.common.bean.request.ValidationApi;
import com.junmp.v2.common.bean.response.ApiRes;
import com.junmp.v2.db.api.page.PageResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
@Slf4j
......@@ -30,6 +35,10 @@ import java.util.List;
public class FlowTaskController {
@Autowired
private IFlowTaskService FlowTaskService;
@Resource
private QuickSuggestionsService quickSuggestionsService;
@ApiOperation("同意按钮")
@PostMapping("agree")
public ResponseResult agree(@RequestBody HandleDataDTO handleDataDTO){
......@@ -67,4 +76,23 @@ public class FlowTaskController {
return FlowTaskService.record(handleDataDTO.getProcessInstanceId());
}
//添加快选意见
@ApiOperation("添加快选意见")
@PostMapping("addQuickSuggestions")
public ApiRes<Long> addQuickSuggestions(@RequestBody @Validated(ValidationApi.add.class) UpdateQuickSuggestionsReq req){
return ApiRes.success(quickSuggestionsService.addQuickSuggestions(req));
}
//删除快选意见
@ApiOperation("删除快选意见")
@PostMapping("delQuickSuggestions")
public ApiRes<Boolean> delQuickSuggestions(@RequestBody @Validated(ValidationApi.delete.class) UpdateQuickSuggestionsReq req){
return ApiRes.success(quickSuggestionsService.delQuickSuggestions(req));
}
//查询快选意见
@ApiOperation("查询快选意见")
@PostMapping("showQuickSuggestions")
public ApiRes<List<QuickSuggestionsDto>> showQuickSuggestions(@RequestBody @Validated(ValidationApi.detail.class)QueryQuickSuggestionsReq req){
return ApiRes.success(quickSuggestionsService.showQuickSuggestions(req));
}
}
......@@ -35,6 +35,6 @@ public class StartProcessInstanceDTO {
private String outInState;
//调岗类型,调入还是调出
private Integer reassigmentType;
private String reassignmentType;
}
package com.junmp.junmpProcess.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* 快选意见表(审核流审批时的意见表)
* @TableName flw_quick_suggestions
*/
@TableName(value ="flw_quick_suggestions")
@Data
public class QuickSuggestions implements Serializable {
/**
* id
*/
private Long id;
/**
* 用户id
*/
@TableField(value = "user_id")
private Long userId;
/**
* 审批意见
*/
@TableField(value = "text")
private String text;
/**
* 应用场景(1为审批时使用)
*/
@TableField(value = "use_type")
private Integer useType;
/**
* 创建时间
*/
@TableField(value = "create_time")
private Date createTime;
/**
* 更新时间
*/
@TableField(value = "update_time")
private Date updateTime;
@TableField(exist = false)
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
package com.junmp.junmpProcess.mapper;
import com.junmp.junmpProcess.entity.QuickSuggestions;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @author lxh专属坐骑
* @description 针对表【flw_quick_suggestions(快选意见表(审核流审批时的意见表))】的数据库操作Mapper
* @createDate 2023-11-27 13:28:59
* @Entity com.junmp.junmpProcess.entity.QuickSuggestions
*/
public interface QuickSuggestionsMapper extends BaseMapper<QuickSuggestions> {
}
package com.junmp.junmpProcess.service;
import com.junmp.junmpProcess.entity.QuickSuggestions;
import com.baomidou.mybatisplus.extension.service.IService;
import com.junmp.jyzb.api.bean.dto.QuickSuggestionsDto;
import com.junmp.jyzb.api.bean.query.QueryQuickSuggestionsReq;
import com.junmp.jyzb.api.bean.req.UpdateQuickSuggestionsReq;
import java.util.List;
/**
* @author lxh专属坐骑
* @description 针对表【flw_quick_suggestions(快选意见表(审核流审批时的意见表))】的数据库操作Service
* @createDate 2023-11-27 13:28:59
*/
public interface QuickSuggestionsService extends IService<QuickSuggestions> {
Long addQuickSuggestions(UpdateQuickSuggestionsReq req);
boolean delQuickSuggestions(UpdateQuickSuggestionsReq req);
List<QuickSuggestionsDto> showQuickSuggestions(QueryQuickSuggestionsReq req);
}
......@@ -719,6 +719,8 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
taskDetailVO.setSignImage(comment1.getFullMessage());
}
}
String s = new String(comments.get(0).getFullMessage().getBytes(StandardCharsets.UTF_8), StandardCharsets.UTF_8);
System.out.println("s = " + s);
taskDetailVO.setComment(new String(comments.get(0).getFullMessage().getBytes(StandardCharsets.UTF_8), StandardCharsets.UTF_8));
taskDetailVO.setAttachmentVOList(attachmentVOList);
taskDetailVOS.add(taskDetailVO);
......
package com.junmp.junmpProcess.service.impl;
import cn.hutool.core.date.DateTime;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.junmp.junmpProcess.entity.QuickSuggestions;
import com.junmp.junmpProcess.service.QuickSuggestionsService;
import com.junmp.junmpProcess.mapper.QuickSuggestionsMapper;
import com.junmp.junmpProcess.utils.DateTimeUtil;
import com.junmp.jyzb.api.bean.dto.QuickSuggestionsDto;
import com.junmp.jyzb.api.bean.query.QueryQuickSuggestionsReq;
import com.junmp.jyzb.api.bean.req.UpdateQuickSuggestionsReq;
import com.junmp.v2.common.util.BeanPlusUtil;
import org.joda.time.DateTimeUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author lxh专属坐骑
* @description 针对表【flw_quick_suggestions(快选意见表(审核流审批时的意见表))】的数据库操作Service实现
* @createDate 2023-11-27 13:28:59
*/
@Service
public class QuickSuggestionsServiceImpl extends ServiceImpl<QuickSuggestionsMapper, QuickSuggestions>
implements QuickSuggestionsService{
//新增
@Override
public Long addQuickSuggestions(UpdateQuickSuggestionsReq req) {
QuickSuggestions quickSuggestions = new QuickSuggestions();
BeanPlusUtil.copyProperties(req,quickSuggestions);
quickSuggestions.setCreateTime(DateTimeUtil.getCurrentDateTime());
save(quickSuggestions);
return quickSuggestions.getId();
}
//删除
@Override
public boolean delQuickSuggestions(UpdateQuickSuggestionsReq req) {
return removeById(req.getId());
}
//查询
@Override
public List<QuickSuggestionsDto> showQuickSuggestions(QueryQuickSuggestionsReq req) {
List<QuickSuggestions> list = list(new LambdaQueryWrapper<QuickSuggestions>()
.eq(QuickSuggestions::getUserId, req.getUserId()));
List<QuickSuggestionsDto> collect = list.stream().map(quickSuggestions -> {
QuickSuggestionsDto quickSuggestionsDto = new QuickSuggestionsDto();
BeanPlusUtil.copyProperties(quickSuggestions, quickSuggestionsDto);
return quickSuggestionsDto;
}).collect(Collectors.toList());
return collect;
}
}
package com.junmp.junmpProcess.utils;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
public class DateTimeUtil {
private static final DateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
public static Date getCurrentDateTime() {
Date currentDate = new Date();
String dateString = DATE_FORMAT.format(currentDate);
try {
return DATE_FORMAT.parse(dateString);
} catch (ParseException e) {
e.printStackTrace();
return null;
}
}
public static List<Map<String,Object>> timeSort(List<Map<String,Object>> allPoliceman) {
Collections.sort(allPoliceman, new Comparator<Map<String, Object>>() {
@Override
public int compare(Map<String, Object> o1, Map<String, Object> o2) {
Date updateTime1 = (Date) o1.get("updateTime");
Date updateTime2 = (Date) o2.get("updateTime");
return updateTime2.compareTo(updateTime1);
}
});
return allPoliceman;
}
}
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.junmp.junmpProcess.mapper.QuickSuggestionsMapper">
<resultMap id="BaseResultMap" type="com.junmp.junmpProcess.entity.QuickSuggestions">
<id property="id" column="id" jdbcType="BIGINT"/>
<result property="userId" column="user_id" jdbcType="BIGINT"/>
<result property="text" column="text" jdbcType="VARCHAR"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
</resultMap>
<sql id="Base_Column_List">
id,user_id,text,
create_time,update_time
</sql>
</mapper>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论