1021
This commit is contained in:
@@ -34,7 +34,7 @@ public class WarehouseInfoRest {
|
||||
return wmsWarehouseService.listPage(pq);
|
||||
}
|
||||
@PostMapping("/list")
|
||||
public ResultBean<List<WarehouseInfo>> list(@RequestBody WarehouseInfoMapQuery query) {
|
||||
public ResultBean<List<ProjectDetailsVo>> list(@RequestBody WarehouseInfoMapQuery query) {
|
||||
return wmsWarehouseService.listQuery(query);
|
||||
}
|
||||
@ApiOperation("查询所有的仓库")
|
||||
|
||||
@@ -31,13 +31,13 @@
|
||||
where a.sid =#{sid}
|
||||
</select>
|
||||
|
||||
<update id="deleteByBillSid">
|
||||
delete inventory_adjustment
|
||||
<delete id="deleteByBillSid">
|
||||
delete from inventory_adjustment
|
||||
where sid in
|
||||
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
</update>
|
||||
</delete>
|
||||
<select id="selectNum" resultType="java.lang.String">
|
||||
select RIGHT (billNo, 4)
|
||||
from inventory_adjustment
|
||||
|
||||
@@ -178,6 +178,10 @@ public class InventoryAdjustmentService extends MybatisBaseService<InventoryAdju
|
||||
InventoryAdjustment inventoryAdjustment=baseMapper.selectOne(new QueryWrapper<InventoryAdjustment>().eq("sid",w.getBillSid()));
|
||||
inventoryAdjustment.setState(3);
|
||||
baseMapper.updateById(inventoryAdjustment);
|
||||
}else{
|
||||
InventoryAdjustment inventoryAdjustment=baseMapper.selectOne(new QueryWrapper<InventoryAdjustment>().eq("sid",w.getBillSid()));
|
||||
inventoryAdjustment.setState(2);
|
||||
baseMapper.updateById(inventoryAdjustment);
|
||||
}
|
||||
return rb.success().setData("成功");
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
where a.sid =#{sid}
|
||||
</select>
|
||||
<update id="deleteByBillSid">
|
||||
delete inventory_adjustment_detail
|
||||
delete from inventory_adjustment_detail
|
||||
where billSid in
|
||||
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
|
||||
#{item}
|
||||
|
||||
@@ -25,4 +25,5 @@ public interface WarehouseAnsBillDetailMapper extends BaseMapper<WarehouseAnsBil
|
||||
List<WarehouseAnsListDetailsVo> selectByBillSid(String sid);
|
||||
WarehouseAnsListDetailsVo selCountBySkuSid(String sid);
|
||||
WarehouseAnsListDetailsVo selCountBySpuSid(String sid);
|
||||
WarehouseAnsListDetailsVo selCount(@Param("orgSid") String orgSid);
|
||||
}
|
||||
|
||||
@@ -39,5 +39,16 @@
|
||||
from warehouse_ans_bill_detail a
|
||||
where a.goodsSpusid =#{sid}
|
||||
</select>
|
||||
<select id="selCount" resultType="com.yxt.warehouse.biz.warehouseansbilldetail.WarehouseAnsListDetailsVo">
|
||||
SELECT
|
||||
sum(waitInCount) as totalInTransitSummary,
|
||||
sum(waitInCount*price) as inTransitSummaryMoney
|
||||
FROM
|
||||
warehouse_ans_bill_detail a
|
||||
LEFT JOIN warehouse_ans_bill b ON b.sid = a.sourceBillSid
|
||||
LEFT JOIN ss_user.sys_organization AS s ON b.useOrgSid = s.sid
|
||||
WHERE
|
||||
s.orgSidPath like concat('%',#{orgSid},'%')
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
@@ -146,4 +146,8 @@ public class WarehouseAnsBillDetailService extends MybatisBaseService<WarehouseA
|
||||
WarehouseAnsListDetailsVo vo=baseMapper.selCountBySpuSid(sid);
|
||||
return vo;
|
||||
}
|
||||
public WarehouseAnsListDetailsVo selCount(String sid) {
|
||||
WarehouseAnsListDetailsVo vo=baseMapper.selCount(sid);
|
||||
return vo;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,7 +37,8 @@ public class WarehouseAnsListDetailsVo {
|
||||
private double price;//单价
|
||||
private double totalPrice;//总价
|
||||
private String batch;//批次
|
||||
|
||||
private BigDecimal totalInTransitSummary;
|
||||
private BigDecimal inTransitSummaryMoney;
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
package com.yxt.warehouse.biz.warehouseinfo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @author wangpengfei
|
||||
* @date 2024/10/17 15:17
|
||||
*/
|
||||
@Data
|
||||
public class ProjectDetailsVo {
|
||||
private String sid;
|
||||
private String warehouseName;//仓库名称
|
||||
private String warehouseCode;//仓库编码
|
||||
private String contacts;//联系人
|
||||
private String mob;//手机
|
||||
private String telephone;//联系电话
|
||||
private String manager;//主管
|
||||
private String address;//地址
|
||||
private String lngAndLat;//经纬度
|
||||
private String longitude;//经度
|
||||
private String latitude;//纬度
|
||||
private String squareMeter;//平方米
|
||||
private String supplierName;
|
||||
private String supplierType;
|
||||
private String goodsDetail;
|
||||
}
|
||||
@@ -18,7 +18,7 @@ import java.util.List;
|
||||
@Mapper
|
||||
public interface WarehouseInfoMapper extends BaseMapper<WarehouseInfo> {
|
||||
IPage<WarehouseInfoVo> listPage(IPage<WarehouseInfo> page, @Param(Constants.WRAPPER) QueryWrapper<WarehouseInfo> qw);
|
||||
List<WarehouseInfo> listQuery( @Param(Constants.WRAPPER) QueryWrapper<WarehouseInfo> qw);
|
||||
List<ProjectDetailsVo> listQuery( @Param(Constants.WRAPPER) QueryWrapper<WarehouseInfo> qw);
|
||||
|
||||
int updateBySidIsDelete(List<String> list);
|
||||
@Select("select * from wms_warehouse_info")
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
${ew.sqlSegment}
|
||||
</where>
|
||||
</select>
|
||||
<select id="listQuery" resultType="com.yxt.warehouse.biz.warehouseinfo.WarehouseInfo">
|
||||
<select id="listQuery" resultType="com.yxt.warehouse.biz.warehouseinfo.ProjectDetailsVo">
|
||||
select
|
||||
a.*
|
||||
from warehouse_info a
|
||||
|
||||
@@ -10,12 +10,21 @@ 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 com.yxt.warehouse.biz.purchaseinventorybill.PurchaseInventoryBill;
|
||||
import com.yxt.warehouse.biz.purchaseinventorybill.PurchaseInventoryBillService;
|
||||
import com.yxt.warehouse.biz.purchaseinventorybilldetail.PurchaseInventoryBillDetail;
|
||||
import com.yxt.warehouse.biz.purchaseinventorybilldetail.PurchaseInventoryBillDetailService;
|
||||
import com.yxt.warehouse.biz.warehousearea.WarehouseAreaAllVo;
|
||||
import com.yxt.warehouse.biz.warehouseareatype.WarehouseAreaType;
|
||||
import com.yxt.warehouse.biz.warehouseextend.WarehouseExtend;
|
||||
import com.yxt.warehouse.biz.warehouseextend.WarehouseExtendService;
|
||||
import com.yxt.warehouse.biz.warehouseextend.WarehouseExtendVo;
|
||||
import com.yxt.warehouse.biz.warehouseinventory.WarehouseInventory;
|
||||
import com.yxt.warehouse.biz.warehouseinventory.WarehouseInventoryService;
|
||||
import com.yxt.warehouse.biz.warehouseinventoryrecord.WarehouseInventoryRecord;
|
||||
import com.yxt.warehouse.biz.warehouseinventoryrecord.WarehouseInventoryRecordService;
|
||||
import com.yxt.warehouse.biz.warehouserack.WarehouseRackVo;
|
||||
import com.yxt.warehouse.utils.DoubleUtils;
|
||||
import com.yxt.warehouse.utils.OrgPathQuery;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
@@ -37,6 +46,12 @@ public class WarehouseInfoService extends MybatisBaseService<WarehouseInfoMapper
|
||||
|
||||
@Autowired
|
||||
WarehouseExtendService wmsWarehouseExtendService;
|
||||
@Autowired
|
||||
WarehouseInventoryService warehouseInventoryService;
|
||||
@Autowired
|
||||
WarehouseInventoryRecordService warehouseInventoryRecordService;
|
||||
@Autowired
|
||||
PurchaseInventoryBillDetailService purchaseInventoryBillDetailService;
|
||||
|
||||
public ResultBean<PagerVo<WarehouseInfoVo>> listPage(PagerQuery<WarehouseInfoQuery> pq) {
|
||||
ResultBean rb = ResultBean.fireFail();
|
||||
@@ -83,15 +98,42 @@ public class WarehouseInfoService extends MybatisBaseService<WarehouseInfoMapper
|
||||
return rb.success().setData(p);
|
||||
}
|
||||
|
||||
public ResultBean<List<WarehouseInfo>> listQuery(WarehouseInfoMapQuery query) {
|
||||
public ResultBean<List<ProjectDetailsVo>> listQuery(WarehouseInfoMapQuery query) {
|
||||
ResultBean rb = ResultBean.fireFail();
|
||||
QueryWrapper<WarehouseInfo> qw = new QueryWrapper<>();
|
||||
qw.like("s.orgSidPath", query.getOrgPath());
|
||||
if (org.apache.commons.lang3.StringUtils.isNotBlank(query.getName())) {
|
||||
qw.like("a.warehouseName", query.getName());
|
||||
}
|
||||
List<WarehouseInfo> storeInfos = baseMapper.listQuery(qw);
|
||||
for (WarehouseInfo storeInfo : storeInfos) {
|
||||
List<ProjectDetailsVo> storeInfos = baseMapper.listQuery(qw);
|
||||
for (ProjectDetailsVo storeInfo : storeInfos) {
|
||||
List<WarehouseInventory> warehouseInventories=warehouseInventoryService.list(new QueryWrapper<WarehouseInventory>().eq("warehouseSid",storeInfo.getSid()));
|
||||
if (warehouseInventories.size()!=0){
|
||||
List<WarehouseInventoryRecord> list=warehouseInventoryRecordService.list(new QueryWrapper<WarehouseInventoryRecord>()
|
||||
.eq("inventorySid",warehouseInventories.get(0).getSid()).eq("billType","1"));
|
||||
if(list.size()!=0){
|
||||
storeInfo.setSupplierName(list.get(0).getBillObjName());
|
||||
List<PurchaseInventoryBillDetail>details=purchaseInventoryBillDetailService.list(new QueryWrapper<PurchaseInventoryBillDetail>()
|
||||
.eq("sourceBillSid",list.get(0).getSourceBillSid()));
|
||||
for (PurchaseInventoryBillDetail detail : details) {
|
||||
if(StringUtils.isBlank(storeInfo.getGoodsDetail())){
|
||||
Double s=detail.getCount();
|
||||
if(StringUtils.isNotBlank(detail.getGoodsSkuTitle())){
|
||||
storeInfo.setGoodsDetail(detail.getGoodsSkuTitle()+":"+ DoubleUtils.removeZeros(s.toString())+detail.getUnit());
|
||||
}else{
|
||||
storeInfo.setGoodsDetail(detail.getGoodsSkuCode()+":"+DoubleUtils.removeZeros(s.toString())+detail.getUnit());
|
||||
}
|
||||
}else{
|
||||
Double s=detail.getCount();
|
||||
if(StringUtils.isNotBlank(detail.getGoodsSkuTitle())){
|
||||
storeInfo.setGoodsDetail(","+detail.getGoodsSkuTitle()+":"+DoubleUtils.removeZeros(s.toString())+detail.getUnit());
|
||||
}else{
|
||||
storeInfo.setGoodsDetail(","+detail.getGoodsSkuCode()+":"+DoubleUtils.removeZeros(s.toString())+detail.getUnit());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(StringUtils.isNotBlank(storeInfo.getLngAndLat())){
|
||||
String []w=storeInfo.getLngAndLat().split(",");
|
||||
storeInfo.setLatitude(w[1]);
|
||||
|
||||
@@ -25,7 +25,7 @@ public interface WarehouseInventoryMapper extends BaseMapper<WarehouseInventory>
|
||||
List<WarehouseInventoryVo> getListBySpuSid1(@Param(Constants.WRAPPER) QueryWrapper<WarehouseInventory> qw,@Param("countStart") String countStart,@Param("countEnd") String countEnd);
|
||||
List<WarehouseInventoryRackVo> getRackCountBySid(@Param("sid")String sid,@Param("orgSid") String orgSid);
|
||||
List<WarehouseInventoryRackVo> getRackCountBySid1(@Param("sid")String sid,@Param("orgSid") String orgSid);
|
||||
|
||||
WarehouseInventoryVo selCountByOrgSid(@Param("orgSid") String orgSid);
|
||||
WarehouseInventoryVo initialization(@Param("sid") String sid);
|
||||
|
||||
int updatePrice1(@Param("price") String price, @Param("list") List<String> stringList);
|
||||
|
||||
@@ -9,10 +9,6 @@
|
||||
a.goodsSpuName,
|
||||
a.goodsSpuSid,
|
||||
a.unit,
|
||||
-- sum(a.count) as count ,
|
||||
-- sum(a.allocateCount) as allocateCount,
|
||||
-- sum(a.count-a.allocateCount) as useCount,
|
||||
-- sum(a.freezeCount) as freezeCount,
|
||||
a.batchNumber,
|
||||
a.goodsTypeName as typeName
|
||||
from warehouse_inventory a
|
||||
@@ -52,11 +48,14 @@
|
||||
left join warehouse_rack b on b.sid =a.warehouseRackSid
|
||||
LEFT JOIN ss_user.sys_organization as s ON a.useOrgSid = s.sid
|
||||
left join warehouse_area d on d.sid =b.locationSid
|
||||
LEFT JOIN warehouse_area_warning c ON c.warehouseAreaSid = b.locationSid
|
||||
LEFT JOIN warehouse_area_warning c ON c.warehouseAreaSid = b.locationSid and c.goodsSpuSid =a.goodsSpuSid
|
||||
<where>
|
||||
${ew.sqlSegment}
|
||||
</where>
|
||||
group by a.goodsSpuSid
|
||||
group by
|
||||
d.sid,
|
||||
a.goodsSpuSid
|
||||
ORDER BY d.sid
|
||||
</select>
|
||||
<select id="listPage3" resultType="com.yxt.warehouse.biz.warehouseinventory.WarehouseInventoryVo">
|
||||
select
|
||||
@@ -517,6 +516,16 @@
|
||||
a.goodsSkuSid = #{sid} and
|
||||
a.useOrgSid=#{orgSid}
|
||||
</select>
|
||||
<select id="selCountByOrgSid" resultType="com.yxt.warehouse.biz.warehouseinventory.WarehouseInventoryVo">
|
||||
SELECT
|
||||
sum(( count - allocateCount - pickCount - freezeCount )* cost) AS useCountMoney,
|
||||
sum(( count - allocateCount - pickCount - freezeCount )) AS totalUseCount
|
||||
FROM
|
||||
warehouse_inventory a
|
||||
LEFT JOIN ss_user.sys_organization AS s ON a.useOrgSid = s.sid
|
||||
WHERE
|
||||
s.orgSidPath like concat('%',#{orgSid},'%')
|
||||
</select>
|
||||
<select id="selectNum" resultType="java.lang.String">
|
||||
select RIGHT (goodsID, 4)
|
||||
from warehouse_inventory
|
||||
|
||||
@@ -147,7 +147,27 @@ public class WarehouseInventoryService extends MybatisBaseService<WarehouseInven
|
||||
.add(record.getWorkOrderInTransit()));
|
||||
record.setChildren(vos);
|
||||
}
|
||||
WarehouseInventoryVo vo=baseMapper.selCountByOrgSid(query.getOrgPath());
|
||||
PagerVo<WarehouseInventoryVo> p = PagerUtil.pageToVo(pagging, null);
|
||||
Map<String,Object> map=new HashMap<>();
|
||||
if(null!=vo){
|
||||
map.put("totalUseCount",vo.getTotalUseCount());
|
||||
map.put("useCountMoney",vo.getUseCountMoney());
|
||||
}else{
|
||||
map.put("totalUseCount",new BigDecimal(0));
|
||||
map.put("useCountMoney",new BigDecimal(0));
|
||||
}
|
||||
|
||||
WarehouseAnsListDetailsVo vo1= warehouseAnsBillDetailService.selCount(query.getOrgPath());
|
||||
if(null!=vo1){
|
||||
map.put("totalInTransitSummary",vo1.getTotalInTransitSummary());
|
||||
map.put("inTransitSummaryMoney",vo1.getInTransitSummaryMoney());
|
||||
}else{
|
||||
map.put("totalInTransitSummary",new BigDecimal(0));
|
||||
map.put("inTransitSummaryMoney",new BigDecimal(0));
|
||||
}
|
||||
|
||||
p.setMap(map);
|
||||
return rb.success().setData(p);
|
||||
}
|
||||
public ResultBean<PagerVo<WarehouseInventoryVo>> locationListPage(PagerQuery<WarehouseInventoryQuery> pq) {
|
||||
|
||||
@@ -76,5 +76,7 @@ public class WarehouseInventoryVo implements Vo {
|
||||
private String alertUpperLimit;//上限
|
||||
private String warningLowerLimit;//下限
|
||||
private List<WarehouseInventoryVo> children=new ArrayList<>();
|
||||
private BigDecimal totalUseCount;
|
||||
private BigDecimal useCountMoney;
|
||||
|
||||
}
|
||||
|
||||
@@ -247,7 +247,7 @@ public class WarehouseInventoryRecordService extends MybatisBaseService<Warehous
|
||||
return rb.success().setData(p);
|
||||
}
|
||||
if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getBillType())) {
|
||||
qw.like("a.busTypeValue", query.getBillType());
|
||||
qw.like("a.billType", query.getBillType());
|
||||
}
|
||||
if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getGoodsSpuName())) {
|
||||
qw.like("a.goodsSkuTitle", query.getGoodsSpuName());
|
||||
|
||||
93
src/main/java/com/yxt/warehouse/utils/DoubleUtils.java
Normal file
93
src/main/java/com/yxt/warehouse/utils/DoubleUtils.java
Normal file
@@ -0,0 +1,93 @@
|
||||
package com.yxt.warehouse.utils;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* @author wangpengfei
|
||||
* @date 2024/1/24 8:53
|
||||
*/
|
||||
public class DoubleUtils {
|
||||
|
||||
/**
|
||||
* 对double数据进行取精度.
|
||||
* @param value double数据.
|
||||
* @param scale 精度位数(保留的小数位数).
|
||||
* @param roundingMode 精度取值方式.
|
||||
* @return 精度计算后的数据.
|
||||
*/
|
||||
public static double round(double value, int scale,
|
||||
int roundingMode) {
|
||||
BigDecimal bd = BigDecimal.valueOf(value);
|
||||
bd = bd.setScale(scale, roundingMode);
|
||||
double d = bd.doubleValue();
|
||||
bd = null;
|
||||
return d;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* double 相加
|
||||
* @param d1
|
||||
* @param d2
|
||||
* @return
|
||||
*/
|
||||
public static double sum(double d1,double d2){
|
||||
BigDecimal bd1 = BigDecimal.valueOf(d1);
|
||||
BigDecimal bd2 = BigDecimal.valueOf(d2);
|
||||
return bd1.add(bd2).doubleValue();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* double 相减
|
||||
* @param d1
|
||||
* @param d2
|
||||
* @return
|
||||
*/
|
||||
public static double sub(double d1,double d2){
|
||||
BigDecimal bd1 = BigDecimal.valueOf(d1);
|
||||
BigDecimal bd2 = BigDecimal.valueOf(d2);
|
||||
return bd1.subtract(bd2).doubleValue();
|
||||
}
|
||||
|
||||
/**
|
||||
* double 乘法
|
||||
* @param d1
|
||||
* @param d2
|
||||
* @return
|
||||
*/
|
||||
public static double mul(double d1, double d2){
|
||||
BigDecimal bd1 = BigDecimal.valueOf(d1);
|
||||
BigDecimal bd2 = BigDecimal.valueOf(d2);
|
||||
return bd1.multiply(bd2).doubleValue();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* double 除法
|
||||
* @param d1
|
||||
* @param d2
|
||||
* @param scale 四舍五入 小数点位数
|
||||
* @return
|
||||
*/
|
||||
public static double div(double d1,double d2,int scale){
|
||||
BigDecimal bd1 = BigDecimal.valueOf(d1);
|
||||
BigDecimal bd2 = BigDecimal.valueOf(d2);
|
||||
return bd1.divide
|
||||
(bd2,scale,BigDecimal.ROUND_HALF_UP).doubleValue();
|
||||
}
|
||||
/**
|
||||
* 去除多余.0
|
||||
* @param num
|
||||
* @return
|
||||
*/
|
||||
public static String removeZeros(String num) {
|
||||
if (num.indexOf(".") > 0) {
|
||||
// 去掉多余的0
|
||||
num = num.replaceAll("0+?$", "");
|
||||
// 如果最后一位是. 则去掉
|
||||
num = num.replaceAll("[.]$", "");
|
||||
}
|
||||
return num;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user