liweidong
liweidong-hj 3 days ago
commit 5353615ecf
  1. 38
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/oem/pojo/excel/OemStatementExcel.java
  2. 3
      blade-service-api/blade-wms-api/src/main/java/org/springblade/wms/pojo/entity/StRealtimeStock.java
  3. 4
      blade-service-api/blade-wms-api/src/main/java/org/springblade/wms/pojo/vo/StStorehouseVO.java
  4. 9
      blade-service/blade-desk/src/main/java/org/springblade/desk/oem/mapper/OemStatementMapper.xml
  5. 1
      blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/YieldOrderServiceImpl.java
  6. 26
      blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StComboxController.java
  7. 6
      blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StGoodsController.java
  8. 2
      blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StGoodsMapper.java
  9. 9
      blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StGoodsMapper.xml
  10. 15
      blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StStorehouseMapper.xml
  11. 6
      blade-service/blade-wms/src/main/java/org/springblade/wms/service/impl/StOtherOutRecordServiceImpl.java

@ -9,8 +9,6 @@ import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.Map;
/**
@ -121,4 +119,40 @@ public class OemStatementExcel implements Serializable {
@ExcelProperty("结算状态")
private String rosStatusName;
@ColumnWidth(20)
@ExcelProperty("异常原因")
private String memo;
@ColumnWidth(20)
@ExcelProperty("报价单号")
private String quotation;
@ColumnWidth(20)
@ExcelProperty("计量单位")
private String unit;
@ColumnWidth(20)
@ExcelProperty("结算单价")
private BigDecimal unitPrice;
@ColumnWidth(20)
@ExcelProperty("结算金额")
private BigDecimal totalPrice;
@ColumnWidth(20)
@ExcelProperty("结算时间")
private String settleDate;
@ColumnWidth(20)
@ExcelProperty("审核时间")
private String approvalDate;
@ColumnWidth(20)
@ExcelProperty("推送时间")
private String pushDate;
@ColumnWidth(20)
@ExcelProperty("结算单号")
private String statementNo;
}

@ -203,7 +203,8 @@ public class StRealtimeStock extends TenantEntity {
@TableField(exist = false)
private Long outRecordId;
@Schema(description = "领料人ID")
private Long picker;
}

@ -1,5 +1,6 @@
package org.springblade.wms.pojo.vo;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
@ -38,5 +39,8 @@ public class StStorehouseVO extends StStorehouse {
@Schema(description = "物料名称")
private String goodsName;
@TableField(exist = false)
private String goodsCodeAndGoodsName;
}

@ -130,6 +130,15 @@
<result column="USE_DEPT_CODE" property="useDeptCode"/>
<result column="PUT_STORE_DATE" property="putStoreDate"/>
<result column="ROS_STATUS_NAME" property="rosStatusName"/>
<result column="MEMO" property="memo"/>
<result column="QUOTATION" property="quotation"/>
<result column="UNIT" property="unit"/>
<result column="UNIT_PRICE" property="unitPrice"/>
<result column="TOTAL_PRICE" property="totalPrice"/>
<result column="SETTLE_TIME" property="settleTime"/>
<result column="APPROVAL_TIME" property="approvalTime"/>
<result column="PUSH_TIME" property="pushTime"/>
<result column="STATEMENT_NO" property="statementNo"/>
</resultMap>
<select id="selectUnsettled" resultMap="statementVOResultMap">

@ -386,7 +386,6 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie
this.yieldOrderAutoDispatch(yieldOrder);
} catch (Exception e) {
log.error("分派异常:{}",yieldOrder.getId());
e.printStackTrace();
}
}
}

@ -242,15 +242,29 @@ public class StComboxController {
return R.data(new ArrayList<>());
}
List<StRealtimeStockVO> allStockList = new ArrayList<>();
// 4. 取出 物料ID(从传入的 stStorehouse 里拿)
StGoods goods = stGoodsMapper.queryByCode(stStorehouse.getGoodsCode());
if (StrUtil.isNotBlank(stStorehouse.getGoodsCodeAndGoodsName())) {
List<Long> goodsIdList = stGoodsMapper.getGoods(stStorehouse.getGoodsCodeAndGoodsName());
// 5. 调用 实时库存查询(传入 物料ID + 库房ID)
List<StRealtimeStockVO> allStockList = new ArrayList<>();
for (Long shId : shIdList) {
IPage<StRealtimeStockVO> stockPage = stRealtimeStockService.selectByGoodsIdShId(Condition.getPage(query), goods.getId(), shId, null, null);
allStockList.addAll(stockPage.getRecords());
// 5. 调用 实时库存查询(传入 物料ID + 库房ID)
for (Long shId : shIdList) {
for (Long goodsId : goodsIdList) {
IPage<StRealtimeStockVO> stockPage = stRealtimeStockService.selectByGoodsIdShId(Condition.getPage(query), goodsId, shId, null, null);
allStockList.addAll(stockPage.getRecords());
}
}
} else {
StGoods goods = stGoodsMapper.queryByCode(stStorehouse.getGoodsCode());
// 5. 调用 实时库存查询(传入 物料ID + 库房ID)
for (Long shId : shIdList) {
IPage<StRealtimeStockVO> stockPage = stRealtimeStockService.selectByGoodsIdShId(Condition.getPage(query), goods.getId(), shId, null, null);
allStockList.addAll(stockPage.getRecords());
}
}
return R.data(allStockList);
}

@ -1,5 +1,6 @@
package org.springblade.wms.controller;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
@ -69,6 +70,11 @@ public class StGoodsController extends BladeController {
QueryWrapper<StGoods> wrapper = Condition.getQueryWrapper(stGoods, StGoods.class);
wrapper.eq("is_deleted", 0)
.orderByDesc("create_time");
String goodsCodeAndGoodsName = StrUtil.toString(stGoods.get("goodsCodeAndGoodsName"));
if (StrUtil.isNotBlank(goodsCodeAndGoodsName)) {
wrapper.and(w -> w.like("goods_code", goodsCodeAndGoodsName).or().like("goods_name", goodsCodeAndGoodsName));
}
IPage<StGoods> pages = stGoodsService.page(Condition.getPage(query), wrapper);
return R.data(StGoodsWrapper.build().pageVO(pages));
}

@ -45,5 +45,7 @@ public interface StGoodsMapper extends BaseMapper<StGoods> {
List<StGoodsVO> selectFindAllGoodsPage(IPage<StGoodsVO> page, StGoodsVO stGoods);
List<StGoodsVO> queryByShId(IPage<StGoodsVO> page, StGoodsVO stGoods);
List<Long> getGoods(String goodsCodeAndGoodsName);
}

@ -134,4 +134,13 @@
) WHERE rn = 1
</select>
<select id="getGoods" resultType="java.lang.Long">
SELECT g.id
FROM st_goods g
WHERE g.is_deleted = 0
AND g.used = 1
<if test="goodsCodeAndGoodsName != null and goodsCodeAndGoodsName != ''">
AND (g.goods_code LIKE '%' || #{goodsCodeAndGoodsName} || '%' OR g.goods_name LIKE '%' || #{goodsCodeAndGoodsName} || '%')
</if>
</select>
</mapper>

@ -40,6 +40,21 @@
</if>
<!-- 【新增】根据物料编号过滤库房 -->
<if test="stStorehouse.goodsCodeAndGoodsName != null and stStorehouse.goodsCodeAndGoodsName != ''">
AND EXISTS (
SELECT 1
FROM st_realtime_stock r
JOIN st_goods g ON r.goods_id = g.id
WHERE r.sh_id = t.id
AND r.is_deleted = 0
AND g.is_deleted = 0
AND (
g.goods_code LIKE '%' || #{stStorehouse.goodsCodeAndGoodsName} || '%'
OR g.goods_name LIKE '%' || #{stStorehouse.goodsCodeAndGoodsName} || '%'
)
)
</if>
<if test="stStorehouse.goodsCode != null and stStorehouse.goodsCode != ''">
AND EXISTS (
SELECT 1

@ -1,5 +1,6 @@
package org.springblade.wms.service.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import jakarta.annotation.Resource;
@ -254,6 +255,9 @@ public class StOtherOutRecordServiceImpl extends BaseServiceImpl<StOtherOutRecor
}
detail.setDeptId(mainInout.getDeptId());
detail.setCreateUser(mainInout.getCreateUser());
if (stOtherOutRecord.getPicker() == null) {
detail.setUserId(stock.getPicker());
}
detail.setUserId(stOtherOutRecord.getPicker());
String pickerTeamSet = stStockInoutRecordService.getTeamSetByUserId(stOtherOutRecord.getPicker());
detail.setPickerTeamSet(pickerTeamSet);
@ -300,7 +304,7 @@ public class StOtherOutRecordServiceImpl extends BaseServiceImpl<StOtherOutRecor
newOutRecord.setCreateTime(new Date());
newOutRecord.setUpdateUser(user.getUserId());
newOutRecord.setUpdateTime(new Date());
newOutRecord.setPicker(stOtherOutRecord.getPicker());
newOutRecord.setPicker(detail.getUserId());
// 保存当前出库单(每条明细对应一条新出库单)
this.save(newOutRecord);

Loading…
Cancel
Save