Browse Source

Merge remote-tracking branch 'origin/dev' into dev

Mechrevo 1 year ago
parent
commit
11da1fe37e
42 changed files with 81 additions and 4536 deletions
  1. 63 6
      README.md
  2. 1 1
      app.pid
  3. BIN
      nacos.rar
  4. 7 0
      sp-core/sp-base/pom.xml
  5. 3 21
      sp-core/sp-base/src/main/java/com/pj/current/satoken/StpUserUtil.java
  6. 2 2
      sp-service/level-one-server/src/main/java/com/pj/tb_goods/TbGoodsController.java
  7. 1 1
      sp-service/level-one-server/src/main/java/com/pj/tb_trade_area/TbTradeArea.java
  8. 0 35
      sp-service/sp-admin/sa-frame/menu-list.js
  9. 0 189
      sp-service/sp-admin/sa-view/tb-enterprise/tb-enterprise-add.html
  10. 0 89
      sp-service/sp-admin/sa-view/tb-enterprise/tb-enterprise-info.html
  11. 0 230
      sp-service/sp-admin/sa-view/tb-enterprise/tb-enterprise-list.html
  12. 0 164
      sp-service/sp-admin/sa-view/tb-goods-transit/tb-goods-transit-add.html
  13. 0 80
      sp-service/sp-admin/sa-view/tb-goods-transit/tb-goods-transit-info.html
  14. 0 239
      sp-service/sp-admin/sa-view/tb-goods-transit/tb-goods-transit-list.html
  15. 0 133
      sp-service/sp-admin/sa-view/tb-goods-type/tb-goods-type-add.html
  16. 0 70
      sp-service/sp-admin/sa-view/tb-goods-type/tb-goods-type-info.html
  17. 0 175
      sp-service/sp-admin/sa-view/tb-goods-type/tb-goods-type-list.html
  18. 0 110
      sp-service/sp-admin/sa-view/tb-goods-units/tb-goods-units-add.html
  19. 0 62
      sp-service/sp-admin/sa-view/tb-goods-units/tb-goods-units-info.html
  20. 0 134
      sp-service/sp-admin/sa-view/tb-goods-units/tb-goods-units-list.html
  21. 0 139
      sp-service/sp-admin/sa-view/tb-goods/tb-goods-add.html
  22. 0 72
      sp-service/sp-admin/sa-view/tb-goods/tb-goods-info.html
  23. 0 179
      sp-service/sp-admin/sa-view/tb-goods/tb-goods-list.html
  24. 0 152
      sp-service/sp-admin/sa-view/tb-group/tb-group-add.html
  25. 0 76
      sp-service/sp-admin/sa-view/tb-group/tb-group-info.html
  26. 0 193
      sp-service/sp-admin/sa-view/tb-group/tb-group-list.html
  27. 0 205
      sp-service/sp-admin/sa-view/tb-people/tb-people-add.html
  28. 0 95
      sp-service/sp-admin/sa-view/tb-people/tb-people-info.html
  29. 0 248
      sp-service/sp-admin/sa-view/tb-people/tb-people-list.html
  30. 0 170
      sp-service/sp-admin/sa-view/tb-purchaser/tb-purchaser-add.html
  31. 0 84
      sp-service/sp-admin/sa-view/tb-purchaser/tb-purchaser-info.html
  32. 0 209
      sp-service/sp-admin/sa-view/tb-purchaser/tb-purchaser-list.html
  33. 0 158
      sp-service/sp-admin/sa-view/tb-shop/tb-shop-add.html
  34. 0 77
      sp-service/sp-admin/sa-view/tb-shop/tb-shop-info.html
  35. 0 194
      sp-service/sp-admin/sa-view/tb-shop/tb-shop-list.html
  36. 0 138
      sp-service/sp-admin/sa-view/tb-trade-area/tb-trade-area-add.html
  37. 0 70
      sp-service/sp-admin/sa-view/tb-trade-area/tb-trade-area-info.html
  38. 0 155
      sp-service/sp-admin/sa-view/tb-trade-area/tb-trade-area-list.html
  39. 3 0
      sp-service/sp-admin/src/main/java/com/pj/project4sp/admin4login/SpAccAdminController.java
  40. 0 98
      sp-service/transport-server/src/main/java/com/pj/project/tb_driver/TbDriverUtil.java
  41. 0 82
      sp-service/transport-server/src/main/java/com/pj/project/tb_vehicle/TbVehicleUtil.java
  42. 1 1
      sp-service/transport-server/src/main/resources/bootstrap.yml

+ 63 - 6
README.md

@@ -1,17 +1,74 @@
 
 
 ## 启动流程
-- 登录nacos后台,导入配置文件doc目录下的DEFAULT-GROUP.zip,修改common-dev.yml里面的redis配置信息为本地信息
-- 启动网关SpGatewayApplication.java
-- 启动SpAdminApplication.java后台管理
-- 启动其他服务....
+解压nacos.rar,导入数据库conf/nacos-mysql.sql
 
+将conf/application.properties中的数据库配置改成本地数据库的配置
+
+启动nacos,执行bin/startup.cmd脚本文件
+
+登录nacos后台,默认用户密码是nacos/nacos,导入配置文件doc目录下的DEFAULT-GROUP.zip,修改common-dev.yml里面的redis配置信息为本地信息
+
+修改项目nacos配置文件
+
+
+
+```
+#本地nacosip地址
+spring.cloud.nacos.discovery.server-addr=127.0.0.1:8001
+### 用户名
+spring.cloud.nacos.discovery.username=nacos
+### naco密码
+spring.cloud.nacos.discovery.password=nacos
+```
+
+启动网关SpGatewayApplication.java
+
+启动SpAdminApplication.java后台管理
+
+启动其他服务....
+
+### yapi接口管理
+
+- #### 下载EasyYapi插件,然后配置server地址
+
+- #### yapi服务后台地址(server)
+
+```
+http://47.100.111.151:5000
+```
+
+- #### yapi(接口管理)对应项目token
+
+- 后台管理&权限
+
+```
+528795019a0befb0a568347eb5093f3aba61756970042028a6a3b9062f39ae8e
+```
+
+- 一级市场
+
+```
+f9844bd9bd5da8523be587252b387499af0ca06b6c6d6041992016e6aad6bed3
+```
+
+- 二级市场
+
+```
+4e5b0ba1cd7b94054390112ce9dadec38a1be4518ca2ef38b4c00c0a99cc4a4d
+```
+
+- 货运系统
+
+```
+336018d8e196e5ab764245b7d8a4eeba16466ede494491db05deb1a81bb92609
+```
+
+在线资料
 
-## 在线资料
 - 官网首页:[http://sa-plus.dev33.cn/](http://sa-plus.dev33.cn/)
 - 在线演示:[http://demo.dev33.cn/sp-admin/index.html](http://demo.dev33.cn/sp-admin/index.html)
 - 在线文档: [http://sa-plus.dev33.cn/doc/index.html#/sp-cloud/README](http://sa-plus.dev33.cn/doc/index.html#/sp-cloud/README)
-- 需求提交:[我们深知一个优秀的项目需要海纳百川,点我在线提交需求](http://sa-app.dev33.cn/wall.html?name=sa-plus)
 - Gitee地址: [https://gitee.com/click33/sp-cloud](https://gitee.com/click33/sp-cloud)
 
 

+ 1 - 1
app.pid

@@ -1 +1 @@
-17916
+12244

BIN
nacos.rar


+ 7 - 0
sp-core/sp-base/pom.xml

@@ -193,6 +193,13 @@
         	<artifactId>spring-boot-configuration-processor</artifactId>
         	<!-- <optional>true</optional> -->
         </dependency>
+        <!-- https://mvnrepository.com/artifact/com.github.nobugboy/ydoc-spring-boot-starter -->
+        <dependency>
+            <groupId>com.github.nobugboy</groupId>
+            <artifactId>ydoc-spring-boot-starter</artifactId>
+            <version>1.1.0</version>
+        </dependency>
+
         
         
     </dependencies>

+ 3 - 21
sp-core/sp-base/src/main/java/com/pj/current/satoken/StpUserUtil.java

@@ -3,6 +3,7 @@ package com.pj.current.satoken;
 import java.util.Collections;
 import java.util.List;
 
+import cn.dev33.satoken.strategy.SaStrategy;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.json.JSONUtil;
 import com.pj.utils.cache.RedisUtil;
@@ -552,35 +553,16 @@ public class StpUserUtil {
     }
 
     /**
-     * 获取:指定账号的权限码集合
-     *
-     * @param loginId 指定账号id
-     * @return /
-     */
-    public static List<String> getPermissionList(Object loginId) {
-        return stpLogic.getPermissionList(loginId);
-    }
-
-    /**
      * 判断:当前账号是否含有指定权限, 返回true或false
      *
      * @param permission 权限码
      * @return 是否含有指定权限
      */
     public static boolean hasPermission(String permission) {
-        return stpLogic.hasPermission(permission);
+       return SaStrategy.me.hasElement.apply(getPermissionList(), permission);
     }
 
-    /**
-     * 判断:指定账号id是否含有指定权限, 返回true或false
-     *
-     * @param loginId    账号id
-     * @param permission 权限码
-     * @return 是否含有指定权限
-     */
-    public static boolean hasPermission(Object loginId, String permission) {
-        return stpLogic.hasPermission(loginId, permission);
-    }
+
 
     /**
      * 判断:当前账号是否含有指定权限, [指定多个,必须全部具有]

+ 2 - 2
sp-service/level-one-server/src/main/java/com/pj/tb_goods/TbGoodsController.java

@@ -16,7 +16,7 @@ import org.springframework.web.multipart.MultipartFile;
 
 
 /**
- * Controller: tb_goods -- 商品
+ *商品管理
  * @author qzy 
  */
 @RestController
@@ -27,7 +27,7 @@ public class TbGoodsController {
 	@Autowired
 	TbGoodsService tbGoodsService;
 
-	/** 增 */  
+	/** 增添加商品 */
 	@RequestMapping("add")
 	@SaCheckPermission(TbGoods.PERMISSION_CODE_ADD)
 	public AjaxJson add(TbGoods t){

+ 1 - 1
sp-service/level-one-server/src/main/java/com/pj/tb_trade_area/TbTradeArea.java

@@ -11,7 +11,7 @@ import lombok.Data;
 import lombok.experimental.Accessors;
 
 /**
- * Model: tb_trade_area -- 贸易区域
+ * Model: tb_trade_area -- 互市区
  * @author qzy 
  */
 @Data

+ 0 - 35
sp-service/sp-admin/sa-frame/menu-list.js

@@ -1,35 +0,0 @@
-// 一个菜单可以包括的所有属性 
-// {
-// 	id: '12345',		// 菜单id, 必须唯一
-// 	name: '用户中心',		// 菜单名称, 同时也是tab选项卡上显示的名称
-// 	icon: 'el-icon-user',	// 菜单图标, 参考地址:  https://element.eleme.cn/#/zh-CN/component/icon
-//	info: '管理所有用户',	// 菜单介绍, 在菜单预览和分配权限时会有显示 
-// 	url: 'sa-html/user/user-list.html',	// 菜单指向地址
-// 	parentId: 1,			// 所属父菜单id, 如果指定了一个值, sa-admin在初始化时会将此菜单转移到指定菜单上 
-// 	isShow: true,			// 是否显示, 默认true
-// 	isBlank: false,		// 是否属于外部链接, 如果为true, 则点击菜单时从新窗口打开 
-// 	childList: [			// 指定这个菜单所有的子菜单, 子菜单可以继续指定子菜单, 至多支持三级菜单
-// 		// .... 
-// 	],
-//	click: function(){}		// 点击菜单执行一个函数 
-// }
-
-// 定义菜单列表 
-var menuList =	[
-	{
-		id: 'tb-goods',
-		name: '商品',
-		icon: 'el-icon-folder-opened',
-	    parent:false,
-		info: '商品表数据的维护',
-		childList: [
-			{id: 'tb-goods-list', name: '商品-列表', url: 'sa-view/tb-goods/tb-goods-list.html',
-			childList:[
-			{id:'tb-goods-add','商品添加',isShow:false},
-			{id:'tb-goods-edit','商品更新',isShow:false},
-			{id:'tb-goods-del','商品删除',isShow:false},
-			]
-			},
-		]
-	},
-]

+ 0 - 189
sp-service/sp-admin/sa-view/tb-enterprise/tb-enterprise-add.html

@@ -1,189 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<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;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box" :class="{sbot: id}" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-                    <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.id" br></sa-item>
-						<sa-item type="text" name="名称" v-model="m.name" br></sa-item>
-						<sa-item type="text" name="国别" v-model="m.nationality" br></sa-item>
-						<sa-item type="enum" name="商户分类" v-model="m.type" :jv="{自营商铺: '自营商铺', 劳务商铺: '劳务商铺'}" jtype="3" br></sa-item>
-						<sa-item type="text" name="法人" v-model="m.legalPerson" br></sa-item>
-						<sa-item type="text" name="身份证号" v-model="m.idCard" br></sa-item>
-						<sa-item type="text" name="手机号码" v-model="m.contact" br></sa-item>
-						<sa-item type="img-list" name="营业执照" v-model="m.businessLicense" br></sa-item>
-						<sa-item type="text" name="所在铺位ID" v-model="m.shopId" br></sa-item>
-						<sa-item type="enum" name="所在铺位名称" v-model="m.shopName" :jv="{1: '100-2'}" jtype="4" br></sa-item>
-						<sa-item type="enum" name="银行编号" v-model="m.bankNo" :jv="{CMB: '招商银行'}" jtype="4" br></sa-item>
-						<sa-item type="text" name="" v-model="m.bankName" br></sa-item>
-						<sa-item type="text" name="银行账号" v-model="m.bankAccount" br></sa-item>
-						<sa-item type="text" name="税号" v-model="m.dutyParagraph" br></sa-item>
-						<sa-item type="text" name="" v-model="m.addressIds" br></sa-item>
-						<sa-item type="text" name="" v-model="m.address" br></sa-item>
-						<sa-item type="text" name="" v-model="m.agreement" br></sa-item>
-						<sa-item type="text" name="" v-model="m.judgeStatus" br></sa-item>
-						<sa-item type="text" name="" v-model="m.judgeContent" br></sa-item>
-						<sa-item type="text" name="" v-model="m.judgeTime" br></sa-item>
-						<sa-item type="text" name="" v-model="m.registerTime" br></sa-item>
-						<sa-item type="text" name="" v-model="m.personId" br></sa-item>
-						<sa-item type="text" name="创建时间" v-model="m.createTime" br></sa-item>
-						<sa-item type="text" name="创建人编号" v-model="m.createBy" br></sa-item>
-						<sa-item type="text" name="创建人名称" v-model="m.createName" br></sa-item>
-						<sa-item type="text" name="更新时间" v-model="m.updateTime" br></sa-item>
-						<sa-item type="text" name="更新人编号" v-model="m.updateBy" br></sa-item>
-						<sa-item type="text" name="更新人名称" v-model="m.updateName" br></sa-item>
-						<sa-item type="enum" name="删除状态" v-model="m.deleteStatus" :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>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="primary" @click="ok()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-        <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,		// 实体对象 
-				},
-				methods: {
-					// 创建一个 默认Model 
-					createModel: function() {
-						return {
-							id: '',		//  
-							name: '',		// 名称 
-							nationality: '',		// 国别 
-							type: '',		// 商户分类(自营商铺=自营商铺,劳务商铺=劳务商铺) 
-							legalPerson: '',		// 法人 
-							idCard: '',		// 身份证号 
-							contact: '',		// 手机号码 
-							businessLicense: '',		// 营业执照 
-							shopId: '',		// 所在铺位ID 
-							shopName: '',		// 所在铺位名称(1=100-2) 
-							bankNo: '',		// 银行编号(CMB= 招商银行) 
-							bankName: '',		//  
-							bankAccount: '',		// 银行账号 
-							dutyParagraph: '',		// 税号 
-							addressIds: '',		//  
-							address: '',		//  
-							agreement: '',		//  
-							judgeStatus: '',		//  
-							judgeContent: '',		//  
-							judgeTime: '',		//  
-							registerTime: '',		//  
-							personId: '',		//  
-							createTime: '',		// 创建时间 
-							createBy: '',		// 创建人编号 
-							createName: '',		// 创建人名称 
-							updateTime: '',		// 更新时间 
-							updateBy: '',		// 更新人编号 
-							updateName: '',		// 更新人名称 
-							deleteStatus: '',		// 删除状态(0=禁用,1=启用) 
-						}
-					},
-					// 提交数据 
-					ok: function(){
-						// 表单校验 
-						let m = this.m;
-						sa.checkNull(m.id, '请输入 []');
-						sa.checkNull(m.name, '请输入 [名称]');
-						sa.checkNull(m.nationality, '请输入 [国别]');
-						sa.checkNull(m.type, '请输入 [商户分类]');
-						sa.checkNull(m.legalPerson, '请输入 [法人]');
-						sa.checkNull(m.idCard, '请输入 [身份证号]');
-						sa.checkNull(m.contact, '请输入 [手机号码]');
-						sa.checkNull(m.businessLicense, '请输入 [营业执照]');
-						sa.checkNull(m.shopId, '请输入 [所在铺位ID]');
-						sa.checkNull(m.shopName, '请输入 [所在铺位名称]');
-						sa.checkNull(m.bankNo, '请输入 [银行编号]');
-						sa.checkNull(m.bankName, '请输入 []');
-						sa.checkNull(m.bankAccount, '请输入 [银行账号]');
-						sa.checkNull(m.dutyParagraph, '请输入 [税号]');
-						sa.checkNull(m.addressIds, '请输入 []');
-						sa.checkNull(m.address, '请输入 []');
-						sa.checkNull(m.agreement, '请输入 []');
-						sa.checkNull(m.judgeStatus, '请输入 []');
-						sa.checkNull(m.judgeContent, '请输入 []');
-						sa.checkNull(m.judgeTime, '请输入 []');
-						sa.checkNull(m.registerTime, '请输入 []');
-						sa.checkNull(m.personId, '请输入 []');
-						sa.checkNull(m.createTime, '请输入 [创建时间]');
-						sa.checkNull(m.createBy, '请输入 [创建人编号]');
-						sa.checkNull(m.createName, '请输入 [创建人名称]');
-						sa.checkNull(m.updateTime, '请输入 [更新时间]');
-						sa.checkNull(m.updateBy, '请输入 [更新人编号]');
-						sa.checkNull(m.updateName, '请输入 [更新人名称]');
-						sa.checkNull(m.deleteStatus, '请输入 [删除状态]');
-				
-						// 开始增加或修改
-						if(this.id <= 0) {	// 添加
-							sa.ajax('/TbEnterprise/add', m, function(res){
-								sa.alert('增加成功', this.clean); 
-							}.bind(this));
-						} else {	// 修改
-							sa.ajax('/TbEnterprise/update', m, function(res){
-								sa.alert('修改成功', this.clean);
-							}.bind(this));
-						}
-					},
-					// 添加/修改 完成后的动作
-					clean: function() {
-						if(this.id == 0) {
-							this.m = this.createModel();
-						} else {
-							parent.app.f5();		// 刷新父页面列表
-							sa.closeCurrIframe();	// 关闭本页 
-						}
-					}
-				},
-				mounted: function(){
-					// 初始化数据 
-					if(this.id <= 0) {	
-						this.m = this.createModel();
-					} else {	
-						sa.ajax('/TbEnterprise/getById?id=' + this.id, function(res) {
-							this.m = res.data;
-							if(res.data == null) {
-								sa.alert('未能查找到 id=' + this.id + " 详细数据");
-							}
-						}.bind(this))
-					}
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 89
sp-service/sp-admin/sa-view/tb-enterprise/tb-enterprise-info.html

@@ -1,89 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-		<style type="text/css">
-			.c-panel .c-label{width: 8em;}
-			.c-item .image-box-2{height: 90px;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box sbot" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-					<el-form v-if="m">
-						<sa-info name="" br>{{m.id}}</sa-info>
-						<sa-info name="名称" br>{{m.name}}</sa-info>
-						<sa-info name="国别" br>{{m.nationality}}</sa-info>
-						<sa-info type="enum" name="商户分类" :value="m.type" :jv="{自营商铺: '自营商铺', 劳务商铺: '劳务商铺'}" br></sa-info>
-						<sa-info name="法人" br>{{m.legalPerson}}</sa-info>
-						<sa-info name="身份证号" br>{{m.idCard}}</sa-info>
-						<sa-info name="手机号码" br>{{m.contact}}</sa-info>
-						<sa-info type="img-list" name="营业执照" :value="m.businessLicense" br></sa-info>
-						<sa-info name="所在铺位ID" br>{{m.shopId}}</sa-info>
-						<sa-info type="enum" name="所在铺位名称" :value="m.shopName" :jv="{1: '100-2'}" br></sa-info>
-						<sa-info type="enum" name="银行编号" :value="m.bankNo" :jv="{CMB: '招商银行'}" br></sa-info>
-						<sa-info name="" br>{{m.bankName}}</sa-info>
-						<sa-info name="银行账号" br>{{m.bankAccount}}</sa-info>
-						<sa-info name="税号" br>{{m.dutyParagraph}}</sa-info>
-						<sa-info name="" br>{{m.addressIds}}</sa-info>
-						<sa-info name="" br>{{m.address}}</sa-info>
-						<sa-info name="" br>{{m.agreement}}</sa-info>
-						<sa-info name="" br>{{m.judgeStatus}}</sa-info>
-						<sa-info name="" br>{{m.judgeContent}}</sa-info>
-						<sa-info name="" br>{{m.judgeTime}}</sa-info>
-						<sa-info name="" br>{{m.registerTime}}</sa-info>
-						<sa-info name="" br>{{m.personId}}</sa-info>
-						<sa-info name="创建时间" br>{{m.createTime}}</sa-info>
-						<sa-info name="创建人编号" br>{{m.createBy}}</sa-info>
-						<sa-info name="创建人名称" br>{{m.createName}}</sa-info>
-						<sa-info name="更新时间" br>{{m.updateTime}}</sa-info>
-						<sa-info name="更新人编号" br>{{m.updateBy}}</sa-info>
-						<sa-info name="更新人名称" br>{{m.updateName}}</sa-info>
-						<sa-info type="enum" name="删除状态" :value="m.deleteStatus" :jv="{0: '禁用', 1: '启用'}" br></sa-info>
-					</el-form>
-				</div>
-			</div>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="success" @click="sa.closeCurrIframe()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-info": httpVueLoader('../../sa-frame/com/sa-info.vue')
-				},
-				el: '.vue-box',
-				data: {
-					id: sa.p('id', 0),	// 获取数据ID 
-					m: null
-				},
-				methods: {
-				},
-				mounted: function() {
-					sa.ajax('/TbEnterprise/getById?id=' + this.id, function(res) {
-						this.m = res.data;
-						if(res.data == null) {
-							sa.alert('未能查找到 id=' + this.id + " 详细数据");
-						}
-					}.bind(this))
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 230
sp-service/sp-admin/sa-view/tb-enterprise/tb-enterprise-list.html

@@ -1,230 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<head>
-		<title>商家-列表</title>
-		<meta charset="utf-8">
-		<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="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-	</head>
-	<body>
-		<div class="vue-box" style="display: none;" :style="'display: block;'">
-			<div class="c-panel">
-				<!-- ------------- 检索参数 ------------- -->
-				<div class="c-title">检索参数</div>
-				<el-form ref="form" :model='p' @submit.native.prevent>
-					<sa-item type="text" name="" v-model="p.id"></sa-item>
-					<sa-item type="text" name="名称" v-model="p.name"></sa-item>
-					<sa-item type="text" name="国别" v-model="p.nationality"></sa-item>
-					<sa-item type="enum" name="商户分类" v-model="p.type" 
-						:jv="{自营商铺: '自营商铺', 劳务商铺: '劳务商铺'}" jtype="2" def="不限"></sa-item>
-					<sa-item type="text" name="法人" v-model="p.legalPerson"></sa-item>
-					<sa-item type="text" name="身份证号" v-model="p.idCard"></sa-item>
-					<sa-item type="text" name="手机号码" v-model="p.contact"></sa-item>
-					<sa-item type="text" name="所在铺位ID" v-model="p.shopId"></sa-item>
-					<sa-item type="enum" name="所在铺位名称" v-model="p.shopName" 
-						:jv="{1: '100-2'}" jtype="2" def="不限"></sa-item>
-					<sa-item type="enum" name="银行编号" v-model="p.bankNo" 
-						:jv="{CMB: '招商银行'}" jtype="2" def="不限"></sa-item>
-					<sa-item type="text" name="" v-model="p.bankName"></sa-item>
-					<sa-item type="text" name="银行账号" v-model="p.bankAccount"></sa-item>
-					<sa-item type="text" name="税号" v-model="p.dutyParagraph"></sa-item>
-					<sa-item type="text" name="" v-model="p.addressIds"></sa-item>
-					<sa-item type="text" name="" v-model="p.address"></sa-item>
-					<sa-item type="text" name="" v-model="p.agreement"></sa-item>
-					<sa-item type="text" name="" v-model="p.judgeStatus"></sa-item>
-					<sa-item type="text" name="" v-model="p.judgeContent"></sa-item>
-					<sa-item type="text" name="" v-model="p.judgeTime"></sa-item>
-					<sa-item type="text" name="" v-model="p.registerTime"></sa-item>
-					<sa-item type="text" name="" v-model="p.personId"></sa-item>
-					<sa-item type="text" name="创建时间" v-model="p.createTime"></sa-item>
-					<sa-item type="text" name="创建人编号" v-model="p.createBy"></sa-item>
-					<sa-item type="text" name="创建人名称" v-model="p.createName"></sa-item>
-					<sa-item type="text" name="更新时间" v-model="p.updateTime"></sa-item>
-					<sa-item type="text" name="更新人编号" v-model="p.updateBy"></sa-item>
-					<sa-item type="text" name="更新人名称" v-model="p.updateName"></sa-item>
-					<sa-item type="enum" name="删除状态" v-model="p.deleteStatus" 
-						:jv="{0: '禁用', 1: '启用'}" jtype="2" def="不限"></sa-item>
-					<el-button type="primary" icon="el-icon-search" @click="p.pageNo = 1; f5()">查询</el-button>
-				</el-form>
-				<div class="fast-btn">
-					<el-button v-if="sa.isAuth('tb-enterprise-add')" size="mini" type="primary" @click="add()">新增</el-button>
-					<el-button size="mini" type="success" @click="getBySelect()">查看</el-button>
-					<el-button size="mini" type="info" @click="sa.f5()">重置</el-button>
-				</div>
-				<!-- ------------- 数据列表 ------------- -->
-				<el-table class="data-table" ref="data-table" :data="dataList" >
-					<sa-td type="selection"></sa-td>
-					<sa-td name="" prop="id" ></sa-td>
-					<sa-td name="名称" prop="name" ></sa-td>
-					<sa-td name="国别" prop="nationality" ></sa-td>
-					<sa-td name="商户分类" prop="type" type="enum" :jv="{自营商铺: '自营商铺', 劳务商铺: '劳务商铺'}"></sa-td>
-					<sa-td name="法人" prop="legalPerson" ></sa-td>
-					<sa-td name="身份证号" prop="idCard" ></sa-td>
-					<sa-td name="手机号码" prop="contact" ></sa-td>
-					<sa-td name="营业执照" prop="businessLicense" type="img-list"></sa-td>
-					<sa-td name="所在铺位ID" prop="shopId" ></sa-td>
-					<sa-td name="所在铺位名称" prop="shopName" type="enum" :jv="{1: '100-2'}"></sa-td>
-					<sa-td name="银行编号" prop="bankNo" type="enum" :jv="{CMB: '招商银行'}"></sa-td>
-					<sa-td name="" prop="bankName" ></sa-td>
-					<sa-td name="银行账号" prop="bankAccount" ></sa-td>
-					<sa-td name="税号" prop="dutyParagraph" ></sa-td>
-					<sa-td name="" prop="addressIds" ></sa-td>
-					<sa-td name="" prop="address" ></sa-td>
-					<sa-td name="" prop="agreement" ></sa-td>
-					<sa-td name="" prop="judgeStatus" ></sa-td>
-					<sa-td name="" prop="judgeContent" ></sa-td>
-					<sa-td name="" prop="judgeTime" ></sa-td>
-					<sa-td name="" prop="registerTime" ></sa-td>
-					<sa-td name="" prop="personId" ></sa-td>
-					<sa-td name="创建时间" prop="createTime" ></sa-td>
-					<sa-td name="创建人编号" prop="createBy" ></sa-td>
-					<sa-td name="创建人名称" prop="createName" ></sa-td>
-					<sa-td name="更新时间" prop="updateTime" ></sa-td>
-					<sa-td name="更新人编号" prop="updateBy" ></sa-td>
-					<sa-td name="更新人名称" prop="updateName" ></sa-td>
-					<sa-td name="删除状态" prop="deleteStatus" type="switch" :jv="{0: '禁用', 1: '启用'}" @change="s => updateDeleteStatus(s.row)"></sa-td>
-					<el-table-column label="操作" fixed="right"  width="240px">
-						<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('tb-enterprise-edit')" class="c-btn" type="primary" icon="el-icon-edit" @click="update(s.row)">修改</el-button>
-							<el-button v-if="sa.isAuth('tb-enterprise-del')" class="c-btn" type="danger" icon="el-icon-delete" @click="del(s.row)">删除</el-button>
-						</template>
-					</el-table-column>
-				</el-table>
-				<!-- ------------- 分页 ------------- -->
-				<sa-item type="page" :curr.sync="p.pageNo" :size.sync="p.pageSize" :total="dataCount" @change="f5()"></sa-item>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-item": httpVueLoader('../../sa-frame/com/sa-item.vue'),  
-					"sa-td": httpVueLoader('../../sa-frame/com/sa-td.vue'),		
-				},
-				el: '.vue-box',
-				data: {
-					p: { // 查询参数  
-						id: '',		//  
-						name: '',		// 名称 
-						nationality: '',		// 国别 
-						type: '',		// 商户分类(自营商铺=自营商铺,劳务商铺=劳务商铺) 
-						legalPerson: '',		// 法人 
-						idCard: '',		// 身份证号 
-						contact: '',		// 手机号码 
-						shopId: '',		// 所在铺位ID 
-						shopName: '',		// 所在铺位名称(1=100-2) 
-						bankNo: '',		// 银行编号(CMB= 招商银行) 
-						bankName: '',		//  
-						bankAccount: '',		// 银行账号 
-						dutyParagraph: '',		// 税号 
-						addressIds: '',		//  
-						address: '',		//  
-						agreement: '',		//  
-						judgeStatus: '',		//  
-						judgeContent: '',		//  
-						judgeTime: '',		//  
-						registerTime: '',		//  
-						personId: '',		//  
-						createTime: '',		// 创建时间 
-						createBy: '',		// 创建人编号 
-						createName: '',		// 创建人名称 
-						updateTime: '',		// 更新时间 
-						updateBy: '',		// 更新人编号 
-						updateName: '',		// 更新人名称 
-						deleteStatus: '',		// 删除状态(0=禁用,1=启用) 
-						pageNo: 1,		// 当前页 
-						pageSize: 10,	// 页大小 
-						sortType: 0		// 排序方式 
-					},
-					dataCount: 0,
-					dataList: [], // 数据集合 
-				},
-				methods: {
-					// 刷新
-					f5: function() {
-						sa.ajax('/TbEnterprise/getList', sa.removeNull(this.p), function(res) {
-							this.dataList = res.data; // 数据
-							this.dataCount = res.dataCount; // 数据总数 
-							sa.f5TableHeight();		// 刷新表格高度 
-						}.bind(this));
-					},
-					// 查看
-					get: function(data) {
-						sa.showIframe('数据详情', 'tb-enterprise-info.html?id=' + data.id, '1050px', '90%');
-					},
-					// 查看 - 根据选中的
-					getBySelect: function(data) {
-						var selection = this.$refs['data-table'].selection;
-						if(selection.length == 0) {
-							return sa.msg('请选择一条数据')
-						}
-						this.get(selection[0]);
-					},
-					// 修改
-					update: function(data) {
-						sa.showIframe('修改数据', 'tb-enterprise-add.html?id=' + data.id, '1000px', '90%');
-					},
-					// 新增
-					add: function(data) {
-						sa.showIframe('新增数据', 'tb-enterprise-add.html?id=-1', '1000px', '90%');
-					},
-					// 删除
-					del: function(data) {
-						sa.confirm('是否删除,此操作不可撤销', function() {
-							sa.ajax('/TbEnterprise/delete?id=' + data.id, function(res) {
-								sa.arrayDelete(this.dataList, data);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 批量删除
-					deleteByIds: function() {
-						// 获取选中元素的id列表 
-						let selection = this.$refs['data-table'].selection;
-						let ids = sa.getArrayField(selection, 'id');
-						if(selection.length == 0) {
-							return sa.msg('请至少选择一条数据')
-						}
-						// 提交删除 
-						sa.confirm('是否批量删除选中数据?此操作不可撤销', function() {
-							sa.ajax('/TbEnterprise/deleteByIds', {ids: ids.join(',')}, function(res) {
-								sa.arrayDelete(this.dataList, selection);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 改 - 删除状态(0=禁用,1=启用)
-					updateDeleteStatus: function(data) {
-						// 声明变量记录是否成功 
-						var isOk = false;	
-						var oldValue = data.deleteStatus;
-						var ajax = sa.ajax('/TbEnterprise/updateDeleteStatus', {id: data.id, value: data.deleteStatus}, function(res) {
-							isOk = true;
-							sa.msg('修改成功');
-						}.bind(this));
-						// 如果未能修改成功, 则回滚 
-						$.when(ajax).done(function() {
-							if(isOk == false) {
-								data.status = oldValue; 
-							}
-						})
-					},
-				},
-				created: function() {
-					this.f5();
-					sa.onInputEnter();
-				}
-			})
-		</script>
-	</body>
-</html>

+ 0 - 164
sp-service/sp-admin/sa-view/tb-goods-transit/tb-goods-transit-add.html

@@ -1,164 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<head>
-		<title>审核商户在APP端发布的商品-添加/修改</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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.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;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box" :class="{sbot: id}" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-                    <div class="c-title" v-if="id == 0">数据添加</div>
-					<div class="c-title" v-else>数据修改</div>
-					<el-form v-if="m">
-						<sa-item type="num" name="在销商品表主键" v-model="m.id" br></sa-item>
-						<sa-item type="text" name="商户编号" v-model="m.merchantId" br></sa-item>
-						<sa-item type="text" name="商户名称" v-model="m.merchantName" br></sa-item>
-						<sa-item type="text" name="商品类型" v-model="m.goodsType" br></sa-item>
-						<sa-item type="text" name="商品名称" v-model="m.goodsName" br></sa-item>
-						<sa-item type="text" name="商品单位" v-model="m.goodsUnits" br></sa-item>
-						<sa-item type="text" name="商品价格" v-model="m.price" br></sa-item>
-						<sa-item type="text" name="产地" v-model="m.placeOrigin" br></sa-item>
-						<sa-item type="text" name="商品描述" v-model="m.discription" br></sa-item>
-						<sa-item type="text" name="库存数量" v-model="m.stock" br></sa-item>
-						<sa-item type="enum" name="商品状态" v-model="m.goodsStatus" :jv="{0: '下架', 1: '在售'}" jtype="3" br></sa-item>
-						<sa-item type="enum" name="审核状态" v-model="m.auditStatus" :jv="{0: '待审核', 1: '通过', 2: '不通过'}" jtype="3" br></sa-item>
-						<sa-item type="text" name="审核时间" v-model="m.auditTime" br></sa-item>
-						<sa-item type="text" name="审核意见" v-model="m.remark" br></sa-item>
-						<sa-item type="text" name="创建时间" v-model="m.createTime" br></sa-item>
-						<sa-item type="text" name="创建人编号" v-model="m.createBy" br></sa-item>
-						<sa-item type="text" name="创建人名称" v-model="m.createName" br></sa-item>
-						<sa-item type="text" name="更新时间" v-model="m.updateTime" br></sa-item>
-						<sa-item type="text" name="更新人编号" v-model="m.updateBy" br></sa-item>
-						<sa-item type="text" name="更新人名称" v-model="m.updateName" br></sa-item>
-						<sa-item type="enum" name="删除状态" v-model="m.delStatus" :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>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="primary" @click="ok()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-        <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,		// 实体对象 
-				},
-				methods: {
-					// 创建一个 默认Model 
-					createModel: function() {
-						return {
-							id: '',		// 在销商品表主键 
-							merchantId: '',		// 商户编号 
-							merchantName: '',		// 商户名称 
-							goodsType: '',		// 商品类型 
-							goodsName: '',		// 商品名称 
-							goodsUnits: '',		// 商品单位(吨、kg、个、柜) 
-							price: '',		// 商品价格 
-							placeOrigin: '',		// 产地(国家) 
-							discription: '',		// 商品描述 
-							stock: '',		// 库存数量 
-							goodsStatus: '',		// 商品状态(0=下架,1=在售) 
-							auditStatus: '',		// 审核状态(0=待审核,1=通过,2=不通过) 
-							auditTime: '',		// 审核时间 
-							remark: '',		// 审核意见 
-							createTime: '',		// 创建时间 
-							createBy: '',		// 创建人编号 
-							createName: '',		// 创建人名称 
-							updateTime: '',		// 更新时间 
-							updateBy: '',		// 更新人编号 
-							updateName: '',		// 更新人名称 
-							delStatus: '',		// 删除状态(0=禁用,1=启用) 
-						}
-					},
-					// 提交数据 
-					ok: function(){
-						// 表单校验 
-						let m = this.m;
-						sa.checkNull(m.id, '请输入 [在销商品表主键]');
-						sa.checkNull(m.merchantId, '请输入 [商户编号]');
-						sa.checkNull(m.merchantName, '请输入 [商户名称]');
-						sa.checkNull(m.goodsType, '请输入 [商品类型]');
-						sa.checkNull(m.goodsName, '请输入 [商品名称]');
-						sa.checkNull(m.goodsUnits, '请输入 [商品单位]');
-						sa.checkNull(m.price, '请输入 [商品价格]');
-						sa.checkNull(m.placeOrigin, '请输入 [产地]');
-						sa.checkNull(m.discription, '请输入 [商品描述]');
-						sa.checkNull(m.stock, '请输入 [库存数量]');
-						sa.checkNull(m.goodsStatus, '请输入 [商品状态]');
-						sa.checkNull(m.auditStatus, '请输入 [审核状态]');
-						sa.checkNull(m.auditTime, '请输入 [审核时间]');
-						sa.checkNull(m.remark, '请输入 [审核意见]');
-						sa.checkNull(m.createTime, '请输入 [创建时间]');
-						sa.checkNull(m.createBy, '请输入 [创建人编号]');
-						sa.checkNull(m.createName, '请输入 [创建人名称]');
-						sa.checkNull(m.updateTime, '请输入 [更新时间]');
-						sa.checkNull(m.updateBy, '请输入 [更新人编号]');
-						sa.checkNull(m.updateName, '请输入 [更新人名称]');
-						sa.checkNull(m.delStatus, '请输入 [删除状态]');
-				
-						// 开始增加或修改
-						if(this.id <= 0) {	// 添加
-							sa.ajax('/TbGoodsTransit/add', m, function(res){
-								sa.alert('增加成功', this.clean); 
-							}.bind(this));
-						} else {	// 修改
-							sa.ajax('/TbGoodsTransit/update', m, function(res){
-								sa.alert('修改成功', this.clean);
-							}.bind(this));
-						}
-					},
-					// 添加/修改 完成后的动作
-					clean: function() {
-						if(this.id == 0) {
-							this.m = this.createModel();
-						} else {
-							parent.app.f5();		// 刷新父页面列表
-							sa.closeCurrIframe();	// 关闭本页 
-						}
-					}
-				},
-				mounted: function(){
-					// 初始化数据 
-					if(this.id <= 0) {	
-						this.m = this.createModel();
-					} else {	
-						sa.ajax('/TbGoodsTransit/getById?id=' + this.id, function(res) {
-							this.m = res.data;
-							if(res.data == null) {
-								sa.alert('未能查找到 id=' + this.id + " 详细数据");
-							}
-						}.bind(this))
-					}
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 80
sp-service/sp-admin/sa-view/tb-goods-transit/tb-goods-transit-info.html

@@ -1,80 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<head>
-		<title>审核商户在APP端发布的商品-详情</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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-		<style type="text/css">
-			.c-panel .c-label{width: 8em;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box sbot" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-					<el-form v-if="m">
-						<sa-info type="num" name="在销商品表主键" :value="m.id" br></sa-info>
-						<sa-info name="商户编号" br>{{m.merchantId}}</sa-info>
-						<sa-info name="商户名称" br>{{m.merchantName}}</sa-info>
-						<sa-info name="商品类型" br>{{m.goodsType}}</sa-info>
-						<sa-info name="商品名称" br>{{m.goodsName}}</sa-info>
-						<sa-info name="商品单位" br>{{m.goodsUnits}}</sa-info>
-						<sa-info name="商品价格" br>{{m.price}}</sa-info>
-						<sa-info name="产地" br>{{m.placeOrigin}}</sa-info>
-						<sa-info name="商品描述" br>{{m.discription}}</sa-info>
-						<sa-info name="库存数量" br>{{m.stock}}</sa-info>
-						<sa-info type="enum" name="商品状态" :value="m.goodsStatus" :jv="{0: '下架', 1: '在售'}" br></sa-info>
-						<sa-info type="enum" name="审核状态" :value="m.auditStatus" :jv="{0: '待审核', 1: '通过', 2: '不通过'}" br></sa-info>
-						<sa-info name="审核时间" br>{{m.auditTime}}</sa-info>
-						<sa-info name="审核意见" br>{{m.remark}}</sa-info>
-						<sa-info name="创建时间" br>{{m.createTime}}</sa-info>
-						<sa-info name="创建人编号" br>{{m.createBy}}</sa-info>
-						<sa-info name="创建人名称" br>{{m.createName}}</sa-info>
-						<sa-info name="更新时间" br>{{m.updateTime}}</sa-info>
-						<sa-info name="更新人编号" br>{{m.updateBy}}</sa-info>
-						<sa-info name="更新人名称" br>{{m.updateName}}</sa-info>
-						<sa-info type="enum" name="删除状态" :value="m.delStatus" :jv="{0: '禁用', 1: '启用'}" br></sa-info>
-					</el-form>
-				</div>
-			</div>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="success" @click="sa.closeCurrIframe()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-info": httpVueLoader('../../sa-frame/com/sa-info.vue')
-				},
-				el: '.vue-box',
-				data: {
-					id: sa.p('id', 0),	// 获取数据ID 
-					m: null
-				},
-				methods: {
-				},
-				mounted: function() {
-					sa.ajax('/TbGoodsTransit/getById?id=' + this.id, function(res) {
-						this.m = res.data;
-						if(res.data == null) {
-							sa.alert('未能查找到 id=' + this.id + " 详细数据");
-						}
-					}.bind(this))
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 239
sp-service/sp-admin/sa-view/tb-goods-transit/tb-goods-transit-list.html

@@ -1,239 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<head>
-		<title>审核商户在APP端发布的商品-列表</title>
-		<meta charset="utf-8">
-		<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="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-	</head>
-	<body>
-		<div class="vue-box" style="display: none;" :style="'display: block;'">
-			<div class="c-panel">
-				<!-- ------------- 检索参数 ------------- -->
-				<div class="c-title">检索参数</div>
-				<el-form ref="form" :model='p' @submit.native.prevent>
-					<sa-item type="num" name="在销商品表主键" v-model="p.id"></sa-item>
-					<sa-item type="text" name="商户编号" v-model="p.merchantId"></sa-item>
-					<sa-item type="text" name="商户名称" v-model="p.merchantName"></sa-item>
-					<sa-item type="text" name="商品类型" v-model="p.goodsType"></sa-item>
-					<sa-item type="text" name="商品名称" v-model="p.goodsName"></sa-item>
-					<sa-item type="text" name="商品单位" v-model="p.goodsUnits"></sa-item>
-					<sa-item type="text" name="商品价格" v-model="p.price"></sa-item>
-					<sa-item type="text" name="产地" v-model="p.placeOrigin"></sa-item>
-					<sa-item type="text" name="商品描述" v-model="p.discription"></sa-item>
-					<sa-item type="text" name="库存数量" v-model="p.stock"></sa-item>
-					<sa-item type="enum" name="商品状态" v-model="p.goodsStatus" 
-						:jv="{0: '下架', 1: '在售'}" jtype="2" def="不限"></sa-item>
-					<sa-item type="enum" name="审核状态" v-model="p.auditStatus" 
-						:jv="{0: '待审核', 1: '通过', 2: '不通过'}" jtype="2" def="不限"></sa-item>
-					<sa-item type="text" name="审核时间" v-model="p.auditTime"></sa-item>
-					<sa-item type="text" name="审核意见" v-model="p.remark"></sa-item>
-					<sa-item type="text" name="创建时间" v-model="p.createTime"></sa-item>
-					<sa-item type="text" name="创建人编号" v-model="p.createBy"></sa-item>
-					<sa-item type="text" name="创建人名称" v-model="p.createName"></sa-item>
-					<sa-item type="text" name="更新时间" v-model="p.updateTime"></sa-item>
-					<sa-item type="text" name="更新人编号" v-model="p.updateBy"></sa-item>
-					<sa-item type="text" name="更新人名称" v-model="p.updateName"></sa-item>
-					<sa-item type="enum" name="删除状态" v-model="p.delStatus" 
-						:jv="{0: '禁用', 1: '启用'}" jtype="2" def="不限"></sa-item>
-					<el-button type="primary" icon="el-icon-search" @click="p.pageNo = 1; f5()">查询</el-button>
-				</el-form>
-				<div class="fast-btn">
-					<el-button v-if="sa.isAuth('tb-goods-transit-add')" size="mini" type="primary" @click="add()">新增</el-button>
-					<el-button size="mini" type="success" @click="getBySelect()">查看</el-button>
-					<el-button size="mini" type="info" @click="sa.f5()">重置</el-button>
-				</div>
-				<!-- ------------- 数据列表 ------------- -->
-				<el-table class="data-table" ref="data-table" :data="dataList" >
-					<sa-td type="selection"></sa-td>
-					<sa-td name="在销商品表主键" prop="id" type="num"></sa-td>
-					<sa-td name="商户编号" prop="merchantId" ></sa-td>
-					<sa-td name="商户名称" prop="merchantName" ></sa-td>
-					<sa-td name="商品类型" prop="goodsType" ></sa-td>
-					<sa-td name="商品名称" prop="goodsName" ></sa-td>
-					<sa-td name="商品单位" prop="goodsUnits" ></sa-td>
-					<sa-td name="商品价格" prop="price" ></sa-td>
-					<sa-td name="产地" prop="placeOrigin" ></sa-td>
-					<sa-td name="商品描述" prop="discription" ></sa-td>
-					<sa-td name="库存数量" prop="stock" ></sa-td>
-					<sa-td name="商品状态" prop="goodsStatus" type="switch" :jv="{0: '下架', 1: '在售'}" @change="s => updateGoodsStatus(s.row)"></sa-td>
-					<sa-td name="审核状态" prop="auditStatus" type="switch" :jv="{0: '待审核', 1: '通过', 2: '不通过'}" @change="s => updateAuditStatus(s.row)"></sa-td>
-					<sa-td name="审核时间" prop="auditTime" ></sa-td>
-					<sa-td name="审核意见" prop="remark" ></sa-td>
-					<sa-td name="创建时间" prop="createTime" ></sa-td>
-					<sa-td name="创建人编号" prop="createBy" ></sa-td>
-					<sa-td name="创建人名称" prop="createName" ></sa-td>
-					<sa-td name="更新时间" prop="updateTime" ></sa-td>
-					<sa-td name="更新人编号" prop="updateBy" ></sa-td>
-					<sa-td name="更新人名称" prop="updateName" ></sa-td>
-					<sa-td name="删除状态" prop="delStatus" type="switch" :jv="{0: '禁用', 1: '启用'}" @change="s => updateDelStatus(s.row)"></sa-td>
-					<el-table-column label="操作" fixed="right"  width="240px">
-						<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('tb-goods-transit-edit')" class="c-btn" type="primary" icon="el-icon-edit" @click="update(s.row)">修改</el-button>
-							<el-button v-if="sa.isAuth('tb-goods-transit-del')" class="c-btn" type="danger" icon="el-icon-delete" @click="del(s.row)">删除</el-button>
-						</template>
-					</el-table-column>
-				</el-table>
-				<!-- ------------- 分页 ------------- -->
-				<sa-item type="page" :curr.sync="p.pageNo" :size.sync="p.pageSize" :total="dataCount" @change="f5()"></sa-item>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-item": httpVueLoader('../../sa-frame/com/sa-item.vue'),  
-					"sa-td": httpVueLoader('../../sa-frame/com/sa-td.vue'),		
-				},
-				el: '.vue-box',
-				data: {
-					p: { // 查询参数  
-						id: '',		// 在销商品表主键 
-						merchantId: '',		// 商户编号 
-						merchantName: '',		// 商户名称 
-						goodsType: '',		// 商品类型 
-						goodsName: '',		// 商品名称 
-						goodsUnits: '',		// 商品单位(吨、kg、个、柜) 
-						price: '',		// 商品价格 
-						placeOrigin: '',		// 产地(国家) 
-						discription: '',		// 商品描述 
-						stock: '',		// 库存数量 
-						goodsStatus: '',		// 商品状态(0=下架,1=在售) 
-						auditStatus: '',		// 审核状态(0=待审核,1=通过,2=不通过) 
-						auditTime: '',		// 审核时间 
-						remark: '',		// 审核意见 
-						createTime: '',		// 创建时间 
-						createBy: '',		// 创建人编号 
-						createName: '',		// 创建人名称 
-						updateTime: '',		// 更新时间 
-						updateBy: '',		// 更新人编号 
-						updateName: '',		// 更新人名称 
-						delStatus: '',		// 删除状态(0=禁用,1=启用) 
-						pageNo: 1,		// 当前页 
-						pageSize: 10,	// 页大小 
-						sortType: 0		// 排序方式 
-					},
-					dataCount: 0,
-					dataList: [], // 数据集合 
-				},
-				methods: {
-					// 刷新
-					f5: function() {
-						sa.ajax('/TbGoodsTransit/getList', sa.removeNull(this.p), function(res) {
-							this.dataList = res.data; // 数据
-							this.dataCount = res.dataCount; // 数据总数 
-							sa.f5TableHeight();		// 刷新表格高度 
-						}.bind(this));
-					},
-					// 查看
-					get: function(data) {
-						sa.showIframe('数据详情', 'tb-goods-transit-info.html?id=' + data.id, '1050px', '90%');
-					},
-					// 查看 - 根据选中的
-					getBySelect: function(data) {
-						var selection = this.$refs['data-table'].selection;
-						if(selection.length == 0) {
-							return sa.msg('请选择一条数据')
-						}
-						this.get(selection[0]);
-					},
-					// 修改
-					update: function(data) {
-						sa.showIframe('修改数据', 'tb-goods-transit-add.html?id=' + data.id, '1000px', '90%');
-					},
-					// 新增
-					add: function(data) {
-						sa.showIframe('新增数据', 'tb-goods-transit-add.html?id=-1', '1000px', '90%');
-					},
-					// 删除
-					del: function(data) {
-						sa.confirm('是否删除,此操作不可撤销', function() {
-							sa.ajax('/TbGoodsTransit/delete?id=' + data.id, function(res) {
-								sa.arrayDelete(this.dataList, data);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 批量删除
-					deleteByIds: function() {
-						// 获取选中元素的id列表 
-						let selection = this.$refs['data-table'].selection;
-						let ids = sa.getArrayField(selection, 'id');
-						if(selection.length == 0) {
-							return sa.msg('请至少选择一条数据')
-						}
-						// 提交删除 
-						sa.confirm('是否批量删除选中数据?此操作不可撤销', function() {
-							sa.ajax('/TbGoodsTransit/deleteByIds', {ids: ids.join(',')}, function(res) {
-								sa.arrayDelete(this.dataList, selection);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 改 - 商品状态(0=下架,1=在售)
-					updateGoodsStatus: function(data) {
-						// 声明变量记录是否成功 
-						var isOk = false;	
-						var oldValue = data.goodsStatus;
-						var ajax = sa.ajax('/TbGoodsTransit/updateGoodsStatus', {id: data.id, value: data.goodsStatus}, function(res) {
-							isOk = true;
-							sa.msg('修改成功');
-						}.bind(this));
-						// 如果未能修改成功, 则回滚 
-						$.when(ajax).done(function() {
-							if(isOk == false) {
-								data.status = oldValue; 
-							}
-						})
-					},
-					// 改 - 审核状态(0=待审核,1=通过,2=不通过)
-					updateAuditStatus: function(data) {
-						// 声明变量记录是否成功 
-						var isOk = false;	
-						var oldValue = data.auditStatus;
-						var ajax = sa.ajax('/TbGoodsTransit/updateAuditStatus', {id: data.id, value: data.auditStatus}, function(res) {
-							isOk = true;
-							sa.msg('修改成功');
-						}.bind(this));
-						// 如果未能修改成功, 则回滚 
-						$.when(ajax).done(function() {
-							if(isOk == false) {
-								data.status = oldValue; 
-							}
-						})
-					},
-					// 改 - 删除状态(0=禁用,1=启用)
-					updateDelStatus: function(data) {
-						// 声明变量记录是否成功 
-						var isOk = false;	
-						var oldValue = data.delStatus;
-						var ajax = sa.ajax('/TbGoodsTransit/updateDelStatus', {id: data.id, value: data.delStatus}, function(res) {
-							isOk = true;
-							sa.msg('修改成功');
-						}.bind(this));
-						// 如果未能修改成功, 则回滚 
-						$.when(ajax).done(function() {
-							if(isOk == false) {
-								data.status = oldValue; 
-							}
-						})
-					},
-				},
-				created: function() {
-					this.f5();
-					sa.onInputEnter();
-				}
-			})
-		</script>
-	</body>
-</html>

+ 0 - 133
sp-service/sp-admin/sa-view/tb-goods-type/tb-goods-type-add.html

@@ -1,133 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.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;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box" :class="{sbot: id}" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-                    <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>
-						<sa-item type="text" name="排序" v-model="m.sort" br></sa-item>
-						<sa-item type="text" name="编号" v-model="m.no" br></sa-item>
-						<sa-item type="text" name="创建时间" v-model="m.createTime" br></sa-item>
-						<sa-item type="text" name="创建人编号" v-model="m.createBy" br></sa-item>
-						<sa-item type="text" name="创建人名称" v-model="m.createName" br></sa-item>
-						<sa-item type="text" name="更新时间" v-model="m.updateTime" br></sa-item>
-						<sa-item type="text" name="更新人编号" v-model="m.updateBy" br></sa-item>
-						<sa-item type="text" name="更新人名称" v-model="m.updateName" br></sa-item>
-						<sa-item type="enum" name="删除状态" v-model="m.deleteStatus" :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>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="primary" @click="ok()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-        <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,		// 实体对象 
-				},
-				methods: {
-					// 创建一个 默认Model 
-					createModel: function() {
-						return {
-							id: '',		// 主键 
-							name: '',		// 名称 
-							sort: '',		// 排序 
-							no: '',		// 编号 
-							createTime: '',		// 创建时间 
-							createBy: '',		// 创建人编号 
-							createName: '',		// 创建人名称 
-							updateTime: '',		// 更新时间 
-							updateBy: '',		// 更新人编号 
-							updateName: '',		// 更新人名称 
-							deleteStatus: '',		// 删除状态(0=禁用,1=启用) 
-						}
-					},
-					// 提交数据 
-					ok: function(){
-						// 表单校验 
-						let m = this.m;
-						// sa.checkNull(m.id, '请输入 [主键]');
-						sa.checkNull(m.name, '请输入 [名称]');
-						sa.checkNull(m.sort, '请输入 [排序]');
-						sa.checkNull(m.no, '请输入 [编号]');
-						sa.checkNull(m.createTime, '请输入 [创建时间]');
-						sa.checkNull(m.createBy, '请输入 [创建人编号]');
-						sa.checkNull(m.createName, '请输入 [创建人名称]');
-						sa.checkNull(m.updateTime, '请输入 [更新时间]');
-						sa.checkNull(m.updateBy, '请输入 [更新人编号]');
-						sa.checkNull(m.updateName, '请输入 [更新人名称]');
-						sa.checkNull(m.deleteStatus, '请输入 [删除状态]');
-				
-						// 开始增加或修改
-						if(this.id <= 0) {	// 添加
-							sa.ajax('/TbGoodsType/add', m, function(res){
-								sa.alert('增加成功', this.clean); 
-							}.bind(this));
-						} else {	// 修改
-							sa.ajax('/TbGoodsType/update', m, function(res){
-								sa.alert('修改成功', this.clean);
-							}.bind(this));
-						}
-					},
-					// 添加/修改 完成后的动作
-					clean: function() {
-						if(this.id == 0) {
-							this.m = this.createModel();
-						} else {
-							parent.app.f5();		// 刷新父页面列表
-							sa.closeCurrIframe();	// 关闭本页 
-						}
-					}
-				},
-				mounted: function(){
-					// 初始化数据 
-					if(this.id <= 0) {	
-						this.m = this.createModel();
-					} else {	
-						sa.ajax('/TbGoodsType/getById?id=' + this.id, function(res) {
-							this.m = res.data;
-							if(res.data == null) {
-								sa.alert('未能查找到 id=' + this.id + " 详细数据");
-							}
-						}.bind(this))
-					}
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 70
sp-service/sp-admin/sa-view/tb-goods-type/tb-goods-type-info.html

@@ -1,70 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-		<style type="text/css">
-			.c-panel .c-label{width: 8em;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box sbot" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-					<el-form v-if="m">
-						<sa-info type="num" name="主键" :value="m.id" br></sa-info>
-						<sa-info name="名称" br>{{m.name}}</sa-info>
-						<sa-info name="排序" br>{{m.sort}}</sa-info>
-						<sa-info name="编号" br>{{m.no}}</sa-info>
-						<sa-info name="创建时间" br>{{m.createTime}}</sa-info>
-						<sa-info name="创建人编号" br>{{m.createBy}}</sa-info>
-						<sa-info name="创建人名称" br>{{m.createName}}</sa-info>
-						<sa-info name="更新时间" br>{{m.updateTime}}</sa-info>
-						<sa-info name="更新人编号" br>{{m.updateBy}}</sa-info>
-						<sa-info name="更新人名称" br>{{m.updateName}}</sa-info>
-						<sa-info type="enum" name="删除状态" :value="m.deleteStatus" :jv="{0: '禁用', 1: '启用'}" br></sa-info>
-					</el-form>
-				</div>
-			</div>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="success" @click="sa.closeCurrIframe()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-info": httpVueLoader('../../sa-frame/com/sa-info.vue')
-				},
-				el: '.vue-box',
-				data: {
-					id: sa.p('id', 0),	// 获取数据ID 
-					m: null
-				},
-				methods: {
-				},
-				mounted: function() {
-					sa.ajax('/TbGoodsType/getById?id=' + this.id, function(res) {
-						this.m = res.data;
-						if(res.data == null) {
-							sa.alert('未能查找到 id=' + this.id + " 详细数据");
-						}
-					}.bind(this))
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 175
sp-service/sp-admin/sa-view/tb-goods-type/tb-goods-type-list.html

@@ -1,175 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<head>
-		<title>商品分类-列表</title>
-		<meta charset="utf-8">
-		<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="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-	</head>
-	<body>
-		<div class="vue-box" style="display: none;" :style="'display: block;'">
-			<div class="c-panel">
-				<!-- ------------- 检索参数 ------------- -->
-				<div class="c-title">检索参数</div>
-				<el-form ref="form" :model='p' @submit.native.prevent>
-					<sa-item type="num" name="主键" v-model="p.id"></sa-item>
-					<sa-item type="text" name="名称" v-model="p.name"></sa-item>
-					<sa-item type="text" name="排序" v-model="p.sort"></sa-item>
-					<sa-item type="text" name="编号" v-model="p.no"></sa-item>
-					<sa-item type="text" name="创建时间" v-model="p.createTime"></sa-item>
-					<sa-item type="text" name="创建人编号" v-model="p.createBy"></sa-item>
-					<sa-item type="text" name="创建人名称" v-model="p.createName"></sa-item>
-					<sa-item type="text" name="更新时间" v-model="p.updateTime"></sa-item>
-					<sa-item type="text" name="更新人编号" v-model="p.updateBy"></sa-item>
-					<sa-item type="text" name="更新人名称" v-model="p.updateName"></sa-item>
-					<sa-item type="enum" name="删除状态" v-model="p.deleteStatus" 
-						:jv="{0: '禁用', 1: '启用'}" jtype="2" def="不限"></sa-item>
-					<el-button type="primary" icon="el-icon-search" @click="p.pageNo = 1; f5()">查询</el-button>
-				</el-form>
-				<div class="fast-btn">
-					<el-button v-if="sa.isAuth('tb-goods-type-add')" size="mini" type="primary" @click="add()">新增</el-button>
-					<el-button size="mini" type="success" @click="getBySelect()">查看</el-button>
-					<el-button size="mini" type="info" @click="sa.f5()">重置</el-button>
-				</div>
-				<!-- ------------- 数据列表 ------------- -->
-				<el-table class="data-table" ref="data-table" :data="dataList" >
-					<sa-td type="selection"></sa-td>
-					<sa-td name="主键" prop="id" type="num"></sa-td>
-					<sa-td name="名称" prop="name" ></sa-td>
-					<sa-td name="排序" prop="sort" ></sa-td>
-					<sa-td name="编号" prop="no" ></sa-td>
-					<sa-td name="创建时间" prop="createTime" ></sa-td>
-					<sa-td name="创建人编号" prop="createBy" ></sa-td>
-					<sa-td name="创建人名称" prop="createName" ></sa-td>
-					<sa-td name="更新时间" prop="updateTime" ></sa-td>
-					<sa-td name="更新人编号" prop="updateBy" ></sa-td>
-					<sa-td name="更新人名称" prop="updateName" ></sa-td>
-					<sa-td name="删除状态" prop="deleteStatus" type="switch" :jv="{0: '禁用', 1: '启用'}" @change="s => updateDeleteStatus(s.row)"></sa-td>
-					<el-table-column label="操作" fixed="right"  width="240px">
-						<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('tb-goods-type-edit')" class="c-btn" type="primary" icon="el-icon-edit" @click="update(s.row)">修改</el-button>
-							<el-button v-if="sa.isAuth('tb-goods-type-del')" class="c-btn" type="danger" icon="el-icon-delete" @click="del(s.row)">删除</el-button>
-						</template>
-					</el-table-column>
-				</el-table>
-				<!-- ------------- 分页 ------------- -->
-				<sa-item type="page" :curr.sync="p.pageNo" :size.sync="p.pageSize" :total="dataCount" @change="f5()"></sa-item>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-item": httpVueLoader('../../sa-frame/com/sa-item.vue'),  
-					"sa-td": httpVueLoader('../../sa-frame/com/sa-td.vue'),		
-				},
-				el: '.vue-box',
-				data: {
-					p: { // 查询参数  
-						id: '',		// 主键 
-						name: '',		// 名称 
-						sort: '',		// 排序 
-						no: '',		// 编号 
-						createTime: '',		// 创建时间 
-						createBy: '',		// 创建人编号 
-						createName: '',		// 创建人名称 
-						updateTime: '',		// 更新时间 
-						updateBy: '',		// 更新人编号 
-						updateName: '',		// 更新人名称 
-						deleteStatus: '',		// 删除状态(0=禁用,1=启用) 
-						pageNo: 1,		// 当前页 
-						pageSize: 10,	// 页大小 
-						sortType: 0		// 排序方式 
-					},
-					dataCount: 0,
-					dataList: [], // 数据集合 
-				},
-				methods: {
-					// 刷新
-					f5: function() {
-						sa.ajax('/TbGoodsType/getList', sa.removeNull(this.p), function(res) {
-							this.dataList = res.data; // 数据
-							this.dataCount = res.dataCount; // 数据总数 
-							sa.f5TableHeight();		// 刷新表格高度 
-						}.bind(this));
-					},
-					// 查看
-					get: function(data) {
-						sa.showIframe('数据详情', 'tb-goods-type-info.html?id=' + data.id, '1050px', '90%');
-					},
-					// 查看 - 根据选中的
-					getBySelect: function(data) {
-						var selection = this.$refs['data-table'].selection;
-						if(selection.length == 0) {
-							return sa.msg('请选择一条数据')
-						}
-						this.get(selection[0]);
-					},
-					// 修改
-					update: function(data) {
-						sa.showIframe('修改数据', 'tb-goods-type-add.html?id=' + data.id, '1000px', '90%');
-					},
-					// 新增
-					add: function(data) {
-						sa.showIframe('新增数据', 'tb-goods-type-add.html?id=-1', '1000px', '90%');
-					},
-					// 删除
-					del: function(data) {
-						sa.confirm('是否删除,此操作不可撤销', function() {
-							sa.ajax('/TbGoodsType/delete?id=' + data.id, function(res) {
-								sa.arrayDelete(this.dataList, data);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 批量删除
-					deleteByIds: function() {
-						// 获取选中元素的id列表 
-						let selection = this.$refs['data-table'].selection;
-						let ids = sa.getArrayField(selection, 'id');
-						if(selection.length == 0) {
-							return sa.msg('请至少选择一条数据')
-						}
-						// 提交删除 
-						sa.confirm('是否批量删除选中数据?此操作不可撤销', function() {
-							sa.ajax('/TbGoodsType/deleteByIds', {ids: ids.join(',')}, function(res) {
-								sa.arrayDelete(this.dataList, selection);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 改 - 删除状态(0=禁用,1=启用)
-					updateDeleteStatus: function(data) {
-						// 声明变量记录是否成功 
-						var isOk = false;	
-						var oldValue = data.deleteStatus;
-						var ajax = sa.ajax('/TbGoodsType/updateDeleteStatus', {id: data.id, value: data.deleteStatus}, function(res) {
-							isOk = true;
-							sa.msg('修改成功');
-						}.bind(this));
-						// 如果未能修改成功, 则回滚 
-						$.when(ajax).done(function() {
-							if(isOk == false) {
-								data.status = oldValue; 
-							}
-						})
-					},
-				},
-				created: function() {
-					this.f5();
-					sa.onInputEnter();
-				}
-			})
-		</script>
-	</body>
-</html>

+ 0 - 110
sp-service/sp-admin/sa-view/tb-goods-units/tb-goods-units-add.html

@@ -1,110 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.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;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box" :class="{sbot: id}" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-                    <div class="c-title" v-if="id == 0">数据添加</div>
-					<div class="c-title" v-else>数据修改</div>
-					<el-form v-if="m">
-						<sa-item type="num" name="商品主键" v-model="m.id" br></sa-item>
-						<sa-item type="text" name="商品单位编号" v-model="m.unitsNo" br></sa-item>
-						<sa-item type="text" name="管理商品的单位,比如吨、kg、个、柜;主要字段,名称,编号" v-model="m.units" 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>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="primary" @click="ok()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-        <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,		// 实体对象 
-				},
-				methods: {
-					// 创建一个 默认Model 
-					createModel: function() {
-						return {
-							id: '',		// 商品主键 
-							unitsNo: '',		// 商品单位编号 
-							units: '',		// 管理商品的单位,比如吨、kg、个、柜;主要字段,名称,编号 
-						}
-					},
-					// 提交数据 
-					ok: function(){
-						// 表单校验 
-						let m = this.m;
-						sa.checkNull(m.id, '请输入 [商品主键]');
-						sa.checkNull(m.unitsNo, '请输入 [商品单位编号]');
-						sa.checkNull(m.units, '请输入 [管理商品的单位,比如吨、kg、个、柜;主要字段,名称,编号]');
-				
-						// 开始增加或修改
-						if(this.id <= 0) {	// 添加
-							sa.ajax('/TbGoodsUnits/add', m, function(res){
-								sa.alert('增加成功', this.clean); 
-							}.bind(this));
-						} else {	// 修改
-							sa.ajax('/TbGoodsUnits/update', m, function(res){
-								sa.alert('修改成功', this.clean);
-							}.bind(this));
-						}
-					},
-					// 添加/修改 完成后的动作
-					clean: function() {
-						if(this.id == 0) {
-							this.m = this.createModel();
-						} else {
-							parent.app.f5();		// 刷新父页面列表
-							sa.closeCurrIframe();	// 关闭本页 
-						}
-					}
-				},
-				mounted: function(){
-					// 初始化数据 
-					if(this.id <= 0) {	
-						this.m = this.createModel();
-					} else {	
-						sa.ajax('/TbGoodsUnits/getById?id=' + this.id, function(res) {
-							this.m = res.data;
-							if(res.data == null) {
-								sa.alert('未能查找到 id=' + this.id + " 详细数据");
-							}
-						}.bind(this))
-					}
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 62
sp-service/sp-admin/sa-view/tb-goods-units/tb-goods-units-info.html

@@ -1,62 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-		<style type="text/css">
-			.c-panel .c-label{width: 8em;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box sbot" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-					<el-form v-if="m">
-						<sa-info type="num" name="商品主键" :value="m.id" br></sa-info>
-						<sa-info name="商品单位编号" br>{{m.unitsNo}}</sa-info>
-						<sa-info name="管理商品的单位,比如吨、kg、个、柜;主要字段,名称,编号" br>{{m.units}}</sa-info>
-					</el-form>
-				</div>
-			</div>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="success" @click="sa.closeCurrIframe()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-info": httpVueLoader('../../sa-frame/com/sa-info.vue')
-				},
-				el: '.vue-box',
-				data: {
-					id: sa.p('id', 0),	// 获取数据ID 
-					m: null
-				},
-				methods: {
-				},
-				mounted: function() {
-					sa.ajax('/TbGoodsUnits/getById?id=' + this.id, function(res) {
-						this.m = res.data;
-						if(res.data == null) {
-							sa.alert('未能查找到 id=' + this.id + " 详细数据");
-						}
-					}.bind(this))
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 134
sp-service/sp-admin/sa-view/tb-goods-units/tb-goods-units-list.html

@@ -1,134 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<head>
-		<title>商品单位-列表</title>
-		<meta charset="utf-8">
-		<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="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-	</head>
-	<body>
-		<div class="vue-box" style="display: none;" :style="'display: block;'">
-			<div class="c-panel">
-				<!-- ------------- 检索参数 ------------- -->
-				<div class="c-title">检索参数</div>
-				<el-form ref="form" :model='p' @submit.native.prevent>
-					<sa-item type="num" name="商品主键" v-model="p.id"></sa-item>
-					<sa-item type="text" name="商品单位编号" v-model="p.unitsNo"></sa-item>
-					<sa-item type="text" name="管理商品的单位,比如吨、kg、个、柜;主要字段,名称,编号" v-model="p.units"></sa-item>
-					<el-button type="primary" icon="el-icon-search" @click="p.pageNo = 1; f5()">查询</el-button>
-				</el-form>
-				<div class="fast-btn">
-					<el-button v-if="sa.isAuth('tb-goods-units-add')" size="mini" type="primary" @click="add()">新增</el-button>
-					<el-button size="mini" type="success" @click="getBySelect()">查看</el-button>
-					<el-button size="mini" type="info" @click="sa.f5()">重置</el-button>
-				</div>
-				<!-- ------------- 数据列表 ------------- -->
-				<el-table class="data-table" ref="data-table" :data="dataList" >
-					<sa-td type="selection"></sa-td>
-					<sa-td name="商品主键" prop="id" type="num"></sa-td>
-					<sa-td name="商品单位编号" prop="unitsNo" ></sa-td>
-					<sa-td name="管理商品的单位,比如吨、kg、个、柜;主要字段,名称,编号" prop="units" ></sa-td>
-					<el-table-column label="操作" fixed="right"  width="240px">
-						<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('tb-goods-units-edit')" class="c-btn" type="primary" icon="el-icon-edit" @click="update(s.row)">修改</el-button>
-							<el-button v-if="sa.isAuth('tb-goods-units-del')" class="c-btn" type="danger" icon="el-icon-delete" @click="del(s.row)">删除</el-button>
-						</template>
-					</el-table-column>
-				</el-table>
-				<!-- ------------- 分页 ------------- -->
-				<sa-item type="page" :curr.sync="p.pageNo" :size.sync="p.pageSize" :total="dataCount" @change="f5()"></sa-item>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-item": httpVueLoader('../../sa-frame/com/sa-item.vue'),  
-					"sa-td": httpVueLoader('../../sa-frame/com/sa-td.vue'),		
-				},
-				el: '.vue-box',
-				data: {
-					p: { // 查询参数  
-						id: '',		// 商品主键 
-						unitsNo: '',		// 商品单位编号 
-						units: '',		// 管理商品的单位,比如吨、kg、个、柜;主要字段,名称,编号 
-						pageNo: 1,		// 当前页 
-						pageSize: 10,	// 页大小 
-						sortType: 0		// 排序方式 
-					},
-					dataCount: 0,
-					dataList: [], // 数据集合 
-				},
-				methods: {
-					// 刷新
-					f5: function() {
-						sa.ajax('/TbGoodsUnits/getList', sa.removeNull(this.p), function(res) {
-							this.dataList = res.data; // 数据
-							this.dataCount = res.dataCount; // 数据总数 
-							sa.f5TableHeight();		// 刷新表格高度 
-						}.bind(this));
-					},
-					// 查看
-					get: function(data) {
-						sa.showIframe('数据详情', 'tb-goods-units-info.html?id=' + data.id, '1050px', '90%');
-					},
-					// 查看 - 根据选中的
-					getBySelect: function(data) {
-						var selection = this.$refs['data-table'].selection;
-						if(selection.length == 0) {
-							return sa.msg('请选择一条数据')
-						}
-						this.get(selection[0]);
-					},
-					// 修改
-					update: function(data) {
-						sa.showIframe('修改数据', 'tb-goods-units-add.html?id=' + data.id, '1000px', '90%');
-					},
-					// 新增
-					add: function(data) {
-						sa.showIframe('新增数据', 'tb-goods-units-add.html?id=-1', '1000px', '90%');
-					},
-					// 删除
-					del: function(data) {
-						sa.confirm('是否删除,此操作不可撤销', function() {
-							sa.ajax('/TbGoodsUnits/delete?id=' + data.id, function(res) {
-								sa.arrayDelete(this.dataList, data);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 批量删除
-					deleteByIds: function() {
-						// 获取选中元素的id列表 
-						let selection = this.$refs['data-table'].selection;
-						let ids = sa.getArrayField(selection, 'id');
-						if(selection.length == 0) {
-							return sa.msg('请至少选择一条数据')
-						}
-						// 提交删除 
-						sa.confirm('是否批量删除选中数据?此操作不可撤销', function() {
-							sa.ajax('/TbGoodsUnits/deleteByIds', {ids: ids.join(',')}, function(res) {
-								sa.arrayDelete(this.dataList, selection);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-				},
-				created: function() {
-					this.f5();
-					sa.onInputEnter();
-				}
-			})
-		</script>
-	</body>
-</html>

+ 0 - 139
sp-service/sp-admin/sa-view/tb-goods/tb-goods-add.html

@@ -1,139 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<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;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box" :class="{sbot: id}" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-                    <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>
-						<sa-item type="img" name="主图" v-model="m.avatar" br></sa-item>
-						<sa-item type="text" name="分类ID字符串(可多选)" v-model="m.typeIds" br></sa-item>
-						<sa-item type="text" name="分类名称" v-model="m.typeNames" br></sa-item>
-						<sa-item type="text" name="编号" v-model="m.code" br></sa-item>
-						<sa-item type="text" name="备注" v-model="m.remark" br></sa-item>
-						<sa-item type="text" name="原产地" v-model="m.source" br></sa-item>
-						<sa-item type="enum" name="状态" v-model="m.status" :jv="{0: '禁用', 1: '启用'}" jtype="3" br></sa-item>
-						<sa-item type="text" name="" v-model="m.unit" br></sa-item>
-						<sa-item type="text" name="" v-model="m.singlePrice" br></sa-item>
-						<sa-item type="text" name="" v-model="m.taxNo" 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>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="primary" @click="ok()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-        <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,		// 实体对象 
-				},
-				methods: {
-					// 创建一个 默认Model 
-					createModel: function() {
-						return {
-							id: '',		// 主键 
-							name: '',		// 名称 
-							avatar: '',		// 主图 
-							typeIds: '',		// 分类ID 字符串(可多选) 
-							typeNames: '',		// 分类名称 
-							code: '',		// 编号 
-							remark: '',		// 备注 
-							source: '',		// 原产地 
-							status: '',		// 状态(0=禁用,1=启用) 
-							createTime: '',		// 创建时间 
-							unit: '',		//  
-							singlePrice: '',		//  
-							taxNo: '',		//  
-						}
-					},
-					// 提交数据 
-					ok: function(){
-						// 表单校验 
-						let m = this.m;
-						// sa.checkNull(m.id, '请输入 [主键]');
-						sa.checkNull(m.name, '请输入 [名称]');
-						sa.checkNull(m.avatar, '请输入 [主图]');
-						sa.checkNull(m.typeIds, '请输入 [分类ID字符串(可多选)]');
-						sa.checkNull(m.typeNames, '请输入 [分类名称]');
-						sa.checkNull(m.code, '请输入 [编号]');
-						sa.checkNull(m.remark, '请输入 [备注]');
-						sa.checkNull(m.source, '请输入 [原产地]');
-						sa.checkNull(m.status, '请输入 [状态]');
-						// sa.checkNull(m.createTime, '请输入 [创建时间]');
-						sa.checkNull(m.unit, '请输入 []');
-						sa.checkNull(m.singlePrice, '请输入 []');
-						sa.checkNull(m.taxNo, '请输入 []');
-				
-						// 开始增加或修改
-						if(this.id <= 0) {	// 添加
-							sa.ajax('/TbGoods/add', m, function(res){
-								sa.alert('增加成功', this.clean); 
-							}.bind(this));
-						} else {	// 修改
-							sa.ajax('/TbGoods/update', m, function(res){
-								sa.alert('修改成功', this.clean);
-							}.bind(this));
-						}
-					},
-					// 添加/修改 完成后的动作
-					clean: function() {
-						if(this.id == 0) {
-							this.m = this.createModel();
-						} else {
-							parent.app.f5();		// 刷新父页面列表
-							sa.closeCurrIframe();	// 关闭本页 
-						}
-					}
-				},
-				mounted: function(){
-					// 初始化数据 
-					if(this.id <= 0) {	
-						this.m = this.createModel();
-					} else {	
-						sa.ajax('/TbGoods/getById?id=' + this.id, function(res) {
-							this.m = res.data;
-							if(res.data == null) {
-								sa.alert('未能查找到 id=' + this.id + " 详细数据");
-							}
-						}.bind(this))
-					}
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 72
sp-service/sp-admin/sa-view/tb-goods/tb-goods-info.html

@@ -1,72 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-		<style type="text/css">
-			.c-panel .c-label{width: 8em;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box sbot" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-					<el-form v-if="m">
-						<sa-info type="num" name="主键" :value="m.id" br></sa-info>
-						<sa-info name="名称" br>{{m.name}}</sa-info>
-						<sa-info type="img" name="主图" :value="m.avatar" br></sa-info>
-						<sa-info name="分类ID字符串(可多选)" br>{{m.typeIds}}</sa-info>
-						<sa-info name="分类名称" br>{{m.typeNames}}</sa-info>
-						<sa-info name="编号" br>{{m.code}}</sa-info>
-						<sa-info name="备注" br>{{m.remark}}</sa-info>
-						<sa-info name="原产地" br>{{m.source}}</sa-info>
-						<sa-info type="enum" name="状态" :value="m.status" :jv="{0: '禁用', 1: '启用'}" br></sa-info>
-						<sa-info name="创建时间" br>{{m.createTime}}</sa-info>
-						<sa-info name="" br>{{m.unit}}</sa-info>
-						<sa-info name="" br>{{m.singlePrice}}</sa-info>
-						<sa-info name="" br>{{m.taxNo}}</sa-info>
-					</el-form>
-				</div>
-			</div>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="success" @click="sa.closeCurrIframe()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-info": httpVueLoader('../../sa-frame/com/sa-info.vue')
-				},
-				el: '.vue-box',
-				data: {
-					id: sa.p('id', 0),	// 获取数据ID 
-					m: null
-				},
-				methods: {
-				},
-				mounted: function() {
-					sa.ajax('/TbGoods/getById?id=' + this.id, function(res) {
-						this.m = res.data;
-						if(res.data == null) {
-							sa.alert('未能查找到 id=' + this.id + " 详细数据");
-						}
-					}.bind(this))
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 179
sp-service/sp-admin/sa-view/tb-goods/tb-goods-list.html

@@ -1,179 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<head>
-		<title>商品-列表</title>
-		<meta charset="utf-8">
-		<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="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-	</head>
-	<body>
-		<div class="vue-box" style="display: none;" :style="'display: block;'">
-			<div class="c-panel">
-				<!-- ------------- 检索参数 ------------- -->
-				<div class="c-title">检索参数</div>
-				<el-form ref="form" :model='p' @submit.native.prevent>
-					<sa-item type="num" name="主键" v-model="p.id"></sa-item>
-					<sa-item type="text" name="名称" v-model="p.name"></sa-item>
-					<sa-item type="text" name="分类ID字符串(可多选)" v-model="p.typeIds"></sa-item>
-					<sa-item type="text" name="分类名称" v-model="p.typeNames"></sa-item>
-					<sa-item type="text" name="编号" v-model="p.code"></sa-item>
-					<sa-item type="text" name="备注" v-model="p.remark"></sa-item>
-					<sa-item type="text" name="原产地" v-model="p.source"></sa-item>
-					<sa-item type="enum" name="状态" v-model="p.status" 
-						:jv="{0: '禁用', 1: '启用'}" jtype="2" def="不限"></sa-item>
-					<sa-item type="text" name="创建时间" v-model="p.createTime"></sa-item>
-					<sa-item type="text" name="" v-model="p.unit"></sa-item>
-					<sa-item type="text" name="" v-model="p.singlePrice"></sa-item>
-					<sa-item type="text" name="" v-model="p.taxNo"></sa-item>
-					<el-button type="primary" icon="el-icon-search" @click="p.pageNo = 1; f5()">查询</el-button>
-				</el-form>
-				<div class="fast-btn">
-					<el-button v-if="sa.isAuth('tb-goods-add')" size="mini" type="primary" @click="add()">新增</el-button>
-					<el-button size="mini" type="success" @click="getBySelect()">查看</el-button>
-					<el-button size="mini" type="info" @click="sa.f5()">重置</el-button>
-				</div>
-				<!-- ------------- 数据列表 ------------- -->
-				<el-table class="data-table" ref="data-table" :data="dataList" >
-					<sa-td type="selection"></sa-td>
-					<sa-td name="主键" prop="id" type="num"></sa-td>
-					<sa-td name="名称" prop="name" ></sa-td>
-					<sa-td name="主图" prop="avatar" type="img"></sa-td>
-					<sa-td name="分类ID字符串(可多选)" prop="typeIds" ></sa-td>
-					<sa-td name="分类名称" prop="typeNames" ></sa-td>
-					<sa-td name="编号" prop="code" ></sa-td>
-					<sa-td name="备注" prop="remark" ></sa-td>
-					<sa-td name="原产地" prop="source" ></sa-td>
-					<sa-td name="状态" prop="status" type="switch" :jv="{0: '禁用', 1: '启用'}" @change="s => updateStatus(s.row)"></sa-td>
-					<sa-td name="创建时间" prop="createTime" ></sa-td>
-					<sa-td name="" prop="unit" ></sa-td>
-					<sa-td name="" prop="singlePrice" ></sa-td>
-					<sa-td name="" prop="taxNo" ></sa-td>
-					<el-table-column label="操作" fixed="right"  width="240px">
-						<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('tb-goods-edit')" class="c-btn" type="primary" icon="el-icon-edit" @click="update(s.row)">修改</el-button>
-							<el-button v-if="sa.isAuth('tb-goods-del')" class="c-btn" type="danger" icon="el-icon-delete" @click="del(s.row)">删除</el-button>
-						</template>
-					</el-table-column>
-				</el-table>
-				<!-- ------------- 分页 ------------- -->
-				<sa-item type="page" :curr.sync="p.pageNo" :size.sync="p.pageSize" :total="dataCount" @change="f5()"></sa-item>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-item": httpVueLoader('../../sa-frame/com/sa-item.vue'),  
-					"sa-td": httpVueLoader('../../sa-frame/com/sa-td.vue'),		
-				},
-				el: '.vue-box',
-				data: {
-					p: { // 查询参数  
-						id: '',		// 主键 
-						name: '',		// 名称 
-						typeIds: '',		// 分类ID 字符串(可多选) 
-						typeNames: '',		// 分类名称 
-						code: '',		// 编号 
-						remark: '',		// 备注 
-						source: '',		// 原产地 
-						status: '',		// 状态(0=禁用,1=启用) 
-						createTime: '',		// 创建时间 
-						unit: '',		//  
-						singlePrice: '',		//  
-						taxNo: '',		//  
-						pageNo: 1,		// 当前页 
-						pageSize: 10,	// 页大小 
-						sortType: 0		// 排序方式 
-					},
-					dataCount: 0,
-					dataList: [], // 数据集合 
-				},
-				methods: {
-					// 刷新
-					f5: function() {
-						sa.ajax('/TbGoods/getList', sa.removeNull(this.p), function(res) {
-							this.dataList = res.data; // 数据
-							this.dataCount = res.dataCount; // 数据总数 
-							sa.f5TableHeight();		// 刷新表格高度 
-						}.bind(this));
-					},
-					// 查看
-					get: function(data) {
-						sa.showIframe('数据详情', 'tb-goods-info.html?id=' + data.id, '1050px', '90%');
-					},
-					// 查看 - 根据选中的
-					getBySelect: function(data) {
-						var selection = this.$refs['data-table'].selection;
-						if(selection.length == 0) {
-							return sa.msg('请选择一条数据')
-						}
-						this.get(selection[0]);
-					},
-					// 修改
-					update: function(data) {
-						sa.showIframe('修改数据', 'tb-goods-add.html?id=' + data.id, '1000px', '90%');
-					},
-					// 新增
-					add: function(data) {
-						sa.showIframe('新增数据', 'tb-goods-add.html?id=-1', '1000px', '90%');
-					},
-					// 删除
-					del: function(data) {
-						sa.confirm('是否删除,此操作不可撤销', function() {
-							sa.ajax('/TbGoods/delete?id=' + data.id, function(res) {
-								sa.arrayDelete(this.dataList, data);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 批量删除
-					deleteByIds: function() {
-						// 获取选中元素的id列表 
-						let selection = this.$refs['data-table'].selection;
-						let ids = sa.getArrayField(selection, 'id');
-						if(selection.length == 0) {
-							return sa.msg('请至少选择一条数据')
-						}
-						// 提交删除 
-						sa.confirm('是否批量删除选中数据?此操作不可撤销', function() {
-							sa.ajax('/TbGoods/deleteByIds', {ids: ids.join(',')}, function(res) {
-								sa.arrayDelete(this.dataList, selection);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 改 - 状态(0=禁用,1=启用)
-					updateStatus: function(data) {
-						// 声明变量记录是否成功 
-						var isOk = false;	
-						var oldValue = data.status;
-						var ajax = sa.ajax('/TbGoods/updateStatus', {id: data.id, value: data.status}, function(res) {
-							isOk = true;
-							sa.msg('修改成功');
-						}.bind(this));
-						// 如果未能修改成功, 则回滚 
-						$.when(ajax).done(function() {
-							if(isOk == false) {
-								data.status = oldValue; 
-							}
-						})
-					},
-				},
-				created: function() {
-					this.f5();
-					sa.onInputEnter();
-				}
-			})
-		</script>
-	</body>
-</html>

+ 0 - 152
sp-service/sp-admin/sa-view/tb-group/tb-group-add.html

@@ -1,152 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.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;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box" :class="{sbot: id}" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-                    <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.id" br></sa-item>
-						<sa-item type="text" name="" v-model="m.addressIds" br></sa-item>
-						<sa-item type="text" name="" v-model="m.address" br></sa-item>
-						<sa-item type="text" name="" v-model="m.detailAddress" br></sa-item>
-						<sa-item type="text" name="名称" v-model="m.name" br></sa-item>
-						<sa-item type="text" name="组长ID" v-model="m.leaderId" br></sa-item>
-						<sa-item type="text" name="组长名" v-model="m.leaderName" br></sa-item>
-						<sa-item type="text" name="组长电话" v-model="m.leaderPhone" br></sa-item>
-						<sa-item type="text" name="" v-model="m.code" br></sa-item>
-						<sa-item type="text" name="当天该组剩余额度" v-model="m.leftPrice" br></sa-item>
-						<sa-item type="text" name="创建时间" v-model="m.createTime" br></sa-item>
-						<sa-item type="text" name="创建人编号" v-model="m.createBy" br></sa-item>
-						<sa-item type="text" name="创建人名称" v-model="m.createName" br></sa-item>
-						<sa-item type="text" name="更新时间" v-model="m.updateTime" br></sa-item>
-						<sa-item type="text" name="更新人编号" v-model="m.updateBy" br></sa-item>
-						<sa-item type="text" name="更新人名称" v-model="m.updateName" br></sa-item>
-						<sa-item type="enum" name="删除状态" v-model="m.deleteStatus" :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>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="primary" @click="ok()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-        <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,		// 实体对象 
-				},
-				methods: {
-					// 创建一个 默认Model 
-					createModel: function() {
-						return {
-							id: '',		//  
-							addressIds: '',		//  
-							address: '',		//  
-							detailAddress: '',		//  
-							name: '',		// 名称 
-							leaderId: '',		// 组长ID 
-							leaderName: '',		// 组长名 
-							leaderPhone: '',		// 组长电话 
-							code: '',		//  
-							leftPrice: '',		// 当天该组剩余额度 
-							createTime: '',		// 创建时间 
-							createBy: '',		// 创建人编号 
-							createName: '',		// 创建人名称 
-							updateTime: '',		// 更新时间 
-							updateBy: '',		// 更新人编号 
-							updateName: '',		// 更新人名称 
-							deleteStatus: '',		// 删除状态(0=禁用,1=启用) 
-						}
-					},
-					// 提交数据 
-					ok: function(){
-						// 表单校验 
-						let m = this.m;
-						sa.checkNull(m.id, '请输入 []');
-						sa.checkNull(m.addressIds, '请输入 []');
-						sa.checkNull(m.address, '请输入 []');
-						sa.checkNull(m.detailAddress, '请输入 []');
-						sa.checkNull(m.name, '请输入 [名称]');
-						sa.checkNull(m.leaderId, '请输入 [组长ID]');
-						sa.checkNull(m.leaderName, '请输入 [组长名]');
-						sa.checkNull(m.leaderPhone, '请输入 [组长电话]');
-						sa.checkNull(m.code, '请输入 []');
-						sa.checkNull(m.leftPrice, '请输入 [当天该组剩余额度]');
-						sa.checkNull(m.createTime, '请输入 [创建时间]');
-						sa.checkNull(m.createBy, '请输入 [创建人编号]');
-						sa.checkNull(m.createName, '请输入 [创建人名称]');
-						sa.checkNull(m.updateTime, '请输入 [更新时间]');
-						sa.checkNull(m.updateBy, '请输入 [更新人编号]');
-						sa.checkNull(m.updateName, '请输入 [更新人名称]');
-						sa.checkNull(m.deleteStatus, '请输入 [删除状态]');
-				
-						// 开始增加或修改
-						if(this.id <= 0) {	// 添加
-							sa.ajax('/TbGroup/add', m, function(res){
-								sa.alert('增加成功', this.clean); 
-							}.bind(this));
-						} else {	// 修改
-							sa.ajax('/TbGroup/update', m, function(res){
-								sa.alert('修改成功', this.clean);
-							}.bind(this));
-						}
-					},
-					// 添加/修改 完成后的动作
-					clean: function() {
-						if(this.id == 0) {
-							this.m = this.createModel();
-						} else {
-							parent.app.f5();		// 刷新父页面列表
-							sa.closeCurrIframe();	// 关闭本页 
-						}
-					}
-				},
-				mounted: function(){
-					// 初始化数据 
-					if(this.id <= 0) {	
-						this.m = this.createModel();
-					} else {	
-						sa.ajax('/TbGroup/getById?id=' + this.id, function(res) {
-							this.m = res.data;
-							if(res.data == null) {
-								sa.alert('未能查找到 id=' + this.id + " 详细数据");
-							}
-						}.bind(this))
-					}
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 76
sp-service/sp-admin/sa-view/tb-group/tb-group-info.html

@@ -1,76 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-		<style type="text/css">
-			.c-panel .c-label{width: 8em;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box sbot" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-					<el-form v-if="m">
-						<sa-info name="" br>{{m.id}}</sa-info>
-						<sa-info name="" br>{{m.addressIds}}</sa-info>
-						<sa-info name="" br>{{m.address}}</sa-info>
-						<sa-info name="" br>{{m.detailAddress}}</sa-info>
-						<sa-info name="名称" br>{{m.name}}</sa-info>
-						<sa-info name="组长ID" br>{{m.leaderId}}</sa-info>
-						<sa-info name="组长名" br>{{m.leaderName}}</sa-info>
-						<sa-info name="组长电话" br>{{m.leaderPhone}}</sa-info>
-						<sa-info name="" br>{{m.code}}</sa-info>
-						<sa-info name="当天该组剩余额度" br>{{m.leftPrice}}</sa-info>
-						<sa-info name="创建时间" br>{{m.createTime}}</sa-info>
-						<sa-info name="创建人编号" br>{{m.createBy}}</sa-info>
-						<sa-info name="创建人名称" br>{{m.createName}}</sa-info>
-						<sa-info name="更新时间" br>{{m.updateTime}}</sa-info>
-						<sa-info name="更新人编号" br>{{m.updateBy}}</sa-info>
-						<sa-info name="更新人名称" br>{{m.updateName}}</sa-info>
-						<sa-info type="enum" name="删除状态" :value="m.deleteStatus" :jv="{0: '禁用', 1: '启用'}" br></sa-info>
-					</el-form>
-				</div>
-			</div>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="success" @click="sa.closeCurrIframe()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-info": httpVueLoader('../../sa-frame/com/sa-info.vue')
-				},
-				el: '.vue-box',
-				data: {
-					id: sa.p('id', 0),	// 获取数据ID 
-					m: null
-				},
-				methods: {
-				},
-				mounted: function() {
-					sa.ajax('/TbGroup/getById?id=' + this.id, function(res) {
-						this.m = res.data;
-						if(res.data == null) {
-							sa.alert('未能查找到 id=' + this.id + " 详细数据");
-						}
-					}.bind(this))
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 193
sp-service/sp-admin/sa-view/tb-group/tb-group-list.html

@@ -1,193 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<head>
-		<title>互助组-列表</title>
-		<meta charset="utf-8">
-		<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="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-	</head>
-	<body>
-		<div class="vue-box" style="display: none;" :style="'display: block;'">
-			<div class="c-panel">
-				<!-- ------------- 检索参数 ------------- -->
-				<div class="c-title">检索参数</div>
-				<el-form ref="form" :model='p' @submit.native.prevent>
-					<sa-item type="text" name="" v-model="p.id"></sa-item>
-					<sa-item type="text" name="" v-model="p.addressIds"></sa-item>
-					<sa-item type="text" name="" v-model="p.address"></sa-item>
-					<sa-item type="text" name="" v-model="p.detailAddress"></sa-item>
-					<sa-item type="text" name="名称" v-model="p.name"></sa-item>
-					<sa-item type="text" name="组长ID" v-model="p.leaderId"></sa-item>
-					<sa-item type="text" name="组长名" v-model="p.leaderName"></sa-item>
-					<sa-item type="text" name="组长电话" v-model="p.leaderPhone"></sa-item>
-					<sa-item type="text" name="" v-model="p.code"></sa-item>
-					<sa-item type="text" name="当天该组剩余额度" v-model="p.leftPrice"></sa-item>
-					<sa-item type="text" name="创建时间" v-model="p.createTime"></sa-item>
-					<sa-item type="text" name="创建人编号" v-model="p.createBy"></sa-item>
-					<sa-item type="text" name="创建人名称" v-model="p.createName"></sa-item>
-					<sa-item type="text" name="更新时间" v-model="p.updateTime"></sa-item>
-					<sa-item type="text" name="更新人编号" v-model="p.updateBy"></sa-item>
-					<sa-item type="text" name="更新人名称" v-model="p.updateName"></sa-item>
-					<sa-item type="enum" name="删除状态" v-model="p.deleteStatus" 
-						:jv="{0: '禁用', 1: '启用'}" jtype="2" def="不限"></sa-item>
-					<el-button type="primary" icon="el-icon-search" @click="p.pageNo = 1; f5()">查询</el-button>
-				</el-form>
-				<div class="fast-btn">
-					<el-button v-if="sa.isAuth('tb-group-add')" size="mini" type="primary" @click="add()">新增</el-button>
-					<el-button size="mini" type="success" @click="getBySelect()">查看</el-button>
-					<el-button size="mini" type="info" @click="sa.f5()">重置</el-button>
-				</div>
-				<!-- ------------- 数据列表 ------------- -->
-				<el-table class="data-table" ref="data-table" :data="dataList" >
-					<sa-td type="selection"></sa-td>
-					<sa-td name="" prop="id" ></sa-td>
-					<sa-td name="" prop="addressIds" ></sa-td>
-					<sa-td name="" prop="address" ></sa-td>
-					<sa-td name="" prop="detailAddress" ></sa-td>
-					<sa-td name="名称" prop="name" ></sa-td>
-					<sa-td name="组长ID" prop="leaderId" ></sa-td>
-					<sa-td name="组长名" prop="leaderName" ></sa-td>
-					<sa-td name="组长电话" prop="leaderPhone" ></sa-td>
-					<sa-td name="" prop="code" ></sa-td>
-					<sa-td name="当天该组剩余额度" prop="leftPrice" ></sa-td>
-					<sa-td name="创建时间" prop="createTime" ></sa-td>
-					<sa-td name="创建人编号" prop="createBy" ></sa-td>
-					<sa-td name="创建人名称" prop="createName" ></sa-td>
-					<sa-td name="更新时间" prop="updateTime" ></sa-td>
-					<sa-td name="更新人编号" prop="updateBy" ></sa-td>
-					<sa-td name="更新人名称" prop="updateName" ></sa-td>
-					<sa-td name="删除状态" prop="deleteStatus" type="switch" :jv="{0: '禁用', 1: '启用'}" @change="s => updateDeleteStatus(s.row)"></sa-td>
-					<el-table-column label="操作" fixed="right"  width="240px">
-						<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('tb-group-edit')" class="c-btn" type="primary" icon="el-icon-edit" @click="update(s.row)">修改</el-button>
-							<el-button v-if="sa.isAuth('tb-group-del')" class="c-btn" type="danger" icon="el-icon-delete" @click="del(s.row)">删除</el-button>
-						</template>
-					</el-table-column>
-				</el-table>
-				<!-- ------------- 分页 ------------- -->
-				<sa-item type="page" :curr.sync="p.pageNo" :size.sync="p.pageSize" :total="dataCount" @change="f5()"></sa-item>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-item": httpVueLoader('../../sa-frame/com/sa-item.vue'),  
-					"sa-td": httpVueLoader('../../sa-frame/com/sa-td.vue'),		
-				},
-				el: '.vue-box',
-				data: {
-					p: { // 查询参数  
-						id: '',		//  
-						addressIds: '',		//  
-						address: '',		//  
-						detailAddress: '',		//  
-						name: '',		// 名称 
-						leaderId: '',		// 组长ID 
-						leaderName: '',		// 组长名 
-						leaderPhone: '',		// 组长电话 
-						code: '',		//  
-						leftPrice: '',		// 当天该组剩余额度 
-						createTime: '',		// 创建时间 
-						createBy: '',		// 创建人编号 
-						createName: '',		// 创建人名称 
-						updateTime: '',		// 更新时间 
-						updateBy: '',		// 更新人编号 
-						updateName: '',		// 更新人名称 
-						deleteStatus: '',		// 删除状态(0=禁用,1=启用) 
-						pageNo: 1,		// 当前页 
-						pageSize: 10,	// 页大小 
-						sortType: 0		// 排序方式 
-					},
-					dataCount: 0,
-					dataList: [], // 数据集合 
-				},
-				methods: {
-					// 刷新
-					f5: function() {
-						sa.ajax('/TbGroup/getList', sa.removeNull(this.p), function(res) {
-							this.dataList = res.data; // 数据
-							this.dataCount = res.dataCount; // 数据总数 
-							sa.f5TableHeight();		// 刷新表格高度 
-						}.bind(this));
-					},
-					// 查看
-					get: function(data) {
-						sa.showIframe('数据详情', 'tb-group-info.html?id=' + data.id, '1050px', '90%');
-					},
-					// 查看 - 根据选中的
-					getBySelect: function(data) {
-						var selection = this.$refs['data-table'].selection;
-						if(selection.length == 0) {
-							return sa.msg('请选择一条数据')
-						}
-						this.get(selection[0]);
-					},
-					// 修改
-					update: function(data) {
-						sa.showIframe('修改数据', 'tb-group-add.html?id=' + data.id, '1000px', '90%');
-					},
-					// 新增
-					add: function(data) {
-						sa.showIframe('新增数据', 'tb-group-add.html?id=-1', '1000px', '90%');
-					},
-					// 删除
-					del: function(data) {
-						sa.confirm('是否删除,此操作不可撤销', function() {
-							sa.ajax('/TbGroup/delete?id=' + data.id, function(res) {
-								sa.arrayDelete(this.dataList, data);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 批量删除
-					deleteByIds: function() {
-						// 获取选中元素的id列表 
-						let selection = this.$refs['data-table'].selection;
-						let ids = sa.getArrayField(selection, 'id');
-						if(selection.length == 0) {
-							return sa.msg('请至少选择一条数据')
-						}
-						// 提交删除 
-						sa.confirm('是否批量删除选中数据?此操作不可撤销', function() {
-							sa.ajax('/TbGroup/deleteByIds', {ids: ids.join(',')}, function(res) {
-								sa.arrayDelete(this.dataList, selection);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 改 - 删除状态(0=禁用,1=启用)
-					updateDeleteStatus: function(data) {
-						// 声明变量记录是否成功 
-						var isOk = false;	
-						var oldValue = data.deleteStatus;
-						var ajax = sa.ajax('/TbGroup/updateDeleteStatus', {id: data.id, value: data.deleteStatus}, function(res) {
-							isOk = true;
-							sa.msg('修改成功');
-						}.bind(this));
-						// 如果未能修改成功, 则回滚 
-						$.when(ajax).done(function() {
-							if(isOk == false) {
-								data.status = oldValue; 
-							}
-						})
-					},
-				},
-				created: function() {
-					this.f5();
-					sa.onInputEnter();
-				}
-			})
-		</script>
-	</body>
-</html>

+ 0 - 205
sp-service/sp-admin/sa-view/tb-people/tb-people-add.html

@@ -1,205 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<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;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box" :class="{sbot: id}" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-                    <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>
-						<sa-item type="text" name="边民号" v-model="m.code" br></sa-item>
-						<sa-item type="enum" name="性别" v-model="m.sex" :jv="{1: '男', 2: '女'}" jtype="3" br></sa-item>
-						<sa-item type="num" name="年龄" v-model="m.age" br></sa-item>
-						<sa-item type="text" name="身份证" v-model="m.idCard" br></sa-item>
-						<sa-item type="img-list" name="身份证复印件" v-model="m.idCardImg" br></sa-item>
-						<sa-item type="text" name="手机号码" v-model="m.phone" br></sa-item>
-						<sa-item type="text" name="银行编号" v-model="m.bankNo" br></sa-item>
-						<sa-item type="text" name="银行卡号" v-model="m.bankCode" br></sa-item>
-						<sa-item type="text" name="银行名称" v-model="m.bankName" br></sa-item>
-						<sa-item type="enum" name="所属互助组" v-model="m.groupId" :jv="{1: '测试组'}" jtype="3" br></sa-item>
-						<sa-item type="text" name="互助组名称" v-model="m.groupName" br></sa-item>
-						<sa-item type="enum" name="是否可用" v-model="m.status" :jv="{0: '否', 1: '是'}" jtype="3" br></sa-item>
-						<sa-item type="text" name="经度" v-model="m.lng" br></sa-item>
-						<sa-item type="text" name="纬度" v-model="m.lat" br></sa-item>
-						<sa-item type="text" name="最后一次下单定位" v-model="m.lastLocation" br></sa-item>
-						<sa-item type="text" name="联系地址" v-model="m.address" br></sa-item>
-						<sa-item type="text" name="地址ID" v-model="m.addressIds" br></sa-item>
-						<sa-item type="text" name="详细地址" v-model="m.detailAddress" br></sa-item>
-						<sa-item type="text" name="是否锁定" v-model="m.isLock" br></sa-item>
-						<sa-item type="text" name="当天剩余额度" v-model="m.leftPrice" br></sa-item>
-						<sa-item type="text" name="" v-model="m.judgeStatus" br></sa-item>
-						<sa-item type="text" name="" v-model="m.judgeContent" br></sa-item>
-						<sa-item type="text" name="" v-model="m.registerTime" br></sa-item>
-						<sa-item type="text" name="" v-model="m.judgeTime" br></sa-item>
-						<sa-item type="text" name="" v-model="m.personId" br></sa-item>
-						<sa-item type="text" name="创建时间" v-model="m.createTime" br></sa-item>
-						<sa-item type="text" name="创建人编号" v-model="m.createBy" br></sa-item>
-						<sa-item type="text" name="创建人名称" v-model="m.createName" br></sa-item>
-						<sa-item type="text" name="更新时间" v-model="m.updateTime" br></sa-item>
-						<sa-item type="text" name="更新人编号" v-model="m.updateBy" br></sa-item>
-						<sa-item type="text" name="更新人名称" v-model="m.updateName" br></sa-item>
-						<sa-item type="enum" name="删除状态" v-model="m.deleteStatus" :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>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="primary" @click="ok()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-        <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,		// 实体对象 
-				},
-				methods: {
-					// 创建一个 默认Model 
-					createModel: function() {
-						return {
-							id: '',		// 主键 
-							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: '',		// 当天剩余额度 
-							judgeStatus: '',		//  
-							judgeContent: '',		//  
-							registerTime: '',		//  
-							judgeTime: '',		//  
-							personId: '',		//  
-							createTime: '',		// 创建时间 
-							createBy: '',		// 创建人编号 
-							createName: '',		// 创建人名称 
-							updateTime: '',		// 更新时间 
-							updateBy: '',		// 更新人编号 
-							updateName: '',		// 更新人名称 
-							deleteStatus: '',		// 删除状态(0=禁用,1=启用) 
-						}
-					},
-					// 提交数据 
-					ok: function(){
-						// 表单校验 
-						let m = this.m;
-						// sa.checkNull(m.id, '请输入 [主键]');
-						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.status, '请输入 [是否可用]');
-						// sa.checkNull(m.role, '请输入 [角色]');
-						sa.checkNull(m.lng, '请输入 [经度]');
-						sa.checkNull(m.lat, '请输入 [纬度]');
-						sa.checkNull(m.lastLocation, '请输入 [最后一次下单定位]');
-						sa.checkNull(m.address, '请输入 [联系地址]');
-						sa.checkNull(m.addressIds, '请输入 [地址ID]');
-						sa.checkNull(m.detailAddress, '请输入 [详细地址]');
-						sa.checkNull(m.isLock, '请输入 [是否锁定]');
-						sa.checkNull(m.leftPrice, '请输入 [当天剩余额度]');
-						sa.checkNull(m.judgeStatus, '请输入 []');
-						sa.checkNull(m.judgeContent, '请输入 []');
-						sa.checkNull(m.registerTime, '请输入 []');
-						sa.checkNull(m.judgeTime, '请输入 []');
-						sa.checkNull(m.personId, '请输入 []');
-						sa.checkNull(m.createTime, '请输入 [创建时间]');
-						sa.checkNull(m.createBy, '请输入 [创建人编号]');
-						sa.checkNull(m.createName, '请输入 [创建人名称]');
-						sa.checkNull(m.updateTime, '请输入 [更新时间]');
-						sa.checkNull(m.updateBy, '请输入 [更新人编号]');
-						sa.checkNull(m.updateName, '请输入 [更新人名称]');
-						sa.checkNull(m.deleteStatus, '请输入 [删除状态]');
-				
-						// 开始增加或修改
-						if(this.id <= 0) {	// 添加
-							sa.ajax('/TbPeople/add', m, function(res){
-								sa.alert('增加成功', this.clean); 
-							}.bind(this));
-						} else {	// 修改
-							sa.ajax('/TbPeople/update', m, function(res){
-								sa.alert('修改成功', this.clean);
-							}.bind(this));
-						}
-					},
-					// 添加/修改 完成后的动作
-					clean: function() {
-						if(this.id == 0) {
-							this.m = this.createModel();
-						} else {
-							parent.app.f5();		// 刷新父页面列表
-							sa.closeCurrIframe();	// 关闭本页 
-						}
-					}
-				},
-				mounted: function(){
-					// 初始化数据 
-					if(this.id <= 0) {	
-						this.m = this.createModel();
-					} else {	
-						sa.ajax('/TbPeople/getById?id=' + this.id, function(res) {
-							this.m = res.data;
-							if(res.data == null) {
-								sa.alert('未能查找到 id=' + this.id + " 详细数据");
-							}
-						}.bind(this))
-					}
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 95
sp-service/sp-admin/sa-view/tb-people/tb-people-info.html

@@ -1,95 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-		<style type="text/css">
-			.c-panel .c-label{width: 8em;}
-			.c-item .image-box-2{height: 90px;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box sbot" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-					<el-form v-if="m">
-						<sa-info type="num" name="主键" :value="m.id" br></sa-info>
-						<sa-info name="姓名" br>{{m.name}}</sa-info>
-						<sa-info name="边民号" br>{{m.code}}</sa-info>
-						<sa-info type="enum" name="性别" :value="m.sex" :jv="{1: '男', 2: '女'}" br></sa-info>
-						<sa-info type="num" name="年龄" :value="m.age" br></sa-info>
-						<sa-info name="身份证" br>{{m.idCard}}</sa-info>
-						<sa-info type="img-list" name="身份证复印件" :value="m.idCardImg" br></sa-info>
-						<sa-info name="手机号码" br>{{m.phone}}</sa-info>
-						<sa-info name="银行编号" br>{{m.bankNo}}</sa-info>
-						<sa-info name="银行卡号" br>{{m.bankCode}}</sa-info>
-						<sa-info name="银行名称" br>{{m.bankName}}</sa-info>
-						<sa-info type="enum" name="所属互助组" :value="m.groupId" :jv="{1: '测试组'}" br></sa-info>
-						<sa-info name="互助组名称" br>{{m.groupName}}</sa-info>
-						<sa-info type="enum" name="是否可用" :value="m.status" :jv="{0: '否', 1: '是'}" br></sa-info>
-						<sa-info type="num" name="角色" :value="m.role" br></sa-info>
-						<sa-info name="经度" br>{{m.lng}}</sa-info>
-						<sa-info name="纬度" br>{{m.lat}}</sa-info>
-						<sa-info name="最后一次下单定位" br>{{m.lastLocation}}</sa-info>
-						<sa-info name="联系地址" br>{{m.address}}</sa-info>
-						<sa-info name="地址ID" br>{{m.addressIds}}</sa-info>
-						<sa-info name="详细地址" br>{{m.detailAddress}}</sa-info>
-						<sa-info name="是否锁定" br>{{m.isLock}}</sa-info>
-						<sa-info name="当天剩余额度" br>{{m.leftPrice}}</sa-info>
-						<sa-info name="" br>{{m.judgeStatus}}</sa-info>
-						<sa-info name="" br>{{m.judgeContent}}</sa-info>
-						<sa-info name="" br>{{m.registerTime}}</sa-info>
-						<sa-info name="" br>{{m.judgeTime}}</sa-info>
-						<sa-info name="" br>{{m.personId}}</sa-info>
-						<sa-info name="创建时间" br>{{m.createTime}}</sa-info>
-						<sa-info name="创建人编号" br>{{m.createBy}}</sa-info>
-						<sa-info name="创建人名称" br>{{m.createName}}</sa-info>
-						<sa-info name="更新时间" br>{{m.updateTime}}</sa-info>
-						<sa-info name="更新人编号" br>{{m.updateBy}}</sa-info>
-						<sa-info name="更新人名称" br>{{m.updateName}}</sa-info>
-						<sa-info type="enum" name="删除状态" :value="m.deleteStatus" :jv="{0: '禁用', 1: '启用'}" br></sa-info>
-					</el-form>
-				</div>
-			</div>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="success" @click="sa.closeCurrIframe()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-info": httpVueLoader('../../sa-frame/com/sa-info.vue')
-				},
-				el: '.vue-box',
-				data: {
-					id: sa.p('id', 0),	// 获取数据ID 
-					m: null
-				},
-				methods: {
-				},
-				mounted: function() {
-					sa.ajax('/TbPeople/getById?id=' + this.id, function(res) {
-						this.m = res.data;
-						if(res.data == null) {
-							sa.alert('未能查找到 id=' + this.id + " 详细数据");
-						}
-					}.bind(this))
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 248
sp-service/sp-admin/sa-view/tb-people/tb-people-list.html

@@ -1,248 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<head>
-		<title>边民-列表</title>
-		<meta charset="utf-8">
-		<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="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-	</head>
-	<body>
-		<div class="vue-box" style="display: none;" :style="'display: block;'">
-			<div class="c-panel">
-				<!-- ------------- 检索参数 ------------- -->
-				<div class="c-title">检索参数</div>
-				<el-form ref="form" :model='p' @submit.native.prevent>
-					<sa-item type="num" name="主键" v-model="p.id"></sa-item>
-					<sa-item type="text" name="姓名" v-model="p.name"></sa-item>
-					<sa-item type="text" name="边民号" v-model="p.code"></sa-item>
-					<sa-item type="enum" name="性别" v-model="p.sex" 
-						:jv="{1: '男', 2: '女'}" jtype="2" def="不限"></sa-item>
-					<sa-item type="num" name="年龄" v-model="p.age"></sa-item>
-					<sa-item type="text" name="身份证" v-model="p.idCard"></sa-item>
-					<sa-item type="text" name="手机号码" v-model="p.phone"></sa-item>
-					<sa-item type="text" name="银行编号" v-model="p.bankNo"></sa-item>
-					<sa-item type="text" name="银行卡号" v-model="p.bankCode"></sa-item>
-					<sa-item type="text" name="银行名称" v-model="p.bankName"></sa-item>
-					<sa-item type="enum" name="所属互助组" v-model="p.groupId" 
-						:jv="{1: '测试组'}" jtype="2" def="不限"></sa-item>
-					<sa-item type="text" name="互助组名称" v-model="p.groupName"></sa-item>
-					<sa-item type="enum" name="是否可用" v-model="p.status" 
-						:jv="{0: '否', 1: '是'}" jtype="2" def="不限"></sa-item>
-					<sa-item type="num" name="角色" v-model="p.role"></sa-item>
-					<sa-item type="text" name="经度" v-model="p.lng"></sa-item>
-					<sa-item type="text" name="纬度" v-model="p.lat"></sa-item>
-					<sa-item type="text" name="最后一次下单定位" v-model="p.lastLocation"></sa-item>
-					<sa-item type="text" name="联系地址" v-model="p.address"></sa-item>
-					<sa-item type="text" name="地址ID" v-model="p.addressIds"></sa-item>
-					<sa-item type="text" name="详细地址" v-model="p.detailAddress"></sa-item>
-					<sa-item type="text" name="是否锁定" v-model="p.isLock"></sa-item>
-					<sa-item type="text" name="当天剩余额度" v-model="p.leftPrice"></sa-item>
-					<sa-item type="text" name="" v-model="p.judgeStatus"></sa-item>
-					<sa-item type="text" name="" v-model="p.judgeContent"></sa-item>
-					<sa-item type="text" name="" v-model="p.registerTime"></sa-item>
-					<sa-item type="text" name="" v-model="p.judgeTime"></sa-item>
-					<sa-item type="text" name="" v-model="p.personId"></sa-item>
-					<sa-item type="text" name="创建时间" v-model="p.createTime"></sa-item>
-					<sa-item type="text" name="创建人编号" v-model="p.createBy"></sa-item>
-					<sa-item type="text" name="创建人名称" v-model="p.createName"></sa-item>
-					<sa-item type="text" name="更新时间" v-model="p.updateTime"></sa-item>
-					<sa-item type="text" name="更新人编号" v-model="p.updateBy"></sa-item>
-					<sa-item type="text" name="更新人名称" v-model="p.updateName"></sa-item>
-					<sa-item type="enum" name="删除状态" v-model="p.deleteStatus" 
-						:jv="{0: '禁用', 1: '启用'}" jtype="2" def="不限"></sa-item>
-					<el-button type="primary" icon="el-icon-search" @click="p.pageNo = 1; f5()">查询</el-button>
-				</el-form>
-				<div class="fast-btn">
-					<el-button v-if="sa.isAuth('tb-people-add')" size="mini" type="primary" @click="add()">新增</el-button>
-					<el-button size="mini" type="success" @click="getBySelect()">查看</el-button>
-					<el-button size="mini" type="info" @click="sa.f5()">重置</el-button>
-				</div>
-				<!-- ------------- 数据列表 ------------- -->
-				<el-table class="data-table" ref="data-table" :data="dataList" >
-					<sa-td type="selection"></sa-td>
-					<sa-td name="主键" prop="id" type="num"></sa-td>
-					<sa-td name="姓名" prop="name" ></sa-td>
-					<sa-td name="边民号" prop="code" ></sa-td>
-					<sa-td name="性别" prop="sex" type="enum" :jv="{1: '男', 2: '女'}"></sa-td>
-					<sa-td name="年龄" prop="age" type="num"></sa-td>
-					<sa-td name="身份证" prop="idCard" ></sa-td>
-					<sa-td name="身份证复印件" prop="idCardImg" type="img-list"></sa-td>
-					<sa-td name="手机号码" prop="phone" ></sa-td>
-					<sa-td name="银行编号" prop="bankNo" ></sa-td>
-					<sa-td name="银行卡号" prop="bankCode" ></sa-td>
-					<sa-td name="银行名称" prop="bankName" ></sa-td>
-					<sa-td name="所属互助组" prop="groupId" type="enum" :jv="{1: '测试组'}"></sa-td>
-					<sa-td name="互助组名称" prop="groupName" ></sa-td>
-					<sa-td name="是否可用" prop="status" type="enum" :jv="{0: '否', 1: '是'}"></sa-td>
-					<sa-td name="角色" prop="role" type="num"></sa-td>
-					<sa-td name="经度" prop="lng" ></sa-td>
-					<sa-td name="纬度" prop="lat" ></sa-td>
-					<sa-td name="最后一次下单定位" prop="lastLocation" ></sa-td>
-					<sa-td name="联系地址" prop="address" ></sa-td>
-					<sa-td name="地址ID" prop="addressIds" ></sa-td>
-					<sa-td name="详细地址" prop="detailAddress" ></sa-td>
-					<sa-td name="是否锁定" prop="isLock" ></sa-td>
-					<sa-td name="当天剩余额度" prop="leftPrice" ></sa-td>
-					<sa-td name="" prop="judgeStatus" ></sa-td>
-					<sa-td name="" prop="judgeContent" ></sa-td>
-					<sa-td name="" prop="registerTime" ></sa-td>
-					<sa-td name="" prop="judgeTime" ></sa-td>
-					<sa-td name="" prop="personId" ></sa-td>
-					<sa-td name="创建时间" prop="createTime" ></sa-td>
-					<sa-td name="创建人编号" prop="createBy" ></sa-td>
-					<sa-td name="创建人名称" prop="createName" ></sa-td>
-					<sa-td name="更新时间" prop="updateTime" ></sa-td>
-					<sa-td name="更新人编号" prop="updateBy" ></sa-td>
-					<sa-td name="更新人名称" prop="updateName" ></sa-td>
-					<sa-td name="删除状态" prop="deleteStatus" type="switch" :jv="{0: '禁用', 1: '启用'}" @change="s => updateDeleteStatus(s.row)"></sa-td>
-					<el-table-column label="操作" fixed="right"  width="240px">
-						<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('tb-people-edit')" class="c-btn" type="primary" icon="el-icon-edit" @click="update(s.row)">修改</el-button>
-							<el-button v-if="sa.isAuth('tb-people-del')" class="c-btn" type="danger" icon="el-icon-delete" @click="del(s.row)">删除</el-button>
-						</template>
-					</el-table-column>
-				</el-table>
-				<!-- ------------- 分页 ------------- -->
-				<sa-item type="page" :curr.sync="p.pageNo" :size.sync="p.pageSize" :total="dataCount" @change="f5()"></sa-item>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-item": httpVueLoader('../../sa-frame/com/sa-item.vue'),  
-					"sa-td": httpVueLoader('../../sa-frame/com/sa-td.vue'),		
-				},
-				el: '.vue-box',
-				data: {
-					p: { // 查询参数  
-						id: '',		// 主键 
-						name: '',		// 姓名 
-						code: '',		// 边民号 
-						sex: '',		// 性别(1=男,2=女) 
-						age: '',		// 年龄 
-						idCard: '',		// 身份证 
-						phone: '',		// 手机号码 
-						bankNo: '',		// 银行编号 
-						bankCode: '',		// 银行卡号 
-						bankName: '',		// 银行名称 
-						groupId: '',		// 所属互助组(1=测试组) 
-						groupName: '',		// 互助组名称 
-						status: '',		// 是否可用(0=否,1=是) 
-						role: '',		// 角色(1=普通边民,2=兼组长) 
-						lng: '',		// 经度 
-						lat: '',		// 纬度 
-						lastLocation: '',		// 最后一次下单定位 
-						address: '',		// 联系地址 
-						addressIds: '',		// 地址ID 
-						detailAddress: '',		// 详细地址 
-						isLock: '',		// 是否锁定 
-						leftPrice: '',		// 当天剩余额度 
-						judgeStatus: '',		//  
-						judgeContent: '',		//  
-						registerTime: '',		//  
-						judgeTime: '',		//  
-						personId: '',		//  
-						createTime: '',		// 创建时间 
-						createBy: '',		// 创建人编号 
-						createName: '',		// 创建人名称 
-						updateTime: '',		// 更新时间 
-						updateBy: '',		// 更新人编号 
-						updateName: '',		// 更新人名称 
-						deleteStatus: '',		// 删除状态(0=禁用,1=启用) 
-						pageNo: 1,		// 当前页 
-						pageSize: 10,	// 页大小 
-						sortType: 0		// 排序方式 
-					},
-					dataCount: 0,
-					dataList: [], // 数据集合 
-				},
-				methods: {
-					// 刷新
-					f5: function() {
-						sa.ajax('/TbPeople/getList', sa.removeNull(this.p), function(res) {
-							this.dataList = res.data; // 数据
-							this.dataCount = res.dataCount; // 数据总数 
-							sa.f5TableHeight();		// 刷新表格高度 
-						}.bind(this));
-					},
-					// 查看
-					get: function(data) {
-						sa.showIframe('数据详情', 'tb-people-info.html?id=' + data.id, '1050px', '90%');
-					},
-					// 查看 - 根据选中的
-					getBySelect: function(data) {
-						var selection = this.$refs['data-table'].selection;
-						if(selection.length == 0) {
-							return sa.msg('请选择一条数据')
-						}
-						this.get(selection[0]);
-					},
-					// 修改
-					update: function(data) {
-						sa.showIframe('修改数据', 'tb-people-add.html?id=' + data.id, '1000px', '90%');
-					},
-					// 新增
-					add: function(data) {
-						sa.showIframe('新增数据', 'tb-people-add.html?id=-1', '1000px', '90%');
-					},
-					// 删除
-					del: function(data) {
-						sa.confirm('是否删除,此操作不可撤销', function() {
-							sa.ajax('/TbPeople/delete?id=' + data.id, function(res) {
-								sa.arrayDelete(this.dataList, data);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 批量删除
-					deleteByIds: function() {
-						// 获取选中元素的id列表 
-						let selection = this.$refs['data-table'].selection;
-						let ids = sa.getArrayField(selection, 'id');
-						if(selection.length == 0) {
-							return sa.msg('请至少选择一条数据')
-						}
-						// 提交删除 
-						sa.confirm('是否批量删除选中数据?此操作不可撤销', function() {
-							sa.ajax('/TbPeople/deleteByIds', {ids: ids.join(',')}, function(res) {
-								sa.arrayDelete(this.dataList, selection);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 改 - 删除状态(0=禁用,1=启用)
-					updateDeleteStatus: function(data) {
-						// 声明变量记录是否成功 
-						var isOk = false;	
-						var oldValue = data.deleteStatus;
-						var ajax = sa.ajax('/TbPeople/updateDeleteStatus', {id: data.id, value: data.deleteStatus}, function(res) {
-							isOk = true;
-							sa.msg('修改成功');
-						}.bind(this));
-						// 如果未能修改成功, 则回滚 
-						$.when(ajax).done(function() {
-							if(isOk == false) {
-								data.status = oldValue; 
-							}
-						})
-					},
-				},
-				created: function() {
-					this.f5();
-					sa.onInputEnter();
-				}
-			})
-		</script>
-	</body>
-</html>

+ 0 - 170
sp-service/sp-admin/sa-view/tb-purchaser/tb-purchaser-add.html

@@ -1,170 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<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;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box" :class="{sbot: id}" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-                    <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>
-						<sa-item type="text" name="法人" v-model="m.legalPerson" br></sa-item>
-						<sa-item type="text" name="身份证号" v-model="m.idCard" br></sa-item>
-						<sa-item type="text" name="手机号码" v-model="m.contact" br></sa-item>
-						<sa-item type="img-list" name="营业执照" v-model="m.businessLicense" br></sa-item>
-						<sa-item type="text" name="银行编号" v-model="m.bankNo" br></sa-item>
-						<sa-item type="text" name="银行名称" v-model="m.bankName" br></sa-item>
-						<sa-item type="text" name="银行账号" v-model="m.bankAccount" br></sa-item>
-						<sa-item type="text" name="税号" v-model="m.dutyParagraph" br></sa-item>
-						<sa-item type="text" name="地址编号" v-model="m.addressIds" br></sa-item>
-						<sa-item type="text" name="地址" v-model="m.address" br></sa-item>
-						<sa-item type="enum" name="审核状态" v-model="m.judgeStatus" :jv="{0: '未通过', 1: '已通过'}" jtype="3" br></sa-item>
-						<sa-item type="text" name="审核意见" v-model="m.judgeContent" br></sa-item>
-						<sa-item type="text" name="创建时间" v-model="m.createTime" br></sa-item>
-						<sa-item type="text" name="创建人编号" v-model="m.createBy" br></sa-item>
-						<sa-item type="text" name="创建人名称" v-model="m.createName" br></sa-item>
-						<sa-item type="text" name="更新时间" v-model="m.updateTime" br></sa-item>
-						<sa-item type="text" name="更新人编号" v-model="m.updateBy" br></sa-item>
-						<sa-item type="text" name="更新人名称" v-model="m.updateName" br></sa-item>
-						<sa-item type="enum" name="删除状态" v-model="m.deleteStatus" :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>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="primary" @click="ok()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-        <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,		// 实体对象 
-				},
-				methods: {
-					// 创建一个 默认Model 
-					createModel: function() {
-						return {
-							id: '',		// 主键 
-							name: '',		// 名称 
-							legalPerson: '',		// 法人 
-							idCard: '',		// 身份证号 
-							contact: '',		// 手机号码 
-							businessLicense: '',		// 营业执照 
-							bankNo: '',		// 银行编号 
-							bankName: '',		// 银行名称 
-							bankAccount: '',		// 银行账号 
-							dutyParagraph: '',		// 税号 
-							addressIds: '',		// 地址编号 
-							address: '',		// 地址 
-							judgeStatus: '',		// 审核状态(0=未通过,1=已通过) 
-							judgeContent: '',		// 审核意见 
-							judgeTime: '',		// 上次审核时间 
-							registerTime: '',		// 注册时间 
-							personId: '',		// 人脸编号 
-							createTime: '',		// 创建时间 
-							createBy: '',		// 创建人编号 
-							createName: '',		// 创建人名称 
-							updateTime: '',		// 更新时间 
-							updateBy: '',		// 更新人编号 
-							updateName: '',		// 更新人名称 
-							deleteStatus: '',		// 删除状态(0=禁用,1=启用) 
-						}
-					},
-					// 提交数据 
-					ok: function(){
-						// 表单校验 
-						let m = this.m;
-						// sa.checkNull(m.id, '请输入 [主键]');
-						sa.checkNull(m.name, '请输入 [名称]');
-						sa.checkNull(m.legalPerson, '请输入 [法人]');
-						sa.checkNull(m.idCard, '请输入 [身份证号]');
-						sa.checkNull(m.contact, '请输入 [手机号码]');
-						sa.checkNull(m.businessLicense, '请输入 [营业执照]');
-						sa.checkNull(m.bankNo, '请输入 [银行编号]');
-						sa.checkNull(m.bankName, '请输入 [银行名称]');
-						sa.checkNull(m.bankAccount, '请输入 [银行账号]');
-						sa.checkNull(m.dutyParagraph, '请输入 [税号]');
-						sa.checkNull(m.addressIds, '请输入 [地址编号]');
-						sa.checkNull(m.address, '请输入 [地址]');
-						sa.checkNull(m.judgeStatus, '请输入 [审核状态]');
-						sa.checkNull(m.judgeContent, '请输入 [审核意见]');
-						// sa.checkNull(m.judgeTime, '请输入 [上次审核时间]');
-						// sa.checkNull(m.registerTime, '请输入 [注册时间]');
-						// sa.checkNull(m.personId, '请输入 [人脸编号]');
-						sa.checkNull(m.createTime, '请输入 [创建时间]');
-						sa.checkNull(m.createBy, '请输入 [创建人编号]');
-						sa.checkNull(m.createName, '请输入 [创建人名称]');
-						sa.checkNull(m.updateTime, '请输入 [更新时间]');
-						sa.checkNull(m.updateBy, '请输入 [更新人编号]');
-						sa.checkNull(m.updateName, '请输入 [更新人名称]');
-						sa.checkNull(m.deleteStatus, '请输入 [删除状态]');
-				
-						// 开始增加或修改
-						if(this.id <= 0) {	// 添加
-							sa.ajax('/TbPurchaser/add', m, function(res){
-								sa.alert('增加成功', this.clean); 
-							}.bind(this));
-						} else {	// 修改
-							sa.ajax('/TbPurchaser/update', m, function(res){
-								sa.alert('修改成功', this.clean);
-							}.bind(this));
-						}
-					},
-					// 添加/修改 完成后的动作
-					clean: function() {
-						if(this.id == 0) {
-							this.m = this.createModel();
-						} else {
-							parent.app.f5();		// 刷新父页面列表
-							sa.closeCurrIframe();	// 关闭本页 
-						}
-					}
-				},
-				mounted: function(){
-					// 初始化数据 
-					if(this.id <= 0) {	
-						this.m = this.createModel();
-					} else {	
-						sa.ajax('/TbPurchaser/getById?id=' + this.id, function(res) {
-							this.m = res.data;
-							if(res.data == null) {
-								sa.alert('未能查找到 id=' + this.id + " 详细数据");
-							}
-						}.bind(this))
-					}
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 84
sp-service/sp-admin/sa-view/tb-purchaser/tb-purchaser-info.html

@@ -1,84 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-		<style type="text/css">
-			.c-panel .c-label{width: 8em;}
-			.c-item .image-box-2{height: 90px;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box sbot" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-					<el-form v-if="m">
-						<sa-info type="num" name="主键" :value="m.id" br></sa-info>
-						<sa-info name="名称" br>{{m.name}}</sa-info>
-						<sa-info name="法人" br>{{m.legalPerson}}</sa-info>
-						<sa-info name="身份证号" br>{{m.idCard}}</sa-info>
-						<sa-info name="手机号码" br>{{m.contact}}</sa-info>
-						<sa-info type="img-list" name="营业执照" :value="m.businessLicense" br></sa-info>
-						<sa-info name="银行编号" br>{{m.bankNo}}</sa-info>
-						<sa-info name="银行名称" br>{{m.bankName}}</sa-info>
-						<sa-info name="银行账号" br>{{m.bankAccount}}</sa-info>
-						<sa-info name="税号" br>{{m.dutyParagraph}}</sa-info>
-						<sa-info name="地址编号" br>{{m.addressIds}}</sa-info>
-						<sa-info name="地址" br>{{m.address}}</sa-info>
-						<sa-info type="enum" name="审核状态" :value="m.judgeStatus" :jv="{0: '未通过', 1: '已通过'}" br></sa-info>
-						<sa-info name="审核意见" br>{{m.judgeContent}}</sa-info>
-						<sa-info type="datetime" name="上次审核时间" :value="m.judgeTime" br></sa-info>
-						<sa-info type="datetime" name="注册时间" :value="m.registerTime" br></sa-info>
-						<sa-info type="num" name="人脸编号" :value="m.personId" br></sa-info>
-						<sa-info name="创建时间" br>{{m.createTime}}</sa-info>
-						<sa-info name="创建人编号" br>{{m.createBy}}</sa-info>
-						<sa-info name="创建人名称" br>{{m.createName}}</sa-info>
-						<sa-info name="更新时间" br>{{m.updateTime}}</sa-info>
-						<sa-info name="更新人编号" br>{{m.updateBy}}</sa-info>
-						<sa-info name="更新人名称" br>{{m.updateName}}</sa-info>
-						<sa-info type="enum" name="删除状态" :value="m.deleteStatus" :jv="{0: '禁用', 1: '启用'}" br></sa-info>
-					</el-form>
-				</div>
-			</div>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="success" @click="sa.closeCurrIframe()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-info": httpVueLoader('../../sa-frame/com/sa-info.vue')
-				},
-				el: '.vue-box',
-				data: {
-					id: sa.p('id', 0),	// 获取数据ID 
-					m: null
-				},
-				methods: {
-				},
-				mounted: function() {
-					sa.ajax('/TbPurchaser/getById?id=' + this.id, function(res) {
-						this.m = res.data;
-						if(res.data == null) {
-							sa.alert('未能查找到 id=' + this.id + " 详细数据");
-						}
-					}.bind(this))
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 209
sp-service/sp-admin/sa-view/tb-purchaser/tb-purchaser-list.html

@@ -1,209 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<head>
-		<title>收购商-列表</title>
-		<meta charset="utf-8">
-		<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="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-	</head>
-	<body>
-		<div class="vue-box" style="display: none;" :style="'display: block;'">
-			<div class="c-panel">
-				<!-- ------------- 检索参数 ------------- -->
-				<div class="c-title">检索参数</div>
-				<el-form ref="form" :model='p' @submit.native.prevent>
-					<sa-item type="num" name="主键" v-model="p.id"></sa-item>
-					<sa-item type="text" name="名称" v-model="p.name"></sa-item>
-					<sa-item type="text" name="法人" v-model="p.legalPerson"></sa-item>
-					<sa-item type="text" name="身份证号" v-model="p.idCard"></sa-item>
-					<sa-item type="text" name="手机号码" v-model="p.contact"></sa-item>
-					<sa-item type="text" name="银行编号" v-model="p.bankNo"></sa-item>
-					<sa-item type="text" name="银行名称" v-model="p.bankName"></sa-item>
-					<sa-item type="text" name="银行账号" v-model="p.bankAccount"></sa-item>
-					<sa-item type="text" name="税号" v-model="p.dutyParagraph"></sa-item>
-					<sa-item type="text" name="地址编号" v-model="p.addressIds"></sa-item>
-					<sa-item type="text" name="地址" v-model="p.address"></sa-item>
-					<sa-item type="enum" name="审核状态" v-model="p.judgeStatus" 
-						:jv="{0: '未通过', 1: '已通过'}" jtype="2" def="不限"></sa-item>
-					<sa-item type="text" name="审核意见" v-model="p.judgeContent"></sa-item>
-					<sa-item type="num" name="人脸编号" v-model="p.personId"></sa-item>
-					<sa-item type="text" name="创建时间" v-model="p.createTime"></sa-item>
-					<sa-item type="text" name="创建人编号" v-model="p.createBy"></sa-item>
-					<sa-item type="text" name="创建人名称" v-model="p.createName"></sa-item>
-					<sa-item type="text" name="更新时间" v-model="p.updateTime"></sa-item>
-					<sa-item type="text" name="更新人编号" v-model="p.updateBy"></sa-item>
-					<sa-item type="text" name="更新人名称" v-model="p.updateName"></sa-item>
-					<sa-item type="enum" name="删除状态" v-model="p.deleteStatus" 
-						:jv="{0: '禁用', 1: '启用'}" jtype="2" def="不限"></sa-item>
-					<el-button type="primary" icon="el-icon-search" @click="p.pageNo = 1; f5()">查询</el-button>
-				</el-form>
-				<div class="fast-btn">
-					<el-button v-if="sa.isAuth('tb-purchaser-add')" size="mini" type="primary" @click="add()">新增</el-button>
-					<el-button size="mini" type="success" @click="getBySelect()">查看</el-button>
-					<el-button size="mini" type="info" @click="sa.f5()">重置</el-button>
-				</div>
-				<!-- ------------- 数据列表 ------------- -->
-				<el-table class="data-table" ref="data-table" :data="dataList" >
-					<sa-td type="selection"></sa-td>
-					<sa-td name="主键" prop="id" type="num"></sa-td>
-					<sa-td name="名称" prop="name" ></sa-td>
-					<sa-td name="法人" prop="legalPerson" ></sa-td>
-					<sa-td name="身份证号" prop="idCard" ></sa-td>
-					<sa-td name="手机号码" prop="contact" ></sa-td>
-					<sa-td name="营业执照" prop="businessLicense" type="img-list"></sa-td>
-					<sa-td name="银行编号" prop="bankNo" ></sa-td>
-					<sa-td name="银行名称" prop="bankName" ></sa-td>
-					<sa-td name="银行账号" prop="bankAccount" ></sa-td>
-					<sa-td name="税号" prop="dutyParagraph" ></sa-td>
-					<sa-td name="地址编号" prop="addressIds" ></sa-td>
-					<sa-td name="地址" prop="address" ></sa-td>
-					<sa-td name="审核状态" prop="judgeStatus" type="enum" :jv="{0: '未通过', 1: '已通过'}"></sa-td>
-					<sa-td name="审核意见" prop="judgeContent" ></sa-td>
-					<sa-td name="上次审核时间" prop="judgeTime" type="datetime"></sa-td>
-					<sa-td name="注册时间" prop="registerTime" type="datetime"></sa-td>
-					<sa-td name="人脸编号" prop="personId" type="num"></sa-td>
-					<sa-td name="创建时间" prop="createTime" ></sa-td>
-					<sa-td name="创建人编号" prop="createBy" ></sa-td>
-					<sa-td name="创建人名称" prop="createName" ></sa-td>
-					<sa-td name="更新时间" prop="updateTime" ></sa-td>
-					<sa-td name="更新人编号" prop="updateBy" ></sa-td>
-					<sa-td name="更新人名称" prop="updateName" ></sa-td>
-					<sa-td name="删除状态" prop="deleteStatus" type="switch" :jv="{0: '禁用', 1: '启用'}" @change="s => updateDeleteStatus(s.row)"></sa-td>
-					<el-table-column label="操作" fixed="right"  width="240px">
-						<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('tb-purchaser-edit')" class="c-btn" type="primary" icon="el-icon-edit" @click="update(s.row)">修改</el-button>
-							<el-button v-if="sa.isAuth('tb-purchaser-del')" class="c-btn" type="danger" icon="el-icon-delete" @click="del(s.row)">删除</el-button>
-						</template>
-					</el-table-column>
-				</el-table>
-				<!-- ------------- 分页 ------------- -->
-				<sa-item type="page" :curr.sync="p.pageNo" :size.sync="p.pageSize" :total="dataCount" @change="f5()"></sa-item>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-item": httpVueLoader('../../sa-frame/com/sa-item.vue'),  
-					"sa-td": httpVueLoader('../../sa-frame/com/sa-td.vue'),		
-				},
-				el: '.vue-box',
-				data: {
-					p: { // 查询参数  
-						id: '',		// 主键 
-						name: '',		// 名称 
-						legalPerson: '',		// 法人 
-						idCard: '',		// 身份证号 
-						contact: '',		// 手机号码 
-						bankNo: '',		// 银行编号 
-						bankName: '',		// 银行名称 
-						bankAccount: '',		// 银行账号 
-						dutyParagraph: '',		// 税号 
-						addressIds: '',		// 地址编号 
-						address: '',		// 地址 
-						judgeStatus: '',		// 审核状态(0=未通过,1=已通过) 
-						judgeContent: '',		// 审核意见 
-						personId: '',		// 人脸编号 
-						createTime: '',		// 创建时间 
-						createBy: '',		// 创建人编号 
-						createName: '',		// 创建人名称 
-						updateTime: '',		// 更新时间 
-						updateBy: '',		// 更新人编号 
-						updateName: '',		// 更新人名称 
-						deleteStatus: '',		// 删除状态(0=禁用,1=启用) 
-						pageNo: 1,		// 当前页 
-						pageSize: 10,	// 页大小 
-						sortType: 0		// 排序方式 
-					},
-					dataCount: 0,
-					dataList: [], // 数据集合 
-				},
-				methods: {
-					// 刷新
-					f5: function() {
-						sa.ajax('/TbPurchaser/getList', sa.removeNull(this.p), function(res) {
-							this.dataList = res.data; // 数据
-							this.dataCount = res.dataCount; // 数据总数 
-							sa.f5TableHeight();		// 刷新表格高度 
-						}.bind(this));
-					},
-					// 查看
-					get: function(data) {
-						sa.showIframe('数据详情', 'tb-purchaser-info.html?id=' + data.id, '1050px', '90%');
-					},
-					// 查看 - 根据选中的
-					getBySelect: function(data) {
-						var selection = this.$refs['data-table'].selection;
-						if(selection.length == 0) {
-							return sa.msg('请选择一条数据')
-						}
-						this.get(selection[0]);
-					},
-					// 修改
-					update: function(data) {
-						sa.showIframe('修改数据', 'tb-purchaser-add.html?id=' + data.id, '1000px', '90%');
-					},
-					// 新增
-					add: function(data) {
-						sa.showIframe('新增数据', 'tb-purchaser-add.html?id=-1', '1000px', '90%');
-					},
-					// 删除
-					del: function(data) {
-						sa.confirm('是否删除,此操作不可撤销', function() {
-							sa.ajax('/TbPurchaser/delete?id=' + data.id, function(res) {
-								sa.arrayDelete(this.dataList, data);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 批量删除
-					deleteByIds: function() {
-						// 获取选中元素的id列表 
-						let selection = this.$refs['data-table'].selection;
-						let ids = sa.getArrayField(selection, 'id');
-						if(selection.length == 0) {
-							return sa.msg('请至少选择一条数据')
-						}
-						// 提交删除 
-						sa.confirm('是否批量删除选中数据?此操作不可撤销', function() {
-							sa.ajax('/TbPurchaser/deleteByIds', {ids: ids.join(',')}, function(res) {
-								sa.arrayDelete(this.dataList, selection);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 改 - 删除状态(0=禁用,1=启用)
-					updateDeleteStatus: function(data) {
-						// 声明变量记录是否成功 
-						var isOk = false;	
-						var oldValue = data.deleteStatus;
-						var ajax = sa.ajax('/TbPurchaser/updateDeleteStatus', {id: data.id, value: data.deleteStatus}, function(res) {
-							isOk = true;
-							sa.msg('修改成功');
-						}.bind(this));
-						// 如果未能修改成功, 则回滚 
-						$.when(ajax).done(function() {
-							if(isOk == false) {
-								data.status = oldValue; 
-							}
-						})
-					},
-				},
-				created: function() {
-					this.f5();
-					sa.onInputEnter();
-				}
-			})
-		</script>
-	</body>
-</html>

+ 0 - 158
sp-service/sp-admin/sa-view/tb-shop/tb-shop-add.html

@@ -1,158 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.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;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box" :class="{sbot: id}" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-                    <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.enterpriseId" br></sa-item>
-						<sa-item type="text" name="创建者id" v-model="m.createBy" br></sa-item>
-						<sa-item type="text" name="创建者名称" v-model="m.createName" br></sa-item>
-						<sa-item type="text" name="更新者名称" v-model="m.updateName" br></sa-item>
-						<!-- date-create字段: m.createTime - 创建时间 -->
-						<sa-item type="text" name="更新者id" v-model="m.updateBy" br></sa-item>
-						<!-- date-update字段: m.updateTime - 更新时间 -->
-						<sa-item type="text" name="" v-model="m.tradeAreaId" br></sa-item>
-						<sa-item type="text" name="" v-model="m.tradeAreaName" br></sa-item>
-						<sa-item type="text" name="" v-model="m.address" br></sa-item>
-						<sa-item type="text" name="" v-model="m.addressIds" br></sa-item>
-						<sa-item type="text" name="名称" v-model="m.name" br></sa-item>
-						<sa-item type="text" name="编号" v-model="m.no" br></sa-item>
-						<sa-item type="enum" name="区域" v-model="m.area" :jv="{A区: 'A区', B区: 'B区', C区: 'C区'}" jtype="3" br></sa-item>
-						<sa-item type="enum" name="是否可用" v-model="m.status" :jv="{0: '否', 1: '是'}" jtype="3" br></sa-item>
-						<sa-item type="text" name="" v-model="m.remark" br></sa-item>
-						<sa-item type="text" name="" v-model="m.enterpriseName" 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>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="primary" @click="ok()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-        <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,		// 实体对象 
-				},
-				methods: {
-					// 创建一个 默认Model 
-					createModel: function() {
-						return {
-							id: '',		// 主键 
-							enterpriseId: '',		//  
-							createBy: '',		// 创建者id 
-							createName: '',		// 创建者名称 
-							updateName: '',		// 更新者名称 
-							// createTime: '',		// 创建时间 
-							updateBy: '',		// 更新者id 
-							// updateTime: '',		// 更新时间 
-							tradeAreaId: '',		//  
-							tradeAreaName: '',		//  
-							address: '',		//  
-							addressIds: '',		//  
-							name: '',		// 名称 
-							no: '',		// 编号 
-							area: '',		// 区域(A区=A区,B区=B区,C区=C区) 
-							status: '',		// 是否可用(0=否,1=是) 
-							remark: '',		//  
-							enterpriseName: '',		//  
-							// deleteStatus: '',		// 删除状态 
-						}
-					},
-					// 提交数据 
-					ok: function(){
-						// 表单校验 
-						let m = this.m;
-						// sa.checkNull(m.id, '请输入 [主键]');
-						sa.checkNull(m.enterpriseId, '请输入 []');
-						sa.checkNull(m.createBy, '请输入 [创建者id]');
-						sa.checkNull(m.createName, '请输入 [创建者名称]');
-						sa.checkNull(m.updateName, '请输入 [更新者名称]');
-						// sa.checkNull(m.createTime, '请输入 [创建时间]');
-						sa.checkNull(m.updateBy, '请输入 [更新者id]');
-						// sa.checkNull(m.updateTime, '请输入 [更新时间]');
-						sa.checkNull(m.tradeAreaId, '请输入 []');
-						sa.checkNull(m.tradeAreaName, '请输入 []');
-						sa.checkNull(m.address, '请输入 []');
-						sa.checkNull(m.addressIds, '请输入 []');
-						sa.checkNull(m.name, '请输入 [名称]');
-						sa.checkNull(m.no, '请输入 [编号]');
-						sa.checkNull(m.area, '请输入 [区域]');
-						sa.checkNull(m.status, '请输入 [是否可用]');
-						sa.checkNull(m.remark, '请输入 []');
-						sa.checkNull(m.enterpriseName, '请输入 []');
-						// sa.checkNull(m.deleteStatus, '请输入 [删除状态]');
-				
-						// 开始增加或修改
-						this.m.createTime = undefined;		// 不提交属性:创建时间
-						this.m.updateTime = undefined;		// 不提交属性:更新时间
-						if(this.id <= 0) {	// 添加
-							sa.ajax('/TbShop/add', m, function(res){
-								sa.alert('增加成功', this.clean); 
-							}.bind(this));
-						} else {	// 修改
-							sa.ajax('/TbShop/update', m, function(res){
-								sa.alert('修改成功', this.clean);
-							}.bind(this));
-						}
-					},
-					// 添加/修改 完成后的动作
-					clean: function() {
-						if(this.id == 0) {
-							this.m = this.createModel();
-						} else {
-							parent.app.f5();		// 刷新父页面列表
-							sa.closeCurrIframe();	// 关闭本页 
-						}
-					}
-				},
-				mounted: function(){
-					// 初始化数据 
-					if(this.id <= 0) {	
-						this.m = this.createModel();
-					} else {	
-						sa.ajax('/TbShop/getById?id=' + this.id, function(res) {
-							this.m = res.data;
-							if(res.data == null) {
-								sa.alert('未能查找到 id=' + this.id + " 详细数据");
-							}
-						}.bind(this))
-					}
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 77
sp-service/sp-admin/sa-view/tb-shop/tb-shop-info.html

@@ -1,77 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-		<style type="text/css">
-			.c-panel .c-label{width: 8em;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box sbot" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-					<el-form v-if="m">
-						<sa-info type="num" name="主键" :value="m.id" br></sa-info>
-						<sa-info name="" br>{{m.enterpriseId}}</sa-info>
-						<sa-info name="创建者id" br>{{m.createBy}}</sa-info>
-						<sa-info name="创建者名称" br>{{m.createName}}</sa-info>
-						<sa-info name="更新者名称" br>{{m.updateName}}</sa-info>
-						<sa-info type="datetime" name="创建时间" :value="m.createTime" br></sa-info>
-						<sa-info name="更新者id" br>{{m.updateBy}}</sa-info>
-						<sa-info type="datetime" name="更新时间" :value="m.updateTime" br></sa-info>
-						<sa-info name="" br>{{m.tradeAreaId}}</sa-info>
-						<sa-info name="" br>{{m.tradeAreaName}}</sa-info>
-						<sa-info name="" br>{{m.address}}</sa-info>
-						<sa-info name="" br>{{m.addressIds}}</sa-info>
-						<sa-info name="名称" br>{{m.name}}</sa-info>
-						<sa-info name="编号" br>{{m.no}}</sa-info>
-						<sa-info type="enum" name="区域" :value="m.area" :jv="{A区: 'A区', B区: 'B区', C区: 'C区'}" br></sa-info>
-						<sa-info type="enum" name="是否可用" :value="m.status" :jv="{0: '否', 1: '是'}" br></sa-info>
-						<sa-info name="" br>{{m.remark}}</sa-info>
-						<sa-info name="" br>{{m.enterpriseName}}</sa-info>
-					</el-form>
-				</div>
-			</div>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="success" @click="sa.closeCurrIframe()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-info": httpVueLoader('../../sa-frame/com/sa-info.vue')
-				},
-				el: '.vue-box',
-				data: {
-					id: sa.p('id', 0),	// 获取数据ID 
-					m: null
-				},
-				methods: {
-				},
-				mounted: function() {
-					sa.ajax('/TbShop/getById?id=' + this.id, function(res) {
-						this.m = res.data;
-						if(res.data == null) {
-							sa.alert('未能查找到 id=' + this.id + " 详细数据");
-						}
-					}.bind(this))
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 194
sp-service/sp-admin/sa-view/tb-shop/tb-shop-list.html

@@ -1,194 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<head>
-		<title>铺位-列表</title>
-		<meta charset="utf-8">
-		<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="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-	</head>
-	<body>
-		<div class="vue-box" style="display: none;" :style="'display: block;'">
-			<div class="c-panel">
-				<!-- ------------- 检索参数 ------------- -->
-				<div class="c-title">检索参数</div>
-				<el-form ref="form" :model='p' @submit.native.prevent>
-					<sa-item type="num" name="主键" v-model="p.id"></sa-item>
-					<sa-item type="text" name="" v-model="p.enterpriseId"></sa-item>
-					<sa-item type="text" name="创建者id" v-model="p.createBy"></sa-item>
-					<sa-item type="text" name="创建者名称" v-model="p.createName"></sa-item>
-					<sa-item type="text" name="更新者名称" v-model="p.updateName"></sa-item>
-					<sa-item type="text" name="更新者id" v-model="p.updateBy"></sa-item>
-					<sa-item type="text" name="" v-model="p.tradeAreaId"></sa-item>
-					<sa-item type="text" name="" v-model="p.tradeAreaName"></sa-item>
-					<sa-item type="text" name="" v-model="p.address"></sa-item>
-					<sa-item type="text" name="" v-model="p.addressIds"></sa-item>
-					<sa-item type="text" name="名称" v-model="p.name"></sa-item>
-					<sa-item type="text" name="编号" v-model="p.no"></sa-item>
-					<sa-item type="enum" name="区域" v-model="p.area" 
-						:jv="{A区: 'A区', B区: 'B区', C区: 'C区'}" jtype="2" def="不限"></sa-item>
-					<sa-item type="enum" name="是否可用" v-model="p.status" 
-						:jv="{0: '否', 1: '是'}" jtype="2" def="不限"></sa-item>
-					<sa-item type="text" name="" v-model="p.remark"></sa-item>
-					<sa-item type="text" name="" v-model="p.enterpriseName"></sa-item>
-					<!-- 未识别类型:删除状态: p.deleteStatus 请检查配置 -->
-					<el-button type="primary" icon="el-icon-search" @click="p.pageNo = 1; f5()">查询</el-button>
-				</el-form>
-				<div class="fast-btn">
-					<el-button v-if="sa.isAuth('tb-shop-add')" size="mini" type="primary" @click="add()">新增</el-button>
-					<el-button size="mini" type="success" @click="getBySelect()">查看</el-button>
-					<el-button size="mini" type="info" @click="sa.f5()">重置</el-button>
-				</div>
-				<!-- ------------- 数据列表 ------------- -->
-				<el-table class="data-table" ref="data-table" :data="dataList" >
-					<sa-td type="selection"></sa-td>
-					<sa-td name="主键" prop="id" type="num"></sa-td>
-					<sa-td name="" prop="enterpriseId" ></sa-td>
-					<sa-td name="创建者id" prop="createBy" ></sa-td>
-					<sa-td name="创建者名称" prop="createName" ></sa-td>
-					<sa-td name="更新者名称" prop="updateName" ></sa-td>
-					<sa-td name="创建时间" prop="createTime" type="datetime"></sa-td>
-					<sa-td name="更新者id" prop="updateBy" ></sa-td>
-					<sa-td name="更新时间" prop="updateTime" type="datetime"></sa-td>
-					<sa-td name="" prop="tradeAreaId" ></sa-td>
-					<sa-td name="" prop="tradeAreaName" ></sa-td>
-					<sa-td name="" prop="address" ></sa-td>
-					<sa-td name="" prop="addressIds" ></sa-td>
-					<sa-td name="名称" prop="name" ></sa-td>
-					<sa-td name="编号" prop="no" ></sa-td>
-					<sa-td name="区域" prop="area" type="enum" :jv="{A区: 'A区', B区: 'B区', C区: 'C区'}"></sa-td>
-					<sa-td name="是否可用" prop="status" type="switch" :jv="{0: '否', 1: '是'}" @change="s => updateStatus(s.row)"></sa-td>
-					<sa-td name="" prop="remark" ></sa-td>
-					<sa-td name="" prop="enterpriseName" ></sa-td>
-					<el-table-column label="操作" fixed="right"  width="240px">
-						<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('tb-shop-edit')" class="c-btn" type="primary" icon="el-icon-edit" @click="update(s.row)">修改</el-button>
-							<el-button v-if="sa.isAuth('tb-shop-del')" class="c-btn" type="danger" icon="el-icon-delete" @click="del(s.row)">删除</el-button>
-						</template>
-					</el-table-column>
-				</el-table>
-				<!-- ------------- 分页 ------------- -->
-				<sa-item type="page" :curr.sync="p.pageNo" :size.sync="p.pageSize" :total="dataCount" @change="f5()"></sa-item>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-item": httpVueLoader('../../sa-frame/com/sa-item.vue'),  
-					"sa-td": httpVueLoader('../../sa-frame/com/sa-td.vue'),		
-				},
-				el: '.vue-box',
-				data: {
-					p: { // 查询参数  
-						id: '',		// 主键 
-						enterpriseId: '',		//  
-						createBy: '',		// 创建者id 
-						createName: '',		// 创建者名称 
-						updateName: '',		// 更新者名称 
-						updateBy: '',		// 更新者id 
-						tradeAreaId: '',		//  
-						tradeAreaName: '',		//  
-						address: '',		//  
-						addressIds: '',		//  
-						name: '',		// 名称 
-						no: '',		// 编号 
-						area: '',		// 区域(A区=A区,B区=B区,C区=C区) 
-						status: '',		// 是否可用(0=否,1=是) 
-						remark: '',		//  
-						enterpriseName: '',		//  
-						pageNo: 1,		// 当前页 
-						pageSize: 10,	// 页大小 
-						sortType: 0		// 排序方式 
-					},
-					dataCount: 0,
-					dataList: [], // 数据集合 
-				},
-				methods: {
-					// 刷新
-					f5: function() {
-						sa.ajax('/TbShop/getList', sa.removeNull(this.p), function(res) {
-							this.dataList = res.data; // 数据
-							this.dataCount = res.dataCount; // 数据总数 
-							sa.f5TableHeight();		// 刷新表格高度 
-						}.bind(this));
-					},
-					// 查看
-					get: function(data) {
-						sa.showIframe('数据详情', 'tb-shop-info.html?id=' + data.id, '1050px', '90%');
-					},
-					// 查看 - 根据选中的
-					getBySelect: function(data) {
-						var selection = this.$refs['data-table'].selection;
-						if(selection.length == 0) {
-							return sa.msg('请选择一条数据')
-						}
-						this.get(selection[0]);
-					},
-					// 修改
-					update: function(data) {
-						sa.showIframe('修改数据', 'tb-shop-add.html?id=' + data.id, '1000px', '90%');
-					},
-					// 新增
-					add: function(data) {
-						sa.showIframe('新增数据', 'tb-shop-add.html?id=-1', '1000px', '90%');
-					},
-					// 删除
-					del: function(data) {
-						sa.confirm('是否删除,此操作不可撤销', function() {
-							sa.ajax('/TbShop/delete?id=' + data.id, function(res) {
-								sa.arrayDelete(this.dataList, data);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 批量删除
-					deleteByIds: function() {
-						// 获取选中元素的id列表 
-						let selection = this.$refs['data-table'].selection;
-						let ids = sa.getArrayField(selection, 'id');
-						if(selection.length == 0) {
-							return sa.msg('请至少选择一条数据')
-						}
-						// 提交删除 
-						sa.confirm('是否批量删除选中数据?此操作不可撤销', function() {
-							sa.ajax('/TbShop/deleteByIds', {ids: ids.join(',')}, function(res) {
-								sa.arrayDelete(this.dataList, selection);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 改 - 是否可用(0=否,1=是)
-					updateStatus: function(data) {
-						// 声明变量记录是否成功 
-						var isOk = false;	
-						var oldValue = data.status;
-						var ajax = sa.ajax('/TbShop/updateStatus', {id: data.id, value: data.status}, function(res) {
-							isOk = true;
-							sa.msg('修改成功');
-						}.bind(this));
-						// 如果未能修改成功, 则回滚 
-						$.when(ajax).done(function() {
-							if(isOk == false) {
-								data.status = oldValue; 
-							}
-						})
-					},
-				},
-				created: function() {
-					this.f5();
-					sa.onInputEnter();
-				}
-			})
-		</script>
-	</body>
-</html>

+ 0 - 138
sp-service/sp-admin/sa-view/tb-trade-area/tb-trade-area-add.html

@@ -1,138 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.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;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box" :class="{sbot: id}" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-                    <div class="c-title" v-if="id == 0">数据添加</div>
-					<div class="c-title" v-else>数据修改</div>
-					<el-form v-if="m">
-						<sa-item type="num" name="主键" v-model="m.id" br></sa-item>
-						<sa-item type="text" name="名称" v-model="m.name" br></sa-item>
-						<sa-item type="text" name="" v-model="m.addressIds" br></sa-item>
-						<sa-item type="text" name="地址详情" v-model="m.detailAddress" br></sa-item>
-						<sa-item type="text" name="地址" v-model="m.address" br></sa-item>
-						<!-- date-create字段: m.createTime - 创建时间 -->
-						<sa-item type="text" name="创建者id" v-model="m.createBy" br></sa-item>
-						<sa-item type="text" name="创建者名称" v-model="m.createName" br></sa-item>
-						<sa-item type="text" name="更新者id" v-model="m.updateBy" br></sa-item>
-						<sa-item type="text" name="更新者名称" v-model="m.updateName" br></sa-item>
-						<!-- date-update字段: m.updateTime - 更新时间 -->
-						<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>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="primary" @click="ok()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-        <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,		// 实体对象 
-				},
-				methods: {
-					// 创建一个 默认Model 
-					createModel: function() {
-						return {
-							id: '',		// 主键 
-							name: '',		// 名称 
-							addressIds: '',		//  
-							detailAddress: '',		// 地址详情 
-							address: '',		// 地址 
-							// createTime: '',		// 创建时间 
-							createBy: '',		// 创建者id 
-							createName: '',		// 创建者名称 
-							updateBy: '',		// 更新者id 
-							updateName: '',		// 更新者名称 
-							// updateTime: '',		// 更新时间 
-							// deleteStatus: '',		// 删除状态 
-						}
-					},
-					// 提交数据 
-					ok: function(){
-						// 表单校验 
-						let m = this.m;
-						sa.checkNull(m.id, '请输入 [主键]');
-						sa.checkNull(m.name, '请输入 [名称]');
-						sa.checkNull(m.addressIds, '请输入 []');
-						sa.checkNull(m.detailAddress, '请输入 [地址详情]');
-						sa.checkNull(m.address, '请输入 [地址]');
-						// sa.checkNull(m.createTime, '请输入 [创建时间]');
-						sa.checkNull(m.createBy, '请输入 [创建者id]');
-						sa.checkNull(m.createName, '请输入 [创建者名称]');
-						sa.checkNull(m.updateBy, '请输入 [更新者id]');
-						sa.checkNull(m.updateName, '请输入 [更新者名称]');
-						// sa.checkNull(m.updateTime, '请输入 [更新时间]');
-						// sa.checkNull(m.deleteStatus, '请输入 [删除状态]');
-				
-						// 开始增加或修改
-						this.m.createTime = undefined;		// 不提交属性:创建时间
-						this.m.updateTime = undefined;		// 不提交属性:更新时间
-						if(this.id <= 0) {	// 添加
-							sa.ajax('/TbTradeArea/add', m, function(res){
-								sa.alert('增加成功', this.clean); 
-							}.bind(this));
-						} else {	// 修改
-							sa.ajax('/TbTradeArea/update', m, function(res){
-								sa.alert('修改成功', this.clean);
-							}.bind(this));
-						}
-					},
-					// 添加/修改 完成后的动作
-					clean: function() {
-						if(this.id == 0) {
-							this.m = this.createModel();
-						} else {
-							parent.app.f5();		// 刷新父页面列表
-							sa.closeCurrIframe();	// 关闭本页 
-						}
-					}
-				},
-				mounted: function(){
-					// 初始化数据 
-					if(this.id <= 0) {	
-						this.m = this.createModel();
-					} else {	
-						sa.ajax('/TbTradeArea/getById?id=' + this.id, function(res) {
-							this.m = res.data;
-							if(res.data == null) {
-								sa.alert('未能查找到 id=' + this.id + " 详细数据");
-							}
-						}.bind(this))
-					}
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 70
sp-service/sp-admin/sa-view/tb-trade-area/tb-trade-area-info.html

@@ -1,70 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<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" />
-		<!-- 所有的 css js 资源 -->
-		<link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-		<style type="text/css">
-			.c-panel .c-label{width: 8em;}
-		</style>
-	</head>
-	<body>
-		<div class="vue-box sbot" style="display: none;" :style="'display: block;'">
-			<!-- ------- 内容部分 ------- -->
-			<div class="s-body">
-				<div class="c-panel">
-					<el-form v-if="m">
-						<sa-info type="num" name="主键" :value="m.id" br></sa-info>
-						<sa-info name="名称" br>{{m.name}}</sa-info>
-						<sa-info name="" br>{{m.addressIds}}</sa-info>
-						<sa-info name="地址详情" br>{{m.detailAddress}}</sa-info>
-						<sa-info name="地址" br>{{m.address}}</sa-info>
-						<sa-info type="datetime" name="创建时间" :value="m.createTime" br></sa-info>
-						<sa-info name="创建者id" br>{{m.createBy}}</sa-info>
-						<sa-info name="创建者名称" br>{{m.createName}}</sa-info>
-						<sa-info name="更新者id" br>{{m.updateBy}}</sa-info>
-						<sa-info name="更新者名称" br>{{m.updateName}}</sa-info>
-						<sa-info type="datetime" name="更新时间" :value="m.updateTime" br></sa-info>
-					</el-form>
-				</div>
-			</div>
-			<!-- ------- 底部按钮 ------- -->
-			<div class="s-foot">
-				<el-button type="success" @click="sa.closeCurrIframe()">确定</el-button>
-				<el-button @click="sa.closeCurrIframe()">取消</el-button>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-info": httpVueLoader('../../sa-frame/com/sa-info.vue')
-				},
-				el: '.vue-box',
-				data: {
-					id: sa.p('id', 0),	// 获取数据ID 
-					m: null
-				},
-				methods: {
-				},
-				mounted: function() {
-					sa.ajax('/TbTradeArea/getById?id=' + this.id, function(res) {
-						this.m = res.data;
-						if(res.data == null) {
-							sa.alert('未能查找到 id=' + this.id + " 详细数据");
-						}
-					}.bind(this))
-				}
-			})
-			
-		</script>
-	</body>
-</html>

+ 0 - 155
sp-service/sp-admin/sa-view/tb-trade-area/tb-trade-area-list.html

@@ -1,155 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<head>
-		<title>贸易区域-列表</title>
-		<meta charset="utf-8">
-		<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="../../static/kj/element-ui/theme-chalk/index.css">
-		<link rel="stylesheet" href="../../static/sa.css">
-		<script src="../../static/kj/vue.min.js"></script>
-		<script src="../../static/kj/element-ui/index.js"></script>
-		<script src="../../static/kj/httpVueLoader.js"></script>
-		<script src="../../static/kj/jquery.min.js"></script>
-		<script src="../../static/kj/layer/layer.js"></script>
-		<script src="../../static/sa.js"></script>
-	</head>
-	<body>
-		<div class="vue-box" style="display: none;" :style="'display: block;'">
-			<div class="c-panel">
-				<!-- ------------- 检索参数 ------------- -->
-				<div class="c-title">检索参数</div>
-				<el-form ref="form" :model='p' @submit.native.prevent>
-					<sa-item type="num" name="主键" v-model="p.id"></sa-item>
-					<sa-item type="text" name="名称" v-model="p.name"></sa-item>
-					<sa-item type="text" name="" v-model="p.addressIds"></sa-item>
-					<sa-item type="text" name="地址详情" v-model="p.detailAddress"></sa-item>
-					<sa-item type="text" name="地址" v-model="p.address"></sa-item>
-					<sa-item type="text" name="创建者id" v-model="p.createBy"></sa-item>
-					<sa-item type="text" name="创建者名称" v-model="p.createName"></sa-item>
-					<sa-item type="text" name="更新者id" v-model="p.updateBy"></sa-item>
-					<sa-item type="text" name="更新者名称" v-model="p.updateName"></sa-item>
-					<!-- 未识别类型:删除状态: p.deleteStatus 请检查配置 -->
-					<el-button type="primary" icon="el-icon-search" @click="p.pageNo = 1; f5()">查询</el-button>
-				</el-form>
-				<div class="fast-btn">
-					<el-button v-if="sa.isAuth('tb-trade-area-add')" size="mini" type="primary" @click="add()">新增</el-button>
-					<el-button size="mini" type="success" @click="getBySelect()">查看</el-button>
-					<el-button size="mini" type="info" @click="sa.f5()">重置</el-button>
-				</div>
-				<!-- ------------- 数据列表 ------------- -->
-				<el-table class="data-table" ref="data-table" :data="dataList" >
-					<sa-td type="selection"></sa-td>
-					<sa-td name="主键" prop="id" type="num"></sa-td>
-					<sa-td name="名称" prop="name" ></sa-td>
-					<sa-td name="" prop="addressIds" ></sa-td>
-					<sa-td name="地址详情" prop="detailAddress" ></sa-td>
-					<sa-td name="地址" prop="address" ></sa-td>
-					<sa-td name="创建时间" prop="createTime" type="datetime"></sa-td>
-					<sa-td name="创建者id" prop="createBy" ></sa-td>
-					<sa-td name="创建者名称" prop="createName" ></sa-td>
-					<sa-td name="更新者id" prop="updateBy" ></sa-td>
-					<sa-td name="更新者名称" prop="updateName" ></sa-td>
-					<sa-td name="更新时间" prop="updateTime" type="datetime"></sa-td>
-					<el-table-column label="操作" fixed="right"  width="240px">
-						<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('tb-trade-area-edit')" class="c-btn" type="primary" icon="el-icon-edit" @click="update(s.row)">修改</el-button>
-							<el-button v-if="sa.isAuth('tb-trade-area-del')" class="c-btn" type="danger" icon="el-icon-delete" @click="del(s.row)">删除</el-button>
-						</template>
-					</el-table-column>
-				</el-table>
-				<!-- ------------- 分页 ------------- -->
-				<sa-item type="page" :curr.sync="p.pageNo" :size.sync="p.pageSize" :total="dataCount" @change="f5()"></sa-item>
-			</div>
-		</div>
-		<script>
-			var app = new Vue({
-				components: {
-					"sa-item": httpVueLoader('../../sa-frame/com/sa-item.vue'),  
-					"sa-td": httpVueLoader('../../sa-frame/com/sa-td.vue'),		
-				},
-				el: '.vue-box',
-				data: {
-					p: { // 查询参数  
-						id: '',		// 主键 
-						name: '',		// 名称 
-						addressIds: '',		//  
-						detailAddress: '',		// 地址详情 
-						address: '',		// 地址 
-						createBy: '',		// 创建者id 
-						createName: '',		// 创建者名称 
-						updateBy: '',		// 更新者id 
-						updateName: '',		// 更新者名称 
-						pageNo: 1,		// 当前页 
-						pageSize: 10,	// 页大小 
-						sortType: 0		// 排序方式 
-					},
-					dataCount: 0,
-					dataList: [], // 数据集合 
-				},
-				methods: {
-					// 刷新
-					f5: function() {
-						sa.ajax('/TbTradeArea/getList', sa.removeNull(this.p), function(res) {
-							this.dataList = res.data; // 数据
-							this.dataCount = res.dataCount; // 数据总数 
-							sa.f5TableHeight();		// 刷新表格高度 
-						}.bind(this));
-					},
-					// 查看
-					get: function(data) {
-						sa.showIframe('数据详情', 'tb-trade-area-info.html?id=' + data.id, '1050px', '90%');
-					},
-					// 查看 - 根据选中的
-					getBySelect: function(data) {
-						var selection = this.$refs['data-table'].selection;
-						if(selection.length == 0) {
-							return sa.msg('请选择一条数据')
-						}
-						this.get(selection[0]);
-					},
-					// 修改
-					update: function(data) {
-						sa.showIframe('修改数据', 'tb-trade-area-add.html?id=' + data.id, '1000px', '90%');
-					},
-					// 新增
-					add: function(data) {
-						sa.showIframe('新增数据', 'tb-trade-area-add.html?id=-1', '1000px', '90%');
-					},
-					// 删除
-					del: function(data) {
-						sa.confirm('是否删除,此操作不可撤销', function() {
-							sa.ajax('/TbTradeArea/delete?id=' + data.id, function(res) {
-								sa.arrayDelete(this.dataList, data);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-					// 批量删除
-					deleteByIds: function() {
-						// 获取选中元素的id列表 
-						let selection = this.$refs['data-table'].selection;
-						let ids = sa.getArrayField(selection, 'id');
-						if(selection.length == 0) {
-							return sa.msg('请至少选择一条数据')
-						}
-						// 提交删除 
-						sa.confirm('是否批量删除选中数据?此操作不可撤销', function() {
-							sa.ajax('/TbTradeArea/deleteByIds', {ids: ids.join(',')}, function(res) {
-								sa.arrayDelete(this.dataList, selection);
-								sa.ok('删除成功');
-								sa.f5TableHeight();		// 刷新表格高度 
-							}.bind(this))
-						}.bind(this));
-					},
-				},
-				created: function() {
-					this.f5();
-					sa.onInputEnter();
-				}
-			})
-		</script>
-	</body>
-</html>

+ 3 - 0
sp-service/sp-admin/src/main/java/com/pj/project4sp/admin4login/SpAccAdminController.java

@@ -2,6 +2,8 @@ package com.pj.project4sp.admin4login;
 
 import javax.servlet.http.HttpServletRequest;
 
+import cn.dev33.satoken.annotation.SaCheckPermission;
+import com.pj.current.satoken.AuthConst;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
@@ -55,6 +57,7 @@ public class SpAccAdminController {
 	/** 管理员登录后台时需要返回的信息 */
 	@RequestMapping("fristOpenAdmin")
 	AjaxJson fristOpenAdmin(HttpServletRequest request) {
+		StpUtil.checkLogin();
 		// 当前admin
 		SpAdmin admin = SpAdminUtil.getCurrAdmin();
 		

+ 0 - 98
sp-service/transport-server/src/main/java/com/pj/project/tb_driver/TbDriverUtil.java

@@ -1,98 +0,0 @@
-//package com.pj.project.tb_driver;
-//
-//import org.springframework.beans.factory.annotation.Autowired;
-//import org.springframework.stereotype.Component;
-//
-//import com.pj.utils.sg.*;
-//import java.util.*;
-//
-///**
-// * 工具类:tb_driver -- 司机
-// * @author qzy
-// *
-// */
-//@Component
-//public class TbDriverUtil {
-//
-//
-//	/** 底层 Mapper 对象 */
-//	public static TbDriverMapper tbDriverMapper;
-//	@Autowired
-//	private void setTbDriverMapper(TbDriverMapper tbDriverMapper) {
-//		TbDriverUtil.tbDriverMapper = tbDriverMapper;
-//	}
-//
-//
-//	/**
-//	 * 将一个 TbDriver 对象进行进行数据完整性校验 (方便add/update等接口数据校验) [G]
-//	 */
-//	static void check(TbDriver t) {
-//		AjaxError.throwByIsNull(t.getId(), "[主键] 不能为空");		// 验证: 主键
-//		AjaxError.throwByIsNull(t.getName(), "[姓名] 不能为空");		// 验证: 姓名
-//		AjaxError.throwByIsNull(t.getAge(), "[年龄] 不能为空");		// 验证: 年龄
-//		AjaxError.throwByIsNull(t.getSex(), "[性别性别] 不能为空");		// 验证: 性别性别(1=男,2=女)
-//		AjaxError.throwByIsNull(t.getPhone(), "[手机号] 不能为空");		// 验证: 手机号
-//		AjaxError.throwByIsNull(t.getAddress(), "[联系地址] 不能为空");		// 验证: 联系地址
-//		AjaxError.throwByIsNull(t.getBankCode(), "[银行卡号] 不能为空");		// 验证: 银行卡号
-//		AjaxError.throwByIsNull(t.getBankName(), "[银行名称] 不能为空");		// 验证: 银行名称
-//		AjaxError.throwByIsNull(t.getIdCard(), "[身份证号] 不能为空");		// 验证: 身份证号
-//		AjaxError.throwByIsNull(t.getIdCardImg(), "[身份证照片] 不能为空");		// 验证: 身份证照片
-//		AjaxError.throwByIsNull(t.getDrivingLicenseId(), "[驾驶证号] 不能为空");		// 验证: 驾驶证号
-//		AjaxError.throwByIsNull(t.getDrivingLicenseImg(), "[驾驶证照片] 不能为空");		// 验证: 驾驶证照片
-//		AjaxError.throwByIsNull(t.getVehicleDrivingId(), "[车辆行驶证号] 不能为空");		// 验证: 车辆行驶证号
-//		AjaxError.throwByIsNull(t.getVehicleDrivingImg(), "[车辆行驶证照片] 不能为空");		// 验证: 车辆行驶证照片
-//		AjaxError.throwByIsNull(t.getVehicleImg(), "[车辆前脸照] 不能为空");		// 验证: 车辆前脸照
-//		AjaxError.throwByIsNull(t.getRegisterTime(), "[注册时间] 不能为空");		// 验证: 注册时间
-//		AjaxError.throwByIsNull(t.getIsLock(), "[是否被锁定] 不能为空");		// 验证: 是否被锁定
-//		AjaxError.throwByIsNull(t.getCreateBy(), "[创建者id] 不能为空");		// 验证: 创建者id
-//		AjaxError.throwByIsNull(t.getCreateName(), "[创建者名称] 不能为空");		// 验证: 创建者名称
-//		AjaxError.throwByIsNull(t.getCreateTime(), "[创建时间] 不能为空");		// 验证: 创建时间
-//		AjaxError.throwByIsNull(t.getUpdateBy(), "[更新者id] 不能为空");		// 验证: 更新者id
-//		AjaxError.throwByIsNull(t.getUpdateName(), "[更新者名称] 不能为空");		// 验证: 更新者名称
-//		AjaxError.throwByIsNull(t.getUpdateTime(), "[更新时间] 不能为空");		// 验证: 更新时间
-//		AjaxError.throwByIsNull(t.getAuditStatus(), "[审核状态] 不能为空");		// 验证: 审核状态(0=待审核,1=已通过,2=不通过)
-//		AjaxError.throwByIsNull(t.getAuditBy(), "[审核人] 不能为空");		// 验证: 审核人
-//		AjaxError.throwByIsNull(t.getAuditTime(), "[审核时间] 不能为空");		// 验证: 审核时间
-//		AjaxError.throwByIsNull(t.getNopassReason(), "[审核不通过原因] 不能为空");		// 验证: 审核不通过原因
-//	}
-//
-//	/**
-//	 * 获取一个TbDriver (方便复制代码用) [G]
-//	 */
-//	static TbDriver getTbDriver() {
-//		TbDriver t = new TbDriver();	// 声明对象
-//		t.setId(0L);		// 主键
-//		t.setName("");		// 姓名
-//		t.setAge(0);		// 年龄
-//		t.setSex("");		// 性别性别(1=男,2=女)
-//		t.setPhone("");		// 手机号
-//		t.setAddress("");		// 联系地址
-//		t.setBankCode("");		// 银行卡号
-//		t.setBankName("");		// 银行名称
-//		t.setIdCard("");		// 身份证号
-//		t.setIdCardImg("");		// 身份证照片
-//		t.setDrivingLicenseId("");		// 驾驶证号
-//		t.setDrivingLicenseImg("");		// 驾驶证照片
-//		t.setVehicleDrivingId("");		// 车辆行驶证号
-//		t.setVehicleDrivingImg("");		// 车辆行驶证照片
-//		t.setVehicleImg("");		// 车辆前脸照
-//		t.setRegisterTime("");		// 注册时间
-//		t.setIsLock("");		// 是否被锁定
-//		t.setCreateBy("");		// 创建者id
-//		t.setCreateName("");		// 创建者名称
-//		t.setCreateTime(new Date());		// 创建时间
-//		t.setUpdateBy("");		// 更新者id
-//		t.setUpdateName("");		// 更新者名称
-//		t.setUpdateTime(new Date());		// 更新时间
-//		t.setAuditStatus(0);		// 审核状态(0=待审核,1=已通过,2=不通过)
-//		t.setAuditBy("");		// 审核人
-//		t.setAuditTime("");		// 审核时间
-//		t.setNopassReason("");		// 审核不通过原因
-//		return t;
-//	}
-//
-//
-//
-//
-//
-//}

+ 0 - 82
sp-service/transport-server/src/main/java/com/pj/project/tb_vehicle/TbVehicleUtil.java

@@ -1,82 +0,0 @@
-//package com.pj.project.tb_vehicle;
-//
-//import org.springframework.beans.factory.annotation.Autowired;
-//import org.springframework.stereotype.Component;
-//
-//import com.pj.utils.sg.*;
-//import java.util.*;
-//
-///**
-// * 工具类:tb_vehicle -- 车辆
-// * @author loovi
-// *
-// */
-//@Component
-//public class TbVehicleUtil {
-//
-//
-//	/** 底层 Mapper 对象 */
-//	public static TbVehicleMapper tbVehicleMapper;
-//	@Autowired
-//	private void setTbVehicleMapper(TbVehicleMapper tbVehicleMapper) {
-//		TbVehicleUtil.tbVehicleMapper = tbVehicleMapper;
-//	}
-//
-//
-//	/**
-//	 * 将一个 TbVehicle 对象进行进行数据完整性校验 (方便add/update等接口数据校验) [G]
-//	 */
-//	static void check(TbVehicle t) {
-//		AjaxError.throwByIsNull(t.getId(), "[主键] 不能为空");		// 验证: 主键
-//		AjaxError.throwByIsNull(t.getVehiclePlate(), "[车牌] 不能为空");		// 验证: 车牌
-//		AjaxError.throwByIsNull(t.getOwner(), "[所有人] 不能为空");		// 验证: 所有人
-//		AjaxError.throwByIsNull(t.getVehicleType(), "[车辆类型] 不能为空");		// 验证: 车辆类型
-//		AjaxError.throwByIsNull(t.getParentId(), "[类型父id] 不能为空");		// 验证: 类型父id
-//		AjaxError.throwByIsNull(t.getVehicleSize(), "[车辆尺寸] 不能为空");		// 验证: 车辆尺寸
-//		AjaxError.throwByIsNull(t.getVehicleModel(), "[车辆品牌型号] 不能为空");		// 验证: 车辆品牌型号
-//		AjaxError.throwByIsNull(t.getVehicleLoad(), "[核定载质量] 不能为空");		// 验证: 核定载质量
-//		AjaxError.throwByIsNull(t.getVehicleWeight(), "[车辆自重] 不能为空");		// 验证: 车辆自重
-//		AjaxError.throwByIsNull(t.getCreateBy(), "[创建者id] 不能为空");		// 验证: 创建者id
-//		AjaxError.throwByIsNull(t.getCreateName(), "[创建者姓名] 不能为空");		// 验证: 创建者姓名
-//		AjaxError.throwByIsNull(t.getCreateTime(), "[创建时间] 不能为空");		// 验证: 创建时间
-//		AjaxError.throwByIsNull(t.getUpdateBy(), "[更新者id] 不能为空");		// 验证: 更新者id
-//		AjaxError.throwByIsNull(t.getUpdateName(), "[更新者名称] 不能为空");		// 验证: 更新者名称
-//		AjaxError.throwByIsNull(t.getUpdateTime(), "[更新时间] 不能为空");		// 验证: 更新时间
-//		AjaxError.throwByIsNull(t.getAuditStatus(), "[审核状态] 不能为空");		// 验证: 审核状态(0=待审核,1=已通过,2=不通过)
-//		AjaxError.throwByIsNull(t.getAuditBy(), "[审核人] 不能为空");		// 验证: 审核人
-//		AjaxError.throwByIsNull(t.getNopassReason(), "[审核不通过原因] 不能为空");		// 验证: 审核不通过原因
-//		AjaxError.throwByIsNull(t.getAuditTime(), "[审核时间] 不能为空");		// 验证: 审核时间
-//	}
-//
-//	/**
-//	 * 获取一个TbVehicle (方便复制代码用) [G]
-//	 */
-//	static TbVehicle getTbVehicle() {
-//		TbVehicle t = new TbVehicle();	// 声明对象
-//		t.setId(0L);		// 主键
-//		t.setVehiclePlate("");		// 车牌
-//		t.setOwner("");		// 所有人
-//		t.setVehicleType(0);		// 车辆类型
-//		t.setParentId(0);		// 类型父id
-//		t.setVehicleSize("");		// 车辆尺寸
-//		t.setVehicleModel("");		// 车辆品牌型号
-//		t.setVehicleLoad("");		// 核定载质量
-//		t.setVehicleWeight("");		// 车辆自重
-//		t.setCreateBy("");		// 创建者id
-//		t.setCreateName("");		// 创建者姓名
-//		t.setCreateTime(new Date());		// 创建时间
-//		t.setUpdateBy("");		// 更新者id
-//		t.setUpdateName("");		// 更新者名称
-//		t.setUpdateTime(new Date());		// 更新时间
-//		t.setAuditStatus(0);		// 审核状态(0=待审核,1=已通过,2=不通过)
-//		t.setAuditBy("");		// 审核人
-//		t.setNopassReason("");		// 审核不通过原因
-//		t.setAuditTime("");		// 审核时间
-//		return t;
-//	}
-//
-//
-//
-//
-//
-//}

+ 1 - 1
sp-service/transport-server/src/main/resources/bootstrap.yml

@@ -2,4 +2,4 @@ spring:
   # ????
   application.name: transport-server
   # ????
-  profiles.active: dev
+  profiles.active: dev