diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java index b5b8fb3429..1e1c715cc2 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java @@ -232,10 +232,10 @@ public class ErpSaleOrderServiceImpl implements ErpSaleOrderService { if (item.getOutCount().equals(outCount)) { return; } - if (outCount.compareTo(item.getCount()) > 0) { - throw exception(SALE_ORDER_ITEM_OUT_FAIL_PRODUCT_EXCEED, - productService.getProduct(item.getProductId()).getName(), item.getCount()); - } +// if (outCount.compareTo(item.getCount()) > 0) { +// throw exception(SALE_ORDER_ITEM_OUT_FAIL_PRODUCT_EXCEED, +// productService.getProduct(item.getProductId()).getName(), item.getCount()); +// } saleOrderItemMapper.updateById(new ErpSaleOrderItemDO().setId(item.getId()).setOutCount(outCount)); }); // 2. 更新销售订单 diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOutServiceImpl.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOutServiceImpl.java index e74adc4194..a0251fad9d 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOutServiceImpl.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOutServiceImpl.java @@ -104,6 +104,8 @@ public class ErpSaleOutServiceImpl implements ErpSaleOutService { .setNo(no).setStatus(ErpAuditStatus.PROCESS.getStatus())) .setOrderNo(saleOrder.getNo()).setCustomerId(saleOrder.getCustomerId()); calculateTotalPrice(saleOut, saleOutItems); + if(saleOut.getReceiptPrice()==null) + saleOut.setReceiptPrice(BigDecimal.ZERO); saleOutMapper.insert(saleOut); // 2.2 插入出库项 saleOutItems.forEach(o -> o.setOutId(saleOut.getId())); diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/mqtt/MqttServerDataController.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/mqtt/MqttServerDataController.java index 2df1fcf7e0..f5c0ef01a7 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/mqtt/MqttServerDataController.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/mqtt/MqttServerDataController.java @@ -110,4 +110,17 @@ public class MqttServerDataController { } return success(BigDecimal.ZERO.doubleValue()); } + @PostMapping("/setSimulateValue") + @Operation(summary = "设置模拟数据默认值") + public CommonResult setSimulateValue(@RequestParam("id")Long id,@RequestParam("resetValue") double resetValue) { + if(id!=null){ + FormulaRecordDO recordDO = formulaRecordMapper.selectById(id); + if(recordDO==null)return success("操作失败"); + + recordDO.setDataValue(BigDecimal.valueOf(resetValue)); + formulaRecordMapper.updateById(recordDO); + return success("操作失败"); + } + return success("操作失败"); + } } \ No newline at end of file diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/framework/web/ScheduledService.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/framework/web/ScheduledService.java new file mode 100644 index 0000000000..629da9bf71 --- /dev/null +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/framework/web/ScheduledService.java @@ -0,0 +1,43 @@ +package cn.iocoder.yudao.module.mes.framework.web; + +import cn.hutool.core.util.RandomUtil; +import cn.iocoder.yudao.module.iot.dal.dataobject.formula.FormulaRecordDO; +import cn.iocoder.yudao.module.iot.dal.mysql.formula.FormulaRecordMapper; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; +import java.math.BigDecimal; + +@Component +@EnableScheduling +public class ScheduledService { + @Resource + private FormulaRecordMapper formulaRecordMapper; + /**定时读取PLC*/ + //@Scheduled(fixedDelay = 1000) + public void readPLCJob() { + System.out.println("-------定时读取PLC-------"); + } + + private void dealRecord(Long id, String type, boolean random, double plusValue, int min, int max){ + if(id!=null){ + FormulaRecordDO recordDO = formulaRecordMapper.selectById(id); + if(recordDO==null)return; + if(random){ + if(type.equals("int")){ + int i = RandomUtil.randomInt(min,max); + recordDO.setDataValue(recordDO.getDataValue().add(BigDecimal.valueOf(i))); + } + if(type.equals("double")){ + double i = RandomUtil.randomDouble(min,max); + recordDO.setDataValue(recordDO.getDataValue().add(BigDecimal.valueOf(i))); + } + } + else{ + recordDO.setDataValue(recordDO.getDataValue().add(BigDecimal.valueOf(plusValue))); + } + formulaRecordMapper.updateById(recordDO); + } + } +}