
33 changed files with 1270 additions and 1316 deletions
@ -0,0 +1,44 @@ |
|||
package com.yxt.anrui.base.api.busvehicleorder; |
|||
|
|||
import com.yxt.common.core.vo.Vo; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @author liuguohui |
|||
* @version 1.0 |
|||
* @description |
|||
* @date 2022/04/01 |
|||
*/ |
|||
@ApiModel("采购订单列表") |
|||
@Data |
|||
public class VehicleOrderListVo implements Vo { |
|||
|
|||
@ApiModelProperty("订单状态") |
|||
private String orderStatus; |
|||
|
|||
@ApiModelProperty("订单编号") |
|||
private String orderNo; |
|||
|
|||
@ApiModelProperty("订单日期") |
|||
private String orderDate; |
|||
|
|||
@ApiModelProperty("订单类型") |
|||
private String orderType; |
|||
|
|||
@ApiModelProperty("车型") |
|||
private String modelName; |
|||
|
|||
@ApiModelProperty("台数") |
|||
private String platformNo; |
|||
|
|||
@ApiModelProperty("预计上线日期") |
|||
private String expectLaunchDate; |
|||
|
|||
@ApiModelProperty("上线日期") |
|||
private String launchDate; |
|||
|
|||
@ApiModelProperty("下线日期") |
|||
private String offlineDate; |
|||
} |
@ -0,0 +1,57 @@ |
|||
package com.yxt.anrui.scm.api.scmapplyinbound; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.yxt.common.core.domain.BaseEntity; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInbound.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmapplyinbound.ScmApplyInbound <br/> |
|||
* Description: 车辆入账单. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 11:54:35 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@ApiModel(value = "车辆入账单", description = "车辆入账单") |
|||
@TableName("scm_apply_inbound") |
|||
@Data |
|||
public class ScmApplyInbound extends BaseEntity { |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
@ApiModelProperty("申请编号") |
|||
private String applicationCode; |
|||
|
|||
@ApiModelProperty("申请人sid") |
|||
private String applicationSid; |
|||
|
|||
@ApiModelProperty("申请人名称") |
|||
private String applicationName; |
|||
|
|||
@ApiModelProperty("申请日期") |
|||
private String applicationDate; |
|||
|
|||
@ApiModelProperty("采购订单sid") |
|||
private String vehicleOrderSid; |
|||
|
|||
@ApiModelProperty("采购订单编号") |
|||
private String purchaseOrderNo; |
|||
|
|||
@ApiModelProperty("车型sid ") |
|||
private String modelSid; |
|||
|
|||
@ApiModelProperty("车型名称 ") |
|||
private String modelName; |
|||
|
|||
@ApiModelProperty("常用配置 ") |
|||
private String configName; |
|||
|
|||
@ApiModelProperty("厂家发车日期") |
|||
private String departureDate; |
|||
} |
@ -0,0 +1,80 @@ |
|||
package com.yxt.anrui.scm.api.scmapplyinbound; |
|||
|
|||
|
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleDto; |
|||
import com.yxt.common.core.dto.Dto; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotBlank; |
|||
import javax.validation.constraints.NotNull; |
|||
import javax.validation.constraints.Pattern; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundDto.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmapplyinbound.ScmApplyInboundDto <br/> |
|||
* Description: 车辆入账单 数据传输对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 11:54:35 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@ApiModel(value = "车辆入账单 数据传输对象", description = "车辆入账单 数据传输对象") |
|||
@Data |
|||
public class ScmApplyInboundDto implements Dto { |
|||
|
|||
@ApiModelProperty("车辆入账单sid") |
|||
private String sid; |
|||
|
|||
@ApiModelProperty("申请编号") |
|||
@NotBlank(message = "申请编号不能为空") |
|||
private String applicationCode; |
|||
|
|||
@ApiModelProperty("申请人sid") |
|||
@NotBlank(message = "申请人不能为空") |
|||
private String applicationSid; |
|||
|
|||
@ApiModelProperty("申请人名称") |
|||
@NotBlank(message = "申请人不能为空") |
|||
private String applicationName; |
|||
|
|||
@ApiModelProperty("申请日期") |
|||
@Pattern(regexp = "^(\\s*)|([1-9]\\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1]))$", message = "申请日期日期格式不正确") |
|||
private String applicationDate; |
|||
|
|||
@ApiModelProperty("采购订单sid") |
|||
@NotBlank(message = "采购订单不能为空") |
|||
private String vehicleOrderSid; |
|||
|
|||
@ApiModelProperty("采购订单编号") |
|||
@NotBlank(message = "采购订单编号不能为空") |
|||
private String purchaseOrderNo; |
|||
|
|||
@ApiModelProperty("车型sid ") |
|||
@NotBlank(message = "车型不能为空") |
|||
private String modelSid; |
|||
|
|||
@ApiModelProperty("车型名称 ") |
|||
@NotBlank(message = "车型名称不能为空") |
|||
private String modelName; |
|||
|
|||
@ApiModelProperty("常用配置 ") |
|||
@NotBlank(message = "常用配置不能为空") |
|||
private String configName; |
|||
|
|||
@ApiModelProperty("厂家发车日期") |
|||
private String departureDate; |
|||
|
|||
@ApiModelProperty("备注") |
|||
private String remarks; |
|||
|
|||
@ApiModelProperty("车辆列表") |
|||
private List<ScmApplyInboundVehicleDto> vehicleList; |
|||
} |
@ -0,0 +1,50 @@ |
|||
package com.yxt.anrui.scm.api.scmapplyinbound; |
|||
|
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import org.springframework.cloud.openfeign.FeignClient; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import javax.validation.Valid; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundFeign.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmapplyinbound.ScmApplyInboundFeign <br/> |
|||
* Description: 车辆入账单. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 11:54:35 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Api(tags = "车辆入账单") |
|||
@FeignClient( |
|||
contextId = "anrui-scm-ScmApplyInbound", |
|||
name = "anrui-scm", |
|||
path = "v1/scmapplyinbound", |
|||
fallback = ScmApplyInboundFeignFallback.class) |
|||
public interface ScmApplyInboundFeign { |
|||
|
|||
@ApiOperation("根据条件分页查询车辆入账单的列表") |
|||
@PostMapping("/listPage") |
|||
public ResultBean<PagerVo<ScmApplyInboundListVo>> listPage(@RequestBody PagerQuery<ScmApplyInboundQuery> pq); |
|||
|
|||
@ApiOperation("根据条件查询所有数据列表") |
|||
@PostMapping("/listAll") |
|||
public ResultBean<List<ScmApplyInboundVo>> listAll(@RequestBody ScmApplyInboundQuery query); |
|||
|
|||
@ApiOperation("新增和修改车辆入账单") |
|||
@PostMapping("/saveOrUpdateApplyInBound") |
|||
public ResultBean saveOrUpdateApplyInBound(@RequestBody @Valid ScmApplyInboundDto dto); |
|||
|
|||
@ApiOperation("根据sid查询车辆入账单详情") |
|||
@GetMapping("/fetchSid/{sid}") |
|||
public ResultBean<ScmApplyInboundVo> fetchSid(@PathVariable("sid") String sid); |
|||
} |
@ -0,0 +1,48 @@ |
|||
package com.yxt.anrui.scm.api.scmapplyinbound; |
|||
|
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import org.springframework.stereotype.Component; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundFeignFallback.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmapplyinbound.ScmApplyInboundFeignFallback <br/> |
|||
* Description: 车辆入账单. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 11:54:35 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Component |
|||
public class ScmApplyInboundFeignFallback implements ScmApplyInboundFeign { |
|||
|
|||
@Override |
|||
public ResultBean listPage(PagerQuery<ScmApplyInboundQuery> pq){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
return rb.setMsg("接口anrui-scm/scmapplyinbound/listPage无法访问"); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean<List<ScmApplyInboundVo>> listAll(ScmApplyInboundQuery query){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
return rb.setMsg("接口anrui-scm/scmapplyinbound/listAll无法访问"); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean saveOrUpdateApplyInBound(ScmApplyInboundDto dto){ |
|||
return ResultBean.fireFail().setMsg("接口anrui-scm/scmapplyinbound/save无法访问"); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean<ScmApplyInboundVo> fetchSid(String sid) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
return rb.setMsg("接口anrui-scm/scmapplyinbound/fetchSid无法访问"); |
|||
} |
|||
} |
@ -0,0 +1,38 @@ |
|||
package com.yxt.anrui.scm.api.scmapplyinbound; |
|||
|
|||
import com.yxt.common.core.vo.Vo; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @author liuguohui |
|||
* @version 1.0 |
|||
* @description |
|||
* @date 2022/04/02 |
|||
*/ |
|||
@ApiModel("入账申请列表") |
|||
@Data |
|||
public class ScmApplyInboundListVo implements Vo { |
|||
|
|||
@ApiModelProperty("车辆入账单sid") |
|||
private String sid; |
|||
|
|||
@ApiModelProperty("申请编号") |
|||
private String applicationCode; |
|||
|
|||
@ApiModelProperty("申请日期") |
|||
private String applicationDate; |
|||
|
|||
@ApiModelProperty("采购订单编号") |
|||
private String purchaseOrderNo; |
|||
|
|||
@ApiModelProperty("车型名称 ") |
|||
private String modelName; |
|||
|
|||
@ApiModelProperty("台数 ") |
|||
private String vehicleNum; |
|||
|
|||
@ApiModelProperty("状态 ") |
|||
private String nodeState; |
|||
} |
@ -0,0 +1,32 @@ |
|||
package com.yxt.anrui.scm.api.scmapplyinbound; |
|||
|
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundQuery.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmapplyinbound.ScmApplyInboundQuery <br/> |
|||
* Description: 车辆入账单 查询条件. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 11:54:35 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@ApiModel(value = "车辆入账单 查询条件", description = "车辆入账单 查询条件") |
|||
@Data |
|||
public class ScmApplyInboundQuery implements Query { |
|||
|
|||
@ApiModelProperty("采购订单编号") |
|||
private String purchaseOrderNo; |
|||
|
|||
@ApiModelProperty("车型") |
|||
private String modelName; |
|||
} |
@ -0,0 +1,68 @@ |
|||
package com.yxt.anrui.scm.api.scmapplyinbound; |
|||
|
|||
|
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleVo; |
|||
import com.yxt.common.core.vo.Vo; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundVo.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmapplyinbound.ScmApplyInboundVo <br/> |
|||
* Description: 车辆入账单 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 11:54:35 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@ApiModel(value = "车辆入账单 视图数据对象", description = "车辆入账单 视图数据对象") |
|||
@Data |
|||
public class ScmApplyInboundVo implements Vo { |
|||
|
|||
@ApiModelProperty("车辆入账单sid") |
|||
private String sid; |
|||
|
|||
@ApiModelProperty("申请编号") |
|||
private String applicationCode; |
|||
|
|||
@ApiModelProperty("申请人sid") |
|||
private String applicationSid; |
|||
|
|||
@ApiModelProperty("申请人名称") |
|||
private String applicationName; |
|||
|
|||
@ApiModelProperty("申请日期") |
|||
private String applicationDate; |
|||
|
|||
@ApiModelProperty("采购订单sid") |
|||
private String vehicleOrderSid; |
|||
|
|||
@ApiModelProperty("采购订单编号") |
|||
private String purchaseOrderNo; |
|||
|
|||
@ApiModelProperty("车型sid ") |
|||
private String modelSid; |
|||
|
|||
@ApiModelProperty("车型名称 ") |
|||
private String modelName; |
|||
|
|||
@ApiModelProperty("常用配置 ") |
|||
private String configName; |
|||
|
|||
@ApiModelProperty("厂家发车日期") |
|||
private String departureDate; |
|||
|
|||
@ApiModelProperty("备注") |
|||
private String remarks; |
|||
|
|||
@ApiModelProperty("车辆列表") |
|||
private List<ScmApplyInboundVehicleVo> inboundVehicleList; |
|||
} |
@ -0,0 +1,36 @@ |
|||
package com.yxt.anrui.scm.api.scmapplyinboundvehicle; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.yxt.common.core.domain.BaseEntity; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundVehicle.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicle <br/> |
|||
* Description: 入库车辆信息. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 12:00:53 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@ApiModel(value = "入库车辆信息", description = "入库车辆信息") |
|||
@TableName("scm_apply_inbound_vehicle") |
|||
@Data |
|||
public class ScmApplyInboundVehicle extends BaseEntity { |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
@ApiModelProperty("车辆入库单sid") |
|||
private String applySid; |
|||
|
|||
@ApiModelProperty("车型sid") |
|||
private String modelSid; |
|||
|
|||
@ApiModelProperty("车架号(VIN)") |
|||
private String vinNo; |
|||
} |
@ -0,0 +1,43 @@ |
|||
package com.yxt.anrui.scm.api.scmapplyinboundvehicle; |
|||
|
|||
|
|||
import com.yxt.common.core.dto.Dto; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundVehicleDto.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleDto <br/> |
|||
* Description: 入库车辆信息 数据传输对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 12:00:53 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@ApiModel(value = "入库车辆信息 数据传输对象", description = "入库车辆信息 数据传输对象") |
|||
@Data |
|||
public class ScmApplyInboundVehicleDto implements Dto { |
|||
|
|||
@ApiModelProperty("车辆信息sid") |
|||
private String sid; |
|||
|
|||
@ApiModelProperty("车辆入库单sid") |
|||
private String applySid; |
|||
|
|||
@ApiModelProperty("车型sid") |
|||
private String modelSid; |
|||
|
|||
@ApiModelProperty("车架号(VIN)") |
|||
private String vinNo; |
|||
|
|||
@ApiModelProperty("备注") |
|||
private String remarks; |
|||
} |
@ -0,0 +1,37 @@ |
|||
package com.yxt.anrui.scm.api.scmapplyinboundvehicle; |
|||
|
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import org.springframework.cloud.openfeign.FeignClient; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundVehicleFeign.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleFeign <br/> |
|||
* Description: 入库车辆信息. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 12:00:53 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Api(tags = "入库车辆信息") |
|||
@FeignClient( |
|||
contextId = "anrui-scm-ScmApplyInboundVehicle", |
|||
name = "anrui-scm", |
|||
path = "v1/scmapplyinboundvehicle", |
|||
fallback = ScmApplyInboundVehicleFeignFallback.class) |
|||
public interface ScmApplyInboundVehicleFeign { |
|||
|
|||
@ApiOperation("根据条件分页查询数据的列表") |
|||
@PostMapping("/listPage") |
|||
public ResultBean<PagerVo<ScmApplyInboundVehicleVo>> listPage(@RequestBody PagerQuery<ScmApplyInboundVehicleQuery> pq); |
|||
} |
@ -0,0 +1,31 @@ |
|||
package com.yxt.anrui.scm.api.scmapplyinboundvehicle; |
|||
|
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import org.springframework.stereotype.Component; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundVehicleFeignFallback.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleFeignFallback <br/> |
|||
* Description: 入库车辆信息. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 12:00:53 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Component |
|||
public class ScmApplyInboundVehicleFeignFallback implements ScmApplyInboundVehicleFeign { |
|||
|
|||
@Override |
|||
public ResultBean<PagerVo<ScmApplyInboundVehicleVo>> listPage(PagerQuery<ScmApplyInboundVehicleQuery> pq){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
return rb.setMsg("接口anrui-scm/scmapplyinboundvehicle/listPage无法访问"); |
|||
} |
|||
} |
@ -0,0 +1,33 @@ |
|||
package com.yxt.anrui.scm.api.scmapplyinboundvehicle; |
|||
|
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundVehicleQuery.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleQuery <br/> |
|||
* Description: 入库车辆信息 查询条件. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 12:00:53 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@ApiModel(value = "入库车辆信息 查询条件", description = "入库车辆信息 查询条件") |
|||
@Data |
|||
public class ScmApplyInboundVehicleQuery implements Query { |
|||
|
|||
|
|||
@ApiModelProperty("车型sid") |
|||
private String modelSid; |
|||
|
|||
@ApiModelProperty("车架号(VIN)") |
|||
private String vinNo; |
|||
} |
@ -0,0 +1,38 @@ |
|||
package com.yxt.anrui.scm.api.scmapplyinboundvehicle; |
|||
|
|||
|
|||
import com.yxt.common.core.vo.Vo; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundVehicleVo.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleVo <br/> |
|||
* Description: 入库车辆信息 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 12:00:53 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@ApiModel(value = "入库车辆信息 视图数据对象", description = "入库车辆信息 视图数据对象") |
|||
@Data |
|||
public class ScmApplyInboundVehicleVo implements Vo { |
|||
|
|||
@ApiModelProperty("车辆信息sid") |
|||
private String sid; |
|||
|
|||
@ApiModelProperty("车辆入库单sid") |
|||
private String applySid; |
|||
|
|||
@ApiModelProperty("车型sid") |
|||
private String modelSid; |
|||
|
|||
@ApiModelProperty("车架号(VIN)") |
|||
private String vinNo; |
|||
} |
@ -0,0 +1,41 @@ |
|||
package com.yxt.anrui.scm.biz.scmapplyinbound; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.Wrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import com.baomidou.mybatisplus.core.toolkit.Constants; |
|||
import com.yxt.anrui.scm.api.scmapplyinbound.ScmApplyInboundListVo; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import org.apache.ibatis.annotations.Select; |
|||
import com.yxt.anrui.scm.api.scmapplyinbound.ScmApplyInbound; |
|||
import com.yxt.anrui.scm.api.scmapplyinbound.ScmApplyInboundVo; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundMapper.java <br/> |
|||
* Class: com.yxt.anrui.scm.biz.scmapplyinbound.ScmApplyInboundMapper <br/> |
|||
* Description: 车辆入账单. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 11:54:35 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Mapper |
|||
public interface ScmApplyInboundMapper extends BaseMapper<ScmApplyInbound> { |
|||
|
|||
//@Update("update scm_apply_inbound set name=#{msg} where id=#{id}")
|
|||
//IPage<ScmApplyInboundVo> voPage(IPage<ScmApplyInbound> page, @Param(Constants.WRAPPER) QueryWrapper<ScmApplyInbound> qw);
|
|||
|
|||
IPage<ScmApplyInboundListVo> selectPageVo(IPage<ScmApplyInbound> page, @Param(Constants.WRAPPER) Wrapper<ScmApplyInbound> qw); |
|||
|
|||
List<ScmApplyInboundVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<ScmApplyInbound> qw); |
|||
|
|||
@Select("select * from scm_apply_inbound") |
|||
List<ScmApplyInboundVo> selectListVo(); |
|||
} |
@ -0,0 +1,17 @@ |
|||
<?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.yxt.anrui.scm.biz.scmapplyinbound.ScmApplyInboundMapper"> |
|||
<!-- <where> ${ew.sqlSegment} </where>--> |
|||
<!-- ${ew.customSqlSegment} --> |
|||
<select id="selectPageVo" resultType="com.yxt.anrui.scm.api.scmapplyinbound.ScmApplyInboundListVo"> |
|||
SELECT id, sid, applicationCode, applicationDate, purchaseOrderNo, modelName, |
|||
(select count(1) from scm_apply_inbound_vehicle where applySid=scm_apply_inbound.sid) vehicleNum |
|||
FROM scm_apply_inbound |
|||
<where> ${ew.sqlSegment} </where> |
|||
ORDER BY id DESC |
|||
</select> |
|||
|
|||
<select id="selectListAllVo" resultType="com.yxt.anrui.scm.api.scmapplyinbound.ScmApplyInboundVo"> |
|||
SELECT * FROM scm_apply_inbound <where> ${ew.sqlSegment} </where> |
|||
</select> |
|||
</mapper> |
@ -0,0 +1,58 @@ |
|||
package com.yxt.anrui.scm.biz.scmapplyinbound; |
|||
|
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import com.yxt.anrui.scm.api.scmapplyinbound.*; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import io.swagger.annotations.Api; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundFeignFallback.java <br/> |
|||
* Class: com.yxt.anrui.scm.biz.scmapplyinbound.ScmApplyInboundRest <br/> |
|||
* Description: 车辆入账单. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 11:54:35 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Api(tags = "车辆入账单") |
|||
@RestController |
|||
@RequestMapping("v1/scmapplyinbound") |
|||
public class ScmApplyInboundRest implements ScmApplyInboundFeign { |
|||
|
|||
@Autowired |
|||
private ScmApplyInboundService scmApplyInboundService; |
|||
|
|||
@Override |
|||
public ResultBean<PagerVo<ScmApplyInboundListVo>> listPage(@RequestBody PagerQuery<ScmApplyInboundQuery> pq){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
PagerVo<ScmApplyInboundListVo> pv = scmApplyInboundService.listPageVo(pq); |
|||
return rb.success().setData(pv); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean<List<ScmApplyInboundVo>> listAll(@RequestBody ScmApplyInboundQuery query){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
List<ScmApplyInboundVo> list = scmApplyInboundService.listAllVo(query); |
|||
return rb.success().setData(list); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean saveOrUpdateApplyInBound(ScmApplyInboundDto dto){ |
|||
return scmApplyInboundService.saveOrUpdateApplyInBound(dto); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean<ScmApplyInboundVo> fetchSid(String sid) { |
|||
return new ResultBean().setData(scmApplyInboundService.selectBySid(sid)); |
|||
} |
|||
} |
@ -0,0 +1,154 @@ |
|||
package com.yxt.anrui.scm.biz.scmapplyinbound; |
|||
|
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.yxt.anrui.scm.api.scmapplyinbound.*; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicle; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleDto; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleVo; |
|||
import com.yxt.anrui.scm.biz.scmapplyinboundvehicle.ScmApplyInboundVehicleService; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
import com.yxt.common.base.service.MybatisBaseService; |
|||
import com.yxt.common.base.utils.PagerUtil; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
|
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
import org.springframework.transaction.annotation.Transactional; |
|||
|
|||
import java.util.List; |
|||
import java.util.UUID; |
|||
import java.util.stream.Collectors; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundService.java <br/> |
|||
* Class: com.yxt.anrui.scm.biz.scmapplyinbound.ScmApplyInboundService <br/> |
|||
* Description: 车辆入账单 业务逻辑. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 11:54:35 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Service |
|||
public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMapper, ScmApplyInbound> { |
|||
|
|||
@Autowired |
|||
private ScmApplyInboundVehicleService scmApplyInboundVehicleService; |
|||
|
|||
public PagerVo<ScmApplyInbound> listPage(PagerQuery<ScmApplyInboundQuery> pq) { |
|||
ScmApplyInboundQuery query = pq.getParams(); |
|||
QueryWrapper<ScmApplyInbound> qw = createQueryWrapper(query); |
|||
IPage<ScmApplyInbound> page = PagerUtil.queryToPage(pq); |
|||
IPage<ScmApplyInbound> pagging = baseMapper.selectPage(page, qw); |
|||
PagerVo<ScmApplyInbound> p = PagerUtil.pageToVo(pagging, null); |
|||
return p; |
|||
} |
|||
public List<ScmApplyInbound> listAll(ScmApplyInboundQuery query) { |
|||
QueryWrapper<ScmApplyInbound> qw = createQueryWrapper(query); |
|||
return baseMapper.selectList(qw); |
|||
} |
|||
private QueryWrapper<ScmApplyInbound> createQueryWrapper(ScmApplyInboundQuery query) { |
|||
// todo: 这里根据具体业务调整查询条件
|
|||
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
|
|||
QueryWrapper<ScmApplyInbound> qw = new QueryWrapper<>(); |
|||
|
|||
if (StringUtils.isNotBlank(query.getPurchaseOrderNo())) { |
|||
qw.like("purchaseOrderNo", query.getPurchaseOrderNo()); |
|||
} |
|||
|
|||
if (StringUtils.isNotBlank(query.getModelName())) { |
|||
qw.like("modelName", query.getModelName()); |
|||
} |
|||
return qw; |
|||
} |
|||
|
|||
public PagerVo<ScmApplyInboundListVo> listPageVo(PagerQuery<ScmApplyInboundQuery> pq) { |
|||
ScmApplyInboundQuery query = pq.getParams(); |
|||
QueryWrapper<ScmApplyInbound> qw = createQueryWrapper(query); |
|||
IPage<ScmApplyInbound> page = PagerUtil.queryToPage(pq); |
|||
IPage<ScmApplyInboundListVo> pagging = baseMapper.selectPageVo(page, qw); |
|||
PagerVo<ScmApplyInboundListVo> p = PagerUtil.pageToVo(pagging, null); |
|||
return p; |
|||
} |
|||
|
|||
public List<ScmApplyInboundVo> listAllVo(ScmApplyInboundQuery query) { |
|||
QueryWrapper<ScmApplyInbound> qw = createQueryWrapper(query); |
|||
return baseMapper.selectListAllVo(qw); |
|||
} |
|||
|
|||
public List<ScmApplyInboundVo> listVo() { |
|||
return baseMapper.selectListVo(); |
|||
} |
|||
|
|||
/** |
|||
* 新增和修改车辆入账单 |
|||
* @param dto |
|||
*/ |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public ResultBean saveOrUpdateApplyInBound(ScmApplyInboundDto dto){ |
|||
// 验证车架号:不能为空、不能重复
|
|||
List<ScmApplyInboundVehicleDto> vehicleList = dto.getVehicleList(); |
|||
List<String> vinNoList = vehicleList.stream().filter(vehicle -> StringUtils.isNotBlank(vehicle.getVinNo())).map(vehicle -> vehicle.getVinNo()).collect(Collectors.toList()); |
|||
if (vehicleList.size() != vinNoList.size()) { |
|||
return new ResultBean().fail().setMsg("车架号不能为空"); |
|||
} |
|||
// 去重
|
|||
long disCount = vinNoList.stream().distinct().count(); |
|||
if (vinNoList.size() != disCount) { |
|||
return new ResultBean().fail().setMsg("车架号不能重复"); |
|||
} |
|||
|
|||
if (StringUtils.isBlank(dto.getSid())) { // 新增
|
|||
// 验证数据库是否重复
|
|||
for (int i = 0; i < vinNoList.size(); i++) { |
|||
int count = scmApplyInboundVehicleService.checkVinNo(vinNoList.get(i), ""); |
|||
if (count != 0) { |
|||
return new ResultBean().setMsg("车架号已经存在"); |
|||
} |
|||
} |
|||
ScmApplyInbound inboundVehicle = new ScmApplyInbound(); |
|||
BeanUtil.copyProperties(dto, inboundVehicle); |
|||
inboundVehicle.setSid(UUID.randomUUID().toString()); |
|||
save(inboundVehicle); |
|||
// 保存车辆列表
|
|||
scmApplyInboundVehicleService.saveApplyInboundVehicleList(vehicleList, inboundVehicle.getSid(), inboundVehicle.getModelSid()); |
|||
return new ResultBean().success().setMsg("保存成功"); |
|||
} else { // 修改
|
|||
// 采购订单下线日期一旦维护,二次确认,则不能修改 TODO
|
|||
// 验证数据库是否重复
|
|||
for (int i = 0; i < vinNoList.size(); i++) { |
|||
int count = scmApplyInboundVehicleService.checkVinNo(vinNoList.get(i), dto.getSid()); |
|||
if (count != 0) { |
|||
return new ResultBean().setMsg("车架号已经存在"); |
|||
} |
|||
} |
|||
ScmApplyInbound scmApplyInbound = fetchBySid(dto.getSid()); |
|||
BeanUtil.copyProperties(dto, scmApplyInbound); |
|||
updateById(scmApplyInbound); |
|||
// 更新车辆列表信息
|
|||
scmApplyInboundVehicleService.updateApplyInboundVehicleList(vehicleList); |
|||
return new ResultBean().success().setMsg("修改成功"); |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 根据sid查询车辆入账单详情 |
|||
* @param sid |
|||
* @return |
|||
*/ |
|||
public ScmApplyInboundVo selectBySid(String sid) { |
|||
ScmApplyInboundVo vo = new ScmApplyInboundVo(); |
|||
ScmApplyInbound scmApplyInbound = fetchBySid(sid); |
|||
BeanUtil.copyProperties(scmApplyInbound, vo); |
|||
List<ScmApplyInboundVehicleVo> list = scmApplyInboundVehicleService.selectListByAppSid(sid); |
|||
vo.setInboundVehicleList(list); |
|||
return vo; |
|||
} |
|||
} |
@ -0,0 +1,39 @@ |
|||
package com.yxt.anrui.scm.biz.scmapplyinboundvehicle; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.Wrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import com.baomidou.mybatisplus.core.toolkit.Constants; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import org.apache.ibatis.annotations.Select; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicle; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleVo; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundVehicleMapper.java <br/> |
|||
* Class: com.yxt.anrui.scm.biz.scmapplyinboundvehicle.ScmApplyInboundVehicleMapper <br/> |
|||
* Description: 入库车辆信息. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 12:00:53 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Mapper |
|||
public interface ScmApplyInboundVehicleMapper extends BaseMapper<ScmApplyInboundVehicle> { |
|||
|
|||
//@Update("update scm_apply_inbound_vehicle set name=#{msg} where id=#{id}")
|
|||
//IPage<ScmApplyInboundVehicleVo> voPage(IPage<ScmApplyInboundVehicle> page, @Param(Constants.WRAPPER) QueryWrapper<ScmApplyInboundVehicle> qw);
|
|||
|
|||
IPage<ScmApplyInboundVehicleVo> selectPageVo(IPage<ScmApplyInboundVehicle> page, @Param(Constants.WRAPPER) Wrapper<ScmApplyInboundVehicle> qw); |
|||
|
|||
int checkVinNo(@Param("vinNo") String vinNo, @Param("applySid") String applySid); |
|||
|
|||
List<ScmApplyInboundVehicleVo> selectListByAppSid(@Param("applySid") String applySid); |
|||
} |
@ -0,0 +1,20 @@ |
|||
<?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.yxt.anrui.scm.biz.scmapplyinboundvehicle.ScmApplyInboundVehicleMapper"> |
|||
<!-- <where> ${ew.sqlSegment} </where>--> |
|||
<!-- ${ew.customSqlSegment} --> |
|||
<select id="selectPageVo" resultType="com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleVo"> |
|||
SELECT * FROM scm_apply_inbound_vehicle <where> ${ew.sqlSegment} </where> |
|||
</select> |
|||
|
|||
<select id="checkVinNo" resultType="int"> |
|||
SELECT count(1) FROM scm_apply_inbound_vehicle WHERE vinNo=#{vinNo} |
|||
<if test="applySid != null and applySid !='' "> |
|||
AND applySid != #{applySid} |
|||
</if> |
|||
</select> |
|||
|
|||
<select id="selectListByAppSid" resultType="com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleVo"> |
|||
SELECT * FROM scm_apply_inbound_vehicle WHERE applySid=#{applySid} |
|||
</select> |
|||
</mapper> |
@ -0,0 +1,46 @@ |
|||
package com.yxt.anrui.scm.biz.scmapplyinboundvehicle; |
|||
|
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import java.util.List; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicle; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleQuery; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleVo; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleDto; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleFeign; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundVehicleFeignFallback.java <br/> |
|||
* Class: com.yxt.anrui.scm.biz.scmapplyinboundvehicle.ScmApplyInboundVehicleRest <br/> |
|||
* Description: 入库车辆信息. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 12:00:53 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Api(tags = "入库车辆信息") |
|||
@RestController |
|||
@RequestMapping("v1/scmapplyinboundvehicle") |
|||
public class ScmApplyInboundVehicleRest implements ScmApplyInboundVehicleFeign { |
|||
|
|||
@Autowired |
|||
private ScmApplyInboundVehicleService scmApplyInboundVehicleService; |
|||
|
|||
@Override |
|||
public ResultBean<PagerVo<ScmApplyInboundVehicleVo>> listPage(@RequestBody PagerQuery<ScmApplyInboundVehicleQuery> pq){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
PagerVo<ScmApplyInboundVehicleVo> pv = scmApplyInboundVehicleService.listPageVo(pq); |
|||
return rb.success().setData(pv); |
|||
} |
|||
} |
@ -0,0 +1,118 @@ |
|||
package com.yxt.anrui.scm.biz.scmapplyinboundvehicle; |
|||
|
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
import com.yxt.common.base.service.MybatisBaseService; |
|||
import com.yxt.common.base.utils.PagerUtil; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicle; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleQuery; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleVo; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleDto; |
|||
import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleFeign; |
|||
|
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: anrui-scm(进销存) <br/> |
|||
* File: ScmApplyInboundVehicleService.java <br/> |
|||
* Class: com.yxt.anrui.scm.biz.scmapplyinboundvehicle.ScmApplyInboundVehicleService <br/> |
|||
* Description: 入库车辆信息 业务逻辑. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-04-02 12:00:53 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Service |
|||
public class ScmApplyInboundVehicleService extends MybatisBaseService<ScmApplyInboundVehicleMapper, ScmApplyInboundVehicle> { |
|||
public PagerVo<ScmApplyInboundVehicle> listPage(PagerQuery<ScmApplyInboundVehicleQuery> pq) { |
|||
ScmApplyInboundVehicleQuery query = pq.getParams(); |
|||
QueryWrapper<ScmApplyInboundVehicle> qw = createQueryWrapper(query); |
|||
IPage<ScmApplyInboundVehicle> page = PagerUtil.queryToPage(pq); |
|||
IPage<ScmApplyInboundVehicle> pagging = baseMapper.selectPage(page, qw); |
|||
PagerVo<ScmApplyInboundVehicle> p = PagerUtil.pageToVo(pagging, null); |
|||
return p; |
|||
} |
|||
public List<ScmApplyInboundVehicle> listAll(ScmApplyInboundVehicleQuery query) { |
|||
QueryWrapper<ScmApplyInboundVehicle> qw = createQueryWrapper(query); |
|||
return baseMapper.selectList(qw); |
|||
} |
|||
private QueryWrapper<ScmApplyInboundVehicle> createQueryWrapper(ScmApplyInboundVehicleQuery query) { |
|||
// todo: 这里根据具体业务调整查询条件
|
|||
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
|
|||
QueryWrapper<ScmApplyInboundVehicle> qw = new QueryWrapper<>(); |
|||
|
|||
|
|||
if (StringUtils.isNotBlank(query.getModelSid())) { |
|||
qw.eq("modelSid", query.getModelSid()); |
|||
} |
|||
|
|||
if (StringUtils.isNotBlank(query.getVinNo())) { |
|||
qw.eq("vinNo", query.getVinNo()); |
|||
} |
|||
return qw; |
|||
} |
|||
|
|||
public PagerVo<ScmApplyInboundVehicleVo> listPageVo(PagerQuery<ScmApplyInboundVehicleQuery> pq) { |
|||
ScmApplyInboundVehicleQuery query = pq.getParams(); |
|||
QueryWrapper<ScmApplyInboundVehicle> qw = createQueryWrapper(query); |
|||
IPage<ScmApplyInboundVehicle> page = PagerUtil.queryToPage(pq); |
|||
IPage<ScmApplyInboundVehicleVo> pagging = baseMapper.selectPageVo(page, qw); |
|||
PagerVo<ScmApplyInboundVehicleVo> p = PagerUtil.pageToVo(pagging, null); |
|||
return p; |
|||
} |
|||
|
|||
/** |
|||
* 验证车架号是否重复 |
|||
* @return |
|||
*/ |
|||
public int checkVinNo(String vinNo, String applySid) { |
|||
return baseMapper.checkVinNo(vinNo, applySid); |
|||
} |
|||
|
|||
/** |
|||
* 保存车辆列表 |
|||
* @param list |
|||
* @param applySid |
|||
* @param modelSid |
|||
*/ |
|||
public void saveApplyInboundVehicleList(List<ScmApplyInboundVehicleDto> list, String applySid, String modelSid) { |
|||
for (ScmApplyInboundVehicleDto dto : list) { |
|||
ScmApplyInboundVehicle inboundVehicle = new ScmApplyInboundVehicle(); |
|||
BeanUtil.copyProperties(dto, inboundVehicle); |
|||
inboundVehicle.setApplySid(applySid); |
|||
inboundVehicle.setModelSid(modelSid); |
|||
save(inboundVehicle); |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 修改车辆列表 |
|||
* @param list |
|||
*/ |
|||
public void updateApplyInboundVehicleList(List<ScmApplyInboundVehicleDto> list) { |
|||
for (ScmApplyInboundVehicleDto dto : list) { |
|||
ScmApplyInboundVehicle inboundVehicle = fetchBySid(dto.getSid()); |
|||
BeanUtil.copyProperties(dto, inboundVehicle); |
|||
updateById(inboundVehicle); |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 根据车辆入账单查询车辆信息 |
|||
* @param applySid |
|||
* @return |
|||
*/ |
|||
public List<ScmApplyInboundVehicleVo> selectListByAppSid(String applySid) { |
|||
return baseMapper.selectListByAppSid(applySid); |
|||
} |
|||
} |
Binary file not shown.
Loading…
Reference in new issue