
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