Browse Source

修复各种BUG,优化考勤设置

347617796@qq.com 4 years ago
parent
commit
ed09adb62b

+ 20 - 20
new_file.json

@@ -23,7 +23,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6IldBVUxuM0RuSlBoeUZWeHMiLCJzdWIiOjEsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.D34IWIuJjyUe3n6Sg-OtoYyjN0VVFZuLwIoZ0QDFl18"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6IkRiUzlwcGU4Y3pCd2JSY3AiLCJzdWIiOjEsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ._iAm66OrQ8Jpusc0SeKsDT4XIrfrxhVOgE7BgK2MbCU"
 	}, {
 		"employee": {
 			"id": 2,
@@ -46,7 +46,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6IlFjbXpTM0NlZVRGU0pXcU4iLCJzdWIiOjIsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.5w9jMZkAu0mlIBxWccJjEXv28VY2RM6tp40eOnQRmio"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6InNFYVc0eDlmaXJGdDlJU0EiLCJzdWIiOjIsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.7o1wC4OOI4MX5WdP4AK5S5k8WoU_30Zjj6CfPU5bhBc"
 	}, {
 		"employee": {
 			"id": 3,
@@ -69,7 +69,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6InJTaFh1VmpYYzlTR1dhbDgiLCJzdWIiOjMsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.IclK48wdxe8SM_G7g7A0WkWAhxifSMQH3WypgWlKfAM"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6IjBqczVWUktLWEdtb3pPTzAiLCJzdWIiOjMsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.531UxwT6zdivQQBCKrJg7LywQa8U6MPpWDDLHM_UHgE"
 	}, {
 		"employee": {
 			"id": 4,
@@ -92,7 +92,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6ImJCUkpZV0xzZlFkRE12MlEiLCJzdWIiOjQsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.TWziZlrDEI7HxUvUN9n_NCz5MwstZRgNvj6E7XDAPY0"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6IlZUTThlV21HcGZqTXRCTDIiLCJzdWIiOjQsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.vqg9d80EphaUlhAf85SojwucpHUFIKJSSbq8kgEHVuE"
 	}, {
 		"employee": {
 			"id": 5,
@@ -115,7 +115,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6IjBIcEVpRmtGdWFQWHY3bUkiLCJzdWIiOjUsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.MBFcqGPwPbi5bMNyQnd5oOE-oSPBw0y2R2geycZYZks"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6IlI0Z3c4SjNkRTByQTNHeUYiLCJzdWIiOjUsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.OITt7HURf8nNw3Y3PVUAAQxsy_K7lw2smibdsIKDEyc"
 	}, {
 		"employee": {
 			"id": 6,
@@ -138,7 +138,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6IjF4QVkzZXJMbE0xR1pVRUIiLCJzdWIiOjYsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.QEXtUsJVyqv7z_49tIQrArRSLLjuWSmK45rkfGiEBeg"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6IkZFSFJtQm0zbnh1UVdsRUEiLCJzdWIiOjYsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.4YeMAJkHluK8p6ygjLAZxKWvTX_7GPnZvQUZJEPjx0k"
 	}, {
 		"employee": {
 			"id": 7,
@@ -161,7 +161,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6Im56T1Vmbk1NbVFzNlgwSWIiLCJzdWIiOjcsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.KQvrLdwRYP5Zyrj4RUZiRdki3pG7weKmtx_Jm7o4Js8"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6ImtEN1FoYUNnbU1odTBSazAiLCJzdWIiOjcsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.mj-fQ-zla8Xkqxaol-nirLkROrowhmz2Fh1Mhl0wHp0"
 	}, {
 		"employee": {
 			"id": 8,
@@ -184,7 +184,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6IkhxOGFqcDZaN2VWRVdGdnoiLCJzdWIiOjgsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.wPmeumLgSb_m0Km641hTELrr8j26PrdZRpgPe86T0K8"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6IjFNU0JrS2J4SVBxQnhCN2YiLCJzdWIiOjgsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.3gsiy4dRueBqdmiAIKg-1VSMo_coNbt_HJmX6o9r1uM"
 	}, {
 		"employee": {
 			"id": 9,
@@ -207,7 +207,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6IjdRb1cyWW5wWVNNNXBKVmQiLCJzdWIiOjksInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.S4Wf9Uge9ze0tTb5K9qP5C-Q1X7eTTnC2j4fkrKJO2w"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6IlFjaG9sTWhyR0ZxZ2ZpekYiLCJzdWIiOjksInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.xoPeWG4SvAvJq3PXYic8PxzeCWBlFQWLI7XZ9BNj2jg"
 	}, {
 		"employee": {
 			"id": 10,
@@ -230,7 +230,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6Imk5SXdLY2o3c3d5Z1gxSkgiLCJzdWIiOjEwLCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.1ThrTHnJwA-15TWH2TNH536jHka_zZi0m1yCnQz3Bac"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6IjJOcWhCM2VVN3RZQThVQ0EiLCJzdWIiOjEwLCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.wX1LajUDHcg9DUetC7m8f7scNRTff5pQV79pQcyx7H8"
 	}, {
 		"employee": {
 			"id": 11,
@@ -253,7 +253,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6IjNYdlFub2ZuV2xZWUdtTEIiLCJzdWIiOjExLCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.xkz8vXvuXgQwDU1LZWSkt-X_50gokDR2nDdB2_JPNxU"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6InhqdjFRSlFXUmJ6RjZ5eVkiLCJzdWIiOjExLCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.wgS3px6Zlu4KuHJ1qa1G56VdQXAlsYEQ4kSTo0bKxlM"
 	}, {
 		"employee": {
 			"id": 12,
@@ -276,7 +276,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6Ik5SZWxFQ1VqTld0bllqZjMiLCJzdWIiOjEyLCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.B9hWa4nHrwgJMXWolbRr9BLK6rxAGhce3I8jFWywLYg"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6IkltOEpFUG5XdXB4UndCMUwiLCJzdWIiOjEyLCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.yX5IYsoRqEC3Pil1ntkTRa3WjjZY7uyqqB-vCixn6cs"
 	}, {
 		"employee": {
 			"id": 13,
@@ -299,7 +299,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6InZJWDZPSmpHV3BneE5oZzkiLCJzdWIiOjEzLCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.vLuBnjk8n9atyibJfKDon_wYgeQZg1YK2YqMduUtiAg"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6ImVHME1vQUZrY1hCMFp2c3giLCJzdWIiOjEzLCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.kTsRL0ZMjKchb3jGyHoNC4Ve83kTTMBS__bbeM5yXII"
 	}, {
 		"employee": {
 			"id": 14,
@@ -322,7 +322,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6IkszaDlaTG1sR0RVeXloaEUiLCJzdWIiOjE0LCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.U-tHqDEx6f7f9h9AjnQfadkOPgF6lrdHH2uvw1Gf1YE"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6IkFwTjN2dWhENUIxTHN0TjgiLCJzdWIiOjE0LCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.CQDEH4qAdbLtRSqKO0INTgptHCCmO7NxfeMqBpLAEPU"
 	}, {
 		"employee": {
 			"id": 15,
@@ -345,7 +345,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6IkpNYk9CZ3Q4YkpsenhVT2IiLCJzdWIiOjE1LCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.8roZXOxYiWs1cr313yZ7-tYxzyQEwECjp1R6ugWCzRY"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6InhBRTdSYTFWQUg0U0t5VmgiLCJzdWIiOjE1LCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.HRefzAYuJ-LFeUbIAQQQEOmcBetoKNXxBNGivsb9aJc"
 	}, {
 		"employee": {
 			"id": 16,
@@ -368,7 +368,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6IktDTlR2SnBQcDAxam5KbjYiLCJzdWIiOjE2LCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.Xm009pXnuJ3PjcuSy2z848wi8g-al9Yw_mRpNF1gmhw"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6IldsazVXd05lSFRKNlBvcGgiLCJzdWIiOjE2LCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.Sxp-gBUw6NFzt1A4CVCHVLs_R_V_8AZNGtrha_SBWUU"
 	}, {
 		"employee": {
 			"id": 17,
@@ -391,7 +391,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6InBkZlVSc202TkR3RVpaWWwiLCJzdWIiOjE3LCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.KLdaMoQ6hsEYhz7F5SuAn0OCH07PBD2DQFuHSSVxpu0"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6IlBOTEs4ZFNsMVRtNFFTSlAiLCJzdWIiOjE3LCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.jZY6_Y1fChHj7dc9v0wT6IyEVHJ5gqOB0FtIsiSSVt0"
 	}, {
 		"employee": {
 			"id": 18,
@@ -414,7 +414,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6IlpQZmVWeU50NEU1eWdnWWsiLCJzdWIiOjE4LCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.R392geJSe_tcyXScT376PayBkxVFxbR4901Powicbpo"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6ImNHdktpWW56VlBUVGJrY2wiLCJzdWIiOjE4LCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.DBx7V4b1BVqG_m-skmPYDg9K4VZ93B_0GkJeLfVpVqg"
 	}, {
 		"employee": {
 			"id": 19,
@@ -437,7 +437,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6IlZlakY3VDVVV0M4bnJJMXoiLCJzdWIiOjE5LCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.xFU3dZXatbitKICLvU7hZCEF4Syxgq5FGDPFtx3zb7s"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6IjVrQUxjUmtCQnVUN0Y3SWkiLCJzdWIiOjE5LCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.ewuI5Rr9NYqDE4gDmfyTNTRtXD2BmUt9y9LDTIoZ33w"
 	}, {
 		"employee": {
 			"id": 20,
@@ -460,7 +460,7 @@
 			"delete_time": null,
 			"status_remark": "\u5728\u804c"
 		},
-		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6Im5jN2xkRmRCRlBaWDhhVEIiLCJzdWIiOjIwLCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.02YiGeYnIepDRpdydR9ilKSkXGv31V1c1InUbwpaUvo"
+		"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6ImdNMFdDRTR5TDVqbjhkdk4iLCJzdWIiOjIwLCJwcnYiOiJjYTY0ODlkNTBmMjQwN2E2NzgzMGU4MDkwZDAxNDg4MzU2ODU5NjJiIiwicm9sZSI6ImVtcGxveWVlIn0.rk4JGUsfHOenaFG5ffLftH5_wE7M6ihJCxK4FOImn6s"
 	}],
 	"refresh_token": ""
 }

+ 7 - 8
src/api/axios.js

@@ -19,10 +19,10 @@ const service = axios.create({
 
 service.interceptors.request.use(
 	config => {
-		if (getToken()) {
-			config.headers['A-Token'] = getToken()
-			// config.headers['A-Token'] = ' eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTU5OTQ1NzExNCwiZXhwIjoxNjAwMDU3MTE0LCJuYmYiOjE1OTk0NTcxMTQsImp0aSI6IlFjbXpTM0NlZVRGU0pXcU4iLCJzdWIiOjIsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.5w9jMZkAu0mlIBxWccJjEXv28VY2RM6tp40eOnQRmio'
-		}
+		// if (getToken()) {
+		// 	config.headers['A-Token'] = getToken()
+			config.headers['A-Token'] = ' eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC90ZXN0LWRpbmcuZzEwNy5jb21cL2FwaVwvdGVzdCIsImlhdCI6MTYwMDA2MzkyNywiZXhwIjoxNjAwNjYzOTI3LCJuYmYiOjE2MDAwNjM5MjcsImp0aSI6InNFYVc0eDlmaXJGdDlJU0EiLCJzdWIiOjIsInBydiI6ImNhNjQ4OWQ1MGYyNDA3YTY3ODMwZTgwOTBkMDE0ODgzNTY4NTk2MmIiLCJyb2xlIjoiZW1wbG95ZWUifQ.7o1wC4OOI4MX5WdP4AK5S5k8WoU_30Zjj6CfPU5bhBc'
+		// }
 		return config
 	},
 	error => {
@@ -47,22 +47,21 @@ service.interceptors.response.use(
 				message: response.data.msg,
 				type: 'error',
 			})
-			return Promise.reject('error')
+			return Promise.reject(response.data.msg)
 		}else{
 			Message({
 				message: response.data.msg,
 				type: 'error',
 			})
-			return Promise.reject('error')
+			return Promise.reject(response.data.msg)
 		}
-	
 	},
 	error => {
 		Message({
 			message: error.message,
 			type: 'error',
 		})
-		return Promise.reject(error)
+		return Promise.reject(error.message)
 	}
 )
 

BIN
src/assets/image/APP.png


+ 11 - 33
src/components/EmployeeSelector.vue

@@ -40,7 +40,7 @@
               </a>
               <div class="persons_box" style="padding-top:4px;">
                 <a class="employee_cell_a" href="javascript:void(0)" v-for="(item,index) in list" :key="index">
-                  <div class="employee_cell flex-box flex-v-ce" v-if="can_select_employee" @click.prevent.stop="select_employee(item)" v-show="employee_not_select.indexOf(item.id) < 0">
+                  <div class="employee_cell flex-box flex-v-ce" v-if="can_select_employee" @click.prevent.stop="select_employee(item)">
 					          <div class="employee_checkbox">
                       <el-checkbox v-model="item.checked"></el-checkbox>
                     </div>
@@ -111,12 +111,6 @@
         type: Boolean,
         default: true
       },
-      employee_not_select: {
-        type: Array,
-        default: () => {
-          return []
-        }
-      },
       dept_not_select: {
         type: Array,
         default: () => {
@@ -156,15 +150,15 @@
       },
       user_no_select:{//是否能选择创始人
         type: Boolean,
-        default: false
+        default: true
       },
       isChecKedAll:{
         type: Boolean,
         default: true
       },
-	  my_no_select:{//是否能选择自己
-	    type: Boolean,
-	    default: true
+	  my_no_select:{//当前设置人的id
+        type: Number,
+        default: 0
 	  },
       "grouping_Json":Array
     },
@@ -333,9 +327,6 @@
       },
       //选择员工
       select_employee(item) {
-        if (this.employee_not_select.indexOf(item.id) >= 0) {
-          return false
-        }
         if (item.checked) {
           item.checked = false
           this.employee_cancel(item)
@@ -430,9 +421,6 @@
         if (this.employee_list.length > 0) {
           return
         }
-        //  this.dept_selected_list=this.grouping_Json
-        //  console.log(this.$parent)
-
         this.$axios.get('/api/department/index', {
           params: {
             pid: this.pid,
@@ -448,6 +436,7 @@
           this.dept_list = res.data.data.list
           this.owner_id = res.data.data.owner_id
           this.company_info = res.data.data.company_info
+		  console.log(res.data.data.company_info);
           if (res.data.data.dept_info == null) {
             this.dept_name = JSON.parse(JSON.stringify(res.data.data.company_info.name))
             this.dept_id = 0
@@ -455,8 +444,6 @@
             this.dept_name = JSON.parse(JSON.stringify(res.data.data.dept_info.name))
             this.dept_id = res.data.data.dept_info.id
           }
-        }).catch((e) => {
-
         })
       },
      //获取员工详情
@@ -466,17 +453,10 @@
         var _this=this;
         var employee_selected_list=this.employee_selected_list;
 		
-		var my_id=this.$getUserData().id;
+		// var my_id=this.$getUserData().id;
 		
         if (this.employee_list.length > 0) {
           let list = this.employee_list
-
-          // for (let i in list) {
-          //   list[i]['checked'] = false
-          //   if (this.employee_selected.indexOf(list[i].id) >= 0) {
-          //     list[i]['checked'] = true
-          //   }
-          // }
           for (let i in list) {
             list[i]['letter_index'] = '#'
             if (this.$store.getters.employee_map[list[i].id]) {
@@ -512,11 +492,11 @@
           var employee=res.data.data.list||[];
 		  var userAll=[];
           employee.forEach((item,i)=>{
-			  if(this.not_user && item.is_creator == 1){
+			  if(!this.not_user && item.is_creator == 1){//过滤创始人
 				  return null;
-			  }else if(!this.my_no_select&&item.id==my_id){
+			  }else if(this.my_no_select==item.id){//过滤掉当前设置人
 				  return null;
-			  }else{
+			  }else if(item.is_official==1){
 				  userAll.push(item);
 			  }
           })
@@ -532,8 +512,6 @@
             this.checked = true
           }
           _this.list = userAll
-        }).catch((e) => {
-          _this.$message.error(e.data.msg);
         })
       }
     },
@@ -546,7 +524,7 @@
           this.pid = this.$route.query.pid
         }
         this.get_user_list();
-        this.get_dept_list()
+        // this.get_dept_list()
       }, 200)
 
     }

+ 21 - 30
src/components/publics/workpoints.vue

@@ -4,25 +4,18 @@
       <div class="initia_title">{{initia_head.initial_suername}}</div>
       <div class="initia_title_1">{{initia_head.initial_suertext}}</div>
       <div v-for="(v,i) in initia_arr" :key="i">
-        <el-form
-          :model="v.initia_input"
-          ref="v.initia_input"
-          :label-width="initia_head.initial_width"
-          class="demo-ruleForm"
-        >
-
-        <!-- 正则代码 -->
-          <!-- <el-form-item
-            style="margin: 20px 0 0 0 "
-            prop="age"
-            :rules="[
-              { required: true, message: '分值不能为空'},
-            ]"
-          > -->
-
-          <el-form-item
-            style="margin: 20px 0 0 0 "
-          >
+        <el-form  :model="v.initia_input"  ref="v.initia_input"  :label-width="initia_head.initial_width"  class="demo-ruleForm">
+		  <el-form-item  style="margin: 20px 0 0 0" v-if="v.type=='switch'">
+				  <template slot="label">
+					<span :style="'width:'+initia_head.initial_left">{{v.initialName}}</span>
+					<el-tooltip placement="top">
+					  <div slot="content" v-html="v.initial_text"></div>
+					  <span class="initia_mark" v-show="v.initia_mark">?</span>
+					</el-tooltip>
+				  </template>
+				<el-switch v-model="v.initia_input.age" :active-value="is" :inactive-value="no"></el-switch>
+		  </el-form-item>	
+          <el-form-item  style="margin: 20px 0 0 0 " v-else>
             <template slot="label">
               <span :style="'width:'+initia_head.initial_left">{{v.initialName}}</span>
               <el-tooltip placement="top">
@@ -30,15 +23,8 @@
                 <span class="initia_mark" v-show="v.initia_mark">?</span>
               </el-tooltip>
             </template>
-            <el-input
-              type="age"
-              v-model="v.initia_input.age"
-              autocomplete="off"
-              class="nitia_list_input"
-              placeholder="请输入分值"
-              oninput="if(this.value=='00'){this.value='0';}else{this.value=this.value.replace(/[^0-9]/g,'')}"
-            ></el-input>
-          </el-form-item>
+            <el-input type="age" v-model="v.initia_input.age"  autocomplete="off"  class="nitia_list_input"  placeholder="请输入分值" oninput="if(this.value=='00'){this.value='0';}else{this.value=this.value.replace(/[^0-9]/g,'')}"></el-input>
+		  </el-form-item>
         </el-form>
       </div>
 
@@ -58,9 +44,14 @@ export default {
     initia_head: Object,
   },
   data() {
-    return {};
+    return {
+		is: 1,
+		no: 0,
+	};
+  },
+  created() {
+	  // console.log(this.initia_arr)
   },
-  created() {},
   mounted() {},
   methods: {
     save() {

+ 10 - 8
src/index.vue

@@ -45,13 +45,13 @@ export default {
 		this.routers = this.$router.options.routes[0].children;
 	},
 	mounted() {
-		var url = window.location.href;
-		var str = this.GetRequest(url).corpId || '123';
-		var corpId = str.split('#')[0];
-		if (corpId) {
-			this.login(corpId);
+		// var url = window.location.href;
+		// var str = this.GetRequest(url).corpId || '123';
+		// var corpId = str.split('#')[0];
+		// if (corpId) {
+		// 	this.login(corpId);
 			this.getTypes();
-		}
+		// }
 	},
 	methods: {
 		tz(){},
@@ -66,8 +66,10 @@ export default {
 						if (res.data.code == 1) {
 							var { token, user } = res.data.data;
 							user.employee_detail.role_list.forEach(item=>{
-								if(item.name=='admin'||item.name=='creator'||item.name=='point_manager'){
-									is=true;
+								if(user.is_official==1){
+									if(item.name=='admin'||item.name=='creator'||item.name=='point_manager'){
+										is=true;
+									}
 								}
 							})
 							if(is){

+ 21 - 2
src/noAccess.vue

@@ -1,13 +1,32 @@
 <template>
-	<div class="noData">您不是相关管理人员,请联系管理员给与对应管理权限</div>
+	<div class="noData flex-box flex-center-center">
+		<img  src="./assets/image/APP.png" class="appImg"/>
+		<div>
+			<img src="./assets/image/nodata.png" class="codeImg"/>
+			<div  style="margin: 10px 0;color: #999;">钉钉扫码体验</div>
+			<div>您当前的角色无权登录电脑端管理后台操作<br/>请打开手机版钉钉直接扫码使用</div>
+		</div>
+	</div>
 </template>
 
 <script>
 </script>
 
 <style scoped="scoped">
+	.appImg{
+		width: 280px;
+		margin-right: 30px;
+	}
 	.noData{
 		text-align: center;
-		margin-top: 25%;
+		position: fixed;
+		left: 0;
+		top: 0;
+		right: 0;
+		bottom: 0;
+	}
+	.codeImg{
+		width: 200px;
+		height: 200px;
 	}
 </style>

+ 50 - 57
src/views/check.vue

@@ -21,70 +21,77 @@ export default {
           initialName: "月度全勤,每月加分",
           initia_mark: false,
           initia_input: {
-            age: "",
+            age: "0",
           },
         },
         {
           initialName: "正常打卡,每次加分",
           initia_mark: false,
           initia_input: {
-            age: "",
+            age: "0",
           },
         },
         {
           initialName: "上下班缺卡,每次扣分",
           initia_mark: false,
           initia_input: {
-            age: "",
+            age: "0",
           },
         },
         {
           initialName: "旷工缺席,每次扣分",
           initia_mark: false,
           initia_input: {
-            age: "",
+            age: "0",
           },
         },
         {
           initialName: "上班迟到,每次扣分",
           initia_mark: false,
           initia_input: {
-            age: "",
+            age: "0",
           },
         },
-        // { initialName: "严重迟到,每次扣分", initia_mark: false, initia_input: "" },
         {
           initialName: "下班早退,每次扣分",
           initia_mark: false,
           initia_input: {
-            age: "",
+            age: "0",
           },
         },
         {
           initialName: "加班,每小时加分",
           initia_mark: false,
           initia_input: {
-            age: "",
+            age: "0",
           },
         },
         {
           initialName: "请假,每小时扣分",
           initia_mark: false,
           initia_input: {
-            age: "",
+            age: "0",
           },
         },
+		{
+		  initialName: "是否启用考勤设置",
+		  initia_mark: false,
+		  type:'switch',
+		  initia_input: {
+		    age: "0",
+		  },
+		},
       ],
-      obj: {
-        month_full_ad: "", //>=0
-        normal: "", //>=0
-        no_sign: "", //<=0
-        absent: "", //<=0
-        on_duty_late: "", //<=0
-        off_duty_early: "", //<=0
-        ot_per_hour: "", //>=0
-        leave_per_hour: "", //<=0
-      },
+	     obj: {
+	          month_full_ad: "", //>=0
+	          normal: "", //>=0
+	          no_sign: "", //<=0
+	          absent: "", //<=0
+	          on_duty_late: "", //<=0
+	          off_duty_early: "", //<=0
+	          ot_per_hour: "", //>=0
+	          leave_per_hour: "", //<=0
+	        },
     };
   },
   components: {
@@ -96,55 +103,41 @@ export default {
   },
   methods: {
     initia(ok) {
-      this.loading = true;
-      let objs = this.obj;
-      objs.month_full_ad = +ok[0].sj; //>=0
-      objs.normal = +ok[1].sj; //>=0
-      objs.no_sign = -ok[2].sj; //<=0
-      objs.absent = -ok[3].sj; //<=0
-      objs.on_duty_late = -ok[4].sj; //<=0
-      objs.off_duty_early = -ok[5].sj; //<=0
-      objs.ot_per_hour = +ok[6].sj; //>=0
-      objs.leave_per_hour = -ok[7].sj; //<=0
-      this.$axios
-        .post("api/ad/update", this.obj)
-        .then((res) => {
+      var objs = {};
+      objs.month_full_ad =ok[0].sj; //>=0
+      objs.normal = ok[1].sj; //>=0
+      objs.no_sign = ok[2].sj; //<=0
+      objs.absent = ok[3].sj; //<=0
+      objs.on_duty_late = ok[4].sj; //<=0
+      objs.off_duty_early = ok[5].sj; //<=0
+      objs.ot_per_hour = ok[6].sj; //>=0
+      objs.leave_per_hour = ok[7].sj; //<=0
+	  objs.enable = ok[8].sj; 
+      this.$axios.post("api/ad/update",objs).then((res) => {
           if (res.data.code == 1) {
-            this.loading = false;
             this.$message({
               message: res.data.msg,
               type: "success",
             });
-          } else {
-            this.$message.error("提交失败");
           }
-        })
-        .catch((err) => {
-          this.loading = false;
-          console.log(err);
-        });
+        }).finally(err=>{
+			this.loading = false;
+		});
     },
     cheak_ax() {
       this.loading = true;
       this.$axios.get("api/ad/info").then((res) => {
         this.loading = false;
-        var arr = [];
-        for (let i in res.data.data.config) {
-          arr.push(res.data.data.config[i]);
-        }
-
-        // 循环赋值,后端返回顺序不对不能用
-        // for (let i = 0; i < this.initia_arr.length; i++) {
-        //   this.initia_arr[i].initia_input.age = Math.abs(arr[i]);
-        // }
-        this.initia_arr[0].initia_input.age = Math.abs(arr[5]);
-        this.initia_arr[1].initia_input.age = Math.abs(arr[1]);
-        this.initia_arr[2].initia_input.age = Math.abs(arr[2]);
-        this.initia_arr[3].initia_input.age = Math.abs(arr[0]);
-        this.initia_arr[4].initia_input.age = Math.abs(arr[4]);
-        this.initia_arr[5].initia_input.age = Math.abs(arr[7]);
-        this.initia_arr[6].initia_input.age = Math.abs(arr[3]);
-        this.initia_arr[7].initia_input.age = Math.abs(arr[6]);
+        var arr = [],config=res.data.data;
+        this.initia_arr[0].initia_input.age =config.month_full_ad? config.month_full_ad:0
+        this.initia_arr[1].initia_input.age =config.normal? config.normal:0
+        this.initia_arr[2].initia_input.age =config.no_sign? config.no_sign:0
+        this.initia_arr[3].initia_input.age =config.absent? config.absent:0
+        this.initia_arr[4].initia_input.age =config.on_duty_late? config.on_duty_late:0
+        this.initia_arr[5].initia_input.age =config.off_duty_early? config.off_duty_early:0
+        this.initia_arr[6].initia_input.age =config.ot_per_hour? config.ot_per_hour:0
+		this.initia_arr[7].initia_input.age =config.leave_per_hour? config.leave_per_hour:0
+		this.initia_arr[8].initia_input.age =config.enable? config.enable:0
       });
     },
   },

+ 82 - 22
src/views/framework.vue

@@ -1,14 +1,14 @@
 <template>
 	<div class="all-box">
 		<!-- 头部提示 -->
-		<div class="top-msg margin-bottom">
+		<div class="top-msg" style="margin-bottom: 10px;">
 			<div>
 				当前组织架构和角色同过钉钉同步,上次同步时间
 				<span v-if="info.sync_time">{{ info.sync_time }}</span>
 				<span v-else>暂未同步</span>
 			</div>
 			<div>
-				如果您的钉钉通讯录有变动,请及时同步
+				如果您的钉钉通讯录有变动,<span class="red">同步间隔时间为每两小时能同步一次</span>
 				<span class="blue" style="margin-left: 10px;cursor: pointer;" @click="tb()" v-loading="tbLoading">
 					<i class="el-icon-refresh"></i>
 					立即同步
@@ -19,10 +19,15 @@
 			<div class="flex-box">
 				<div class="terr-left">
 					<div class="rule_class_box">
-						<div @click="handleNodeClick({ id: 0 })" class="company_name">
+							<div class="company_name">
+								<img src="../assets/image/two.png" />
+								<span>组织架构</span>
+								<!-- <span :class="[dept_id==0? 'blue':'']">{{ info.name }}</span> -->
+							</div>
+<!-- 						<div @click="handleNodeClick({ id: 0 })" class="company_name">
 							<img src="../assets/image/two.png" />
-							<span>{{ info.name }}</span>
-						</div>
+							<span :class="[dept_id==0? 'blue':'']">{{ info.name }}</span>
+						</div> -->
 						<el-tree
 							:data="bmList"
 							class="cate-tree"
@@ -30,6 +35,8 @@
 							:highlight-current="true"
 							:props="{ children: '_child', label: 'name' }"
 							@node-click="handleNodeClick"
+							:accordion="true"
+							empty-text="您暂无部门数据,请同步钉钉通讯录"
 						>
 							<div
 								content="tree"
@@ -71,8 +78,10 @@
 						<el-table-column prop="accedence_time" label="入职时间"></el-table-column>
 						<el-table-column label="是否参与积分管理">
 							<template slot-scope="scope">
-								<!-- {{scope.row.is_official}} -->
-								<el-switch @change="changeIs($event, scope.row.id)" v-model="scope.row.is_official" :active-value="is" :inactive-value="no"></el-switch>
+								<div :class="[scope.row.is_official==1? 'switch-box':'']" @click="changeIs(scope.row.is_official, scope.row.id)">
+									<div class="switch"></div>
+								</div>
+								<!-- <el-switch @change="changeIs($event, scope.row.id)" v-model="scope.row.is_official" :active-value="is" :inactive-value="no"></el-switch> -->
 							</template>
 						</el-table-column>
 						<template slot="empty">
@@ -133,7 +142,7 @@ export default {
 	},
 	created() {
 		this.getInfo();
-		this.getDepartment();
+		// this.getDepartment();
 		this.getEmployee();
 	},
 	mounted() {
@@ -148,26 +157,36 @@ export default {
 	methods: {
 		//同步信息
 		tb() {
-			this.tbLoading = true;
-			var http1 = this.$axios.post('api/ding/department_sync');
-			var http2 = this.$axios.post('api/ding/employee_sync');
-			Promise.all([http1, http2]).then(res => {
-				if (res[0]) {
-					this.$message.success({ message: res[0].data.msg });
-					this.getInfo();
-				}
-			}).finally(()=>{
-				this.tbLoading = false;
+			this.$confirm('下次同步时间需在两小时之后,是否同步?', '提示', {
+			  confirmButtonText: '确定',
+			  cancelButtonText: '取消',
+			  type: 'warning'
+			}).then(() => {
+				this.tbLoading = true;
+				var http1 = this.$axios.post('api/ding/department_sync');
+				var http2 = this.$axios.post('api/ding/employee_sync');
+				Promise.all([http1, http2]).then(res => {
+					if (res[0]) {
+						this.$message.success({ message: res[0].data.msg });
+						this.getInfo();
+					}
+				}).finally(()=>{
+					this.tbLoading = false;
+				});
 			});
 		},
 		//是否开通
 		changeIs(e, id) {
-			var url = e == 1 ? 'api/employee/enable' : 'api/employee/disable';
+			var url = e == 1 ? 'api/employee/disable' : 'api/employee/enable';
 			this.$axios.post(url, { employee_id: [id] }).then(res => {
 				if (res) {
-					this.$message.success({ message: res.data.msg });
+					if(e==0){
+						this.$message.success({ message: '开启成功,可在"角色权限设置对应管理范围"' });
+					}else{
+						this.$message.success({ message: res.data.msg });
+					}
+					this.getEmployee();
 				}
-				this.getEmployee();
 			});
 		},
 		//批量开通权限
@@ -185,6 +204,7 @@ export default {
 		getInfo() {
 			this.$axios.get('api/site/info').then(res => {
 				this.info = res.data.data;
+				this.getDepartment();
 			});
 		},
 		//选择员工
@@ -203,7 +223,13 @@ export default {
 		//获取部门
 		getDepartment() {
 			this.$axios.get('api/department/tree').then(res => {
-				this.bmList = res.data.data.list;
+				var list=[{
+					id:0,
+					name:this.info.name,
+					_child:res.data.data.list
+				}]
+				this.bmList = list;
+				
 			});
 		},
 		//获取员工
@@ -236,6 +262,40 @@ export default {
 </script>
 
 <style lang="scss" scoped="scoped">
+.switch{
+    margin: 0;
+    display: inline-block;
+    position: relative;
+    width: 40px;
+    height: 20px;
+    border: 1px solid #dcdfe6;
+    outline: none;
+    border-radius: 10px;
+    box-sizing: border-box;
+    background: #dcdfe6;
+    cursor: pointer;
+    transition: border-color .3s,background-color .3s;
+    vertical-align: middle;
+}
+.switch:after {
+    content: "";
+    position: absolute;
+    top: 1px;
+    left: 1px;
+    border-radius: 100%;
+    transition: all .3s;
+    width: 16px;
+    height: 16px;
+    background-color: #fff;
+}
+.switch-box .switch {
+    border-color: #409eff;
+    background-color: #409eff;
+}
+.switch-box .switch:after {
+    left: 100%;
+    margin-left: -17px;
+}
 .name {
 	overflow: hidden;
 	text-overflow: ellipsis;

+ 3 - 9
src/views/initialPoint.vue

@@ -60,20 +60,14 @@ export default {
         .post("api/integral/site/config", this.obj)
         .then((res) => {
           if (res.data.code == 1) {
-            this.loading = false;
             this.$message({
               message: res.data.msg,
               type: "success",
             });
-          } else {
-            this.$message.error("提交失败");
-            this.loading = false;
           }
-        })
-        .catch((err) => {
-          console.log(err);
-          this.loading = false;
-        });
+        }).finally(err=>{
+			this.loading = false;
+		});
     },
     cheak_ax() {
       this.loading = true;

+ 48 - 51
src/views/jurisdiction.vue

@@ -243,18 +243,16 @@
 			<EmployeeSelector
 				v-if="add_employee_form"
 				ref="Employee"
-				:user_no_select="true"
-				:my_no_select="false"
+				:user_no_select="false"
 				:can_select_dept="false"
-				:multi="false"
-				:visible.sync="add_employee_show"
 				@confirm="add_employee_confirm"
 			></EmployeeSelector>
 			<span slot="footer">
 				<el-button @click="publicClose()">取消</el-button>
-				<el-button type="primary" @click="sub_add_employee">完成</el-button>
+				<el-button type="primary" :loading="setUser_loading"  @click="sub_add_employee">完成</el-button>
 			</span>
 		</el-dialog>
+		
 		<el-dialog
 		  title="设置积分权限"
 		  :visible.sync="integral_limit_show"
@@ -275,18 +273,24 @@
 		    </el-form-item>
 		  </el-form>
 		</el-dialog>
-		<el-dialog
-		  title="设置管理范围"
-		  :visible.sync="management_scope_show"
-		  :before-close="publicClose"
-		  top="5vh"
-		  width="700px">
-		  <EmployeeSelector v-if="management_scope_show" ref="Employee" :employee_not_select="employee_not_select" :max='add_employee_max' :selected="management_scope_arr" :can_select_dept="false"  @confirm="management_scope_confirm"></EmployeeSelector>
+		
+		<el-dialog title="设置管理范围" :visible.sync="management_scope_show"  :before-close="publicClose2"  top="5vh"  width="700px">
+		  <EmployeeSelector 
+		  v-if="management_scope_show" 
+		  ref="Employee2" 
+		  :user_no_select="false" 
+		  :my_no_select="my_no_select"
+		  :max='add_employee_max'
+		  :selected="management_scope_arr" 
+		  :can_select_dept="false" 
+		  @confirm="management_scope_confirm">
+		  </EmployeeSelector>
 		  <span slot="footer">
-		    <el-button @click="publicClose()">取消</el-button>
+		    <el-button @click="publicClose2()">取消</el-button>
 		    <el-button type="primary" :loading="scope_loading" @click="sub_management_scope">完成</el-button>
 		  </span>
 		</el-dialog>
+		
 		<el-dialog
 		  title="B分奖扣任务"
 		  :visible.sync="bonus_deducted_show"
@@ -391,6 +395,7 @@ export default {
 			tips_show: false,
 			role_loading: false,
 			table_loading: false,
+			setUser_loading:false,
 			item_info: {},
 			rules_employee_arr: { employee: [], dept: [] },
 
@@ -405,7 +410,6 @@ export default {
 			management_scope_show:false,
 			integral_limit_loading:false,
 			integral_limit_form:{},
-			employee_not_select:[],
 			add_employee_max: 0,
 			management_scope_arr: {employee: [], dept: []},
 			scope_loading:false,
@@ -430,6 +434,7 @@ export default {
 			    { required: true, validator: minimum, trigger: 'blur' },
 			  ],
 			},
+			my_no_select:'',//设置人的ID
 		};
 	},
 	components: { EmployeeSelector, noData },
@@ -465,8 +470,6 @@ export default {
 		            this.get_table_list()
 		          }, 1000);
 		          this.bonus_deducted_show = false
-		        }else{
-		          this.$message.error(res.data.msg)
 		        }
 		      }).finally(() => { this.bonus_loading=false;})
 		    }
@@ -479,24 +482,22 @@ export default {
 		//设置管理范围
 		sub_management_scope(){
 		  this.scope_loading=true;
-		  this.$refs.Employee.confirm();//调用组件的confirm();
+		  this.$refs.Employee2.confirm();//调用组件的confirm();
 		  this.$axios({
 		    url: '/api/employee/scope',
 		    method: 'POST',
 		    data: {employee_id: this.list_info.id,id: this.management_arr},
 		  }).then((res) => {
 		    if (res.data.code == 1) {
-		      this.$message.success("设置成功!")
+		      this.$message.success("设置成功,如需登录积分管理平台,需到组织架构开启参与积分管理");
 		      this.table_list.forEach(element => {
 		        if (element.id == this.list_info.id) {
 		          element.manage_scope_count = this.management_arr.length
 		        }
 		      });
 		      this.management_scope_show = false
-		    } else{
-		      this.$message.error(res.data.msg)
 		    }
-		  }).catch((e) => {this.$message.error(e.data.msg)}).finally(() => { this.scope_loading=false;})
+		  }).finally(() => { this.scope_loading=false;})
 		},
 		//添加编辑管理范围
 		management_scope_confirm(val){
@@ -507,14 +508,12 @@ export default {
 		},
 		add_management_scope(item){
 		  this.list_info = item;
-		  this.employee_not_select = [item.id]
+		  this.my_no_select=item.id;
 		  this.management_scope_arr.employee=[];
 		  this.$axios.get('/api/employee/info',{params: {id: this.list_info.id}}).then((res) => {
 		    if (res.data.code == 1) {
 		      this.management_scope_arr.employee = res.data.data.employee_detail.manage_scope||[];//获取当前数据的管理范围
 		      this.management_scope_show = true
-		    } else {
-		      this.$message.error(res.data.msg)
 		    }
 		  }).finally(() => {
 		    this.role_loading = false
@@ -528,12 +527,8 @@ export default {
 		      this.$message.success(res.data.msg)
 		      this.get_table_list()
 		      this.integral_limit_show = false
-		    }else{
-		      this.$message.error(res.data.msg)
 		    }
-		  }).catch((e) => {this.$message.error(e.data.msg)}).finally(() => {
-					this.integral_loading = false;
-			});
+		  }).finally(() => {this.integral_loading = false;});
 		},
 		open_integral_limit(item){
 		  this.integral_limit_show = true
@@ -555,8 +550,6 @@ export default {
 					item.reward_task_monthly = [{ name: 'A分', point: '0', pt_id: this.$getTyps('AF').id }, { name: 'B分', point: '0', pt_id: this.$getTyps('BF').id }];
 				}
 				this.integral_limit_form=item
-		    } else {
-		      this.$message.error(res.data.msg)
 		    }
 		  }).finally(() => {
 		    this.integral_limit_loading = false
@@ -565,19 +558,26 @@ export default {
 		sub_add_employee(form) {
 			  var that=this;
 			   this.$refs.Employee.confirm();//调用组件的confirm();
-			   this.employee_arr.forEach(element => {
-					 this.$axios.put('/api/role/user',{role_id: this.item_info.id,employee_id: element}).then((res) => {
-					   if (res.data.code == 1) {
-						 this.$message.success(res.data.msg)
-						 this.add_employee_show= false
-						 setTimeout(() => {
-						   that.get_table_list()
-						 }, 1000);
-					   } else{
-						 this.$message.error(res.data.msg)
-					   }
-					 }).catch((e) => {this.$message.error(e.data.msg)})
-			  });
+			   let data = {target:[]}
+			   if(that.employee_arr.length>0){
+				   that.employee_arr.forEach(element => {
+				     data.target.push({role_id: this.item_info.id,employee_id: element})
+				   });
+			   }else{
+				    this.$message.error('未选择人员');
+					return;
+				}	
+			 this.setUser_loading=true;
+			 this.$nextTick(()=>{
+				 this.$axios.post('/api/role/user/many',data).then((res) => {
+				   if (res.data.code == 1) {
+					 this.$message.success('已经添加成功,请稍后刷新查看')
+					 this.add_employee_show= false
+				   }
+				 }).finally(() => {
+					this.setUser_loading = false;
+				 })
+			 }) 
 		},
 		
 		add_employee_confirm(val) {
@@ -590,7 +590,10 @@ export default {
 		//关闭弹窗
 		publicClose() {
 			this.$refs.Employee.close()
-			// this.add_employee_show = false;
+			this.add_employee_show = false;
+		},
+		publicClose2() {
+			this.$refs.Employee2.close()
 			this.management_scope_show = false;
 		},
 		handleSelectionChange() {},
@@ -612,8 +615,6 @@ export default {
 					if (res.data.code == 1) {
 						this.$message.success(res.data.msg);
 						this.get_table_list();
-					} else {
-						this.$message.error(res.data.msg);
 					}
 				});
 			});
@@ -629,8 +630,6 @@ export default {
 					if (res.data.code == 1) {
 						this.role_list = res.data.data.list;
 						this.open_right(this.role_list[0]);
-					} else {
-						this.$message.error(res.data.msg);
 					}
 				})
 				.finally(() => {
@@ -661,8 +660,6 @@ export default {
 							}
 						});
 						this.table_list = list||[];
-					} else {
-						this.$message.error(res.data.msg);
 					}
 				})
 				.finally(() => {

+ 38 - 61
src/views/rule.vue

@@ -36,14 +36,12 @@
 						<el-table-column label="分值" align="center">
 							<template slot-scope="scope">
 								<div v-if="scope.row.range_type == 1">
-									<span :class="scope.row.min_point > 0 ? 'red' : 'green'">{{ scope.row.min_point }}</span>
-									{{ scope.row.pt_Obj.name }}
+									<span :class="scope.row.min_point > 0 ? 'red' : 'green'">{{ scope.row.min_point }}{{ scope.row.pt_Obj.name }}</span>
 								</div>
 								<div v-if="scope.row.range_type == 2">
 									<span :class="scope.row.min_point > 0 ? 'red' : 'green'">{{ scope.row.min_point }}</span>
-									<span :class="scope.row.max_point > 0 ? 'color_red' : 'color_green'">{{ scope.row.max_point }}</span>
-									{{ scope.row.pt_Obj.name }}
+									<span :class="scope.row.max_point > 0 ? 'red' : 'green'">{{ scope.row.max_point }}{{ scope.row.pt_Obj.name }}</span>
 								</div>
 							</template>
 						</el-table-column>
@@ -290,7 +288,8 @@ export default {
 			save_loading: false,
 			import_btn_show: false,
 			fileList: [],
-			file: null
+			file: null,
+			flName:'',
 		};
 	},
 	components: {
@@ -410,23 +409,17 @@ export default {
 									this.rule_loading2=false;
 									return false;
 								}
-								this.$axios
-									.post('/api/integral/rule/items/edit', data)
-									.then(res => {
-										this.rule_loading2=false;
+								this.$axios.post('/api/integral/rule/items/edit', data).then(res => {
 										if (res.data.code == 1) {
 											self.$message.success(res.data.msg);
 											self.getData();
 											self.rule_close(form);
-										} else {
-											self.$message.error(res.data.msg);
 										}
-									})
-									.catch(e => {
-										self.$message.error(e.data.msg);
-									});
+								}).finally(err=>{
+									this.rule_loading2=false;
+								});
+							
 							})
-							.catch(() => {});
 					} else {
 						self.rules_detail_form.item_id = self.rules_detail_form.id;
 						let data = self.rules_detail_form;
@@ -436,19 +429,12 @@ export default {
 							this.rule_loading2=false;
 							return false;
 						}
-						this.$axios
-							.post('/api/integral/rule/items/edit', data)
-							.then(res => {
-								this.rule_loading2=false;
+						this.$axios.post('/api/integral/rule/items/edit', data).then(res => {
 								if (res.data.code == 1) {
 									self.$message.success(res.data.msg);
 									self.getData();
 									self.rule_close(form);
-								} else {
-									self.$message.error(res.data.msg);
 								}
-							}).catch(e => {
-								self.$message.error(e.data.msg);
 							}).finally(() => {
 								this.rule_loading2 = false;
 							});
@@ -510,11 +496,7 @@ export default {
 										self.$message.success(res.data.msg);
 										self.getData();
 										self.rule_close(form);
-									} else {
-										self.$message.error(res.data.msg);
 									}
-								}).catch(e => {
-									self.$message.error(e.data.msg);
 								}).finally(() => {
 									this.rule_loading2 = false;
 								});
@@ -529,19 +511,12 @@ export default {
 						let data = {
 							items: [self.rules_detail_form]
 						};
-						this.$axios
-							.post('/api/integral/rule/items', data)
-							.then(res => {
-								this.rule_loading2=false;
+						this.$axios.post('/api/integral/rule/items', data).then(res => {
 								if (res.data.code == 1) {
 									self.$message.success(res.data.msg);
 									self.getData();
 									self.rule_close(form);
-								} else {
-									self.$message.error(res.data.msg);
 								}
-							}).catch(e => {
-								self.$message.error(e.data.msg);
 							}).finally(() => {
 								this.rule_loading2 = false;
 							});
@@ -565,12 +540,7 @@ export default {
 								self.$message.success(res.data.msg);
 								self.rule_show = false;
 								self.getData(true);
-							} else {
-								self.$message.error(res.data.msg);
 							}
-						})
-						.catch(e => {
-							self.$message.error(e.data.msg);
 						}).finally(() => {
 							this.delRule_loading = false;
 						});
@@ -594,7 +564,7 @@ export default {
 			}).then(() => {
 					this.rule_show = false;
 					this.class_show = true;
-			}).catch(() => {});
+			})
 		},
 		add_rule() {
 			this.rule_show = true;
@@ -633,13 +603,8 @@ export default {
 							this.$message.success(res.data.msg);
 							this.getData(true);
 							this.handleNodeClick(this.selectItem);
-						} else {
-							this.$message.error(res.data.msg);
 						}
 					})
-					.catch(e => {
-						this.$message.error(e.data.msg);
-					});
 			});
 		},
 
@@ -672,7 +637,13 @@ export default {
 
 		handleNodeClick(e) {
 			var items = this.getItemData(e);
-			this.selectItem = e;
+			this.selectItem = {
+				child: e.child,
+				id: e.id,
+				name:e.name,
+				pid: e.pid,
+			};
+			this.flName=e.name;
 			this.item_list = items;
 		},
 		getItemData(e) {
@@ -738,7 +709,12 @@ export default {
 		edit_class() {
 			this.class_show = true;
 			this.class_type = 'edit';
-			this.dept_formdata = this.selectItem;
+			this.dept_formdata={
+				child: this.selectItem.child,
+				id: this.selectItem.id,
+				name: this.selectItem.name,
+				pid: this.selectItem.pid,
+			}
 		},
 		//添加分组
 		submit_add_dept(form) {
@@ -749,13 +725,20 @@ export default {
 					if (that.class_type == 'edit') {
 						delete that.dept_formdata.child;
 						that.dept_formdata.rule_id = that.dept_formdata.id;
+						if(typeof(that.dept_formdata.pid)=='number'){
+						}else{
+							if(that.dept_formdata.pid.length>0){
+								that.dept_formdata.pid =that.dept_formdata.pid[that.dept_formdata.pid.length - 1];
+							}else{
+								that.dept_formdata.pid=0;
+							}
+						}
 						this.$axios.post('/api/integral/rule/edit', that.dept_formdata).then(res => {
 							if (res.data.code == 1) {
+								that.selectItem.name=that.dept_formdata.name;
 								that.$message.success('修改积分分类成功');
-								this.getData();
+								this.getData(true);
 								this.add_dept_close('dept_formdata');
-							} else {
-								that.$message.error(res.data.msg);
 							}
 						}).finally(() => {
 							this.dept_loading = false;
@@ -766,14 +749,11 @@ export default {
 						} else {
 							that.dept_formdata.pid = that.dept_formdata.pid[that.dept_formdata.pid.length - 1];
 						}
-						console.log(that.dept_formdata);
-						return;
 						this.$axios.post('/api/integral/rule', that.dept_formdata).then(res => {
 							if (res.data.code == 1) {
-								this.getData();
+								that.$message.success('添加积分分类成功');
+								this.getData(true);
 								this.add_dept_close('dept_formdata');
-							} else {
-								that.$message.error(res.data.msg);
 							}
 						}).finally(() => {
 							this.dept_loading = false;
@@ -797,8 +777,6 @@ export default {
 						this.$message.success(res.data.msg);
 						this.getData();
 						this.add_dept_close('dept_formdata');
-					} else {
-						this.$message.error(res.data.msg);
 					}
 				});
 			});
@@ -806,8 +784,7 @@ export default {
 		//关闭弹窗
 		add_dept_close(form) {
 			this.class_show = false;
-			this.selectItem = { name: '积分分类' };
-			this.$refs[form].resetFields();
+			// this.$refs[form].resetFields();
 		},
 		//关闭提示
 		tips_close() {

+ 818 - 982
src/views/voluntarilyPoint.vue

@@ -1,1028 +1,864 @@
 <template>
-  <div>
-    <el-alert
-      class="diy-tip"
-      title="什么是固定积分?"
-      @close="tips_close"
-      v-if="tips_show"
-      type="success"
-      description
-      show-icon
-    >
-      <p>系统按照设定的时间(每月/每周/每日) 自动给员工添加的积分,比如某员工有一个工程师证,得到公司的认可,公司就会每月给他加分</p>
-    </el-alert>
-    <div class="all">
-      <div class="flex-box">
-        <div class="terr-left">
-          <div>
-            <el-button size="medium" @click="add_grouping()" plain>新增加分组</el-button>
-          </div>
-          <div>
-            <el-button size="medium" @click="add_rules_detail" plain>新增加分项</el-button>
-          </div>
+	<div>
+		<el-alert class="diy-tip" title="什么是固定积分?" @close="tips_close" v-if="tips_show" type="success" description show-icon>
+			<p>系统按照设定的时间(每月/每周/每日) 自动给员工添加的积分,比如某员工有一个工程师证,得到公司的认可,公司就会每月给他加分</p>
+		</el-alert>
+		<div class="all">
+			<div class="flex-box">
+				<div class="terr-left">
+					<div><el-button size="medium" @click="add_grouping()" plain>新增加分组</el-button></div>
+					<div><el-button size="medium" @click="add_rules_detail" plain>新增加分项</el-button></div>
 
-          <!-- 循环分组 -->
-          <el-col :span="24" style="padding-right: 0;" v-loading="rule_trees_load">
-            <el-menu class="rule_name" :unique-opened="true">
-              <el-submenu :index="index.toString()" v-for="(item,index) in rule_list" :key="index">
-                <template slot="title">
-                  <div style="width:80%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap">
-                    <i class="el-icon-edit-outline title_top" @click.stop="edit_grouping(item)"></i>
-                    <span class="title_top">{{item.name}}</span>
-                  </div>
-                </template>
-                <span
-                  :index="i.toString()"
-                  v-for="(d,i) in item_list"
-                  :key="i"
-                  v-show="d[0].rule_id == item.id"
-                >
-                  <el-menu-item
-                    :index="i1.toString()"
-                    v-for="(data,i1) in d"
-                    :key="i1"
-                    @click="open_right(data)"
-                  >
-                    <div style="width:95%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap">
-                      <span slot="title">{{data.remark}}</span>
-                    </div>
-                  </el-menu-item>
-                </span>
-                <!-- <el-menu-item :index="i.toString()" v-for="(data,i) in item.data" :key="i" @click="open_right(data)" >{{data.name}}</el-menu-item> -->
-              </el-submenu>
-            </el-menu>
-          </el-col>
-        </div>
+					<!-- 循环分组 -->
+					<el-col :span="24" style="padding-right: 0;" v-loading="rule_trees_load">
+						<el-menu class="rule_name" :unique-opened="true">
+							<el-submenu :index="index.toString()" v-for="(item, index) in rule_list" :key="index">
+								<template slot="title">
+									<div style="width:80%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap">
+										<i class="el-icon-edit-outline title_top" @click.stop="edit_grouping(item)"></i>
+										<span class="title_top">{{ item.name }}</span>
+									</div>
+								</template>
+								<span :index="i.toString()" v-for="(d, i) in item_list" :key="i" v-show="d[0].rule_id == item.id">
+									<el-menu-item :index="i1.toString()" v-for="(data, i1) in d" :key="i1" @click="open_right(data)">
+										<div style="width:95%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap">
+											<span slot="title">{{ data.remark }}</span>
+										</div>
+									</el-menu-item>
+								</span>
+								<!-- <el-menu-item :index="i.toString()" v-for="(data,i) in item.data" :key="i" @click="open_right(data)" >{{data.name}}</el-menu-item> -->
+							</el-submenu>
+						</el-menu>
+					</el-col>
+				</div>
 
-        <div class="terr-right border-right flex-1" v-loading="table_loading">
-          <el-col :span="24" v-show="(rule_list.length == 0||item_list.length == 0)" style="text-align: center;margin: 0 auto;position: relative;top: 30%;">
-            <p><img src="@/assets/image/nodata_default.png" width="200px" alt=""></p>
-            <p style="color: #909399;">还没有<span v-if="rule_list.length==0">加分组和</span>加分项</p>
-            <p style="color: #909399;"><span v-if="rule_list.length==0">先</span><span style="color: #26A2FF;cursor:pointer;" v-if="rule_list.length==0" @click="add_grouping()">【添加加分组】</span>,<span v-if="rule_list.length==0">再</span><span v-if="rule_list.length!==0">请</span><span style="color: #26A2FF;cursor:pointer" @click="add_rules_detail">【添加加分项】</span></p>
-          </el-col>
-          <el-col v-if="item_list.length != 0">
-          <el-row>
-            <!-- 移除隐藏 -->
-            <!-- <el-col :span="24" style="font-size:20px;color:#303133;line-height:36px;display:flex;flex-wrap: wrap;">
+				<div class="terr-right border-right flex-1" v-loading="table_loading">
+					<el-col :span="24" v-show="rule_list.length == 0 || item_list.length == 0" style="text-align: center;margin: 0 auto;position: relative;top: 30%;">
+						<p><img src="@/assets/image/nodata_default.png" width="200px" alt="" /></p>
+						<p style="color: #909399;">
+							还没有
+							<span v-if="rule_list.length == 0">加分组和</span>
+							加分项
+						</p>
+						<p style="color: #909399;">
+							<span v-if="rule_list.length == 0">先</span>
+							<span style="color: #26A2FF;cursor:pointer;" v-if="rule_list.length == 0" @click="add_grouping()">【添加加分组】</span>
+							,
+							<span v-if="rule_list.length == 0">再</span>
+							<span v-if="rule_list.length !== 0">请</span>
+							<span style="color: #26A2FF;cursor:pointer" @click="add_rules_detail">【添加加分项】</span>
+						</p>
+					</el-col>
+					<el-col v-if="item_list.length != 0">
+						<el-row>
+							<!-- 移除隐藏 -->
+							<!-- <el-col :span="24" style="font-size:20px;color:#303133;line-height:36px;display:flex;flex-wrap: wrap;">
               <div style="width:5%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap">
                 <span>{{right_rules_detail.remark}}</span>
               </div> -->
-              <el-col :span="24" style="font-size:20px;color:#303133;line-height:36px;">
-              {{right_rules_detail.remark}}
-              <span style="padding-left: 10px;">{{right_rules_detail.min_point}}B分</span>
-              <el-button
-                plain
-                style="padding:10px 12px; margin-left: 10px;"
-                @click="edit_rules(item_info)"
-              >编辑</el-button>
-            </el-col>
-          </el-row>
-          <div class="flex-box btns flex-v-ce">
-            <el-button size="small" @click="del_item" type="danger" plain>批量移除</el-button>
-            <el-button size="small" type="primary" @click="add_employee_show_TJ">添加人员</el-button>
-          </div>
-          <el-table
-            ref="multipleTable"
-            :data="table_list"
-            v-loading="table_loading"
-            tooltip-effect="dark"
-            style="width: 100%;margin-top:20px;"
-            @selection-change="handleSelectionChange"
-          >
-            <el-table-column type="selection" width="45"></el-table-column>
-            <el-table-column label="姓名">
-              <template slot-scope="scope">
-                <div style="display:flex">
-                  <span class="fl">
-                    <userImage
-                    
-                      :id="scope.row.employee_id"
-                      width="50px"
-                      height="50px"
-                      :user_name="scope.row.employee.name"
-                      :img_url="scope.row.employee.img_url"
-                      v-if="scope.row.employee"
-                    ></userImage>
-                  </span>
-                  <span
-                    style="margin-left: 10px; line-height: 50px; display: inline-block"
-                    v-if="scope.row.employee"
-                  >{{scope.row.employee.name}}</span>
-                </div>
-              </template>
-            </el-table-column>
-            <el-table-column prop="cycle_remark" label="加分周期"></el-table-column>
-			<template slot="empty">
-				<noData></noData>
-			</template>
-          </el-table>
+							<el-col :span="24" style="font-size:20px;color:#303133;line-height:36px;">
+								{{ right_rules_detail.remark }}
+								<span style="padding-left: 10px;">{{ right_rules_detail.min_point }}B分</span>
+								<el-button plain style="padding:10px 12px; margin-left: 10px;" @click="edit_rules(item_info)">编辑</el-button>
+							</el-col>
+						</el-row>
+						<div class="flex-box btns flex-v-ce">
+							<el-button size="small" @click="del_item" type="danger" plain>批量移除</el-button>
+							<el-button size="small" type="primary" @click="add_employee_show_TJ">添加人员</el-button>
+						</div>
+						<el-table
+							ref="multipleTable"
+							:data="table_list"
+							v-loading="table_loading"
+							tooltip-effect="dark"
+							style="width: 100%;margin-top:20px;"
+							@selection-change="handleSelectionChange"
+						>
+							<el-table-column type="selection" width="45"></el-table-column>
+							<el-table-column label="姓名">
+								<template slot-scope="scope">
+									<div style="display:flex">
+										<span class="fl">
+											<userImage
+												:id="scope.row.employee_id"
+												width="50px"
+												height="50px"
+												:user_name="scope.row.employee.name"
+												:img_url="scope.row.employee.img_url"
+												v-if="scope.row.employee"
+											></userImage>
+										</span>
+										<span style="margin-left: 10px; line-height: 50px; display: inline-block" v-if="scope.row.employee">{{ scope.row.employee.name }}</span>
+									</div>
+								</template>
+							</el-table-column>
+							<el-table-column prop="cycle_remark" label="加分周期"></el-table-column>
+							<template slot="empty">
+								<noData></noData>
+							</template>
+						</el-table>
 
-          <!-- 分页 -->
-          <div style=" text-align: center; padding: 20px;">
-            <el-pagination
-              background
-              layout="total, prev, pager, next"
-              :current-page="page"
-              @current-change="handleCurrentChange"
-              :page-size.sync="pagesize"
-              :hide-on-single-page="true"
-              :total="total"
-            ></el-pagination>
-          </div>
-          
-          </el-col>
-        </div>
-      </div>
+						<!-- 分页 -->
+						<div style=" text-align: center; padding: 20px;">
+							<el-pagination
+								background
+								layout="total, prev, pager, next"
+								:current-page="page"
+								@current-change="handleCurrentChange"
+								:page-size.sync="pagesize"
+								:hide-on-single-page="true"
+								:total="total"
+							></el-pagination>
+						</div>
+					</el-col>
+				</div>
+			</div>
 
-      <!-- 可写公共组建: -->
-      <!-- 新增加分组弹出框 -->
-      <el-dialog
-        :close-on-click-modal="false"
-        :title="grouping_type?'编辑分类':'新增分类'"
-        :visible.sync="dialogVisible"
-        width="40%"
-      >
-        <el-form
-          :model="numberValidateForm"
-          ref="numberValidateForm"
-          label-width="100px"
-          class="demo-ruleForm"
-        >
-          <el-form-item
-            label="分组名称"
-            prop="name"
-            :rules="[
-						{ required: true, message: '请输入分组名称'},
-						]"
-          >
-            <el-input
-              type="age"
-              v-model="numberValidateForm.name"
-              autocomplete="off"
-              placeholder="请输入分组名称"
-            ></el-input>
-          </el-form-item>
-        </el-form>
-        <span slot="footer" class="dialog-footer" style=" overflow: hidden;">
-          <el-button
-            class="fl"
-            type="danger"
-            v-show="grouping_type"
-            @click="del_grouping(numberValidateForm)"
-            style="float:left"
-            :disabled="disabled"
-          >删除</el-button>
-          <el-button
-            type="primary"
-            @click="submitForm('numberValidateForm')"
-            :disabled="disabled"
-          >确 定</el-button>
-          <el-button @click="dialogVisible = false">取 消</el-button>
-        </span>
-      </el-dialog>
+			<!-- 可写公共组建: -->
+			<!-- 新增加分组弹出框 -->
+			<el-dialog :close-on-click-modal="false" :title="grouping_type ? '编辑分类' : '新增分类'" :visible.sync="dialogVisible" width="40%">
+				<el-form :model="numberValidateForm" ref="numberValidateForm" label-width="100px" class="demo-ruleForm">
+					<el-form-item label="分组名称" prop="name" :rules="[{ required: true, message: '请输入分组名称' }]">
+						<el-input type="age" v-model="numberValidateForm.name" autocomplete="off" placeholder="请输入分组名称"></el-input>
+					</el-form-item>
+				</el-form>
+				<span slot="footer" class="dialog-footer" style=" overflow: hidden;">
+					<el-button class="fl" type="danger" v-show="grouping_type" @click="del_grouping(numberValidateForm)" style="float:left" :disabled="disabled">删除</el-button>
+					<el-button type="primary" @click="submitForm('numberValidateForm')" :disabled="disabled">确 定</el-button>
+					<el-button @click="dialogVisible = false">取 消</el-button>
+				</span>
+			</el-dialog>
 
-      <!-- 新增加分项 -->
-      <el-dialog
-        :title="rules_detail_title?'编辑规则':'新增规则'"
-        :visible.sync="dialogFormVisible"
-        width="500px"
-      >
-        <el-form
-          :model="rules_detail_form"
-          ref="rules_detail_form"
-          :rules="rules_rules"
-          label-width="120px"
-        >
-          <el-form-item
-            label="规则名称"
-            :label-width="formLabelWidth"
-            prop="remark"
-            :rules="[{ required: true, message: '请输入规则名称'},]"
-          >
-            <el-input v-model="rules_detail_form.remark" placeholder="请输入规则名称" autocomplete="off"></el-input>
-          </el-form-item>
-          <el-form-item
-            label="分类"
-            :label-width="formLabelWidth"
-            prop="rule_id"
-            :rules="[{ required: true, message: '请选择分类'},]"
-          >
-            <el-select v-model="rules_detail_form.rule_id" style="width: 100%;" placeholder="请选择分类">
-              <el-option
-                v-for="item in rule_list"
-                :key="item.value"
-                :label="item.name"
-                :value="item.id"
-              ></el-option>
-            </el-select>
-          </el-form-item>
-          <el-form-item label="积分" prop="min_point" :rules="[{ required: true, message: '请输入积分'},]">
-            <el-input
-              v-model="rules_detail_form.min_point"
-              placeholder="请输入积分"
-              oninput="if(this.value=='0'){this.value='';}else{this.value=this.value.replace(/[^0-9]/g,'')}"
-            ></el-input>
-            <span
-              data-v-a17f1960
-              style="display: block; font-size: 12px; color: rgb(96, 98, 102);text-align: left;"
-            >固定加分加B分</span>
-          </el-form-item>
-          <el-form-item label="是否与考勤挂钩" prop="is_attendance">
-            <el-switch v-model="is_attendance"></el-switch>
-          </el-form-item>
-          <div style="overflow: hidden;">
-            <el-button
-              type="danger"
-              v-show="rules_detail_title"
-              class="fl"
-              @click="del_rules_detail(rules_detail_form)"
-              style="float:left"
-              :disabled="disabled"
-            >删除</el-button>
-            
-            <el-button
-              v-if="rules_detail_title"
-              class="fr"
-              type="primary"
-              @click="editRule('rules_detail_form') "
-              style="float:right"
-              :disabled="disabled"
-            >确 定</el-button>
-            <el-button
-              v-else
-              class="fr"
-              type="primary"
-              @click="next('rules_detail_form') "
-              style="float:right"
-              :disabled="disabled"
-            >确 定</el-button>
-            <el-button
-              class="fr"
-              @click="rules_detail_close('rules_detail_form')"
-              style="float:right"
-            >取 消</el-button>
-          </div>
-        </el-form>
-      </el-dialog>
+			<!-- 新增加分项 -->
+			<el-dialog :title="rules_detail_title ? '编辑规则' : '新增规则'" :visible.sync="dialogFormVisible" width="500px">
+				<el-form :model="rules_detail_form" ref="rules_detail_form" :rules="rules_rules" label-width="120px">
+					<el-form-item label="规则名称" :label-width="formLabelWidth" prop="remark" :rules="[{ required: true, message: '请输入规则名称' }]">
+						<el-input v-model="rules_detail_form.remark" placeholder="请输入规则名称" autocomplete="off"></el-input>
+					</el-form-item>
+					<el-form-item label="分类" :label-width="formLabelWidth" prop="rule_id" :rules="[{ required: true, message: '请选择分类' }]">
+						<el-select v-model="rules_detail_form.rule_id" style="width: 100%;" placeholder="请选择分类">
+							<el-option v-for="item in rule_list" :key="item.value" :label="item.name" :value="item.id"></el-option>
+						</el-select>
+					</el-form-item>
+					<el-form-item label="积分" prop="min_point" :rules="[{ required: true, message: '请输入积分' }]">
+						<el-input
+							v-model="rules_detail_form.min_point"
+							placeholder="请输入积分"
+							oninput="if(this.value=='0'){this.value='';}else{this.value=this.value.replace(/[^0-9]/g,'')}"
+						></el-input>
+						<span data-v-a17f1960 style="display: block; font-size: 12px; color: rgb(96, 98, 102);text-align: left;">固定加分加B分</span>
+					</el-form-item>
+					<el-form-item label="是否与考勤挂钩" prop="is_attendance"><el-switch v-model="is_attendance"></el-switch></el-form-item>
+					<div style="overflow: hidden;">
+						<el-button type="danger" v-show="rules_detail_title" class="fl" @click="del_rules_detail(rules_detail_form)" style="float:left" :disabled="disabled">
+							删除
+						</el-button>
 
-      <el-dialog
-        title="添加人员"
-        :visible.sync="add_employee_show"
-        :before-close="add_employee_close"
-        width="700px"
-      >
-        <el-form :model="add_employee_form" ref="add_employee_form" label-width="80px">
-          <el-form-item
-            label="加分周期"
-            :rules="[{ required: true, message: '请选择加分周期', trigger: 'change' }]"
-          >
-            <el-select v-model="task_cycle_name" placeholder="请选择加分周期">
-              <el-option
-                v-for="item in task_cycle"
-                :key="item.value"
-                :label="item.name"
-                :value="item.value"
-              ></el-option>
-            </el-select>
-          </el-form-item>
-          <div 
-       v-loading="staff_loading">
-            <EmployeeSelector1
-              :max="add_employee_max"
-              :can_select_dept="false"
-              :visible.sync="add_employee_visible"
-              @confirm="add_employee_confirm"
-              ref="Employee"
-            ></EmployeeSelector1>
-          </div>
-          <el-form-item style="text-align: right; margin-bottom: 0;margin-top: 20px;">
-            <el-button @click="add_employee_close()">取消</el-button>
-            <el-button
-              type="primary"
-              @click="sub_add_employee('add_employee_form')"
-              :disabled="disabled"
-            >完成</el-button>
-          </el-form-item>
-        </el-form>
-      </el-dialog>
-    </div>
-  </div>
+						<el-button v-if="rules_detail_title" class="fr" type="primary" @click="editRule('rules_detail_form')" style="float:right" :disabled="disabled">
+							确 定
+						</el-button>
+						<el-button v-else class="fr" type="primary" @click="next('rules_detail_form')" style="float:right" :disabled="disabled">确 定</el-button>
+						<el-button class="fr" @click="rules_detail_close('rules_detail_form')" style="float:right">取 消</el-button>
+					</div>
+				</el-form>
+			</el-dialog>
+
+			<el-dialog title="添加人员" :visible.sync="add_employee_show" :before-close="add_employee_close" width="700px">
+				<el-form :model="add_employee_form" ref="add_employee_form" label-width="80px">
+					<el-form-item label="加分周期" :rules="[{ required: true, message: '请选择加分周期', trigger: 'change' }]">
+						<el-select v-model="task_cycle_name" placeholder="请选择加分周期">
+							<el-option v-for="item in task_cycle" :key="item.value" :label="item.name" :value="item.value"></el-option>
+						</el-select>
+					</el-form-item>
+					<div v-loading="staff_loading">
+						<EmployeeSelector1
+							:max="add_employee_max"
+							:can_select_dept="false"
+							:visible.sync="add_employee_visible"
+							@confirm="add_employee_confirm"
+							ref="Employee"
+						></EmployeeSelector1>
+					</div>
+					<el-form-item style="text-align: right; margin-bottom: 0;margin-top: 20px;">
+						<el-button @click="add_employee_close()">取消</el-button>
+						<el-button type="primary" @click="sub_add_employee('add_employee_form')" :disabled="disabled">完成</el-button>
+					</el-form-item>
+				</el-form>
+			</el-dialog>
+		</div>
+	</div>
 </template>
 
 <script>
-import EmployeeSelector1 from "@/components/EmployeeSelector";
+import EmployeeSelector1 from '@/components/EmployeeSelector';
 import noData from '@/components/noData';
 export default {
-  data() {
-    return {
-      // grouping_Json:[],
-      jieguoId:"",
-      table_list: [],
-      tips_show: false,
-      item_info: {},
-      rule_trees_load: false,
-      dialogVisible: false,
+	data() {
+		return {
+			// grouping_Json:[],
+			jieguoId: '',
+			table_list: [],
+			tips_show: false,
+			item_info: {},
+			rule_trees_load: false,
+			dialogVisible: false,
 
-      rules_detail_show: false, //是否弹出添加人员弹窗
-      add_employee_visible: false,
-      add_employee_max: 0,
-      add_employee_show: false,
+			rules_detail_show: false, //是否弹出添加人员弹窗
+			add_employee_visible: false,
+			add_employee_max: 0,
+			add_employee_show: false,
 
-      task_cycle_name: 1,
-      add_employee_form: {
-        employee_ids: [],
-      },
+			task_cycle_name: 1,
+			add_employee_form: {
+				employee_ids: []
+			},
 
-      del_arr: {
-        ids: [],
-      },
-      val_page:'',//存入某一页文本框选中的数量
-      page: 1,//默认页数  为1
-      total: 0,//返回的总数据
-      pagesize: 10,//每页显示的数据
-      table_loading: false,
-      staff_loading: false,
+			del_arr: {
+				ids: []
+			},
+			val_page: '', //存入某一页文本框选中的数量
+			page: 1, //默认页数  为1
+			total: 0, //返回的总数据
+			pagesize: 10, //每页显示的数据
+			table_loading: false,
+			staff_loading: false,
 
-      dialogFormVisible: false,
-      form: {
-        name: "",
-        region: "",
-        date1: "",
-        date2: "",
-        delivery: false,
-        type: [],
-        resource: "",
-        desc: "",
-      },
-      formLabelWidth: "120px",
+			dialogFormVisible: false,
+			form: {
+				name: '',
+				region: '',
+				date1: '',
+				date2: '',
+				delivery: false,
+				type: [],
+				resource: '',
+				desc: ''
+			},
+			formLabelWidth: '120px',
 
-      numberValidateForm: {
-        name: "",
-      },
-      disabled: false, //按钮不能被多次点击
-      grouping_type: "",
-      rules_detail_title: "",
-      rule_list: [], //分类集合
-      item_list: [], //规则集合
+			numberValidateForm: {
+				name: ''
+			},
+			disabled: false, //按钮不能被多次点击
+			grouping_type: '',
+			rules_detail_title: '',
+			rule_list: [], //分类集合
+			item_list: [], //规则集合
 
-      right_rules_detail: {},
+			right_rules_detail: {},
 
-      add_employee_id: "",
-      add_employee_id: "",
-      rules_detail_form: {
-        rule_id: "",
-        range_type: "1",
-        prize_type: "0",
-        min_point: "",
-        remark: "",
-        is_attendance: "0",
-        cycle_type: "2",
-        pt_id: "3",
-      },
-      is_attendance: false,
-      rules_rules: {
-        remark: [
-          {
-            required: true,
-            message: "请输入规则名称",
-            trigger: "blur",
-          },
-          {
-            max: 100,
-            message: "分类名称不能大于100个字符",
-            trigger: "blur",
-          },
-        ],
-        min_point: [
-          {
-            required: true,
-            message: "请输入积分",
-            trigger: "blur",
-          },
-        ],
-        rule_id: [
-          {
-            required: true,
-            message: "请选择分类",
-            trigger: "blur",
-          },
-        ],
-      },
-      task_cycle: [
-        {
-          name: "每天自动加分",
-          value: 1,
-        },
-        {
-          name: "每周自动加分",
-          value: 2,
-        },
-        {
-          name: "每月自动加分",
-          value: 3,
-        },
-      ],
-    };
-  },
-  components: {
-    EmployeeSelector1,
-	noData
-  },
-  created() {},
-  mounted() {
-    if (localStorage.getItem("voluntarilyPoint")) {
-      this.tips_show = false;
-    } else {
-      this.tips_show = true;
-    }
-    this.get_role_lists();
-  },
-  methods: {
-    handleCurrentChange(val) {
-      this.page = val;
-      this.open_right();
-    },
-    // 组建
-    add_employee_confirm(val) {
-      this.add_employee_form.employee_ids = [];
-      if (val.employee.length !== 0) {
-        val.employee.forEach((element) => {
-          this.add_employee_form.employee_ids.push(element.id);
-        });
-      }
-    },
+			add_employee_id: '',
+			add_employee_id: '',
+			rules_detail_form: {
+				rule_id: '',
+				range_type: '1',
+				prize_type: '0',
+				min_point: '',
+				remark: '',
+				is_attendance: '0',
+				cycle_type: '2',
+				pt_id: '3'
+			},
+			is_attendance: false,
+			rules_rules: {
+				remark: [
+					{
+						required: true,
+						message: '请输入规则名称',
+						trigger: 'blur'
+					},
+					{
+						max: 100,
+						message: '分类名称不能大于100个字符',
+						trigger: 'blur'
+					}
+				],
+				min_point: [
+					{
+						required: true,
+						message: '请输入积分',
+						trigger: 'blur'
+					}
+				],
+				rule_id: [
+					{
+						required: true,
+						message: '请选择分类',
+						trigger: 'blur'
+					}
+				]
+			},
+			task_cycle: [
+				{
+					name: '每天自动加分',
+					value: 1
+				},
+				{
+					name: '每周自动加分',
+					value: 2
+				},
+				{
+					name: '每月自动加分',
+					value: 3
+				}
+			]
+		};
+	},
+	components: {
+		EmployeeSelector1,
+		noData
+	},
+	created() {},
+	mounted() {
+		if (localStorage.getItem('voluntarilyPoint')) {
+			this.tips_show = false;
+		} else {
+			this.tips_show = true;
+		}
+		this.get_role_lists();
+	},
+	methods: {
+		handleCurrentChange(val) {
+			this.page = val;
+			this.open_right();
+		},
+		// 组建
+		add_employee_confirm(val) {
+			this.add_employee_form.employee_ids = [];
+			if (val.employee.length !== 0) {
+				val.employee.forEach(element => {
+					this.add_employee_form.employee_ids.push(element.id);
+				});
+			}
+		},
 
-    // 添加成员点击取消
-    add_employee_close() {
-      this.add_employee_show = false;
-    },
-    // 点击添加人员
-    add_employee_show_TJ(){
-      this.add_employee_show= true;//弹出添加人员框
-      var params = {
-        params: {
-          item_id: this.add_employee_id || "",
-          employee_id: this.employee_id || "",
-        },
-      };
-      this.$axios
-        .get("/api/integral/auto/list", params)
-        .then((res) => {
-          //   let grup_list = [];
-          // for(let i=0;i<res.data.data.list.length;i++){
-          //   grup_list.push(res.data.data.list[i])
-          // }
-          // this.grouping = grup_list//拿到当前细则的人员
-          
-          // this.grouping_Json =  this.res.data.data.list//拿到当前细则的人员
-        })
-    },
-    // 添加成员点击完成
-    sub_add_employee(form) {
-      let self = this;
-      if (!self.task_cycle_name) {
-        self.$message.error("请选择加分周期");
-        return false;
-      }
-      this.$refs.Employee.confirm(); //调用组件的confirm();
-      if (this.add_employee_form.employee_ids.length <= 0) {
-        this.$message.error("请选择员工");
-        return false;
-      }
-      let data = {
-        employee_ids: this.add_employee_form.employee_ids,
-        task_cycle: self.task_cycle_name,
-        item_id: self.add_employee_id,
-        rule_id: self.add_rulse_id,
-      };
-      self.$refs[form].validate((valid) => {
-        if (valid) {
-          if (data.rule_id == "" || data.item_id == "") {
-            self.$message.error("请先选择细则");
-          } else {
-            this.disabled = true;
-             self.staff_loading = true;
-            self
-              .$axios({
-                url: "/api/integral/auto/add",
-                method: "post",
-                data: data,
-              })
-              .then((res) => {
-                this.disabled = false;
-                self.table_loading = false;
-                 self.staff_loading = false;
-                if (res.data.code == 1) {
-                  // 不需要了
-                  // sessionStorage.setItem('task_cycle_name', (self.task_cycle_name))//存入用户上次请求成功的加分周期。
-                  self.add_employee_show = false;
-                  self.$message.success(
-                    "此次操作成功" +
-                      res.data.data.success +
-                      "条,失败" +
-                      res.data.data.error +
-                      "条,已经存在的" +
-                      res.data.data.exist +
-                      "条"
-                  );
-                  // self.err_open_right();
-                  
-                  // self.open_right();
-                  
-          
-          self.get_role_lists()
-                } else {
-                  self.$message.error(res.data.msg);
-                }
-              })
-              .catch((e) => {
-                // self.$message.error(e.data.msg);
-              })
-              .finally(() => {
-                self.loading = false;
-              });
-          }
-        } else {
-          return false;
-        }
-      });
-    },
-    
+		// 添加成员点击取消
+		add_employee_close() {
+			this.add_employee_show = false;
+		},
+		// 点击添加人员
+		add_employee_show_TJ() {
+			this.add_employee_show = true; //弹出添加人员框
+			var params = {
+				params: {
+					item_id: this.add_employee_id || '',
+					employee_id: this.employee_id || ''
+				}
+			};
+			this.$axios.get('/api/integral/auto/list', params).then(res => {
+				//   let grup_list = [];
+				// for(let i=0;i<res.data.data.list.length;i++){
+				//   grup_list.push(res.data.data.list[i])
+				// }
+				// this.grouping = grup_list//拿到当前细则的人员
+				// this.grouping_Json =  this.res.data.data.list//拿到当前细则的人员
+			});
+		},
+		// 添加成员点击完成
+		sub_add_employee(form) {
+			let self = this;
+			if (!self.task_cycle_name) {
+				self.$message.error('请选择加分周期');
+				return false;
+			}
+			this.$refs.Employee.confirm(); //调用组件的confirm();
+			if (this.add_employee_form.employee_ids.length <= 0) {
+				this.$message.error('请选择员工');
+				return false;
+			}
+			let data = {
+				employee_ids: this.add_employee_form.employee_ids,
+				task_cycle: self.task_cycle_name,
+				item_id: self.add_employee_id,
+				rule_id: self.add_rulse_id
+			};
+			self.$refs[form].validate(valid => {
+				if (valid) {
+					if (data.rule_id == '' || data.item_id == '') {
+						self.$message.error('请先选择细则');
+					} else {
+						this.disabled = true;
+						self.staff_loading = true;
+						self.$axios({
+							url: '/api/integral/auto/add',
+							method: 'post',
+							data: data
+						})
+							.then(res => {
+								this.disabled = false;
+								self.table_loading = false;
+								self.staff_loading = false;
+								if (res.data.code == 1) {
+									// 不需要了
+									// sessionStorage.setItem('task_cycle_name', (self.task_cycle_name))//存入用户上次请求成功的加分周期。
+									self.add_employee_show = false;
+									self.$message.success('此次操作成功' + res.data.data.success + '条,失败' + res.data.data.error + '条,已经存在的' + res.data.data.exist + '条');
+									// self.err_open_right();
 
-    editDetails() {},
-    handleSelectionChange(val) {
-      this.del_arr.ids = [];
-      val.forEach((element) => {
-        this.del_arr.ids.push(element.id);
-      });
-      this.val_page = val
+									// self.open_right();
 
-      
-    },
-    add_item() {},
-    // 批量删除
-    del_item() {
-      let self = this;
-      if (self.del_arr.ids.length !== 0) {
-        self
-          .$confirm("此操作将永久删除该人员的自动加分, 是否继续?", "提示", {
-            confirmButtonText: "确定",
-            cancelButtonText: "取消",
-            type: "warning",
-          })
-          .then(() => {
-            self
-              .$axios({
-                url: "/api/integral/auto/delete/many",
-                method: "post",
-                data: self.del_arr,
-              })
-              .then((res) => {
-                if (res.data.code == 1) {
-                  self.$message.success(res.data.msg);
-                  // 判断当页的总数与选中的数量是否相等,如果相等,此页就无数据,就请求上一页的数据
-                if(this.table_list.length == this.val_page.length){
-                  if(this.page !== 1){//判断不在第一页的时候执行
-                    this.page=this.page-1
-                  }
-                }
-                  self.open_right();
-                } else {
-                  self.$message.error(res.data.msg);
-                }
-              })
-              .catch((e) => {
-                // self.$message.error(e.data.msg); 
-              })
-              .finally(() => {
-                self.loading = false;
-              });
-          })
-          .catch(() => {});
-      } else {
-        self.$message.error("请选择要移除的人员");
-      }
-    },
-    // 关闭提示语
-    tips_close() {
-      localStorage.setItem("voluntarilyPoint", "true");
-      this.tips_show = false;
-    },
-    //新增规则
-    add_rules_detail() {
-      this.dialogFormVisible = true;
-      this.rules_detail_title = false;
-    },
+									self.get_role_lists();
+								} else {
+									self.$message.error(res.data.msg);
+								}
+							})
+							.finally(() => {
+								self.loading = false;
+							});
+					}
+				} else {
+					return false;
+				}
+			});
+		},
 
+		editDetails() {},
+		handleSelectionChange(val) {
+			this.del_arr.ids = [];
+			val.forEach(element => {
+				this.del_arr.ids.push(element.id);
+			});
+			this.val_page = val;
+		},
+		add_item() {},
+		// 批量删除
+		del_item() {
+			let self = this;
+			if (self.del_arr.ids.length !== 0) {
+				self.$confirm('此操作将永久删除该人员的自动加分, 是否继续?', '提示', {
+					confirmButtonText: '确定',
+					cancelButtonText: '取消',
+					type: 'warning'
+				}).then(() => {
+					self.$axios({
+						url: '/api/integral/auto/delete/many',
+						method: 'post',
+						data: self.del_arr
+					})
+						.then(res => {
+							if (res.data.code == 1) {
+								self.$message.success(res.data.msg);
+								// 判断当页的总数与选中的数量是否相等,如果相等,此页就无数据,就请求上一页的数据
+								if (this.table_list.length == this.val_page.length) {
+									if (this.page !== 1) {
+										//判断不在第一页的时候执行
+										this.page = this.page - 1;
+									}
+								}
+								self.open_right();
+							} else {
+								self.$message.error(res.data.msg);
+							}
+						})
+						.finally(() => {
+							self.loading = false;
+						});
+				});
+			} else {
+				self.$message.error('请选择要移除的人员');
+			}
+		},
+		// 关闭提示语
+		tips_close() {
+			localStorage.setItem('voluntarilyPoint', 'true');
+			this.tips_show = false;
+		},
+		//新增规则
+		add_rules_detail() {
+			this.dialogFormVisible = true;
+			this.rules_detail_title = false;
+		},
 
-    editRule(form) {
-      let self = this;
-      let data = null;
-      self.rules_detail_form.max_point = self.rules_detail_form.min_point;
-      if (this.rules_detail_title == false) {
-        data = {
-          items: [self.rules_detail_form],
-        };
-      } else {
-        self.rules_detail_form.item_id = self.rules_detail_form.id;
-        data = self.rules_detail_form;
-      }
-      self.$refs[form].validate((valid) => {
-        if (valid) {
-          this.disabled = true;
-          if (this.is_attendance) {
-            self.rules_detail_form.is_attendance = 1;
-          } else {
-            self.rules_detail_form.is_attendance = 0;
-          }
-          self
-            .$axios({
-              url: this.rules_detail_title
-                ? "api/integral/rule/items/edit"
-                : "/api/integral/rule/items",
-              method: "post",
-              data: data,
-            })
-            .then((res) => {
-              this.disabled = false;
-              this.dialogFormVisible = false;
-              setTimeout(() => {
-                this.is_attendance = false;
-              }, 300);
-              if (res.data.code == 1) {
-                self.$message.success(res.data.msg);
-                self.rules_detail_show = false;
-                self.jieguoId = res.data.data.item_id;
-                // self.add_employee_id = res.data.data.item_id;
-                self.add_rulse_id = self.rules_detail_form.rule_id;
-                self.get_role_lists()
-                if (this.rules_detail_title == false) {
-                  setTimeout(() => {
-                    self.add_employee_show = true;
-                  }, 600);
-                }
-              } else {
-                this.disabled = false;
-                this.dialogFormVisible = false;
-                self.$message.error(res.data.msg);
-              }
-            })
-            .catch((e) => {
-              this.disabled = false;
-              this.dialogFormVisible = false;
-              // self.$message.error(e.data.msg);
-            })
-            .finally(() => {
-              self.loading = false;
-            });
-        } else {
-          return false;
-        }
-      });
-    },
-    // 点击确定提交积分规则
-    next(form) {
-      let self = this;
-      let data = null;
-      self.rules_detail_form.max_point = self.rules_detail_form.min_point;
-      if (this.rules_detail_title == false) {
-        data = {
-          items: [self.rules_detail_form],
-        };
-      } else {
-        self.rules_detail_form.item_id = self.rules_detail_form.id;
-        data = self.rules_detail_form;
-      }
-      self.$refs[form].validate((valid) => {
-        if (valid) {
-          this.disabled = true;
-          if (this.is_attendance) {
-            self.rules_detail_form.is_attendance = 1;
-          } else {
-            self.rules_detail_form.is_attendance = 0;
-          }
-          self
-            .$axios({
-              url: this.rules_detail_title
-                ? "api/integral/rule/items/edit"
-                : "/api/integral/rule/items",
-              method: "post",
-              data: data,
-            })
-            .then((res) => {
-              this.disabled = false;
-              this.dialogFormVisible = false;
-              setTimeout(() => {
-                this.is_attendance = false;
-              }, 300);
-              if (res.data.code == 1) {
-                self.$message.success(res.data.msg);
-                self.rules_detail_show = false;
-                // self.jieguoId = res.data.data.item_id;
-                self.add_employee_id = res.data.data.item_id;
-                self.add_rulse_id = self.rules_detail_form.rule_id;
-                if (this.rules_detail_title == false) {
-                  setTimeout(() => {
-                    self.add_employee_show = true;
-                  }, 600);
-                }
-              } else {
-              this.disabled = false;
-              this.dialogFormVisible = false;
-                self.$message.error(res.data.msg);
-              }
-            })
-            .catch((e) => {
-              this.disabled = false;
-              this.dialogFormVisible = false;
-              self.$message.error(e.data.msg);
-            })
-            .finally(() => {
-              self.loading = false;
-            });
-        } else {
-          return false;
-        }
-      });
-    },
-    //点击取消
-    rules_detail_close(form) {
-      this.dialogFormVisible = false;
-      this.rules_detail_show = false;
-      this.$refs[form].resetFields();
-    },
-    open_right(data) {
-      let self = this;
-      self.table_loading = true;
-      if (data) {
-        self.add_employee_id = data.id;
-        self.add_rulse_id = data.rule_id;
-        self.right_rules_detail = data;
-      }
-      var params = {
-        params: {
-          item_id: self.add_employee_id || "",
-          employee_id: self.employee_id || "",
-          page: self.page,
-          page_size:Number(this.pagesize)
-        },
-      };
-      self.$axios
-        .get("/api/integral/auto/list", params)
-        .then((res) => {
-          self.table_loading = false;
-          if (res.data.code == 1) {
-            self.table_list = res.data.data.list || [];
-            self.total = res.data.data.total;
-          } else {
-            self.$message.error(res.data.msg);
-          }
-        })
-        .finally(() => {
-          self.table_loading = false;
-        });
-    },
+		editRule(form) {
+			let self = this;
+			let data = null;
+			self.rules_detail_form.max_point = self.rules_detail_form.min_point;
+			if (this.rules_detail_title == false) {
+				data = {
+					items: [self.rules_detail_form]
+				};
+			} else {
+				self.rules_detail_form.item_id = self.rules_detail_form.id;
+				data = self.rules_detail_form;
+			}
+			self.$refs[form].validate(valid => {
+				if (valid) {
+					this.disabled = true;
+					if (this.is_attendance) {
+						self.rules_detail_form.is_attendance = 1;
+					} else {
+						self.rules_detail_form.is_attendance = 0;
+					}
+					self.$axios({
+						url: this.rules_detail_title ? 'api/integral/rule/items/edit' : '/api/integral/rule/items',
+						method: 'post',
+						data: data
+					})
+						.then(res => {
+							this.disabled = false;
+							this.dialogFormVisible = false;
+							setTimeout(() => {
+								this.is_attendance = false;
+							}, 300);
+							if (res.data.code == 1) {
+								self.$message.success(res.data.msg);
+								self.rules_detail_show = false;
+								self.jieguoId = res.data.data.item_id;
+								self.add_rulse_id = self.rules_detail_form.rule_id;
+								self.get_role_lists();
+								if (this.rules_detail_title == false) {
+									setTimeout(() => {
+										self.add_employee_show = true;
+									}, 600);
+								}
+							} else {
+								this.disabled = false;
+								this.dialogFormVisible = false;
+								self.$message.error(res.data.msg);
+							}
+						})
+						.catch(e => {
+							this.disabled = false;
+							this.dialogFormVisible = false;
+						})
+						.finally(() => {
+							self.loading = false;
+						});
+				} else {
+					return false;
+				}
+			});
+		},
+		// 点击确定提交积分规则
+		next(form) {
+			let self = this;
+			let data = null;
+			self.rules_detail_form.max_point = self.rules_detail_form.min_point;
+			if (this.rules_detail_title == false) {
+				data = {
+					items: [self.rules_detail_form]
+				};
+			} else {
+				self.rules_detail_form.item_id = self.rules_detail_form.id;
+				data = self.rules_detail_form;
+			}
+			self.$refs[form].validate(valid => {
+				if (valid) {
+					this.disabled = true;
+					if (this.is_attendance) {
+						self.rules_detail_form.is_attendance = 1;
+					} else {
+						self.rules_detail_form.is_attendance = 0;
+					}
+					self.$axios({
+						url: this.rules_detail_title ? 'api/integral/rule/items/edit' : '/api/integral/rule/items',
+						method: 'post',
+						data: data
+					})
+						.then(res => {
+							this.disabled = false;
+							this.dialogFormVisible = false;
+							setTimeout(() => {
+								this.is_attendance = false;
+							}, 300);
+							if (res.data.code == 1) {
+								self.$message.success(res.data.msg);
+								self.rules_detail_show = false;
+								// self.jieguoId = res.data.data.item_id;
+								self.add_employee_id = res.data.data.item_id;
+								self.add_rulse_id = self.rules_detail_form.rule_id;
+								if (this.rules_detail_title == false) {
+									setTimeout(() => {
+										self.add_employee_show = true;
+									}, 600);
+								}
+							} else {
+								this.disabled = false;
+								this.dialogFormVisible = false;
+								self.$message.error(res.data.msg);
+							}
+						})
+						.catch(e => {
+							this.disabled = false;
+							this.dialogFormVisible = false;
+						})
+						.finally(() => {
+							self.loading = false;
+						});
+				} else {
+					return false;
+				}
+			});
+		},
+		//点击取消
+		rules_detail_close(form) {
+			this.dialogFormVisible = false;
+			this.rules_detail_show = false;
+			this.$refs[form].resetFields();
+		},
+		open_right(data) {
+			let self = this;
+			self.table_loading = true;
+			if (data) {
+				self.add_employee_id = data.id;
+				self.add_rulse_id = data.rule_id;
+				self.right_rules_detail = data;
+			}
+			var params = {
+				params: {
+					item_id: self.add_employee_id || '',
+					employee_id: self.employee_id || '',
+					page: self.page,
+					page_size: Number(this.pagesize)
+				}
+			};
+			self.$axios
+				.get('/api/integral/auto/list', params)
+				.then(res => {
+					self.table_loading = false;
+					if (res.data.code == 1) {
+						self.table_list = res.data.data.list || [];
+						self.total = res.data.data.total;
+					} else {
+						self.$message.error(res.data.msg);
+					}
+				})
+				.finally(() => {
+					self.table_loading = false;
+				});
+		},
 
-    //   编辑规则
-    edit_rules(data) {
-      this.rules_detail_title = true;
-      this.dialogFormVisible = true;
-      this.rules_detail_title = true;
-      this.rules_detail_form = JSON.parse(
-        JSON.stringify(this.right_rules_detail)
-      );
-      this.is_attendance =
-        this.rules_detail_form.is_attendance == "0" ? false : true;
-    },
-    // 删除规则
-    del_rules_detail(item) {
-      this.$confirm("此操作将永久删除该规则, 是否继续?", "提示", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-      }).then(() => {
-        this.disabled = true;
-        this.$axios({
-          url: "/api/integral/rule/items/destroy",
-          method: "post",
-          data: {
-            item_id: item.id,
-          },
-        })
-          .then((res) => {
-            this.dialogFormVisible = false;
-            this.disabled = false;
-            if (res.data.code == 1) {
-              this.get_role_lists();
-              this.$message.success(res.data.msg);
-              this.rules_detail_show = false;
-              this.get_rule_trees();
-            } else {
-              
-              this.dialogFormVisible = false;
-              this.disabled = false;
-              this.$message.error(res.data.msg);
-            }
-          })
-          .catch((err) => {
-            this.dialogFormVisible = false;
-            this.disabled = false;
-          })
-          .finally(() => {
-            this.loading = false;
-          });
-      });
-    },
+		//   编辑规则
+		edit_rules(data) {
+			this.rules_detail_title = true;
+			this.dialogFormVisible = true;
+			this.rules_detail_title = true;
+			this.rules_detail_form = JSON.parse(JSON.stringify(this.right_rules_detail));
+			this.is_attendance = this.rules_detail_form.is_attendance == '0' ? false : true;
+		},
+		// 删除规则
+		del_rules_detail(item) {
+			this.$confirm('此操作将永久删除该规则, 是否继续?', '提示', {
+				confirmButtonText: '确定',
+				cancelButtonText: '取消',
+				type: 'warning'
+			}).then(() => {
+				this.disabled = true;
+				this.$axios({
+					url: '/api/integral/rule/items/destroy',
+					method: 'post',
+					data: {
+						item_id: item.id
+					}
+				})
+					.then(res => {
+						this.dialogFormVisible = false;
+						this.disabled = false;
+						if (res.data.code == 1) {
+							this.get_role_lists();
+							this.$message.success(res.data.msg);
+							this.rules_detail_show = false;
+							this.get_rule_trees();
+						} else {
+							this.dialogFormVisible = false;
+							this.disabled = false;
+							this.$message.error(res.data.msg);
+						}
+					})
+					.catch(err => {
+						this.dialogFormVisible = false;
+						this.disabled = false;
+					})
+					.finally(() => {
+						this.loading = false;
+					});
+			});
+		},
 
-    //新增加分组展示不同渲染
-    add_grouping() {
-      this.dialogVisible = true;
-      this.grouping_type = false;
-    },
-    // 新增加分组
-    submitForm(formName) {
-      this.$refs[formName].validate((valid) => {
-        if (valid) {
-          let data = this.grouping_type
-            ? {
-                rule_id: this.numberValidateForm.id,
-                pid: "0",
-                name: this.numberValidateForm.name,
-              }
-            : {
-                cycle_type: "2",
-                pid: "0",
-                name: this.numberValidateForm.name,
-              };
-          this.disabled = true;
-          this.$axios({
-            url: this.grouping_type
-              ? "api/integral/rule/edit"
-              : "/api/integral/rule",
-            method: "post",
-            data: data,
-          })
-            .then((res) => {
-              this.dialogVisible = false;
-              this.disabled = false;
-              if (res.data.code == '1') {
-                this.get_role_lists();
-                this.$message.success(
-                  this.grouping_type ? "修改积分规则" : res.data.msg
-                );
-              }else{
-                this.dialogVisible = false;
-                this.disabled = false;
-              }
-            })
-            .catch((err) => {
-              this.dialogVisible = false;
-              this.disabled = false;
-            });
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-    //修改分组
-    edit_grouping(item) {
-      this.dialogVisible = true;
-      this.numberValidateForm = JSON.parse(JSON.stringify(item));
-      this.grouping_type = true;
-    },
-    //删除分组
-    del_grouping(item) {
-      this.$confirm("此操作将永久删除该分类, 是否继续?", "提示", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-      })
-        .then(() => {
-          this.disabled = true;
-          this.$axios({
-            url: "api/integral/rule/destroy",
-            method: "post",
-            data: {
-              rule_id: item.id,
-            },
-          })
-            .then((res) => {
-              this.dialogVisible = false;
-              this.disabled = false;
-              if (res.data.code == 1) {
-                this.get_role_lists();
-                this.$message.success("删除成功");
-              }
-            })
-            .catch((err) => {
-              this.dialogVisible = false;
-              this.disabled = false;
-            });
-        })
-        .catch(() => {
-          setTimeout(() => {
-            this.dialogVisible = false;
-          }, 300);
-        });
-    },
-    // 获取分组
-    get_role_lists() {
-      this.table_loading = true
-      this.rule_trees_load = true;
-      this.$axios
-        .get("/api/integral/rule/trees", {
-          params: {
-            cycle_type: "2",
-          },
-        })
-        .then((res) => {
-          this.is_attendance =
-            this.rules_detail_form.is_attendance == "0" ? false : true;
-          this.rule_list = res.data.data.rule_tree;
-          this.item_list = res.data.data.item_list;
-          this.rule_trees_load = false;
-          if (this.item_list !== null) {
-            for (const key in this.item_list) {
-              for (let i = 0; i < this.item_list[key].length; i++) {
-                if (i == 0) {
-                  this.open_right(this.item_list[key][i]);
-                  return false;
-                }
-              }
-            }
-          }
-          this.table_loading = false;
-        })
-    },
-  },
+		//新增加分组展示不同渲染
+		add_grouping() {
+			this.dialogVisible = true;
+			this.grouping_type = false;
+		},
+		// 新增加分组
+		submitForm(formName) {
+			this.$refs[formName].validate(valid => {
+				if (valid) {
+					let data = this.grouping_type
+						? {
+								rule_id: this.numberValidateForm.id,
+								pid: '0',
+								name: this.numberValidateForm.name
+						  }
+						: {
+								cycle_type: '2',
+								pid: '0',
+								name: this.numberValidateForm.name
+						  };
+					this.disabled = true;
+					this.$axios({
+						url: this.grouping_type ? 'api/integral/rule/edit' : '/api/integral/rule',
+						method: 'post',
+						data: data
+					})
+						.then(res => {
+							this.dialogVisible = false;
+							this.disabled = false;
+							if (res.data.code == '1') {
+								this.get_role_lists();
+								this.$message.success(this.grouping_type ? '修改积分规则' : res.data.msg);
+							} else {
+								this.dialogVisible = false;
+								this.disabled = false;
+							}
+						})
+						.catch(err => {
+							this.dialogVisible = false;
+							this.disabled = false;
+						});
+				} else {
+					console.log('error submit!!');
+					return false;
+				}
+			});
+		},
+		//修改分组
+		edit_grouping(item) {
+			this.dialogVisible = true;
+			this.numberValidateForm = JSON.parse(JSON.stringify(item));
+			this.grouping_type = true;
+		},
+		//删除分组
+		del_grouping(item) {
+			this.$confirm('此操作将永久删除该分类, 是否继续?', '提示', {
+				confirmButtonText: '确定',
+				cancelButtonText: '取消',
+				type: 'warning'
+			})
+				.then(() => {
+					this.disabled = true;
+					this.$axios({
+						url: 'api/integral/rule/destroy',
+						method: 'post',
+						data: {
+							rule_id: item.id
+						}
+					})
+						.then(res => {
+							this.dialogVisible = false;
+							this.disabled = false;
+							if (res.data.code == 1) {
+								this.get_role_lists();
+								this.$message.success('删除成功');
+							}
+						})
+						.catch(err => {
+							this.dialogVisible = false;
+							this.disabled = false;
+						});
+				})
+				.catch(() => {
+					setTimeout(() => {
+						this.dialogVisible = false;
+					}, 300);
+				});
+		},
+		// 获取分组
+		get_role_lists() {
+			this.table_loading = true;
+			this.rule_trees_load = true;
+			this.$axios
+				.get('/api/integral/rule/trees', {
+					params: {
+						cycle_type: '2'
+					}
+				})
+				.then(res => {
+					this.is_attendance = this.rules_detail_form.is_attendance == '0' ? false : true;
+					this.rule_list = res.data.data.rule_tree;
+					this.item_list = res.data.data.item_list;
+					this.rule_trees_load = false;
+					if (this.item_list !== null) {
+						for (const key in this.item_list) {
+							for (let i = 0; i < this.item_list[key].length; i++) {
+								if (i == 0) {
+									this.open_right(this.item_list[key][i]);
+									return false;
+								}
+							}
+						}
+					}
+					this.table_loading = false;
+				});
+		}
+	}
 };
 </script>
 
 <style scoped="scoped" lang="scss">
 .rule_name {
-  border-right: 0;
-  margin-top: 16px;
-  li {
-    border-bottom: 1px #f8f8f8 solid;
-    overflow: hidden;
-    white-space: nowrap;
-    text-overflow: ellipsis;
-    ::v-deep .el-submenu__title {
-      padding: 0 10px !important;
-      i.el-submenu__icon-arrow.el-icon-arrow-down {
-        color: #909399 !important;
-      }
-    }
-    li:hover .el-submenu__title {
-      background: #e7f6ff;
-    }
-    ul {
-      li.is-active {
-        background-color: #e7f6ff !important;
-      }
-    }
-  }
-  ::v-deep .is-opened .el-submenu__title .title_top {
-    color: #409eff !important;
-  }
-  ::v-deep .is-opened .el-menu .el-menu-item span {
-    color: #333;
-  }
-  ::v-deep .is-opened .el-menu .is-active span {
-    color: #409eff;
-  }
+	border-right: 0;
+	margin-top: 16px;
+	li {
+		border-bottom: 1px #f8f8f8 solid;
+		overflow: hidden;
+		white-space: nowrap;
+		text-overflow: ellipsis;
+		::v-deep .el-submenu__title {
+			padding: 0 10px !important;
+			i.el-submenu__icon-arrow.el-icon-arrow-down {
+				color: #909399 !important;
+			}
+		}
+		li:hover .el-submenu__title {
+			background: #e7f6ff;
+		}
+		ul {
+			li.is-active {
+				background-color: #e7f6ff !important;
+			}
+		}
+	}
+	::v-deep .is-opened .el-submenu__title .title_top {
+		color: #409eff !important;
+	}
+	::v-deep .is-opened .el-menu .el-menu-item span {
+		color: #333;
+	}
+	::v-deep .is-opened .el-menu .is-active span {
+		color: #409eff;
+	}
 }
 
 .rule_list {
-  position: relative;
-  display: table-cell;
+	position: relative;
+	display: table-cell;
 }
 
 .rule_list:after {
-  content: " ";
-  position: absolute;
-  top: 0;
-  left: 0;
-  bottom: 0;
-  width: 1px;
-  background: #ebeef5;
+	content: ' ';
+	position: absolute;
+	top: 0;
+	left: 0;
+	bottom: 0;
+	width: 1px;
+	background: #ebeef5;
 }
 .terr-right {
-  min-height: calc(100vh - 224px);
-  .name {
-    height: 100%;
-    font-size: 18px;
-    margin-right: 20px;
-  }
-  .btns button {
-    margin-top: 20px;
-    margin-right: 5px;
-  }
+	min-height: calc(100vh - 224px);
+	.name {
+		height: 100%;
+		font-size: 18px;
+		margin-right: 20px;
+	}
+	.btns button {
+		margin-top: 20px;
+		margin-right: 5px;
+	}
 }
 .terr-left button {
-  margin: 0 auto;
-  display: block;
-  margin-bottom: 10px;
+	margin: 0 auto;
+	display: block;
+	margin-bottom: 10px;
 }
 </style>