diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppCarConfigSummaryVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppCarConfigSummaryVo.java new file mode 100644 index 0000000000..49fe013ca5 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppCarConfigSummaryVo.java @@ -0,0 +1,17 @@ +package com.yxt.anrui.base.api.basemodelconfig; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class AppCarConfigSummaryVo { + + @ApiModelProperty("常用配置") + private String config; + + @ApiModelProperty("更多配置") + private String moreConfig; + + @ApiModelProperty("车型名称") + private String model; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppModelConfigListQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppModelConfigListQuery.java new file mode 100644 index 0000000000..4badec4222 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppModelConfigListQuery.java @@ -0,0 +1,79 @@ +package com.yxt.anrui.base.api.basemodelconfig; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class AppModelConfigListQuery implements Query { + + @ApiModelProperty("名称") + private String name; + + @ApiModelProperty("颜色") + private String bodyColor; + + @ApiModelProperty("缓速器") + private String slowMachine; + + @ApiModelProperty("后视镜") + private String rearViewMirror; + + @ApiModelProperty("轮胎") + private String tireSize; + + @ApiModelProperty("驾驶室") + private String specification; + + @ApiModelProperty("后桥速比") + private String rearAxleRatio; + + @ApiModelProperty("空调") + private String airConditioner; + + @ApiModelProperty("轮毂材质") + private String hubMaterial; + + @ApiModelProperty("导流罩") + private String diversionCover; + + @ApiModelProperty("车型sid") + private String modelSid; + + @ApiModelProperty("多媒体") + private String multiMedia; + + @ApiModelProperty("燃料箱") + private String fuelTank; + + @ApiModelProperty("独立热源") + private String independentSources; + + @ApiModelProperty("配置包") + private String configuringBao; + + @ApiModelProperty("保险杠") + private String bumper; + + @ApiModelProperty("轴距") + private String wheelbase; + + @ApiModelProperty("鞍座") + private String saddle; + + @ApiModelProperty("护轮罩") + private String protectTireCover; + + @ApiModelProperty("座椅") + private String seat; + + @ApiModelProperty("悬架") + private String suspension; + + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("分公司") + private String useOrg; + +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppModelConfigListVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppModelConfigListVo.java index cbba05d90d..27e14f0413 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppModelConfigListVo.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppModelConfigListVo.java @@ -1,10 +1,13 @@ package com.yxt.anrui.base.api.basemodelconfig; +import com.yxt.anrui.base.api.basevehicle.AppMoreConfigVo; import com.yxt.common.core.vo.Vo; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.boot.autoconfigure.validation.ValidationAutoConfiguration; +import java.util.List; + @Data public class AppModelConfigListVo implements Vo { @@ -57,24 +60,36 @@ public class AppModelConfigListVo implements Vo { @ApiModelProperty(value = "有效期") private String priceValidity; - @ApiModelProperty(value = "辆") - private String vehicleQuantity; - @ApiModelProperty(value = "指导价") private String guidedPrice; - @ApiModelProperty(value = "参考价") - private String salesReferencePrice; + @ApiModelProperty(value = "现车") + private String nowCarNum; - @ApiModelProperty(value = "车型") - private String model; + @ApiModelProperty(value = "排产车") + private String produceCarNum; + + @ApiModelProperty(value = "更多配置") + private List moreConfig; + + @ApiModelProperty(value = "辆(已废弃)") + private String vehicleQuantity; @ApiModelProperty(value = "车型sid") private String modelSid; - @ApiModelProperty(value = "品牌") + @ApiModelProperty(value = "车型名称") + private String modelName; + + @ApiModelProperty(value = "车型名称") + private String model; + + @ApiModelProperty(value = "品牌名称") private String brand; + @ApiModelProperty(value = "更多配置") + private String otherConfig; + @ApiModelProperty(value = "品牌sid") private String brandSid; } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppModelConfigVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppModelConfigVo.java new file mode 100644 index 0000000000..09a099d6ef --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppModelConfigVo.java @@ -0,0 +1,66 @@ +package com.yxt.anrui.base.api.basemodelconfig; + +import com.yxt.anrui.base.api.basevehicle.ConfigInfo; +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +public class AppModelConfigVo implements Vo { + @ApiModelProperty("车型图片") + private List modelImage; + @ApiModelProperty("车型名称") + private String modelName; + @ApiModelProperty("指导价") + private String price; + @ApiModelProperty("车型list") + private List configList; + @ApiModelProperty("品牌名称") + private String brandName; + @ApiModelProperty("版本") + private String vehicleVersionValue; + + @ApiModelProperty("配置列表") + private List modelConfigList; + + @ApiModelProperty(value = "功能") + private String vehicleTypeValue; + + @ApiModelProperty(value = "系列") + private String productLineValue; + + @ApiModelProperty(value = "驱动") + private String driveFormValue; + + @ApiModelProperty(value = "马力") + private String powerValue; + + @ApiModelProperty(value = "燃料") + private String fuelTypeValue; + + @ApiModelProperty(value = "变速箱") + private String gearboxTypeValue; + + @ApiModelProperty(value = "细分市场") + private String marketSegments; + + @ApiModelProperty(value = "系别") + private String department; + + @ApiModelProperty(value = "发动机型号") + private String engineTypeValue; + + @ApiModelProperty(value = "公告型号") + private String announcementModel; + + @ApiModelProperty(value = "规格型号") + private String specifications; + + @ApiModelProperty(value = "货箱") + private String packingCase; + + @ApiModelProperty(value = "内部编码") + private String insideCode; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigFeign.java index 9d9ab46115..a927dee874 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigFeign.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigFeign.java @@ -117,15 +117,26 @@ public interface BaseModelConfigFeign { public ResultBean getByVeSid(@RequestParam("sid") String sid); /** - * pc端车型库配置分页列表(改) + * 车型配置分页列表(新) * * @param pagerQuery * @return */ - @ApiOperation("pc端车型库配置分页列表(改)") + @ApiOperation("车型配置分页列表(新)") @PostMapping("/configPageList") ResultBean> configPageList(@Valid @RequestBody PagerQuery pagerQuery); + /** + * 更多配置分页列表(非本公司的) + * + * @param pagerQuery + * @return + */ + @ApiOperation("更多配置分页列表(非本公司的)") + @PostMapping("/notTheCompanyConfigPageList") + ResultBean> notTheCompanyConfigPageList(@Valid @RequestBody PagerQuery pagerQuery); + + @Deprecated /** * @see com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign.selectExiCarConfig @@ -140,5 +151,13 @@ public interface BaseModelConfigFeign { @GetMapping("/getAppDetailByModelConfigSid") public ResultBean getAppDetailByModelConfigSid(@RequestParam("sid") String sid); + @ApiOperation("App车型报价-获取当前车型配置(新)") + @PostMapping("/getModelConfigList") + public ResultBean getModelConfigList(@Valid @RequestBody PagerQuery pagerQuery); + + @ApiOperation("App车型报价-获取现车配置列表(新)") + @PostMapping("/getNowConfigList") + public ResultBean getNowConfigList(@Valid @RequestBody PagerQuery pagerQuery); + } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigFeignFallback.java index 8321cbf645..429de7d42b 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigFeignFallback.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigFeignFallback.java @@ -89,6 +89,11 @@ public class BaseModelConfigFeignFallback implements BaseModelConfigFeign { return null; } + @Override + public ResultBean> notTheCompanyConfigPageList(PagerQuery pagerQuery) { + return null; + } + @Override public ResultBean selectDetails(String sid, String modelSid) { return null; @@ -98,4 +103,14 @@ public class BaseModelConfigFeignFallback implements BaseModelConfigFeign { public ResultBean getAppDetailByModelConfigSid(String sid) { return null; } + + @Override + public ResultBean getModelConfigList(PagerQuery pagerQuery) { + return null; + } + + @Override + public ResultBean getNowConfigList(PagerQuery pagerQuery) { + return null; + } } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigListQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigListQuery.java index d9d4118868..450f3055bd 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigListQuery.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigListQuery.java @@ -15,9 +15,10 @@ import javax.validation.constraints.NotBlank; public class BaseModelConfigListQuery implements Query { private static final long serialVersionUID = 932522587144455873L; - @ApiModelProperty(value = "车型sid",required = true) + @ApiModelProperty(value = "车型sid", required = true) @NotBlank(message = "请选择车型") - private String sid; + private String modelSid; + @ApiModelProperty(value = "颜色") private String carColor; @@ -33,9 +34,12 @@ public class BaseModelConfigListQuery implements Query { @ApiModelProperty(value = "燃料箱") private String fuelTank; - @ApiModelProperty(value = "车型配置sid") - private String configSid; - @ApiModelProperty(value = "常用配置") private String configName; + + @ApiModelProperty(value = "分公司") + private String useOrg; + + @ApiModelProperty(value = "用户sid") + private String userSid; } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigListVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigListVo.java index ee75000c92..f8a9f2cabc 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigListVo.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/BaseModelConfigListVo.java @@ -36,6 +36,29 @@ public class BaseModelConfigListVo implements Vo { @ApiModelProperty(value = "排产车") private String productionCarNum; + @ApiModelProperty(value = "分公司") + private String company; + + + /*配置名称字段*/ + private String slowMachine; + private String rearViewMirror; + private String tireSize; + private String specification; + private String rearAxleRatio; + private String airConditioner; + private String hubMaterial; + private String baffleModel; + private String suspension; + private String seat; + private String tireCover; + private String saddle; + private String wheelbase; + private String bumper; + private String configuringBao; + private String independentSources; + private String fuelTank; + private String multimedia; } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppBaseVehicleFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppBaseVehicleFeign.java index 07bf032309..fdfb08e7cd 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppBaseVehicleFeign.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppBaseVehicleFeign.java @@ -28,9 +28,9 @@ import org.springframework.web.bind.annotation.*; fallback = BaseVehicleFeignFallback.class) public interface AppBaseVehicleFeign { - @ApiOperation("手机端现车详细配置") - @GetMapping("/appCarParams/{modelSid}/{configSid}") - public ResultBean getAppCurrentCarDetailConfigVo(@PathVariable("modelSid") String modelSid, @PathVariable("configSid") String configSid); + @ApiOperation("手机端现车详细配置(新)") + @GetMapping("/appCarParams") + public ResultBean getAppCurrentCarDetailConfigVo(@RequestParam("modelSid") String modelSid, @RequestParam("configSid") String configSid, @RequestParam("userSid") String userSid); } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppBaseVehicleFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppBaseVehicleFeignFallback.java index 101202b01f..24992421e6 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppBaseVehicleFeignFallback.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppBaseVehicleFeignFallback.java @@ -1,15 +1,7 @@ package com.yxt.anrui.base.api.basevehicle; -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 org.springframework.web.multipart.MultipartFile; - -import java.io.IOException; -import java.text.ParseException; -import java.util.List; -import java.util.Map; /** * Project: anrui-base(安瑞基础信息模块)
@@ -28,7 +20,7 @@ import java.util.Map; public class AppBaseVehicleFeignFallback implements AppBaseVehicleFeign { @Override - public ResultBean getAppCurrentCarDetailConfigVo(String modelSid, String configSid) { + public ResultBean getAppCurrentCarDetailConfigVo(String modelSid, String configSid,String userSid) { return null; } } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppBaseVehicleNowModelQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppBaseVehicleNowModelQuery.java new file mode 100644 index 0000000000..b88304a42d --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppBaseVehicleNowModelQuery.java @@ -0,0 +1,49 @@ +package com.yxt.anrui.base.api.basevehicle; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class AppBaseVehicleNowModelQuery implements Query { + + @ApiModelProperty("名称") + private String name; + + @ApiModelProperty("排放标准") + private String emissionStandard; + + @ApiModelProperty("驱动") + private String driver; + + @ApiModelProperty("变速箱") + private String gearbox; + + @ApiModelProperty("产品系列") + private String series; + + @ApiModelProperty("功能") + private String vehicleFunction; + + @ApiModelProperty("细分市场") + private String marketSegments; + + @ApiModelProperty("版本") + private String vehicleVersion; + + @ApiModelProperty("燃料") + private String fuelType; + + @ApiModelProperty("马力") + private String horsepower; + + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("品牌") + private String brand; + + @ApiModelProperty("分公司") + private String useOrg; + +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppBaseVehicleNowModelVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppBaseVehicleNowModelVo.java new file mode 100644 index 0000000000..ac791361f0 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppBaseVehicleNowModelVo.java @@ -0,0 +1,33 @@ +package com.yxt.anrui.base.api.basevehicle; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class AppBaseVehicleNowModelVo implements Vo { + + @ApiModelProperty("车型sid") + private String modelSid; + @ApiModelProperty("车型名称") + private String modelName; + @ApiModelProperty("车型图片") + private String modelImage; + @ApiModelProperty("品牌名称") + private String brandName; + @ApiModelProperty("品牌sid") + private String brandSid; + @ApiModelProperty("版本号") + private String versionValue; + @ApiModelProperty("燃料") + private String fuelTypeValue; + @ApiModelProperty("变速箱") + private String gearboxTypeValue; + @ApiModelProperty("指导价") + private String guidedPrice; + @ApiModelProperty("配置数量") + private String configNum; + @ApiModelProperty("现车数量") + private String nowCarNum; + +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppCurrentCarDetailConfigQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppCurrentCarDetailConfigQuery.java new file mode 100644 index 0000000000..05bf68819f --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppCurrentCarDetailConfigQuery.java @@ -0,0 +1,20 @@ +package com.yxt.anrui.base.api.basevehicle; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + + +@Data +public class AppCurrentCarDetailConfigQuery implements Query { + + @ApiModelProperty("车型sid") + private String modelSid; + + @ApiModelProperty("配置sid") + private String configSid; + + @ApiModelProperty("用户sid") + private String userSid; + +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppCurrentCarDetailConfigVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppCurrentCarDetailConfigVo.java new file mode 100644 index 0000000000..1fbb533705 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppCurrentCarDetailConfigVo.java @@ -0,0 +1,46 @@ +package com.yxt.anrui.base.api.basevehicle; + +import com.yxt.anrui.base.api.basemodelconfig.AppModelConfigDetailsVo; +import com.yxt.anrui.base.api.basemodelszconfig.AppBaseModelSzconfigDetailsVo; +import com.yxt.anrui.base.api.basetrailer.AppBaseTrailerDetailsVo; +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + + +@Data +public class AppCurrentCarDetailConfigVo implements Vo { + + @ApiModelProperty(value = "车型信息") + private List> modelInfo; + + @ApiModelProperty(value = "常用配置") + private List configInfo; + + @ApiModelProperty(value = "更多配置") + private String moreConfig; + + @ApiModelProperty(value = "指导价") + private String price; + + @ApiModelProperty(value = "价格有效期") + private String date; + + @ApiModelProperty(value = "价格有效期") + private Long dateLong; + + @ApiModelProperty(value = "车型名称") + private String model; + + @ApiModelProperty(value = "品牌") + private String brand; + + @ApiModelProperty(value = "品牌sid") + private String brandSid; + + @ApiModelProperty(value = "现车和排产车总数") + private String num; + +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppCurrentCarDetailCongfigVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppCurrentCarDetailCongfigVo.java deleted file mode 100644 index 591668901d..0000000000 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppCurrentCarDetailCongfigVo.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.yxt.anrui.base.api.basevehicle; - -import com.yxt.anrui.base.api.basemodelconfig.AppModelConfigDetailsVo; -import com.yxt.anrui.base.api.basemodelszconfig.AppBaseModelSzconfigDetailsVo; -import com.yxt.anrui.base.api.basetrailer.AppBaseTrailerDetailsVo; -import com.yxt.common.core.vo.Vo; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.util.List; - - -@Data -public class AppCurrentCarDetailCongfigVo implements Vo { - - @ApiModelProperty(value = "车型信息") - private List> modleInfo; - - @ApiModelProperty(value = "常用配置") - private List commonConfigInfo; - - @ApiModelProperty(value = "更多配置") - private String moreConfigDescibe; - - /*@ApiModelProperty(value = "上装") - private List> trailerInfo; - - @ApiModelProperty(value = "挂车") - private List> topInfo;*/ - -} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppVehicleModelPriceQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppVehicleModelPriceQuery.java index a4a94c44e7..134c7994f0 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppVehicleModelPriceQuery.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppVehicleModelPriceQuery.java @@ -47,4 +47,7 @@ public class AppVehicleModelPriceQuery implements Query { @ApiModelProperty(value = "用户sid") private String userSid; + + @ApiModelProperty(value = "分公司") + private String useOrg; } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/BaseExistingCarPageQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/BaseExistingCarPageQuery.java index a4be6a4662..0818f7454f 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/BaseExistingCarPageQuery.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/BaseExistingCarPageQuery.java @@ -26,4 +26,10 @@ public class BaseExistingCarPageQuery implements Query { @ApiModelProperty(value = "锁定状态") private String lockedState; + + @ApiModelProperty(value = "用户sid") + private String userSid; + + @ApiModelProperty(value = "分公司") + private String useOrg; } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/BaseVehicleFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/BaseVehicleFeign.java index 25d4eadcc4..995a957715 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/BaseVehicleFeign.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/BaseVehicleFeign.java @@ -1,5 +1,6 @@ package com.yxt.anrui.base.api.basevehicle; +import com.yxt.anrui.base.api.basemodelconfig.AppCarConfigSummaryVo; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -161,9 +162,9 @@ public interface BaseVehicleFeign { * @param configSid 配置sid * @return */ - @ApiOperation("车型详细配置接口") - @GetMapping("/selectExiCarConfig/{modelSid}/{configSid}") - public ResultBean selectExiCarConfig(@PathVariable("modelSid") String modelSid, @PathVariable("configSid") String configSid); + @ApiOperation("车型详细配置接口(新)") + @GetMapping("/selectExiCarConfig/{modelSid}/{configSid}/{userSid}") + public ResultBean selectExiCarConfig(@PathVariable("modelSid") String modelSid, @PathVariable("configSid") String configSid, @PathVariable("userSid") String userSid); /** * 现车分页列表(新) @@ -190,7 +191,15 @@ public interface BaseVehicleFeign { @GetMapping("/getVins/{modelSid}/{configSid}") public ResultBean> getVins(@PathVariable("modelSid") String modelSid, @PathVariable("configSid") String configSid); - @ApiOperation("手机端业务-车型报价-列表") + @ApiOperation("手机端业务-车型报价-列表(新)") @PostMapping("/getModelList") public ResultBean> getModelList(@RequestBody PagerQuery pagerQuery); + + @ApiOperation("手机端业务-现车列表(新)虚拟订单选择车辆") + @PostMapping("/getNowModelList") + public ResultBean> getNowModelList(@RequestBody PagerQuery pagerQuery); + + @ApiOperation("获取车型配置总结(即常用配置一句话描述)") + @GetMapping("/carConfigSummary/{modelSid}/{configSid}") + public ResultBean getCarConfigSummary(@PathVariable("modelSid") String modelSid, @PathVariable("configSid") String configSid); } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/BaseVehicleFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/BaseVehicleFeignFallback.java index 94e056e590..9bc5748720 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/BaseVehicleFeignFallback.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/BaseVehicleFeignFallback.java @@ -1,5 +1,6 @@ package com.yxt.anrui.base.api.basevehicle; +import com.yxt.anrui.base.api.basemodelconfig.AppCarConfigSummaryVo; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -89,7 +90,7 @@ public class BaseVehicleFeignFallback implements BaseVehicleFeign { } @Override - public ResultBean selectExiCarConfig(String modelSid, String configSid) { + public ResultBean selectExiCarConfig(String modelSid, String configSid, String userSid) { return null; } @@ -117,4 +118,15 @@ public class BaseVehicleFeignFallback implements BaseVehicleFeign { public ResultBean getModelList(PagerQuery pagerQuery) { return ResultBean.fireFail().setMsg("接口anrui-base/basevehicle/getModelList无法访问"); } + + @Override + public ResultBean> getNowModelList(PagerQuery pagerQuery) { + return null; + } + + @Override + public ResultBean getCarConfigSummary(String modelSid, String configSid) { + return null; + } + } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelFeign.java index d62bb9a487..b64a36b39e 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelFeign.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelFeign.java @@ -161,4 +161,14 @@ public interface BaseVehicleModelFeign { @PostMapping("/modelPageList") ResultBean> modelPageList(@RequestBody PagerQuery query); + /** + * 更多车型分页列表(非本公司的) + * + * @param query + * @return + */ + @ApiOperation("更多车型分页列表(非本公司的)") + @PostMapping("/notTheCompanyModelPageList") + ResultBean> notTheCompanyModelPageList(@RequestBody PagerQuery query); + } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelFeignFallback.java index d79cd9179f..451f76ee5b 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelFeignFallback.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelFeignFallback.java @@ -91,6 +91,11 @@ public class BaseVehicleModelFeignFallback implements BaseVehicleModelFeign { return null; } + @Override + public ResultBean> notTheCompanyModelPageList(PagerQuery query) { + return null; + } + /*@Override public ResultBean> selectPage(PagerQuery query) { return null; diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelListQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelListQuery.java index 833ad9a026..331da1b2aa 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelListQuery.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelListQuery.java @@ -33,4 +33,6 @@ public class BaseVehicleModelListQuery implements Query { private String gearboxType; @ApiModelProperty(value = "用户sid") private String userSid; + @ApiModelProperty(value = "分公司sid") + private String useOrg; } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelListVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelListVo.java index 46473db8f8..4593effbb5 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelListVo.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclemodel/BaseVehicleModelListVo.java @@ -34,5 +34,7 @@ public class BaseVehicleModelListVo implements Vo { private String nowCarNum; @ApiModelProperty(value = "排产车") private String productionCarNum; + @ApiModelProperty(value = "分公司") + private String company; } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeign.java index 45847a560e..6d0ba7d535 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeign.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeign.java @@ -25,7 +25,7 @@ *********************************************************/ package com.yxt.anrui.base.api.busvehicleorder; -import com.yxt.anrui.base.api.basevehicle.AppCurrentCarDetailCongfigVo; +import com.yxt.anrui.base.api.basevehicle.AppCurrentCarDetailConfigVo; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -81,7 +81,7 @@ public interface BusVehicleOrderFeign { * @param pq 查询条件 * @return */ - @ApiOperation("排产车型列表(改)") + @ApiOperation("排产车型列表(新)") @PostMapping("/selectPage") ResultBean> selectPage(@RequestBody PagerQuery pq); @@ -101,7 +101,7 @@ public interface BusVehicleOrderFeign { @ApiOperation("手机端排产车详细配置") @GetMapping("/appProductionScheduling/{modelSid}/{configSid}") - public ResultBean getAppProductionSchedulingDetailConfigVo(@PathVariable("modelSid") String modelSid, @PathVariable("configSid") String configSid); + public ResultBean getAppProductionSchedulingDetailConfigVo(@PathVariable("modelSid") String modelSid, @PathVariable("configSid") String configSid); } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeignFallback.java index d590a54a58..5ddb09eeb9 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeignFallback.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeignFallback.java @@ -25,7 +25,7 @@ *********************************************************/ package com.yxt.anrui.base.api.busvehicleorder; -import com.yxt.anrui.base.api.basevehicle.AppCurrentCarDetailCongfigVo; +import com.yxt.anrui.base.api.basevehicle.AppCurrentCarDetailConfigVo; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -86,7 +86,7 @@ public class BusVehicleOrderFeignFallback implements BusVehicleOrderFeign { } @Override - public ResultBean getAppProductionSchedulingDetailConfigVo(String modelSid, String configSid) { + public ResultBean getAppProductionSchedulingDetailConfigVo(String modelSid, String configSid) { return null; } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderListQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderListQuery.java index b65657d4f1..5d136f8e4d 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderListQuery.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderListQuery.java @@ -28,4 +28,10 @@ public class BusVehicleOrderListQuery implements Query { @ApiModelProperty(value = "配置sid") private String configSid; + @ApiModelProperty(value = "用户sid") + private String userSid; + + @ApiModelProperty(value = "分公司") + private String useOrg; + } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractQuery.java index 319ede07e2..053a14ada9 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractQuery.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractQuery.java @@ -26,8 +26,8 @@ public class CommonContractQuery implements Query { @ApiModelProperty("合同编号") private String contractNo; - @ApiModelProperty("合同类型") - private String contractType; + @ApiModelProperty("合同类型key") + private String contractTypeKey; @ApiModelProperty("甲方名称") private String partyA; diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractVo.java index b3d626061c..5a64eae5e5 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractVo.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractVo.java @@ -34,39 +34,18 @@ public class CommonContractVo implements Vo { private String sid; @ApiModelProperty("合同编号") private String contractNo; - @ApiModelProperty("合同类型key") - private String contractTypeKey; - @ApiModelProperty("合同类型") - private String contractType; - @ApiModelProperty("客户sid") - private String customerSid; - @ApiModelProperty("业务员sid") - private String staffSid; - @ApiModelProperty("业务员") + @ApiModelProperty("经办人") private String staffName; - @ApiModelProperty("部门sid") - private String orgSid; - @ApiModelProperty("业务表sid") - private String busSid; - @ApiModelProperty("甲方名称") + @ApiModelProperty("甲方名称") private String partyA; - @ApiModelProperty("乙方名称") + @ApiModelProperty("乙方名称") private String partyB; - @ApiModelProperty("其他方名称") - private String partyC; - @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") - @ApiModelProperty("签订日期") - private Date createDate; - @ApiModelProperty("签订地点") - private String address; - @ApiModelProperty("订金") - private BigDecimal deposit; @ApiModelProperty("合同金额") private String contractAmount; @ApiModelProperty("合同附件") private String appdixUrl; - @ApiModelProperty("备注") - private String remarks; + @ApiModelProperty("现场签署图片附件") + private String sceneSignUrl; @ApiModelProperty("节点状态") private String nodeState; @ApiModelProperty("附件文件") diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigMapper.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigMapper.java index f2538ac727..9277c15b76 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigMapper.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigMapper.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Constants; import com.yxt.anrui.base.api.basemodelconfig.*; +import com.yxt.anrui.base.api.basevehicle.AppMoreConfigVo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; @@ -144,10 +145,10 @@ public interface BaseModelConfigMapper extends BaseMapper { * @param configSid * @return */ - AppModelConfigDetailsVo getAppModelConfigDetailsVo(@Param("modelSid") String modelSid, @Param("configSid") String configSid); + AppModelConfigDetailsVo getAppModelConfigDetailsVo(@Param("modelSid") String modelSid, @Param("configSid") String configSid ,@Param("useOrg") String useOrg); /** - * pc端车型库配置分页列表(改) + * 车型配置分页列表(新) * * @param page 分页 * @param qw 查询条件 @@ -155,6 +156,15 @@ public interface BaseModelConfigMapper extends BaseMapper { */ IPage configPageList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + /** + * 更多配置分页列表(非本公司的) + * + * @param page 分页 + * @param qw 查询条件 + * @return + */ + IPage notTheCompanyConfigPageList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + /** * 根据车型配置sid查询配置详情 * @@ -171,4 +181,13 @@ public interface BaseModelConfigMapper extends BaseMapper { * @return */ AppModelConfigDetailsVo getAppProductionSchedulingDetailsVo(@Param("modelSid") String modelSid, @Param("configSid") String configSid); + + //查询车型信息 + AppModelConfigVo getModelConfigList(String modelSid); + + List getModelConfigPageList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + List getCompanyModelList(@Param("modelSid") String modelSid, @Param("configSid") String configSid, @Param("useOrg") String useOrg); + + AppModelConfigListVo getCarConfigSummary(@Param("modelSid") String modelSid, @Param("configSid") String configSid); } \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigMapper.xml b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigMapper.xml index 3d3bfb0a24..d2ca713b80 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigMapper.xml +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigMapper.xml @@ -170,25 +170,25 @@ SELECT bc.sid, - - CONCAT_WS( - '/', - IF(LENGTH(trim(GROUP_CONCAT(slowMachine))) > 0, GROUP_CONCAT(slowMachine), NULL), - IF(LENGTH(trim(GROUP_CONCAT(rearViewMirror))) > 0, GROUP_CONCAT(rearViewMirror), NULL), - IF(LENGTH(trim(GROUP_CONCAT(tireSize))) > 0, GROUP_CONCAT(tireSize), NULL), - IF(LENGTH(trim(GROUP_CONCAT(specification))) > 0, GROUP_CONCAT(specification), NULL), - IF(LENGTH(trim(GROUP_CONCAT(rearAxleRatio))) > 0, GROUP_CONCAT(rearAxleRatio), NULL), - IF(LENGTH(trim(GROUP_CONCAT(airConditioner))) > 0, GROUP_CONCAT(airConditioner), NULL), - IF(LENGTH(trim(GROUP_CONCAT(hubMaterial))) > 0, GROUP_CONCAT(hubMaterial), NULL), - IF(LENGTH(trim(GROUP_CONCAT(baffleModel))) > 0, GROUP_CONCAT(baffleModel), NULL), - IF(LENGTH(trim(GROUP_CONCAT(suspension))) > 0, GROUP_CONCAT(suspension), NULL), - IF(LENGTH(trim(GROUP_CONCAT(seat))) > 0, GROUP_CONCAT(seat), NULL), - IF(LENGTH(trim(GROUP_CONCAT(tireCover))) > 0, GROUP_CONCAT(tireCover), NULL), - IF(LENGTH(trim(GROUP_CONCAT(saddle))) > 0, GROUP_CONCAT(saddle), NULL), - IF(LENGTH(trim(GROUP_CONCAT(wheelbase))) > 0, GROUP_CONCAT(wheelbase), NULL), - IF(LENGTH(trim(GROUP_CONCAT(bumper))) > 0, GROUP_CONCAT(bumper), NULL), - IF(LENGTH(trim(GROUP_CONCAT(configuringBao))) > 0, GROUP_CONCAT(configuringBao), NULL), - IF(LENGTH(trim(GROUP_CONCAT(independentSources))) > 0, GROUP_CONCAT(independentSources), NULL), - IF(LENGTH(trim(GROUP_CONCAT(fuelTank))) > 0, GROUP_CONCAT(fuelTank), NULL), - IF(LENGTH(trim(GROUP_CONCAT(multimedia))) > 0, GROUP_CONCAT(multimedia), NULL) - ) AS configName, - - bc.carColor, - - bvc.guidedPrice, - - bvc.priceValidity, + bc.slowMachine, + bc.rearViewMirror, + bc.tireSize, + bc.specification, + bc.rearAxleRatio, + bc.airConditioner, + bc.hubMaterial, + bc.baffleModel, + bc.suspension, + bc.seat, + bc.tireCover, + bc.saddle, + bc.wheelbase, + bc.bumper, + bc.configuringBao, + bc.independentSources, + bc.fuelTank, + bc.multimedia, + bc.carColor, + bvc.guidedPrice, + bvc.priceValidity, + (SELECT count(*) + FROM base_vehicle bv + WHERE bv.modelSid = bvc.modelSid + AND bv.modelConfigSid = + bvc.configurationItemsSid + and bv.useOrg = bvc.useOrg) AS nowCarNum, + (SELECT count(*) + FROM bus_vehicle_apply_detail bvad + WHERE bvad.vehicleSid = bvc.modelSid + AND bvad.configSid = + bvc.configurationItemsSid) AS productionCarNum + FROM base_model_config bc + LEFT JOIN base_vehmodel_config bvc ON bvc.configurationItemsSid = bc.sid + ${ew.customSqlSegment} + ORDER BY + bvc.priceValidity ASC, + nowCarNum, + productionCarNum DESC + + + @@ -447,4 +462,111 @@ WHERE bmc.sid = #{configSid} AND bvm.sid = #{modelSid} + + + + + + \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigRest.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigRest.java index 640eb0895b..48c8f2153d 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigRest.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigRest.java @@ -3,6 +3,7 @@ package com.yxt.anrui.base.biz.basemodelconfig; import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.base.api.basemodelconfig.*; +import com.yxt.anrui.base.api.basevehicle.AppCurrentCarModelByPageListVo; import com.yxt.anrui.base.api.basevehiclemodel.BaseVehicleModel; import com.yxt.anrui.base.api.busvehicleorder.BusVehicleOrderDetailsVo; import com.yxt.anrui.base.biz.basevehiclemodel.BaseVehicleModelService; @@ -195,7 +196,7 @@ public class BaseModelConfigRest implements BaseModelConfigFeign { } /** - * pc端车型库配置分页列表(改) + * 车型配置分页列表(新) * * @param pagerQuery 查询条件 * @return @@ -209,6 +210,21 @@ public class BaseModelConfigRest implements BaseModelConfigFeign { return rb.success().setData(pv1); } + /** + * 更多配置分页列表(非本公司的) + * + * @param pagerQuery + * @return + */ + @Override + public ResultBean> notTheCompanyConfigPageList(PagerQuery pagerQuery) { + ResultBean> rb = ResultBean.fireFail(); + IPage page = baseModelConfigService.notTheCompanyConfigPageList(pagerQuery); + PagerVo pv = new PagerVo<>(); + PagerVo pv1 = PagerUtil.pageToVo(page, pv); + return rb.success().setData(pv1); + } + @Override public ResultBean selectDetails(String sid, String modelSid) { ResultBean rb = ResultBean.fireFail(); @@ -224,4 +240,18 @@ public class BaseModelConfigRest implements BaseModelConfigFeign { public ResultBean getAppDetailByModelConfigSid(String sid) { return null; } + + @Override + public ResultBean getModelConfigList(PagerQuery pagerQuery) { + ResultBean rb = ResultBean.fireFail(); + AppModelConfigVo vo = baseModelConfigService.getModelConfigList(pagerQuery); + return rb.success().setData(vo); + } + + @Override + public ResultBean getNowConfigList(PagerQuery pagerQuery) { + ResultBean rb = ResultBean.fireFail(); + AppModelConfigVo vo = baseModelConfigService.getModelConfigList(pagerQuery); + return rb.success().setData(vo); + } } diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigService.java index 773ce37289..c6b6e5650b 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigService.java @@ -3,12 +3,21 @@ package com.yxt.anrui.base.biz.basemodelconfig; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.base.api.basemodelconfig.*; +import com.yxt.anrui.base.api.basevehicle.AppCurrentCarByPageListQuery; +import com.yxt.anrui.base.api.basevehicle.AppCurrentCarModelByPageListVo; +import com.yxt.anrui.base.api.basevehicle.AppMoreConfigVo; +import com.yxt.anrui.base.api.basevehicle.ConfigInfo; +import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; +import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; 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.vo.PagerVo; import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; /** @@ -26,6 +35,10 @@ import java.util.List; */ @Service public class BaseModelConfigService extends MybatisBaseService { + + @Autowired + private SysOrganizationFeign sysOrganizationFeign; + /** * 车型配置信息分页列表 * @@ -250,21 +263,96 @@ public class BaseModelConfigService extends MybatisBaseService configPageList(PagerQuery pagerQuery) { + String userSid = pagerQuery.getParams().getUserSid(); + SysOrganizationVo data = sysOrganizationFeign.getUseOrgByUserSid(userSid).getData(); + if (data != null) { + pagerQuery.getParams().setUseOrg(data.getSid()); + } IPage page = PagerUtil.queryToPage(pagerQuery); QueryWrapper qw = createBuildQueryWrapper(pagerQuery.getParams()); - return baseMapper.configPageList(page, qw); + IPage iPage = baseMapper.configPageList(page, qw); + List records = iPage.getRecords(); + getConfigName(records); + return iPage; + } + + public List getConfigName(List records) { + for (BaseModelConfigListVo record : records) { + String slowMachine = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getSlowMachine()) ? (record.getSlowMachine() + "/") : ""; + + String rearViewMirror = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getRearViewMirror()) ? (record.getRearViewMirror() + "/") : ""; + + String tireSize = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getTireSize()) ? (record.getTireSize() + "/") : ""; + + String specification = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getSpecification()) ? (record.getSpecification() + "/") : ""; + + String rearAxleRatio = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getRearAxleRatio()) ? (record.getRearAxleRatio() + "/") : ""; + + String airConditioner = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getAirConditioner()) && com.yxt.common.base.utils.StringUtils.equals(record.getAirConditioner(), "有") ? ("空调" + "/") : ""; + + String hubMaterial = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getHubMaterial()) ? (record.getHubMaterial() + "/") : ""; + + String baffleModel = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getBaffleModel()) && com.yxt.common.base.utils.StringUtils.equals(record.getBaffleModel(), "有") ? ("导流罩" + "/") : ""; + + String suspension = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getSuspension()) ? (record.getSuspension() + "/") : ""; + + String seat = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getSeat()) ? (record.getSeat() + "/") : ""; + + String tireCover = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getTireCover()) && com.yxt.common.base.utils.StringUtils.equals(record.getTireCover(), "有") ? ("护轮罩" + "/") : ""; + + String saddle = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getSaddle()) ? (record.getSaddle() + "/") : ""; + + String wheelbase = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getWheelbase()) ? (record.getWheelbase() + "/") : ""; + + String bumper = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getBumper()) ? (record.getBumper() + "/") : ""; + + String configuringBao = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getConfiguringBao()) ? (record.getConfiguringBao() + "/") : ""; + + String independentSources = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getIndependentSources()) && com.yxt.common.base.utils.StringUtils.equals(record.getIndependentSources(), "有") ? ("独立热源" + "/") : ""; + + String fuelTank = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getFuelTank()) ? (record.getFuelTank() + "/") : ""; + + String multimedia = com.yxt.common.base.utils.StringUtils.isNotBlank(record.getMultimedia()) && com.yxt.common.base.utils.StringUtils.equals(record.getMultimedia(), "有") ? ("多媒体") : ""; + + String configName = slowMachine + rearViewMirror + tireSize + specification + rearAxleRatio + airConditioner + hubMaterial + + baffleModel + suspension + seat + tireCover + saddle + wheelbase + bumper + configuringBao + independentSources + fuelTank + multimedia; + record.setConfigName(configName); + } + return records; + + } + + /** + * 更多配置分页列表(非本公司的) + * + * @param pagerQuery + * @return + */ + public IPage notTheCompanyConfigPageList(PagerQuery pagerQuery) { + String userSid = pagerQuery.getParams().getUserSid(); + SysOrganizationVo data = sysOrganizationFeign.getUseOrgByUserSid(userSid).getData(); + if (data != null) { + pagerQuery.getParams().setUseOrg(data.getSid()); + } + IPage page = PagerUtil.queryToPage(pagerQuery); + QueryWrapper qw = createBuildQueryWrapper(pagerQuery.getParams()); + IPage iPage = baseMapper.notTheCompanyConfigPageList(page, qw); + for (BaseModelConfigListVo record : iPage.getRecords()) { + record.setCompany(data.getName()); + } + return iPage; } /** @@ -299,8 +387,14 @@ public class BaseModelConfigService extends MybatisBaseService pagerQuery) { + + String userSid = pagerQuery.getParams().getUserSid(); + // 1、根据业务员部门sid查询分公司 查询orgSidPath(部门路径) + SysOrganizationVo data = sysOrganizationFeign.getUseOrgByUserSid(userSid).getData(); + if (data != null) { + // 2) 根据orgSidPath(部门路径)判断分公司sid + pagerQuery.getParams().setUseOrg(data.getSid()); + } + String modelSid = pagerQuery.getParams().getModelSid(); + AppModelConfigVo vo = baseMapper.getModelConfigList(modelSid); + List modelImages = new ArrayList<>(); + modelImages.add("123123"); + modelImages.add("324"); + modelImages.add("345"); + vo.setModelImage(modelImages); + + //基础配置拼接 + List list = new ArrayList<>(); + list.add(getConfigValue("品牌", vo.getBrandName())); + list.add(getConfigValue("功能", vo.getVehicleTypeValue())); + list.add(getConfigValue("系列", vo.getProductLineValue())); + list.add(getConfigValue("驱动", vo.getDriveFormValue())); + list.add(getConfigValue("马力", vo.getPowerValue())); + list.add(getConfigValue("版本", vo.getVehicleVersionValue())); + list.add(getConfigValue("燃料", vo.getFuelTypeValue())); + list.add(getConfigValue("变速箱", vo.getGearboxTypeValue())); + list.add(getConfigValue("细分市场", vo.getMarketSegments())); + list.add(getConfigValue("系别", vo.getDepartment())); + list.add(getConfigValue("发动机型号", vo.getEngineTypeValue())); + list.add(getConfigValue("公告型号", vo.getAnnouncementModel())); + list.add(getConfigValue("规格型号", vo.getSpecifications())); + list.add(getConfigValue("货箱", vo.getPackingCase())); + list.add(getConfigValue("内部编码", vo.getInsideCode())); + vo.setConfigList(list); + //配置列表 + IPage page = PagerUtil.queryToPage(pagerQuery); + QueryWrapper qw = modelConfigQueryWrapper(pagerQuery.getParams()); + List appModelConfigListVos = baseMapper.getModelConfigPageList(page, qw); + //分公司配置列表查询 + for (AppModelConfigListVo appModelConfigListVo : appModelConfigListVos) { + String useOrg = data.getSid(); + List moreConfigVos = baseMapper.getCompanyModelList(appModelConfigListVo.getModelSid(), appModelConfigListVo.getSid(), useOrg); + for (AppMoreConfigVo moreConfigVo : moreConfigVos) { + moreConfigVo.setCompanyName(data.getName()); + } + appModelConfigListVo.setMoreConfig(moreConfigVos); + } + addDonfigName(appModelConfigListVos); + vo.setModelConfigList(appModelConfigListVos); + return vo; + } + + /** + * 拼接常用车型字段(configName) + * + * @param appModelConfigListVos + * @return + */ + public List addDonfigName(List appModelConfigListVos) { + for (AppModelConfigListVo appModelConfigListVo : appModelConfigListVos) { + String slowMachine = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getSlowMachine()) ? (appModelConfigListVo.getSlowMachine() + "/") : ""; + + String rearViewMirror = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getRearViewMirror()) ? (appModelConfigListVo.getRearViewMirror() + "/") : ""; + + String tireSize = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getTireSize()) ? (appModelConfigListVo.getTireSize() + "/") : ""; + + String specification = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getSpecification()) ? (appModelConfigListVo.getSpecification() + "/") : ""; + + String rearAxleRatio = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getRearAxleRatio()) ? (appModelConfigListVo.getRearAxleRatio() + "/") : ""; + + String airConditioner = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getAirConditioner()) && com.yxt.common.base.utils.StringUtils.equals(appModelConfigListVo.getAirConditioner(), "有") ? ("空调" + "/") : ""; + + String hubMaterial = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getHubMaterial()) ? (appModelConfigListVo.getHubMaterial() + "/") : ""; + + String baffleModel = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getBaffleModel()) && com.yxt.common.base.utils.StringUtils.equals(appModelConfigListVo.getBaffleModel(), "有") ? ("导流罩" + "/") : ""; + + String suspension = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getSuspension()) ? (appModelConfigListVo.getSuspension() + "/") : ""; + + String seat = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getSeat()) ? (appModelConfigListVo.getSeat() + "/") : ""; + + String tireCover = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getTireCover()) && com.yxt.common.base.utils.StringUtils.equals(appModelConfigListVo.getTireCover(), "有") ? ("护轮罩" + "/") : ""; + + String saddle = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getSaddle()) ? (appModelConfigListVo.getSaddle() + "/") : ""; + + String wheelbase = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getWheelbase()) ? (appModelConfigListVo.getWheelbase() + "/") : ""; + + String bumper = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getBumper()) ? (appModelConfigListVo.getBumper() + "/") : ""; + + String configuringBao = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getConfiguringBao()) ? (appModelConfigListVo.getConfiguringBao() + "/") : ""; + + String independentSources = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getIndependentSources()) && com.yxt.common.base.utils.StringUtils.equals(appModelConfigListVo.getIndependentSources(), "有") ? ("独立热源" + "/") : ""; + + String fuelTank = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getFuelTank()) ? (appModelConfigListVo.getFuelTank() + "/") : ""; + + String multimedia = com.yxt.common.base.utils.StringUtils.isNotBlank(appModelConfigListVo.getMultimedia()) && com.yxt.common.base.utils.StringUtils.equals(appModelConfigListVo.getMultimedia(), "有") ? ("多媒体") : ""; + + String configName = slowMachine + rearViewMirror + tireSize + specification + rearAxleRatio + airConditioner + hubMaterial + + baffleModel + suspension + seat + tireCover + saddle + wheelbase + bumper + configuringBao + independentSources + fuelTank + multimedia; + appModelConfigListVo.setConfigName(configName); + } + return appModelConfigListVos; + } + + + /** + * 用于车型详情页面数据key,value形式回显 + * + * @param configName + * @param configValue + * @return + */ + private ConfigInfo getConfigValue(String configName, String configValue) { + ConfigInfo configInfo = new ConfigInfo(); + configInfo.setConfigName(configName); + if (configValue == null) { + configInfo.setConfigValue(""); + } else { + configInfo.setConfigValue(configValue); + } + return configInfo; + } + + private QueryWrapper modelConfigQueryWrapper(AppModelConfigListQuery pagerQuery) { + QueryWrapper qw = new QueryWrapper<>(); + if (pagerQuery != null) { + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getName())) {//名称 + qw.like("bvc.vehicleAlias", pagerQuery.getName()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getBodyColor())) {//颜色 + qw.like("bmc.carColor", pagerQuery.getBodyColor()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getSlowMachine())) {//缓速器 + qw.eq("bmc.slowMachine", pagerQuery.getSlowMachine()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getRearViewMirror())) {//后视镜 + qw.eq("bmc.rearViewMirror", pagerQuery.getRearViewMirror()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getTireSize())) {//轮胎 + qw.eq("bmc.tireSize", pagerQuery.getTireSize()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getSpecification())) {//驾驶室 + qw.eq("bmc.specification", pagerQuery.getSpecification()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getRearAxleRatio())) {//后桥速比 + qw.eq("bmc.rearAxleRatio", pagerQuery.getRearAxleRatio()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getAirConditioner())) {//空调 + qw.eq("bmc.airConditioner", pagerQuery.getAirConditioner()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getHubMaterial())) {//轮毂材质 + qw.eq("bmc.hubMaterial", pagerQuery.getHubMaterial()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getDiversionCover())) {//导流罩 + qw.eq("bmc.baffleModel", pagerQuery.getDiversionCover()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getModelSid())) {//车型sid + qw.eq("bvc.modelSid", pagerQuery.getModelSid()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getMultiMedia())) {//多媒体 + qw.eq("bvm.multimedia", pagerQuery.getMultiMedia()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getFuelTank())) {//燃料箱 + qw.eq("bvm.fuelTank", pagerQuery.getFuelTank()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getIndependentSources())) {//独立热源 + qw.eq("bvm.independentSources", pagerQuery.getIndependentSources()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getConfiguringBao())) {//配置包 + qw.eq("bvm.configuringBao", pagerQuery.getConfiguringBao()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getBumper())) {//保险杠 + qw.eq("bvm.bumper", pagerQuery.getBumper()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getWheelbase())) {//轴距 + qw.eq("bvm.wheelbase", pagerQuery.getWheelbase()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getSaddle())) {//鞍座 + qw.eq("bvm.saddle", pagerQuery.getSaddle()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getProtectTireCover())) {//护轮罩 + qw.eq("bvm.tireCover", pagerQuery.getProtectTireCover()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getSeat())) {//座椅 + qw.eq("bvm.seat", pagerQuery.getSeat()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getSuspension())) {//悬架 + qw.eq("bvm.suspension", pagerQuery.getSuspension()); + } + if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getUseOrg())) {//分公司 + qw.eq("bvc.useOrg", pagerQuery.getUseOrg()); + } + } + return qw; + } + + public AppModelConfigListVo getCarConfigSummary(String modelSid, String configSid) { + AppModelConfigListVo vo = baseMapper.getCarConfigSummary(modelSid, configSid); + return vo; + } } \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/AppBaseVehicleRest.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/AppBaseVehicleRest.java index d28c72b1fc..e094c7d795 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/AppBaseVehicleRest.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/AppBaseVehicleRest.java @@ -1,44 +1,11 @@ package com.yxt.anrui.base.biz.basevehicle; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.yxt.anrui.base.api.basemodelconfig.BaseModelConfig; import com.yxt.anrui.base.api.basevehicle.*; -import com.yxt.anrui.base.api.basevehiclebrand.BaseVehicleBrand; -import com.yxt.anrui.base.api.basevehiclemodel.BaseVehicleModel; -import com.yxt.anrui.base.biz.basemodelconfig.BaseModelConfigService; -import com.yxt.anrui.base.biz.basevehicleappendix.BaseVehicleAppendixService; -import com.yxt.anrui.base.biz.basevehiclebrand.BaseVehicleBrandService; -import com.yxt.anrui.base.biz.basevehiclemodel.BaseVehicleModelService; -import com.yxt.common.base.config.component.FileUploadComponent; -import com.yxt.common.base.utils.ExportExcelUtils; -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 io.swagger.annotations.Api; -import org.apache.poi.hssf.usermodel.HSSFWorkbook; -import org.apache.poi.ss.usermodel.Cell; -import org.apache.poi.ss.usermodel.Row; -import org.apache.poi.ss.usermodel.Sheet; -import org.apache.poi.ss.usermodel.Workbook; -import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import org.springframework.web.multipart.MultipartFile; - -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.io.InputStream; -import java.io.UnsupportedEncodingException; -import java.net.URLEncoder; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; /** * Project: anrui-base(安瑞基础信息模块)
@@ -69,9 +36,9 @@ public class AppBaseVehicleRest implements AppBaseVehicleFeign { * @return */ @Override - public ResultBean getAppCurrentCarDetailConfigVo(String modelSid, String configSid) { - AppCurrentCarDetailCongfigVo vo = baseVehicleService.getAppCurrentCarDetailConfigVo(modelSid, configSid); - return new ResultBean().success().setData(vo); + public ResultBean getAppCurrentCarDetailConfigVo(String modelSid, String configSid, String userSid) { + AppCurrentCarDetailConfigVo vo = baseVehicleService.getAppCurrentCarDetailConfigVo(modelSid, configSid, userSid); + return new ResultBean().success().setData(vo); } diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.java index e19a2a27cc..2f3a8d6c6a 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.java @@ -174,7 +174,7 @@ public interface BaseVehicleMapper extends BaseMapper { * @param configSid * @return */ - AppCurrentCarDetailVo getAppCurrentCarDetailConfigVo(@Param("modelSid") String modelSid, @Param("configSid") String configSid); + AppCurrentCarDetailVo getAppCurrentCarDetailConfigVo(@Param("modelSid") String modelSid, @Param("configSid") String configSid, @Param("useOrg") String useOrg); /** * 现车分页列表 @@ -192,7 +192,7 @@ public interface BaseVehicleMapper extends BaseMapper { * @param configSid 配置sid * @return */ - ExiCarConfigDetailVo selectExiCarConfig(@Param("modelSid") String modelSid, @Param("configSid") String configSid); + ExiCarConfigDetailVo selectExiCarConfig(@Param("modelSid") String modelSid, @Param("configSid") String configSid, @Param("useOrg") String useOrg); BusDepositVehListVo getBusDepositVehByVehSid(@Param("sid") String sid); @@ -212,5 +212,41 @@ public interface BaseVehicleMapper extends BaseMapper { * @param qw * @return */ - IPage selExistingCarPageList(IPage page,@Param(Constants.WRAPPER) QueryWrapper qw); + IPage selExistingCarPageList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + /** + * 手机端业务-车型报价-列表 + * + * @param page + * @param qw + * @return + */ + IPage getModelList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + /** + * 手机端查询不本公司的现车,排产车 + * + * @param modelSid + * @param sid + * @return + */ + List getCompanyModelList(@Param("modelSid") String modelSid, @Param("useOrg") String useOrg); + + /** + * 手机端现车详细配置(新) + * + * @param modelSid + * @param configSid + * @return + */ + AppCurrentCarDetailConfigVo getAppModelConfig(@Param("modelSid") String modelSid, @Param("configSid") String configSid, @Param("useOrg") String useOrg); + + /** + * 手机端现车列表(新) + * + * @param page + * @param qw + * @return + */ + IPage getNowModelList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); } \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.xml b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.xml index 862820fc0b..5dd2bb4036 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.xml +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.xml @@ -351,6 +351,7 @@ LEFT JOIN base_model_config bmc ON bvc.configurationItemsSid = bmc.sid WHERE bvc.modelSid = #{modelSid} AND bvc.configurationItemsSid = #{configSid} + AND bvc.useOrg = #{useOrg} + + + + + + + + \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleRest.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleRest.java index 06b40324c9..9a9c0793cc 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleRest.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleRest.java @@ -1,6 +1,7 @@ package com.yxt.anrui.base.biz.basevehicle; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.anrui.base.api.basemodelconfig.AppCarConfigSummaryVo; import com.yxt.anrui.base.api.basemodelconfig.BaseModelConfig; import com.yxt.anrui.base.api.basevehicle.*; import com.yxt.anrui.base.api.basevehiclebrand.BaseVehicleBrand; @@ -267,9 +268,9 @@ public class BaseVehicleRest implements BaseVehicleFeign { * @return */ @Override - public ResultBean selectExiCarConfig(String modelSid, String configSid) { + public ResultBean selectExiCarConfig(String modelSid, String configSid, String userSid) { ResultBean rb = ResultBean.fireFail(); - ExiCarConfigDetailVo exiCarConfigDetailVo = baseVehicleService.selectExiCarConfig(modelSid, configSid); + ExiCarConfigDetailVo exiCarConfigDetailVo = baseVehicleService.selectExiCarConfig(modelSid, configSid, userSid); return rb.success().setData(exiCarConfigDetailVo); } @@ -284,7 +285,9 @@ public class BaseVehicleRest implements BaseVehicleFeign { public ResultBean> selExistingCarPageList(PagerQuery pagerQuery) { ResultBean> rb = ResultBean.fireFail(); IPage page = baseVehicleService.selExistingCarPageList(pagerQuery); - return null; + PagerVo pv = new PagerVo<>(); + PagerVo pv1 = PagerUtil.pageToVo(page, pv); + return rb.success().setData(pv1); } /** @@ -440,6 +443,12 @@ public class BaseVehicleRest implements BaseVehicleFeign { return obj; } + /** + * 手机端业务-车型报价-列表 + * + * @param pagerQuery + * @return + */ @Override public ResultBean> getModelList(PagerQuery pagerQuery) { ResultBean> rb = ResultBean.fireFail(); @@ -447,9 +456,31 @@ public class BaseVehicleRest implements BaseVehicleFeign { if (StringUtils.isBlank(userSid)) { return rb.setMsg("用户sid不能为空"); } - IPage page = baseVehicleService.getModelList(pagerQuery); - PagerVo pv = new PagerVo<>(); - PagerVo pv1 = PagerUtil.pageToVo(page, pv); + PagerVo page = new PagerVo<>(); + IPage iPage = baseVehicleService.getModelList(pagerQuery); + PagerVo pagerVo = PagerUtil.pageToVo(iPage, page); + return rb.success().setData(pagerVo); + } + + @Override + public ResultBean> getNowModelList(PagerQuery pagerQuery) { + ResultBean> rb = ResultBean.fireFail(); + String userSid = pagerQuery.getParams().getUserSid(); + if (StringUtils.isBlank(userSid)) { + return rb.setMsg("用户sid不能为空"); + } + IPage page = baseVehicleService.getNowModelList(pagerQuery); + PagerVo pv = new PagerVo<>(); + PagerVo pv1 = PagerUtil.pageToVo(page, pv); return rb.success().setData(pv1); } + + @Override + public ResultBean getCarConfigSummary(String modelSid, String configSid) { + ResultBean rb = ResultBean.fireFail(); + AppCarConfigSummaryVo vo = baseVehicleService.getCarConfigSummary(modelSid, configSid); + return rb.success().setData(vo); + } + + } diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleService.java index 2aa17f1319..320e0b59b6 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleService.java @@ -3,24 +3,26 @@ package com.yxt.anrui.base.biz.basevehicle; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.yxt.anrui.base.api.basemodelconfig.AppCarConfigSummaryVo; import com.yxt.anrui.base.api.basemodelconfig.AppModelConfigDetailsVo; import com.yxt.anrui.base.api.basemodelconfig.AppModelConfigListVo; +import com.yxt.anrui.base.api.basemodelszconfig.BaseModelSzconfigVo; import com.yxt.anrui.base.api.basevehicle.*; import com.yxt.anrui.base.biz.basemodelconfig.BaseModelConfigService; import com.yxt.anrui.base.biz.basemodelszconfig.BaseModelSzconfigService; import com.yxt.anrui.base.biz.basetrailer.BaseTrailerService; import com.yxt.anrui.base.biz.basevehicleappendix.BaseVehicleAppendixService; -import com.yxt.anrui.portal.api.sysorganization.SysOrgVo; import com.yxt.anrui.portal.api.sysorganization.SysOrganization; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; +import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; import com.yxt.anrui.portal.api.sysuser.SysUserFeign; -import com.yxt.anrui.portal.api.sysuser.app.AppUserOrgInfoVo; import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.StringUtils; 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; @@ -474,16 +476,20 @@ public class BaseVehicleService extends MybatisBaseService> modelInfoList = new ArrayList<>(); List list1 = new ArrayList<>(); list1.add(getConfigValueSpanSize("品牌", currentCarVo.getBrandName(), 1)); @@ -505,9 +511,9 @@ public class BaseVehicleService extends MybatisBaseService> commonConfigInfoList = new ArrayList<>(); List list3 = new ArrayList<>(); list3.add(getConfigValueSpanSize("颜色", configVo.getCarColor(), 1)); @@ -529,38 +535,10 @@ public class BaseVehicleService extends MybatisBaseService> trailerInfoList = new ArrayList<>(); - List list4 = new ArrayList<>(); - list4.add(getConfigValueSpanSize("委改方式", szConfigVo.getRefitMethod(), 1)); - list4.add(getConfigValueSpanSize("委改厂", szConfigVo.getRefitFactory(), 1)); - list4.add(getConfigValueSpanSize("上装名称", szConfigVo.getTopName(), 1)); - list4.add(getConfigValueSpanSize("上装价格", szConfigVo.getRefitPrice(), 1)); - list4.add(getConfigValueSpanSize("公共型号", szConfigVo.getAnnouncementModel(), 1)); - list4.add(getConfigValueSpanSize("外廓尺寸", szConfigVo.getOverallDimension(), 1)); - list4.add(getConfigValueSpanSize("板材材质", szConfigVo.getPlateMaterial(), 1)); - list4.add(getConfigValueSpanSize("板材厚度", szConfigVo.getPlateThickness(), 1)); - list4.add(getConfigValueSpanSize("其他配置(举升方式)", szConfigVo.getOtherConfig(), 1)); - trailerInfoList.add(list4); - configDetailVo.setTrailerInfo(trailerInfoList); - //挂车详细配置数据 - AppBaseTrailerDetailsVo trailerVo = baseTrailerService.getAppBaseTrailerDetailsVo(modelSid); - List> topInfoList = new ArrayList<>(); - List list5 = new ArrayList<>(); - list5.add(getConfigValueSpanSize("车型名称", trailerVo.getModelName(), 1)); - list5.add(getConfigValueSpanSize("车辆型号", trailerVo.getModel(), 1)); - list5.add(getConfigValueSpanSize("车辆品牌", trailerVo.getCarBrand(), 1)); - list5.add(getConfigValueSpanSize("厂商名称", trailerVo.getSettlement(), 1)); - list5.add(getConfigValueSpanSize("挂车车架号", trailerVo.getVinNo(), 1)); - list5.add(getConfigValueSpanSize("挂车价格", trailerVo.getTrailerPrince(), 1)); - list5.add(getConfigValueSpanSize("更多配置", trailerVo.getOtherConfig(), 1)); - topInfoList.add(list5); - configDetailVo.setTopInfo(topInfoList);*/ + configDetailVo.setMoreConfig(otherConfig); return configDetailVo; } @@ -649,8 +627,10 @@ public class BaseVehicleService extends MybatisBaseService selExistingCarPageList(PagerQuery pagerQuery) { + String userSid = pagerQuery.getParams().getUserSid(); + SysOrganizationVo data = sysOrganizationFeign.getUseOrgByUserSid(userSid).getData(); + if (data != null) { + pagerQuery.getParams().setUseOrg(data.getSid()); + } IPage page = PagerUtil.queryToPage(pagerQuery); QueryWrapper qw = existingCarBuildQW(pagerQuery.getParams()); return baseMapper.selExistingCarPageList(page, qw); @@ -696,38 +681,203 @@ public class BaseVehicleService extends MybatisBaseService wrapper.eq("bv.vehicleState", "0001").or().eq("bv.vehicleState", "0005")); + qw.and(wrapper -> wrapper.eq("bv.vehicleState", "0004").or().eq("bv.vehicleState", "0005")); } if (StringUtils.isNotBlank(pagerQuery.getLockedState())) { //锁定状态 qw.and(wrapper -> wrapper.eq("bv.lockedState", "0").or().isNull("bv.lockedState").or().eq("bv.lockedStateValue", "")); } + if (StringUtils.isNotBlank(pagerQuery.getUseOrg())) { // 分公司 + qw.eq("bv.useOrg", pagerQuery.getUseOrg()); + } return qw; } /** * 手机端业务-车型报价-列表 + * * @param pagerQuery * @return */ public IPage getModelList(PagerQuery pagerQuery) { String userSid = pagerQuery.getParams().getUserSid(); - // 1、根据业务员部门sid查询分公司 - // 1) 根据userSid查询orgSidPath(部门路径) - ResultBean orgInfoResultBean = sysUserFeign.getUserOrgInfoByUserSid(userSid); - if (!orgInfoResultBean.getSuccess()) { - return new Page<>(); + // 1、根据业务员部门sid查询分公司 查询orgSidPath(部门路径) + SysOrganizationVo data = sysOrganizationFeign.getUseOrgByUserSid(userSid).getData(); + if (data != null) { + // 2) 根据orgSidPath(部门路径)判断分公司sid + pagerQuery.getParams().setUseOrg(data.getSid()); + } + IPage page = PagerUtil.queryToPage(pagerQuery); + QueryWrapper qw = appExistingCarBuildQW(pagerQuery.getParams()); + IPage iPage = baseMapper.getModelList(page, qw); + // 3、 查询更多配置(其它分公司) + for (AppVehicleModelPriceVo record : iPage.getRecords()) { + record.setModelImage("http//:192.168.1.101:8111/aaa.com"); + String useOrg = data.getSid(); + List moreConfigVos = baseMapper.getCompanyModelList(record.getModelSid(), useOrg); + for (AppMoreConfigVo moreConfigVo : moreConfigVos) { + moreConfigVo.setCompanyName(data.getName()); + } + record.setMoreConfigList(moreConfigVos); } - String orgSidPath = orgInfoResultBean.getData().getOrgSidPath(); - ResultBean> listOrgResultBean = sysOrganizationFeign.getListOrg(); + return iPage; + } + private QueryWrapper appExistingCarBuildQW(AppVehicleModelPriceQuery pagerQuery) { + QueryWrapper qw = new QueryWrapper<>(); + if (StringUtils.isNotBlank(pagerQuery.getName())) { // 车型名称 + qw.like("bvm.vehicleAlias", pagerQuery.getName()); + } + if (StringUtils.isNotBlank(pagerQuery.getEmissionStandard())) { // 排放标准 + qw.eq("bvm.emissionStandard", pagerQuery.getEmissionStandard()); + } + if (StringUtils.isNotBlank(pagerQuery.getDriver())) { // 驱动 + qw.eq("bvm.driveForm", pagerQuery.getDriver()); + } + if (StringUtils.isNotBlank(pagerQuery.getGearbox())) { // 变速箱 + qw.eq("bvm.gearboxType", pagerQuery.getGearbox()); + } + if (StringUtils.isNotBlank(pagerQuery.getSeries())) { // 产品系别 + qw.eq("bvm.department", pagerQuery.getSeries()); + } + if (StringUtils.isNotBlank(pagerQuery.getVehicleFunction())) { // 功能 + qw.eq("bvm.vehicleType", pagerQuery.getVehicleFunction()); + } + if (StringUtils.isNotBlank(pagerQuery.getMarketSegments())) { // 细分市场 + qw.eq("bvm.marketSegments", pagerQuery.getMarketSegments()); + } + if (StringUtils.isNotBlank(pagerQuery.getVehicleVersion())) { // 版本 + qw.eq("bvm.vehicleVersion", pagerQuery.getVehicleVersion()); + } + if (StringUtils.isNotBlank(pagerQuery.getFuelType())) { // 燃料 + qw.eq("bvm.fuelType", pagerQuery.getFuelType()); + } + if (StringUtils.isNotBlank(pagerQuery.getHorsepower())) { // 马力 + qw.eq("bvm.power", pagerQuery.getHorsepower()); + } + if (StringUtils.isNotBlank(pagerQuery.getUseOrg())) { // 分公司 + qw.eq("bvc.useOrg", pagerQuery.getUseOrg()); + } + return qw; + } - // 2) 根据orgSidPath(部门路径)判断分公司sid - // 2、 根据分公司sid查询 车型与简述配置关联表(base_vehmodel_config)表中 车型信息 - // 3、 查询更多配置(其它分公司) + public IPage getNowModelList(PagerQuery pagerQuery) { + String userSid = pagerQuery.getParams().getUserSid(); + SysOrganizationVo data = sysOrganizationFeign.getUseOrgByUserSid(userSid).getData(); + if (data != null) { + pagerQuery.getParams().setUseOrg(data.getSid()); + } + IPage page = PagerUtil.queryToPage(pagerQuery); + QueryWrapper qw = nowModelQueryWrapper(pagerQuery.getParams()); + return baseMapper.getNowModelList(page, qw); + } + private QueryWrapper nowModelQueryWrapper(AppBaseVehicleNowModelQuery pagerQuery) { + QueryWrapper qw = new QueryWrapper<>(); + if (StringUtils.isNotBlank(pagerQuery.getName())) { // 名称 + qw.like("bvm.vehicleAlias", pagerQuery.getName()); + } + if (StringUtils.isNotBlank(pagerQuery.getEmissionStandard())) { // 排放标准 + qw.eq("bvm.emissionStandard", pagerQuery.getEmissionStandard()); + } + if (StringUtils.isNotBlank(pagerQuery.getDriver())) { // 驱动 + qw.eq("bvm.driveForm", pagerQuery.getDriver()); + } + if (StringUtils.isNotBlank(pagerQuery.getGearbox())) { // 变速箱 + qw.eq("bvm.gearboxType", pagerQuery.getGearbox()); + } + if (StringUtils.isNotBlank(pagerQuery.getSeries())) { // 产品系列 + qw.eq("bvm.department", pagerQuery.getSeries()); + } + if (StringUtils.isNotBlank(pagerQuery.getVehicleFunction())) { // 功能 + qw.eq("bvm.vehicleType", pagerQuery.getVehicleFunction()); + } + if (StringUtils.isNotBlank(pagerQuery.getMarketSegments())) { // 细分市场 + qw.eq("bvm.marketSegments", pagerQuery.getMarketSegments()); + } + if (StringUtils.isNotBlank(pagerQuery.getVehicleVersion())) { // 版本 + qw.eq("bvm.vehicleVersion", pagerQuery.getVehicleVersion()); + } + if (StringUtils.isNotBlank(pagerQuery.getFuelType())) { // 燃料 + qw.eq("bvm.fuelType", pagerQuery.getFuelType()); + } + if (StringUtils.isNotBlank(pagerQuery.getHorsepower())) { // 马力 + qw.eq("bvm.power", pagerQuery.getHorsepower()); + } + if (StringUtils.isNotBlank(pagerQuery.getBrand())) { // 品牌 + qw.eq("bvm.carBrand", pagerQuery.getBrand()); + } + if (StringUtils.isNotBlank(pagerQuery.getUseOrg())) { // 分公司 + qw.eq("bv.useOrg", pagerQuery.getUseOrg()); + } + qw.and(wrapper -> wrapper.eq("bv.vehicleState", "0004").or().eq("bv.vehicleState", "0005")); + qw.and(wrapper -> wrapper.isNull("bv.lockedStateValue").or().eq("bv.lockedStateValue", "")); + return qw; + } + + /** + * 获取车型配置总结(即 常用配置一句话描述) + * + * @param modelSid + * @param configSid + * @return + */ + public AppCarConfigSummaryVo getCarConfigSummary(String modelSid, String configSid) { + AppModelConfigListVo appModelConfigListVo = baseModelConfigService.getCarConfigSummary(modelSid, configSid); + AppCarConfigSummaryVo configSummaryVo = addConfigName(appModelConfigListVo); + return configSummaryVo; + } + + /** + * 拼接常用配置字段 + * + * @param + * @return + */ + public AppCarConfigSummaryVo addConfigName(AppModelConfigListVo appModelConfigListVo) { + AppCarConfigSummaryVo vo = new AppCarConfigSummaryVo(); + String slowMachine = StringUtils.isNotBlank(appModelConfigListVo.getSlowMachine()) ? (appModelConfigListVo.getSlowMachine() + "/") : ""; + + String rearViewMirror = StringUtils.isNotBlank(appModelConfigListVo.getRearViewMirror()) ? (appModelConfigListVo.getRearViewMirror() + "/") : ""; + String tireSize = StringUtils.isNotBlank(appModelConfigListVo.getTireSize()) ? (appModelConfigListVo.getTireSize() + "/") : ""; + String specification = StringUtils.isNotBlank(appModelConfigListVo.getSpecification()) ? (appModelConfigListVo.getSpecification() + "/") : ""; - return null; + String rearAxleRatio = StringUtils.isNotBlank(appModelConfigListVo.getRearAxleRatio()) ? (appModelConfigListVo.getRearAxleRatio() + "/") : ""; + + String airConditioner = StringUtils.isNotBlank(appModelConfigListVo.getAirConditioner()) && StringUtils.equals(appModelConfigListVo.getAirConditioner(), "有") ? ("空调" + "/") : ""; + + String hubMaterial = StringUtils.isNotBlank(appModelConfigListVo.getHubMaterial()) ? (appModelConfigListVo.getHubMaterial() + "/") : ""; + + String baffleModel = StringUtils.isNotBlank(appModelConfigListVo.getBaffleModel()) && StringUtils.equals(appModelConfigListVo.getBaffleModel(), "有") ? ("导流罩" + "/") : ""; + + String suspension = StringUtils.isNotBlank(appModelConfigListVo.getSuspension()) ? (appModelConfigListVo.getSuspension() + "/") : ""; + + String seat = StringUtils.isNotBlank(appModelConfigListVo.getSeat()) ? (appModelConfigListVo.getSeat() + "/") : ""; + + String tireCover = StringUtils.isNotBlank(appModelConfigListVo.getTireCover()) && StringUtils.equals(appModelConfigListVo.getTireCover(), "有") ? ("护轮罩" + "/") : ""; + + String saddle = StringUtils.isNotBlank(appModelConfigListVo.getSaddle()) ? (appModelConfigListVo.getSaddle() + "/") : ""; + + String wheelbase = StringUtils.isNotBlank(appModelConfigListVo.getWheelbase()) ? (appModelConfigListVo.getWheelbase() + "/") : ""; + + String bumper = StringUtils.isNotBlank(appModelConfigListVo.getBumper()) ? (appModelConfigListVo.getBumper() + "/") : ""; + + String configuringBao = StringUtils.isNotBlank(appModelConfigListVo.getConfiguringBao()) ? (appModelConfigListVo.getConfiguringBao() + "/") : ""; + + String independentSources = StringUtils.isNotBlank(appModelConfigListVo.getIndependentSources()) && StringUtils.equals(appModelConfigListVo.getIndependentSources(), "有") ? ("独立热源" + "/") : ""; + + String fuelTank = StringUtils.isNotBlank(appModelConfigListVo.getFuelTank()) ? (appModelConfigListVo.getFuelTank() + "/") : ""; + + String multimedia = StringUtils.isNotBlank(appModelConfigListVo.getMultimedia()) && StringUtils.equals(appModelConfigListVo.getMultimedia(), "有") ? ("多媒体") : ""; + + String configName = slowMachine + rearViewMirror + tireSize + specification + rearAxleRatio + airConditioner + hubMaterial + + baffleModel + suspension + seat + tireCover + saddle + wheelbase + bumper + configuringBao + independentSources + fuelTank + multimedia; + vo.setConfig(configName); + vo.setModel(appModelConfigListVo.getModel()); + vo.setMoreConfig(appModelConfigListVo.getOtherConfig()); + return vo; } + + } \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelMapper.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelMapper.java index 6cd0c1c5b3..64e68a6a80 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelMapper.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelMapper.java @@ -135,4 +135,15 @@ public interface BaseVehicleModelMapper extends BaseMapper { * @return */ IPage modelPageList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + /** + * 更多车型分页列表(非本公司的) + * + * @param page 分页 + * @param qw 查询条件 + * @return + */ + IPage notTheCompanyModelPageList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + } \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelMapper.xml b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelMapper.xml index 6dad9024d2..da5590beea 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelMapper.xml +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelMapper.xml @@ -328,15 +328,34 @@ + + \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelRest.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelRest.java index 930b7e7ea4..16dbebda6d 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelRest.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelRest.java @@ -193,6 +193,15 @@ public class BaseVehicleModelRest implements BaseVehicleModelFeign { return rb.success().setData(pv1); } + @Override + public ResultBean> notTheCompanyModelPageList(PagerQuery query) { + ResultBean> rb = ResultBean.fireFail(); + PagerVo pv = new PagerVo<>(); + IPage page = baseVehicleModelService.notTheCompanyModelPageList(query); + PagerVo pv1 = PagerUtil.pageToVo(page, pv); + return rb.success().setData(pv1); + } + // @Override // public ResultBean> selectPage(PagerQuery query) { diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelService.java index 06aed69ca8..b3ccdf4e07 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelService.java @@ -54,8 +54,6 @@ public class BaseVehicleModelService extends MybatisBaseService notTheCompanyBuildQueryWrapper(BaseVehicleModelListQuery query) { + QueryWrapper qw = new QueryWrapper<>(); + //判断不是本公司的 + if (org.apache.commons.lang3.StringUtils.isNotBlank(query.getUseOrg())) { + qw.ne("bm.useOrg", query.getUseOrg()); } - qw.groupBy("bm.sid"); return qw; } @@ -389,18 +401,57 @@ public class BaseVehicleModelService extends MybatisBaseService modelPageList(PagerQuery query) { + String userSid = query.getParams().getUserSid(); + //根据用户sid获取分公司sid + SysOrganizationVo data = sysOrganizationFeign.getUseOrgByUserSid(userSid).getData(); + if (data != null) { + String sid = data.getSid(); + if (StringUtils.isNotBlank(sid)) { + query.getParams().setUseOrg(sid); + } + } IPage page = PagerUtil.queryToPage(query); QueryWrapper qw = createBuildQueryWrapper(query.getParams()); - return baseMapper.modelPageList(page, qw); + IPage iPage = baseMapper.modelPageList(page, qw); + for (BaseVehicleModelListVo record : iPage.getRecords()) { + record.setCompany(data.getName()); + } + return iPage; + } + + + /** + * 更多车型分页列表(非本公司的) + * + * @param query + * @return + */ + public IPage notTheCompanyModelPageList(PagerQuery query) { + String userSid = query.getParams().getUserSid(); + //根据用户sid获取分公司sid + SysOrganizationVo data = sysOrganizationFeign.getUseOrgByUserSid(userSid).getData(); + if (data != null) { + String sid = data.getSid(); + if (StringUtils.isNotBlank(sid)) { + query.getParams().setUseOrg(sid); + } + } + IPage page = PagerUtil.queryToPage(query); + QueryWrapper qw = notTheCompanyBuildQueryWrapper(query.getParams()); + IPage iPage = baseMapper.notTheCompanyModelPageList(page, qw); + for (BaseVehicleModelListVo record : iPage.getRecords()) { + record.setCompany(data.getName()); + } + return iPage; } public ResultBean saveOrUpdateAll(BaseVehicleModelDto dto) { ResultBean rb = ResultBean.fireFail(); String sid = dto.getSid(); - if (StringUtils.isBlank(sid)){ + if (StringUtils.isBlank(sid)) { BaseVehicleModel entity = new BaseVehicleModel(); String sid1 = entity.getSid(); - BeanUtil.copyProperties(dto,entity); + BeanUtil.copyProperties(dto, entity); entity.setSid(sid1); boolean isSave = save(entity); if (!isSave) { diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderMapper.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderMapper.java index 689b2b4624..4438f6f02c 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderMapper.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderMapper.java @@ -30,9 +30,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Constants; -import com.yxt.anrui.base.api.basevehicle.AppCurrentCarDetailCongfigVo; import com.yxt.anrui.base.api.basevehicle.AppCurrentCarDetailVo; -import com.yxt.anrui.base.api.basevehmodelconfig.AppCommonlyUsedModelsByPageListVo; import com.yxt.anrui.base.api.busvehicleorder.*; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -81,11 +79,9 @@ public interface BusVehicleOrderMapper extends BaseMapper { * * @param page * @param qw - * @param modelSid 车型sid - * @param configSid 配置sid * @return */ - IPage pagerList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw, @Param("modelSid") String modelSid, @Param("configSid") String configSid); + IPage pagerList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); /** * 排产车型配置详情 diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderMapper.xml b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderMapper.xml index d9e5bad873..8b6c70375a 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderMapper.xml +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderMapper.xml @@ -45,21 +45,16 @@ \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderRest.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderRest.java index 4b33778302..a5a055ba4a 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderRest.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderRest.java @@ -26,7 +26,7 @@ package com.yxt.anrui.base.biz.busvehicleorder; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.yxt.anrui.base.api.basevehicle.AppCurrentCarDetailCongfigVo; +import com.yxt.anrui.base.api.basevehicle.AppCurrentCarDetailConfigVo; import com.yxt.anrui.base.api.busvehicleorder.*; import com.yxt.common.base.utils.DateUtils; import com.yxt.common.base.utils.PagerUtil; @@ -141,9 +141,9 @@ public class BusVehicleOrderRest implements BusVehicleOrderFeign { } @Override - public ResultBean getAppProductionSchedulingDetailConfigVo(String modelSid, String configSid) { - AppCurrentCarDetailCongfigVo vo = busVehicleOrderService.getAppProductionSchedulingDetailConfigVo(modelSid, configSid); - return new ResultBean().success().setData(vo); + public ResultBean getAppProductionSchedulingDetailConfigVo(String modelSid, String configSid) { + AppCurrentCarDetailConfigVo vo = busVehicleOrderService.getAppProductionSchedulingDetailConfigVo(modelSid, configSid); + return new ResultBean().success().setData(vo); } } diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderService.java index c32d309bd5..de7457aefa 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderService.java @@ -29,13 +29,15 @@ 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.base.api.basemodelconfig.AppModelConfigDetailsVo; -import com.yxt.anrui.base.api.basevehicle.AppCurrentCarDetailCongfigVo; +import com.yxt.anrui.base.api.basevehicle.AppCurrentCarDetailConfigVo; import com.yxt.anrui.base.api.basevehicle.AppCurrentCarDetailVo; import com.yxt.anrui.base.api.basevehicle.ConfigInfoSpanSize; import com.yxt.anrui.base.api.basevehmodelconfig.AppCommonlyUsedModelsByPageListQuery; import com.yxt.anrui.base.api.basevehmodelconfig.AppCommonlyUsedModelsByPageListVo; import com.yxt.anrui.base.api.busvehicleorder.*; import com.yxt.anrui.base.biz.basemodelconfig.BaseModelConfigService; +import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; +import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.DateUtils; @@ -74,6 +76,8 @@ public class BusVehicleOrderService extends MybatisBaseService pageList(PagerQuery pq) { + SysOrganizationVo data = sysOrganizationFeign.getUseOrgByUserSid(pq.getParams().getUserSid()).getData(); + if (data != null) { + pq.getParams().setUseOrg(data.getSid()); + } IPage page = PagerUtil.queryToPage(pq); QueryWrapper qw = buildQueryWrapper(pq.getParams()); - return baseMapper.pagerList(page, qw, pq.getParams().getConfigSid(), pq.getParams().getModelSid()); + return baseMapper.pagerList(page, qw); } /** @@ -264,6 +274,15 @@ public class BusVehicleOrderService extends MybatisBaseService= date_format('" + orderStartDate + "','%Y-%m-%d')"). @@ -289,8 +308,8 @@ public class BusVehicleOrderService extends MybatisBaseService> modelInfoList = new ArrayList<>(); @@ -314,7 +333,7 @@ public class BusVehicleOrderService extends MybatisBaseService> commonConfigInfoList = new ArrayList<>(); @@ -338,10 +357,10 @@ public class BusVehicleOrderService extends MybatisBaseService> getListOrg(); + @ApiOperation("根据业务员sid获取到分公司") + @ResponseBody + @GetMapping("/getUseOrgByUserSid") + ResultBean getUseOrgByUserSid(@RequestParam("userSid") String userSid); + @ApiOperation("根据部门sid查询组织信息") @ResponseBody @GetMapping("/selectBySid") diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysorganization/SysOrganizationFeignFallback.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysorganization/SysOrganizationFeignFallback.java index d7408a614b..fed6b6e7c8 100644 --- a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysorganization/SysOrganizationFeignFallback.java +++ b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysorganization/SysOrganizationFeignFallback.java @@ -1,5 +1,6 @@ package com.yxt.anrui.portal.api.sysorganization; +import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgVo; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -23,91 +24,96 @@ import java.util.List; @Component public class SysOrganizationFeignFallback implements SysOrganizationFeign { - @Override - public ResultBean> listPage(PagerQuery pq){ - ResultBean rb = ResultBean.fireFail(); - return rb.setMsg("接口anrui_portal/sysorganization/listPage无法访问"); - } - - @Override - public ResultBean> listAll(SysOrganizationQuery query){ - ResultBean rb = ResultBean.fireFail(); - return rb.setMsg("接口anrui_portal/sysorganization/listAll无法访问"); - } - - @Override - public ResultBean> list(){ - ResultBean rb = ResultBean.fireFail(); - return rb.setMsg("接口anrui_portal/sysorganization/list无法访问"); - } - - @Override - public ResultBean selectFirstOrgList() { - ResultBean rb = ResultBean.fireFail(); - return rb.setMsg("接口anrui_portal/sysorganization/selectFirstOrgList无法访问"); - } - - @Override - public ResultBean selectChildrenListBySid(String sid) { - ResultBean rb = ResultBean.fireFail(); - return rb.setMsg("接口anrui_portal/sysorganization/selectChildrenListBySid无法访问"); - } - - @Override - public ResultBean save(SysOrganizationDto dto){ - return ResultBean.fireFail().setMsg("接口anrui_portal/sysorganization/save无法访问"); - } - - @Override - public ResultBean update(SysOrganizationDto dto,String sid){ - return ResultBean.fireFail().setMsg("接口anrui_portal/sysorganization/update无法访问"); - } - - @Override - public ResultBean del(String ids){ - return ResultBean.fireFail().setMsg("接口anrui_portal/sysorganization/del无法访问"); - } - - @Override - public ResultBean delBySid(String sid) { - return ResultBean.fireFail().setMsg("接口anrui_portal/sysorganization/del无法访问"); - - } - - @Override - public ResultBean fetch(String id){ - ResultBean rb = ResultBean.fireFail(); - return rb.setMsg("接口anrui_portal/sysorganization/fetch无法访问"); - } - - @Override - public ResultBean fetchBySid(String sid) { - ResultBean rb = ResultBean.fireFail(); - return rb.setMsg("接口anrui_portal/sysorganization/fetchBySid无法访问"); - } - - @Override - public ResultBean selectAppOrganization(String sid) { - return ResultBean.fireFail().setMsg("接口anrui_portal/sysorganization/selectAppOrganization无法访问"); - } - - @Override - public ResultBean> selectListOrg() { - return null; - } - - @Override - public ResultBean> getListOrg() { - return null; - } - - @Override - public ResultBean selectBySid(String sid) { - return null; - } - - @Override - public ResultBean> selectListOne() { - return null; - } + @Override + public ResultBean> listPage(PagerQuery pq) { + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口anrui_portal/sysorganization/listPage无法访问"); + } + + @Override + public ResultBean> listAll(SysOrganizationQuery query) { + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口anrui_portal/sysorganization/listAll无法访问"); + } + + @Override + public ResultBean> list() { + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口anrui_portal/sysorganization/list无法访问"); + } + + @Override + public ResultBean selectFirstOrgList() { + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口anrui_portal/sysorganization/selectFirstOrgList无法访问"); + } + + @Override + public ResultBean selectChildrenListBySid(String sid) { + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口anrui_portal/sysorganization/selectChildrenListBySid无法访问"); + } + + @Override + public ResultBean save(SysOrganizationDto dto) { + return ResultBean.fireFail().setMsg("接口anrui_portal/sysorganization/save无法访问"); + } + + @Override + public ResultBean update(SysOrganizationDto dto, String sid) { + return ResultBean.fireFail().setMsg("接口anrui_portal/sysorganization/update无法访问"); + } + + @Override + public ResultBean del(String ids) { + return ResultBean.fireFail().setMsg("接口anrui_portal/sysorganization/del无法访问"); + } + + @Override + public ResultBean delBySid(String sid) { + return ResultBean.fireFail().setMsg("接口anrui_portal/sysorganization/del无法访问"); + + } + + @Override + public ResultBean fetch(String id) { + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口anrui_portal/sysorganization/fetch无法访问"); + } + + @Override + public ResultBean fetchBySid(String sid) { + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口anrui_portal/sysorganization/fetchBySid无法访问"); + } + + @Override + public ResultBean selectAppOrganization(String sid) { + return ResultBean.fireFail().setMsg("接口anrui_portal/sysorganization/selectAppOrganization无法访问"); + } + + @Override + public ResultBean> selectListOrg() { + return null; + } + + @Override + public ResultBean> getListOrg() { + return null; + } + + @Override + public ResultBean getUseOrgByUserSid(String staffSid) { + return null; + } + + @Override + public ResultBean selectBySid(String sid) { + return null; + } + + @Override + public ResultBean> selectListOne() { + return null; + } } \ No newline at end of file diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationMapper.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationMapper.java index 1482605dc0..390d215c12 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationMapper.java +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationMapper.java @@ -5,6 +5,7 @@ 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.portal.api.sysorganization.*; +import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgVo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; @@ -75,4 +76,20 @@ public interface SysOrganizationMapper extends BaseMapper { SysOrganization selectByOrgCode(String substring); List selectChildernList(String sid); + + /** + * 根据业务员sid获取到分公司 + * + * @param staffSid 业务员sid + * @return + */ + SysStaffOrgVo getUseOrgByUserSid(@Param("staffSid") String staffSid); + + /** + * 根据sid判断是否是分公司并获取公司名称 + * + * @param sid + * @return + */ + SysOrganizationVo getUseOrgBySid(@Param("sid")String sid); } \ No newline at end of file diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationMapper.xml b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationMapper.xml index a9a19ed4db..1b46ca96c0 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationMapper.xml +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationMapper.xml @@ -48,8 +48,9 @@ @@ -87,7 +88,7 @@ @@ -106,12 +107,11 @@ @@ -123,8 +123,21 @@ + + + + \ No newline at end of file diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationRest.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationRest.java index 8bf96aaaa5..df3cd68969 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationRest.java +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationRest.java @@ -78,15 +78,15 @@ public class SysOrganizationRest implements SysOrganizationFeign { return rb.success(); } - @Override - public ResultBean> selectFirstOrgList() { - return new ResultBean>().success().setData(sysOrganizationService.selectFirstOrgList()); - } + @Override + public ResultBean> selectFirstOrgList() { + return new ResultBean>().success().setData(sysOrganizationService.selectFirstOrgList()); + } - @Override - public ResultBean> selectChildrenListBySid(String sid) { - return new ResultBean>().success().setData(sysOrganizationService.selectChildrenListBySid(sid)); - } + @Override + public ResultBean> selectChildrenListBySid(String sid) { + return new ResultBean>().success().setData(sysOrganizationService.selectChildrenListBySid(sid)); + } @Override public ResultBean update(SysOrganizationDto dto, String sid) { @@ -193,6 +193,13 @@ public class SysOrganizationRest implements SysOrganizationFeign { return rb.success().setData(menuTree2VoList); } + @Override + public ResultBean getUseOrgByUserSid(String userSid) { + ResultBean rb = ResultBean.fireFail(); + SysOrganizationVo vo = sysOrganizationService.getUseOrgByUserSid(userSid); + return rb.success().setData(vo); + } + @Override public ResultBean selectBySid(String sid) { SysOrganization sysOrganization = sysOrganizationService.fetchBySid(sid); diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationService.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationService.java index b7a1b44b3e..7ad6845b78 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationService.java +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationService.java @@ -5,7 +5,11 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.portal.api.sysorganization.*; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; +import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgVo; +import com.yxt.anrui.portal.api.sysuser.SysUser; +import com.yxt.anrui.portal.api.sysuser.SysUserFeign; import com.yxt.anrui.portal.biz.sysstafforg.SysStaffOrgService; +import com.yxt.anrui.portal.biz.sysuser.SysUserService; import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.PagerUtil; @@ -35,6 +39,8 @@ public class SysOrganizationService extends MybatisBaseService listPage(PagerQuery pq) { @@ -328,4 +334,38 @@ public class SysOrganizationService extends MybatisBaseService detailsList; + + +} diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleactualsales/ScmVehicleActualSalesFeign.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleactualsales/ScmVehicleActualSalesFeign.java new file mode 100644 index 0000000000..ead43c460e --- /dev/null +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleactualsales/ScmVehicleActualSalesFeign.java @@ -0,0 +1,40 @@ +package com.yxt.anrui.scm.api.scmvehicleactualsales; + +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.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.ResponseBody; + +/** + * @Author dimengzhe + * @Date 2022/4/8 11:57 + * @Description + */ +@FeignClient( + contextId = "anrui-scm-ScmVehicleActualSales", + name = "anrui-scm", + path = "v1/scmvehicleactualsales", + fallback = ScmVehicleActualSalesFeignFallback.class) +public interface ScmVehicleActualSalesFeign { + + @ApiOperation("分页列表") + @PostMapping("/listPage") + @ResponseBody + ResultBean> listPage(@RequestBody PagerQuery pagerQuery); + + @ApiOperation("新增或修改") + @PostMapping("/saveOrUpdate") + @ResponseBody + ResultBean saveOrUpdate(@RequestBody ScmVehicleActualSalesDto scmVehicleActualSalesDto); + + @ApiOperation("提交") + @PostMapping("/submitVehicleSales") + @ResponseBody + ResultBean submitVehicleSales(@RequestBody ScmVehicleActualSalesDto scmVehicleActualSalesDto); + + +} diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleactualsales/ScmVehicleActualSalesFeignFallback.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleactualsales/ScmVehicleActualSalesFeignFallback.java new file mode 100644 index 0000000000..42699cae0d --- /dev/null +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleactualsales/ScmVehicleActualSalesFeignFallback.java @@ -0,0 +1,29 @@ +package com.yxt.anrui.scm.api.scmvehicleactualsales; + +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; + +/** + * @Author dimengzhe + * @Date 2022/4/8 11:59 + * @Description + */ +@Component +public class ScmVehicleActualSalesFeignFallback implements ScmVehicleActualSalesFeign{ + @Override + public ResultBean> listPage(PagerQuery pagerQuery) { + return null; + } + + @Override + public ResultBean saveOrUpdate(ScmVehicleActualSalesDto scmVehicleActualSalesDto) { + return null; + } + + @Override + public ResultBean submitVehicleSales(ScmVehicleActualSalesDto scmVehicleActualSalesDto) { + return null; + } +} diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleactualsales/ScmVehicleActualSalesQuery.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleactualsales/ScmVehicleActualSalesQuery.java new file mode 100644 index 0000000000..26b03b8dc8 --- /dev/null +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleactualsales/ScmVehicleActualSalesQuery.java @@ -0,0 +1,23 @@ +package com.yxt.anrui.scm.api.scmvehicleactualsales; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Author dimengzhe + * @Date 2022/4/8 17:11 + * @Description + */ +@Data +public class ScmVehicleActualSalesQuery implements Query { + private static final long serialVersionUID = 970443773657128722L; + @ApiModelProperty(value = "申请日期开始时间") + private String applyStartDate; + @ApiModelProperty(value = "申请日期结束时间") + private String applyEndDate; + @ApiModelProperty(value = "状态") + private String nodeState; + @ApiModelProperty(value = "车架号") + private String vinNo; +} diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleactualsales/ScmVehicleActualSalesVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleactualsales/ScmVehicleActualSalesVo.java new file mode 100644 index 0000000000..ed9dc2a178 --- /dev/null +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleactualsales/ScmVehicleActualSalesVo.java @@ -0,0 +1,33 @@ +package com.yxt.anrui.scm.api.scmvehicleactualsales; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Author dimengzhe + * @Date 2022/4/8 17:02 + * @Description + */ +@Data +public class ScmVehicleActualSalesVo implements Vo { + private static final long serialVersionUID = -8518464944096578672L; + + @ApiModelProperty(value = "sid") + private String sid; + @ApiModelProperty(value = "节点状态") + private String nodeState; + @ApiModelProperty(value = "申请人") + private String applicationName; + @ApiModelProperty(value = "申请日期") + private String createTime; + @ApiModelProperty(value = "买断原因") + private String reason; + @ApiModelProperty(value = "台数") + private Integer num; + + @ApiModelProperty(value = "流程状态") //若不为0则办理不能点击 + private Integer flowState; + + +} diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclereturn/ScmVehicleReturnDto.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclereturn/ScmVehicleReturnDto.java index e74b59f74e..522b5cfd01 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclereturn/ScmVehicleReturnDto.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclereturn/ScmVehicleReturnDto.java @@ -1,5 +1,6 @@ package com.yxt.anrui.scm.api.scmvehiclereturn; +import com.fasterxml.jackson.annotation.JsonFormat; import com.yxt.anrui.scm.api.scmvehiclereturndetails.ScmVehicleReturnDetailsDto; import com.yxt.common.core.dto.Dto; import io.swagger.annotations.ApiModelProperty; @@ -23,6 +24,7 @@ public class ScmVehicleReturnDto implements Dto { @ApiModelProperty(value = "申请人", required = true) private String name; @ApiModelProperty(value = "申请日期", required = true) + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") private Date createTime; @ApiModelProperty(value = "退库原因", required = true) private String reason; diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualdetails/ScmVehicleActualDetailsMapper.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualdetails/ScmVehicleActualDetailsMapper.java new file mode 100644 index 0000000000..5b9b4117ae --- /dev/null +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualdetails/ScmVehicleActualDetailsMapper.java @@ -0,0 +1,20 @@ +package com.yxt.anrui.scm.biz.scmvehicleactualdetails; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.yxt.anrui.scm.api.scmvehicleactualdetails.ScmVehicleActualDetails; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * @Author dimengzhe + * @Date 2022/4/8 18:12 + * @Description + */ +@Mapper +public interface ScmVehicleActualDetailsMapper extends BaseMapper { + + List selectBySaleSid(String sid); + + int deleteBySaleSid(String sid); +} diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualdetails/ScmVehicleActualDetailsMapper.xml b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualdetails/ScmVehicleActualDetailsMapper.xml new file mode 100644 index 0000000000..e734d383f2 --- /dev/null +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualdetails/ScmVehicleActualDetailsMapper.xml @@ -0,0 +1,15 @@ + + + + + + + delete + from scm_vehicle_actual_details + where vehicleActualSid = #{sid} + + \ No newline at end of file diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualdetails/ScmVehicleActualDetailsRest.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualdetails/ScmVehicleActualDetailsRest.java new file mode 100644 index 0000000000..a2d1335e82 --- /dev/null +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualdetails/ScmVehicleActualDetailsRest.java @@ -0,0 +1,17 @@ +package com.yxt.anrui.scm.biz.scmvehicleactualdetails; + +import com.yxt.anrui.scm.api.scmvehicleactualdetails.ScmVehicleActualDetailsFeign; +import io.swagger.annotations.Api; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; + +/** + * @Author dimengzhe + * @Date 2022/4/8 18:09 + * @Description + */ +@Api(tags = "车辆未售买断管理") +@RequestMapping("v1/scmvehicleactualsales") +@Controller +public class ScmVehicleActualDetailsRest implements ScmVehicleActualDetailsFeign { +} diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualdetails/ScmVehicleActualDetailsService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualdetails/ScmVehicleActualDetailsService.java new file mode 100644 index 0000000000..ef27f436e8 --- /dev/null +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualdetails/ScmVehicleActualDetailsService.java @@ -0,0 +1,58 @@ +package com.yxt.anrui.scm.biz.scmvehicleactualdetails; + +import com.yxt.anrui.scm.api.scmvehicleactualdetails.ScmVehicleActualDetails; +import com.yxt.anrui.scm.api.scmvehicleactualdetails.ScmVehicleActualDetailsDto; +import com.yxt.common.base.service.MybatisBaseService; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + * @Author dimengzhe + * @Date 2022/4/8 18:11 + * @Description + */ +@Service +public class ScmVehicleActualDetailsService extends MybatisBaseService { + + /** + * 新增 + * + * @param detailsList + * @param saleSid + */ + @Transactional(rollbackFor = Exception.class) + public void saveDetails(List detailsList, String saleSid) { + ScmVehicleActualDetails scmVehicleActualDetails = null; + for (ScmVehicleActualDetailsDto dto : detailsList) { + scmVehicleActualDetails = new ScmVehicleActualDetails(); + BeanUtils.copyProperties(dto, scmVehicleActualDetails, scmVehicleActualDetails.getSid()); + scmVehicleActualDetails.setVehicleActualSid(saleSid); + save(scmVehicleActualDetails); + } + } + + /** + * 查询 + * + * @param sid + * @return + */ + public List selectBySaleSid(String sid) { + return baseMapper.selectBySaleSid(sid); + } + + /** + * 删除原车辆退库详细并新增 + * + * @param sid 车辆退库sid + * @param detailsList 退库车辆详细 + */ + @Transactional(rollbackFor = Exception.class) + public void updateListByReturnSid(String sid, List detailsList) { + baseMapper.deleteBySaleSid(sid); + saveDetails(detailsList, sid); + } +} diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualsales/ScmVehicleActualSalesMapper.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualsales/ScmVehicleActualSalesMapper.java new file mode 100644 index 0000000000..43cb19bee0 --- /dev/null +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualsales/ScmVehicleActualSalesMapper.java @@ -0,0 +1,27 @@ +package com.yxt.anrui.scm.biz.scmvehicleactualsales; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.yxt.anrui.scm.api.scmvehicleactualsales.ScmVehicleActualSales; +import com.yxt.anrui.scm.api.scmvehicleactualsales.ScmVehicleActualSalesVo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +/** + * @Author dimengzhe + * @Date 2022/4/8 17:43 + * @Description + */ +@Mapper +public interface ScmVehicleActualSalesMapper extends BaseMapper { + /** + * 分页列表 + * + * @param page 分页 + * @param qw 查询条件 + * @return + */ + IPage pagerList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); +} diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualsales/ScmVehicleActualSalesMapper.xml b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualsales/ScmVehicleActualSalesMapper.xml new file mode 100644 index 0000000000..3e1e15f388 --- /dev/null +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualsales/ScmVehicleActualSalesMapper.xml @@ -0,0 +1,13 @@ + + + + + \ No newline at end of file diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualsales/ScmVehicleActualSalesRest.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualsales/ScmVehicleActualSalesRest.java new file mode 100644 index 0000000000..82e09cef9e --- /dev/null +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualsales/ScmVehicleActualSalesRest.java @@ -0,0 +1,45 @@ +package com.yxt.anrui.scm.biz.scmvehicleactualsales; + +import com.yxt.anrui.scm.api.scmvehicleactualsales.ScmVehicleActualSalesDto; +import com.yxt.anrui.scm.api.scmvehicleactualsales.ScmVehicleActualSalesFeign; +import com.yxt.anrui.scm.api.scmvehicleactualsales.ScmVehicleActualSalesQuery; +import com.yxt.anrui.scm.api.scmvehicleactualsales.ScmVehicleActualSalesVo; +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.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; + +/** + * @Author dimengzhe + * @Date 2022/4/8 15:05 + * @Description + */ +@Api(tags = "车辆未售买断管理") +@RequestMapping("v1/scmvehicleactualsales") +@Controller +public class ScmVehicleActualSalesRest implements ScmVehicleActualSalesFeign { + + @Autowired + private ScmVehicleActualSalesService scmVehicleActualSalesService; + + + @Override + public ResultBean> listPage(PagerQuery pagerQuery) { + ResultBean> rb = ResultBean.fireFail(); + PagerVo pv = scmVehicleActualSalesService.listPage(pagerQuery); + return rb.success().setData(pv); + } + + @Override + public ResultBean saveOrUpdate(ScmVehicleActualSalesDto scmVehicleActualSalesDto) { + return scmVehicleActualSalesService.saveOrUpdateVehicleSales(scmVehicleActualSalesDto); + } + + @Override + public ResultBean submitVehicleSales(ScmVehicleActualSalesDto scmVehicleActualSalesDto) { + return scmVehicleActualSalesService.submitVehicleSales(scmVehicleActualSalesDto); + } +} diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualsales/ScmVehicleActualSalesService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualsales/ScmVehicleActualSalesService.java new file mode 100644 index 0000000000..136159a3c5 --- /dev/null +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleactualsales/ScmVehicleActualSalesService.java @@ -0,0 +1,155 @@ +package com.yxt.anrui.scm.biz.scmvehicleactualsales; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkFeign; +import com.yxt.anrui.flowable.api.sysformlink.SysFormStateVo; +import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; +import com.yxt.anrui.portal.api.sysuser.SysUserFeign; +import com.yxt.anrui.scm.api.scmvehicleactualdetails.ScmVehicleActualDetails; +import com.yxt.anrui.scm.api.scmvehicleactualsales.ScmVehicleActualSales; +import com.yxt.anrui.scm.api.scmvehicleactualsales.ScmVehicleActualSalesDto; +import com.yxt.anrui.scm.api.scmvehicleactualsales.ScmVehicleActualSalesQuery; +import com.yxt.anrui.scm.api.scmvehicleactualsales.ScmVehicleActualSalesVo; +import com.yxt.anrui.scm.biz.scmvehicleactualdetails.ScmVehicleActualDetailsService; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.PagerUtil; +import com.yxt.common.base.utils.StringUtils; +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.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + * @Author dimengzhe + * @Date 2022/4/8 17:42 + * @Description + */ +@Service +public class ScmVehicleActualSalesService extends MybatisBaseService { + + @Autowired + private SysFormLinkFeign sysFormLinkFeign; + @Autowired + private ScmVehicleActualDetailsService scmVehicleActualDetailsService; + + @Autowired + private SysUserFeign sysUserFeign; + @Autowired + private SysStaffOrgFeign sysStaffOrgFeign; + + /** + * 分页列表 + * + * @param pagerQuery 查询条件 + * @return + */ + public PagerVo listPage(PagerQuery pagerQuery) { + IPage page = pagerList(pagerQuery); + PagerVo pv = new PagerVo<>(); + PagerVo pv1 = PagerUtil.pageToVo(page, pv); + List voList = pv1.getRecords(); + if (voList.size() > 0) { + for (int i = 0; i < voList.size(); i++) { + ResultBean resultBean = sysFormLinkFeign.selectStateByBusinessSid(voList.get(i).getSid()); + if (resultBean.getSuccess() && resultBean.getData() != null) { + SysFormStateVo formState = resultBean.getData(); + voList.get(i).setNodeState(formState.getNodeState()); + voList.get(i).setFlowState(formState.getFlowState()); + } else { + voList.get(i).setFlowState(0); + } + } + } + return pv1; + } + + private IPage pagerList(PagerQuery pagerQuery) { + IPage page = PagerUtil.queryToPage(pagerQuery); + QueryWrapper qw = buildQueryWrapper(pagerQuery.getParams()); + return baseMapper.pagerList(page, qw); + } + + private QueryWrapper buildQueryWrapper(ScmVehicleActualSalesQuery params) { + QueryWrapper qw = new QueryWrapper<>(); + if (params != null) { + //申请日期 + //状态 + //车架号 + } + return qw; + } + + @Transactional(rollbackFor = Exception.class) + public ResultBean saveOrUpdateVehicleSales(ScmVehicleActualSalesDto scmVehicleActualSalesDto) { + ResultBean rb = ResultBean.fireFail(); + String sid = scmVehicleActualSalesDto.getSid(); + if (StringUtils.isBlank(sid)) { + //新增 + ScmVehicleActualSales scmVehicleActualSales = new ScmVehicleActualSales(); + BeanUtils.copyProperties(scmVehicleActualSalesDto, scmVehicleActualSales, scmVehicleActualSales.getSid()); + boolean isSave = save(scmVehicleActualSales); + if (!isSave) { + return rb.setMsg("保存失败"); + } else { + sid = scmVehicleActualSales.getSid(); + if (scmVehicleActualSalesDto.getDetailsList().size() > 0) { + scmVehicleActualDetailsService.saveDetails(scmVehicleActualSalesDto.getDetailsList(), scmVehicleActualSales.getSid()); + } + } + } else { + //编辑 + //验证数据是否可更改 + if (checkCouldChange(sid)) { + return rb.setMsg("该条信息不可更改"); + } + int i = updateBySid(scmVehicleActualSalesDto, sid); + //查询details中是否有关于sales的该条sid数据 + List scmVehicleActualDetailsList = scmVehicleActualDetailsService.selectBySaleSid(sid); + if (scmVehicleActualDetailsList.size() > 0) { + scmVehicleActualDetailsService.updateListByReturnSid(sid, scmVehicleActualSalesDto.getDetailsList()); + } + } + return rb.success().setData(sid); + } + + /** + * 判断是否可删除 + * + * @param sid sid + * @return + */ + private boolean checkCouldChange(String sid) { + ScmVehicleActualSales scmVehicleActualSales = fetchBySid(sid); + // 判断是否可以更改(是否走了流程,更改了状态) + if (StringUtils.isNotBlank(scmVehicleActualSales.getNodeState())) { + return true; + } + return false; + } + + /** + * 查询用户是否设置了部门 + * + * @param userSid 用户sid + * @return + */ + private String checkUserOrg(String userSid) { + String orgSid = ""; + String staffSid = sysUserFeign.selectBySid(userSid).getData().getStaffSid(); + ResultBean resultBean = sysStaffOrgFeign.getSysStaffOrgSidListByStaffSid(staffSid); + if (resultBean.getSuccess()) { + orgSid = resultBean.getData(); + } + return orgSid; + } + + public ResultBean submitVehicleSales(ScmVehicleActualSalesDto scmVehicleActualSalesDto) { + return null; + } +} diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclereturn/ScmVehicleReturnMapper.xml b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclereturn/ScmVehicleReturnMapper.xml index 747dfa0b5a..9777b25d69 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclereturn/ScmVehicleReturnMapper.xml +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclereturn/ScmVehicleReturnMapper.xml @@ -9,6 +9,7 @@ sr.reason, (select count(*) from scm_vehicle_return_details sd where sd.vehicleOutSid = sr.sid) as num from scm_vehicle_return sr + ${ew.customSqlSegment} diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclereturn/ScmVehicleReturnRest.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclereturn/ScmVehicleReturnRest.java index 909c5db026..caac17a4c6 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclereturn/ScmVehicleReturnRest.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclereturn/ScmVehicleReturnRest.java @@ -7,13 +7,19 @@ import com.yxt.anrui.scm.api.scmvehiclereturn.ScmVehicleReturnVo; 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.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; /** * @Author dimengzhe * @Date 2022/4/6 17:45 * @Description */ +@Api(tags = "车辆采购退库管理") +@RequestMapping("v1/scmvehiclereturn") +@Controller public class ScmVehicleReturnRest implements ScmVehicleReturnFeign { @Autowired diff --git a/anrui-scm/anrui-scm-ui/src/api/flow/todo.js b/anrui-scm/anrui-scm-ui/src/api/flow/todo.js new file mode 100644 index 0000000000..8f193deb4a --- /dev/null +++ b/anrui-scm/anrui-scm-ui/src/api/flow/todo.js @@ -0,0 +1,50 @@ +import request from '@/utils/request' + +// 代办任务同意办理 +export function businessAgree(params) { + return request({ + url: '/portal/v1/flow/complete', + method: 'post', + data: params, + headers: { + 'Content-Type': 'application/json' + } + }) +} + +// 代办任务驳回任务 +export function rejectTask(params) { + return request({ + url: '/portal/v1/flow/reject/' + params.businessSid, + method: 'post', + data: params, + headers: { + 'Content-Type': 'application/json' + } + }) +} + +// 代办任务终止任务 +export function breakTask(params) { + return request({ + url: '/portal/v1/flow/breakProcess/' + params.businessSid, + method: 'post', + data: params, + headers: { + 'Content-Type': 'application/json' + } + }) +} + +// 代办任务撤回任务 +export function revokeTask(params) { + return request({ + url: '/portal/v1/flow/revokeProcess/' + params.userSid + '/' + params.businessSid, + method: 'post', + data: params, + headers: { + 'Content-Type': 'application/json' + } + }) +} + diff --git a/anrui-scm/anrui-scm-ui/src/api/ruzhang/scmapplyinbound.js b/anrui-scm/anrui-scm-ui/src/api/ruzhang/scmapplyinbound.js new file mode 100644 index 0000000000..c47792207b --- /dev/null +++ b/anrui-scm/anrui-scm-ui/src/api/ruzhang/scmapplyinbound.js @@ -0,0 +1,47 @@ +import request from '@/utils/request' + +export default { + // 查询分页列表 + listPage: function(params) { + return request({ + url: '/scm/v1/scmapplyinbound/listPage', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 保存修改记录 + saveOrUpdate: function(params) { + return request({ + url: '/scm/v1/scmapplyinbound/saveOrUpdateApplyInBound', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 提交流程 + submitVehicleApply: function(params) { + return request({ + url: '/base/v1/busvehicleapply/submitVehicleApply', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 通过sid删除一条或多条记录 + delBySids: function(params) { + return request({ + url: '/base/v1/busvehicleapply/delBySids', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 通过sid查询一条记录 + fetchBySid: function(sid) { + return request({ + url: '/scm/v1/scmapplyinbound/fetchSid/' + sid, + method: 'get' + }) + } +} diff --git a/anrui-scm/anrui-scm-ui/src/api/supplychain/busvehicleapply.js b/anrui-scm/anrui-scm-ui/src/api/supplychain/busvehicleapply.js index b285cfce28..13a5af1a68 100644 --- a/anrui-scm/anrui-scm-ui/src/api/supplychain/busvehicleapply.js +++ b/anrui-scm/anrui-scm-ui/src/api/supplychain/busvehicleapply.js @@ -1,6 +1,5 @@ import request from '@/utils/request' // import qs from 'qs' -// 其他入库单 export default { // 查询分页列表 @@ -12,6 +11,15 @@ export default { headers: { 'Content-Type': 'application/json' } }) }, + // 查询车型和常用配置列表 + configurationlistPage: function(parmas) { + return request({ + url: '/base/basevehmodelconfig/listPage', + method: 'post', + data: parmas, + headers: { 'Content-Type': 'application/json' } + }) + }, // 保存新增记录 saveAdd: function(params) { return request({ @@ -22,9 +30,18 @@ export default { }) }, // 保存修改记录 - saveEdit: function(params, sid) { + saveEdit: function(params) { + return request({ + url: '/base/v1/busvehicleapply/update', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 提交流程 + submitVehicleApply: function(params) { return request({ - url: '/base/v1/busvehicleapply/update/' + sid, + url: '/base/v1/busvehicleapply/submitVehicleApply', method: 'post', data: params, headers: { 'Content-Type': 'application/json' } @@ -46,15 +63,6 @@ export default { method: 'get' }) }, - - // // 根据单据编号查看详情 - // fetchByBillNo: function(sid) { - // return request({ - // url: '/base/busvehicleapply/fetchBySid/' + sid, - // method: 'get' - // }) - // }, - // 获取下拉列表(数据字典) pullDown: function(data) { return request({ @@ -72,16 +80,6 @@ export default { params: data }) }, - - // 获取下拉列表(简述配置) - getList: function(data) { - return request({ - url: '/base/v1/basemodelconfig/getListByVeSid', - method: 'get', - params: data - }) - }, - // 提交 doSubmit: function(params) { return request({ diff --git a/anrui-scm/anrui-scm-ui/src/router/modules/codemenu.js b/anrui-scm/anrui-scm-ui/src/router/modules/codemenu.js index 14aafd0160..31d920d436 100644 --- a/anrui-scm/anrui-scm-ui/src/router/modules/codemenu.js +++ b/anrui-scm/anrui-scm-ui/src/router/modules/codemenu.js @@ -243,10 +243,40 @@ const codemenu = [ path: '/vehicle/cheliangpaichan', component: () => import('@/views/supplychain/vehicle/cheliangpaichan/cheliangpaichan.vue'), name: 'cheliangpaichan', - meta: { title: '车辆排产管理' } + meta: { title: '排产管理' } } ] - } + }, + + { + path: '/ruzhang', + component: Layout, + redirect: '/ruzhang', + meta: { + title: '入账管理' + }, + children: [{ + path: '/ruzhang/ruzhangguanli', + component: () => import('@/views/ruzhang/ruzhangguanli/ruzhangguanli.vue'), + name: 'ruzhangguanli', + meta: { title: '入账单管理' } + }] + }, + // 排产管理 + // 排产管理申请详情 + { + path: '/paichanguanliFlow/paichanguanli/cheliangpaichanInfo', + component: () => + import('@/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanInfo.vue'), + name: 'cheliangpaichanInfo' + }, + // 排产管理申请编辑 + { + path: '/paichanguanliFlow/paichanguanli/cheliangpaichanEdit', + component: () => + import('@/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanEdit.vue'), + name: 'cheliangpaichanEdit' + } ] export default codemenu diff --git a/anrui-scm/anrui-scm-ui/src/views/ruzhang/ruzhangguanli/ruzhangAdd.vue b/anrui-scm/anrui-scm-ui/src/views/ruzhang/ruzhangguanli/ruzhangAdd.vue new file mode 100644 index 0000000000..f9717109f7 --- /dev/null +++ b/anrui-scm/anrui-scm-ui/src/views/ruzhang/ruzhangguanli/ruzhangAdd.vue @@ -0,0 +1,276 @@ + + + + + + diff --git a/anrui-scm/anrui-scm-ui/src/views/ruzhang/ruzhangguanli/ruzhangInfo.vue b/anrui-scm/anrui-scm-ui/src/views/ruzhang/ruzhangguanli/ruzhangInfo.vue new file mode 100644 index 0000000000..2694646412 --- /dev/null +++ b/anrui-scm/anrui-scm-ui/src/views/ruzhang/ruzhangguanli/ruzhangInfo.vue @@ -0,0 +1,219 @@ + + + + + + diff --git a/anrui-scm/anrui-scm-ui/src/views/ruzhang/ruzhangguanli/ruzhangguanli.vue b/anrui-scm/anrui-scm-ui/src/views/ruzhang/ruzhangguanli/ruzhangguanli.vue new file mode 100644 index 0000000000..9ac20e0ca1 --- /dev/null +++ b/anrui-scm/anrui-scm-ui/src/views/ruzhang/ruzhangguanli/ruzhangguanli.vue @@ -0,0 +1,258 @@ + + + + + diff --git a/anrui-scm/anrui-scm-ui/src/views/supplychain/vehicle/cheliangpaichan/cheliangpaichan.vue b/anrui-scm/anrui-scm-ui/src/views/supplychain/vehicle/cheliangpaichan/cheliangpaichan.vue index e266541c59..987a0684df 100644 --- a/anrui-scm/anrui-scm-ui/src/views/supplychain/vehicle/cheliangpaichan/cheliangpaichan.vue +++ b/anrui-scm/anrui-scm-ui/src/views/supplychain/vehicle/cheliangpaichan/cheliangpaichan.vue @@ -1,19 +1,16 @@ diff --git a/anrui-scm/anrui-scm-ui/src/views/supplychain/vehicle/cheliangpaichan/cheliangpaichanAdd.vue b/anrui-scm/anrui-scm-ui/src/views/supplychain/vehicle/cheliangpaichan/cheliangpaichanAdd.vue index d8518b36b0..8d65425e21 100644 --- a/anrui-scm/anrui-scm-ui/src/views/supplychain/vehicle/cheliangpaichan/cheliangpaichanAdd.vue +++ b/anrui-scm/anrui-scm-ui/src/views/supplychain/vehicle/cheliangpaichan/cheliangpaichanAdd.vue @@ -1,173 +1,182 @@ diff --git a/anrui-scm/anrui-scm-ui/src/views/supplychain/vehicle/cheliangpaichan/chexingbyconfiguration.vue b/anrui-scm/anrui-scm-ui/src/views/supplychain/vehicle/cheliangpaichan/chexingbyconfiguration.vue index e69de29bb2..7a94bf557b 100644 --- a/anrui-scm/anrui-scm-ui/src/views/supplychain/vehicle/cheliangpaichan/chexingbyconfiguration.vue +++ b/anrui-scm/anrui-scm-ui/src/views/supplychain/vehicle/cheliangpaichan/chexingbyconfiguration.vue @@ -0,0 +1,191 @@ + + + + diff --git a/anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanEdit.vue b/anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanEdit.vue new file mode 100644 index 0000000000..3cf8f53257 --- /dev/null +++ b/anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanEdit.vue @@ -0,0 +1,455 @@ + + + + + + diff --git a/anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanInfo.vue b/anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanInfo.vue new file mode 100644 index 0000000000..656cf0b6d5 --- /dev/null +++ b/anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanInfo.vue @@ -0,0 +1,529 @@ + + + + + diff --git a/anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/chexingbyconfiguration.vue b/anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/chexingbyconfiguration.vue new file mode 100644 index 0000000000..2f2d56aadc --- /dev/null +++ b/anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/chexingbyconfiguration.vue @@ -0,0 +1,191 @@ + + + + diff --git a/anrui-scm/anrui-scm-ui/src/views/workFlow/ruzhangguanliFlow/ruzhangguanli/ruzhangEdit.vue b/anrui-scm/anrui-scm-ui/src/views/workFlow/ruzhangguanliFlow/ruzhangguanli/ruzhangEdit.vue new file mode 100644 index 0000000000..f9717109f7 --- /dev/null +++ b/anrui-scm/anrui-scm-ui/src/views/workFlow/ruzhangguanliFlow/ruzhangguanli/ruzhangEdit.vue @@ -0,0 +1,276 @@ + + + + + + diff --git a/anrui-scm/anrui-scm-ui/src/views/workFlow/ruzhangguanliFlow/ruzhangguanli/ruzhangInfo.vue b/anrui-scm/anrui-scm-ui/src/views/workFlow/ruzhangguanliFlow/ruzhangguanli/ruzhangInfo.vue new file mode 100644 index 0000000000..2694646412 --- /dev/null +++ b/anrui-scm/anrui-scm-ui/src/views/workFlow/ruzhangguanliFlow/ruzhangguanli/ruzhangInfo.vue @@ -0,0 +1,219 @@ + + + + + + diff --git a/anrui-system-ui/src/views/flow/doneList.vue b/anrui-system-ui/src/views/flow/doneList.vue index 576d35d264..9cbeb8e625 100644 --- a/anrui-system-ui/src/views/flow/doneList.vue +++ b/anrui-system-ui/src/views/flow/doneList.vue @@ -246,7 +246,6 @@ }, created() { // 加载列表 - this.getList() this.init() }, filters: { @@ -270,13 +269,15 @@ init() { var token = getStorage(); loginDetails(token).then((response) => { + console.log(response) if (response.code === '200') { this.loginInfo = response.data; - this.revokeList.userSid = this.loginInfo.userSid - this.listQuery.params.userSid = this.loginInfo.userSid + this.revokeList.userSid = this.loginInfo.sid + this.listQuery.params.userSid = this.loginInfo.sid + this.getList() } }); - this.getType() + // this.getType() }, /** 打开详情 */ handleCheck(row) { @@ -287,6 +288,8 @@ const parameter_list = { instanceId: row.procInsId, taskId: row.taskId, + taskName: row.taskName, + transactState: '01' } selectUrl(this.selectUrl_list).then((response) => { if (response.code === '200') { diff --git a/anrui-system-ui/src/views/flow/todoList.vue b/anrui-system-ui/src/views/flow/todoList.vue index bc082ff4e1..362c65a460 100644 --- a/anrui-system-ui/src/views/flow/todoList.vue +++ b/anrui-system-ui/src/views/flow/todoList.vue @@ -272,7 +272,6 @@ }, created() { // 加载列表 - this.getList() this.init() }, filters: { @@ -296,13 +295,14 @@ init() { var token = getStorage(); loginDetails(token).then((response) => { - if (response.code === '200') { + if (response.code == '200') { this.loginInfo = response.data; this.agreeList.userSid = this.loginInfo.sid this.regectList.userSid = this.loginInfo.sid this.stopList.userSid = this.loginInfo.sid this.listQuery.params.userSid = this.loginInfo.sid console.log('8888', this.loginInfo) + this.getList() } }); @@ -332,7 +332,8 @@ const parameter_list = { instanceId: row.procInsId, taskId: row.taskId, - taskName: row.taskName + taskName: row.taskName, + transactState: '00' // 办理状态:00待办,01已办 } console.log('123123123', JSON.stringify(parameter_list)) selectUrl(this.selectUrl_list).then((response) => { diff --git a/doc/databases/scm_tables.sql b/doc/databases/scm_tables.sql index 3a613358d6..ab5ac54bf1 100644 --- a/doc/databases/scm_tables.sql +++ b/doc/databases/scm_tables.sql @@ -696,3 +696,56 @@ CREATE TABLE `scm_vehicle_return_details` DEFAULT CHARSET = utf8 COMMENT ='车辆采购退库详细'; +-- 车辆未售买断 +DROP TABLE IF EXISTS `scm_vehicle_actual_sales`; +CREATE TABLE `scm_vehicle_actual_sales` +( + `id` int(32) NOT NULL AUTO_INCREMENT COMMENT 'id', + `sid` varchar(64) NOT NULL COMMENT 'sid', + `lockVersion` int(32) DEFAULT '0' COMMENT '版本锁', + `createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间(申请日期)', + `modifyTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间', + `isEnable` int(32) DEFAULT '1' COMMENT '是否可用:1可用,0不可用', + `state` int(32) DEFAULT '1' COMMENT '状态', + `isDelete` int(32) DEFAULT '0' COMMENT '是否删除:0未删除,1已删除', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `createBySid` varchar(64) DEFAULT NULL COMMENT '创建人sid(申请人sid)', + `updateBySid` varchar(64) DEFAULT NULL COMMENT '修改人sid', + `applicationName` varchar(64) DEFAULT NULL COMMENT '申请人', + `reason` varchar(500) DEFAULT NULL COMMENT '买断原因', + `nodeState` varchar(500) DEFAULT NULL COMMENT '节点状态', + `procDefId` varchar(500) DEFAULT NULL COMMENT '流程定义id', + `nodeSid` varchar(500) DEFAULT NULL COMMENT '环节定义的sid', + `procInstSid` varchar(500) DEFAULT NULL COMMENT '流程实例的sid', + PRIMARY KEY (`id`), + KEY `id` (`id`) +) ENGINE = INNODB + DEFAULT CHARSET = utf8 COMMENT ='车辆实销'; + + +-- 车辆未售买断详细 +DROP TABLE IF EXISTS `scm_vehicle_actual_details`; +CREATE TABLE `scm_vehicle_actual_details` +( + `id` int(32) NOT NULL AUTO_INCREMENT COMMENT 'id', + `sid` varchar(64) NOT NULL COMMENT 'sid', + `lockVersion` int(32) DEFAULT '0' COMMENT '版本锁', + `createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `modifyTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间', + `isEnable` int(32) DEFAULT '1' COMMENT '是否可用:1可用,0不可用', + `state` int(32) DEFAULT '1' COMMENT '状态', + `isDelete` int(32) DEFAULT '0' COMMENT '是否删除:0未删除,1已删除', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `createBySid` varchar(64) DEFAULT NULL COMMENT '创建人sid', + `updateBySid` varchar(64) DEFAULT NULL COMMENT '修改人sid', + `vehicleActualSid` varchar(64) DEFAULT NULL COMMENT '车辆未售买断申请sid', + `vinNo` varchar(64) DEFAULT NULL COMMENT '车架号', + `modelName` varchar(500) DEFAULT NULL COMMENT '车型名称', + `inboundDate` timestamp null DEFAULT NULL COMMENT '入库日期', + `inboundPrice` varchar(200) DEFAULT NULL COMMENT '入库价', + PRIMARY KEY (`id`), + KEY `id` (`id`) +) ENGINE = INNODB + DEFAULT CHARSET = utf8 COMMENT ='车辆未售买断详细'; + +