From 16e27b2490c94f40fa6876125ffed56cb59acfbc Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期二, 17 十月 2023 17:39:58 +0800 Subject: [PATCH] 计价规则小程序 --- server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java | 48 +++++++++++++++++++++++++++++++++--------------- 1 files changed, 33 insertions(+), 15 deletions(-) diff --git a/server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java index 05b0c97..4a85145 100644 --- a/server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java +++ b/server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java @@ -430,7 +430,7 @@ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "鎵爜鏃犳晥锛屾湭鏌ヨ鍒伴攣澶翠俊鎭�"); } //鏌ヨ閿佸ご鏄惁瀛樺湪杞﹁締 浠ュ強鏄惁姝e父 - if (!locks.getStatus().equals(Constants.ZERO)) { + if (Constants.formatIntegerNum(locks.getStatus())!=Constants.ZERO) { throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "褰撳墠鎵爜閿佸ご鐘舵�侀敊璇紝鏃犳硶杩涜寮�閿�"); } if (StringUtils.isBlank(locks.getBikeCode())) { @@ -541,8 +541,9 @@ * @return */ @Override + @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public int mqttLockInfoEvent(Locks locks){ - if(StringUtils.isBlank(locks.getId()) ||StringUtils.isBlank(locks.getSiteId())){ + if(StringUtils.isBlank(locks.getCode()) ||StringUtils.isBlank(locks.getSiteId())){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"閿佸ご淇℃伅涓婃姤鍙傛暟閿欒锛�"); } //鍒ゆ柇妫�鏌ュ鐞嗙珯鐐归攣澶翠俊鎭� @@ -554,14 +555,19 @@ //濡傛灉鏄紑閿佷笟鍔★紝鍒ゆ柇鏄惁鏈夊紑閿佷腑鐨勪俊鎭� MemberRides memberRides = new MemberRides(); memberRides.setStatus(Constants.MEMBER_RIDES_STATUS.LOCKING.getKey()); - memberRides.setRentLockId(model.getId()); + memberRides.setRentLockId(model.getCode()); + memberRides.setRentSiteId(model.getSiteId()); memberRides.setIsdeleted(Constants.ZERO); memberRides = findOne(memberRides); if(memberRides == null){ return 0; } + MemberRides update = new MemberRides(); + update.setStatus(Constants.MEMBER_RIDES_STATUS.RIDES_RUNNING.getKey()); + update.setEditDate(new Date()); + update.setId(memberRides.getId()); //锛堟洿鏂拌姹傚紑閿佷腑鐨勯攣澶村叧鑱旂殑楠戣璁板綍锛� - memberRidesMapper.updateById( memberRides); + memberRidesMapper.updateById( update); } return 0; } @@ -570,7 +576,7 @@ QueryWrapper<Bikes> wrapper = new QueryWrapper<>(); wrapper.lambda().eq(Bikes::getLockId, model.getCode()); wrapper.lambda().eq(Bikes::getSiteId, model.getSiteId()); - Bikes bikes = bikesMapper.selectOne(wrapper.last("last 1")); + Bikes bikes = bikesMapper.selectOne(wrapper.last("limit 1")); if(bikes != null ) { if ( StringUtils.equals(model.getBikeCode(), bikes.getCode())){ //濡傛灉缁戝畾杞﹁締淇℃伅鍙戠敓缂栧彿锛屾洿鎹㈢粦瀹氬叧绯� @@ -582,6 +588,15 @@ bikesMapper.updateById(bikes); } }else{ + if(StringUtils.isNotBlank(model.getBikeCode())){ + UpdateWrapper<Bikes> updateWrapper = new UpdateWrapper<>(); + updateWrapper.lambda().set(Bikes::getCode, null ); + updateWrapper.lambda().set(Bikes::getParamId, null ); + updateWrapper.lambda().set(Bikes::getEditDate, new Date() ); + updateWrapper.lambda().eq(Bikes::getCode, model.getCode() ); + //娓呯┖鍘熸潵鐨勮嚜琛岃溅缁戝畾鍏崇郴 + bikesMapper.update(null, updateWrapper); + } bikes = new Bikes(); bikes.setId(Constants.getUUID()); bikes.setIsdeleted(Constants.ZERO); @@ -615,7 +630,7 @@ param.setSortnum(Integer.parseInt(type)); param = baseParamMapper.selectOne(new QueryWrapper<>(param).lambda().last("limit 1" )); if(param == null){ - return null; + return type; } return param.getId(); } @@ -635,6 +650,7 @@ sites.setId(locks.getSiteId()); sites.setCreateDate(date); sites.setStatus(Constants.ZERO); + sites.setEditDate(date); sites.setLockNum(1); //鏂板閿佸ご sitesMapper.insert(sites); @@ -652,14 +668,15 @@ model.setStatus(locks.getStatus()); locksMapper.insert(model); }else{ - model.setSiteId(locks.getSiteId()); - model.setIsdeleted(Constants.ZERO); - model.setCode(locks.getCode()); - model.setId(locks.getSiteId()); - model.setEditDate(date); - model.setBikeCode(locks.getBikeCode()); - model.setStatus(locks.getStatus()); - locksMapper.update(null, new QueryWrapper<>(model)); + UpdateWrapper<Locks> updateWrapper = new UpdateWrapper<Locks>(); + updateWrapper.lambda().eq(Locks::getCode, locks.getCode() ); + updateWrapper.lambda().eq(Locks::getSiteId, locks.getSiteId() ); + updateWrapper.lambda().set(Locks::getBikeCode, locks.getBikeCode() ); + updateWrapper.lambda().set(Locks::getStatus, locks.getStatus() ); + updateWrapper.lambda().set(Locks::getEditDate, new Date() ); + updateWrapper.lambda().set(Locks::getIsdeleted, Constants.ZERO); + + locksMapper.update(null,updateWrapper); } model.setSites(sites); return model; @@ -671,6 +688,7 @@ * @return */ @Override + @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public int mqttCloseBikeEvent(MemberRides bikes){ //鍏嶈垂楠戣鏃堕暱鏌ヨ锛屾暟鎹瓧鍏搁厤缃� if(StringUtils.isBlank(bikes.getBikeCode()) ||StringUtils.isBlank(bikes.getBackLockId())||StringUtils.isBlank(bikes.getBackSiteId())){ @@ -681,7 +699,7 @@ wrapper.lambda().eq(MemberRides::getStatus, Constants.MEMBER_RIDES_STATUS.RIDES_RUNNING.getKey()); wrapper.lambda().eq(MemberRides::getIsdeleted, Constants.ZERO); //鏍规嵁杞﹁締缂栫爜鏌ヨ楠戣涓殑楠戣璁板綍淇℃伅锛屽鏋滄湁杩涜杩樿溅鎿嶄綔 - MemberRides memberRides = memberRidesMapper.selectOne(wrapper.last("last 1")); + MemberRides memberRides = memberRidesMapper.selectOne(wrapper.last("limit 1")); if(memberRides!=null){ //杩涜 dealMemberRidesBack(memberRides,bikes); -- Gitblit v1.9.3