订单修改
This commit is contained in:
@ -0,0 +1,40 @@
|
||||
package cn.iocoder.yudao.module.member.controller.app.storegoods;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
||||
import cn.iocoder.yudao.module.member.controller.admin.storegoods.vo.StoreGoodsPageReqVO;
|
||||
import cn.iocoder.yudao.module.member.controller.admin.storegoods.vo.StoreGoodsRespVO;
|
||||
import cn.iocoder.yudao.module.member.controller.admin.storegoods.vo.StoreGoodsSaveReqVO;
|
||||
import cn.iocoder.yudao.module.member.controller.admin.storegoods.vo.StoreSaleGoodsPageVO;
|
||||
import cn.iocoder.yudao.module.member.dal.dataobject.storegoods.StoreGoodsDO;
|
||||
import cn.iocoder.yudao.module.member.service.storegoods.StoreGoodsService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.validation.Valid;
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT;
|
||||
|
||||
@Tag(name = "管理后台 - 商品")
|
||||
@RestController
|
||||
@RequestMapping("/member/store-goods")
|
||||
@Validated
|
||||
public class AppStoreGoodsController {
|
||||
|
||||
@Resource
|
||||
private StoreGoodsService storeGoodsService;
|
||||
|
||||
}
|
@ -25,6 +25,7 @@ import cn.iocoder.yudao.module.member.service.amount.DeductionService;
|
||||
import cn.iocoder.yudao.module.member.service.card.CardService;
|
||||
import cn.iocoder.yudao.module.member.service.storeorderdetail.StoreOrderDetailService;
|
||||
import cn.iocoder.yudao.module.member.service.user.MemberUserService;
|
||||
import cn.iocoder.yudao.module.system.api.cashregisterinfo.CashregisterinfoApi;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import org.springframework.data.redis.core.StringRedisTemplate;
|
||||
@ -68,6 +69,9 @@ public class StoreOrderServiceImpl implements StoreOrderService {
|
||||
@Resource
|
||||
private DeductionService deductionService;
|
||||
|
||||
@Resource
|
||||
private CashregisterinfoApi cashregisterinfoApi;
|
||||
|
||||
|
||||
@Resource
|
||||
private StringRedisTemplate storeOrderRedisTemplate;
|
||||
@ -118,12 +122,14 @@ public class StoreOrderServiceImpl implements StoreOrderService {
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public StoreOrderDO createOrder(StoreOrderDto dto) {
|
||||
StoreOrderDO storeOrderDO = new StoreOrderDO();
|
||||
Long storeId = cashregisterinfoApi.getStoreId(dto.getEquipmentCode());
|
||||
BeanUtil.copyProperties(dto, storeOrderDO);
|
||||
List<StoreGoodsDto> equipmentGoodsCustoms = dto.getEquipmentGoodsCustoms();
|
||||
double sum = equipmentGoodsCustoms.stream()
|
||||
.mapToDouble(StoreGoodsDto::getTotalPrice)
|
||||
.sum();
|
||||
storeOrderDO.setTotalPrice(sum);
|
||||
storeOrderDO.setCarteenId(storeId);
|
||||
storeOrderMapper.insert(storeOrderDO);
|
||||
ArrayList<StoreOrderDetailDO> detailDOS = new ArrayList<>();
|
||||
for (StoreGoodsDto storeGoodsDto : equipmentGoodsCustoms) {
|
||||
|
@ -6,8 +6,10 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.deviceinfo.vo.DeviceInfoPageReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.deviceinfo.vo.DeviceInfoSaveReqVO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.cashregisterinfo.CashRegisterInfoDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.deviceInfo.DeviceInfoDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.facedeviceinfo.FaceDeviceInfoDO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.cashregisterinfo.CashRegisterInfoMapper;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.deviceInfo.DeviceInfoMapper;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.facedeviceinfo.FaceDeviceInfoMapper;
|
||||
import cn.iocoder.yudao.module.system.enums.ErrorCodeConstants;
|
||||
@ -47,6 +49,9 @@ public class DeviceInfoServiceImpl implements DeviceInfoService {
|
||||
@Resource
|
||||
private FaceDeviceInfoMapper faceDeviceInfoMapper;
|
||||
|
||||
@Resource
|
||||
private CashRegisterInfoMapper cashRegisterInfoMapper;
|
||||
|
||||
@Override
|
||||
public Long createDeviceInfo(DeviceInfoSaveReqVO createReqVO) {
|
||||
// 插入
|
||||
@ -109,10 +114,14 @@ public class DeviceInfoServiceImpl implements DeviceInfoService {
|
||||
faceDeviceInfoMapper.update(new FaceDeviceInfoDO(),new LambdaUpdateWrapper<FaceDeviceInfoDO>()
|
||||
.eq(FaceDeviceInfoDO::getMac,deviceSn)
|
||||
.set(FaceDeviceInfoDO::getAlive,"1"));
|
||||
cashRegisterInfoMapper.update(new CashRegisterInfoDO(),new LambdaUpdateWrapper<CashRegisterInfoDO>()
|
||||
.eq(CashRegisterInfoDO::getEquipmentCode,deviceSn)
|
||||
.set(CashRegisterInfoDO::getAlive,"1"));
|
||||
}
|
||||
|
||||
@Override
|
||||
public int updateAlive() {
|
||||
//称重机
|
||||
List<String> updateList = new ArrayList<>();
|
||||
List<DeviceInfoDO> deviceInfoDOS = deviceInfoMapper.selectList();
|
||||
List<String> devuceList = deviceInfoDOS.stream().map(DeviceInfoDO::getDeviceIp).collect(Collectors.toList());
|
||||
@ -135,7 +144,7 @@ public class DeviceInfoServiceImpl implements DeviceInfoService {
|
||||
.set(DeviceInfoDO::getAlive,"0")
|
||||
.in(DeviceInfoDO::getDeviceIp,updateList));
|
||||
}
|
||||
|
||||
//人脸
|
||||
List<String> upList = new ArrayList<>();
|
||||
List<FaceDeviceInfoDO> faceDeviceInfoDOS = faceDeviceInfoMapper.selectList();
|
||||
List<String> macList = faceDeviceInfoDOS.stream().map(FaceDeviceInfoDO::getMac).collect(Collectors.toList());
|
||||
@ -159,7 +168,32 @@ public class DeviceInfoServiceImpl implements DeviceInfoService {
|
||||
.in(FaceDeviceInfoDO::getMac,upList));
|
||||
}
|
||||
|
||||
return updateList.size()+upList.size();
|
||||
//收银机
|
||||
List<String> cashUpList = new ArrayList<>();
|
||||
List<CashRegisterInfoDO> cashRegisterInfoDOS = cashRegisterInfoMapper.selectList();
|
||||
List<String> codes = cashRegisterInfoDOS.stream().map(CashRegisterInfoDO::getEquipmentCode).collect(Collectors.toList());
|
||||
for (String code : codes){
|
||||
if(StringUtils.isBlank(code)){
|
||||
continue;
|
||||
}
|
||||
String time = RedisTemplate.opsForValue().get(code);
|
||||
if(StringUtils.isBlank(code)){
|
||||
upList.add(code);
|
||||
continue;
|
||||
}
|
||||
if(System.currentTimeMillis()-Long.valueOf(time)>120000){
|
||||
upList.add(code);
|
||||
}
|
||||
}
|
||||
|
||||
if(CollectionUtil.isNotEmpty(cashUpList)){
|
||||
cashRegisterInfoMapper.update(new CashRegisterInfoDO(),new LambdaUpdateWrapper<CashRegisterInfoDO>()
|
||||
.set(CashRegisterInfoDO::getAlive,"0")
|
||||
.in(CashRegisterInfoDO::getEquipmentCode,upList));
|
||||
}
|
||||
|
||||
|
||||
return updateList.size()+upList.size()+cashUpList.size();
|
||||
}
|
||||
|
||||
public String getHearder(){
|
||||
|
Reference in New Issue
Block a user