#
Junjie
2024-09-20 a4441247e9a81797ddf7ae93f03fb326efc339a7
#
10个文件已修改
1个文件已添加
123 ■■■■ 已修改文件
zy-asrs-admin/src/components/order/order/order.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-admin/src/components/order/order/orderIn.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-admin/src/components/order/order/orderOut.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-admin/src/views/base/cacheSite/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-admin/src/views/out/waveSeed/index.vue 40 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/WaveSeedController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/WaveSeed.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/param/WaveSeedReviewParam.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/WaveSeedService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaveSeedServiceImpl.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/TaskWaveTimer.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-admin/src/components/order/order/order.vue
@@ -126,6 +126,7 @@
    dataIndex: 'oper',
    key: 'oper',
    width: 240,
    fixed: 'right',
  },
];
zy-asrs-admin/src/components/order/order/orderIn.vue
@@ -126,6 +126,7 @@
    dataIndex: 'oper',
    key: 'oper',
    width: 240,
    fixed: 'right',
  },
];
zy-asrs-admin/src/components/order/order/orderOut.vue
@@ -135,6 +135,7 @@
        dataIndex: 'oper',
        key: 'oper',
        width: 240,
        fixed: 'right',
    },
];
zy-asrs-admin/src/views/base/cacheSite/index.vue
@@ -213,7 +213,7 @@
<script>
export default {
  name: '缓存站点'
  name: '播种站点'
}
</script>
zy-asrs-admin/src/views/out/waveSeed/index.vue
@@ -52,12 +52,26 @@
    ...getColumnSearchProps('siteNo'),
  },
  {
    title: formatMessage('db.man_wave_seed.order_detl_id', '订单明细'),
    dataIndex: 'orderDetlId$',
    title: formatMessage('db.man_wave_seed.orderNo', '订单编号'),
    dataIndex: ['orderDetl$', 'orderNo'],
    width: 140,
    ellipsis: true,
    ...getColumnSearchProps('orderDetlId$'),
    ...getColumnSearchProps('orderNo'),
  },
  {
    title: formatMessage('db.man_wave_seed.matnr', '商品编号'),
    dataIndex: ['orderDetl$', 'mat$', 'matnr'],
    width: 140,
    ellipsis: true,
    ...getColumnSearchProps('matnr'),
  },
  // {
  //   title: formatMessage('db.man_wave_seed.order_detl_id', '订单明细'),
  //   dataIndex: 'orderDetlId$',
  //   width: 140,
  //   ellipsis: true,
  //   ...getColumnSearchProps('orderDetlId$'),
  // },
  {
    title: formatMessage('db.man_wave_seed.anfme', '数量'),
    dataIndex: 'anfme',
@@ -222,7 +236,19 @@
}
const handleReviewOk = () => {
  post('/api/waveSeed/review', {
    waveSeedId: reviewState.record.id,
    reviewNum: reviewState.reviewNum,
  }).then((resp) => {
    let result = resp.data;
    if (result.code === 200) {
      message.success(result.msg);
      reviewState.open = false;
      handleTableReload()
    } else {
      message.error(result.msg);
    }
  })
}
</script>
@@ -263,11 +289,11 @@
    </a-table>
    <a-modal v-model:open="reviewState.open" :title="formatMessage('page.review', '复核')" @ok="handleReviewOk">
      <div>
      <div style="margin-bottom: 20px;">
        播种数量:{{ reviewState.record.anfme }}
      </div>
      <div>
        实际数量:<a-input v-model:value="reviewState.reviewNum" />
      <div style="display: flex;justify-content: flex-start;align-items: center;">
        实际数量:<a-input-number v-model:value="reviewState.reviewNum" :min="1" :max="reviewState.record.anfme" />
      </div>
    </a-modal>
  </div>
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/WaveSeedController.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zy.asrs.framework.common.Cools;
import com.zy.asrs.framework.common.R;
import com.zy.asrs.wms.asrs.entity.param.WaveSeedReviewParam;
import com.zy.asrs.wms.common.annotation.OperationLog;
import com.zy.asrs.wms.common.domain.BaseParam;
import com.zy.asrs.wms.common.domain.KeyValVo;
@@ -99,4 +100,12 @@
        ExcelUtil.build(ExcelUtil.create(waveSeedService.list(), WaveSeed.class), response);
    }
    @PreAuthorize("hasAuthority('asrs:waveSeed:update')")
    @OperationLog("播种复核")
    @PostMapping("/waveSeed/review")
    public R review(@RequestBody WaveSeedReviewParam param) {
        waveSeedService.waveSeedReview(param);
        return R.ok("播种复核成功");
    }
}
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/WaveSeed.java
@@ -55,6 +55,12 @@
    private String siteNo;
    /**
     * 订单
     */
    @ApiModelProperty(value= "订单")
    private Long orderId;
    /**
     * 订单明细
     */
    @ApiModelProperty(value= "订单明细")
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/param/WaveSeedReviewParam.java
New file
@@ -0,0 +1,12 @@
package com.zy.asrs.wms.asrs.entity.param;
import lombok.Data;
@Data
public class WaveSeedReviewParam {
    private Long waveSeedId;
    private Double reviewNum;
}
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/WaveSeedService.java
@@ -2,7 +2,10 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.zy.asrs.wms.asrs.entity.WaveSeed;
import com.zy.asrs.wms.asrs.entity.param.WaveSeedReviewParam;
public interface WaveSeedService extends IService<WaveSeed> {
    void waveSeedReview(WaveSeedReviewParam param);
}
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaveSeedServiceImpl.java
@@ -1,12 +1,51 @@
package com.zy.asrs.wms.asrs.service.impl;
import com.zy.asrs.framework.exception.CoolException;
import com.zy.asrs.wms.asrs.entity.param.WaveSeedReviewParam;
import com.zy.asrs.wms.asrs.mapper.WaveSeedMapper;
import com.zy.asrs.wms.asrs.entity.WaveSeed;
import com.zy.asrs.wms.asrs.service.WaveSeedService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.Optional;
@Service("waveSeedService")
public class WaveSeedServiceImpl extends ServiceImpl<WaveSeedMapper, WaveSeed> implements WaveSeedService {
    @Override
    public void waveSeedReview(WaveSeedReviewParam param) {
        if (param == null) {
            throw new CoolException("参数不能为空");
        }
        if (param.getWaveSeedId() == null) {
            throw new CoolException("播种数据不能为空");
        }
        if (param.getReviewNum() == null) {
            throw new CoolException("播种数量不能为空");
        }
        if (param.getReviewNum() <= 0) {
            throw new CoolException("播种数量需要大于0");
        }
        WaveSeed waveSeed = this.getById(param.getWaveSeedId());
        if (waveSeed == null) {
            throw new CoolException("播种数据不存在");
        }
        Double stock = Optional.of(waveSeed.getAnfme() - waveSeed.getWorkQty()).orElse(0.0D);
        if (stock - param.getReviewNum() < 0) {
            throw new CoolException("播种数量已满");
        }
        waveSeed.setWorkQty(waveSeed.getWorkQty() + param.getReviewNum());
        waveSeed.setUpdateTime(new Date());
        if (!this.updateById(waveSeed)) {
            throw new CoolException("播种复核更新失败");
        }
    }
}
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/TaskWaveTimer.java
@@ -101,16 +101,15 @@
                        orderUtils.updateWorkQty(orderDetl.getId(), workQty, true);
                        List<CacheSite> cacheSites = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getSiteStatus, CacheSiteStatusType.O.id).eq(CacheSite::getHostId, hostId));
                        if (cacheSites.isEmpty()) {
                            throw new CoolException("缓存站空间不足,请稍后再试");
                        CacheSite cacheSite = cacheSiteService.getOne(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getOrderId, orderDetl.getOrderId()).eq(CacheSite::getHostId, hostId));
                        if (cacheSite == null) {
                            throw new CoolException("缓存站空间不存在");
                        }
                        CacheSite cacheSite = cacheSites.get(0);
                        WaveSeed waveSeed = new WaveSeed();
                        waveSeed.setSiteId(cacheSite.getId());
                        waveSeed.setSiteNo(cacheSite.getSiteNo());
                        waveSeed.setOrderId(orderDetl.getOrderId());
                        waveSeed.setOrderDetlId(orderDetl.getId());
                        waveSeed.setTaskDetlId(taskDetl.getId());
                        waveSeed.setAnfme(taskDetl.getAnfme());