白名单接口添加,设备审核添加
diff --git a/src/main/resources/data.sql b/src/main/resources/data.sql
index 94e2492..e53e5c2 100644
--- a/src/main/resources/data.sql
+++ b/src/main/resources/data.sql
@@ -115,6 +115,14 @@
INSERT INTO "tb_function" (id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (17, NULL, 1, NULL, 'layui-icon-util', '/param/apiclientpara', '应用参数配置', 3, 10);
--INSERT INTO "tb_function" (id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (2, NULL, 1, NULL, '', '/custmeallist/index', '就餐名单管理', 3, 22);
--INSERT INTO "tb_function" (id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (7, NULL, 1, NULL, '', '/custmealcheck/index', '就餐名单审核', 4, 22);
+INSERT INTO "tb_function"("id", "createtime", "isleaf", "lastsaved", "menuicon", "menuurl", "name", "ordernum", "parentid") VALUES (8, NULL, 1, NULL, '', '/devicecheck/index', '设备审核', 2, 14);
+INSERT INTO "tb_function"("id", "createtime", "isleaf", "lastsaved", "menuicon", "menuurl", "name", "ordernum", "parentid") VALUES (13, NULL, 1, NULL, '', '/whitelist/index', '就餐白名单维护', 1, 11);
+INSERT INTO "tb_function"("id", "createtime", "isleaf", "lastsaved", "menuicon", "menuurl", "name", "ordernum", "parentid") VALUES (18, NULL, 1, NULL, '', '/whitelistcheck/index', '就餐白名单审核', 2, 11);
+INSERT INTO "tb_function"("id", "createtime", "isleaf", "lastsaved", "menuicon", "menuurl", "name", "ordernum", "parentid") VALUES (31, NULL, 1, NULL, '', '/whitelistbind/devbind', '就餐白名单设备绑定', 3, 11);
+INSERT INTO "tb_function" (id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (11, NULL, 0, NULL, 'layui-icon-util', '#', '就餐白名单管理', 7, -1);
+
+
+
INSERT INTO "tb_mealtype" (mealtype,endtime,lastsaved,mealname) VALUES ('dinner', '200000', '20190709102922', '晚餐');
@@ -129,163 +137,167 @@
INSERT INTO "tb_paytype_config" (paytype,configid,config_name,config_value) VALUES ('yktpay', 'orderurl', NULL, 'http://172.28.201.101:9116/epayapi/services/thirdparty/common/pay');
INSERT INTO "tb_paytype_config" (paytype,configid,config_name,config_value) VALUES ('yktpay', 'reverseurl', NULL, 'http://172.28.201.101:9116/epayapi/services/thirdparty/common/payreverse');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0b30009', 16, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0b3000a', 17, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0b3000b', 19, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0b4000c', 20, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0b4000d', 21, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0b4000f', 6, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0b40010', 7, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0b50011', 8, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0b50012', 9, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0b50013', 22, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0bd0015', 4, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0bd0016', 5, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0be0017', 10, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0be0018', 11, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0be0019', 12, NULL, '402890866be40f77016be4c848b9002f');
-
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0bf001a', 13, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0bf001b', 14, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0bf001c', 15, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0bf001e', 24, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0c00021', 23, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0c00022', 25, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0c00023', 31, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0c10024', 38, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0c10025', 42, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0c10026', 44, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0c10027', 86, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0c20029', 45, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0c2002a', 46, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0c2002b', 47, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0c3002c', 48, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0e3002d', 49, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0e3002f', 50, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0e30030', 52, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0e30031', 53, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c0e40033', 54, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1030034', 55, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1030035', 56, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1040036', 57, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1040038', 58, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1040039', 59, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c104003a', 60, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c105003b', 65, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c105003e', 61, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c105003f', 62, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1060040', 63, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1060041', 64, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1060042', 66, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1060043', 67, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1060044', 68, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1070047', 71, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1070048', 80, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1070049', 81, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c108004b', 70, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c108004c', 74, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c109004d', 75, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c109004e', 76, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c109004f', 77, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1090050', 78, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c1090052', 69, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c10a0053', 82, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c10a0054', 83, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c10a0055', 84, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c10a0058', 79, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c10b0059', 85, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c10b005a', 87, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c10b005c', 88, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c10b005d', 89, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c10c005e', 90, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c10c005f', 1, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c10c0060', 2, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c10c0061', 3, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('402890866bf9ea0d016bfde2c10c0062', 18, NULL, '402890866be40f77016be4c848b9002f');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('ff8080816aaf2ec3016aaf4edaac009f', 27, NULL, '2c9cab836a8af5d5016a8af6ece20000');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f56001d', 16, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f57001e', 17, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f57001f', 19, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f570020', 20, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f570021', 21, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f580023', 6, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f580024', 7, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f580025', 8, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f580026', 9, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f590027', 22, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f590029', 4, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f59002a', 5, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f59002b', 10, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f59002c', 11, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f5a002d', 12, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f5a002e', 13, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f5b002f', 14, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f5b0030', 15, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f5b0032', 24, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f5f0044', 23, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f5f0045', 25, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f5f0046', 31, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f5f0047', 38, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f5f0048', 42, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f600049', 44, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f60004a', 86, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f60004c', 45, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f60004d', 46, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f60004e', 47, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f61004f', 48, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f610050', 49, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f610052', 50, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f610053', 52, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f610054', 53, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f620056', 55, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f620057', 54, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f620058', 57, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f630059', 56, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f63005b', 59, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f63005c', 58, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f64005d', 60, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f64005e', 65, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f660066', 61, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f660067', 62, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f660068', 63, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f670069', 64, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f68006a', 66, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f68006b', 67, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f68006c', 68, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f68006e', 27, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f69006f', 32, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f690070', 28, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f690071', 29, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f690072', 30, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f6c007e', 71, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f6c007f', 80, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f6c0080', 81, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f6d0082', 77, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f6d0083', 78, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f6d0084', 76, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f6e0085', 74, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f6e0086', 70, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f6e0087', 75, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f6f0089', 82, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f6f008a', 83, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f70008b', 69, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f70008c', 84, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f720095', 85, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f720096', 79, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f720097', 87, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f720099', 89, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f72009a', 90, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission"(id,resid,role_func_id,roleid) VALUES ('297e0a7e6bff66af016bff683f73009b', 88, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-
-INSERT INTO "tb_permission" (id,resid,role_func_id,roleid) VALUES ('297e0a7e6cbc8fa4016cbc91eb14005f', 33, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission" (id,resid,role_func_id,roleid) VALUES ('297e0a7e6cbc8fa4016cbc91eb150061', 39, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission" (id,resid,role_func_id,roleid) VALUES ('297e0a7e6cbc8fa4016cbc91eb150062', 34, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission" (id,resid,role_func_id,roleid) VALUES ('297e0a7e6cbc8fa4016cbc91eb150063', 40, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission" (id,resid,role_func_id,roleid) VALUES ('297e0a7e6cbc8fa4016cbc91eb150064', 37, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission" (id,resid,role_func_id,roleid) VALUES ('297e0a7e6cbc8fa4016cbc91eb150065', 36, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission" (id,resid,role_func_id,roleid) VALUES ('297e0a7e6cbc8fa4016cbc91eb150066', 35, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-INSERT INTO "tb_permission" (id,resid,role_func_id,roleid) VALUES ('297e0a7e6cbca060016cbca3a983006a', 27, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0b30009', 16, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0b3000a', 17, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0b3000b', 19, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0b4000c', 20, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0b4000d', 21, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0b4000f', 6, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0b40010', 7, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0b50011', 8, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0b50012', 9, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0b50013', 22, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0bd0015', 4, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0bd0016', 5, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0be0017', 10, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0be0018', 11, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0be0019', 12, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0bf001a', 13, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0bf001b', 14, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0bf001c', 15, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0bf001e', 24, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0c00021', 23, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0c00022', 25, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0c00023', 31, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0c10024', 38, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0c10025', 42, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0c10026', 44, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0c10027', 86, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0c20029', 45, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0c2002a', 46, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0c2002b', 47, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0c3002c', 48, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0e3002d', 49, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0e3002f', 50, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0e30030', 52, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0e30031', 53, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c0e40033', 54, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1030034', 55, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1030035', 56, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1040036', 57, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1040038', 58, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1040039', 59, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c104003a', 60, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c105003b', 65, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c105003e', 61, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c105003f', 62, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1060040', 63, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1060041', 64, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1060042', 66, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1060043', 67, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1060044', 68, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1070047', 71, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1070048', 80, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1070049', 81, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c108004b', 70, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c108004c', 74, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c109004d', 75, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c109004e', 76, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c109004f', 77, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1090050', 78, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c1090052', 69, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c10a0053', 82, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c10a0054', 83, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c10a0055', 84, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c10a0058', 79, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c10b0059', 85, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c10b005a', 87, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c10b005c', 88, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c10b005d', 89, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c10c005e', 90, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c10c005f', 1, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c10c0060', 2, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c10c0061', 3, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('402890866bf9ea0d016bfde2c10c0062', 18, NULL, '402890866be40f77016be4c848b9002f');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('ff8080816aaf2ec3016aaf4edaac009f', 27, NULL, '2c9cab836a8af5d5016a8af6ece20000');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a330002', 16, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a330003', 17, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a340004', 19, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a340005', 20, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a340006', 21, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a340008', 6, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a350009', 7, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a35000a', 8, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a36000b', 9, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a36000c', 22, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a36000e', 4, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a37000f', 5, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a370010', 10, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a370011', 11, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a370012', 12, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a370013', 13, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a380014', 14, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a380015', 15, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a380017', 24, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a39001a', 23, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a39001b', 25, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a39001c', 31, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a39001d', 38, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a39001e', 42, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a39001f', 44, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a390020', 86, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3a0022', 45, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3a0023', 46, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3a0024', 47, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3a0025', 48, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3a0026', 49, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3b0028', 50, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3b0029', 52, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3b002a', 53, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3b002c', 54, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3b002d', 55, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3b002e', 56, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3c002f', 57, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3c0031', 58, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3c0032', 59, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3c0033', 60, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3c0034', 65, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3d0036', 1, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3d0037', 2, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3d003a', 91, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3e003c', 61, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3e003d', 62, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3e003e', 63, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3e003f', 64, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3e0040', 66, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3e0041', 67, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3f0042', 68, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a3f0045', 80, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a400046', 81, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a400047', 71, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a400049', 70, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a40004a', 74, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a41004b', 75, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a41004c', 76, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a41004d', 77, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a41004e', 78, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a410050', 82, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a410051', 83, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a420052', 84, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a420053', 69, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a420056', 79, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a420057', 85, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a420058', 87, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a43005a', 88, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a43005b', 89, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a43005c', 90, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a44005f', 28, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a440060', 29, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a440061', 30, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a450062', 32, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a460063', 33, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a460065', 34, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a460066', 35, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a460067', 36, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a460068', 37, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a470069', 39, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a47006a', 40, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a47006d', 51, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a47006e', 72, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a470070', 41, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a480071', 43, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a480073', 3, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a480074', 18, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
@@ -311,8 +323,8 @@
INSERT INTO "tb_resource" (id,code,function_id,name,uri) VALUES (23, '', 15, '查询', '/device/index');
INSERT INTO "tb_resource" (id,code,function_id,name,uri) VALUES (25, '', 15, '添加页面', '/device/loadadd');
INSERT INTO "tb_resource" (id,code,function_id,name,uri) VALUES (31, '', 15, '添加', '/device/add');
-INSERT INTO "tb_resource" (id,code,function_id,name,uri) VALUES (26, '', 11, '修改', '/param/sysparaupdate');
-INSERT INTO "tb_resource" (id,code,function_id,name,uri) VALUES (27, '', 11, '查询', '/param/syspara');
+--INSERT INTO "tb_resource" (id,code,function_id,name,uri) VALUES (26, '', 11, '修改', '/param/sysparaupdate');
+--INSERT INTO "tb_resource" (id,code,function_id,name,uri) VALUES (27, '', 11, '查询', '/param/syspara');
INSERT INTO "tb_resource" (id,code,function_id,name,uri) VALUES (28, '', 12, '查询', '/param/businesspara');
INSERT INTO "tb_resource" (id,code,function_id,name,uri) VALUES (29, '', 12, '删除', '/param/deletebusinesspara');
INSERT INTO "tb_resource" (id,code,function_id,name,uri) VALUES (30, '', 12, '修改', '/param/businessparaupdate');
@@ -374,6 +386,17 @@
--INSERT INTO "tb_resource" (id,code,function_id,name,uri) VALUES (92, '', 1, '添加', '/custtype/add');
--INSERT INTO "tb_resource" (id,code,function_id,name,uri) VALUES (93, '', 1, '修改', '/custtype/update');
--INSERT INTO "tb_resource" (id,code,function_id,name,uri) VALUES (94, '', 1, '删除', '/custtype/delete');
+INSERT INTO "tb_resource"("id", "code", "function_id", "name", "uri") VALUES (1, '', 8, '查询', '/devicecheck/index');
+INSERT INTO "tb_resource"("id", "code", "function_id", "name", "uri") VALUES (2, '', 8, '审核', '/devicecheck/docheckdevice');
+INSERT INTO "tb_resource"("id", "code", "function_id", "name", "uri") VALUES (3, '', 13, '查询', '/whitelist/index');
+INSERT INTO "tb_resource"("id", "code", "function_id", "name", "uri") VALUES (18, '', 13, '添加', '/whitelist/addwhitelist');
+INSERT INTO "tb_resource"("id", "code", "function_id", "name", "uri") VALUES (41, '', 18, '查询', '/whitelistcheck/checklist');
+INSERT INTO "tb_resource"("id", "code", "function_id", "name", "uri") VALUES (43, '', 18, '审核', '/whitelistcheck/load4checkdetail');
+INSERT INTO "tb_resource"("id", "code", "function_id", "name", "uri") VALUES (51, '', 31, '查询', '/whitelistbind/devbind');
+INSERT INTO "tb_resource"("id", "code", "function_id", "name", "uri") VALUES (72, '', 31, '绑定', '/whitelistbind/dobinddev');
+
+
+
INSERT INTO "tb_role" (roleid,createtime,editflag,lastsaved,rolecode,roledesc,rolename) VALUES ('d1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '20190101000000', 0, '', 'ROLE_ADMIN', '超级管理员', '超级管理员');
INSERT INTO "tb_role" (roleid,createtime,editflag,lastsaved,rolecode,roledesc,rolename) VALUES ('2c9cab836a8af5d5016a8af6ece20000', '20190506102639', 1, '', 'ROLE_ADMIN', '系统管理员', '系统管理员');
@@ -413,6 +436,13 @@
INSERT INTO "tb_role_function" (id,functionid,permissions,roleid) VALUES ('297e0a7e6bd65d7c016bd67401e10086', 28, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
INSERT INTO "tb_role_function" (id,functionid,permissions,roleid) VALUES ('297e0a7e6bd65d7c016bd67401e10087', 29, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
INSERT INTO "tb_role_function" (id,functionid,permissions,roleid) VALUES ('297e0a7e6bd65d7c016bd67401e2008b', 30, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_role_function"("id", "functionid", "permissions", "roleid") VALUES ('297ee5316d2438ba016d243a95b400d6', 13, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_role_function"("id", "functionid", "permissions", "roleid") VALUES ('297ee5316d2438ba016d243a95b500d9', 18, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_role_function"("id", "functionid", "permissions", "roleid") VALUES ('297ee5316d2438ba016d243a95b600dc', 31, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_role_function"("id", "functionid", "permissions", "roleid") VALUES ('297ee5316d2446b3016d2447fc74006a', 11, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_role_function"("id", "functionid", "permissions", "roleid") VALUES ('297ee5316d24bd0e016d24c02e250039', 8, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+
+
INSERT INTO "tb_shopsettlement" (shopsettlementno,operno,shopid,shopname) VALUES ('1', '1234', '2000000012', '测试商户');
INSERT INTO "tb_subject" (subjno,balflag,displayflag,endflag,fsubjno,opendate,subjlevel,subjname,subjtype) VALUES ('1001', 1, 'y', 1, NULL, 20190604, 1, '库存现金', 1);
diff --git a/src/main/resources/templates/restaurant/device/index.html b/src/main/resources/templates/restaurant/device/index.html
index a63f279..ed3ff48 100644
--- a/src/main/resources/templates/restaurant/device/index.html
+++ b/src/main/resources/templates/restaurant/device/index.html
@@ -46,6 +46,27 @@
{field: 'factoryid', sort: true, width: 200, title: '设备厂商'},
{field: 'state', title: '状态', sort: true, width: 100, templet: '#device-dev-tpl-state'},
{
+ field: 'checkstatus',
+ title: '审核状态',
+ align: 'center',
+ width: 120,
+ sort: true,
+ templet: function (d) {
+ if ('uncheck' == d.checkstatus) {
+ return '<span class="layui-badge layui-bg-orange">待审核</span>'
+ } else if ('normal' == d.checkstatus) {
+ return '<span class="layui-badge layui-bg-green">有效</span>';
+ } else if ('fail' == d.checkstatus) {
+ return '<span class="layui-badge layui-bg-gray">无效</span>';
+ } else if ('reject' == d.checkstatus) {
+ return '<span class="layui-badge">驳回</span>';
+ } else {
+ return d.status;
+ }
+ }
+ },
+
+ {
field: 'id', align: 'center', title: '操作', fixed: 'right', templet: function (item) {
return ' <a class="layui-btn layui-btn-xs" lay-event="device-edit"><i class="layui-icon layui-icon-edit"></i>编辑</a> ';
}
diff --git a/src/main/resources/templates/restaurant/devicecheck/index.html b/src/main/resources/templates/restaurant/devicecheck/index.html
new file mode 100644
index 0000000..76ba2b0
--- /dev/null
+++ b/src/main/resources/templates/restaurant/devicecheck/index.html
@@ -0,0 +1,152 @@
+<div class="layui-card">
+ <div class="layui-card-header">
+ <h2 class="header-title">设备审核</h2>
+ <span class="layui-breadcrumb pull-right">
+ <a href="#">设备管理</a>
+ <a><cite>设备审核</cite></a>
+ </span>
+ </div>
+ <div class="layui-card-body">
+ <div class="layui-form toolbar">
+ 搜索:
+ <select id="search-devicecheck-check-status">
+ <option value=""> 选择设备审核状态</option>
+ <option value="uncheck" selected> 待审核</option>
+ <option value="normal"> 有效</option>
+ <option value="fail"> 无效</option>
+ <option value="reject"> 驳回</option>
+ </select> 
+ <button id="btn-search-devicecheck-check" class="layui-btn icon-btn" data-type="search"><i
+ class="layui-icon"></i>搜索
+ </button>
+ </div>
+ <table class="layui-table" id="devicecheckTable" lay-filter="devicecheckTable-filter"></table>
+ </div>
+</div>
+
+
+<!-- 表格操作列 -->
+<script type="text/html" id="deviceCheckToolbar">
+ <div class="layui-btn-container">
+ <button class="layui-btn layui-btn-sm" lay-event="doChecked">审核通过</button>
+ <button class="layui-btn layui-btn-sm" lay-event="doReject">审核驳回</button>
+ </div>
+</script>
+
+<script>
+ layui.use(['form', 'table', 'layer', 'admin', 'element'], function () {
+ var form = layui.form;
+ var table = layui.table;
+ var admin = layui.admin;
+
+ form.render("select");
+
+ table.render({
+ elem: '#devicecheckTable',
+ url: '[[@{/devicecheck/list}]]',
+ page: true,
+ toolbar:'#deviceCheckToolbar',
+ where:{
+ status:'uncheck'
+ },
+ cols: [
+ [
+ {type:'checkbox'},
+ {field: 'id', title: '终端编号', sort: true},
+ {field: 'devphyid', sort: true, width: 200, title: '设备物理id'},
+ {field: 'shopid', sort: true, width: 200, title: '商户id'},
+ {field: 'factoryid', sort: true, width: 200, title: '设备厂商'},
+ {field: 'state', title: '状态', sort: true, width: 100, templet: '#device-dev-tpl-state'},
+ {
+ field: 'checkstatus',
+ title: '审核状态',
+ align: 'center',
+ width: 120,
+ sort: true,
+ templet: function (d) {
+ if ('uncheck' == d.checkstatus) {
+ return '<span class="layui-badge layui-bg-orange">待审核</span>'
+ } else if ('normal' == d.checkstatus) {
+ return '<span class="layui-badge layui-bg-green">有效</span>';
+ } else if ('fail' == d.checkstatus) {
+ return '<span class="layui-badge layui-bg-gray">无效</span>';
+ } else if ('reject' == d.checkstatus) {
+ return '<span class="layui-badge">驳回</span>';
+ } else {
+ return d.status;
+ }
+ }
+ },
+ ]
+ ]
+ });
+
+ // 搜索按钮点击事件
+ $('#btn-search-devicecheck-check').click(function () {
+ var state = $("#search-devicecheck-check-status").val();
+ table.reload('devicecheckTable', {where: {status: state}, page: {curr: 1}});
+ });
+
+ table.on('toolbar(devicecheckTable-filter)', function(obj){
+ var checkStatus = table.checkStatus(obj.config.id);
+ var data = checkStatus.data;
+ if(data.length<=0){
+ layer.msg("请选择需要审核的设备", {icon: 2});
+ return;
+ }
+ var status;
+ switch(obj.event){
+ case 'doChecked':
+ status='normal';
+ break;
+ case 'doReject':
+ status='reject';
+ break;
+ };
+ doDeviceCheck(data,status);
+ });
+ function doDeviceCheck(data,status){
+ layer.load(2);
+ var token = $("meta[name='_csrf_token']").attr("value");
+ var deviceids = [];
+ for (var i = 0; i < data.length; i++) {
+ deviceids.push(data[i].id);
+ }
+ console.log(status);
+ console.log(deviceids);
+ // debugger
+ $.ajax({
+ type: "POST",
+ dataType: "json",
+ url: '[[@{/devicecheck/docheckdevice}]]',
+ data: {
+ "status": status,
+ "datalist[]": deviceids,
+ "_csrf": token
+ },
+ success: function (result) {
+ layer.closeAll('loading');
+ if (result.code == 200) {
+ layer.msg(result.msg, {icon: 1});
+ table.reload('devicecheckTable'); //刷新表格
+ admin.finishPopupCenter();
+ } else if (result.code == 401) {
+ layer.msg(result.msg, {icon: 2, time: 1500}, function () {
+ location.replace('[[@{/login}]]');
+ }, 1000);
+ return;
+ } else {
+ console.log('err:' + result.code);
+ layer.msg(result.msg, {icon: 2});
+ }
+ },
+ error: function (err) {
+ admin.errorBack(err);
+ }
+ });
+
+ }
+
+
+ });
+</script>
\ No newline at end of file
diff --git a/src/main/resources/templates/restaurant/whitelist/checkdetail.html b/src/main/resources/templates/restaurant/whitelist/checkdetail.html
new file mode 100644
index 0000000..368ec94
--- /dev/null
+++ b/src/main/resources/templates/restaurant/whitelist/checkdetail.html
@@ -0,0 +1,94 @@
+<div id="whitelist-checkdetail-form" lay-filter="whitelist-checkdetail-form-filter" class="layui-form model-form" style="padding: 10px 25px;">
+ <input type="hidden" name="whitelistid" id="search-form-whitelist-checkdetail-whitelistid" th:value="${checkDetailwhitelistid}" />
+ <div class="layui-form-item">
+ <label class="layui-form-label" style="color: red;">审核意见</label>
+ <div class="layui-input-block">
+ <input type="radio" name="checktype" id="form-whitelist-checkdetail-pass" lay-filter="whitelist-checkdetail-filter" value="pass" title="通过" checked/>
+ <input type="radio" name="checktype" id="form-whitelist-checkdetail-reject" lay-filter="whitelist-checkdetail-filter" value="reject" title="驳回"/>
+ </div>
+ </div>
+
+ <div class="layui-form-item" id="form-whitelist-checkdetail-reason-div" style="display: none;">
+ <label class="layui-form-label">驳回原因</label>
+ <div class="layui-input-block">
+ <textarea name="reason" id="form-whitelist-checkdetail-reason" placeholder="请输入内容" class="layui-textarea"></textarea>
+ </div>
+ </div>
+
+ <div class="layui-form-item">
+ <table class="layui-table" id="whitelistCheckdetailTable" lay-filter="whitelistCheckdetailTable-filter"></table>
+ </div>
+
+ <div class="layui-form-item model-form-footer">
+ <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">取消</button>
+ <button class="layui-btn" lay-filter="whitelist-checkdetail-form-submit" lay-submit>确认</button>
+ </div>
+</div>
+
+<script>
+ layui.use(['layer', 'admin', 'form', 'table'], function () {
+ var layer = layui.layer;
+ var admin = layui.admin;
+ var form = layui.form;
+ var table = layui.table;
+
+ // 表单提交事件
+ form.render("radio");
+ form.on('radio(whitelist-checkdetail-filter)', function (data) {
+ if ('pass' == data.value) {
+ $("#form-whitelist-checkdetail-reason-div").hide();
+ } else {
+ $("#form-whitelist-checkdetail-reason").val('');
+ $("#form-whitelist-checkdetail-reason-div").show();
+ }
+ });
+
+ // 渲染表格
+ var renderDetailTable = function (obj) {
+ table.render({
+ elem: '#whitelistCheckdetailTable',
+ url: '[[@{whitelistcheck/load4checkdetaillist}]]',
+ where: obj,
+ page: true,
+ size: 'sm',
+ height: 384,
+ cols: [
+ [
+ {field: 'cardno', title: '市民卡号', align: 'center'},
+ {field: 'username', title: '姓名', align: 'center'}
+ ]
+ ]
+ });
+ }
+ renderDetailTable({whitelistid: $("#search-form-whitelist-checkdetail-whitelistid").val()});
+
+ form.on('submit(whitelist-checkdetail-form-submit)', function (data) {
+ var vdata = data.field;
+ console.log(vdata);
+ if ('reject' == vdata.checktype) {
+ if (undefined == vdata.reason || "" == vdata.reason || "" == $.trim(vdata.reason)) {
+ layer.msg("请填写驳回原因", {icon: 2, time: 1500});
+ return;
+ }
+ }
+ vdata["_csrf"] = $("meta[name='_csrf_token']").attr("value");
+ admin.go('[[@{/whitelistcheck/checkdetail}]]', vdata, function (result) {
+ layer.closeAll('loading');
+ if (result.code == 200) {
+ layer.msg(result.msg, {icon: 1});
+ admin.finishPopupCenter();
+ } else if (result.code == 401) {
+ layer.msg(result.msg, {icon: 2, time: 1500}, function () {
+ location.replace('[[@{/login}]]');
+ }, 1000);
+ return;
+ } else {
+ console.log('err:' + result.code);
+ layer.msg(result.msg, {icon: 2});
+ }
+ }, function (err) {
+ admin.errorBack(err);
+ })
+ });
+ });
+</script>
\ No newline at end of file
diff --git a/src/main/resources/templates/restaurant/whitelist/devbind.html b/src/main/resources/templates/restaurant/whitelist/devbind.html
new file mode 100644
index 0000000..3d8e000
--- /dev/null
+++ b/src/main/resources/templates/restaurant/whitelist/devbind.html
@@ -0,0 +1,120 @@
+<div class="layui-card">
+ <div class="layui-card-header">
+ <h2 class="header-title">白名单设备绑定</h2>
+ <span class="layui-breadcrumb pull-right">
+ <a href="#">白名单管理</a>
+ <a><cite>白名单设备绑定</cite></a>
+ </span>
+ </div>
+ <div class="layui-card-body">
+ <div class="layui-form toolbar">
+ 搜索:
+ <input id="search-whitelist-devbind-searchkey" class="layui-input search-input" maxlength="20" type="text" style="width: 300px;" placeholder="输入名称、设备名称或设备物理ID"/> 
+ <button id="btn-whitelist-devbind-search" class="layui-btn icon-btn" data-type="search"><i class="layui-icon"></i>搜索
+ </button>
+ <button id="btn-whitelist-devbind-add" class="layui-btn icon-btn" data-type="add"><i class="layui-icon"></i>新 增</button>
+ </div>
+ <table class="layui-table" id="whitelist-devbind-table" lay-filter="whitelist-devbind-table-filter"></table>
+ </div>
+</div>
+
+
+<!-- 表格操作列 -->
+<script type="text/html" id="whitelist-devbind-table-bar">
+ <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
+</script>
+
+<script>
+ layui.use(['form', 'table', 'layer', 'admin', 'element'], function () {
+ var form = layui.form;
+ var table = layui.table;
+ var admin = layui.admin;
+ // 渲染表格
+ table.render({
+ elem: '#whitelist-devbind-table',
+ url: '[[@{/whitelistbind/devbindlist}]]',
+ page: true,
+ cols: [
+ [
+ {field: 'deviceid', title: '设备编号', align: 'center', fixed: 'left', sort: true},
+ {field: 'devicename', title: '设备名称', align: 'center', fixed: 'left'},
+ {field: 'devphyid', title: '设备物理ID', align: 'center'},
+ {field: 'listname', title: '白名单名称', align: 'center', sort: true},
+ {
+ field: 'liststatus', title: '白名单状态', align: 'center', templet: function (d) {
+ if ('uncheck' == d.liststatus) {
+ return '<span class="layui-badge layui-bg-orange">待审核</span>'
+ } else if ('normal' == d.liststatus) {
+ return '<span class="layui-badge layui-bg-green">有效</span>';
+ } else if ('closed' == d.liststatus) {
+ return '<span class="layui-badge layui-bg-gray">无效</span>';
+ } else if ('reject' == d.liststatus) {
+ return '<span class="layui-badge">驳回</span>';
+ } else {
+ return d.liststatus;
+ }
+ }
+ },
+ {
+ field: 'createtime', title: '绑定时间', align: 'center', templet: function (d) {
+ return admin.formatDate(d.createtime);
+ }
+ },
+ {align: 'center', title: '操作', width: 100, toolbar: '#whitelist-devbind-table-bar', fixed: 'right'}
+ ]
+ ]
+ });
+
+ // 搜索按钮点击事件
+ $('#btn-whitelist-devbind-search').click(function () {
+ var searchkey = $("#search-whitelist-devbind-searchkey").val();
+ table.reload('whitelist-devbind-table', {where: {searchkey: searchkey}, page: {curr: 1}});
+ });
+
+ $('#btn-whitelist-devbind-add').click(function () {
+ admin.popupCenter({
+ title: "新增白名单绑定关系",
+ path: '[[@{/whitelistbind/load4binddev}]]',
+ area: '900px',
+ finish: function () {
+ table.reload('whitelist-devbind-table');
+ }
+ });
+ });
+
+ //监听单元格
+ table.on('tool(whitelist-devbind-table-filter)', function (obj) {
+ var data = obj.data;
+
+ if('del' == obj.event){
+ layer.confirm('确定要删除设备绑定的白名单【'+data.listname+'】吗?', {
+ btn: ['确定', '取消']
+ },function(){
+ layer.closeAll('dialog');
+ layer.load(2);
+ admin.go('[[@{/whitelistbind/deletedevbind}]]', {
+ id: data.id,
+ _csrf: $("meta[name='_csrf_token']").attr("value")
+ }, function (data) {
+ console.log(data.code);
+ layer.closeAll('loading');
+ if (data.code == 200) {
+ layer.msg(data.msg, {icon: 1});
+ } else if (data.code == 401) {
+ layer.msg(data.msg, {icon: 2, time: 1500}, function () {
+ location.replace('[[@{/login}]]');
+ }, 1000);
+ return;
+ } else {
+ layer.msg(data.msg, {icon: 2});
+ }
+ table.reload('whitelist-devbind-table');
+ }, function (err) {
+ admin.errorBack(err);
+ });
+ });
+ }
+ });
+
+ });
+</script>
\ No newline at end of file
diff --git a/src/main/resources/templates/restaurant/whitelist/whitelist.html b/src/main/resources/templates/restaurant/whitelist/whitelist.html
new file mode 100644
index 0000000..1e07511
--- /dev/null
+++ b/src/main/resources/templates/restaurant/whitelist/whitelist.html
@@ -0,0 +1,156 @@
+<div class="layui-card">
+ <div class="layui-card-header">
+ <h2 class="header-title">就餐白名单维护</h2>
+ <span class="layui-breadcrumb pull-right">
+ <a href="#">就餐白名单管理</a>
+ <a><cite>就餐白名单维护</cite></a>
+ </span>
+ </div>
+ <div class="layui-card-body">
+ <div class="layui-form toolbar">
+ 搜索:
+ <input id="search-whitelist-listname" class="layui-input search-input" maxlength="20" type="text" placeholder="输入名称查询"/> 
+ <button id="btn-search-whitelist" class="layui-btn icon-btn" data-type="search"><i class="layui-icon"></i>搜索
+ </button>
+ <button id="btn-whitelist-add" class="layui-btn icon-btn" data-type="add"><i class="layui-icon"></i>新 增</button>
+ </div>
+ <table class="layui-table" id="whitelistTable" lay-filter="whitelistTable-filter"></table>
+ </div>
+</div>
+
+
+<!-- 表格操作列 -->
+<script type="text/html" id="whitelist-table-bar">
+ <a class="layui-btn layui-btn layui-btn-xs" lay-event="detail">查看名单</a>
+ {{# if(d.status=='uncheck' || d.status=='reject'){ }}
+ <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
+ {{# } else if(d.status=='normal'){ }}
+ <a class="layui-btn layui-btn-warm layui-btn-xs" lay-event="closed">关闭</a>
+ {{# } }}
+</script>
+
+<script>
+ layui.use(['form', 'table', 'layer', 'admin', 'element'], function () {
+ var form = layui.form;
+ var table = layui.table;
+ var admin = layui.admin;
+ var element = layui.element;
+
+ form.render("select");
+ // 渲染表格
+ table.render({
+ elem: '#whitelistTable',
+ url: '[[@{/whitelist/list}]]',
+ page: true,
+ cols: [
+ [
+ {field: 'listname', title: '白名单名称', align: 'center', fixed: 'left' },
+ {
+ field: 'status', title: '状态', align: 'center', width: 120, sort: true, templet: function (d) {
+ if ('uncheck' == d.status) {
+ return '<span class="layui-badge layui-bg-orange">待审核</span>'
+ } else if ('normal' == d.status) {
+ return '<span class="layui-badge layui-bg-green">有效</span>';
+ } else if ('closed' == d.status) {
+ return '<span class="layui-badge layui-bg-gray">无效</span>';
+ } else if ('reject' == d.status) {
+ return '<span class="layui-badge">驳回</span>';
+ } else {
+ return d.status;
+ }
+ }
+ },
+ {field: 'remark', title: '备注', align: 'center'},
+ {align: 'center', title: '操作', width: 250, toolbar: '#whitelist-table-bar', fixed: 'right'}
+ ]
+ ]
+ });
+
+ // 搜索按钮点击事件
+ $('#btn-search-whitelist').click(function () {
+ var listname = $("#search-whitelist-listname").val();
+ table.reload('whitelistTable', {where: { listname: listname}, page: {curr: 1}});
+ });
+
+ $('#btn-whitelist-add').click(function () {
+ admin.popupCenter({
+ title: "新增就餐白名单",
+ path: '[[@{/whitelist/load4addwhitelist}]]',
+ area: '500px',
+ finish: function () {
+ table.reload('whitelistTable');
+ }
+ });
+ });
+
+ //监听单元格
+ table.on('tool(whitelistTable-filter)', function (obj) {
+ var data = obj.data;
+ if('del' == obj.event){
+ layer.confirm('确定直接删除就餐白名单【'+data.listname+'】吗?', {
+ btn: ['确定', '取消']
+ },function(){
+ layer.load(2);
+ admin.go('[[@{/whitelist/deletelist}]]', {
+ whitelistid: data.whitelistid,
+ _csrf: $("meta[name='_csrf_token']").attr("value")
+ }, function (data) {
+ console.log(data.code);
+ layer.closeAll('loading');
+ if (data.code == 200) {
+ layer.msg(data.msg, {icon: 1});
+ } else if (data.code == 401) {
+ layer.msg(data.msg, {icon: 2, time: 1500}, function () {
+ location.replace('[[@{/login}]]');
+ }, 1000);
+ return;
+ } else {
+ layer.msg(data.msg, {icon: 2});
+ }
+ table.reload('whitelistTable');
+ }, function (err) {
+ admin.errorBack(err)
+ });
+ });
+
+ }else if('closed' == obj.event){
+ layer.confirm('确定关闭就餐白名单【'+data.listname+'】吗?', {
+ btn: ['确定', '取消']
+ },function(){
+ layer.load(2);
+ admin.go('[[@{/whitelist/closelist}]]', {
+ whitelistid: data.whitelistid,
+ _csrf: $("meta[name='_csrf_token']").attr("value")
+ }, function (data) {
+ console.log(data.code);
+ layer.closeAll('loading');
+ if (data.code == 200) {
+ layer.msg(data.msg, {icon: 1});
+ } else if (data.code == 401) {
+ layer.msg(data.msg, {icon: 2, time: 1500}, function () {
+ location.replace('[[@{/login}]]');
+ }, 1000);
+ return;
+ } else {
+ layer.msg(data.msg, {icon: 2});
+ }
+ table.reload('whitelistTable');
+ }, function (err) {
+ admin.errorBack(err)
+ });
+ });
+
+ }else if('detail' == obj.event){
+ admin.popupCenter({
+ title: "查看名单",
+ path: '[[@{/whitelist/load4detail}]]?whitelistid=' + data.whitelistid,
+ area: '600px',
+ finish: function () {
+ table.reload('whitelistTable');
+ }
+ });
+ }
+ });
+
+ });
+</script>
\ No newline at end of file
diff --git a/src/main/resources/templates/restaurant/whitelist/whitelistbind.html b/src/main/resources/templates/restaurant/whitelist/whitelistbind.html
new file mode 100644
index 0000000..54caad0
--- /dev/null
+++ b/src/main/resources/templates/restaurant/whitelist/whitelistbind.html
@@ -0,0 +1,178 @@
+<div id="whitelist-devbind-form" lay-filter="whitelist-devbind-filter" class="layui-form model-form"
+ style="padding: 30px 25px 10px 25px;">
+ <div class="layui-form-item">
+ <div class="layui-input-inline" style="width: 450px;">
+ <label class="layui-form-label">白名单</label>
+ <div class="layui-input-block">
+ <select lay-verify="required" class="layui-select" id="whitelist-devbind-form-select-whitelistid">
+ <option th:each="rl:${whitelists}" th:value="${rl.whitelistid}"
+ th:text="${rl.listname}"></option>
+ </select> 
+ </div>
+ </div>
+ </div>
+
+ <div class="layui-form-item">
+ <label class="layui-form-label">选择设备</label>
+ <div class="layui-input-block" style="border: 1px solid #ddd;border-radius: 4px;padding: 10px;">
+ <div class="layui-card-body">
+ <div class="layui-form toolbar">
+ <div class="layui-input-inline">
+ <input id="search-whitelist-devbind-form-devgroupid" type="text"
+ lay-filter="search-whitelist-devbind-form-devgroupid-filter" autocomplete="off"
+ class="layui-input"/>
+ </div>
+ 设备:
+ <input id="search-whitelist-devbind-form-searchkey" type="text" class="layui-input search-input"
+ maxlength="20" style="width: 200px;" placeholder="输入设备名称或设备物理ID"/> 
+ <button id="btn-search-whitelist-devbind-form" class="layui-btn icon-btn"><i
+ class="layui-icon"></i>搜索
+ </button>
+ <button id="btn-reset-whitelist-devbind-form" class="layui-btn layui-btn-primary"><i
+ class="layui-icon"></i>清空
+ </button>
+
+ <table class="layui-table" id="whitelist-devbind-form-table"
+ lay-filter="whitelist-devbind-form-table-filter"></table>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="layui-form-item model-form-footer">
+ <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">取消</button>
+ <button class="layui-btn" lay-filter="whitelist-devbind-form-submit" lay-submit id="submitbtn">保存</button>
+ </div>
+</div>
+
+<style type="text/css" id="whitelist-devbind-form-css">
+ .layui-form-item .layui-form-checkbox[lay-skin=primary] {
+ margin-top: 0;
+ }
+</style>
+
+<script>
+ layui.use(['layer', 'table', 'admin', 'form', 'treeSelect'], function () {
+ var layer = layui.layer;
+ var admin = layui.admin;
+ var form = layui.form;
+ var table = layui.table;
+ var treeSelect = layui.treeSelect;
+ var $ = layui.$
+
+ form.render("select");
+ treeSelect.render({
+ elem: '#search-whitelist-devbind-form-devgroupid',
+ data: '[[@{/whitelistbind/devgrouptree}]]',
+ type: 'get',
+ placeholder: '选择设备组',
+ search: false,
+ style: {
+ folder: {
+ enable: false
+ },
+ line: {
+ enable: true
+ }
+ },
+ // 点击回调
+ click: function (d) {
+ var treeNode = d.current;
+ console.log(treeNode);
+ return true;
+ },
+ success: function (d) {
+ console.log(d); // 加载完成后的回调函数
+ }
+ });
+
+ // 渲染表格
+ table.render({
+ elem: '#whitelist-devbind-form-table',
+ url: '[[@{/whitelistbind/devsearch}]]',
+ size: 'sm',
+ height: 350,
+ page: false,
+ cols: [
+ [
+ {type: 'checkbox', style: "#whitelist-devbind-form-css", fixed: 'left'},
+ {field: 'deviceid', title: '设备编号', align: 'center'},
+ {field: 'devicename', title: '设备名称', align: 'center'},
+ {field: 'devphyid', title: '设备物理ID', align: 'center'},
+ {field: 'devgroupname', title: '设备组', align: 'center'}
+ ]
+ ]
+ });
+
+ // 搜索按钮点击事件
+ $('#btn-search-whitelist-devbind-form').click(function () {
+ var whitelistid = $("#whitelist-devbind-form-select-whitelistid").val();
+ var devgroupid = $("#search-whitelist-devbind-form-devgroupid").val();
+ var searchkey = $("#search-whitelist-devbind-form-searchkey").val();
+ table.reload('whitelist-devbind-form-table', {
+ where: {
+ devgroupid: devgroupid,
+ searchkey: searchkey,
+ whitelistid: whitelistid
+ }
+ });
+ });
+
+ $("#btn-reset-whitelist-devbind-form").click(function () {
+ $("#search-whitelist-devbind-form-devgroupid").val("");
+ $("#search-whitelist-devbind-form-searchkey").val("");
+ treeSelect.revokeNode('search-whitelist-devbind-form-devgroupid-filter');
+ });
+
+ form.on('submit(whitelist-devbind-form-submit)', function (el) {
+ var whitelistid = $("#whitelist-devbind-form-select-whitelistid").val();
+ var checkStatus = table.checkStatus('whitelist-devbind-form-table');
+ var data = checkStatus.data;
+ var deviceids = [];
+ if ("" == whitelistid) {
+ layer.msg("请选择白名单", {icon: 2, time: 1500});
+ return;
+ }
+ for (var i = 0; i < data.length; i++) {
+ deviceids.push(data[i].deviceid);
+ }
+ if (deviceids.length < 1) {
+ layer.msg("请选择设备", {icon: 2, time: 1500});
+ return;
+ }
+ debugger
+ console.log(whitelistid, deviceids);
+ layer.load(2);
+ var token = $("meta[name='_csrf_token']").attr("value");
+ $.ajax({
+ type: "POST",
+ dataType: "json",
+ url: '[[@{/whitelistbind/dobinddev}]]',
+ data: {
+ "whitelistid": whitelistid,
+ "deviceid[]": deviceids,
+ "_csrf": token
+ },
+ success: function (result) {
+ layer.closeAll('loading');
+ if (result.code == 200) {
+ layer.msg(result.msg, {icon: 1});
+ table.reload('whitelist-devbind-form-table'); //刷新表格
+ admin.finishPopupCenter();
+ } else if (result.code == 401) {
+ layer.msg(result.msg, {icon: 2, time: 1500}, function () {
+ location.replace('[[@{/login}]]');
+ }, 1000);
+ return;
+ } else {
+ console.log('err:' + result.code);
+ layer.msg(result.msg, {icon: 2});
+ }
+ },
+ error: function (err) {
+ admin.errorBack(err);
+ }
+ });
+ });
+ });
+</script>
\ No newline at end of file
diff --git a/src/main/resources/templates/restaurant/whitelist/whitelistcheck.html b/src/main/resources/templates/restaurant/whitelist/whitelistcheck.html
new file mode 100644
index 0000000..d0136ed
--- /dev/null
+++ b/src/main/resources/templates/restaurant/whitelist/whitelistcheck.html
@@ -0,0 +1,111 @@
+<div class="layui-card">
+ <div class="layui-card-header">
+ <h2 class="header-title">就餐白名单审核</h2>
+ <span class="layui-breadcrumb pull-right">
+ <a href="#">就餐白名单管理</a>
+ <a><cite>就餐白名单审核</cite></a>
+ </span>
+ </div>
+ <div class="layui-card-body">
+ <div class="layui-form toolbar">
+ 搜索:
+ <select id="search-whitelist-check-status">
+ <option value=""> 选择就餐白名单状态</option>
+ <option value="uncheck" selected> 待审核</option>
+ <option value="normal"> 有效</option>
+ <option value="closed"> 无效</option>
+ <option value="reject"> 驳回</option>
+ </select> 
+ <button id="btn-search-whitelist-check" class="layui-btn icon-btn" data-type="search"><i
+ class="layui-icon"></i>搜索
+ </button>
+ </div>
+ <table class="layui-table" id="whitelistcheckTable" lay-filter="whitelistcheckTable-filter"></table>
+ </div>
+</div>
+
+
+<!-- 表格操作列 -->
+<script type="text/html" id="whitelist-check-table-bar">
+ {{# if(d.status =='uncheck'){ }}
+ <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="check">审核</a>
+ {{# } else { }}
+ <a class="layui-btn layui-btn-disabled layui-btn-xs">审核</a>
+ {{# } }}
+</script>
+
+<script>
+ layui.use(['form', 'table', 'layer', 'admin', 'element'], function () {
+ var form = layui.form;
+ var table = layui.table;
+ var admin = layui.admin;
+
+ form.render("select");
+
+ var renderCheckRuleTable = function(obj){
+ table.render({
+ elem: '#whitelistcheckTable',
+ url: '[[@{/whitelistcheck/checklist}]]',
+ where: obj,
+ page: true,
+ cols: [
+ [
+ {field: 'listname', title: '餐白名單名称', align: 'center', fixed: 'left'},
+ {
+ field: 'status',
+ title: '状态',
+ align: 'center',
+ width: 120,
+ sort: true,
+ templet: function (d) {
+ if ('uncheck' == d.status) {
+ return '<span class="layui-badge layui-bg-orange">待审核</span>'
+ } else if ('normal' == d.status) {
+ return '<span class="layui-badge layui-bg-green">有效</span>';
+ } else if ('closed' == d.status) {
+ return '<span class="layui-badge layui-bg-gray">无效</span>';
+ } else if ('reject' == d.status) {
+ return '<span class="layui-badge">驳回</span>';
+ } else {
+ return d.status;
+ }
+ }
+ },
+ {
+ align: 'center',
+ title: '操作',
+ width: 250,
+ toolbar: '#whitelist-check-table-bar',
+ fixed: 'right'
+ }
+ ]
+ ]
+ });
+ }
+ renderCheckRuleTable({status: "uncheck"});
+
+ // 搜索按钮点击事件
+ $('#btn-search-whitelist-check').click(function () {
+ var state = $("#search-whitelist-check-status").val();
+ table.reload('whitelistcheckTable', {where: {status: state}, page: {curr: 1}});
+ });
+
+ //监听单元格
+ table.on('tool(whitelistcheckTable-filter)', function (obj) {
+ var data = obj.data;
+
+ if('check' == obj.event){
+ admin.popupCenter({
+ title: "查看名单",
+ path: '[[@{/whitelistcheck/load4checkdetail}]]?whitelistid=' + data.whitelistid,
+ area: '600px',
+ finish: function () {
+ table.reload('whitelistcheckTable', {where: {status: ""}, page: {curr: 1}});
+ }
+ });
+
+ }
+ });
+
+ });
+</script>
\ No newline at end of file
diff --git a/src/main/resources/templates/restaurant/whitelist/whitelistdetail.html b/src/main/resources/templates/restaurant/whitelist/whitelistdetail.html
new file mode 100644
index 0000000..ad45b92
--- /dev/null
+++ b/src/main/resources/templates/restaurant/whitelist/whitelistdetail.html
@@ -0,0 +1,48 @@
+<div class="layui-card">
+ <div class="layui-card-body">
+ <div class="layui-form toolbar">
+ 搜索:
+ <input type="hidden" id="search-whitelist-detail-whitelistid" th:value="${whitelistDetailid}" />
+ <input id="search-whitelist-detail-searchkey" class="layui-input search-input" maxlength="20" type="text" style="width: 200px;"
+ placeholder="输入市民卡号或姓名查询"/> 
+ <button id="btn-search-whitelist-detail" class="layui-btn icon-btn" data-type="search"><i
+ class="layui-icon"></i>搜索
+ </button>
+ </div>
+ <table class="layui-table" id="whitelistDetailTable" lay-filter="whitelistDetailTable-filter"></table>
+ </div>
+</div>
+<script>
+ layui.use(['form', 'table', 'layer', 'admin', 'element'], function () {
+ var form = layui.form;
+ var table = layui.table;
+ var admin = layui.admin;
+ var element = layui.element;
+
+ // 渲染表格
+ var renderDetailTable = function (obj) {
+ table.render({
+ elem: '#whitelistDetailTable',
+ url: '[[@{/whitelist/load4detaillist}]]',
+ where: obj,
+ page: true,
+ height: 472,
+ cols: [
+ [
+ {field: 'cardno', title: '市民卡号', align: 'center'},
+ {field: 'username', title: '姓名', align: 'center'}
+ ]
+ ]
+ });
+ }
+ renderDetailTable({whitelistid: $("#search-whitelist-detail-whitelistid").val()});
+
+ // 搜索按钮点击事件
+ $('#btn-search-whitelist-detail').click(function () {
+ var whitelistid = $("#search-whitelist-detail-whitelistid").val();
+ var searchkey = $("#search-whitelist-detail-searchkey").val();
+ table.reload('whitelistDetailTable', {where: {whitelistid: whitelistid, searchkey: searchkey}, page: {curr: 1}});
+ });
+
+ });
+</script>
\ No newline at end of file
diff --git a/src/main/resources/templates/restaurant/whitelist/whitelistform.html b/src/main/resources/templates/restaurant/whitelist/whitelistform.html
new file mode 100644
index 0000000..23e4133
--- /dev/null
+++ b/src/main/resources/templates/restaurant/whitelist/whitelistform.html
@@ -0,0 +1,136 @@
+<div id="whitelist-form" lay-filter="whitelist-form-filter" class="layui-form model-form" style="padding: 10px 25px;">
+
+ <div class="layui-form-item">
+ <label class="layui-form-label"><span style="color: red">* </span>白名单名称</label>
+ <div class="layui-input-block">
+ <input type="text" class="layui-input" name="listname" id="form-whitelist-listname" maxlength="20" style="width: 90%;"
+ autocomplete="off" lay-verify="required|listname"/>
+ </div>
+ </div>
+
+ <div class="layui-form-item">
+ <label class="layui-form-label"><span style="color: red">* </span>白名单对象</label>
+ <div class="layui-input-inline" style="width: auto;">
+ <button type="button" class="layui-btn upoadfile-btn" >
+ <i class="layui-icon"></i>上传名单
+ <input type="file" name="file" id="form-whitelist-records" style="width:auto;"/>
+ </button>
+ </div>
+ <div class="layui-input-inline" style="padding-top: 15px;">
+ <a th:href="@{/discountrule/downloadexcel}" style="color: blue;text-decoration: none;cursor: pointer;">下载名单模板</a>
+ </div>
+ </div>
+
+ <div class="layui-form-item model-form-footer">
+ <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">取消</button>
+ <button class="layui-btn" lay-filter="whitelist-form-submit" lay-submit id="submitbtn">保存</button>
+ </div>
+</div>
+
+<script>
+ layui.use(['layer', 'admin', 'form', 'laydate', 'upload'], function () {
+ var layer = layui.layer;
+ var admin = layui.admin;
+ var form = layui.form;
+ var laydate = layui.laydate;
+ var upload = layui.upload;
+
+
+ // 表单提交事件
+ form.verify({
+ "listname": function (e) {
+ if(""==e|| ""==$.trim(e)){
+ return "白名单名称不能为空";
+ }
+/*
+ var msg = "";
+ $.ajax({
+ type: "GET",
+ url: '[[@{/whitelist/checklistname}]]',
+ async: false, //同步提交。不设置则默认异步,异步的话,最后执行ajax
+ data: {
+ listname: e,
+ ruleid: $("#form-whitelist-ruleid").val()
+ },
+ success: function (result) {
+ if (result.code != 200) {
+ msg = result.msg;
+ }
+ },
+ error: function (error) {
+ msg = "请求服务器校验账号失败";
+ }
+ });
+ if (msg != "") {
+ return msg;
+ }*/
+ }
+ });
+
+ form.on('submit(whitelist-form-submit)', function (data) {
+ debugger
+ var token = $("meta[name='_csrf_token']").attr("value");
+ var vdata = data.field;
+
+ var formData = new FormData();
+ formData.append("listname", vdata.listname);
+
+ var flag = false;
+ var files = $('#form-whitelist-records').prop('files');
+ for (var i = 0; i < files.length; i++) {
+ var filename = files[i].name;
+ var suffix = filename.substr(filename.lastIndexOf("."));
+ if ('.xls' != suffix && '.xlsx' != suffix) {
+ layer.msg("请选择excel文件", {icon: 2, time: 1500});
+ return;
+ }
+ formData.append('file', files[i]);
+ flag = true;
+ }
+ if (!flag) {
+ layer.msg("请选择名单", {icon: 2, time: 1500});
+ return;
+ }
+ layer.load(2);
+ $.ajax({
+ type: "POST",
+ url: '[[@{/whitelist/addwhitelist}]]',
+ dataType: 'json',
+ processData:false,
+ contentType: false,
+ data: formData,
+ headers: {
+ 'Accept': 'application/json',
+ 'X-CSRF-TOKEN': token,
+ },
+ success: function (result) {
+ layer.closeAll('loading');
+ if (result.code == 200) {
+ layer.msg(result.msg, {icon: 1, time: 1500});
+ admin.finishPopupCenter();
+ } else if (result.code == 401) {
+ layer.msg(result.msg, {icon: 2, time: 1500}, function () {
+ location.replace('[[@{/login}]]');
+ }, 1000);
+ return;
+ } else if(result.code == 599){
+ //自定义错误
+ layer.open({
+ type: 0,
+ title: "错误信息",
+ icon: 2,
+ area: ['600px', '400px'],
+ content: result.msg
+ });
+
+ } else {
+ layer.msg(result.msg, {icon: 2, time: 1500});
+ }
+ },
+ error: function (err) {
+ admin.errorBack(err);
+ }
+ });
+ });
+ });
+</script>
\ No newline at end of file