| 
					
				 | 
			
			
				@@ -0,0 +1,82 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+'use strict'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * @author Mai 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * @date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * @version 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const unitListOrder = (function () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let orderSetting = getLocalCache('zh-calc-unit-list-order'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (!orderSetting) orderSetting = 'create_time|up'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const pinyin = new PinYinOrder(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    function CompareStr (x, y) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return pinyin.compareWord(x, y); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    function reOrderUnits (orderStr, htmlClass = '#unit_list') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (orderStr) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            orderSetting = orderStr; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            setLocalCache('zh-calc-unit-list-order', orderStr); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        const orders = orderSetting.split('|'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (orders[0] === 'name') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            unitList.sort(function (a, b) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return orders[1] === 'up' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ? CompareStr(a[orders[0]], b[orders[0]]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    : CompareStr(b[orders[0]], a[orders[0]]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else if (orders[0] === 'create_time') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            unitList.sort(function (a, b){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return orders[1] === 'up' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ? Date.parse(a[orders[0]]) - Date.parse(b[orders[0]]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    : Date.parse(b[orders[0]]) - Date.parse(a[orders[0]]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else if (orders[0] === 'type') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            unitList.sort(function (a, b){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return orders[1] === 'up' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ? a[orders[0]] - b[orders[0]] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    : b[orders[0]] - a[orders[0]]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        resetHeaderHtml(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        $(htmlClass).html(getUnitsHtml()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        setUnitRightHtml(unitList[0].id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    function getOrderButton(field) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        const orders = orderSetting.split('|'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        const button = field === orders[0] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ? (orders[1] === 'up' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ? '<i class="fa fa-sort-amount-asc" aria-hidden="true" onclick="unitListOrder.reOrderUnits(\'' + field + '|down' + '\')"></i>' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                : '<i class="fa fa-sort-amount-desc" aria-hidden="true" onclick="unitListOrder.reOrderUnits(\'' + field + '|up' + '\')"></i>') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            : '<i class="fa fa-sort" aria-hidden="true" onclick="unitListOrder.reOrderUnits(\'' + field + '|up' + '\')"></i>'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return '<a href="javascript:void(0)" class="btn btn-sm ml-1">' + button + '</a>'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    function resetHeaderHtml() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        $('#unit_header').html(`<tr> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        <th>序号</th> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        <th>单位名称 ${unitListOrder.getOrderButton('name')}</th> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        <th>账号数</th> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        <th>类型 ${unitListOrder.getOrderButton('type')}</th> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        <th class="text-center">备注</th></tr>`); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    function getUnitsHtml() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let html = ''; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (unitList.length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            for (const [index, u] of unitList.entries()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                html += `<tr ${index === 0 ? 'class="table-warning"' : ''} data-id="${u.id}"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        <td width="50px">${index+1}</td> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        <td ><a href="javascript:void(0)">${u.name}</a></td> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        <td width="80px">${u.account_num}</td> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        <td width="100px">${accountGroup[u.type]}</td> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        <td width="150px">${u.basic ? u.basic : ''}</td> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    </tr>`; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return html; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return { reOrderUnits, getOrderButton, resetHeaderHtml } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})(); 
			 |