@@ -6,7 +6,7 @@ import lombok.Setter; | |||
import javax.persistence.*; | |||
import java.time.LocalDateTime; | |||
/** 卡片一发 */ | |||
/** 卡片一发明细 */ | |||
@Getter | |||
@Setter | |||
@Entity |
@@ -35,8 +35,8 @@ public class InvwWarehouse extends StringPropertyUUIDEntity { | |||
@Column(name = "NAME") | |||
private String name;//仓库名称 | |||
@NotNull | |||
@Column(name = "LEVEL") | |||
private Integer level;//仓库层级1-3 | |||
@Column(name = "WAREHOUSE_LEVEL") | |||
private Integer warehouseLevel;//仓库层级1-3 | |||
@NotNull | |||
@Column(name = "STATUS") | |||
private Integer status;//库存状态0-删除 1-正常 |
@@ -1,8 +1,15 @@ | |||
package cn.com.taiji.core.repo.jpa.invw; | |||
import cn.com.taiji.common.repo.jpa.AbstractJpaRepo; | |||
import cn.com.taiji.core.entity.dict.invw.InvDeviceStatus; | |||
import cn.com.taiji.core.entity.invw.InvwCardDetails; | |||
import org.springframework.data.jpa.repository.Query; | |||
import java.util.List; | |||
public interface InvwCardDetailsRepo extends AbstractJpaRepo<InvwCardDetails, String>{ | |||
//根据仓库编号查询库存 | |||
@Query(value = "from InvwCardDetails where storeCode = ?1") | |||
List<InvwCardDetails> findByStoreCode(String storeCode); | |||
} |
@@ -2,7 +2,13 @@ package cn.com.taiji.core.repo.jpa.invw; | |||
import cn.com.taiji.common.repo.jpa.AbstractJpaRepo; | |||
import cn.com.taiji.core.entity.invw.InvwObuDetails; | |||
import org.springframework.data.jpa.repository.Query; | |||
import java.util.List; | |||
public interface InvwObuDetailsRepo extends AbstractJpaRepo<InvwObuDetails, String>{ | |||
//根据仓库编号查询库存 | |||
@Query(value = "from InvwObuDetails where storeCode = ?1 ") | |||
List<InvwObuDetails> findByStoreCode(String storeCode); | |||
} |
@@ -2,7 +2,21 @@ package cn.com.taiji.core.repo.jpa.invw; | |||
import cn.com.taiji.common.repo.jpa.AbstractJpaRepo; | |||
import cn.com.taiji.core.entity.invw.InvwWarehouse; | |||
import org.springframework.data.jpa.repository.Query; | |||
public interface InvwWarehouseRepo extends AbstractJpaRepo<InvwWarehouse, String>{ | |||
import java.util.List; | |||
public interface InvwWarehouseRepo extends AbstractJpaRepo<InvwWarehouse, String> { | |||
//根据id查询 | |||
@Query(value = "from InvwWarehouse where id = ?1 and status = ?2") | |||
InvwWarehouse findByIdAndStatus(String id, Integer status); | |||
//根据code查询 | |||
@Query(value = "from InvwWarehouse where code = ?1 and status = ?2") | |||
InvwWarehouse findByCodeAndStatus(String code, Integer status); | |||
//根据id查询下级仓库 | |||
@Query(value = "from InvwWarehouse where parentId = ?1 and status = ?2") | |||
List<InvwWarehouse> findByParentIdAndStatus(String parentId, Integer status); | |||
} |
@@ -6,27 +6,28 @@ import cn.com.taiji.core.entity.invw.InvwWarehouse; | |||
import lombok.Getter; | |||
import lombok.Setter; | |||
import java.time.LocalDateTime; | |||
@Getter | |||
@Setter | |||
public class InvwWarehousePageRequest extends JpaDateTimePageableDataRequest<InvwWarehouse>{ | |||
public InvwWarehousePageRequest() { | |||
this.orderBy="id"; | |||
this.desc=true; | |||
} | |||
private String code;//仓库编号 | |||
private String name;//仓库名称 | |||
private String agencyId;//渠道编号 | |||
private LocalDateTime insertTimeStart;//创建时间开始 | |||
private LocalDateTime insertTimeEnd;//创建时间结束 | |||
@Override | |||
public HqlBuilder toSelectHql(){ | |||
HqlBuilder hql = new HqlBuilder("from InvwWarehouse where 1=1 "); | |||
hql.append(" and code like :code", code); | |||
hql.append(" and name like :name", name); | |||
hql.append(" and agencyId =:agencyId", agencyId); | |||
hql.append(" and insertTime >=:insertTimeStart", insertTimeStart); | |||
hql.append(" and insertTime <=:insertTimeEnd", insertTimeEnd); | |||
hql.append(" and status = 1"); | |||
hql.append(" order by code"); | |||
return hql; | |||
} | |||
} |
@@ -3,7 +3,7 @@ package cn.com.taiji.invw.api.card; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.common.web.ApiResponse; | |||
import cn.com.taiji.invw.api.MyValidController; | |||
import cn.com.taiji.invw.dto.card.InvwQryCardBatchDTO; | |||
import cn.com.taiji.invw.dto.card.InvwQryCardBatchPageRequestDTO; | |||
import cn.com.taiji.invw.manager.card.InvwQryCardBatchManager; | |||
import io.swagger.annotations.Api; | |||
import io.swagger.annotations.ApiOperation; | |||
@@ -25,7 +25,7 @@ public class InvwQryCardBatchController extends MyValidController { | |||
@ApiOperation(value = "01-卡片发行批次分页") | |||
@PostMapping("/page") | |||
public ApiResponse<Pagination> page(@Valid @RequestBody InvwQryCardBatchDTO req) { | |||
public ApiResponse<Pagination> page(@Valid @RequestBody InvwQryCardBatchPageRequestDTO req) { | |||
return ApiResponse.of(manager.page(req)); | |||
} | |||
} |
@@ -3,7 +3,7 @@ package cn.com.taiji.invw.api.card; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.common.web.ApiResponse; | |||
import cn.com.taiji.invw.api.MyValidController; | |||
import cn.com.taiji.invw.dto.card.InvwQryCardsDTO; | |||
import cn.com.taiji.invw.dto.card.InvwQryCardsPageRequestDTO; | |||
import cn.com.taiji.invw.manager.card.InvwQryCardsManager; | |||
import io.swagger.annotations.Api; | |||
import io.swagger.annotations.ApiOperation; | |||
@@ -25,7 +25,7 @@ public class InvwQryCardsController extends MyValidController { | |||
@ApiOperation(value = "01-卡片发行分页") | |||
@PostMapping("/page") | |||
public ApiResponse<Pagination> page(@Valid @RequestBody InvwQryCardsDTO req) { | |||
public ApiResponse<Pagination> page(@Valid @RequestBody InvwQryCardsPageRequestDTO req) { | |||
return ApiResponse.of(manager.page(req)); | |||
} | |||
} |
@@ -1,20 +1,12 @@ | |||
package cn.com.taiji.invw.api.enter; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.common.web.ApiResponse; | |||
import cn.com.taiji.invw.api.MyValidController; | |||
import cn.com.taiji.invw.dto.card.InvwQryCardBatchDTO; | |||
import cn.com.taiji.invw.manager.enter.InvwEnterApplyManager; | |||
import io.swagger.annotations.Api; | |||
import io.swagger.annotations.ApiOperation; | |||
import org.springframework.beans.factory.annotation.Autowired; | |||
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.validation.Valid; | |||
/** | |||
* @Auther: humh | |||
* @Description: |
@@ -3,7 +3,7 @@ package cn.com.taiji.invw.api.obu; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.common.web.ApiResponse; | |||
import cn.com.taiji.invw.api.MyValidController; | |||
import cn.com.taiji.invw.dto.obu.InvwQryObuBatchDTO; | |||
import cn.com.taiji.invw.dto.obu.InvwQryObuBatchPageRequestDTO; | |||
import cn.com.taiji.invw.manager.obu.InvwQryObuBatchManager; | |||
import io.swagger.annotations.Api; | |||
import io.swagger.annotations.ApiOperation; | |||
@@ -25,7 +25,7 @@ public class InvwQryObuBatchController extends MyValidController { | |||
@ApiOperation(value = "01-OBU发行批次分页") | |||
@PostMapping("/page") | |||
public ApiResponse<Pagination> page(@Valid @RequestBody InvwQryObuBatchDTO req) { | |||
public ApiResponse<Pagination> page(@Valid @RequestBody InvwQryObuBatchPageRequestDTO req) { | |||
return ApiResponse.of(manager.page(req)); | |||
} | |||
} |
@@ -3,7 +3,7 @@ package cn.com.taiji.invw.api.obu; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.common.web.ApiResponse; | |||
import cn.com.taiji.invw.api.MyValidController; | |||
import cn.com.taiji.invw.dto.obu.InvwQryObusDTO; | |||
import cn.com.taiji.invw.dto.obu.InvwQryObusPageRequestDTO; | |||
import cn.com.taiji.invw.manager.obu.InvwQryObusManager; | |||
import io.swagger.annotations.Api; | |||
import io.swagger.annotations.ApiOperation; | |||
@@ -25,7 +25,7 @@ public class InvwQryObusController extends MyValidController { | |||
@ApiOperation(value = "01-OBU发行批次分页") | |||
@PostMapping("/page") | |||
public ApiResponse<Pagination> page(@Valid @RequestBody InvwQryObusDTO req) { | |||
public ApiResponse<Pagination> page(@Valid @RequestBody InvwQryObusPageRequestDTO req) { | |||
return ApiResponse.of(manager.page(req)); | |||
} | |||
} |
@@ -0,0 +1,56 @@ | |||
package cn.com.taiji.invw.api.warehouse; | |||
import cn.com.taiji.common.manager.ManagerException; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.common.web.ApiResponse; | |||
import cn.com.taiji.invw.api.MyValidController; | |||
import cn.com.taiji.invw.dto.warehouse.InvwWarehouseAddDTO; | |||
import cn.com.taiji.invw.dto.warehouse.InvwWarehouseDeleteDTO; | |||
import cn.com.taiji.invw.dto.warehouse.InvwWarehouseEditDTO; | |||
import cn.com.taiji.invw.dto.warehouse.InvwWarehousePageRequestDTO; | |||
import cn.com.taiji.invw.manager.warehouse.InvwWarehouseManager; | |||
import io.swagger.annotations.Api; | |||
import io.swagger.annotations.ApiOperation; | |||
import org.springframework.beans.factory.annotation.Autowired; | |||
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.validation.Valid; | |||
@Api(tags = {"005-仓库管理"}) | |||
@RestController | |||
@RequestMapping("/api/warehouse") | |||
public class InvwWarehouseController extends MyValidController { | |||
@Autowired | |||
private InvwWarehouseManager manager; | |||
@ApiOperation(value = "01-仓库分页") | |||
@PostMapping("/page") | |||
public ApiResponse<Pagination> page(@Valid @RequestBody InvwWarehousePageRequestDTO req) { | |||
return ApiResponse.of(manager.page(req)); | |||
} | |||
@ApiOperation(value = "02-仓库新增") | |||
@PostMapping("/add") | |||
public ApiResponse add(@Valid @RequestBody InvwWarehouseAddDTO req) throws ManagerException { | |||
manager.add(req); | |||
return ApiResponse.success().setMessage("操作成功"); | |||
} | |||
@ApiOperation(value = "03-仓库修改") | |||
@PostMapping("/edit") | |||
public ApiResponse edit(@Valid @RequestBody InvwWarehouseEditDTO req) throws ManagerException { | |||
manager.edit(req); | |||
return ApiResponse.success().setMessage("操作成功"); | |||
} | |||
@ApiOperation(value = "04-仓库删除") | |||
@PostMapping("/delete") | |||
public ApiResponse delete(@Valid @RequestBody InvwWarehouseDeleteDTO req) throws ManagerException { | |||
manager.delete(req); | |||
return ApiResponse.success().setMessage("操作成功"); | |||
} | |||
} |
@@ -12,7 +12,7 @@ import lombok.experimental.Accessors; | |||
@Getter | |||
@Setter | |||
@Accessors(chain = true) | |||
public class InvwQryCardBatchDTO extends AbstractBizRequestDTO { | |||
public class InvwQryCardBatchPageRequestDTO extends AbstractBizRequestDTO { | |||
@ApiModelProperty(value = "批次号") | |||
private String batchNo; // 批次号 | |||
@ApiModelProperty(value = "卡片厂商代码") |
@@ -12,7 +12,7 @@ import lombok.experimental.Accessors; | |||
@Getter | |||
@Setter | |||
@Accessors(chain = true) | |||
public class InvwQryCardsDTO extends AbstractBizRequestDTO { | |||
public class InvwQryCardsPageRequestDTO extends AbstractBizRequestDTO { | |||
@ApiModelProperty(value = "批次号") | |||
private String batchNo; // 批次号 | |||
@ApiModelProperty(value = "卡号") |
@@ -12,7 +12,7 @@ import lombok.experimental.Accessors; | |||
@Getter | |||
@Setter | |||
@Accessors(chain = true) | |||
public class InvwQryObuBatchDTO extends AbstractBizRequestDTO { | |||
public class InvwQryObuBatchPageRequestDTO extends AbstractBizRequestDTO { | |||
@ApiModelProperty(value = "批次号") | |||
private String batchNo; // 批次号 | |||
@ApiModelProperty(value = "卡片厂商代码") |
@@ -12,7 +12,7 @@ import lombok.experimental.Accessors; | |||
@Getter | |||
@Setter | |||
@Accessors(chain = true) | |||
public class InvwQryObusDTO extends AbstractBizRequestDTO { | |||
public class InvwQryObusPageRequestDTO extends AbstractBizRequestDTO { | |||
@ApiModelProperty(value = "批次号") | |||
private String batchNo; // 批次号 | |||
@ApiModelProperty(value = "OBU合同序列号") |
@@ -0,0 +1,36 @@ | |||
package cn.com.taiji.invw.dto.warehouse; | |||
import cn.com.taiji.invw.dto.AbstractBizRequestDTO; | |||
import io.swagger.annotations.ApiModel; | |||
import io.swagger.annotations.ApiModelProperty; | |||
import lombok.Getter; | |||
import lombok.Setter; | |||
import lombok.experimental.Accessors; | |||
import javax.validation.constraints.NotBlank; | |||
@ApiModel(description = "仓库新增") | |||
@Getter | |||
@Setter | |||
@Accessors(chain = true) | |||
public class InvwWarehouseAddDTO extends AbstractBizRequestDTO { | |||
@ApiModelProperty(value = "仓库编号", required = true) | |||
@NotBlank(message = "仓库编号不能为空") | |||
private String code;//仓库编号 | |||
@ApiModelProperty(value = "仓库名称", required = true) | |||
@NotBlank(message = "仓库名称不能为空") | |||
private String name;//仓库名称 | |||
@ApiModelProperty(value = "渠道编号", required = true) | |||
@NotBlank(message = "渠道编号不能为空") | |||
private String agencyId;//渠道编号 | |||
@ApiModelProperty(value = "上级仓库ID", required = true) | |||
@NotBlank(message = "上级仓库ID不能为空") | |||
private String parentId;//上级仓库ID | |||
@ApiModelProperty(value = "网点编号,三级有值") | |||
private String warehouseChannelId;//网点编号,三级有值 | |||
} |
@@ -0,0 +1,20 @@ | |||
package cn.com.taiji.invw.dto.warehouse; | |||
import cn.com.taiji.invw.dto.AbstractBizRequestDTO; | |||
import io.swagger.annotations.ApiModel; | |||
import io.swagger.annotations.ApiModelProperty; | |||
import lombok.Getter; | |||
import lombok.Setter; | |||
import lombok.experimental.Accessors; | |||
import javax.validation.constraints.NotBlank; | |||
@ApiModel(description = "仓库删除") | |||
@Getter | |||
@Setter | |||
@Accessors(chain = true) | |||
public class InvwWarehouseDeleteDTO extends AbstractBizRequestDTO { | |||
@ApiModelProperty(value = "仓库ID") | |||
@NotBlank(message = "id不能为空") | |||
private String id; | |||
} |
@@ -0,0 +1,33 @@ | |||
package cn.com.taiji.invw.dto.warehouse; | |||
import cn.com.taiji.invw.dto.AbstractBizRequestDTO; | |||
import io.swagger.annotations.ApiModel; | |||
import io.swagger.annotations.ApiModelProperty; | |||
import lombok.Getter; | |||
import lombok.Setter; | |||
import lombok.experimental.Accessors; | |||
import javax.validation.constraints.NotBlank; | |||
@ApiModel(description = "仓库修改") | |||
@Getter | |||
@Setter | |||
@Accessors(chain = true) | |||
public class InvwWarehouseEditDTO extends AbstractBizRequestDTO { | |||
@ApiModelProperty(value = "仓库ID") | |||
@NotBlank(message = "id不能为空") | |||
private String id; | |||
@ApiModelProperty(value = "仓库名称") | |||
private String name;//仓库名称 | |||
@ApiModelProperty(value = "渠道编号") | |||
private String agencyId;//渠道编号 | |||
@ApiModelProperty(value = "上级仓库ID") | |||
private String parentId;//上级仓库ID | |||
@ApiModelProperty(value = "网点编号,三级有值") | |||
private String warehouseChannelId;//网点编号,三级有值 | |||
} |
@@ -0,0 +1,35 @@ | |||
package cn.com.taiji.invw.dto.warehouse; | |||
import cn.com.taiji.common.model.finals.SysFinals; | |||
import cn.com.taiji.invw.dto.AbstractBizRequestDTO; | |||
import io.swagger.annotations.ApiModel; | |||
import io.swagger.annotations.ApiModelProperty; | |||
import lombok.Getter; | |||
import lombok.Setter; | |||
import lombok.experimental.Accessors; | |||
import java.time.LocalDateTime; | |||
@ApiModel(description = "仓库管理分页查询") | |||
@Getter | |||
@Setter | |||
@Accessors(chain = true) | |||
public class InvwWarehousePageRequestDTO extends AbstractBizRequestDTO { | |||
@ApiModelProperty(value = "仓库编号") | |||
private String code;//仓库编号 | |||
@ApiModelProperty(value = "仓库名称") | |||
private String name;//仓库名称 | |||
@ApiModelProperty(value = "渠道编号") | |||
private String agencyId;//渠道编号 | |||
@ApiModelProperty(value = "创建时间开始") | |||
private LocalDateTime insertTimeStart;//创建时间开始 | |||
@ApiModelProperty(value = "创建时间结束") | |||
private LocalDateTime insertTimeEnd;//创建时间结束 | |||
@ApiModelProperty(value = "页码") | |||
private Integer pageNo = SysFinals.DEFAULT_PAGE_NUM; | |||
@ApiModelProperty(value = "每页数量") | |||
private Integer pageSize = SysFinals.DEFAULT_PAGE_SIZE; | |||
} |
@@ -0,0 +1,10 @@ | |||
package cn.com.taiji.invw.dto.warehouse; | |||
import cn.com.taiji.core.entity.invw.InvwWarehouse; | |||
import lombok.Data; | |||
@Data | |||
public class InvwWarehousePageResponseVO { | |||
private InvwWarehouse warehouse; | |||
private InvwWarehouse parentWarehouse; | |||
} |
@@ -1,8 +1,8 @@ | |||
package cn.com.taiji.invw.manager.card; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.invw.dto.card.InvwQryCardBatchDTO; | |||
import cn.com.taiji.invw.dto.card.InvwQryCardBatchPageRequestDTO; | |||
public interface InvwQryCardBatchManager { | |||
Pagination page(InvwQryCardBatchDTO request); | |||
Pagination page(InvwQryCardBatchPageRequestDTO request); | |||
} |
@@ -3,7 +3,7 @@ package cn.com.taiji.invw.manager.card; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.core.repo.jpa.invw.InvwQryCardBatchRepo; | |||
import cn.com.taiji.core.repo.request.invw.InvwQryCardBatchPageRequest; | |||
import cn.com.taiji.invw.dto.card.InvwQryCardBatchDTO; | |||
import cn.com.taiji.invw.dto.card.InvwQryCardBatchPageRequestDTO; | |||
import cn.com.taiji.invw.manager.AbstractCommManager; | |||
import org.springframework.beans.BeanUtils; | |||
import org.springframework.beans.factory.annotation.Autowired; | |||
@@ -15,7 +15,7 @@ public class InvwQryCardBatchManagerImpl extends AbstractCommManager implements | |||
@Autowired | |||
private InvwQryCardBatchRepo invwQryCardBatchRepo; | |||
@Override | |||
public Pagination page(InvwQryCardBatchDTO request) { | |||
public Pagination page(InvwQryCardBatchPageRequestDTO request) { | |||
InvwQryCardBatchPageRequest req = new InvwQryCardBatchPageRequest(); | |||
BeanUtils.copyProperties(request, req); | |||
return invwQryCardBatchRepo.page(req); |
@@ -1,8 +1,8 @@ | |||
package cn.com.taiji.invw.manager.card; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.invw.dto.card.InvwQryCardsDTO; | |||
import cn.com.taiji.invw.dto.card.InvwQryCardsPageRequestDTO; | |||
public interface InvwQryCardsManager { | |||
Pagination page(InvwQryCardsDTO request); | |||
Pagination page(InvwQryCardsPageRequestDTO request); | |||
} |
@@ -3,7 +3,7 @@ package cn.com.taiji.invw.manager.card; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.core.repo.jpa.invw.InvwQryCardsRepo; | |||
import cn.com.taiji.core.repo.request.invw.InvwQryCardsPageRequest; | |||
import cn.com.taiji.invw.dto.card.InvwQryCardsDTO; | |||
import cn.com.taiji.invw.dto.card.InvwQryCardsPageRequestDTO; | |||
import cn.com.taiji.invw.manager.AbstractCommManager; | |||
import org.springframework.beans.BeanUtils; | |||
import org.springframework.beans.factory.annotation.Autowired; | |||
@@ -15,7 +15,7 @@ public class InvwQryCardsManagerImpl extends AbstractCommManager implements Invw | |||
@Autowired | |||
private InvwQryCardsRepo invwQryCardsRepo; | |||
@Override | |||
public Pagination page(InvwQryCardsDTO request) { | |||
public Pagination page(InvwQryCardsPageRequestDTO request) { | |||
InvwQryCardsPageRequest req = new InvwQryCardsPageRequest(); | |||
BeanUtils.copyProperties(request, req); | |||
return invwQryCardsRepo.page(req); |
@@ -1,8 +1,8 @@ | |||
package cn.com.taiji.invw.manager.obu; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.invw.dto.obu.InvwQryObuBatchDTO; | |||
import cn.com.taiji.invw.dto.obu.InvwQryObuBatchPageRequestDTO; | |||
public interface InvwQryObuBatchManager { | |||
Pagination page(InvwQryObuBatchDTO request); | |||
Pagination page(InvwQryObuBatchPageRequestDTO request); | |||
} |
@@ -4,7 +4,7 @@ import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.core.repo.jpa.invw.InvwQryObuBatchRepo; | |||
import cn.com.taiji.core.repo.request.invw.InvwQryObuBatchPageRequest; | |||
import cn.com.taiji.invw.dto.obu.InvwQryObuBatchDTO; | |||
import cn.com.taiji.invw.dto.obu.InvwQryObuBatchPageRequestDTO; | |||
import cn.com.taiji.invw.manager.AbstractCommManager; | |||
import org.springframework.beans.BeanUtils; | |||
import org.springframework.beans.factory.annotation.Autowired; | |||
@@ -16,7 +16,7 @@ public class InvwQryObuBatchManagerImpl extends AbstractCommManager implements I | |||
@Autowired | |||
private InvwQryObuBatchRepo invwQryObuBatchRepo; | |||
@Override | |||
public Pagination page(InvwQryObuBatchDTO request) { | |||
public Pagination page(InvwQryObuBatchPageRequestDTO request) { | |||
InvwQryObuBatchPageRequest req = new InvwQryObuBatchPageRequest(); | |||
BeanUtils.copyProperties(request, req); | |||
return invwQryObuBatchRepo.page(req); |
@@ -1,8 +1,8 @@ | |||
package cn.com.taiji.invw.manager.obu; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.invw.dto.obu.InvwQryObusDTO; | |||
import cn.com.taiji.invw.dto.obu.InvwQryObusPageRequestDTO; | |||
public interface InvwQryObusManager { | |||
Pagination page(InvwQryObusDTO request); | |||
Pagination page(InvwQryObusPageRequestDTO request); | |||
} |
@@ -3,7 +3,7 @@ package cn.com.taiji.invw.manager.obu; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.core.repo.jpa.invw.InvwQryObusRepo; | |||
import cn.com.taiji.core.repo.request.invw.InvwQryObusPageRequest; | |||
import cn.com.taiji.invw.dto.obu.InvwQryObusDTO; | |||
import cn.com.taiji.invw.dto.obu.InvwQryObusPageRequestDTO; | |||
import cn.com.taiji.invw.manager.AbstractCommManager; | |||
import org.springframework.beans.BeanUtils; | |||
import org.springframework.beans.factory.annotation.Autowired; | |||
@@ -15,7 +15,7 @@ public class InvwQryObusManagerImpl extends AbstractCommManager implements InvwQ | |||
@Autowired | |||
private InvwQryObusRepo invwQryObusRepo; | |||
@Override | |||
public Pagination page(InvwQryObusDTO request) { | |||
public Pagination page(InvwQryObusPageRequestDTO request) { | |||
InvwQryObusPageRequest req = new InvwQryObusPageRequest(); | |||
BeanUtils.copyProperties(request, req); | |||
return invwQryObusRepo.page(req); |
@@ -0,0 +1,18 @@ | |||
package cn.com.taiji.invw.manager.warehouse; | |||
import cn.com.taiji.common.manager.ManagerException; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.invw.dto.warehouse.InvwWarehouseAddDTO; | |||
import cn.com.taiji.invw.dto.warehouse.InvwWarehouseDeleteDTO; | |||
import cn.com.taiji.invw.dto.warehouse.InvwWarehouseEditDTO; | |||
import cn.com.taiji.invw.dto.warehouse.InvwWarehousePageRequestDTO; | |||
public interface InvwWarehouseManager { | |||
Pagination page(InvwWarehousePageRequestDTO request); | |||
void add(InvwWarehouseAddDTO req) throws ManagerException; | |||
void edit(InvwWarehouseEditDTO req) throws ManagerException; | |||
void delete(InvwWarehouseDeleteDTO req) throws ManagerException; | |||
} |
@@ -0,0 +1,195 @@ | |||
package cn.com.taiji.invw.manager.warehouse; | |||
import cn.com.taiji.common.manager.ManagerException; | |||
import cn.com.taiji.common.model.dao.Pagination; | |||
import cn.com.taiji.common.model.dao.ResultConverter; | |||
import cn.com.taiji.common.pub.StringTools; | |||
import cn.com.taiji.core.entity.invw.InvwCardDetails; | |||
import cn.com.taiji.core.entity.invw.InvwObuDetails; | |||
import cn.com.taiji.core.entity.invw.InvwWarehouse; | |||
import cn.com.taiji.core.repo.jpa.invw.InvwCardDetailsRepo; | |||
import cn.com.taiji.core.repo.jpa.invw.InvwObuDetailsRepo; | |||
import cn.com.taiji.core.repo.jpa.invw.InvwWarehouseRepo; | |||
import cn.com.taiji.core.repo.request.invw.InvwWarehousePageRequest; | |||
import cn.com.taiji.invw.dto.warehouse.InvwWarehouseAddDTO; | |||
import cn.com.taiji.invw.dto.warehouse.InvwWarehouseDeleteDTO; | |||
import cn.com.taiji.invw.dto.warehouse.InvwWarehouseEditDTO; | |||
import cn.com.taiji.invw.dto.warehouse.InvwWarehousePageRequestDTO; | |||
import cn.com.taiji.invw.dto.warehouse.InvwWarehousePageResponseVO; | |||
import cn.com.taiji.invw.manager.AbstractCommManager; | |||
import org.springframework.beans.BeanUtils; | |||
import org.springframework.beans.factory.annotation.Autowired; | |||
import org.springframework.stereotype.Service; | |||
import java.time.LocalDateTime; | |||
import java.util.List; | |||
@Service | |||
public class InvwWarehouseManagerImpl extends AbstractCommManager implements InvwWarehouseManager, ResultConverter<InvwWarehouse, InvwWarehousePageResponseVO> { | |||
@Autowired | |||
private InvwWarehouseRepo warehouseRepo; | |||
@Autowired | |||
private InvwObuDetailsRepo obuDetailsRepo; | |||
@Autowired | |||
private InvwCardDetailsRepo cardDetailsRepo; | |||
@Override | |||
public Pagination page(InvwWarehousePageRequestDTO request) { | |||
InvwWarehousePageRequest req = new InvwWarehousePageRequest(); | |||
BeanUtils.copyProperties(request, req); | |||
return warehouseRepo.page(req).convertResult(this); | |||
} | |||
@Override | |||
public void add(InvwWarehouseAddDTO req) throws ManagerException { | |||
InvwWarehouse parentWarehouse = warehouseRepo.findById(req.getParentId()).orElse(null); | |||
if (parentWarehouse == null) { | |||
throw new ManagerException("上级仓库不存在"); | |||
} | |||
int level = parentWarehouse.getWarehouseLevel() + 1; | |||
if (level == 3) { | |||
if (!StringTools.hasText(req.getWarehouseChannelId())) { | |||
throw new ManagerException("网点编号不能为空"); | |||
} | |||
} | |||
InvwWarehouse warehouse = warehouseRepo.findByCodeAndStatus(req.getCode(), 1); | |||
if (warehouse != null) { | |||
throw new ManagerException("仓库编号已存在"); | |||
} else { | |||
warehouse = new InvwWarehouse(); | |||
warehouse.setCode(req.getCode()); | |||
warehouse.setParentId(req.getParentId()); | |||
warehouse.setName(req.getName()); | |||
warehouse.setWarehouseLevel(level); | |||
warehouse.setStatus(1); | |||
warehouse.setInsertTime(LocalDateTime.now()); | |||
warehouse.setUpdateTime(LocalDateTime.now()); | |||
warehouse.setAgencyId(req.getAgencyId()); | |||
if (StringTools.hasText(req.getWarehouseChannelId())) { | |||
warehouse.setChannelId(req.getWarehouseChannelId()); | |||
} | |||
warehouseRepo.save(warehouse); | |||
} | |||
} | |||
@Override | |||
public void edit(InvwWarehouseEditDTO req) throws ManagerException { | |||
InvwWarehouse warehouse = warehouseRepo.findByIdAndStatus(req.getId(), 1); | |||
if (warehouse == null) { | |||
throw new ManagerException("仓库不存在"); | |||
} | |||
//一级仓库 | |||
if (warehouse.getWarehouseLevel() == 1) { | |||
if (StringTools.hasText(req.getParentId()) || StringTools.hasText(req.getAgencyId())) { | |||
throw new ManagerException("一级仓库只能修改仓库名称"); | |||
} | |||
if (StringTools.hasText(req.getName())) { | |||
warehouse.setName(req.getName()); | |||
warehouse.setUpdateTime(LocalDateTime.now()); | |||
warehouseRepo.saveAndFlush(warehouse); | |||
} | |||
} else if (warehouse.getWarehouseLevel() == 2) { | |||
//二级仓库 | |||
if (StringTools.hasText(req.getParentId()) || StringTools.hasText(req.getAgencyId())) { | |||
//查询下级仓库 | |||
List<InvwWarehouse> warehouseList = warehouseRepo.findByParentIdAndStatus(warehouse.getId(), 1); | |||
if (warehouseList.size() > 0) { | |||
throw new ManagerException("该仓库有下级仓库,只能修改仓库名称"); | |||
} | |||
List<InvwObuDetails> obuDetails = obuDetailsRepo.findByStoreCode(warehouse.getCode()); | |||
if (obuDetails.size() > 0) { | |||
throw new ManagerException("该仓库有设备,只能修改仓库名称"); | |||
} | |||
List<InvwCardDetails> cardDetails = cardDetailsRepo.findByStoreCode(warehouse.getCode()); | |||
if (cardDetails.size() > 0) { | |||
throw new ManagerException("该仓库有设备,只能修改仓库名称"); | |||
} | |||
if (StringTools.hasText(req.getParentId())) { | |||
InvwWarehouse parentWarehouse = warehouseRepo.findById(req.getParentId()).orElse(null); | |||
if(parentWarehouse == null){ | |||
throw new ManagerException("上级仓库不存在"); | |||
} | |||
warehouse.setWarehouseLevel(parentWarehouse.getWarehouseLevel() + 1); | |||
warehouse.setParentId(req.getParentId()); | |||
} | |||
if (StringTools.hasText(req.getAgencyId())) { | |||
warehouse.setAgencyId(req.getAgencyId()); | |||
} | |||
} | |||
if (StringTools.hasText(req.getName())) { | |||
warehouse.setName(req.getName()); | |||
} | |||
warehouse.setUpdateTime(LocalDateTime.now()); | |||
warehouseRepo.saveAndFlush(warehouse); | |||
} else if (warehouse.getWarehouseLevel() == 3) { | |||
//三级仓库 | |||
if (StringTools.hasText(req.getParentId()) || StringTools.hasText(req.getWarehouseChannelId())) { | |||
List<InvwObuDetails> obuDetails = obuDetailsRepo.findByStoreCode(warehouse.getCode()); | |||
if (obuDetails.size() > 0) { | |||
throw new ManagerException("该仓库有设备,只能修改仓库名称"); | |||
} | |||
List<InvwCardDetails> cardDetails = cardDetailsRepo.findByStoreCode(warehouse.getCode()); | |||
if (cardDetails.size() > 0) { | |||
throw new ManagerException("该仓库有设备,只能修改仓库名称"); | |||
} | |||
if (StringTools.hasText(req.getParentId())) { | |||
InvwWarehouse parentWarehouse = warehouseRepo.findById(req.getParentId()).orElse(null); | |||
if(parentWarehouse == null){ | |||
throw new ManagerException("上级仓库不存在"); | |||
} | |||
warehouse.setWarehouseLevel(parentWarehouse.getWarehouseLevel() + 1); | |||
warehouse.setParentId(req.getParentId()); | |||
} | |||
if (StringTools.hasText(req.getWarehouseChannelId())) { | |||
warehouse.setChannelId(req.getWarehouseChannelId()); | |||
} | |||
} | |||
if (StringTools.hasText(req.getName())) { | |||
warehouse.setName(req.getName()); | |||
} | |||
warehouse.setUpdateTime(LocalDateTime.now()); | |||
warehouseRepo.saveAndFlush(warehouse); | |||
} | |||
} | |||
@Override | |||
public void delete(InvwWarehouseDeleteDTO req) throws ManagerException { | |||
InvwWarehouse warehouse = warehouseRepo.findByIdAndStatus(req.getId(), 1); | |||
if (warehouse == null) { | |||
throw new ManagerException("仓库不存在"); | |||
} | |||
if(warehouse.getWarehouseLevel() == 1){ | |||
throw new ManagerException("默认仓库不能删除"); | |||
} | |||
List<InvwWarehouse> warehouseList = warehouseRepo.findByParentIdAndStatus(warehouse.getId(), 1); | |||
if (warehouseList.size() > 0) { | |||
throw new ManagerException("该仓库有下级仓库,不能删除"); | |||
} | |||
List<InvwObuDetails> obuDetails = obuDetailsRepo.findByStoreCode(warehouse.getCode()); | |||
if (obuDetails.size() > 0) { | |||
throw new ManagerException("该仓库有设备,不能删除"); | |||
} | |||
List<InvwCardDetails> cardDetails = cardDetailsRepo.findByStoreCode(warehouse.getCode()); | |||
if (cardDetails.size() > 0) { | |||
throw new ManagerException("该仓库有设备,不能删除"); | |||
} | |||
warehouse.setStatus(0); | |||
warehouse.setUpdateTime(LocalDateTime.now()); | |||
warehouseRepo.saveAndFlush(warehouse); | |||
} | |||
@Override | |||
public InvwWarehousePageResponseVO convert(InvwWarehouse warehouse) { | |||
InvwWarehousePageResponseVO vo = new InvwWarehousePageResponseVO(); | |||
vo.setWarehouse(warehouse); | |||
String parentId = warehouse.getParentId(); | |||
// 查询父级仓库 | |||
if (StringTools.hasText(parentId)) { | |||
InvwWarehouse parentWarehouse = warehouseRepo.findById(parentId).orElse(null); | |||
vo.setParentWarehouse(parentWarehouse); | |||
} | |||
return vo; | |||
} | |||
} |