交易规则完成

This commit is contained in:
Jerry Yan 2020-08-16 17:19:52 +08:00
parent 2fef75a2c9
commit e9c91cc7e4
6 changed files with 486 additions and 0 deletions

68
css/credit_edit.css Normal file
View File

@ -0,0 +1,68 @@
.row {
background: white;
width: 100%;
position: relative;
margin-top: 5px;
margin-bottom: 5px;
}
.block{
margin-top: 36px;
padding: 0 2%;
}
.z{
width: 100%;
height: 70px;
}
.name {
font-size: 18px;
color: black;
line-height: 42px;
padding-left: 5px;
}
.small_title,
.created_time,
.updated_time {
font-size: 0.8rem;
color: #BBBBBB;
}
.footer{
position: fixed;
bottom: 0;
width: 100%;
background: white;
height: 50px;
line-height: 50px;
text-align: center;
border-top: 1px solid #e6e6e6;
}
#content {
width: 100%;
}
#content .w-e-toolbar {
flex-wrap: wrap;
}
.s1 {
/* float: left; */
/* min-width: 60px; */
line-height: 42px;
color: #525252;
font-size: 17px;
white-space: nowrap;
/* flex: 1.2; */
}
.con .row input {
/* float: left; */
margin: 0;
width:auto ;
border: none;
font-size: 17px;
}

93
js/credit.js Normal file
View File

@ -0,0 +1,93 @@
mui.plusReady(function(){
$('body').on('click', ".footer[data-app='app2']", function(){
app2.create();
})
})
const app2 = new Vue({
el: '#app2',
data() {
return {
creditData: [
],
}
},
methods: {
triggerDelete(index) {
this.$set(this.creditData[index], 'currentDelete', true)
},
cancelDelete(index){
this.$set(this.creditData[index], 'currentDelete', false)
},
confirmDelete(index){
$.ajax({
url: qlgUrl("app/note/creditDelete"),
method: "POST",
data: {
id: this.creditData[index].id,
},
dataType: "json",
success: (res) => {
if(res.status != 1){
mui.alert(res.msg);
}
this.loadData();
},
error: (err) => {
mui.alert("请求失败");
this.loadData();
}
})
},
edit(index){
mui.openWindow({
url: "credit_edit.html",
id: "credit_edit"+index,
extras: {
noteId: index
},
createNew: false, //是否重复创建同样id的webview默认为false:不重复创建,直接显示
waiting: {
autoShow: true, //自动显示等待框默认为true
title: '正在加载...', //等待对话框上显示的提示内容
}
})
},
create(){
// some jump
this.edit(0);
// JZL.openWindow('trade_rule.html', 'trade_rule.html')
},
loadData() {
$.ajax({
url: qlgUrl("app/note/creditIndex"),
method: "GET",
dataType: 'json',
success: (res) => {
if(res.status == 1){
this.creditData = res.data;
localStorage.setItem("LOCAL_CREDIT", JSON.stringify(res.data));
}else{
mui.alert(res.msg);
}
},
error: function(err){
mui.alert("请求失败");
self.back();
}
});
},
},
created() {
var localData = localStorage.getItem("LOCAL_CREDIT");
this.loadData();
if(localData){
try{
JSON.parse(localData);
this.noteData = JSON.parse(localData);
} catch(e) {
this.noteData = [];
}
}
},
})

173
js/credit_edit.js Normal file
View File

@ -0,0 +1,173 @@
mui.init({
beforeback: function() {
//获得父页面的webview
var list = plus.webview.currentWebview().opener(); //触发父页面的自定义事件(refresh),从而进行刷新
list.reload();
//返回true,继续页面关闭逻辑
return true;
}
});
mui.plusReady(function(){
window.self = plus.webview.currentWebview();
window.Id = self.noteId;
var $createTime = $("#createTime");
var $name = $("#name");
var $cc = $("#cur_cash");
var $cdc = $("#credit_cash");
if(Id <= 0) {
$createTime.text("现在");
$(".footer .add").attr('disabled', true);
}
$(".footer").on("tap", '.save',function(){
$.ajax({
url: qlgUrl("app/note/creditSave"),
method: "POST",
data: {
id: Id,
name: $name.val(),
cur_cash: $cc.val(),
credit_cash: $cdc.val(),
},
dataType: "json",
success: function(res){
if(res.status != 1){
mui.alert(res.msg);
}else{
mui.back();
}
},
error: function(err){
mui.alert("请求失败");
self.back();
}
})
})
$(".footer").on("tap", '.add',function(){
app.triggerShowAdd();
})
const app = new Vue({
el: '#content',
data() {
return {
listData: [
],
newData: {
type: 1,
amount: 0,
},
showAdd: false,
}
},
methods: {
delete2(index) {
if(!confirm('确定要删除么?'))return ;
$.ajax({
url: qlgUrl("app/note/creditDeleteInfo"),
method: "POST",
data: {
id: this.listData[index].id,
credit_id: this.listData[index].credit_id,
},
dataType: "json",
success: (res) => {
if(res.status != 1){
mui.alert(res.msg);
}
this.loadData();
},
error: (err) => {
mui.alert("请求失败");
this.loadData();
}
})
},
loadData() {
$.ajax({
url: qlgUrl("app/note/creditDetail"),
method: "GET",
data: {
id: window.Id,
},
dataType: "json",
success: function(res){
if(res.status == 1){
$createTime.text(res.data.create_time);
$name.val(res.data.name);
$cdc.val(res.data.credit_cash);
$cc.val(res.data.cur_cash);
$cc.data('val',res.data.cur_cash);
}else{
alert(res.msg);
}
},
error: function(err){
alert("请求失败");
},
});
$.ajax({
url: qlgUrl("app/note/creditDetailInfo"),
method: "GET",
data: {
id: Id
},
dataType: 'json',
success: (res) => {
if(res.status == 1){
this.listData = res.data;
localStorage.setItem("LOCAL_CREDIT_"+Id, JSON.stringify(res.data));
}else{
mui.alert(res.msg);
}
},
error: function(err){
mui.alert("请求失败");
self.back();
}
});
},
addNewData() {
$.ajax({
url: qlgUrl("app/note/creditAdd"),
method: "POST",
data: {
id: Id,
...this.newData,
},
dataType: "json",
success: (res) => {
this.newData = {
type: 1,
amount: 0,
}
this.showAdd = false;
if(res.status != 1){
mui.alert(res.msg);
}
this.loadData();
},
error: function(err){
this.loadData();
}
})
},
triggerShowAdd() {
this.showAdd = !this.showAdd;
},
},
created() {
if (Id <= 0) return;
var localData = localStorage.getItem("LOCAL_CREDIT_"+Id);
this.loadData();
if(localData){
try{
JSON.parse(localData);
this.listData = JSON.parse(localData);
} catch(e) {
console.log(e);
this.listData = [];
}
}
},
})
})

10
js/trade_rule_detail.js Normal file
View File

@ -0,0 +1,10 @@
mui.plusReady(function(){
// some ajax
window.self = plus.webview.currentWebview();
window.Id = self.ruleId;
const parentData = self.parentData;
var block = $('.block');
if (parentData) {
block.html(parentData.content)
}
})

97
templete/credit_edit.html Normal file
View File

@ -0,0 +1,97 @@
<!DOCTYPE html>
<html>
<head style="visibility:hidden;">
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover">
<title>内容编辑</title>
<link rel="stylesheet" type="text/css" href="../css/mui.css" />
</head>
<body style="visibility:hidden;">
<div class="header">
<div class="header_con">
<a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
<!--<img src="../img/title_news.png" class="oc_logo" />-->
<p class="title">内容编辑</p>
</div>
</div>
<div class="z"></div>
<div class="con">
<div class="row">
<span class="s1">卡名称:</span>
<input type="text" name="name" id="name" value="" placeholder="请输入标题" />
</div>
<div class="row">
<span class="s1">卡余额:</span>
<input type="number" name="cur_cash" id="cur_cash" value="" placeholder="请输入当前余额" />
<span class="s3"></span>
</div>
<div class="row">
<span class="s1">卡额度:</span>
<input type="number" name="credit_cash" id="credit_cash" value="" placeholder="请输入信用卡额度" />
<span class="s3"></span>
</div>
<div class="row">
<span>创建时间:<span id="createTime"></span></span>
</div>
<div id="content" v-cloak>
<div class="row clearfix" v-if="showAdd">
<span class="s2" style="display: inline-block;">
<select v-model="newData.type" style="height: 40px;
margin: 0;
padding: 0 10px;
font-size: 16px;">
<option value="1">购物</option>
<option value="2">还款</option>
</select>
</span>
<span class="s3" style="display: inline-block;">
<input v-model="newData.amount" type="number" style="width: 120px;">
</span>
<span class="s1 btn" @click="addNewData">新增</span>
<span class="s1 btn" @click="triggerShowAdd">取消</span>
</div>
<div class="row clearfix" v-for="(each, index) in listData" :data-id="each.id">
<span class="s1">{{each.create_date}}</span>
<span class="s2">{{each.type==0?'初始值':(each.type==1?'购物':(each.type==2?'还款':
(each.type==9?'手动修正':'其他')))}}</span>
<span class="s3">{{each.amount}}元</span>
<div @click="delete2(index)" v-if="(each.type == 1 || each.type == 2)" style="color: red;float: right;line-height: 40px;">删除</div>
</div>
</div>
</div>
<div class="footer" style="display: flex;">
<div class='save' style="width: 100%;border-right: 1px solid #888;">保存</div>
<div class='add' style="width: 100%;">新增记录</div>
</div>
</body>
<script src="../js/mui.min.js" type="text/javascript" charset="utf-8"></script>
<script src="../js/jquery-3.2.1.min.js" type="text/javascript" charset="utf-8"></script>
<script src="../js/common.js" type="text/javascript" charset="utf-8"></script>
<script src="../js/uploader.js" type="text/javascript" charset="utf-8"></script>
<script src="../lib/wangEditor/wangEditor.min.js" type="text/javascript" charset="utf-8"></script>
<script src="../lib/wangEditor/moxie.js" type="text/javascript" charset="utf-8"></script>
<script src="../lib/wangEditor/qiniu.js" type="text/javascript" charset="utf-8"></script>
<script src="../lib/wangEditor/plupload.dev.js" type="text/javascript" charset="utf-8"></script>
<script src="../lib/vue/vue.min.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
mui.plusReady(function() {
var element;
var parent = document.body;
element = document.createElement('script');
element.src = localStorage.getItem("jsUrl") + 'common.js?ver=' + localStorage.getItem('version');
parent.appendChild(element);
element.onload = function() {
var style = [JZL.getCssUrl('credit_edit.css'), JZL.getCssUrl("global.css"), JZL.getCssUrl("header.css")];
JZL.css_init(style);
var script = [JZL.getJsUrl('credit_edit.js')];
JZL.js_init(script);
setTimeout(function() {
parent.style.visibility = "visible";
}, 100);
};
})
</script>
</html>

View File

@ -0,0 +1,45 @@
<!DOCTYPE html>
<html>
<head style="visibility:hidden;">
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover">
<title>交易规则详情</title>
<link rel="stylesheet" type="text/css" href="../css/mui.css" />
</head>
<body style="visibility:hidden;">
<div class="header">
<div class="header_con">
<a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
<!--<img src="../img/title_news.png" class="oc_logo" />-->
<p class="title">交易规则详情</p>
</div>
</div>
<div class="z"></div>
<div class="block" style="background-color: white;">
</div>
</body>
<script src="../js/mui.min.js" type="text/javascript" charset="utf-8"></script>
<script src="../js/jquery-3.2.1.min.js" type="text/javascript" charset="utf-8"></script>
<script src="../js/common.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
mui.plusReady(function() {
var element;
var parent = document.body;
element = document.createElement('script');
element.src = localStorage.getItem("jsUrl") + 'common.js?ver=' + localStorage.getItem('version');
parent.appendChild(element);
element.onload = function() {
var style = [JZL.getCssUrl('trade_rule.css'), JZL.getCssUrl("global.css"), JZL.getCssUrl("header.css")];
JZL.css_init(style);
var script = [JZL.getJsUrl('trade_rule_detail.js')];
JZL.js_init(script);
setTimeout(function() {
parent.style.visibility = "visible";
}, 100);
};
})
</script>
</html>