订单修改
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.card.CardService;
|
||||||
import cn.iocoder.yudao.module.member.service.storeorderdetail.StoreOrderDetailService;
|
import cn.iocoder.yudao.module.member.service.storeorderdetail.StoreOrderDetailService;
|
||||||
import cn.iocoder.yudao.module.member.service.user.MemberUserService;
|
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.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import org.springframework.data.redis.core.StringRedisTemplate;
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
||||||
@ -68,6 +69,9 @@ public class StoreOrderServiceImpl implements StoreOrderService {
|
|||||||
@Resource
|
@Resource
|
||||||
private DeductionService deductionService;
|
private DeductionService deductionService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private CashregisterinfoApi cashregisterinfoApi;
|
||||||
|
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private StringRedisTemplate storeOrderRedisTemplate;
|
private StringRedisTemplate storeOrderRedisTemplate;
|
||||||
@ -118,12 +122,14 @@ public class StoreOrderServiceImpl implements StoreOrderService {
|
|||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public StoreOrderDO createOrder(StoreOrderDto dto) {
|
public StoreOrderDO createOrder(StoreOrderDto dto) {
|
||||||
StoreOrderDO storeOrderDO = new StoreOrderDO();
|
StoreOrderDO storeOrderDO = new StoreOrderDO();
|
||||||
|
Long storeId = cashregisterinfoApi.getStoreId(dto.getEquipmentCode());
|
||||||
BeanUtil.copyProperties(dto, storeOrderDO);
|
BeanUtil.copyProperties(dto, storeOrderDO);
|
||||||
List<StoreGoodsDto> equipmentGoodsCustoms = dto.getEquipmentGoodsCustoms();
|
List<StoreGoodsDto> equipmentGoodsCustoms = dto.getEquipmentGoodsCustoms();
|
||||||
double sum = equipmentGoodsCustoms.stream()
|
double sum = equipmentGoodsCustoms.stream()
|
||||||
.mapToDouble(StoreGoodsDto::getTotalPrice)
|
.mapToDouble(StoreGoodsDto::getTotalPrice)
|
||||||
.sum();
|
.sum();
|
||||||
storeOrderDO.setTotalPrice(sum);
|
storeOrderDO.setTotalPrice(sum);
|
||||||
|
storeOrderDO.setCarteenId(storeId);
|
||||||
storeOrderMapper.insert(storeOrderDO);
|
storeOrderMapper.insert(storeOrderDO);
|
||||||
ArrayList<StoreOrderDetailDO> detailDOS = new ArrayList<>();
|
ArrayList<StoreOrderDetailDO> detailDOS = new ArrayList<>();
|
||||||
for (StoreGoodsDto storeGoodsDto : equipmentGoodsCustoms) {
|
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.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.DeviceInfoPageReqVO;
|
||||||
import cn.iocoder.yudao.module.system.controller.admin.deviceinfo.vo.DeviceInfoSaveReqVO;
|
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.deviceInfo.DeviceInfoDO;
|
||||||
import cn.iocoder.yudao.module.system.dal.dataobject.facedeviceinfo.FaceDeviceInfoDO;
|
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.deviceInfo.DeviceInfoMapper;
|
||||||
import cn.iocoder.yudao.module.system.dal.mysql.facedeviceinfo.FaceDeviceInfoMapper;
|
import cn.iocoder.yudao.module.system.dal.mysql.facedeviceinfo.FaceDeviceInfoMapper;
|
||||||
import cn.iocoder.yudao.module.system.enums.ErrorCodeConstants;
|
import cn.iocoder.yudao.module.system.enums.ErrorCodeConstants;
|
||||||
@ -47,6 +49,9 @@ public class DeviceInfoServiceImpl implements DeviceInfoService {
|
|||||||
@Resource
|
@Resource
|
||||||
private FaceDeviceInfoMapper faceDeviceInfoMapper;
|
private FaceDeviceInfoMapper faceDeviceInfoMapper;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private CashRegisterInfoMapper cashRegisterInfoMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Long createDeviceInfo(DeviceInfoSaveReqVO createReqVO) {
|
public Long createDeviceInfo(DeviceInfoSaveReqVO createReqVO) {
|
||||||
// 插入
|
// 插入
|
||||||
@ -109,10 +114,14 @@ public class DeviceInfoServiceImpl implements DeviceInfoService {
|
|||||||
faceDeviceInfoMapper.update(new FaceDeviceInfoDO(),new LambdaUpdateWrapper<FaceDeviceInfoDO>()
|
faceDeviceInfoMapper.update(new FaceDeviceInfoDO(),new LambdaUpdateWrapper<FaceDeviceInfoDO>()
|
||||||
.eq(FaceDeviceInfoDO::getMac,deviceSn)
|
.eq(FaceDeviceInfoDO::getMac,deviceSn)
|
||||||
.set(FaceDeviceInfoDO::getAlive,"1"));
|
.set(FaceDeviceInfoDO::getAlive,"1"));
|
||||||
|
cashRegisterInfoMapper.update(new CashRegisterInfoDO(),new LambdaUpdateWrapper<CashRegisterInfoDO>()
|
||||||
|
.eq(CashRegisterInfoDO::getEquipmentCode,deviceSn)
|
||||||
|
.set(CashRegisterInfoDO::getAlive,"1"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int updateAlive() {
|
public int updateAlive() {
|
||||||
|
//称重机
|
||||||
List<String> updateList = new ArrayList<>();
|
List<String> updateList = new ArrayList<>();
|
||||||
List<DeviceInfoDO> deviceInfoDOS = deviceInfoMapper.selectList();
|
List<DeviceInfoDO> deviceInfoDOS = deviceInfoMapper.selectList();
|
||||||
List<String> devuceList = deviceInfoDOS.stream().map(DeviceInfoDO::getDeviceIp).collect(Collectors.toList());
|
List<String> devuceList = deviceInfoDOS.stream().map(DeviceInfoDO::getDeviceIp).collect(Collectors.toList());
|
||||||
@ -135,7 +144,7 @@ public class DeviceInfoServiceImpl implements DeviceInfoService {
|
|||||||
.set(DeviceInfoDO::getAlive,"0")
|
.set(DeviceInfoDO::getAlive,"0")
|
||||||
.in(DeviceInfoDO::getDeviceIp,updateList));
|
.in(DeviceInfoDO::getDeviceIp,updateList));
|
||||||
}
|
}
|
||||||
|
//人脸
|
||||||
List<String> upList = new ArrayList<>();
|
List<String> upList = new ArrayList<>();
|
||||||
List<FaceDeviceInfoDO> faceDeviceInfoDOS = faceDeviceInfoMapper.selectList();
|
List<FaceDeviceInfoDO> faceDeviceInfoDOS = faceDeviceInfoMapper.selectList();
|
||||||
List<String> macList = faceDeviceInfoDOS.stream().map(FaceDeviceInfoDO::getMac).collect(Collectors.toList());
|
List<String> macList = faceDeviceInfoDOS.stream().map(FaceDeviceInfoDO::getMac).collect(Collectors.toList());
|
||||||
@ -159,7 +168,32 @@ public class DeviceInfoServiceImpl implements DeviceInfoService {
|
|||||||
.in(FaceDeviceInfoDO::getMac,upList));
|
.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(){
|
public String getHearder(){
|
||||||
|
Reference in New Issue
Block a user