From 440cc292045639e6eb885db15b5637bd5ebf2bec Mon Sep 17 00:00:00 2001 From: cy <1664593601@qq.com> Date: 星期二, 21 十一月 2023 11:34:30 +0800 Subject: [PATCH] feat: 预警查询 --- consum-base/src/main/java/com/consum/base/controller/LWhWarningController.java | 53 +++++++++++++++++ consum-base/src/main/java/com/consum/base/service/LWhWarningServiceImpl.java | 69 +++++++++++++++++++++++ consum-base/src/main/java/com/consum/base/pojo/query/WhWarningQry.java | 47 +++++++++++++++ 3 files changed, 169 insertions(+), 0 deletions(-) diff --git a/consum-base/src/main/java/com/consum/base/controller/LWhWarningController.java b/consum-base/src/main/java/com/consum/base/controller/LWhWarningController.java new file mode 100644 index 0000000..8570f3e --- /dev/null +++ b/consum-base/src/main/java/com/consum/base/controller/LWhWarningController.java @@ -0,0 +1,53 @@ +package com.consum.base.controller; + +import com.consum.base.BaseController; +import com.consum.base.core.utils.CommonUtil; +import com.consum.base.pojo.query.WhWarningQry; +import com.consum.base.service.LWhWarningServiceImpl; +import com.consum.model.po.FinSysTenantUser; +import com.walker.db.page.GenericPager; +import com.walker.web.ResponseValue; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Map; + +/** + * @ClassName LWhWarningConfigController + * @Author cy + * @Date 2023/11/20 + * @Description + * @Version 1.0 + **/ +@RestController +@RequestMapping("/pc/warehouse/warning") +@Api(value = "棰勮鏌ヨ", tags = "棰勮鏌ヨ") +public class LWhWarningController extends BaseController { + + @Resource + private LWhWarningServiceImpl lWhWarningService; + + @GetMapping("/getList") + public ResponseValue getList() { + WhWarningQry param = CommonUtil.getObjFromReq(WhWarningQry.class); + /*褰撳墠鐧诲綍浜哄彧鑳界湅鍒拌嚜宸辨満鏋勪笅鐨勫垪琛�*/ + FinSysTenantUser sysInfo = this.getSysInfo(); + String tenantId = sysInfo.getTenantId(); + Long paramAgencyId = param.getAgencyId(); + if (paramAgencyId == null || !paramAgencyId.toString().startsWith(tenantId)) { + param.setAgencyId(Long.valueOf(tenantId)); + } + + if (param.getStates() == null) { + param.setStates(1); + } else if (param.getStates() == 0) { + param.setStates(null); + } + GenericPager<Map<String, Object>> genericPager = lWhWarningService.getListWithPage(param); + return ResponseValue.success(genericPager); + } + +} diff --git a/consum-base/src/main/java/com/consum/base/pojo/query/WhWarningQry.java b/consum-base/src/main/java/com/consum/base/pojo/query/WhWarningQry.java new file mode 100644 index 0000000..3c608a6 --- /dev/null +++ b/consum-base/src/main/java/com/consum/base/pojo/query/WhWarningQry.java @@ -0,0 +1,47 @@ +package com.consum.base.pojo.query; + +import com.walker.web.param.ParamRequest; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @ClassName WhWarningConfigParam + * @Author cy + * @Date 2023/11/20 + * @Description + * @Version 1.0 + **/ +@ApiModel(value = "棰勮璁剧疆鏌ヨ鍙傛暟") +@Data +public class WhWarningQry extends ParamRequest { + @ApiModelProperty("鐗╁搧鍚嶇О") + private String goodsTemplateName; + + @ApiModelProperty("瑙勬牸鍨嬪彿") + private Long baseGoodsModelsId; + + @ApiModelProperty("鍒嗙被") + private Long categoryId; + + @ApiModelProperty("浠峰�肩被鍨�") + private Short costType; + + @ApiModelProperty("鏈烘瀯") + private Long agencyId; + + @ApiModelProperty("浠撳簱绫诲瀷") + private Long warehouseType; + + @ApiModelProperty("浠撳簱id") + private Long baseWarehouseId; + + @ApiModelProperty("鐘舵�侊紙1=鏈煡鐪嬶紱2=宸叉煡鐪嬶級") + private Integer states; + + @ApiModelProperty(value = "姣忛〉鏄剧ず鏉℃暟") + private Integer pageSize = 10; + + @ApiModelProperty(value = "褰撳墠椤垫暟") + private Integer pageNum = 1; +} diff --git a/consum-base/src/main/java/com/consum/base/service/LWhWarningServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/LWhWarningServiceImpl.java new file mode 100644 index 0000000..667e46a --- /dev/null +++ b/consum-base/src/main/java/com/consum/base/service/LWhWarningServiceImpl.java @@ -0,0 +1,69 @@ +package com.consum.base.service; + +import com.consum.base.core.utils.MapperUtil; +import com.consum.base.pojo.query.WhWarningQry; +import com.walker.db.page.GenericPager; +import com.walker.infrastructure.utils.StringUtils; +import com.walker.jdbc.service.BaseServiceImpl; +import org.springframework.stereotype.Service; + +import java.util.HashMap; +import java.util.Map; + +/** + * @ClassName LWhWarningServiceImpl + * @Author cy + * @Date 2023/11/21 + * @Description + * @Version 1.0 + **/ +@Service +public class LWhWarningServiceImpl extends BaseServiceImpl { + + private static String GET_LIST_WITH_PAGE = "SELECT wareWarn.*,ware.WAREHOUSE_NAME,goodsTemp.CATEGORY_NAME,CONCAT(cate.CLASSIFICATION,'绫�') cost_Type,goodsTemp.GOODS_NAME,baseModel.MODEL_NAME,basemodel.UNIT FROM WH_WARNING wareWarn LEFT JOIN BASE_GOODS_MODELS baseModel ON baseModel.ID=wareWarn.BASE_GOODS_MODELS_ID LEFT JOIN BASE_GOODS_TEMPLATE goodsTemp ON wareWarn.BASE_GOODS_TEMPLATE_ID=goodsTemp.id LEFT JOIN BASE_CATEGORY cate ON cate.id=goodsTemp.CATEGORY_ID LEFT JOIN BASE_WAREHOUSE ware ON ware.id=wareWarn.BASE_WAREHOUSE_ID WHERE 1=1 "; + + public GenericPager<Map<String, Object>> getListWithPage(WhWarningQry param) { + StringBuilder sql = new StringBuilder(GET_LIST_WITH_PAGE); + HashMap<String, Object> paramts = new HashMap<>(); + if (param.getStates() != null){ + sql.append(" AND wareWarn.states = :states"); + paramts.put("states", param.getStates()); + } + //鏈烘瀯 + if (param.getAgencyId() != null) { + sql.append(" and left(ware.AGENCY_ID, length(:lengthAgencyId)) = :agencyId"); + paramts.put("lengthAgencyId", param.getAgencyId()); + paramts.put("agencyId", param.getAgencyId()); + } + //浠撳簱绫诲瀷 + if (param.getWarehouseType() != null) { + sql.append(" AND wareWarn.WAREHOUSE_TYPE = :warehouseType"); + paramts.put("warehouseType", param.getWarehouseType()); + } + if (param.getBaseWarehouseId() != null) { + sql.append(" AND wareWarn.WAREHOUSE_ID = :warehouseId"); + paramts.put("warehouseId", param.getBaseWarehouseId()); + } + //鐗╁搧鍚嶇О + if (StringUtils.isNotEmpty(param.getGoodsTemplateName())) { + sql.append(" AND goodsTemp.GOODS_NAME like :goodsTemplateName"); + paramts.put("goodsTemplateName", StringUtils.CHAR_PERCENT + param.getGoodsTemplateName() + StringUtils.CHAR_PERCENT); + } + //鍒嗙被 + if (param.getCategoryId() != null) { + sql.append(" AND cate.id=:categoryId"); + paramts.put("categoryId", param.getCategoryId()); + } + //浠峰�肩被鍨� + if (param.getCostType() != null) { + // 灏嗘暟瀛楄浆鎹负瀵瑰簲鐨勫瓧绗� + char costType = (char) ('A' + param.getCostType() - 1); + sql.append(" AND cate.CLASSIFICATION=':costType'"); + paramts.put("costType", costType); + } + + sql.append(" ORDER BY wareWarn.id DESC "); + + return selectSplit(sql.toString(), paramts, param.getPageNum(), param.getPageSize(), new MapperUtil()); + } +} -- Gitblit v1.9.1