Parcourir la source

门店供应链物品管理/记录

zhangkaikai il y a 1 an
Parent
commit
4978208af1

+ 65 - 0
mp-admin/src/main/java/com/qs/mp/web/controller/api/admin/ChannelGoodsSettleMgrController.java

@@ -0,0 +1,65 @@
+package com.qs.mp.web.controller.api.admin;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.qs.mp.admin.domain.param.ChannelGoodsOrderQueryParam;
+import com.qs.mp.channel.domain.ChannelGoodsOrder;
+import com.qs.mp.channel.domain.vo.ChannelGoodsOrderSettleVO;
+import com.qs.mp.channel.domain.vo.ChannelGoodsSettleVO;
+import com.qs.mp.channel.service.IChannelGoodsOrderService;
+import com.qs.mp.channel.service.IChannelGoodsService;
+import com.qs.mp.common.core.domain.AjaxResult;
+import com.qs.mp.common.core.page.TableDataInfo;
+import com.qs.mp.web.controller.common.BaseApiController;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 结算门店采购商品
+ * @author zhangkaikai
+ * @create 2023-06-07 2:18 PM
+ **/
+@Api(tags = "门店库存管理")
+@RestController
+@RequestMapping("/api/v1/mp/admin/channel/goods/*")
+public class ChannelGoodsSettleMgrController extends BaseApiController {
+
+    @Autowired
+    private IChannelGoodsOrderService channelGoodsOrderService;
+
+    @Autowired
+    private IChannelGoodsService channelGoodsService;
+
+    @PostMapping("/list")
+    @ApiOperation(value = "门店库存结算列表")
+    @PreAuthorize("@ss.hasPermi('business:goods:list')")
+    public TableDataInfo list(@RequestBody ChannelGoodsOrderQueryParam queryParam) {
+        startPage();
+        QueryWrapper<ChannelGoodsOrder> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq(null != queryParam && StringUtils.isNotBlank(queryParam.getOrderId()), "t1.order_id", queryParam.getOrderId());
+        queryWrapper.eq(null != queryParam && null != queryParam.getStatus(), "t1.`channel_id`", queryParam.getChannelId());
+        queryWrapper.eq(null != queryParam && StringUtils.isNotBlank(queryParam.getTel()), "t1.`tel`", queryParam.getTel());
+        queryWrapper.eq(null != queryParam && null != queryParam.getSettleStatus(), "t2.status", queryParam.getSettleStatus());
+        queryWrapper.ge(null != queryParam && null != queryParam.getMinStock(), "t2.remain_qty", queryParam.getMinStock());
+        queryWrapper.le(null != queryParam && null != queryParam.getMaxStock(), "t2.remain_qty", queryParam.getMaxStock());
+        queryWrapper.ge(null != queryParam && null != queryParam.getStartTime(), "t1.created_time", queryParam.getStartTime());
+        queryWrapper.le(null != queryParam && null != queryParam.getEndTime(), "t1.created_time", queryParam.getEndTime());
+        queryWrapper.like(null != queryParam && StringUtils.isNotBlank(queryParam.getTitle()), "t2.title", queryParam.getTitle());
+        queryWrapper.orderByDesc("t1.created_time", "t1.order_id");
+
+        List<ChannelGoodsSettleVO> channelGoodsOrderSettleVOS = channelGoodsOrderService.selectChannelGoodsSettleList(queryWrapper);
+
+        return getDataTable(new ArrayList<>());
+    }
+
+
+}

+ 45 - 0
mp-service/src/main/java/com/qs/mp/channel/domain/vo/ChannelGoodsSettleVO.java

@@ -0,0 +1,45 @@
+package com.qs.mp.channel.domain.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author zhangkaikai
+ * @create 2023-06-07 3:50 PM
+ **/
+@ApiModel("门店采购商品结算出参类")
+@Data
+public class ChannelGoodsSettleVO {
+
+
+    @ApiModelProperty("订单号")
+    private String orderId;
+
+    @ApiModelProperty("下单时间")
+    private Date createdTime;
+
+    @ApiModelProperty("门店名称")
+    private String channelName;
+
+    @ApiModelProperty("手机号")
+    private String tel;
+
+    @ApiModelProperty("商品名称")
+    private String title;
+
+    @ApiModelProperty("总库存")
+    private Integer quantity;
+
+    @ApiModelProperty("已核销")
+    private Integer verifyQty;
+
+    @ApiModelProperty("剩余库存")
+    private Integer remainQty;
+
+    @ApiModelProperty("采购成本")
+    private Integer purchaseCost;
+
+}

+ 3 - 0
mp-service/src/main/java/com/qs/mp/channel/mapper/ChannelGoodsOrderMapper.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.toolkit.Constants;
 import com.qs.mp.channel.domain.ChannelGoodsOrder;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.qs.mp.channel.domain.vo.ChannelGoodsOrderVO;
+import com.qs.mp.channel.domain.vo.ChannelGoodsSettleVO;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -19,4 +20,6 @@ public interface ChannelGoodsOrderMapper extends BaseMapper<ChannelGoodsOrder> {
     List<ChannelGoodsOrderVO> selectChannelGoodsOrderVOList(@Param(Constants.WRAPPER) QueryWrapper<ChannelGoodsOrder> queryWrapper);
 
     int selectChannelGoodsOrderCount(@Param(Constants.WRAPPER) QueryWrapper<ChannelGoodsOrder> queryWrapper);
+
+    List<ChannelGoodsSettleVO> selectChannelGoodsSettleList(@Param(Constants.WRAPPER) QueryWrapper<ChannelGoodsOrder> queryWrapper);
 }

+ 1 - 1
mp-service/src/main/java/com/qs/mp/channel/service/impl/ChannelGoodsOrderServiceImpl.java

@@ -258,7 +258,7 @@ public class ChannelGoodsOrderServiceImpl extends ServiceImpl<ChannelGoodsOrderM
 
     @Override
     public List<ChannelGoodsSettleVO> selectChannelGoodsSettleList(QueryWrapper<ChannelGoodsOrder> queryWrapper) {
-        return null;
+        return getBaseMapper().selectChannelGoodsSettleList(queryWrapper);
     }
 
 }

+ 3 - 0
mp-service/src/main/resources/mapper/channel/ChannelGoodsOrderMapper.xml

@@ -48,5 +48,8 @@
                  left join mp_supplier t3 on t2.supplier_id = t3.id
             ${ew.customSqlSegment}
     </select>
+    <select id="selectChannelGoodsSettleList" resultType="com.qs.mp.channel.domain.vo.ChannelGoodsSettleVO">
+
+    </select>
 
 </mapper>