Pārlūkot izejas kodu

费项重新整理

qzyReal 1 gadu atpakaļ
vecāks
revīzija
f0dfdee767

+ 0 - 16
sa-frame/menu-list-sp.js

@@ -632,22 +632,6 @@ window.menuList.unshift({
 					}
 				]
 			},
-			{
-				id: 'tb-order-goods',
-				name: '订单商品管理',
-				icon: 'el-icon-folder-opened',
-				parent:true,
-				info: '订单商品表表数据的维护',
-				childList: [
-					{id: 'tb-order-goods-list', name: '订单商品表-列表', url: 'sa-view/tb-order-goods/tb-order-goods-list.html',
-					childList:[
-					{id:'tb-order-goods-add',name:'订单商品表添加',isShow:false},
-					{id:'tb-order-goods-edit',name:'订单商品表更新',isShow:false},
-					{id:'tb-order-goods-del',name:'订单商品表删除',isShow:false},
-					]
-					},
-				]
-			},
 		]
 	}, {
 		id: 'transport-sys',

+ 2 - 2
sa-view/app-user/app-user-list.html

@@ -28,7 +28,7 @@
 				</el-form>
 				<!-- ------------- 数据列表 ------------- -->
 				<el-table class="data-table" ref="data-table" :data="dataList" >
-					<sa-td type="selection"></sa-td>
+					<sa-td type="index" name="序号"></sa-td>
 					<sa-td name="手机号码" prop="phone" ></sa-td>
 					<sa-td name="姓名" prop="name" width="100"></sa-td>
 					<sa-td name="类型" prop="userType" type="enum" :jv="{1: '普通边民', 2: '边民组长', 3: '收购商', 4: '司机', 5: '外籍商户', 6: '合作社'}"></sa-td>
@@ -51,7 +51,7 @@
 						<template slot-scope="s">
 							<el-button class="c-btn" type="success" icon="el-icon-view" @click="get(s.row)">查看</el-button>
 							<el-button v-if="sa.isAuth('app-user-edit')" class="c-btn" type="primary" icon="el-icon-edit" @click="update(s.row)">修改</el-button>
-							<el-button v-if="sa.isAuth('app-user-edit')" class="c-btn" type="primary" icon="el-icon-view" @click="pass(s.row)">改密</el-button>
+							<el-button v-if="sa.isAuth('app-user-edit')" class="c-btn" type="primary" icon="el-icon-edit" @click="pass(s.row)">改密</el-button>
 							<el-button v-if="sa.isAuth('app-user-del')" class="c-btn" type="danger" icon="el-icon-delete" @click="del(s.row)">删除</el-button>
 						</template>
 					</el-table-column>

+ 91 - 20
sa-view/tb-fee-item/tb-fee-item-add.html

@@ -23,6 +23,17 @@
 			.c-panel .el-form .el-textarea__inner {
 				width: 250px;
 			}
+
+			.rows {}
+
+			.rows .row {
+				float: left;
+				width: 33.3333%;
+			}
+
+			.rows .row .out {
+				padding: 20px;
+			}
 		</style>
 	</head>
 	<body>
@@ -33,23 +44,47 @@
 					<div class="c-title" v-if="id == 0">数据添加</div>
 					<div class="c-title" v-else>数据修改</div>
 					<el-form v-if="m">
-						<sa-item type="text" name="费项名称" v-model="m.name" br></sa-item>
-						<div class="c-item br">
-							<label class="c-label"><label style="color: red">*</label>收费企业:</label>
-							<el-select v-model="m.companyId" placeholder="请选择" filterable size="mini">
-								<el-option v-for="(item,index) in companyList" :key="index" :label="item.name"
-									:value="item.id"> </el-option>
-							</el-select>
+						<el-row>
+							<el-col :span="12">
+								<sa-item type="text" name="费项名称" v-model="m.name" br></sa-item>
+							</el-col>
+							<el-col :span="12">
+								<div class="c-item br">
+									<label class="c-label"><label style="color: red">*</label>收费企业:</label>
+									<el-select v-model="m.companyId" placeholder="请选择" filterable size="mini">
+										<el-option v-for="(item,index) in companyList" :key="index" :label="item.name"
+											:value="item.id"> </el-option>
+									</el-select>
+								</div>
+							</el-col>
+						</el-row>
+						<div>
+							<div><el-button type="primary" icon="el-icon-plus" @click="addRules">添加规则</el-button></div>
+						</div>
+						<div class="rows">
+							<div v-for="(rule,index) in rules" class="row">
+								<div class="out">
+									<el-divider content-position="left">规则{{index+1}}
+										<i class="el-icon-delete" style="color: red;margin-left: 20px;cursor: pointer;"
+											@click="delRules(rule.index)"></i>
+									</el-divider>
+									<div class="c-item br">
+										<label class="c-label"><label style="color: red">*</label>选择品目:</label>
+										<el-select multiple v-model="rule.goodsCodes" placeholder="请选择" filterable
+											size="mini">
+											<el-option v-for="(item,index) in goodsList" :key="index" :label="item.name"
+												:value="item.code"> </el-option>
+										</el-select>
+									</div>
+									<sa-item type="enum" name="类型" v-model="rule.feeType"
+										:jv="{2: '固定金额',1: '按交易额', 3:'按吨收费'}" jtype="3" br></sa-item>
+									<sa-item type="num" v-if="rule.feeType==1||rule.feeType==3" name="百分比(%)"
+										v-model="rule.percent" br></sa-item>
+									<sa-item type="num" v-if="rule.feeType==2" name="金额(元)" v-model="rule.feeMoney"
+										br></sa-item>
+								</div>
+							</div>
 						</div>
-						<sa-item type="enum" name="类型" v-model="m.feeType" :jv="{1: '按交易额收取', 2: '按次收取'}" jtype="3"
-							br></sa-item>
-						<sa-item type="num" v-if="m.feeType==1" name="百分比(%)" v-model="m.percent" br></sa-item>
-						<sa-item type="num" v-if="m.feeType==2" name="金额(元)" v-model="m.feeMoney" br></sa-item>
-						<sa-item type="enum" name="状态" v-model="m.status" :jv="{0: '禁用', 1: '启用'}" jtype="3"
-							br></sa-item>
-						<sa-item name="" class="s-ok" br>
-							<el-button type="primary" icon="el-icon-plus" @click="ok()">保存</el-button>
-						</sa-item>
 					</el-form>
 				</div>
 			</div>
@@ -68,9 +103,43 @@
 				data: {
 					id: sa.p('id', 0), // 获取超链接中的id参数(0=添加,非0=修改) 
 					m: null, // 实体对象 
-					companyList: []
+					rules: [{
+						index: 0,
+						goodsCodes: [],
+						feeType: 2,
+						percent: 10,
+						feeMoney: 30
+					}],
+					companyList: [],
+					goodsList: []
 				},
 				methods: {
+					addRules() {
+						let rule = {
+							index: new Date().getTime(),
+							goodsCodes: [],
+							feeType: 2,
+							percent: 10,
+							feeMoney: 30
+						}
+						this.rules.push(rule);
+					},
+					delRules(index) {
+						let rules = this.rules;
+						if (rules.length == 1) {
+							sa.error('只是保留一条规则')
+							return;
+						}
+						let i = rules.map(obj => obj.index).indexOf(index);
+						rules.splice(i, 1);
+					},
+					getGoodsList: function() {
+						sa.ajax('/level-one-server/TbGoods/getList', {
+							pageSize: 100
+						}, function(res) {
+							this.goodsList = res.data; // 数据
+						}.bind(this));
+					},
 					getCompanyList: function() {
 						sa.ajax('/level-two-server/TbCompany/getList', {
 							pageNo: 1,
@@ -88,6 +157,7 @@
 							name: '', // 名称 
 							feeType: '2', // 类型(1=按交易额收取,2=按次收取) 
 							percent: '', // 百分比fee_type=1时生效 
+							goodsType: 'all',
 							feeMoney: '', // 收费金额 fee_type=2时生效 
 							status: '1', // 状态(0=禁用,1=启用) 
 						}
@@ -107,12 +177,12 @@
 							return;
 						}
 						if (m.feeType == 1) {
-							m.feeMoney=0;
+							m.feeMoney = 0;
 						}
 						if (m.feeType == 2) {
-							m.percent=0;
+							m.percent = 0;
 						}
-						m.companyName=this.companyList.filter(obj=>obj.id==m.companyId).pop().name;
+						m.companyName = this.companyList.filter(obj => obj.id == m.companyId).pop().name;
 						// 开始增加或修改
 						this.m.createTime = undefined; // 不提交属性:创建时间
 						this.m.updateTime = undefined; // 不提交属性:更新时间
@@ -138,6 +208,7 @@
 				},
 				mounted: function() {
 					this.getCompanyList();
+					this.getGoodsList();
 					// 初始化数据 
 					if (this.id <= 0) {
 						this.m = this.createModel();

+ 1 - 1
sa-view/tb-fee-item/tb-fee-item-list.html

@@ -99,7 +99,7 @@
 					},
 					// 新增
 					add: function(data) {
-						sa.showIframe('新增数据', 'tb-fee-item-add.html?id=-1', '600px', '500px');
+						sa.showIframe('新增数据', 'tb-fee-item-add.html?id=-1', '90%', '90%');
 					},
 					// 删除
 					del: function(data) {

+ 62 - 143
sa-view/tb-people/tb-people-add.html

@@ -3,7 +3,8 @@
 	<head>
 		<title>边民-添加/修改</title>
 		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-		<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
+		<meta name="viewport"
+			content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
 		<!-- 所有的 css js 资源 -->
 		<link rel="stylesheet" href="https://unpkg.com/element-ui@2.13.0/lib/theme-chalk/index.css">
 		<link rel="stylesheet" href="../../static/sa.css">
@@ -14,10 +15,15 @@
 		<script src="../../static/kj/layer/layer.js"></script>
 		<script src="../../static/sa.js"></script>
 		<script src="../../static/kj/upload-util.js"></script>
-
 		<style type="text/css">
-			.c-panel .el-form .c-label{width: 7em !important;}
-			.c-panel .el-form .el-input, .c-panel .el-form .el-textarea__inner{width: 250px;}
+			.c-panel .el-form .c-label {
+				width: 7em !important;
+			}
+
+			.c-panel .el-form .el-input,
+			.c-panel .el-form .el-textarea__inner {
+				width: 250px;
+			}
 		</style>
 	</head>
 	<body>
@@ -25,95 +31,27 @@
 			<!-- ------- 内容部分 ------- -->
 			<div class="s-body">
 				<div class="c-panel">
-                    <div class="c-title" v-if="id == 0">数据添加</div>
+					<div class="c-title" v-if="id == 0">数据添加</div>
 					<div class="c-title" v-else>数据修改</div>
 					<el-form v-if="m">
-						<el-row :gutter="50">
+						<el-row>
 							<el-col :span="12">
 								<sa-item type="text" name="姓名" v-model="m.name" br></sa-item>
-							</el-col>
-							<el-col :span="12">
-								<sa-item type="text" name="边民号" v-model="m.code" br></sa-item>
-							</el-col>
-						</el-row>
-						<el-row :gutter="50">
-							<el-col :span="12">
-								<sa-item type="enum" name="性别" v-model="m.sex" :jv="{1: '男', 2: '女'}" jtype="3" br></sa-item>
-							</el-col>
-							<el-col :span="12">
-								<sa-item type="num" name="年龄" v-model="m.age" br></sa-item>
-							</el-col>
-						</el-row>
-						<el-row :gutter="50">
-							<el-col :span="12">
+								<sa-item type="text" name="所属互助组" br>
+									<el-select @change="groupChange" v-model="m.groupName" placeholder="请选择" filterable
+										size="mini">
+										<el-option v-for="(item,index) in groupList" :key="index" :label="item.orgName"
+											:value="item"> </el-option>
+									</el-select>
+								</sa-item>
 								<sa-item type="text" name="身份证" v-model="m.idCard" br></sa-item>
-							</el-col>
-							<el-col :span="12">
-								<sa-item type="img-list" name="身份证复印件" v-model="m.idCardImg" br></sa-item>
-							</el-col>
-						</el-row>
-						<el-row :gutter="50">
-							<el-col :span="12">
 								<sa-item type="text" name="手机号码" v-model="m.phone" br></sa-item>
 							</el-col>
 							<el-col :span="12">
-								<sa-item type="text" name="银行编号" v-model="m.bankNo" br></sa-item>
-							</el-col>
-						</el-row>
-						<el-row :gutter="50">
-							<el-col :span="12">
-								<sa-item type="text" name="银行卡号" v-model="m.bankCode" br></sa-item>
-							</el-col>
-							<el-col :span="12">
 								<sa-item type="text" name="银行名称" v-model="m.bankName" br></sa-item>
-							</el-col>
-						</el-row>
-						<el-row :gutter="50">
-							<el-col :span="12">
-								<sa-item type="text" name="所属互助组"  br>
-									<el-select @change="groupChange" v-model="m.groupName" placeholder="请选择" filterable size="mini">
-										<el-option v-for="(item,index) in groupList" :key="index" :label="item.orgName" :value="item"> </el-option>
-									</el-select>
-								</sa-item>
-							</el-col>
-							<el-col :span="12">
-								<sa-item type="text" name="所属互市区"  br>
-									<el-select @change="tradeAreaChange" v-model="m.tradeAreaName" placeholder="请选择" filterable size="mini">
-										<el-option v-for="(item,index) in tradeAreaList" :key="index" :label="item.name" :value="item"> </el-option>
-									</el-select>
-								</sa-item>
-							</el-col>
-						</el-row>
-						<el-row :gutter="50">
-							<el-col :span="12">
-								<sa-item type="text" name="经度" v-model="m.lng" br></sa-item>
-							</el-col>
-							<el-col :span="12">
-								<sa-item type="text" name="纬度" v-model="m.lat" br></sa-item>
-							</el-col>
-						</el-row>
-						<el-row :gutter="50">
-							<el-col :span="12">
-								<sa-item type="text" name="最后一次下单定位" v-model="m.lastLocation" br></sa-item>
-							</el-col>
-							<el-col :span="12">
-								<sa-item type="text" name="当天剩余额度" v-model="m.leftPrice" br></sa-item>
-							</el-col>
-						</el-row>
-						<el-row :gutter="50">
-							<el-col :span="12">
-								<sa-item type="text" name="联系地址" v-model="m.address" br></sa-item>
-							</el-col>
-							<el-col :span="12">
-								<sa-item type="text" name="详细地址" v-model="m.detailAddress" br></sa-item>
-							</el-col>
-						</el-row>
-						<el-row :gutter="50">
-							<el-col :span="12">
-								<sa-item type="enum" name="是否锁定" v-model="m.isLock" :jv="{1: '启用', 2: '锁定'}" jtype="3" br></sa-item>
-							</el-col>
-							<el-col :span="12">
-								<sa-item type="enum" name="是否可用" v-model="m.deleteStatus" :jv="{0: '否', 1: '是'}" jtype="3" br></sa-item>
+								<sa-item type="text" name="银行卡号" v-model="m.bankCode" br></sa-item>
+								<sa-item type="text" name="联系地址" v-model="m.address" br :need="false"></sa-item>
+								<sa-item type="text" name="详细地址" v-model="m.detailAddress" br :need="false"></sa-item>
 							</el-col>
 						</el-row>
 					</el-form>
@@ -125,16 +63,15 @@
 				<el-button @click="sa.closeCurrIframe()">取消</el-button>
 			</div>
 		</div>
-        <script>
-
+		<script>
 			var app = new Vue({
 				components: {
 					"sa-item": httpVueLoader('../../sa-frame/com/sa-item.vue')
 				},
 				el: '.vue-box',
 				data: {
-					id: sa.p('id', 0),		// 获取超链接中的id参数(0=添加,非0=修改)
-					m: null,		// 实体对象
+					id: sa.p('id', 0), // 获取超链接中的id参数(0=添加,非0=修改)
+					m: null, // 实体对象
 					groupList: null,
 					tradeAreaList: null,
 				},
@@ -142,30 +79,30 @@
 					// 创建一个 默认Model
 					createModel: function() {
 						return {
-							name: '',		// 姓名
-							code: '',		// 边民号
-							sex: '',		// 性别(1=男,2=女)
-							age: '',		// 年龄
-							idCard: '',		// 身份证
-							idCardImg: '',		// 身份证复印件
-							phone: '',		// 手机号码
-							bankNo: '',		// 银行编号
-							bankCode: '',		// 银行卡号
-							bankName: '',		// 银行名称
-							groupId: '',		// 所属互助组(1=测试组)
-							groupName: '',		// 互助组名称
-							status: '',		// 是否可用(0=否,1=是)
-							role: '',		// 角色(1=普通边民,2=兼组长)
-							lng: '',		// 经度
-							lat: '',		// 纬度
-							lastLocation: '',		// 最后一次下单定位
-							address: '',		// 联系地址
-							addressIds: '',		// 地址ID
-							detailAddress: '',		// 详细地址
-							isLock: '',		// 是否锁定
-							leftPrice: '',		// 当天剩余额度
-							tradeAreaId: '',	// 互市区Id
-							tradeAreaName: '',	// 互市区名称
+							name: '', // 姓名
+							code: '', // 边民号
+							sex: '', // 性别(1=男,2=女)
+							age: '', // 年龄
+							idCard: '', // 身份证
+							idCardImg: '', // 身份证复印件
+							phone: '', // 手机号码
+							bankNo: '', // 银行编号
+							bankCode: '', // 银行卡号
+							bankName: '', // 银行名称
+							groupId: '', // 所属互助组(1=测试组)
+							groupName: '', // 互助组名称
+							status: '', // 是否可用(0=否,1=是)
+							role: '', // 角色(1=普通边民,2=兼组长)
+							lng: '', // 经度
+							lat: '', // 纬度
+							lastLocation: '', // 最后一次下单定位
+							address: '', // 联系地址
+							addressIds: '', // 地址ID
+							detailAddress: '', // 详细地址
+							isLock: '', // 是否锁定
+							leftPrice: '', // 当天剩余额度
+							tradeAreaId: '', // 互市区Id
+							tradeAreaName: '', // 互市区名称
 							// judgeStatus: '',		//
 							// judgeContent: '',		//
 							// registerTime: '',		//
@@ -175,50 +112,33 @@
 						}
 					},
 					// 提交数据
-					ok: function(){
+					ok: function() {
 						// 表单校验
 						let m = this.m;
-						// sa.checkNull(m.id, '请输入 [主键]');
-						sa.checkNull(m.tradeAreaName, '请选择 [互市区]');
 						sa.checkNull(m.name, '请输入 [姓名]');
-						sa.checkNull(m.code, '请输入 [边民号]');
-						sa.checkNull(m.sex, '请输入 [性别]');
-						sa.checkNull(m.age, '请输入 [年龄]');
 						sa.checkNull(m.idCard, '请输入 [身份证]');
-						sa.checkNull(m.idCardImg, '请输入 [身份证复印件]');
 						sa.checkNull(m.phone, '请输入 [手机号码]');
-						sa.checkNull(m.bankNo, '请输入 [银行编号]');
 						sa.checkNull(m.bankCode, '请输入 [银行卡号]');
 						sa.checkNull(m.bankName, '请输入 [银行名称]');
-						//sa.checkNull(m.groupId, '请输入 [所属互助组]');
-						sa.checkNull(m.groupName, '请输入 [互助组名称]');
-						sa.checkNull(m.deleteStatus, '请输入 [是否可用]');
-						sa.checkNull(m.lng, '请输入 [经度]');
-						sa.checkNull(m.lat, '请输入 [纬度]');
-						sa.checkNull(m.lastLocation, '请输入 [最后一次下单定位]');
 						sa.checkNull(m.address, '请输入 [联系地址]');
-						sa.checkNull(m.detailAddress, '请输入 [详细地址]');
-						sa.checkNull(m.isLock, '请输入 [是否锁定]');
-						sa.checkNull(m.leftPrice, '请输入 [当天剩余额度]');
-
 						// 开始增加或修改
-						if(this.id <= 0) {	// 添加
-							sa.ajax('/level-one-server/TbPeople/add', m, function(res){
+						if (this.id <= 0) { // 添加
+							sa.ajax('/level-one-server/TbPeople/add', m, function(res) {
 								sa.alert('增加成功', this.clean);
 							}.bind(this));
-						} else {	// 修改
-							sa.ajax('/level-one-server/TbPeople/update', m, function(res){
+						} else { // 修改
+							sa.ajax('/level-one-server/TbPeople/update', m, function(res) {
 								sa.alert('修改成功', this.clean);
 							}.bind(this));
 						}
 					},
 					// 添加/修改 完成后的动作
 					clean: function() {
-						if(this.id == 0) {
+						if (this.id == 0) {
 							this.m = this.createModel();
 						} else {
-							parent.app.f5();		// 刷新父页面列表
-							sa.closeCurrIframe();	// 关闭本页
+							parent.app.f5(); // 刷新父页面列表
+							sa.closeCurrIframe(); // 关闭本页
 						}
 					},
 					getGroupList: function() {
@@ -243,24 +163,23 @@
 						this.m.tradeAreaName = item.name
 					},
 				},
-				mounted: function(){
+				mounted: function() {
 					// 初始化数据
-					if(this.id <= 0) {
+					if (this.id <= 0) {
 						this.m = this.createModel();
 					} else {
 						sa.ajax('/level-one-server/TbPeople/getById?id=' + this.id, function(res) {
 							this.m = res.data;
-							if(res.data == null) {
+							if (res.data == null) {
 								sa.alert('未能查找到 id=' + this.id + " 详细数据");
 							}
 						}.bind(this))
 					};
-					
+
 					this.getGroupList();
 					this.getTradeArea();
 				}
 			})
-
 		</script>
 	</body>
-</html>
+</html>