# Conflicts:
#	fuintCashierWeb/src/views/cashier/NewComponents/newHome.vue
This commit is contained in:
Vinjor 2024-09-27 10:10:29 +08:00
commit d0e3751aac
49 changed files with 1278 additions and 1259 deletions

View File

@ -11,7 +11,7 @@ VUE_APP_BASE_API = '/dev-api'
VUE_APP_PUBLIC_PATH = '/'
# 后端接口地址
VUE_APP_SERVER_URL = 'http://192.168.31.95:8080/'
VUE_APP_SERVER_URL = 'http://127.0.0.1:8080/'
# http://192.168.0.121:8080/

View File

@ -270,6 +270,22 @@
</div>
</el-form-item>
<el-form-item v-if="ruleForm.type == '5'" label="适用商品" prop="productLimit" style="width: 50%;">
<el-radio v-model="ruleForm.productLimit" label="1">不限</el-radio>
<el-radio v-model="ruleForm.productLimit" label="2">自定义</el-radio>
<el-select multiple v-if="ruleForm.productLimit == 2" v-model="ruleForm.productIdList" placeholder="请选择商品名称(可多选)" style="margin-left: 10px;width:300px">
<el-option
v-for="item in goodsList"
:key="item.id+''"
:label="item.name"
:value="item.id+''"></el-option>
</el-select>
<!-- </div>-->
<!-- </div>-->
</el-form-item>
<!-- 生效日期 effectiveDateStart 字段 -->
<el-form-item label="生效日期" required style="width: 50%;" v-if="ruleForm.timeType=='2'">
<el-date-picker
@ -459,6 +475,7 @@ import {
getqb,
getsk
} from "@/api/EventMarketing/giftBlock";
import {delLJGoods, listLJGoods} from "@/api/convenienceStore/ljgoods";
import imgUpload from "@/components/ImageUpload/index.vue"
import {getToken} from "@/utils/auth";
import imgUpload1 from "@/components/map/imgUpload.vue";
@ -505,68 +522,69 @@ export default {
onelist: [],
twolist: [],
threelist: [],
goodsList: [],
orderShow: false,
weekList: [
{
label: "周一",
value: "1"
value: "周一"
},
{
label: "周二",
value: "2"
value: "周二"
},
{
label: "周三",
value: "3"
value: "周三"
},
{
label: "周四",
value: "4"
value: "周四"
},
{
label: "周五",
value: "5"
value: "周五"
}, {
label: "周六",
value: "6"
value: "周六"
}, {
label: "周天",
value: "7"
value: "周天"
}
],
monthList: [
{
label: "每月1号",
value: "01"
value: "1"
},
{
label: "每月2号",
value: "02"
value: "2"
},
{
label: "每月3号",
value: "03"
value: "3"
},
{
label: "每月4号",
value: "04"
value: "4"
},
{
label: "每月5号",
value: "05"
value: "5"
}, {
label: "每月6号",
value: "06"
value: "6"
}, {
label: "每月7号",
value: "07"
value: "7"
}, {
label: "每月8号",
value: "08"
value: "8"
}, {
label: "每月9号",
value: "09"
value: "9"
}, {
label: "每月10号",
value: "10"
@ -703,6 +721,9 @@ export default {
oilNumberList: [],
oilNameList: [],
ruleForm: {
productIdList:[],
productIds:'',
productLimit:1,
oilLimit: '',
sySend: '',
timeType: '',
@ -746,6 +767,7 @@ export default {
this.getOilList()
this.getlist()
this.gettj()
this.getGoodsList()
},
components: {
@ -753,6 +775,11 @@ export default {
imgUpload,
},
methods: {
getGoodsList(){
listLJGoods({page:1,pageSize:10000,status:'qy',isRecovery:0}).then(response => {
this.goodsList = response.data.records;
});
},
sxCoupon(id) {
getCoupon(id).then(res => {
if (res.code == 200) {
@ -925,6 +952,7 @@ export default {
pageNo: 1,
pageSize: 10
}
this.goodsList = [];
this.getlist();
},
getlist() {
@ -1062,8 +1090,8 @@ export default {
if (this.ruleForm.oilNumber) {
this.ruleForm.oilNumber = this.ruleForm.oilNumber.toString()
}
let productIds = this.ruleForm.productIdList + ''
this.ruleForm.productIds = productIds
if (!this.ruleForm.id) {
addCardCoupon(this.ruleForm).then(res => {
@ -1071,6 +1099,7 @@ export default {
this.$message.success('添加成功');
this.gettj()
this.getlist()
this.centerDialogVisible = false
} else {
this.$message.error('操作失败请稍后再试');
}
@ -1083,6 +1112,7 @@ export default {
this.$message.success('修改成功');
this.gettj()
this.getlist()
this.centerDialogVisible = false
} else {
this.$message.error('操作失败请稍后再试');
}
@ -1092,7 +1122,6 @@ export default {
}
this.centerDialogVisible = false
}
}
}

View File

@ -11,11 +11,6 @@ VUE_APP_BASE_API = '/dev-api'
VUE_APP_PUBLIC_PATH = '/'
# 后端接口地址
VUE_APP_SERVER_URL = 'http://192.168.31.95:8080/'
VUE_APP_SERVER_URL = 'http://192.168.31.178:8080/'
# cp端地址
# VUE_PC_SERVER_URL = 'http://47.95.206.185:85/'

View File

@ -25,17 +25,17 @@
<div class="heng-box" v-if="radio1 == '积分商城分析'"></div>
<div class="heng-box" style="background-color: #FFFFFF" v-else></div>
</div>
<div class="nbox" :class="pointerClass" @click="updateRedio('支付方式分析')">
<div class="fount-box" :style="{ color: radio1 === '支付方式分析' ? '#FF770F' : '#999999' }">支付方式分析</div>
<div class="heng-box" v-if="radio1 == '支付方式分析'"></div>
<div class="heng-box" style="background-color: #FFFFFF" v-else></div>
<!-- <div class="nbox" :class="pointerClass" @click="updateRedio('支付方式分析')">-->
<!-- <div class="fount-box" :style="{ color: radio1 === '支付方式分析' ? '#FF770F' : '#999999' }">支付方式分析</div>-->
<!-- <div class="heng-box" v-if="radio1 == '支付方式分析'"></div>-->
<!-- <div class="heng-box" style="background-color: #FFFFFF" v-else></div>-->
</div>
<div class="nbox" :class="pointerClass" @click="updateRedio('支付通道分析')">
<div class="fount-box" :style="{ color: radio1 === '支付通道分析' ? '#FF770F' : '#999999' }">支付通道分析</div>
<div class="heng-box" v-if="radio1 == '支付通道分析'"></div>
<div class="heng-box" style="background-color: #FFFFFF" v-else></div>
</div>
<!-- </div>-->
<!-- <div class="nbox" :class="pointerClass" @click="updateRedio('支付通道分析')">-->
<!-- <div class="fount-box" :style="{ color: radio1 === '支付通道分析' ? '#FF770F' : '#999999' }">支付通道分析</div>-->
<!-- <div class="heng-box" v-if="radio1 == '支付通道分析'"></div>-->
<!-- <div class="heng-box" style="background-color: #FFFFFF" v-else></div>-->
<!-- </div>-->
</div>
</el-card>

View File

@ -41,8 +41,8 @@
</el-form>
<div class="wrap-box">
<div class="k_" id="k_1">
<div class="size_">累计交易金额</div>
<div class="title_">{{ orderStatistics.paidInfo?(orderStatistics.paidInfo/10000).toFixed(4) : 0 }}</div>
<div class="size_">累计交易金额</div>
<div class="title_">{{ orderStatistics.paidInfo ||0}}</div>
</div>
<div class="k_" id="k_2">
<div class="size_">累计交易笔数</div>
@ -65,9 +65,9 @@
style="width: 100%">
<el-table-column type="index" width="50" align="center" label="序号"/>
<el-table-column prop="storeName" label="机构名称" width="150" align="center"></el-table-column>
<el-table-column prop="paidInfo" label="累计交易金额 (元)" width="150" align="center">
<el-table-column prop="paidInfo" label="累计交易金额 (元)" width="150" align="center">
<template>
{{this.orderStatistics.paidInfo?(this.orderStatistics.paidInfo/10000).toFixed(6) : 0 }}
{{this.orderStatistics.paidInfo}}
</template>
</el-table-column>
<el-table-column prop="count" label="累计交易笔数" width="150" align="center"></el-table-column>

View File

@ -1,4 +1,4 @@
<!-- 收银台订单-->
<!-- 油品分析 -->
<template>
<div style="padding-top: 20px; padding-right: 20px; background: #f6f8f9;padding-bottom: 15px">
<div class="card-change2-1" shadow="never" >
@ -43,28 +43,28 @@
</el-form>
<div class="wrap-box">
<div class="k_" id="k_1">
<div class="size_">累计交易金额</div>
<div class="title_">{{orderStatistics.amount?(orderStatistics.amount/10000).toFixed(4) : '0'}}</div>
<div class="size_">累计交易金额</div>
<div class="title_">{{orderStatistics.amount}}</div>
</div>
<div class="k_" id="k_2">
<div class="size_">累计交易升数</div>
<div class="title_">{{orderStatistics.num || 0}}</div>
</div>
<div class="k_" id="k_3">
<div class="size_">92#汽油交易金额</div>
<div class="title_">{{orderStatistics.amount92?(orderStatistics.amount92/10000).toFixed(4) : '0'}}</div>
<div class="size_">92#汽油交易金额</div>
<div class="title_">{{orderStatistics.amount92}}</div>
</div>
<div class="k_" id="k_4">
<div class="size_">95#汽油交易金额</div>
<div class="title_">{{orderStatistics.amount95?(orderStatistics.amount95/10000).toFixed(4) : '0'}}</div>
<div class="size_">95#汽油交易金额</div>
<div class="title_">{{orderStatistics.amount95}}</div>
</div>
<div class="k_" id="k_5">
<div class="size_">98#汽油交易金额</div>
<div class="title_">{{orderStatistics.amount98?(orderStatistics.amount98/10000).toFixed(4) : '0'}}</div>
<div class="size_">98#汽油交易金额</div>
<div class="title_">{{orderStatistics.amount98}}</div>
</div>
<div class="k_" id="k_5">
<div class="size_">0#柴油交易金额</div>
<div class="title_">{{orderStatistics.amount0?(orderStatistics.amount0/10000).toFixed(4) : '0'}}</div>
<div class="size_">0#柴油交易金额</div>
<div class="title_">{{orderStatistics.amount0}}</div>
</div>
</div>
</div>
@ -78,40 +78,40 @@
style="width: 100%">
<el-table-column type="index" width="50" align="center" label="序号"/>
<el-table-column align="center" prop="storeName" label="机构名称"></el-table-column>
<el-table-column align="center" prop="payAmount" label="累计交易金额(元)"></el-table-column>
<el-table-column align="center" prop="payAmount" label="累计交易金额(元)"></el-table-column>
<el-table-column align="center" prop="sum" label="累计交易笔数"></el-table-column>
<el-table-column align="center" prop="oilNum" label="累计交易升数"></el-table-column>
<el-table-column align="center" label="92#汽油">
<el-table-column align="center" prop="amount92" label="交易金额(元)">
<el-table-column align="center" prop="amount92" label="交易金额(元)">
<template slot-scope="scope">
{{(scope.row.amount92/10000).toFixed(6)}}
{{scope.row.amount92}}
</template>
</el-table-column>
<el-table-column align="center" prop="count92" label="交易笔数"></el-table-column>
<el-table-column align="center" prop="num92" label="交易升数"></el-table-column>
</el-table-column>
<el-table-column align="center" label="95#汽油">
<el-table-column align="center" prop="amount95" label="交易金额(元)">
<el-table-column align="center" prop="amount95" label="交易金额(元)">
<template slot-scope="scope">
{{(scope.row.amount95/10000).toFixed(6)}}
{{scope.row.amount95}}
</template>
</el-table-column>
<el-table-column align="center" prop="count95" label="交易笔数"></el-table-column>
<el-table-column prop="num95" label="交易升数"></el-table-column>
</el-table-column>
<el-table-column align="center" label="98#汽油">
<el-table-column align="center" prop="amount98" label="交易金额(元)">
<el-table-column align="center" prop="amount98" label="交易金额(元)">
<template slot-scope="scope">
{{(scope.row.amount98/10000).toFixed(6)}}
{{scope.row.amount98}}
</template>
</el-table-column>
<el-table-column align="center" prop="count98" label="交易笔数" ></el-table-column>
<el-table-column align="center" prop="num98" label="交易升数" ></el-table-column>
</el-table-column>
<el-table-column align="center" label="0#柴油">
<el-table-column align="center" prop="amount0" label="交易金额(元)" >
<el-table-column align="center" prop="amount0" label="交易金额(元)" >
<template slot-scope="scope">
{{(scope.row.amount0/10000).toFixed(6)}}
{{scope.row.amount0}}
</template>
</el-table-column>
<el-table-column align="center" prop="count0" label="交易笔数" ></el-table-column>
@ -279,6 +279,16 @@ import {parseTime} from "@/utils/fuint";
}
getFenXiOilOrderDataApi(this.addDateRange(this.queryParams, this.value2)).then(res=>{
this.orderStatistics = res.data
if (res.data == null){
this.orderStatistics = {
amount:'0',
num:'0',
amount92:'0',
amount95:'0',
amount98:'0',
amount0:'0',
}
}
console.log("res.data1111",res.data)
})
},

View File

@ -42,20 +42,20 @@
</el-form>
<div class="wrap-box">
<div class="k_" id="k_1">
<div class="size_">累计交易金额</div>
<div class="title_">{{orderStatistics.payAmount?(orderStatistics.payAmount/10000).toFixed(4) : 0}}</div>
<div class="size_">累计交易金额</div>
<div class="title_">{{orderStatistics.payAmount || 0}}</div>
</div>
<div class="k_" id="k_2">
<div class="size_">累计交易笔数</div>
<div class="title_">{{orderStatistics.count/10000 || 0}}</div>
<div class="title_">{{orderStatistics.count || 0}}</div>
</div>
<div class="k_" id="k_3">
<div class="size_">累计销售商品数量</div>
<div class="title_">{{orderStatistics.goodsNum/10000 || 0}}</div>
<div class="title_">{{orderStatistics.goodsNum || 0}}</div>
</div>
<div class="k_" id="k_4">
<div class="size_">热销品类数量</div>
<div class="title_">{{orderStatistics.cvg/10000 || 0}}</div>
<div class="title_">{{orderStatistics.cvg || 0}}</div>
</div>
</div>
</div>
@ -66,9 +66,9 @@
style="width: 100%">
<el-table-column type="index" width="50" align="center" label="序号"/>
<el-table-column prop="storeName" label="机构名称" width="150" align="center"></el-table-column>
<el-table-column prop="payAmounts" label="累计交易金额 (元)" align="center">
<el-table-column prop="payAmounts" label="累计交易金额 (元)" align="center">
<template slot-scope="scope">
{{(scope.row.payAmounts/10000).toFixed(6)}}
{{scope.row.payAmounts}}
</template>
</el-table-column>
<el-table-column prop="counts" label="累计交易笔数" align="center"></el-table-column>
@ -76,9 +76,9 @@
<el-table-column label="商品信息" align="center">
<el-table-column prop="cvgNum" label="品类数量" width="100" align="center"></el-table-column>
<el-table-column prop="goodsNum" label="商品数量" width="100" align="center"></el-table-column>
<el-table-column prop="payAmounts" label="累计交易金额 (元)" width="150" align="center">
<el-table-column prop="payAmounts" label="累计交易金额 (元)" width="150" align="center">
<template slot-scope="scope">
{{(scope.row.payAmounts/10000).toFixed(6)}}
{{scope.row.payAmounts}}
</template>
</el-table-column>
@ -254,6 +254,14 @@ import {parseTime} from "@/utils/fuint";
}
getFenXiStoreDataApi(this.addDateRange(this.queryParams, this.value2)).then(res=>{
this.orderStatistics = res.data
if (res.data == null){
this.orderStatistics = {
count:'0',
cvg:'0',
goodsNum:'0',
payAmount:'0',
}
}
console.log("res.data1111",res.data)
})
},

View File

@ -104,5 +104,15 @@ public class FleetInfoController extends BaseController {
public ResponseObject addFleetInfo(@RequestBody FleetInfo fleetInfo) {
return getSuccessResult(fleetInfoService.addFleetInfo(fleetInfo));
}
/**
* 根据车队id查询车队信息
* @param fleetId
* @return
*/
@GetMapping("/getFleetInfoByFleetId")
public ResponseObject getFleetInfoByFleetId(@Param("fleetId")Integer fleetId){
return getSuccessResult(fleetInfoService.queryByFleetId(fleetId));
}
}

View File

@ -196,5 +196,14 @@ public class FleetMemberController extends BaseController {
}
return getSuccessResult(map);
}
/**
* 额度调整小程序
* @return
*/
@PutMapping("editLimit")
public ResponseObject editLimit(@RequestBody FleetMember fleetMember){
return getSuccessResult(fleetMemberService.editLimit(fleetMember));
}
}

View File

@ -75,4 +75,6 @@ public interface FleetInfoService {
* @return
*/
int addFleetInfo(FleetInfo fleetInfo);
FleetInfoUniVo queryByFleetId(Integer fleetId);
}

View File

@ -80,4 +80,11 @@ public interface FleetMemberService {
* @return
*/
int logOffFleetMember(Integer id);
/**
* 额度调整
* @param fleetMember
* @return
*/
int editLimit(FleetMember fleetMember);
}

View File

@ -231,7 +231,8 @@ public class FleetInfoServiceImpl extends ServiceImpl<FleetInfoMapper,FleetInfo>
//获取所在车队的id集合
List<Integer> fleetIds = fleetMembers.stream().map(FleetMember::getFleetId).collect(Collectors.toList());
if (CollUtil.isEmpty(fleetIds)) {
throw new RuntimeException("未绑定车队");
// throw new RuntimeException("未绑定车队");
return null;
}
List<FleetInfo> fleetInfos = baseMapper.selectList(new LambdaQueryWrapper<FleetInfo>()
@ -295,6 +296,29 @@ public class FleetInfoServiceImpl extends ServiceImpl<FleetInfoMapper,FleetInfo>
}
}
@Override
public FleetInfoUniVo queryByFleetId(Integer fleetId) {
AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
//查询当前登录人的车队信息
FleetMember fleetMembers = fleetMemberMapper.selectOne(new LambdaQueryWrapper<FleetMember>()
.eq(FleetMember::getFleetId, fleetId)
.eq(FleetMember::getUserId, nowAccountInfo.getId()));
//获取所在车队的id集合
// List<Integer> fleetIds = fleetMembers.stream().map(FleetMember::getFleetId).collect(Collectors.toList());
if (ObjectUtil.isEmpty(fleetMembers)) {
throw new RuntimeException("未绑定该车队");
}
FleetInfo fleetInfo = baseMapper.selectOne(new LambdaQueryWrapper<FleetInfo>()
.eq(FleetInfo::getId, fleetId));
FleetInfoUniVo fleetInfoUniVo = BeanUtil.copyProperties(fleetInfo, FleetInfoUniVo.class);
fleetInfoUniVo.setStoreName(mtStoreMapper.selectById(fleetInfo.getStoreId()).getName());
return fleetInfoUniVo;
}
/**
* 创建用户的基础信息

View File

@ -12,6 +12,7 @@ import com.fuint.business.fleet.entity.FleetMember;
import com.fuint.business.fleet.mapper.FleetMemberMapper;
import com.fuint.business.fleet.service.FleetInfoService;
import com.fuint.business.fleet.service.FleetMemberService;
import com.fuint.business.fleet.vo.FleetInfoUniVo;
import com.fuint.business.fleet.vo.FleetMemberVo;
import com.fuint.business.storeInformation.entity.LJStore;
import com.fuint.business.storeInformation.service.ILJStoreService;
@ -70,7 +71,13 @@ public class FleetMemberServiceImpl extends ServiceImpl<FleetMemberMapper,FleetM
}
@Override
public IPage<FleetMemberVo> queryPageByNameOrMobile(Page page, FleetMemberVo fleetMember) {
// AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
FleetMember fleetMember1 = baseMapper.selectOne(new LambdaQueryWrapper<FleetMember>()
.eq(FleetMember::getFleetId, fleetMember.getFleetId())
.eq(FleetMember::getUserId, nowAccountInfo.getId()));
if (ObjectUtil.isEmpty(fleetMember1)){
throw new RuntimeException("未绑定该车队,无法查看当前车队成员信息");
}
return baseMapper.queryPageByNameOrMobile(page,fleetMember);
}
@ -102,7 +109,11 @@ public class FleetMemberServiceImpl extends ServiceImpl<FleetMemberMapper,FleetM
@Override
public int insert(FleetMember fleetMember) {
AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
// FleetMember fleetMember1 = queryByMobile(fleetMember.getMobile());
//判断当前用户是否是车队负责人
FleetInfoUniVo fleetInfoUniVo = fleetInfoService.queryByFleetId(fleetMember.getFleetId());
if (ObjectUtil.isNotEmpty(fleetInfoUniVo) && (fleetInfoUniVo.getUserId() != nowAccountInfo.getId())){
throw new RuntimeException("请由车队负责人进行此操作");
}
//判断用户是否存在选择的车队
FleetMember fleetMember2 = baseMapper.selectOne(new LambdaQueryWrapper<FleetMember>()
.eq(FleetMember::getMobile, fleetMember.getMobile())
@ -115,7 +126,7 @@ public class FleetMemberServiceImpl extends ServiceImpl<FleetMemberMapper,FleetM
// return 0;
// }
// LJUserVo user = userService.selectUserByMobileAndChantStoreId(fleetMember.getMobile());
//判断当前车队负责人是否存在账号
//判断当前车队成员否存在账号
MtUser mtUser = mtUserMapper.selectOne(new LambdaQueryWrapper<MtUser>()
.eq(MtUser::getMobile, fleetMember.getMobile())
.last("limit 1"));
@ -201,6 +212,18 @@ public class FleetMemberServiceImpl extends ServiceImpl<FleetMemberMapper,FleetM
return baseMapper.updateById(fleetMember);
}
/**
* 额度调整
*
* @param fleetMember
* @return
*/
@Override
public int editLimit(FleetMember fleetMember) {
AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
return 0;
}
/**
* 创建用户的基础信息
*/

View File

@ -96,6 +96,16 @@ public class IntegralSettings extends BaseEntity {
*/
private Integer chainStoreId;
/**
* 适用规则 0-无限制 1-有限制
*/
private Integer signApplicableRules;
/**
* 签到周期 0-一周 1-两周 2-一个月 只有适用规则为1时有值
*/
private Integer signCycle;
}

View File

@ -350,52 +350,68 @@ public class IntegralSettingsServiceImpl implements IntegralSettingsService {
LambdaQueryWrapper<IntegralSettings> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(IntegralSettings::getStoreId, storeId);
IntegralSettings integralSettings = integralSettingsMapper.selectOne(queryWrapper);
JSONArray jsonArray = JSONArray.parseArray(integralSettings.getPointsObtained());
IntegralSettingsVo integralSettingsVo = new IntegralSettingsVo();
List<IntegralSettingsBo> integralSettingsList = new ArrayList<>();
for (int i = 0; i < jsonArray.size(); i++) {
String day = jsonArray.getJSONObject(i).get("day").toString();
Integer points = Integer.parseInt(jsonArray.getJSONObject(i).get("integral").toString());
IntegralSettingsBo integralSettings1 = new IntegralSettingsBo();
integralSettings1.setIntegralName(day);
integralSettings1.setIntegral(points);
integralSettingsList.add(integralSettings1);
}
integralSettingsVo.setIntegralSettings(integralSettingsList);
if (ObjectUtil.isNotEmpty(integralSettings)) {
JSONArray jsonArray = JSONArray.parseArray(integralSettings.getPointsObtained());
if (ObjectUtil.isNotEmpty(integralSettings.getSignApplicableRules()) && integralSettings.getSignApplicableRules() == 0) {
int length = 30;
for (int i = 0; i < length; i++) {
IntegralSettingsBo integralSettings1 = new IntegralSettingsBo();
if (ObjectUtil.isNotEmpty(jsonArray.getJSONObject(0))) {
Integer points = Integer.parseInt(jsonArray.getJSONObject(0).get("integral").toString());
integralSettings1.setIntegral(points);
}
integralSettings1.setIntegralName("" + i + 1 + "");
integralSettingsList.add(integralSettings1);
}
}else if (ObjectUtil.isNotEmpty(integralSettings.getSignApplicableRules()) && integralSettings.getSignApplicableRules() == 1) {
for (int i = 0; i < jsonArray.size(); i++) {
String day = jsonArray.getJSONObject(i).get("day").toString();
Integer points = Integer.parseInt(jsonArray.getJSONObject(i).get("integral").toString());
IntegralSettingsBo integralSettings1 = new IntegralSettingsBo();
// integralSettings1.setIntegralName(day);
integralSettings1.setIntegralName("" +( i + 1 )+ "");
integralSettings1.setIntegral(points);
integralSettingsList.add(integralSettings1);
}
integralSettingsVo.setIntegralSettings(integralSettingsList);
}
DateTime now = DateUtil.date();
DateTime yesterDay = DateUtil.offsetDay(now, -1);
//查询连续签到天数
IntegralDetail integralDetail = integralDetailMapper.selectOne(new LambdaQueryWrapper<IntegralDetail>()
.eq(IntegralDetail::getUserId, nowAccountInfo.getId())
.eq(IntegralDetail::getStoreId, storeId)
.eq(IntegralDetail::getType, "签到赠送")
.between(IntegralDetail::getCreateTime, DateUtil.beginOfDay(yesterDay), now)
.orderBy(true, false, IntegralDetail::getCreateTime).last("limit 1"));
DateTime now = DateUtil.date();
DateTime yesterDay = DateUtil.offsetDay(now, -1);
//查询连续签到天数
IntegralDetail integralDetail = integralDetailMapper.selectOne(new LambdaQueryWrapper<IntegralDetail>()
.eq(IntegralDetail::getUserId, nowAccountInfo.getId())
.eq(IntegralDetail::getStoreId, storeId)
.eq(IntegralDetail::getType, "签到赠送")
.between(IntegralDetail::getCreateTime, DateUtil.beginOfDay(yesterDay), now)
.orderBy(true, false, IntegralDetail::getCreateTime).last("limit 1"));
// if (CollUtil.isNotEmpty(day)) {
// IntegralDetail integralDetail = day.get(0);
if (ObjectUtil.isNotEmpty(integralDetail)) {
// 正则表达式匹配数字
Pattern pattern = Pattern.compile("\\d+");
Matcher matcher = pattern.matcher(integralDetail.getChangeReason());
StringBuilder numbers = new StringBuilder();
numbers.append(0);
while (matcher.find()) {
numbers.append(matcher.group());
}
if (StrUtil.isEmpty(numbers)) {
integralSettingsVo.setSignInDays("0");
}
String str = numbers.toString();
if (Integer.parseInt(str) >= 10) {
numbers.deleteCharAt(0);
}
integralSettingsVo.setSignInDays(numbers.toString());
}else {
if (ObjectUtil.isNotEmpty(integralDetail)) {
// 正则表达式匹配数字
Pattern pattern = Pattern.compile("\\d+");
Matcher matcher = pattern.matcher(integralDetail.getChangeReason());
StringBuilder numbers = new StringBuilder();
numbers.append(0);
while (matcher.find()) {
numbers.append(matcher.group());
}
if (StrUtil.isEmpty(numbers)) {
integralSettingsVo.setSignInDays("0");
}
String str = numbers.toString();
if (Integer.parseInt(str) >= 10) {
numbers.deleteCharAt(0);
}
integralSettingsVo.setSignInDays(numbers.toString());
} else {
integralSettingsVo.setSignInDays("0");
}
// }
}
return integralSettingsVo;
}

View File

@ -10,6 +10,7 @@ import com.fuint.business.marketingActivity.cardCoupon.entity.CardCoupon;
import com.fuint.business.marketingActivity.cardCoupon.service.CardCouponService;
import com.fuint.business.marketingActivity.cardGiftActive.entity.CardGiftActive;
import com.fuint.common.dto.AccountInfo;
import com.fuint.common.util.StringUtils;
import com.fuint.common.util.TokenUtil;
import com.fuint.framework.web.BaseController;
import com.fuint.framework.web.ResponseObject;
@ -18,6 +19,7 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.io.Serializable;
import java.util.Arrays;
import java.util.List;
/**
@ -59,7 +61,14 @@ public class CardCouponController extends BaseController {
*/
@GetMapping("{id}")
public ResponseObject selectOne(@PathVariable Serializable id) {
return getSuccessResult(this.cardCouponService.getById(id));
CardCoupon cardCoupon = cardCouponService.getById(id);
if (StringUtils.isNotEmpty(cardCoupon.getProductIds())){
String[] array = cardCoupon.getProductIds().split(",");
// 转换为列表
List<String> list = Arrays.asList(array);
cardCoupon.setProductIdList(list);
}
return getSuccessResult(cardCoupon);
}
/**
@ -151,5 +160,10 @@ public class CardCouponController extends BaseController {
return getSuccessResult(this.cardCouponService.selectAllByPageAndStoreId(page, cardCoupon));
}
@GetMapping("getCouponOne")
public ResponseObject getCouponOne(Integer id) {
return getSuccessResult(cardCouponService.getCouponOne(id));
}
}

View File

@ -13,6 +13,7 @@ import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.List;
/**
* 油站优惠卷表2024(CardCoupon)表实体类
@ -138,6 +139,8 @@ public class CardCoupon extends Model<CardCoupon> {
//当次获取数量
@TableField(exist = false)
private Integer giftCardTotal;
@TableField(exist = false)
private List<String> productIdList;
}

View File

@ -21,5 +21,13 @@ public interface CardCouponMapper extends BaseMapper<CardCoupon> {
IPage<CardCoupon> pageVo(Page page, @Param("cardCoupon") CardCoupon cardCoupon);
IPage<CardCouponUniVo> selectAllByPageAndStoreId(Page page, @Param("cardCoupon")CardCoupon cardCoupon);
IPage<CardCouponUniVo> selectAllByPageAndIds(Page page,@Param("ids") List<Integer> ids);
/**
* 根据店铺id查询优惠券今日领取数量
* @param cardCouponUniVos
* @return
*/
List<CardCouponUniVo> selectByStoreIdCount(CardCouponUniVo cardCouponUniVos);
}

View File

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fuint.business.marketingActivity.cardCoupon.entity.CardCouponUser;
import com.fuint.business.marketingActivity.cardCoupon.vo.CardCouponUniVo;
import com.fuint.business.marketingActivity.cardCoupon.vo.CardCouponUserVo;
import com.fuint.business.marketingActivity.cardCoupon.vo.CardCouponVO;
import org.apache.ibatis.annotations.Mapper;
@ -11,6 +12,7 @@ import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 用户优惠卷表2024(CardCouponUser)表数据库访问层
@ -38,5 +40,7 @@ public interface CardCouponUserMapper extends BaseMapper<CardCouponUser> {
* @return
*/
IPage<CardCouponUserVo> queryPage(Page page,@Param("entity") CardCouponUserVo cardCouponUserVo);
List<CardCouponUniVo> selectCouponCount(@Param("storeId") Integer storeId,@Param("userId") Integer userId);
}

View File

@ -31,7 +31,7 @@
resultType="com.fuint.business.marketingActivity.cardCoupon.vo.CardCouponUniVo">
SELECT
cc.*,
mt.NAME AS typeName,
mt.NAME AS storeName,
CASE
cc.type
WHEN 1 THEN
@ -44,7 +44,7 @@
'油品立减券'
WHEN 5 THEN
'单品代金券'
END AS statusName
END AS typeName
FROM
card_coupon cc
LEFT JOIN mt_store mt ON mt.id = cc.store_id
@ -66,5 +66,46 @@
</if>
</where>
</select>
<select id="selectByStoreIdCount"
resultType="com.fuint.business.marketingActivity.cardCoupon.vo.CardCouponUniVo">
select cc.id id, count(cu.id) count
from card_coupon cc
left join card_coupon_user as cu on cc.id = cu.card_coupon_id
<where>
cc.store_id = #{storeId}
<if test="startTime!=null and startTime!=''">
and cu.create_time between #{startTime} and #{endTime}
</if>
</where>
group by cc.id
</select>
<select id="selectAllByPageAndIds"
resultType="com.fuint.business.marketingActivity.cardCoupon.vo.CardCouponUniVo">
SELECT
cc.*,
mt.NAME AS storeName,
CASE
cc.type
WHEN 1 THEN
'代金券'
WHEN 2 THEN
'兑换券'
WHEN 3 THEN
'折扣券'
WHEN 4 THEN
'油品立减券'
WHEN 5 THEN
'单品代金券'
END AS typeName
FROM
card_coupon cc
LEFT JOIN mt_store mt ON mt.id = cc.store_id
<where>
cc.id in
<foreach collection="ids" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</where>
</select>
</mapper>

View File

@ -29,4 +29,12 @@
</if>
</where>
</select>
<select id="selectCouponCount" resultType="com.fuint.business.marketingActivity.cardCoupon.vo.CardCouponUniVo">
SELECT
card_coupon_id id,
count(1) count
FROM card_coupon_user
WHERE store_id = #{storeId} AND mt_user_id = #{userId}
group by card_coupon_id
</select>
</mapper>

View File

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fuint.business.marketingActivity.cardCoupon.entity.CardCoupon;
import com.fuint.business.marketingActivity.cardCoupon.vo.CardCouponUniVo;
/**
* 油站优惠卷表2024(CardCoupon)表服务接口
@ -22,5 +23,12 @@ public interface CardCouponService extends IService<CardCoupon> {
int isOnLine(Integer id);
IPage selectAllByPageAndStoreId(Page page, CardCoupon cardCoupon);
/**
* 卡券详情小程序
* @param id
* @return
*/
CardCouponUniVo getCouponOne(Integer id);
}

View File

@ -1,16 +1,22 @@
package com.fuint.business.marketingActivity.cardCoupon.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fuint.business.marketingActivity.cardCoupon.entity.CardCoupon;
import com.fuint.business.marketingActivity.cardCoupon.mapper.CardCouponMapper;
import com.fuint.business.marketingActivity.cardCoupon.mapper.CardCouponUserMapper;
import com.fuint.business.marketingActivity.cardCoupon.service.CardCouponService;
import com.fuint.business.marketingActivity.cardCoupon.vo.CardCouponUniVo;
import com.fuint.business.marketingActivity.cardCoupon.vo.CardCouponVO;
import com.fuint.business.petrolStationManagement.mapper.OilNameMapper;
import com.fuint.business.store.entity.MtStore;
import com.fuint.business.store.mapper.MtStoreMapper;
import com.fuint.common.dto.AccountInfo;
@ -19,7 +25,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 油站优惠卷表2024(CardCoupon)表服务实现类
@ -32,6 +41,12 @@ public class CardCouponServiceImpl extends ServiceImpl<CardCouponMapper, CardCou
@Autowired
private MtStoreMapper mtStoreMapper;
@Autowired
private CardCouponUserMapper cardCouponUserMapper;
@Autowired
private OilNameMapper oilNameMapper;
@Override
public IPage<CardCoupon> pageVo(Page page, CardCoupon cardCoupon) {
return baseMapper.pageVo( page, cardCoupon);
@ -49,24 +64,84 @@ public class CardCouponServiceImpl extends ServiceImpl<CardCouponMapper, CardCou
@Override
public IPage selectAllByPageAndStoreId(Page page, CardCoupon cardCoupon) {
//获取今天开始与结束时间
DateTime now = DateUtil.date();
DateTime startTime = DateUtil.beginOfDay(now);
DateTime endTime = DateUtil.endOfDay(now);
AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
//首先查询该店铺所有的优惠券
cardCoupon.setPutType("2");
cardCoupon.setStatus("1");
IPage<CardCouponUniVo> cardCouponUniVos = baseMapper.selectAllByPageAndStoreId(page, cardCoupon);
List<CardCouponUniVo> cardCouponVos = new ArrayList<>();
//用户拥有的优惠券以及数量
List<CardCouponUniVo> list= cardCouponUserMapper.selectCouponCount(cardCoupon.getStoreId(), nowAccountInfo.getId());
Map<Integer, Integer> map = list.stream().collect(Collectors.toMap(CardCouponUniVo::getId, CardCouponUniVo::getCount));
CardCouponUniVo cardCouponUniVo1 = new CardCouponUniVo();
cardCouponUniVo1.setStoreId(cardCoupon.getStoreId());
cardCouponUniVo1.setStartTime(startTime.toString());
cardCouponUniVo1.setEndTime(endTime.toString());
//根据店铺id查询优惠券今日领取数量
List<CardCouponUniVo> cardCouponUniVos1 = baseMapper.selectByStoreIdCount(cardCouponUniVo1);
Map<Integer, Integer> cardCouponMap = cardCouponUniVos1.stream().collect(Collectors.toMap(CardCouponUniVo::getId, CardCouponUniVo::getCount));
//存放最终可领取的优惠券id集合
List<Integer> ids = new ArrayList<>();
//循环店铺优惠券
for (CardCouponUniVo coupon : cardCouponUniVos.getRecords()) {
//查询该优惠券是否已到达限制数量
if (coupon.getTfGetNum() < coupon.getTfTotal()){
CardCouponUniVo cardCouponUniVo = BeanUtil.copyProperties(coupon, CardCouponUniVo.class);
//计算领取的比例
double scale = (coupon.getTfGetNum() * 1.0 / coupon.getTfTotal()) * 100;
cardCouponUniVo.setScale(scale + "%");
if ((coupon.getTfGetNum() < coupon.getTfTotal())) {
Integer count = 0;
if (ObjectUtil.isNotEmpty(cardCouponMap.get(coupon.getId()))){
count = cardCouponMap.get(coupon.getId());
}
if (count < coupon.getDayGetLimit()) {
Integer getNumLimit = coupon.getGetNumLimit();
Integer userCount = 0;
if (ObjectUtil.isNotEmpty(map.get(coupon.getId()))){
userCount = map.get(coupon.getId());
}
if (userCount < getNumLimit) {
//查询当前用户所拥有的优惠券数量
ids.add(coupon.getId());
}
}
}
}
return cardCouponUniVos;
IPage<CardCouponUniVo> cardCouponUniVoIPage = new Page<>(page.getCurrent(), page.getSize());
if (CollUtil.isNotEmpty(ids)) {
cardCouponUniVoIPage = baseMapper.selectAllByPageAndIds(page, ids);
cardCouponUniVoIPage.getRecords().stream().forEach(coupon -> extracted(coupon));
}
return cardCouponUniVoIPage;
}
/**
* 卡券详情小程序
*
* @param id
* @return
*/
@Override
public CardCouponUniVo getCouponOne(Integer id) {
CardCoupon cardCoupon = baseMapper.selectById(id);
CardCouponUniVo cardCouponUniVo = BeanUtil.copyProperties(cardCoupon, CardCouponUniVo.class);
String oilNumber = cardCouponUniVo.getOilNumber();
//以逗号隔开
if (StrUtil.isNotEmpty(oilNumber)) {
String[] split = oilNumber.split(",");
List<String> list = Arrays.asList(split);
// list.stream().forEach(item -> {Integer.parseInt(item)});
}
return null;
}
private static void extracted(CardCouponUniVo coupon) {
//计算领取的比例
double scale = (coupon.getTfGetNum() * 1.0 / coupon.getTfTotal()) * 100;
coupon.setScale(scale + "%");
}
}

View File

@ -1,5 +1,7 @@
package com.fuint.business.marketingActivity.cardCoupon.vo;
import cn.hutool.core.date.DateTime;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fuint.business.marketingActivity.cardCoupon.entity.CardCoupon;
import lombok.Data;
@ -11,4 +13,12 @@ public class CardCouponUniVo extends CardCoupon {
private String scale;
//兑换券类型
private String typeName;
private Integer count;
@JsonIgnore
private String startTime;
@JsonIgnore
private String endTime;
}

View File

@ -142,6 +142,14 @@ public class LJOrderServiceImpl extends ServiceImpl<LJOrderMapper, LJOrder> impl
@Override
public Map<String, Object> selectOrderFenxiDataByZtDz(LJOrderVo order){
if (ObjectUtil.isEmpty(order.getDeptId())) {
AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
order.setDeptId(nowAccountInfo.getDeptId());
}
List<Long> strings = sysDeptMapper.selectChildByDeptIdR(order.getDeptId());
List<Long> longs = mtStoreMapper.queryStoresByDeptIdsR(strings);
order.setStoreIds(longs);
Map<String, Object> stringObjectMap = baseMapper.selectOrderFenxiDataByZtDz(order);
Map<String, Object> stringObjectMap2 = baseMapper.selectOrderFenxiDataByZtDz2(order);
stringObjectMap.put("cvg",stringObjectMap2.get("cvg"));

View File

@ -203,6 +203,7 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
}
return oilOrderIPage;
}
// 查询油品分析 列表
@Override
public IPage<OilOrderVo> selectOilOrderFenXiListByZtDz(Page page, OilOrderVo order) {
if (ObjectUtil.isEmpty(order.getDeptId())) {
@ -238,9 +239,18 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
}
return oilOrderIPage;
}
// 查询油品分析 累计
public Map<String,String> selectOilOrderFenXiDataByZtDz(OilOrderVo order){
return baseMapper.selectOilOrderFenXiDataByZtDz(order);
if (ObjectUtil.isEmpty(order.getDeptId())) {
AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
order.setDeptId(nowAccountInfo.getDeptId());
}
List<Long> strings = sysDeptMapper.selectChildByDeptIdR(order.getDeptId());
List<Long> longs = mtStoreMapper.queryStoresByDeptIdsR(strings);
order.setStoreIds(longs);
Map<String, String> stringStringMap = baseMapper.selectOilOrderFenXiDataByZtDz(order);
return stringStringMap;
}
public void export(HttpServletResponse response, OilOrder order) {

View File

@ -135,6 +135,16 @@ public class LJStoreController extends BaseController {
return getSuccessResult(storeService.selectListDepts(page,storeVo));
}
/**
* 根据店铺id查询连锁店下面所有商铺信息(小程序)
* @param chainStoreId
* @return
*/
@GetMapping("selectByStoreId")
List<LJStore> selectByStoreId(Integer chainStoreId){
return storeService.selectByStoreId(chainStoreId);
}
// /**
// * 修改等级规则信息
// * @param map

View File

@ -6,6 +6,7 @@ import com.fuint.business.storeInformation.entity.LJStore;
import com.fuint.business.storeInformation.vo.LjStoreVo;
import io.swagger.models.auth.In;
import org.apache.ibatis.annotations.Param;
import org.springframework.web.bind.annotation.GetMapping;
import java.util.List;
import java.util.Map;
@ -92,4 +93,11 @@ public interface ILJStoreService extends IService<LJStore> {
* @return
*/
IPage<LjStoreVo> selectListDepts(IPage page, LjStoreVo storeVo);
/**
* 根据店铺id查询连锁店下面所有商铺
* @param chainStoreId
* @return
*/
List<LJStore> selectByStoreId(Integer chainStoreId);
}

View File

@ -1,6 +1,7 @@
package com.fuint.business.storeInformation.service.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@ -376,4 +377,17 @@ public class LJStoreServiceImpl extends ServiceImpl<LJStoreMapper, LJStore> impl
}
return ljStoreVoIPage;
}
/**
* 根据店铺id查询连锁店下面所有商铺
*
* @param chainStoreId
* @return
*/
@Override
public List<LJStore> selectByStoreId(Integer chainStoreId) {
List<LJStore> ljStores = baseMapper.selectList(new LambdaQueryWrapper<LJStore>()
.eq(LJStore::getChainStoreId, chainStoreId));
return ljStores;
}
}

View File

@ -1,7 +1,8 @@
# \u57FA\u672C\u914D\u7F6E
server.port=8080
env.profile=dev
env.properties.path=D:/my_project/oil-station/fuintBackend/configure/
#env.properties.path=D:/my_project/oil-station/fuintBackend/configure/
env.properties.path=D:/Code/yuzhan/oil-station/fuintBackend/configure/
#env.properties.path=F:/work/oilSystem/fuintBackend/configure/
#env.properties.path=D:/oil/new-oil/oilSystem/fuintBackend/configure/
#env.properties.path=D:/work/oilSystem/fuintBackend/configure/

View File

@ -11,7 +11,7 @@ VUE_APP_BASE_API = '/dev-api'
VUE_APP_PUBLIC_PATH = '/'
# 后端接口地址
VUE_APP_SERVER_URL = 'http://127.0.0.1:8080/'
VUE_APP_SERVER_URL = 'http://192.168.31.178:8080/'
# http://192.168.0.121:8080/

View File

@ -1,28 +1,11 @@
<template>
<div class="app-center">
<div class="tab-box">
<div class="tab_" :class="{active:index== tabindex }" @click="getindex(index)" v-for="(item,index) in tabs"
:key="index">
{{ item.name }}
</div>
</div>
<!-- <div class="app-top">-->
<!-- <el-card>-->
<!-- <el-radio-group v-model="radio1">-->
<!-- <el-radio-button label="收银台订单"></el-radio-button>-->
<!-- <el-radio-button label="油品交易订单"></el-radio-button>-->
<!-- <el-radio-button label="商品交易订单"></el-radio-button>-->
<!-- <el-radio-button label="会员充值订单"></el-radio-button>-->
<!-- &lt;!&ndash; <el-radio-button label="小程序交易订单"></el-radio-button>&ndash;&gt;-->
<!-- <el-radio-button label="挂账订单"></el-radio-button>-->
<!-- &lt;!&ndash; <el-radio-button label="未支付订单"></el-radio-button>&ndash;&gt;-->
<!-- &lt;!&ndash; <el-radio-button label="积分兑换订单"></el-radio-button>&ndash;&gt;-->
<!-- </el-radio-group>-->
<!-- </el-card>-->
<!-- </div>-->
<!-- 收银台订单-->
<order_Cashier v-if="tabindex == 0 "></order_Cashier>
<!-- 油品订单-->
@ -99,7 +82,6 @@ export default {
<style scoped>
.app-center {
width: 100%;
box-sizing: border-box;
padding: 0;
margin: 0;

Binary file not shown.

After

Width:  |  Height:  |  Size: 541 B

View File

@ -5,20 +5,34 @@
<div class="o-top" v-if="userInfo">
<div style="width: 50%">
<div class="d-s">
<img src="./imgs/new_user.png" style="width: 28px;height: 28px;margin-right: 10px">
<img src="./imgs/new_user.png" style="width: 32px;height: 32px;margin-right: 10px">
<div >
<div style="font-weight: bold">{{chooseVipUser.name||'匿名'}}</div>
<div style="font-weight: bold;margin-bottom: 2px">{{chooseVipUser.name||'匿名'}}</div>
<div class="d-s">
<span>{{chooseVipUser.mobile}}</span>
<img src="./imgs/fz.png" @click="copyToClipboard(chooseVipUser.mobile)" style="width: 17px;height: 17px;margin: 0px 10px">
<img src="./imgs/vipicon.png" style="width: 23px;height: 19px;">
<sapn style="margin: 0px 5px">普通会员</sapn>
<el-popover
placement="bottom"
trigger="click">
<div> 储值卡1000.00 </div>
<div> 储值卡1000.00 </div>
<div> 储值卡1000.00 </div>
<div> 储值卡1000.00 </div>
<div> 储值卡1000.00 </div>
<img slot="reference" src="./imgs/kbao.png" style="width: 24px;height: 24px;margin-right: 10px">
</el-popover>
</div>
</div>
</div>
<div class="d-s" >
<div style="font-size: 12px;margin-right: 5px">储值卡{{chooseVipUser.cardBalance}} </div>
<div style="font-size: 12px">囤油卡1000.000</div>
</div>
<!-- <div class="d-s" >-->
<!-- <div style="font-size: 12px;margin-right: 5px">储值卡{{chooseVipUser.cardBalance}} </div>-->
<!-- <div style="font-size: 12px">囤油卡1000.000</div>-->
<!-- </div>-->
</div>
<div class="d-s" style="width: 50%">
@ -31,15 +45,15 @@
<div class="left_input">
<el-autocomplete
v-model="userMobile"
style="width: 95%;margin: 15px "
style="width: 95%; "
:fetch-suggestions="getUser"
placeholder="请输入会员手机号"
>
<template slot-scope="{ item }">
<div class="name" @click="chooseUser(item)">{{ item.name+" "+item.mobile }}</div>
</template>
</el-autocomplete>
<i class="el-icon-search" style="font-size: 18px;margin-right: 10px" ></i>
</div>
<div class="d-s">
<div class="an_bor" @click="addVip()">新增会员</div>
@ -120,6 +134,7 @@
@click="setindex(item.dictValue)" :key="item.dictValue"
>{{ item.dictLabel }}
</div>
<div style="width: 31%"></div>
</div>
</div>
@ -132,6 +147,7 @@
<div class="anniu">立即结算</div>
</div>
</div>
<div class="cont-box">
<div class="box-top">
<div class="cont-tab">
@ -140,7 +156,7 @@
<div class="gang" :class="{ 'active_gang' : tabIndex == index }"></div>
</div>
</div>
<div class="tab-kuang" style="flex-wrap: wrap">
<div class="tab-kuang" style="flex-wrap: wrap;justify-content: space-between ">
<div :class=item.classStyle v-for="(item,index) in dataList" @click="setRefuelingAmount(item)">
<div>{{ item.oilType }}&nbsp;{{ item.oilName }}</div>
<div class="card-title">{{ item.gunName }}</div>
@ -152,15 +168,20 @@
</div>
<div class="c-bottom">
{{ getGoodsItem }}
</div>
<div class="bottom-b-d">
<!-- <div>订单笔数 <span style="color: #FF9655">0</span></div>-->
<div>油品金额 <span style="color: #FF9655">{{ oilGunClearing.amount || 0.00 }}</span></div>
<div style=" position: absolute;bottom: 0px; width: 100%;">
<div class="c-bottom">
{{ getGoodsItem }}
</div>
<div class="bottom-b-d">
<!-- <div>订单笔数 <span style="color: #FF9655">0</span></div>-->
<div>油品金额 <span style="color: #FF9655">{{ oilGunClearing.amount || 0.00 }}</span></div>
</div>
</div>
</div>
<div class="box-bottom">
<div class="anniu-c" @click="oilGunReset()">
重置
</div>
@ -188,6 +209,7 @@
<div class="goods_name">商品</div>
<div class="stock_name">库存</div>
<div class="u-price_name">单价</div>
<div class="u-price_name">会员价</div>
<div class="num_name">数量</div>
<div class="orerate_name">操作</div>
</div>
@ -199,15 +221,20 @@
</div>
<div class="stock_name">{{ item.stock }}</div>
<div class="u-price_name">{{ item.retailPrice }}</div>
<div class="num_name">{{ item.num }}</div>
<div class="u-price_name">{{ item.retailPrice }}</div>
<div class="num_name"> <el-input-number v-model="item.num" size="mini" :min="1" :max="999" label="描述文字"></el-input-number></div>
<div class="orerate_name">
<span style="color: red;cursor: pointer" @click="deleteGoods(item.id)">删除</span>
</div>
</div>
<div class="bottom-b-d">
<div>商品总数 <span style="color: #FF9655">{{ getGoodsListNum }}</span></div>
<div>商品总金额 <span style="color: #FF9655">{{ getGoodsNum }}</span></div>
<div style=" position: absolute;bottom: 0px; width: 100%;">
<div class="bottom-b-d">
<div>商品总数 <span style="color: #FF9655">{{ getGoodsListNum }}</span></div>
<div>商品总金额 <span style="color: #FF9655">{{ getGoodsNum }}</span></div>
</div>
</div>
</div>
<div class="box-bottom">
<div class="anniu-c" @click="goodsReset()">
@ -1537,8 +1564,9 @@ input {
width: 100%;
box-sizing: border-box;
height: 100vh;
padding: 20px 0px;
padding-right: 20px;
box-sizing: border-box;
padding: 20px ;
padding-bottom: 0px;
display: flex;
align-content: center;
@ -1568,14 +1596,14 @@ input {
}
.box-top {
height: 84vh;
height: 86vh;
background: #fff;
margin-bottom: 5px;
position: relative;
}
.box-bottom {
height: 12vh;
height: 10vh;
background: #fff;
z-index: 9;
box-sizing: border-box;
@ -1711,13 +1739,14 @@ input {
.wrap-box {
height: 190px;
display: flex;
position: absolute;
bottom: 0px;
width: 100%;
flex-wrap: wrap;
display: flex;
box-sizing: border-box;
padding: 20px;
justify-content: space-between ;
}
.f-box {
@ -1730,7 +1759,7 @@ input {
font-weight: 400;
font-size: 16px;
color: #555555;
margin-right: 2%;
margin-bottom: 2%;
border-radius: 10px;
border: 1px solid #409EFF;
@ -1740,7 +1769,7 @@ input {
.f-acvite {
background: #409eff !important;
color: #fff !important;
box-shadow: 0px 3px 6px 1px rgba(255, 255, 255, 0.4), inset 0px 3px 6px 1px rgba(255, 255, 255, 0.5);
//box-shadow: 0px 3px 6px 1px rgba(255, 255, 255, 0.4), inset 0px 3px 6px 1px rgba(255, 255, 255, 0.5);
}
.anniu {
@ -1838,7 +1867,7 @@ input {
}
.card92 {
width: 32%;
width: 31%;
height: 90px;
box-sizing: border-box;
padding: 5px;
@ -1850,13 +1879,13 @@ input {
font-size: 12px;
color: #FF9655;
overflow: hidden;
margin-right: 1%;
margin-bottom: 1%;
margin: 0 auto;
margin-bottom: 2%;
cursor: pointer;
}
.card0 {
width: 32%;
width: 31%;
height: 90px;
box-sizing: border-box;
padding: 5px;
@ -1868,12 +1897,12 @@ input {
font-size: 12px;
color: #FFB519;
overflow: hidden;
margin-right: 1%;
margin-bottom: 1%;
margin: 0 auto;
margin-bottom: 2%;
}
.card98 {
width: 32%;
width: 31%;
height: 90px;
box-sizing: border-box;
padding: 5px;
@ -1884,13 +1913,13 @@ input {
font-size: 12px;
color: #409EFF;
overflow: hidden;
margin-right: 1%;
margin-bottom: 1%;
margin: 0 auto;
margin-bottom: 2%;
cursor: pointer;
}
.card95 {
width: 32%;
width: 31%;
height: 90px;
box-sizing: border-box;
padding: 5px;
@ -1901,8 +1930,8 @@ input {
font-size: 12px;
color: #0DC291;
overflow: hidden;
margin-right: 1%;
margin-bottom: 1%;
margin: 0 auto;
margin-bottom: 2%;
cursor: pointer;
}
@ -1922,15 +1951,14 @@ input {
.c-bottom {
font-size: 14px;
color: #333333;
border-bottom: 2px solid #F4F5F9;
//border-bottom: 2px solid #F4F5F9;
box-sizing: border-box;
padding: 10px 20px;
}
.bottom-b-d {
position: absolute;
bottom: 0px;
width: 100%;
display: flex;
align-content: center;
@ -1939,6 +1967,7 @@ input {
padding: 10px 20px;
font-size: 16px;
color: #777777;
border-top: 2px solid #F4F5F9;
}
.anniu-c {
@ -1997,29 +2026,27 @@ input {
}
.goods_name {
width: 35%;
width: 25%;
}
.stock_name {
width: 15%;
width: 10%;
text-align: center;
}
.u-price_name {
width: 15%;
width: 10%;
text-align: center;
}
.num_name {
width: 15%;
width: 30%;
text-align: center;
}
.orerate_name {
width: 20%;
width: 15%;
text-align: center;
}
@ -2095,21 +2122,23 @@ input {
.left_input {
width: 70%;
overflow: hidden;
box-sizing: border-box;
display: flex;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
padding: 10px 5px;
border-radius: 8px;
color: white;
border: 1px solid #fff;
::v-deep.el-input__inner {
background: transparent !important;
border: white 1px solid;
border: transparent 1px solid;
color: #fff;
.el-input__placeholder{
color: red;
color: #fff !important;
}
}

View File

@ -711,7 +711,7 @@ export default {
color: #FF9655 !important;
}
.app-right{
width: 89% !important;
width: 90% !important;
}
//.bule1{
@ -719,7 +719,7 @@ export default {
// color: #81b0ff !important;
//}
.app-left{
width:180px;
width: 10% !important;
height: 100vh;
background: #ffffff;
box-shadow: 0 4px 4px 4px rgba(0,21,41,.08);

View File

@ -1,8 +1,8 @@
<!--增值交易订单-->
<template>
<div>
<div class="contenr_new">
<!-- 表单查询-->
<el-card class="box-card">
<div class="top_new">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="100px">
<el-form-item label="" prop="returnType">
<el-select
@ -58,16 +58,16 @@
/>
</el-form-item>
<el-form-item label="">
<!-- <el-date-picker-->
<!-- v-model="dateRange"-->
<!-- style="width: 400px"-->
<!-- size="medium"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- type="datetimerange"-->
<!-- range-separator="至"-->
<!-- start-placeholder="开始日期"-->
<!-- end-placeholder="结束日期"-->
<!-- ></el-date-picker>-->
<!-- <el-date-picker-->
<!-- v-model="dateRange"-->
<!-- style="width: 400px"-->
<!-- size="medium"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- type="datetimerange"-->
<!-- range-separator="至"-->
<!-- start-placeholder="开始日期"-->
<!-- end-placeholder="结束日期"-->
<!-- ></el-date-picker>-->
<el-date-picker
v-model="beginTime"
style="width: 160px"
@ -87,9 +87,9 @@
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
</el-card>
</div>
<!-- 统计-->
<el-card class="box-card">
<div class="cont_new">
<div slot="header" class="clearfix">
<span>统计</span>
</div>
@ -141,102 +141,75 @@
</div>
</div>
</div>
</el-card>
</div>
<!-- 列表-->
<el-card class="box-card">
<div class="wgang">
<div></div>
<div style="display: flex ">
<el-button type="primary" size="mini" icon="el-icon-plus" @click = "exportExcelCashier()">导出订单</el-button>
</div>
<div class="bottom_new">
<div class="wgang">
<div style="display: flex ">
<el-button type="primary" size="mini" icon="el-icon-plus" @click = "exportExcelCashier()">导出订单</el-button>
</div>
<div class="table-box">
<el-table
:data="hangBillList"
style="width: 100%">
<!-- <el-table-column type="expand">-->
<!-- <template slot-scope="props">-->
<!-- <el-form label-position="left" style="margin-left: 20px" inline class="demo-table-expand">-->
<!-- <el-form-item label="操作人手机号">-->
<!-- <span>{{ props.row.mobile }}</span>-->
<!-- </el-form-item><br/>-->
<!-- <el-form-item label="更新时间">-->
<!-- <span>{{ props.row.updateTime ? props.row.updateTime:"&#45;&#45;" }}</span>-->
<!-- </el-form-item><br/>-->
<!-- <el-form-item label="单据备注">-->
<!-- <span>{{ props.row.remark ? props.row.remark:"&#45;&#45;" }}</span>-->
<!-- </el-form-item><br/>-->
<!-- <el-form-item label="单据金额">-->
<!-- <span>{{ props.row.amount ? props.row.amount:"0" }}</span>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="已还金额">-->
<!-- <span>{{ props.row.repaidAmount ? props.row.repaidAmount:"0" }}</span>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="未还金额">-->
<!-- <span>{{ props.row.outstandAmount ? props.row.outstandAmount:"0" }}</span>-->
<!-- </el-form-item>-->
<!-- </el-form>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column type="index" width="50" align="center" label="序号"/>
<el-table-column prop="orderNo" align="center" label="单据号" width="220"></el-table-column>
<el-table-column align="center" label="挂账单位">
<el-table-column prop="unitName" align="center" label="单位名称"> </el-table-column>
<el-table-column prop="personCredit" align="center" label="挂账人"> </el-table-column>
<el-table-column prop="contactMobile" align="center" label="联系电话"> </el-table-column>
</el-table-column>
<el-table-column label="记录明细" align="center">
<el-table-column prop="returnType" align="center" label="类型">
<template slot-scope="scope">
<el-tag v-if="scope.row.returnType == 0">挂账</el-tag>
<el-tag v-else type="success">归还</el-tag>
</template>
</el-table-column>
<el-table-column prop="amount" align="center" label="金额"> </el-table-column>
<el-table-column prop="status" align="center" label="状态">
<template slot-scope="scope">
<span v-if="scope.row.status == 0">未归还</span>
<span v-else-if="scope.row.status == 1" type="success">已归还</span>
<span v-else type="success">部分归还</span>
</template>
</el-table-column>
<el-table-column prop="repaidAmount" align="center" label="已归还金额"> </el-table-column>
<el-table-column prop="outstandAmount" align="center" label="未归还金额"> </el-table-column>
</el-table-column>
<el-table-column prop="realName" align="center" label="操作人"> </el-table-column>
<el-table-column prop="createTime" align="center" label="创建时间" width="220">
</div>
<div class="table-box">
<el-table
:data="hangBillList"
style="width: 100%">
<el-table-column type="index" width="50" align="center" label="序号"/>
<el-table-column prop="orderNo" align="center" label="单据号" width="220"></el-table-column>
<el-table-column align="center" label="挂账单位">
<el-table-column prop="unitName" align="center" label="单位名称"> </el-table-column>
<el-table-column prop="personCredit" align="center" label="挂账人"> </el-table-column>
<el-table-column prop="contactMobile" align="center" label="联系电话"> </el-table-column>
</el-table-column>
<el-table-column label="记录明细" align="center">
<el-table-column prop="returnType" align="center" label="类型">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
<el-tag v-if="scope.row.returnType == 0">挂账</el-tag>
<el-tag v-else type="success">归还</el-tag>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<el-table-column prop="amount" align="center" label="金额"> </el-table-column>
<el-table-column prop="status" align="center" label="状态">
<template slot-scope="scope">
<el-button
v-if="scope.row.status != 0"
size="mini"
type="text"
@click="returnRecord(scope.row.id)"
>归还详情</el-button>
<span v-if="scope.row.status == 0">未归还</span>
<span v-else-if="scope.row.status == 1" type="success">已归还</span>
<span v-else type="success">部分归还</span>
</template>
</el-table-column>
</el-table>
</div>
<div class="pagination-box">
<el-pagination
background
v-show="total>0"
layout="prev, pager, next"
:total="total"
:page.sync="queryParams.page"
:limit.sync="queryParams.pageSize"
@current-change="getList">
</el-pagination>
</div>
<el-table-column prop="repaidAmount" align="center" label="已归还金额"> </el-table-column>
<el-table-column prop="outstandAmount" align="center" label="未归还金额"> </el-table-column>
</el-table-column>
<el-table-column prop="realName" align="center" label="操作人"> </el-table-column>
<el-table-column prop="createTime" align="center" label="创建时间" width="220">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
</el-card>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
v-if="scope.row.status != 0"
size="mini"
type="text"
@click="returnRecord(scope.row.id)"
>归还详情</el-button>
</template>
</el-table-column>
</el-table>
</div>
<div class="pagination-box">
<el-pagination
background
v-show="total>0"
layout="prev, pager, next"
:total="total"
:page.sync="queryParams.page"
:limit.sync="queryParams.pageSize"
@current-change="getList">
</el-pagination>
</div>
</div>
<!-- 归还记录信息-->
<el-drawer
@ -540,6 +513,10 @@ import {exportExcelCashierApi, exportExcelHangBillApi} from "@/api/order/exportE
align-items: center;
flex-wrap: wrap;
}
.contenr_new{
box-sizing: border-box;
//padding: 10px;
}
.box{
//box-sizing: border-box;
padding: 5px;
@ -574,15 +551,11 @@ import {exportExcelCashierApi, exportExcelHangBillApi} from "@/api/order/exportE
}
}
.size-bole{
//font-weight: bold;
//width: 53px;
height: 31px;
font-family: YouSheBiaoTiHei;
font-weight: 400;
font-size: 24px;
color: #555555;
//line-height: 0px;
text-align: left;
font-style: normal;
text-transform: none;
@ -625,11 +598,36 @@ import {exportExcelCashierApi, exportExcelHangBillApi} from "@/api/order/exportE
margin-right: 20px;
margin-bottom: 20px;
padding-left: 20px;
width: 211px;
height: 60px;
background: rgba(255,150,85,0.05);
border-radius: 6px 6px 6px 6px;
border: 1px solid #FF9655;
}
.top_new{
display: flex;
justify-content: space-between;
background: #fff;
width: 98%;
margin: 10px auto;
border-radius: 8px;
box-sizing: border-box;
padding: 15px
}
.cont_new{
background: #fff;
width: 98%;
margin: 10px auto;
border-radius: 8px;
box-sizing: border-box;
padding: 15px
}
.bottom_new{
background: #fff;
width: 98%;
margin: 10px auto;
border-radius: 8px;
box-sizing: border-box;
padding: 15px
}
</style>

View File

@ -1,63 +1,66 @@
<!-- 收银台订单-->
<template>
<div>
<div class="cot-box">
<div>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
<el-form-item label="" prop="staffId">
<el-select
v-model="queryParams.staffId"
clearable
placeholder="请选择操作人"
>
<el-option v-for="item in staffList" :key="item.id" :label="item.realName" :value="item.id">
<span style="float: left">{{ item.realName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.mobile }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="">
<el-input v-model="queryParams.orderNo" clearable placeholder="请输入订单号"></el-input>
</el-form-item>
<el-form-item label="" prop="payType">
<el-select
v-model="queryParams.payType"
clearable
placeholder="请选择支付方式"
>
<el-option v-for="item in payList"
:key="item.id"
:label="item.dictLabel"
:value="item.dictValue">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="">
<el-input v-model="queryParams.payUser" clearable placeholder="请输入付款用户"></el-input>
</el-form-item>
<el-form-item label="">
<div class="top_new" >
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="0px">
<el-form-item label="" prop="staffId">
<el-select
v-model="queryParams.staffId"
clearable
placeholder="请选择操作人"
>
<el-option v-for="item in staffList" :key="item.id" :label="item.realName" :value="item.id">
<span style="float: left">{{ item.realName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.mobile }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="">
<el-input v-model="queryParams.orderNo" clearable placeholder="请输入订单号"></el-input>
</el-form-item>
<el-form-item label="" prop="payType">
<el-select
v-model="queryParams.payType"
clearable
placeholder="请选择支付方式"
>
<el-option v-for="item in payList"
:key="item.id"
:label="item.dictLabel"
:value="item.dictValue">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="">
<el-input v-model="queryParams.payUser" clearable placeholder="请输入付款用户"></el-input>
</el-form-item>
<el-form-item label="">
<el-date-picker
v-model="beginTime"
style="width: 140px"
type="date"
placeholder="开始日期">
</el-date-picker>
<el-date-picker
v-model="endTime"
style="width: 140px"
type="date"
placeholder="结束日期">
</el-date-picker>
</el-form-item>
<el-form-item style="float: right">
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button type="primary" @click="exportExcelCashier()">导出</el-button>
</el-form-item>
</el-form>
<el-date-picker
v-model="beginTime"
style="width: 140px"
type="date"
placeholder="开始日期">
</el-date-picker>
<el-date-picker
v-model="endTime"
style="width: 140px"
type="date"
placeholder="结束日期">
</el-date-picker>
</el-form-item>
<el-form-item >
</el-form-item>
</el-form>
<div style="display: flex; height: 32px;">
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button type="primary" @click="exportExcelCashier()">导出</el-button>
</div>
</div>
<div class="cot-box">
<div>
<div class="box-gang">
<div class="box2">
@ -109,91 +112,6 @@
<div style="font-weight: bold;font-size: 13px;margin-left: 5px">商品订单/实付总金额</div>
</div>
</div>
<!-- <div class="box">-->
<!-- <div class="size-bole">{{ orderStatistics.numberOfStrokes ? orderStatistics.numberOfStrokes : 0 }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">笔数</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 4666@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box1">-->
<!-- <div class="size-bole">{{-->
<!-- orderStatistics.theTotalAmountPaid ? orderStatistics.theTotalAmountPaid : 0-->
<!-- }}-->
<!-- </div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">实付总金额</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 5017@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box1">-->
<!-- <div class="size-bole">{{ orderStatistics.oilDiscounts ? orderStatistics.oilDiscounts : 0 }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">油品优惠</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 5017@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box1">-->
<!-- <div class="size-bole">{{ seekZeroAmount }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">找零总金额</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 5017@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box1">-->
<!-- <div class="size-bole">{{-->
<!-- orderStatistics.theTotalAmountOfOil ? orderStatistics.theTotalAmountOfOil : 0-->
<!-- }}-->
<!-- </div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">油品总金额</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 5017@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box">-->
<!-- <div class="size-bole">{{-->
<!-- orderStatistics.numberOfStrokesByOil ? orderStatistics.numberOfStrokesByOil : 0-->
<!-- }}-->
<!-- </div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">油品笔数</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 4666@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box">-->
<!-- <div class="size-bole">-->
<!-- {{ orderStatistics.numberOfStrokesByGoods ? orderStatistics.numberOfStrokesByGoods : 0 }}-->
<!-- </div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">商品笔数</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 4666@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box1">-->
<!-- <div class="size-bole">-->
<!-- {{ orderStatistics.theTotalAmountOfTheItem ? orderStatistics.theTotalAmountOfTheItem : 0 }}-->
<!-- </div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">商品总金额</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 5017@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
</div>
</div>
@ -201,9 +119,10 @@
<div class="table-box">
<el-table
:data="orderList"
size="mini"
style="width: 100%">
<el-table-column type="index" width="50" align="center" label="序号"/>
<el-table-column prop="orderNo" align="center" label="订单号" width="220"></el-table-column>
<el-table-column prop="orderNo" align="center" label="订单号" ></el-table-column>
<el-table-column prop="amount" align="center" label="订单金额(元)"></el-table-column>
<el-table-column prop="afterDiscountAmount" align="center" label="优惠金额(元)"></el-table-column>
<el-table-column prop="afterDiscountAmount" align="center" label="应收金额(元)"></el-table-column>
@ -235,7 +154,7 @@
</el-table-column>
</el-table-column>
<el-table-column prop="payUser" align="center" label="付款用户" width="110"></el-table-column>
<el-table-column prop="payUser" align="center" label="付款用户" ></el-table-column>
<el-table-column prop="status" align="center" label="支付方式">
<template slot-scope="scope">
<el-tag v-if="scope.row.status === 'unpaid'">未支付</el-tag>
@ -252,19 +171,19 @@
<el-tag type="danger" v-else>支付失败</el-tag>
</template>
</el-table-column>
<el-table-column prop="payUser" align="center" label="关联员工" width="110"></el-table-column>
<el-table-column prop="payUser" align="center" label="关联员工" ></el-table-column>
<el-table-column label="操作人" align="center" prop="staffId">
<template slot-scope="scope">
<span>{{ getRealName(staffList, scope.row.staffId) || '--' }}</span>
</template>
</el-table-column>
<el-table-column label="订单完成时间" align="center" width="160" prop="payTime">
<el-table-column label="订单完成时间" align="center" prop="payTime">
<template slot-scope="scope">
<span>{{ scope.row.payTime ? parseTime(scope.row.payTime) : "--" }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="180" class-name="small-padding fixed-width">
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button style="color: #fe8c4a" size="mini"
@click="getOrdersInfo(scope.row.id)"
@ -290,9 +209,8 @@
</div>
<div class="pagination-box">
<el-pagination
background
v-show="total>0"
layout="prev, pager, next"
layout="prev, pager, next, jumper"
:total="total"
:page.sync="queryParams.page"
:limit.sync="queryParams.pageSize"
@ -1598,7 +1516,7 @@ export default {
}
.el-form--inline .el-form-item {
margin-right: 44px;
}
.size-hui {
@ -1651,8 +1569,7 @@ export default {
.table-box {
width: 100%;
height: 60vh;
overflow: auto;
}
.pagination-box {
@ -1660,7 +1577,7 @@ export default {
margin: 10px auto;
display: flex;
align-items: center;
justify-content: center;
justify-content: flex-end;
}
.top-app-sou {
@ -1679,5 +1596,17 @@ export default {
box-sizing: border-box;
padding: 20px;
margin: 0 auto;
min-height: 82vh;
}
.top_new{
display: flex;
justify-content: space-between;
height: 65px;
background: #fff;
width: 98%;
margin: 10px auto;
border-radius: 8px;
box-sizing: border-box;
padding: 15px
}
</style>

View File

@ -1,75 +1,74 @@
<!--商品交易列表-->
<template>
<div>
<div class="top_new">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch">
<el-form-item label="" prop="staffId">
<el-select
v-model="queryParams.staffId"
clearable
placeholder="请选择关联员工"
>
<el-option v-for="item in staffList" :key="item.id" :label="item.realName" :value="item.id">
<span style="float: left">{{ item.realName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.mobile }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="" prop="orderNo">
<el-input
v-model="queryParams.orderNo"
placeholder="请输入订单号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="" prop="payType">
<el-select
v-model="queryParams.payType"
placeholder="请选择订单类型"
clearable
style="width: 240px"
>
<el-option
v-for="item in payList"
:key="item.id"
:label="item.dictLabel"
:value="item.dictValue"
/>
</el-select>
</el-form-item>
<el-form-item label="" prop="payUser">
<el-input
v-model="queryParams.payUser"
placeholder="请输入付款用户"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="">
<el-date-picker
v-model="beginTime"
style="width: 160px"
type="date"
placeholder="交易开始日期">
</el-date-picker>
<el-date-picker
v-model="endTime"
style="width: 160px"
type="date"
placeholder="交易结束日期">
</el-date-picker>
</el-form-item>
<el-form-item >
<el-button type="primary" icon="el-icon-search" @click="handleQuery">查询</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button type="primary" @click="exportExcelGoodsOrder()">导出</el-button>
</el-form-item>
</el-form>
</div>
<div class="cot-box">
<div>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch"
label-width="85px">
<el-form-item label="" prop="staffId">
<el-select
v-model="queryParams.staffId"
clearable
placeholder="请选择关联员工"
>
<el-option v-for="item in staffList" :key="item.id" :label="item.realName" :value="item.id">
<span style="float: left">{{ item.realName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.mobile }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="" prop="orderNo">
<el-input
v-model="queryParams.orderNo"
placeholder="请输入订单号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="" prop="payType">
<el-select
v-model="queryParams.payType"
placeholder="请选择订单类型"
clearable
style="width: 240px"
>
<el-option
v-for="item in payList"
:key="item.id"
:label="item.dictLabel"
:value="item.dictValue"
/>
</el-select>
</el-form-item>
<el-form-item label="" prop="payUser">
<el-input
v-model="queryParams.payUser"
placeholder="请输入付款用户"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="">
<el-date-picker
v-model="beginTime"
style="width: 160px"
type="date"
placeholder="交易开始日期">
</el-date-picker>
<el-date-picker
v-model="endTime"
style="width: 160px"
type="date"
placeholder="交易结束日期">
</el-date-picker>
</el-form-item>
<el-form-item style="float: right">
<el-button type="primary" icon="el-icon-search" @click="handleQuery">查询</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button type="primary" @click="exportExcelGoodsOrder()">导出</el-button>
</el-form-item>
</el-form>
</div>
<div>
<div class="box-gang">
<div class="box2">
@ -129,98 +128,16 @@
<div style="font-weight: bold;font-size: 13px;margin-left: 5px">现金</div>
</div>
</div>
<!-- <div class="box">-->
<!-- <div class="size-bole">{{ orderStatistics.numberOfProducts }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">商品笔数</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 4666@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box">-->
<!-- <div class="size-bole">{{ orderStatistics.theTotalNumberOfUnits || 0 }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">商品总数量</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 4666@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box">-->
<!-- <div class="size-bole">{{ orderStatistics.theTotalAmount || 0 }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">总金额</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 4666@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box">-->
<!-- <div class="size-bole">{{ orderStatistics.discountAmount || 0 }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">优惠金额</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 4666@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box1">-->
<!-- <div class="size-bole">{{ orderStatistics.wechat }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">微信</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 5017@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box1">-->
<!-- <div class="size-bole">{{ orderStatistics.alipay }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">支付宝</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 5017@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box1">-->
<!-- <div class="size-bole">{{ orderStatistics.cash }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">现金</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 5017@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
</div>
</div>
<div>
<!-- <div class="wgang">-->
<!-- <div></div>-->
<!-- <div style="display: flex ">-->
<!-- <el-button type="primary" size="mini" icon="el-icon-plus" @click="exportExcelGoodsOrder()">导出订单-->
<!-- </el-button>-->
<!-- </div>-->
<!-- </div>-->
<div class="table-box">
<el-table
:data="list"
style="width: 100%">
<!-- <el-table-column type="expand">-->
<!-- <template slot-scope="props">-->
<!-- <el-form label-position="left" class="demo-table-expand" style="margin-left: 20px">-->
<!-- <el-form-item label="收银员">-->
<!-- <span>{{ queryStaf(staffList,props.row.staffId) }}</span>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="来源终端">-->
<!-- <span>{{ getVal(terminalList,props.row.terminal) }}</span>-->
<!-- </el-form-item>-->
<!-- </el-form>-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column label="订单ID" prop="id" width="80"/>-->
<el-table-column type="index" width="50" align="center" label="序号"/>
<el-table-column label="订单号" align="center" prop="orderNo" width="220"/>
<el-table-column label="订单类型" align="center" prop="terminal"/>
@ -905,10 +822,6 @@ export default {
border: 1px solid #fe8c4a;
}
.el-form--inline .el-form-item {
margin-right: 44px;
}
.size-hui {
display: flex;
align-items: center;
@ -959,6 +872,7 @@ export default {
.table-box {
width: 100%;
min-height: 80px;
}
.pagination-box {
@ -1011,4 +925,18 @@ export default {
padding: 20px;
margin: 0 auto;
}
.el-form--inline .el-form-item {
margin-right: 30px;
}
.top_new{
display: flex;
justify-content: space-between;
background: #fff;
width: 98%;
margin: 10px auto;
border-radius: 8px;
box-sizing: border-box;
padding: 15px
}
</style>

View File

@ -9,138 +9,6 @@
</el-alert>
<points-mall></points-mall>
<!-- <div class="top-dis">-->
<!-- <div class="top-app-sou">-->
<!-- <el-form :label-position="labelPosition" label-width="40px" :model="formLabelAlign">-->
<!-- <el-form-item label="名称">-->
<!-- <el-input v-model="formLabelAlign.name" placeholder="请输入要搜索的内容"></el-input>-->
<!-- </el-form-item>-->
<!-- </el-form>-->
<!-- </div>-->
<!-- <div style="margin-left: 10px">-->
<!-- <el-button type="primary" icon="el-icon-search">查询</el-button>-->
<!-- </div>-->
<!-- </div>-->
<!--&lt;!&ndash; 列表&ndash;&gt;-->
<!-- <div class="bottom-dis">-->
<!-- <div class="wgang">-->
<!-- <el-tabs v-model="activeName" @tab-click="handleClick">-->
<!-- <el-tab-pane label="全部订单" name="first"></el-tab-pane>-->
<!-- <el-tab-pane name="first1">-->
<!-- <div slot="label" class="hgang"> 待处理/待发货 <span class="hongdian">1</span> </div>-->
<!-- </el-tab-pane>-->
<!-- <el-tab-pane name="first2">-->
<!-- <div slot="label" class="hgang"> 已完成/已发货 <span class="hongdian">1</span> </div>-->
<!-- </el-tab-pane>-->
<!-- <el-tab-pane name="first3">-->
<!-- <div slot="label" class="hgang"> 已拒绝/已退款 <span class="hongdian">1</span> </div>-->
<!-- </el-tab-pane>-->
<!-- <el-tab-pane name="first4">-->
<!-- <div slot="label" class="hgang"> 未付款订单 <span class="hongdian">1</span> </div>-->
<!-- </el-tab-pane>-->
<!-- </el-tabs>-->
<!-- </div>-->
<!-- <div class="table-box">-->
<!-- <el-table-->
<!-- :data="tableData"-->
<!-- style="width: 100%">-->
<!-- <el-table-column type="expand">-->
<!-- <template slot-scope="props">-->
<!-- <el-form label-position="left" inline class="demo-table-expand">-->
<!-- <el-form-item label="名称">-->
<!-- <span>{{ props.row.name }}</span>-->
<!-- </el-form-item>-->
<!-- </el-form>-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="date"-->
<!-- label="用户信息"-->
<!-- width="150">-->
<!-- </el-table-column>-->
<!-- <el-table-column label="余额">-->
<!-- <el-table-column-->
<!-- prop="name"-->
<!-- label="电子储值卡"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="name"-->
<!-- label="升值卡"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- </el-table-column>-->
<!-- <el-table-column label="会员等级">-->
<!-- <el-table-column-->
<!-- prop="province"-->
<!-- label="汽油"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="city"-->
<!-- label="柴油"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="city"-->
<!-- label="天然气"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- </el-table-column>-->
<!-- <el-table-column label="统计">-->
<!-- <el-table-column-->
<!-- prop="province"-->
<!-- label="加油金"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="city"-->
<!-- label="积分"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="city"-->
<!-- label="消费次数"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="zip"-->
<!-- label="实体卡号"-->
<!-- width="220">-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="zip"-->
<!-- label="状态"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
<!-- <template slot-scope="scope">-->
<!-- <el-button-->
<!-- size="mini"-->
<!-- type="text"-->
<!-- icon="el-icon-edit"-->
<!-- >更多操作</el-button>-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- </el-table>-->
<!-- </div>-->
<!-- <div class="pagination-box">-->
<!-- <el-pagination-->
<!-- background-->
<!-- layout="prev, pager, next"-->
<!-- :total="1000">-->
<!-- </el-pagination>-->
<!-- </div>-->
<!-- </div>-->
</el-tab-pane>
<el-tab-pane label="积分收银台订单">
<el-alert
@ -150,115 +18,6 @@
<points-cashier></points-cashier>
<!-- <div class="bottom-dis">-->
<!-- <div slot="header" class="clearfix">-->
<!-- <span>统计</span>-->
<!-- </div>-->
<!-- <div class="box-gang">-->
<!-- <div class="box" v-for="(item,index) in 7" :key="index">-->
<!-- <div class="size-hui">订单总数</div>-->
<!-- <div class="size-bole">55</div>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="table-box">-->
<!-- <el-table-->
<!-- :data="tableData"-->
<!-- style="width: 100%">-->
<!-- <el-table-column type="expand">-->
<!-- <template slot-scope="props">-->
<!-- <el-form label-position="left" inline class="demo-table-expand">-->
<!-- <el-form-item label="名称">-->
<!-- <span>{{ props.row.name }}</span>-->
<!-- </el-form-item>-->
<!-- </el-form>-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="date"-->
<!-- label="用户信息"-->
<!-- width="150">-->
<!-- </el-table-column>-->
<!-- <el-table-column label="余额">-->
<!-- <el-table-column-->
<!-- prop="name"-->
<!-- label="电子储值卡"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="name"-->
<!-- label="升值卡"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- -->
<!-- </el-table-column>-->
<!-- <el-table-column label="会员等级">-->
<!-- <el-table-column-->
<!-- prop="province"-->
<!-- label="汽油"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="city"-->
<!-- label="柴油"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="city"-->
<!-- label="天然气"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- </el-table-column>-->
<!-- <el-table-column label="统计">-->
<!-- <el-table-column-->
<!-- prop="province"-->
<!-- label="加油金"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="city"-->
<!-- label="积分"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="city"-->
<!-- label="消费次数"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- </el-table-column>-->
<!-- -->
<!-- <el-table-column-->
<!-- prop="zip"-->
<!-- label="实体卡号"-->
<!-- width="220">-->
<!-- </el-table-column>-->
<!-- -->
<!-- <el-table-column-->
<!-- prop="zip"-->
<!-- label="状态"-->
<!-- width="120">-->
<!-- </el-table-column>-->
<!-- -->
<!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
<!-- <template slot-scope="scope">-->
<!-- <el-button-->
<!-- size="mini"-->
<!-- type="text"-->
<!-- icon="el-icon-edit"-->
<!-- >更多操作</el-button>-->
<!-- -->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- -->
<!-- </el-table>-->
<!-- </div>-->
<!-- <div class="pagination-box">-->
<!-- <el-pagination-->
<!-- background-->
<!-- layout="prev, pager, next"-->
<!-- :total="1000">-->
<!-- </el-pagination>-->
<!-- </div>-->
</el-tab-pane>
</el-tabs>

View File

@ -2,109 +2,109 @@
<template>
<div>
<div class="top_new">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
<el-form-item label="" prop="staffId">
<el-select
v-model="queryParams.staffId"
clearable
placeholder="请选择操作人">
<el-option v-for="item in staffList" :key="item.id" :label="item.realName" :value="item.id">
<span style="float: left">{{ item.realName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.mobile }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="">
<el-input v-model="queryParams.orderNo" clearable placeholder="请输入订单号"></el-input>
</el-form-item>
<el-form-item label="" prop="terminal">
<el-select
v-model="queryParams.terminal"
clearable
placeholder="请选择订单类型"
>
<el-option v-for="item in terminalList"
:key="item.id"
:label="item.dictLabel"
:value="item.dictValue">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="" prop="oilGunNum">
<el-select
v-model="queryParams.oilGunNum"
filterable
clearable
placeholder="请选择油品油号"
>
<el-option v-for="item in oilGunList"
:key="item.id"
:label="item.gunName"
:value="item.id">
<span style="float: left">{{ item.oilName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.gunName }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="" prop="oilGunNum">
<el-select
v-model="queryParams.oilGunNum"
filterable
clearable
placeholder="请选择油枪"
>
<el-option v-for="item in oilGunList"
:key="item.id"
:label="item.gunName"
:value="item.id">
<span style="float: left">{{ item.oilName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.gunName }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="" prop="payType">
<el-select
v-model="queryParams.payType"
clearable
placeholder="请选择支付方式"
>
<el-option v-for="item in payList"
:key="item.id"
:label="item.dictLabel"
:value="item.dictValue">
</el-option>
<el-option label="电子囤油卡" value="oilCard"/>
<el-option label="电子电子储值卡" value="balance"/>
</el-select>
</el-form-item>
<el-form-item label="">
<el-input v-model="queryParams.payUser" clearable placeholder="请输入付款用户"></el-input>
</el-form-item>
<el-form-item label="">
<el-date-picker
v-model="beginTime"
style="width: 140px"
type="date"
placeholder="开始日期">
</el-date-picker>
<el-date-picker
v-model="endTime"
style="width: 140px"
type="date"
placeholder="结束日期">
</el-date-picker>
</el-form-item>
<el-form-item style="float: right;">
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button type="primary" @click="exportExcelOilOrder()">导出</el-button>
</el-form-item>
</el-form>
</div>
<div class="cot-box">
<div>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
<el-form-item label="" prop="staffId">
<el-select
v-model="queryParams.staffId"
clearable
placeholder="请选择操作人"
>
<el-option v-for="item in staffList" :key="item.id" :label="item.realName" :value="item.id">
<span style="float: left">{{ item.realName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.mobile }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="">
<el-input v-model="queryParams.orderNo" clearable placeholder="请输入订单号"></el-input>
</el-form-item>
<el-form-item label="" prop="terminal">
<el-select
v-model="queryParams.terminal"
clearable
placeholder="请选择订单类型"
>
<el-option v-for="item in terminalList"
:key="item.id"
:label="item.dictLabel"
:value="item.dictValue">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="" prop="oilGunNum">
<el-select
v-model="queryParams.oilGunNum"
filterable
clearable
placeholder="请选择油品油号"
>
<el-option v-for="item in oilGunList"
:key="item.id"
:label="item.gunName"
:value="item.id">
<span style="float: left">{{ item.oilName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.gunName }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="" prop="oilGunNum">
<el-select
v-model="queryParams.oilGunNum"
filterable
clearable
placeholder="请选择油枪"
>
<el-option v-for="item in oilGunList"
:key="item.id"
:label="item.gunName"
:value="item.id">
<span style="float: left">{{ item.oilName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.gunName }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="" prop="payType">
<el-select
v-model="queryParams.payType"
clearable
placeholder="请选择支付方式"
>
<el-option v-for="item in payList"
:key="item.id"
:label="item.dictLabel"
:value="item.dictValue">
</el-option>
<el-option label="电子囤油卡" value="oilCard"/>
<el-option label="电子电子储值卡" value="balance"/>
</el-select>
</el-form-item>
<el-form-item label="">
<el-input v-model="queryParams.payUser" clearable placeholder="请输入付款用户"></el-input>
</el-form-item>
<el-form-item label="">
<el-date-picker
v-model="beginTime"
style="width: 140px"
type="date"
placeholder="开始日期">
</el-date-picker>
<el-date-picker
v-model="endTime"
style="width: 140px"
type="date"
placeholder="结束日期">
</el-date-picker>
</el-form-item>
<el-form-item style="float: right;">
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button type="primary" @click="exportExcelOilOrder()">导出</el-button>
</el-form-item>
</el-form>
</div>
<div>
<div class="box-gang">
<div class="box2">
@ -175,88 +175,15 @@
</div>
</div>
<!-- <div class="box">-->
<!-- <div class="size-bole">{{ orderStatistics.numberOfOilPens }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">油品笔数</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 4666@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box">-->
<!-- <div class="size-bole">{{ orderStatistics.theTotalAmountOfOil || 0 }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">油品总金额</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 4666@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box">-->
<!-- <div class="size-bole">{{ orderStatistics.theTotalAmountOfTheOffer || 0 }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">优惠总额</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 4666@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box">-->
<!-- <div class="size-bole">{{ orderStatistics.numberOfTransactions || 0 }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">交易数量</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 4666@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box1">-->
<!-- <div class="size-bole">{{ orderStatistics.totalAmountReceived || 0 }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">实收总额</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 5017@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box1">-->
<!-- <div class="size-bole">{{ orderStatistics.wechat }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">微信</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 5017@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box1">-->
<!-- <div class="size-bole">{{ orderStatistics.alipay }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">支付宝</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 5017@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="box1">-->
<!-- <div class="size-bole">{{ orderStatistics.cash }}</div>-->
<!-- <div class="size-hui">-->
<!-- <div class="nei">现金</div>-->
<!-- <div class="icon-img">-->
<!-- <img src="../../../assets/images/cut/组 5017@2x.png" style="width: 20px;height: 20px">-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
</div>
</div>
<div>
<div style="height: 60vh;overflow: auto">
<div class="new_bottom">
<div>
<el-table
v-loading="loading"
border
:data="oilOrderList"
style="width: 100%">
<el-table-column type="index" width="50" align="center" label="序号"/>
<el-table-column prop="orderNo" align="center" label="订单号" width="220"></el-table-column>
<el-table-column prop="terminal" label="订单类型" align="center" width="80">
@ -264,12 +191,12 @@
<span>{{ getVal(terminalList, props.row.terminal) }}</span>
</template>
</el-table-column>
<el-table-column prop="oilGunNum" label="油品/油号" align="center" width="90">
<el-table-column prop="oilGunNum" label="油品/油号" align="center" >
<template slot-scope="props">
<span>{{ getName(oilNameList, props.row.oils) }}</span>
</template>
</el-table-column>
<el-table-column prop="oilGunNum" label="油枪" align="center" width="90">
<el-table-column prop="oilGunNum" label="油枪" align="center" >
<template slot-scope="props">
<span>{{ getName1(oilGunList, props.row.oilGunNum) }}</span>
</template>
@ -278,9 +205,9 @@
<el-table-column prop="discountAmount" label="优惠金额(元)" align="center"></el-table-column>
<el-table-column prop="payAmount" label="实付金额(元)" align="center"></el-table-column>
<el-table-column prop="balanceAmount" label="储值卡付款金额(元)" align="center" width="115"/>
<el-table-column prop="oilCardAmount" label="囤油卡付款金额(元)" align="center" width="115"/>
<el-table-column prop="payUser" label="付款用户" align="center" width="110"></el-table-column>
<el-table-column prop="balanceAmount" label="储值卡付款金额(元)" align="center" />
<el-table-column prop="oilCardAmount" label="囤油卡付款金额(元)" align="center" />
<el-table-column prop="payUser" label="付款用户" align="center" ></el-table-column>
<el-table-column prop="payType" label="支付方式" align="center">
<template slot-scope="scope">
<span>{{ getType(payList, scope.row.payType) }}</span>
@ -289,7 +216,7 @@
<span v-if="scope.row.payType=='credit'">挂账</span>
</template>
</el-table-column>
<el-table-column prop="orderStatus" label="订单状态" align="center" width="120">
<el-table-column prop="orderStatus" label="订单状态" align="center" >
<template slot-scope="scope">
<el-tag v-if="scope.row.orderStatus === 'unpaid'">未支付</el-tag>
<el-tag type="success" v-else-if="scope.row.orderStatus === 'paid'">已支付</el-tag>
@ -305,13 +232,13 @@
</el-table-column>
<el-table-column prop="orderType" label="关联员工" align="center"></el-table-column>
<el-table-column prop="orderType" label="操作人" align="center"></el-table-column>
<el-table-column label="订单完成时间" align="center" width="160" prop="payTime">
<el-table-column label="订单完成时间" align="center" prop="payTime">
<template slot-scope="scope">
<span>{{ scope.row.payTime ? parseTime(scope.row.payTime) : "--" }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="120">
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" >
<template slot-scope="scope">
<el-button style="color: #fe8c4a" @click="patchwork(scope.row)" type="text">补打
</el-button>
@ -326,9 +253,8 @@
</div>
<div class="pagination-box">
<el-pagination
background
v-show="total>0"
layout="prev, pager, next"
layout="prev, pager, next, jumper"
:total="total"
:page.sync="queryParams.page"
:limit.sync="queryParams.pageSize"
@ -360,7 +286,6 @@
<!-- 订单退款-->
<el-dialog
:close-on-click-modal="false"
title="订单退款"
width="25%"
:visible.sync="dialogRefund">
@ -1068,7 +993,7 @@ export default {
margin: 10px auto;
display: flex;
align-items: center;
justify-content: center;
justify-content: flex-end;
}
.top-app-sou {
@ -1113,4 +1038,19 @@ export default {
padding: 20px;
margin: 0 auto;
}
.top_new{
display: flex;
justify-content: space-between;
height: 120px;
background: #fff;
width: 98%;
margin: 10px auto;
border-radius: 8px;
box-sizing: border-box;
padding: 15px;
margin-bottom: 10px;
}
.new_bottom{
min-height: 80vh;
}
</style>

View File

@ -638,6 +638,7 @@ import {connectFlag, getLodop} from "@/api/LodopFuncs";
}
.table-box{
width: 100%;
min-height: 80vh;
}
.pagination-box{
width: 100%;
@ -645,6 +646,7 @@ import {connectFlag, getLodop} from "@/api/LodopFuncs";
display: flex;
align-items: center;
justify-content: center;
}
.top-app-sou{
width: 20%;

View File

@ -1,72 +1,76 @@
<!--会员充值订单-->
<template>
<div>
<div class="top_new">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" >
<el-form-item label="" prop="staffId">
<el-select
v-model="queryParams.mtStaffId"
clearable
placeholder="请选择关联员工"
>
<el-option v-for="item in staffList" :key="item.id" :label="item.realName" :value="item.id">
<span style="float: left">{{ item.realName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.mobile }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="" prop="paymentType">
<el-select
v-model="queryParams.paymentType"
clearable
placeholder="请选择订单类型"
>
<el-option v-for="item in payList"
:key="item.id"
:label="item.dictLabel"
:value="item.dictValue">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="" prop="paymentType">
<el-select
v-model="queryParams.paymentType"
clearable
placeholder="请选择支付方式"
>
<el-option v-for="item in payList"
:key="item.id"
:label="item.dictLabel"
:value="item.dictValue">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="">
<el-input v-model="queryParams.mobile" placeholder="请输入会员手机号"></el-input>
</el-form-item>
<el-form-item label="">
<el-date-picker
v-model="beginTime"
style="width: 160px"
type="date"
placeholder="交易开始日期">
</el-date-picker>
<el-date-picker
v-model="endTime"
style="width: 160px"
type="date"
placeholder="交易结束日期">
</el-date-picker>
</el-form-item>
<el-form-item >
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button type="primary" @click="exportExcelVip()">导出</el-button>
</el-form-item>
</el-form>
</div>
<div class="cot-box">
<!-- 条件查询-->
<div>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
<el-form-item label="" prop="staffId">
<el-select
v-model="queryParams.mtStaffId"
clearable
placeholder="请选择关联员工"
>
<el-option v-for="item in staffList" :key="item.id" :label="item.realName" :value="item.id">
<span style="float: left">{{ item.realName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.mobile }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="" prop="paymentType">
<el-select
v-model="queryParams.paymentType"
clearable
placeholder="请选择订单类型"
>
<el-option v-for="item in payList"
:key="item.id"
:label="item.dictLabel"
:value="item.dictValue">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="" prop="paymentType">
<el-select
v-model="queryParams.paymentType"
clearable
placeholder="请选择支付方式"
>
<el-option v-for="item in payList"
:key="item.id"
:label="item.dictLabel"
:value="item.dictValue">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="">
<el-input v-model="queryParams.mobile" placeholder="请输入会员手机号"></el-input>
</el-form-item>
<el-form-item label="">
<el-date-picker
v-model="beginTime"
style="width: 160px"
type="date"
placeholder="交易开始日期">
</el-date-picker>
<el-date-picker
v-model="endTime"
style="width: 160px"
type="date"
placeholder="交易结束日期">
</el-date-picker>
</el-form-item>
<el-form-item style="float: right">
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button type="primary" @click="exportExcelVip()">导出</el-button>
</el-form-item>
</el-form>
</div>
<!-- 统计-->
<div>
@ -668,7 +672,6 @@ export default {
<style scoped>
.app-top {
width: 100%;
height: 60px;
box-sizing: border-box;
padding: 10px;
@ -703,9 +706,6 @@ export default {
border: 1px solid #fe8c4a;
}
.el-form--inline .el-form-item {
margin-right: 44px;
}
.size-hui {
display: flex;
@ -723,37 +723,7 @@ export default {
}
}
.size-bole {
height: 31px;
font-family: YouSheBiaoTiHei;
font-weight: 400;
font-size: 24px;
color: #555555;
text-align: left;
font-style: normal;
text-transform: none;
}
.icon-img {
width: 20px;
height: 20px;
margin-right: 5px;
img {
float: right;
width: 20px;
height: 20px;
}
}
.wgang {
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 20px;
}
.table-box {
width: 100%;
@ -767,15 +737,14 @@ export default {
justify-content: center;
}
.top-app-sou {
width: 20%;
}
.tk {
text-align: center;
color: grey;
margin: 10px 0;
}
.el-form--inline .el-form-item {
margin-right: 4px !important;
}
.box1 {
padding: 5px;
@ -809,4 +778,14 @@ export default {
padding: 20px;
margin: 0 auto;
}
.top_new{
display: flex;
justify-content: space-between;
background: #fff;
width: 98%;
margin: 10px auto;
border-radius: 8px;
box-sizing: border-box;
padding: 15px
}
</style>

View File

@ -1,16 +0,0 @@
{ // launch.json configurations app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/
// launchtypelocalremote, localremote
"version": "0.0",
"configurations": [{
"default" :
{
"launchtype" : "local"
},
"mp-weixin" :
{
"launchtype" : "local"
},
"type" : "uniCloud"
}
]
}

View File

@ -20,7 +20,7 @@
<view class="card_1" @click="goDetails('oilCard')">
<view class="top_card">
<view class="">囤油卡</view>
<view style="display: flex;" @click="goCode()">
<view style="display: flex;" @click="goCode()">
<view style="margin-right: 5px;">汽油92# 7.28/L</view>
<image src="../../static/new/rwm.png" style="width: 25px; height: 25px; "></image>
</view>
@ -52,6 +52,21 @@
NO.xxxxxxxxxxxxxxxxxx
</view> -->
</view>
<view class="card_" @click="goFleetDetails()" v-if="fleetInfo()">
<view class="top_card">
<view class="">车队名称</view>
<view class="" @click="goCode()">
<image src="../../static/new/rwm.png" style="width: 25px; height: 25px; "></image>
</view>
</view>
<view class="card-b">
当前余额
</view>
<view class="card-num">
¥{{cardBalance.cardBalance || 0}}
</view>
</view>
</view>
</template>
@ -71,7 +86,8 @@
cardsList: [],
cardsIndex: 0,
title: '',
giftInfo:{},
giftInfo: {},
fleetInfo:{}
}
},
@ -82,8 +98,26 @@
this.query.chainStoreId = uni.getStorageSync('chainStoreId');
// this.getCardFuleRecords();
this.getUserBalance()
this.getFleetInfo()
},
methods: {
getFleetInfo(){
request({
url: '/fleetInfo/getFleetInfoByStoreId',
method: 'get',
params:{storeId:uni.getStorageSync('storeId')}
}).then(res => {
if (res.code == 200) {
this.fleetInfo = res.data
console.log(this.fleetInfo, '111');
}else{
this.fleetInfo = {}
}
})
},
goFleetDetails(){
},
goCode() {
uni.navigateTo({
url: '/pagesHome/QRcode/QRcode'
@ -96,7 +130,7 @@
},
goDetails(val) {
uni.navigateTo({
url: '/pagesHome/cardDetails/index?type='+val
url: '/pagesHome/cardDetails/index?type=' + val
})
},
s_() {
@ -129,7 +163,7 @@
}).then(res => {
if (res.code == 200) {
this.cardsList = res.data.records
console.log(this.cardsList,'131');
console.log(this.cardsList, '131');
}
})
},
@ -350,4 +384,4 @@
text-align: right;
}
</style>
</style>

View File

@ -55,13 +55,28 @@
</template>
<script>
import request from '../../utils/request';
export default {
data() {
return {
value: 0
value: 0,
certificateId:''
}
},
methods: {
getInfo(){
request({
url: '/cardCoupon/'+this.certificateId,
method: 'get',
params: this.queryParams
}).then(res => {
console.log(res,66);
if (res.code == 200) {
this.list = res.data.records
this.total = res.data.total
}
})
},
valChange(e) {
console.log('当前值为: ' + e.value)
}

View File

@ -3,20 +3,20 @@
<view class="Candywrapper">
<view class="f-box" v-for="(item,index) in list" :key="index" @click="goDetails()">
<view class="f-top">中建锦绣二期站可用</view>
<view class="f-top">{{item.storeName}}可用</view>
<view class="f-bs">
<image src="../../static/logo.png" style="width: 60px; height: 60px; "></image>
<view class="r-box">
<view class="">
<view class="m_">50元优惠</view>
<view class="p_">最低消费100元</view>
<view class="q_">代金券</view>
<view class="m_">{{item.name}}</view>
<view class="p_">{{item.useCondition}}</view>
<view class="q_">{{item.typeName}}</view>
</view>
<view class="">
<view class="an_">领取</view>
<u-line-progress :percentage="50" :showText="false" height="6"
activeColor="#FA6400"></u-line-progress>
<view class="hui_">券已领70%</view>
<view class="hui_">券已领{{item.scale}}</view>
</view>
</view>
@ -35,7 +35,6 @@
total: 0,
queryParams: {
storeId: '',
useStatus: 0,
pageNo: 1,
pageSize: 30
}
@ -59,7 +58,7 @@
methods: {
getList() {
request({
url: 'business/marketingActivity/cardFavorable/appletList',
url: '/cardCoupon/queryByPageAndStoreId',
method: 'get',
params: this.queryParams
}).then(res => {

View File

@ -1,51 +1,83 @@
<template>
<view class="centenr">
<!-- 储值卡 -->
<view class="vip-top" v-if="type=='balance'">
<view class="t-right">储值卡 <u-icon name="arrow-down-fill" color="#fff" size="12"></u-icon> </view>
<view class="t-title">当前余额</view>
<view class="t-num">{{cardBalance.cardBalance || 0}}</view>
</view>
<!-- 囤油卡 -->
<view class="vip-top" v-if="type=='oilCard'">
<view class="t-right">囤油卡 <u-icon name="arrow-down-fill" color="#fff" size="12"></u-icon> </view>
<view class="t-title">剩余油量L</view>
<view class="t-num">{{cardBalance.cardBalance || 0}}</view>
</view>
<view class="vip-title">
<view class="">{{storeName || "--"}}</view>
<!-- <image src="../../static/new/qh.png" style="width: 18px; height: 18px;" @click="show = true"></image> -->
</view>
<view class="input-box">
<view class="i-title">充值金额</view>
<view class="n_input">
<input type="text" v-model="rechargeOrder.balance" :disabled="isEdit">
<view class="r-title">
{{staff.realName || "--"}}
<!-- 储值卡 -->
<view v-if="type=='balance'">
<view class="input-box">
<view class="i-title">充值金额</view>
<view class="n_input">
<input type="text" v-model="rechargeOrder.balance" :disabled="isEdit">
<view class="r-title">
{{staff.realName || "--"}}
</view>
</view>
</view>
<view class="wrap_box">
<view class="w_box" v-for="(item,index) in rechargeList" :key="index" @click="setIndex(index,item)"
:class="{ 'acvit' :windex == index}">
<view class="">{{item.rechargeBalance}}</view>
<view class="">{{item.giftBalance}}</view>
</view>
<view class="w_box" @click="setIndex(rechargeList.length)"
:class="{ 'acvit' :windex == rechargeList.length}">
<view class="" style="line-height: 40px;">自定义金额</view>
</view>
</view>
<view class="input-box">
<view class="i-title">赠送金额</view>
<view class="n_input">
<input type="text" v-model="rechargeOrder.giftBalance" disabled>
</view>
</view>
<view class="input-box">
<view class="i-title">充值备注</view>
<view class="b_input">
<input type="text" v-model="rechargeOrder.remark">
</view>
</view>
</view>
<view class="wrap_box">
<view class="w_box" v-for="(item,index) in rechargeList" :key="index" @click="setIndex(index,item)"
:class="{ 'acvit' :windex == index}">
<view class="">{{item.rechargeBalance}}</view>
<view class="">{{item.giftBalance}}</view>
<!-- 囤油卡 -->
<view v-if="type=='oilCard'">
<view class="input-box">
<view class="i-title">充值金额</view>
<view class="n_input">
<input type="text" v-model="rechargeOrder.balance" :disabled="isEdit">
<view class="r-title">
{{staff.realName || "--"}}
</view>
</view>
</view>
<view class="w_box" @click="setIndex(rechargeList.length)"
:class="{ 'acvit' :windex == rechargeList.length}">
<view class="" style="line-height: 40px;">自定义金额</view>
</view>
</view>
<view class="input-box">
<view class="i-title">赠送金额</view>
<view class="n_input">
<input type="text" v-model="rechargeOrder.giftBalance" disabled>
</view>
</view>
<view class="input-box">
<view class="i-title">充值备注</view>
<view class="b_input">
<input type="text" v-model="rechargeOrder.remark">
<view class="wrap_box">
<view class="w_box1" v-for="(item,index) in oilRechargeList" :key="index" @click="setIndex(index,item)"
:class="{ 'acvit' :windex == index}">
<view class="">充值{{item.rechargeBalance}}囤油{{item.incomeLitres}}</view>
<view class="">锁定单价{{item.lockPrice}}/L</view>
</view>
</view>
<view class="input-box">
<view class="i-title">充值备注</view>
<view class="b_input">
<input type="text" v-model="rechargeOrder.remark">
</view>
</view>
</view>
<view class="title-box">
<view class="i-title">充值有礼</view>
<view class="i-text" v-for="(item,index) in describe" :key="index">{{item.discountActiveDescribe}}</view>
@ -84,13 +116,15 @@
export default {
data() {
return {
type: 'balance',
type: 'oilCard',
show: false,
windex: 0,
storeId: uni.getStorageSync("storeId"),
storeName: "",
//
rechargeList: [],
//
oilRechargeList: [],
//
staffList: [],
staff: {},
@ -120,16 +154,17 @@
},
onShow() {
this.getList()
this.getList1()
this.getUserBalance()
this.getDescribe()
},
methods: {
//
goRecharge() {
if (this.type=='oilCard'){
if (this.type == 'oilCard') {
uni.showToast({
icon:'error',
title:"暂未开发!"
icon: 'error',
title: "暂未开发!"
})
return;
}
@ -254,6 +289,20 @@
this.staff = res.data.staff
})
},
//
getList1() {
request({
url: "business/marketingActivity/cardFuelDiesel/selectAllApplet",
method: 'get',
params: {
storeId: this.storeId,
activeStatus: 1
},
}).then((res) => {
this.oilRechargeList = res.data.records
console.log(res, 271);
})
},
getUserBalance() {
request({
url: '/business/userManager/user/getUserBalanceApplet',
@ -270,19 +319,24 @@
},
setIndex(index, data) {
this.windex = index
if (index != this.rechargeList.length) {
this.rechargeOrder.balance = data.rechargeBalance
this.rechargeOrder.payAmount = data.rechargeBalance
this.rechargeOrder.bidBalance = data.bidBalance
this.rechargeOrder.rechargeBalance = data.rechargeBalance
this.rechargeOrder.giftBalance = data.giftBalance
this.rechargeOrder.id = data.id
} else {
this.rechargeOrder.balance = 0
this.rechargeOrder.payAmount = 0
this.rechargeOrder.bidBalance = 0
this.rechargeOrder.rechargeBalance = 0
this.rechargeOrder.giftBalance = 0
if (this.type == 'balance') {
if (index != this.rechargeList.length) {
this.rechargeOrder.balance = data.rechargeBalance
this.rechargeOrder.payAmount = data.rechargeBalance
this.rechargeOrder.bidBalance = data.bidBalance
this.rechargeOrder.rechargeBalance = data.rechargeBalance
this.rechargeOrder.giftBalance = data.giftBalance
this.rechargeOrder.id = data.id
} else {
this.rechargeOrder.balance = 0
this.rechargeOrder.payAmount = 0
this.rechargeOrder.bidBalance = 0
this.rechargeOrder.rechargeBalance = 0
this.rechargeOrder.giftBalance = 0
}
}
if (this.type == 'oilCard') {
}
}
}
@ -404,6 +458,19 @@
margin-right: 1%;
}
.w_box1 {
width: 48%;
border: 1px solid #EEEEEE;
border-radius: 4px;
text-align: center;
color: #333333;
box-sizing: border-box;
padding: 5px;
font-size: 14px;
margin-bottom: 15px;
margin-right: 1%;
}
.anniu_ {
width: 80%;
height: 35px;

View File

@ -22,7 +22,8 @@
<view class="si_"> 1每人限领10张 2每日</view>
<view class="si_">核销说明</view>
<view class="si_" style="display: flex;align-items: center;">
<view style="width: 6px;height: 6px;background: #FF9655;margin-right: 5px;border-radius: 50%;"></view>
<view style="width: 6px;height: 6px;background: #FF9655;margin-right: 5px;border-radius: 50%;">
</view>
以下模块可用一键加油扫码买单
</view>
</view>
@ -38,11 +39,7 @@
<view class="si">山东省济南市槐荫区 | 3.0km</view>
</view>
</view>
<view class="bottom-box">
<view class="or-num">免费</view>
<view class="anniu">立即领取</view>
<view class="but-sub">保存</view>
</view>
</view>
</template>
@ -148,4 +145,18 @@
display: flex;
align-items: center;
}
.but-sub {
width: 305px;
height: 40px;
line-height: 40px;
margin: 0 auto;
background-color: #FF9655;
color: white;
border-radius: 50px;
text-align: center;
position: absolute;
bottom: 40px;
left: 11%;
}
</style>

View File

@ -12,7 +12,7 @@
<view class="wrap-box">
<view class="w_box" v-for="(item,index) in 30" :key="index" @click="setIndex(index)"
:class="{'acv_w' : wIndex == index }">
<view class="">6</view>
<view class="">{{item+1}}</view>
<image src="@/static/imgs/jinbi.png" style="width: 25px; height: 25px; "></image>
<view class="">5积分</view>
</view>
@ -37,8 +37,8 @@
<view class="_bbox">
<!-- <view class="b_title">获取您的位置信息</view> -->
<view class="">
1.签到时间
{{signInRule}}
<!-- 1.签到时间
全天可签到不限制具体时间段
2.签到方式
用户通过小程序的签到入口进行点击签到
@ -48,7 +48,7 @@
激励机制
4补签与断签
不允许用户进行补签以恢复连续签到天数
断签后用户需重新开始计算连续签到天数
断签后用户需重新开始计算连续签到天数 -->
</view>
</view>
@ -64,7 +64,9 @@
return {
wIndex: 0,
show: false,
equityShow: false
equityShow: false,
list: [],
signInRule: ''
}
},
onLoad() {
@ -72,27 +74,39 @@
},
onPullDownRefresh() {
//
this.resetting() //
this.getList() //
uni.stopPullDownRefresh()
},
onReachBottom() {
//
if (this.pageNo >= this.totalPage) {
uni.showToast({
title: '没有下一页数据',
icon: 'none'
})
} else {
this.pageNo++
this.getList()
}
},
onShow() {
this.getList()
this.getSignIn()
},
components: {
},
methods: {
getSignIn() {
request({
url: '/business/integral/integralSettings/getIntegralSignInRules',
method: 'get',
params: {
storeId: uni.getStorageSync("storeId")
}
}).then((res) => {
console.log(res, 104);
if (res.code == 200) {
this.signInRule = res.data
}
})
},
equityclose() {
this.equityShow = false
},
@ -100,35 +114,19 @@
this.wIndex = index
this.show = true
},
//
resetting() {
this.pageNo = 1
this.pageSize = 10
this.totalPage = ''
this.List = []
},
//
async getList() {
// uni.showLoading({
// title: ''
// });
let res = await request({
url: '网络请求',
getList() {
request({
url: '/business/integral/integralSettings/getIntegral',
method: 'get',
data: {
pageNo: this.pageNo,
pageSize: this.pageSize,
params: {
storeId: uni.getStorageSync("storeId")
}
}).then((res) => {
console.log(res, 107);
if (res.code == 200) {
this.list = res.data
}
})
if (res.code == 200) {
uni.hideLoading(); //
if (this.pageNo != 1) {
this.List = this.ruleList.concat(res.result.records)
} else {
this.List = res.result.records
}
this.totalPage = res.result.pages
}
},
goback() {
uni.navigateBack()