### 0.3.3 专业版:

【新增】后台新增支付单查询功能,实现支付单微信反馈支付数据,防止出现极端情况下,导致的支付数据回调失败而影响订单业务。#I4ZRMR
【新增】后台新增发票上传功能,前端小程序新增发票下载功能。#I4ZYT3
【新增】商家中心订单查询,增加发票下载查看功能。
【新增】代码生成器Controller模板的导出excel请求增加decimal类型的处理。
【优化】调整前端帮助文档默认传值问题,未指定具体分类情况下,默认取第一个栏目数据。
【修复】修复页面设计上传图片后不进行预览的问题。
This commit is contained in:
JianWeie
2022-03-29 17:07:26 +08:00
parent ad1ce9044e
commit c341aeb8c8
22 changed files with 15459 additions and 114 deletions

View File

@@ -51,11 +51,11 @@
, url: layui.setter.apiUrl + 'Api/Tools/UploadFiles'
, before: function (obj) {
obj.preview(function (index, file, result) {
$('#viewImgBox').attr('src', result);
$('#viewImgBoximageUrl').attr('src', result);
});
}
, done: function (res) {
if (res.code > 0) { return layer.msg('上传失败'); }
if (res.code > 0) { return layer.msg(res.msg); }
layer.msg('上传成功');
$("#imagesUrl").val(res.data.fileUrl);
}

View File

@@ -0,0 +1,76 @@
<script type="text/html" template lay-done="layui.data.done(d);">
<div class="layui-form coreshop-form layui-form-pane">
<blockquote class="layui-elem-quote">
请选择小于10M的视频进行裁剪上传
</blockquote>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">地址</label>
<div class="layui-input-inline layui-inline-8">
<input name="url" id="url" type="text" class="layui-input" lay-verify="required|url" lay-reqText="可手动输入地址或点击上传" />
</div>
<div class="layui-input-inline">
<button type="button" class="layui-btn" id="upBtn" lay-active="doCropperImg">上传附件</button>
<div id="viewTextBox"></div>
</div>
</div>
</div>
<div class="layui-form-item core-hidden">
<div class="layui-input-block">
<div class="layui-footer">
<input type="button" class="layui-btn" lay-submit lay-filter="LAY-app-getUpLoad-submit" id="LAY-app-getUpLoad-submit" value="确认添加">
</div>
</div>
</div>
</div>
</script>
<script>
var debug = layui.setter.debug;
layui.data.done = function (d) {
//开启调试情况下获取接口赋值数据
if (debug) { console.log(d); }
layui.use(['index', 'table', 'laydate', 'upload', 'coreHelper'],
function () {
var $ = layui.$
, admin = layui.admin
, table = layui.table
, form = layui.form
, laydate = layui.laydate
, setter = layui.setter
, coreHelper = layui.coreHelper
, upload = layui.upload
, view = layui.view;
//普通图片上传
var uploadInst = upload.render({
elem: '#upBtn',
accept: 'video'
, url: layui.setter.apiUrl + 'Api/Tools/UploadFiles'
, before: function (obj) {
obj.preview(function (index, file, result) {
// $('#viewImgBox').attr('src', result);
});
}
, done: function (res) {
if (res.code > 0) { return layer.msg(res.msg); }
layer.msg('上传成功');
$("#url").val(res.data.fileUrl);
}
, error: function () {
var viewTextBox = $('#viewTextBox');
viewTextBox.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-xs demo-reload">重试</a>');
viewTextBox.find('.demo-reload').on('click', function () {
uploadInst.upload();
});
}
});
//重载form
form.render();
});
};
</script>

View File

@@ -11,7 +11,7 @@
/* 重写样式 */
</style>
<script type="text/html" template lay-type="Post" lay-url="{{ layui.setter.apiUrl }}Api/CoreCmsBillPayments/GetIndex" lay-done="layui.data.done(d);">
</script>
<div class="table-body">
<table id="LAY-app-CoreCmsBillPayments-tableBox" lay-filter="LAY-app-CoreCmsBillPayments-tableBox"></table>
@@ -69,6 +69,9 @@
</script>
<script type="text/html" id="LAY-app-CoreCmsBillPayments-tableBox-bar">
<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">查看</a>
{{# if(d.paymentCode == 'wechatpay' && d.status !=2){ }}
<a class="layui-btn layui-btn-xs" lay-event="doRefresh">刷新</a>
{{# } }}
</script>
<script>
@@ -91,7 +94,7 @@
, util = layui.util
, view = layui.view;
//重载form
form.render();
var searchwhere;
@@ -126,7 +129,7 @@
field: 'userNickName', title: '用户', sort: false, width: 105, templet: function (d) {
return d.userNickName + '' + d.userId + '';
}
}, {
}, {
field: 'type', title: '单据类型', sort: false, width: 105,
templet: function (data) {
for (var i = 0; i < d.data.paymentsResourceTypes.length; i++) {
@@ -149,7 +152,7 @@
}
},
{
field: 'paymentCode', title: '支付状态', sort: false, width: 105,
field: 'paymentCode', title: '支付方式', sort: false, width: 105,
templet: function (data) {
for (var i = 0; i < d.data.paymentCode.length; i++) {
if (data.paymentCode == d.data.paymentCode[i].title) {
@@ -163,7 +166,7 @@
{ field: 'payedMsg', title: '支付备注', sort: false },
{ field: 'createTime', title: '创建时间', width: 130, sort: false },
{ field: 'updateTime', title: '更新时间', width: 130, sort: false },
{ width: 82, align: 'center', title: '操作', fixed: 'right', toolbar: '#LAY-app-CoreCmsBillPayments-tableBox-bar' }
{ width: 120, align: 'center', title: '操作', fixed: 'right', toolbar: '#LAY-app-CoreCmsBillPayments-tableBox-bar' }
]
]
});
@@ -194,13 +197,16 @@
function (obj) {
if (obj.event === 'detail') {
doDetails(obj);
} else if (obj.event === 'doRefresh') {
doRefresh(obj);
}
});
//执行预览操作
function doDetails(obj) {
coreHelper.Post("Api/CoreCmsBillPayments/GetDetails", { id: obj.data.paymentId }, function (e) {
if (e.code === 0) {
admin.popup({ shadeClose: false,
admin.popup({
shadeClose: false,
title: '查看详情',
area: ['600px', '550px'],
id: 'LAY-popup-CoreCmsBillPayments-details',
@@ -215,6 +221,12 @@
}
});
}
//执行刷新操作
function doRefresh(obj) {
coreHelper.Post("Api/CoreCmsBillPayments/doRefresh", { id: obj.data.paymentId }, function (e) {
layer.msg(e.msg);
});
}
//执行查询条件导出excel
function doQueryExportexcel() {

View File

@@ -6,7 +6,7 @@
<label for="category" class="layui-form-label">开票类型</label>
<div class="layui-input-inline layui-inline-3">
<select name="category" id="category" lay-search lay-verType="tips" disabled="disabled">
<select name="category" id="category" lay-search disabled="disabled">
{{# layui.each(d.params.data.orderTaxCategory, function(index, item){ }}
<option value="{{item.value}}" {{item.value===d.params.data.model.category?'selected="selected"':''}}>{{item.description}}</option>
{{# }); }}
@@ -14,14 +14,14 @@
</div>
<label for="sourceId" class="layui-form-label">资源ID</label>
<div class="layui-input-inline layui-inline-3">
<input name="sourceId" id="sourceId" lay-verType="tips" lay-verify="required|verifytitle" class="layui-input" value="{{d.params.data.model.sourceId || '' }}" disabled="disabled" />
<input name="sourceId" id="sourceId" lay-verify="required|verifytitle" class="layui-input" value="{{d.params.data.model.sourceId || '' }}" disabled="disabled" />
</div>
</div>
<div class="layui-form-item">
<label for="status" class="layui-form-label">开票状态</label>
<div class="layui-input-inline layui-inline-3">
<select name="status" id="status" lay-search lay-verType="tips" lay-verify="required|verifylogiCode">
<select name="status" id="status" lay-search lay-verify="required|verifylogiCode">
<option value="">请选择</option>
{{# layui.each(d.params.data.orderTaxStatus, function(index, item){ }}
<option value="{{item.value}}" {{item.value===d.params.data.model.status?'selected="selected"':''}}>{{item.description}}</option>
@@ -30,7 +30,7 @@
</div>
<label for="type" class="layui-form-label">发票类型</label>
<div class="layui-input-inline layui-inline-3">
<select name="type" id="type" lay-search lay-verType="tips" lay-verify="required">
<select name="type" id="type" lay-search lay-verify="required">
<option value="">请选择</option>
<option value="2" {{d.params.data.model.type===2?'selected="selected"':''}}>个人发票</option>
<option value="3" {{d.params.data.model.type===3?'selected="selected"':''}}>公司发票</option>
@@ -41,21 +41,32 @@
<div class="layui-form-item">
<label for="title" class="layui-form-label">发票抬头</label>
<div class="layui-input-inline layui-inline-8">
<input name="title" id="title" lay-verType="tips" lay-verify="required|verifytitle" class="layui-input" placeholder="请输入发票抬头" lay-reqText="请输入发票抬头" value="{{d.params.data.model.title || '' }}" />
<input name="title" id="title" lay-verify="required|verifytitle" class="layui-input" placeholder="请输入发票抬头" lay-reqText="请输入发票抬头" value="{{d.params.data.model.title || '' }}" />
</div>
</div>
<div class="layui-form-item" lay-size="sm">
<label for="taxNumber" class="layui-form-label">发票税号</label>
<div class="layui-input-inline layui-inline-3">
<input name="taxNumber" id="taxNumber" lay-verType="tips" class="layui-input" placeholder="请输入发票税号" lay-reqText="请输入发票税号" value="{{d.params.data.model.taxNumber || '' }}" />
<input name="taxNumber" id="taxNumber" class="layui-input" placeholder="请输入发票税号" lay-reqText="请输入发票税号" value="{{d.params.data.model.taxNumber || '' }}" />
</div>
<label for="amount" class="layui-form-label">发票金额</label>
<div class="layui-input-inline layui-inline-3">
<input name="amount" id="amount" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入发票金额" lay-reqText="请输入发票金额" value="{{d.params.data.model.amount || '' }}" />
<input name="amount" id="amount" lay-verify="required" class="layui-input" placeholder="请输入发票金额" lay-reqText="请输入发票金额" value="{{d.params.data.model.amount || '' }}" />
</div>
</div>
<div class="layui-form-item">
<label for="fileUrl" class="layui-form-label">发票下载地址</label>
<div class="layui-input-inline layui-inline-5">
<input name="fileUrl" id="fileUrl" class="layui-input" placeholder="请输入发票下载地址" lay-reqText="请输入发票下载地址" value="{{d.params.data.model.fileUrl || '' }}" />
</div>
<div class="layui-input-inline">
<button type="button" class="layui-btn" id="upBtn">上传发票</button>
</div>
</div>
<div class="layui-form-item layui-form-text">
<label for="remarks" class="layui-form-label">开票备注</label>
<div class="layui-input-block">
@@ -86,6 +97,25 @@
, upload = layui.upload
, coreHelper = layui.coreHelper;
//普通图片上传
var uploadInst = upload.render({
elem: '#upBtn'
, accept: 'file'
, url: layui.setter.apiUrl + 'Api/Tools/UploadFiles'
, done: function (res) {
if (res.code > 0) { return layer.msg(res.msg); }
layer.msg('上传成功');
$("#fileUrl").val(res.data.fileUrl);
}
, error: function () {
var viewTextBox = $('#viewTextBox');
viewTextBox.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-xs demo-reload">重试</a>');
viewTextBox.find('.demo-reload').on('click', function () {
uploadInst.upload();
});
}
});
form.verify({
verifysourceId: [/^[\S]{0,32}$/, '资源ID最大只允许输入32位字符且不能出现空格'],

View File

@@ -184,6 +184,7 @@
}
},
{ field: 'fileUrl', title: '发票下载地址', sort: false},
{ field: 'remarks', title: '开票备注', sort: false, width: 105 },
{ field: 'createTime', title: '创建时间', width: 130, sort: false },
{ field: 'updateTime', title: '更新时间', width: 130, sort: false },
@@ -229,7 +230,7 @@
admin.popup({
shadeClose: false,
title: '编辑数据',
area: ['600px', '500px'],
area: ['600px', '90%'],
id: 'LAY-popup-CoreCmsInvoice-edit',
success: function (layero, index) {
view(this.id).render('financial/invoice/edit', { data: e.data }).done(function () {

View File

@@ -841,7 +841,8 @@
</div>
<div class="content-item">
<span class="item-label">视频地址:</span>
<el-input size="mini" placeholder="请输入视频地址" v-model="item.url"></el-input>
<!--<el-input size="mini" placeholder="请输入视频地址" v-model="item.url"></el-input>-->
<upload-video @upload-video="upVideo(index,item)" :index="index" :item="item"></upload-video>
</div>
</div>
</li>
@@ -1103,6 +1104,14 @@
</div>
</div>
</template>
<template id="upload-video">
<div style="margin-bottom: 10px; width: 70%;">
<el-input size="mini" placeholder="请输入视频地址" v-model="item.url"></el-input>
<button type="button" class="layui-btn layui-btn-sm" @click="upload" style="margin-top: 10px;">上传视频</button>
</div>
</template>
<template id="upload-img">
<div>
<button type="button" class="layui-btn layui-btn-sm" @click="upload">上传图片</button>