This commit is contained in:
wangh 2024-02-27 14:03:52 +08:00
commit 00386746aa
25 changed files with 149 additions and 104 deletions

View File

@ -49,3 +49,11 @@ export function deleteList(id) {
})
}
export function getoilnum(id) {
return request({
url: 'petrolStationManagement/oilNumber/getOilPrice/'+id,
method: 'get',
})
}

View File

@ -110,52 +110,52 @@
}
.hideSidebar {
.sidebar-container {
width: 54px !important;
}
.main-container {
margin-left: 54px;
}
.submenu-title-noDropdown {
padding: 0 !important;
position: relative;
.el-tooltip {
padding: 0 !important;
.svg-icon {
margin-left: 20px;
}
}
}
.el-submenu {
overflow: hidden;
&>.el-submenu__title {
padding: 0 !important;
.svg-icon {
margin-left: 20px;
}
}
}
.el-menu--collapse {
.el-submenu {
&>.el-submenu__title {
&>span {
height: 0;
width: 0;
overflow: hidden;
visibility: hidden;
display: inline-block;
}
}
}
}
//.sidebar-container {
// width: 54px !important;
//}
//
//.main-container {
// margin-left: 54px;
//}
//
//.submenu-title-noDropdown {
// padding: 0 !important;
// position: relative;
// .el-tooltip {
// padding: 0 !important;
//
// .svg-icon {
// margin-left: 20px;
// }
// }
//}
//
//.el-submenu {
// overflow: hidden;
//
// &>.el-submenu__title {
// padding: 0 !important;
//
// .svg-icon {
// margin-left: 20px;
// }
//
// }
//}
//
//.el-menu--collapse {
// .el-submenu {
// &>.el-submenu__title {
// &>span {
// height: 0;
// width: 0;
// overflow: hidden;
// visibility: hidden;
// display: inline-block;
// }
// }
// }
//}
}
.el-menu--collapse .el-menu .el-submenu {

View File

@ -2,8 +2,8 @@
<div class="sidebar-logo-container" :class="{'collapse':collapse}" :style="{ backgroundColor: sideTheme === 'theme-dark' ? variables.menuBackground : variables.menuLightBackground }">
<transition name="sidebarLogoFade">
<router-link v-if="collapse" key="collapse" class="sidebar-logo-link" to="/">
<img v-if="logo" :src="logo" class="sidebar-logo" />
<h1 v-else class="sidebar-title" :style="{ color: sideTheme === 'theme-dark' ? variables.logoTitleColor : variables.logoLightTitleColor }">{{ title }} </h1>
<img :src="logo" class="sidebar-logo" />
<h1 class="sidebar-title" :style="{ color: sideTheme === 'theme-dark' ? variables.logoTitleColor : variables.logoLightTitleColor }">{{ title }} </h1>
<!-- <h1 v-else class="sidebar-title" style="color: #00ff80" >{{ title }} </h1>-->
</router-link>
<router-link v-else key="expand" class="sidebar-logo-link" to="/">

View File

@ -46,10 +46,10 @@
<el-table-column
type="index"
align="center"
label="序"
label=""
>
</el-table-column>
<el-table-column label="活动编号" align="center" prop="id" />
<!-- <el-table-column label="活动编号" align="center" prop="id" />-->
<el-table-column label="活动名称" align="center" prop="name" />
<el-table-column label="会员等级" align="center" prop="dieselUserLevel" >
<template slot-scope="scope">
@ -159,13 +159,13 @@
</el-form-item>
<el-form-item label="参与条件" prop="participationCondition">
<!-- <el-form-item label="参与条件" prop="participationCondition">
<el-select v-model="form.participationCondition" clearable placeholder="请选择天参与条件">
<el-option label="不限制" value="0"></el-option>
<el-option label="优惠订单不参与" value="1"></el-option>
</el-select>
</el-form-item>
</el-form-item>-->
<el-form-item label="参与次数类别" prop="participationAcount">
<el-select v-model="form.participationAcount" clearable placeholder="请选择参与次数类别">
<el-option label="不限制" value="0"></el-option>

View File

@ -46,10 +46,10 @@
<el-table-column
type="index"
align="center"
label="序"
label=""
>
</el-table-column>
<el-table-column label="活动编号" align="center" prop="id" />
<!-- <el-table-column label="活动编号" align="center" prop="id" />-->
<el-table-column label="活动名称" align="center" prop="name" />
<el-table-column label="会员等级" align="center" prop="dieselUserLevel" >
<template slot-scope="scope">
@ -163,13 +163,13 @@
<el-option :label="item.name" :value="item.id.toString()" v-for="(item,index) in userGradeList" :key="index" > </el-option>
</el-select>
</el-form-item>
<el-form-item label="参与条件" prop="participationCondition">
<!-- <el-form-item label="参与条件" prop="participationCondition">
<el-select v-model="form.participationCondition" clearable placeholder="请选择天参与条件">
<el-option label="不限制" value="0"></el-option>
<el-option label="优惠订单不参与" value="1"></el-option>
</el-select>
</el-form-item>
</el-form-item>-->
<el-form-item label="参与次数类别" prop="participationAcount">
<el-select v-model="form.participationAcount" clearable placeholder="请选择参与次数类别">
<el-option label="不限制" value="0"></el-option>

View File

@ -188,14 +188,14 @@
<template slot="append">/</template>
</el-input>
</el-form-item>
<el-form-item label="充值金额" prop="rechargeBalance">
<el-form-item label="满足金额" prop="rechargeBalance">
<el-input v-model="ruleForm.rechargeBalance" min="1">
<template slot="append"></template>
</el-input>
</el-form-item>
<el-form-item label="所得升数" prop="incomeLitres">
<el-form-item label="换算升数" prop="incomeLitres">
<el-input v-model="ruleForm.incomeLitres.toFixed(2)">
<template slot="append"></template>
<template slot="append">L</template>
</el-input>
</el-form-item>
<el-form-item label="赠送积分" prop="points">
@ -255,7 +255,7 @@
</template>
<script>
import { getList,oilName,addList,eitList,getById} from "@/api/EventMarketing/oilBlock";
import { getList,oilName,addList,eitList,getById,getoilnum} from "@/api/EventMarketing/oilBlock";
export default {
dicts: ['oil_type'],
name: 'index',
@ -366,16 +366,15 @@
},
methods:{
//
//
radiovalue(lable){
this.oilList = []
oilName(this.queryParams.type).then(res=>{
this.oilList = res.data.records
console.log('我的油站' ,res)
})
this.getlist()
},
getlist(){
this.queryParams.pageNo=this.pageNo

View File

@ -444,15 +444,16 @@
<div>
<el-input v-model="authCode"
v-focus ref="getFocus"
autofocus
autofocus maxlength="10"
@input="changeSeekZero"
@keydown.enter.native="collection"
oninput="value=value.replace(/^\D*(\d*(?:\.\d{0,2})?).*$/g, '$1')"
placeholder="请输入收款金额">
</el-input>
</div>
<div style="text-align: right;margin: 10px 0">
<span>应找零</span>
<span style="color: red;font-size: 18px"> {{ seekZero }}</span>
<span style="color: red;font-size: 18px"> {{ seekZero.toFixed(2) }}</span>
</div>
</div>
<el-divider></el-divider>
@ -1068,9 +1069,9 @@ export default {
//
changeSeekZero(){
if (this.flag === 1) {
this.seekZero = (this.authCode - this.realyPayBills).toFixed(2)
this.seekZero = this.authCode - this.realyPayBills
} else if (this.flag === 2) {
this.seekZero = (this.authCode - this.realyPayBills).toFixed(2)
this.seekZero = this.authCode - this.realyPayBills
}
},
handleQuery(){

View File

@ -7,6 +7,7 @@
</div>
<el-scrollbar :class="settings.sideTheme" wrap-class="scrollbar-wrapper">
<el-menu
:default-active="activeMenu"
:collapse="isCollapse"
:background-color="settings.sideTheme === 'theme-dark' ? variables.menuBackground : variables.menuLightBackground"
@ -14,7 +15,7 @@
:unique-opened="true"
:active-text-color="settings.theme"
:collapse-transition="false"
mode="vertical"
mode="horizontal "
style="margin-bottom: 80px;"
>
<sidebar-item

View File

@ -293,10 +293,7 @@ export default {
// /
toggleExpandAll() {
this.refreshTable = false;
this.isExpandAll = !this.isExpandAll;
this.$nextTick(() => {
this.refreshTable = true;
});
},
//
handleUpdate(row) {

View File

@ -127,9 +127,9 @@ public class ActiveConsumptionController extends BaseController {
* @param id 主键
* @return 单条数据
*/
@GetMapping("/detailRecord/{id}")
public ResponseObject detail(@PathVariable Serializable id) {
return getSuccessResult(this.activeConsumptionChildService.detailRecord(id));
@GetMapping("/detailRecord")
public ResponseObject detail(@Param("activeConsumption") ActiveConsumption activeConsumption) {
return getSuccessResult(this.activeConsumptionChildService.detailRecord(activeConsumption));
}
/**

View File

@ -1,6 +1,7 @@
package com.fuint.business.marketingActivity.activeConsumption.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fuint.business.marketingActivity.activeConsumption.entity.ActiveConsumption;
import com.fuint.business.marketingActivity.activeConsumption.entity.ActiveConsumptionChild;
import com.fuint.business.marketingActivity.cardFavorable.entity.CardFavorableRecord;
import com.fuint.business.marketingActivity.cardFavorable.vo.CardFavorableCountVO;
@ -19,7 +20,7 @@ public interface ActiveConsumptionChildService extends IService<ActiveConsumptio
List<ActiveConsumptionChild> selectList(Serializable id);
List<CardFavorableRecord> detailRecord(Serializable id);
List<CardFavorableRecord> detailRecord(ActiveConsumption activeConsumption);
CardFavorableCountVO detailCount(Serializable id);
}

View File

@ -2,6 +2,7 @@ package com.fuint.business.marketingActivity.activeConsumption.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fuint.business.marketingActivity.activeConsumption.entity.ActiveConsumption;
import com.fuint.business.marketingActivity.activeConsumption.entity.ActiveConsumptionChild;
import com.fuint.business.marketingActivity.activeConsumption.mapper.ActiveConsumptionChildMapper;
import com.fuint.business.marketingActivity.activeConsumption.service.ActiveConsumptionChildService;
@ -10,6 +11,7 @@ import com.fuint.business.marketingActivity.cardFavorable.service.CardFavorableR
import com.fuint.business.marketingActivity.cardFavorable.vo.CardFavorableCountVO;
import com.fuint.common.dto.AccountInfo;
import com.fuint.common.util.TokenUtil;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@ -35,11 +37,15 @@ public class ActiveConsumptionChildServiceImpl extends ServiceImpl<ActiveConsump
}
@Override
public List<CardFavorableRecord> detailRecord(Serializable id) {
public List<CardFavorableRecord> detailRecord(ActiveConsumption activeConsumption) {
// 查询优惠券领取记录
AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
LambdaQueryWrapper<CardFavorableRecord> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(CardFavorableRecord::getActiveId, id);
queryWrapper.eq(CardFavorableRecord::getActiveId, activeConsumption.getId());
queryWrapper.eq(CardFavorableRecord::getStoreId, nowAccountInfo.getStoreId());
if (ObjectUtils.isNotEmpty(activeConsumption.getActiveStartTime()) && ObjectUtils.isNotEmpty(activeConsumption.getActiveEndTime())){
queryWrapper.between(CardFavorableRecord::getCreateTime, activeConsumption.getActiveStartTime(), activeConsumption.getActiveEndTime());
}
queryWrapper.eq(CardFavorableRecord::getStoreId, nowAccountInfo.getStoreId());
List<CardFavorableRecord> favorableRecords = cardFavorableRecordService.list(queryWrapper);
return favorableRecords;

View File

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
@ -15,6 +16,7 @@ import java.util.Date;
* @since 2023-11-11 17:13:11
*/
@SuppressWarnings("serial")
@Data
public class ActiveDiscountChild extends Model<com.fuint.business.marketingActivity.activeDiscount.entity.ActiveDiscountChild> {
//主键id
@TableId(type = IdType.AUTO)
@ -31,6 +33,8 @@ public class ActiveDiscountChild extends Model<com.fuint.business.marketingActiv
private Double deductionAmount;
//创建者
private String createBy;
//满足金额类型 1订单金额 2实付金额
private String moneyType;
//创建时间
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
private Date createTime;

View File

@ -45,10 +45,10 @@ public class CardFuelDiesel extends Model<CardFuelDiesel> {
//活动时间 1:不限时间 2自定义时间
private String activeTime;
//活动开始时间
//@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
private Date startTime;
//活动结束时间
//@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
private Date endTime;
//活动进度
private String activityProgress;

View File

@ -351,7 +351,7 @@ public class CardFuelRecordServiceImpl implements CardFuelRecordService {
for (Map<String, String> stringObjectMap : resultMapList) {
if (stringObjectMap.get("type").equals(cardFuelRecord.getType()) &&
stringObjectMap.get("oilType").equals(cardFuelRecord.getOilType())) {
String refuelMoney = stringObjectMap.get("refuelMoney").toString();
String refuelMoney = String.valueOf(stringObjectMap.get("refuelMoney"));
// Double.valueOf(refuelMoney);
BigDecimal ref = new BigDecimal(refuelMoney);

View File

@ -101,7 +101,7 @@ public class QrCodeUtils {
File file1 = new File("/temp/qrCode/");
// 判断目录是否存在
if (!file1.exists()) {
file1.mkdir();
file1.mkdirs();
}
FileOutputStream outImgStream = new FileOutputStream(outImgPath);

View File

@ -80,7 +80,7 @@ public class QRCodeServiceImpl extends ServiceImpl<QRCodeMapper, QRCode> impleme
File file1 = new File("/temp/qrCode/");
// 判断目录是否存在
if (!file1.exists()) {
file1.mkdir();
file1.mkdirs();
}
File file =new File(finalPath);

View File

@ -1,8 +1,8 @@
version: 1.0.0
files:
- url: fuint收银系统 Setup 1.0.0.exe
- url: 蓝鲸智慧油站收银台 Setup 1.0.0.exe
sha512: l8J4ix1xsfolq3NvAnhnnJqGvA/5vEESaDt+SJn9cld2YBC/RhWK0OuTSW+bXSm/EAfIFCciDGZ589pkTKALPg==
size: 76790468
path: fuint收银系统 Setup 1.0.0.exe
path: 蓝鲸智慧油站收银台 Setup 1.0.0.exe
sha512: l8J4ix1xsfolq3NvAnhnnJqGvA/5vEESaDt+SJn9cld2YBC/RhWK0OuTSW+bXSm/EAfIFCciDGZ589pkTKALPg==
releaseDate: '2023-09-06T05:42:03.990Z'

View File

@ -1,3 +1,3 @@
API_HOST = 'https://www.fuint.cn/fuint-application/'
NODE_ENV = 'development'
SYSTEM_NAME = 'fuint收银系统'
SYSTEM_NAME = '蓝鲸智慧油站收银台'

View File

@ -28,7 +28,7 @@
"url": "http://127.0.0.1"
}
],
"productName": "fuint收银系统",
"productName": "蓝鲸智慧油站收银台",
"appId": "cn.fuint.cashier",
"directories": {
"output": "build"

View File

@ -59,7 +59,7 @@ function info() {
dialog.showMessageBox({
title: '关于',
type: 'info',
message: 'fuint收银系统',
message: '蓝鲸智慧油站收银台',
detail: `版本信息:${version}\n引擎版本:${process.versions.v8}\n当前系统:${os.type()} ${os.arch()} ${os.release()}`,
noLink: true,
buttons: ['查看官网', '确定']

View File

@ -1,5 +1,5 @@
# 页面标题
VUE_APP_TITLE = fuint收银系统
VUE_APP_TITLE = 蓝鲸智慧油站收银台
# 测试环境配置
ENV = 'staging'

View File

@ -1,7 +1,7 @@
{
"name": "fuintCashier",
"version": "1.0.1",
"description": "fuint收银系统",
"description": "蓝鲸智慧油站收银台",
"author": "FSQ",
"license": "MIT",
"scripts": {

View File

@ -120,14 +120,14 @@
</div>
<div>-{{ oilDiscount.toFixed(2) }}</div>
</div>
<div class="center-left-hj" v-show="isMember && refuelMoney">
<div class="center-left-hj" v-show="isMember && refuelMoney1.length>0">
<div>
<el-checkbox
style="color: black;font-size: 16px"
v-model="checkAll3" @change="handleCheckAllChange3">
</el-checkbox><!--:indeterminate="isIndeterminate3"-->
囤油卡
<div style="margin: 5px 0" v-for="(item,index) in refuelMoney" :key="index">
<div style="margin: 5px 0" v-for="(item,index) in refuelMoney1" :key="index">
{{ item.type }}
<!-- <span style="color: #00afff">{{ item.oilType }}</span>-->
余额{{ item.refuelMoney }}L
@ -482,9 +482,10 @@
<div>
<el-input v-model="authCode"
v-focus ref="getFocus"
:key="inputKey"
:key="inputKey" maxlength="10"
@input="changeSeekZero"
@keydown.enter.native="collection"
oninput="value=value.replace(/^\D*(\d*(?:\.\d{0,2})?).*$/g, '$1')"
placeholder="请输入收款金额">
</el-input>
</div>
@ -862,9 +863,10 @@
<div>
<el-input v-model="authCode"
v-focus ref="getFocus"
autofocus
autofocus maxlength="10"
@input="changeSeekZero1"
@keydown.enter.native="collection1"
oninput="value=value.replace(/^\D*(\d*(?:\.\d{0,2})?).*$/g, '$1')"
placeholder="请输入收款金额">
</el-input>
</div>
@ -1123,6 +1125,8 @@
<div v-else-if="payType == 'ALIPAY'">支付宝</div>
<div v-else-if="payType == 'UNIONPAY'">银联二维码</div>
<div v-else-if="payType == 'credit'">挂账</div>
<div v-else-if="payType == 'oilCard'">囤油卡</div>
<div v-else-if="payType == 'balance'">储值卡</div>
<div v-else>小程序码</div>
</div>
<div class="input-box1">
@ -1166,7 +1170,7 @@
<div>充值金额</div>
<div>{{ realyPayBills }}</div>
</div>
<div class="input-box">
<div class="input-box" v-if="cardValueForm.giftBalance">
<div>赠送金额</div>
<div>{{ cardValueForm.giftBalance }}</div>
</div>
@ -1355,6 +1359,7 @@
fullReduction:0,
//
refuelMoney:null,
refuelMoney1:[],
paymentActive:{
type: 0,
amount: 0,
@ -1908,6 +1913,7 @@
} else if (payStatus === "payFail") {
this_.isPaySuccess = false;
this_.isQuery = false;
clearInterval(timer);
}
}
})
@ -1979,13 +1985,14 @@
this_.isPaySuccess = true;
this_.isQuery = false;
this_.rechargeOilCard = true
await this_.printLocally2()
await this_.getMemberAfter();
await this.printLocally2()
await this.getMemberAfter();
clearInterval(timer);
}
if (response.data.payStatus == "payFail") {
this_.isPaySuccess = false;
this_.isQuery = false;
clearInterval(timer);
}
}
})
@ -3643,6 +3650,7 @@
for (let i = 0;i < _this.refuelMoney.length;i++){
//
if (_this.refuelMoney[i].oilType==item.oilName && _this.refuelMoney[i].refuelMoney>0){
this.refuelMoney1.push(item)
id = item.id
_this.isOilStorageCard = true
if (_this.refuelMoney[i].refuelMoney >= item.liters){
@ -3653,10 +3661,6 @@
hoardAmount = item.amount - (_this.refuelMoney[i].refuelMoney * item.oilPrice).toFixed(2)
}
}
// }else {
// _this.$message.error(item.liters)
// hoardAmount = item.amount
// }
}
}
_this.consumeRefuelMoney += +conRefMon
@ -4141,6 +4145,29 @@
},
//
payMethod(payType){
if (payType == 'oilCard'){
if (this.isMember){
if (this.refuelMoney1.length>0){
this.checkAll3 = true
this.handleCheckAllChange3(true)
}else {
this.$message.error("请先充值囤油卡")
return;
}
}else {
this.$message.error("请先选择会员")
return
}
}
if (payType == 'balance'){
if (this.isMember){
this.checkAll4 = true
this.handleCheckAllChange4(true)
}else {
this.$message.error("请先选择会员")
return;
}
}
this.typeIdex = payType
this.map.payType = payType;
this.payType = payType;

View File

@ -445,15 +445,16 @@
<div>
<el-input v-model="authCode"
v-focus ref="getFocus"
autofocus
autofocus maxlength="10"
@input="changeSeekZero"
@keydown.enter.native="collection"
oninput="value=value.replace(/^\D*(\d*(?:\.\d{0,2})?).*$/g, '$1')"
placeholder="请输入收款金额">
</el-input>
</div>
<div style="text-align: right;margin: 10px 0">
<span>应找零</span>
<span style="color: red;font-size: 18px"> {{ seekZero }}</span>
<span style="color: red;font-size: 18px"> {{ seekZero.toFixed(2) }}</span>
</div>
</div>
<el-divider></el-divider>
@ -1140,9 +1141,9 @@ export default {
//
changeSeekZero(){
if (this.flag === 1) {
this.seekZero = (this.authCode - this.realyPayBills).toFixed(2)
this.seekZero = this.authCode - this.realyPayBills
} else if (this.flag === 2) {
this.seekZero = (this.authCode - this.realyPayBills).toFixed(2)
this.seekZero = this.authCode - this.realyPayBills
}
},
getName(list,type){