Browse Source

init model

shuij 4 years ago
parent
commit
651b8db6d1
38 changed files with 722 additions and 61 deletions
  1. 0 61
      WeiChat/build.gradle
  2. 1 0
      devicemanager/.gitignore
  3. 102 0
      devicemanager/build.gradle
  4. BIN
      devicemanager/libs/autoupdatesdk-release.aar
  5. 21 0
      devicemanager/proguard-rules.pro
  6. 124 0
      devicemanager/src/main/AndroidManifest.xml
  7. BIN
      devicemanager/src/main/assets/OpenSans-Light.ttf
  8. BIN
      devicemanager/src/main/assets/OpenSans-Regular.ttf
  9. BIN
      devicemanager/src/main/assets/gif_splash_welcome.gif
  10. 2 0
      devicemanager/src/main/assets/idl-license.face-android
  11. BIN
      devicemanager/src/main/assets/iflytek/recognize.xml
  12. BIN
      devicemanager/src/main/assets/iflytek/voice_bg.9.png
  13. BIN
      devicemanager/src/main/assets/iflytek/voice_empty.png
  14. BIN
      devicemanager/src/main/assets/iflytek/voice_full.png
  15. BIN
      devicemanager/src/main/assets/iflytek/waiting.png
  16. BIN
      devicemanager/src/main/assets/iflytek/warning.png
  17. 31 0
      devicemanager/src/main/assets/submit.css
  18. 171 0
      devicemanager/src/main/assets/submit.html
  19. 14 0
      devicemanager/src/main/java/com/yingtang/devicemanager/SplashActivity.java
  20. 30 0
      devicemanager/src/main/res/drawable-v24/ic_launcher_foreground.xml
  21. 170 0
      devicemanager/src/main/res/drawable/ic_launcher_background.xml
  22. 15 0
      devicemanager/src/main/res/layout/activity_splash.xml
  23. 5 0
      devicemanager/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
  24. 5 0
      devicemanager/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
  25. BIN
      devicemanager/src/main/res/mipmap-hdpi/ic_launcher.png
  26. BIN
      devicemanager/src/main/res/mipmap-hdpi/ic_launcher_round.png
  27. BIN
      devicemanager/src/main/res/mipmap-mdpi/ic_launcher.png
  28. BIN
      devicemanager/src/main/res/mipmap-mdpi/ic_launcher_round.png
  29. BIN
      devicemanager/src/main/res/mipmap-xhdpi/ic_launcher.png
  30. BIN
      devicemanager/src/main/res/mipmap-xhdpi/ic_launcher_round.png
  31. BIN
      devicemanager/src/main/res/mipmap-xxhdpi/ic_launcher.png
  32. BIN
      devicemanager/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
  33. BIN
      devicemanager/src/main/res/mipmap-xxxhdpi/ic_launcher.png
  34. BIN
      devicemanager/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
  35. 10 0
      devicemanager/src/main/res/values/colors.xml
  36. 3 0
      devicemanager/src/main/res/values/strings.xml
  37. 17 0
      devicemanager/src/test/java/com/yingtang/devicemanager/ExampleUnitTest.java
  38. 1 0
      settings.gradle

+ 0 - 61
WeiChat/build.gradle

@@ -1,7 +1,5 @@
 apply plugin: 'com.android.application'
 apply plugin: 'com.getkeepsafe.dexcount'
-//apply plugin: 'me.tatarka.retrolambda'
-
 //定义时间
 def releaseTime() {
     // return new Date().format("yyyyMMdd.HHmm.ss")
@@ -11,7 +9,6 @@ def releaseTime() {
 def getVersionName() {
     return rootProject.ext.android.versionName
 }
-
 //读取版本号
 def getVersionCode() {
     def versionFile = file('version.properties')
@@ -49,13 +46,9 @@ def getVersionCode() {
         throw new GradleException("Could not find version.properties!")
     }
 }
-
-
 android {
     def versionArray = getVersionCode()
-    //====================Add below two line=============
     dexOptions {
-//        incremental true
         javaMaxHeapSize "4g" //specify the heap size for the dex process
         preDexLibraries = false //delete the already predexed libraries
         //是否支持大工程模式
@@ -82,17 +75,13 @@ android {
         applicationId project.applicationId
         minSdkVersion rootProject.ext.android.minSdkVersion
         targetSdkVersion rootProject.ext.android.targetSdkVersion
-//        versionCode rootProject.ext.android.versionCode
-//        versionName rootProject.ext.android.versionName
         versionCode versionArray[1]
         versionName versionNames
         multiDexEnabled true
-//        signingConfig signingConfigs.config
         manifestPlaceholders = [UMENG_CHANNEL_VALUE: "umeng"]
         ndk {
             abiFilters "armeabi", "armeabi-v7a", "x86", "mips", "x86_64", "mips64"
         }
-
         renderscriptTargetApi rootProject.ext.android.compileSdkVersion
         renderscriptSupportModeEnabled true
     }
@@ -108,7 +97,6 @@ android {
             jniLibs.srcDirs = ['src/main/jniLibs']
         }
     }
-
     packagingOptions {
         exclude 'META-INF/LICENSE.txt'
         exclude 'META-INF/NOTICE.txt'
@@ -126,33 +114,10 @@ android {
             }
         }
         debug {
-            //signingConfig signingConfigs.config
         }
     }
 
     flavorDimensions "usoft"
-
-    /*productFlavors {
-        wandoujia {
-            dimension "usoft"
-        }
-        _360 {
-            dimension "usoft"
-        }
-        baidu {
-            dimension "usoft"
-        }
-        xiaomi {
-            dimension "usoft"
-        }
-        tencent {
-            dimension "usoft"
-        }
-        taobao {
-            dimension "usoft"
-        }
-    }*/
-
     productFlavors.all {
         flavor -> flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
     }
@@ -160,32 +125,6 @@ android {
     configurations {
         all*.exclude group: 'com.android.volley'
     }
-
-    /*applicationVariants.all { variant ->
-        variant.outputs.each { output ->
-            def outputFile = output.outputFile
-            def fileName
-            if (outputFile != null && outputFile.name.endsWith('.apk')) {
-                if (variant.buildType.name.equals('release')) {
-                    //赋值app属性版本名
-                    //variant.mergedFlavor.versionName = getVersionName() + "_" + variant.productFlavors[0].name+"(Build"+currentVersionCode+")"
-                    //variant.mergedFlavor.versionName ="v"+versionArray[0].toString().substring(0,1)+"."+ versionArray[0].toString().substring(1,2)+"."+  versionArray[0].toString().substring(2,3)
-                    def releaseInfo = "v" + versionArray[0].toString().substring(0, 1) + "." + versionArray[0].toString().substring(1, 2) + "." + versionArray[0].toString().substring(2, 3) + "_" + variant.productFlavors[0].name + "(Build" + versionArray[1] + ")"
-                    fileName = "WeiChat_${releaseInfo}_release.apk"
-
-                } else if (variant.buildType.name.equals('debug')) {
-                    //赋值app属性版本名
-                    variant.mergedFlavor.versionName = getVersionName() + "_" + releaseTime() + "_" + variant.productFlavors[0].name + "(Build" + versionArray[3] + ")" + "_debug"
-                    def debugInfo = getVersionName() + "_" + releaseTime() + "_" + variant.productFlavors[0].name + "(Build" + versionArray[3] + ")"
-                    fileName = "WeiChat_${debugInfo}_debug.apk"
-
-                }
-                output.outputFile = new File(outputFile.parent, fileName)
-            }
-        }
-    }*/
-
-
 }
 
 repositories {

+ 1 - 0
devicemanager/.gitignore

@@ -0,0 +1 @@
+/build

+ 102 - 0
devicemanager/build.gradle

@@ -0,0 +1,102 @@
+apply plugin: 'com.android.application'
+apply plugin: 'com.getkeepsafe.dexcount'
+
+android {
+    compileSdkVersion rootProject.ext.android.compileSdkVersion
+    buildToolsVersion rootProject.ext.android.buildToolsVersion
+    defaultConfig {
+        applicationId "com.yingtang.devicemanager"
+        minSdkVersion rootProject.ext.android.minSdkVersion
+        targetSdkVersion rootProject.ext.android.targetSdkVersion
+        versionCode 1
+        versionName "1.0"
+        multiDexEnabled true
+    }
+
+    buildTypes {
+        release {
+            minifyEnabled false
+            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
+        }
+    }
+    compileOptions {
+        sourceCompatibility JavaVersion.VERSION_1_8
+        targetCompatibility JavaVersion.VERSION_1_8
+    }
+    useLibrary 'org.apache.http.legacy'
+    lintOptions {
+        checkReleaseBuilds false
+        abortOnError false
+    }
+
+    sourceSets {
+        main {
+            jniLibs.srcDirs = ['src/main/jniLibs']
+        }
+    }
+    packagingOptions {
+        exclude 'META-INF/LICENSE.txt'
+        exclude 'META-INF/NOTICE.txt'
+    }
+}
+repositories {
+    flatDir {
+        dirs 'libs'
+    }
+}
+
+
+buildscript {
+    repositories {
+        mavenCentral()
+    }
+    dependencies {
+        classpath 'com.getkeepsafe.dexcount:dexcount-gradle-plugin:0.6.4'
+    }
+}
+
+dependencies {
+    api fileTree(include: ['*.jar'], dir: 'libs')
+    testImplementation deps.junit
+    implementation deps.appcompatV7
+    implementation deps.supportV4
+    implementation deps.design
+    implementation(deps.stetho) {
+        force = true
+    }
+    implementation deps.jodatime
+    implementation deps.systembartint
+    implementation deps.photoView
+    implementation deps.tagGroup
+//    implementation deps.analytics
+    implementation deps.activityOnCrash
+    implementation deps.stickyListHeaders
+    implementation deps.stickyGridHeaders
+    implementation deps.materialDialogs
+    implementation deps.okhttp
+    api project(':common')
+    api project(':appmessages')
+    api project(':network')
+    api project(':imageload')
+    api project(':applogin')
+    api project(':apptasks')
+    api project(':appcontact')
+    api project(':appme')
+    api project(':appworks')
+    api project(':appbooking')
+    api project(':appmusic')
+    api project(':apputils')
+    implementation 'com.android.support.constraint:constraint-layout:1.0.2'
+    implementation(name: 'autoupdatesdk-release', ext: 'aar')
+}
+dexcount {
+    format = "json"
+    includeClasses = false
+    includeFieldCount = true
+    includeTotalMethodCount = false
+    orderByMethodCount = false
+    verbose = false
+    maxTreeDepth = Integer.MAX_VALUE
+    teamCityIntegration = false
+    enableForInstantRun = false
+}

BIN
devicemanager/libs/autoupdatesdk-release.aar


+ 21 - 0
devicemanager/proguard-rules.pro

@@ -0,0 +1,21 @@
+# Add project specific ProGuard rules here.
+# You can control the set of applied configuration files using the
+# proguardFiles setting in build.gradle.
+#
+# For more details, see
+#   http://developer.android.com/guide/developing/tools/proguard.html
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+#   public *;
+#}
+
+# Uncomment this to preserve the line number information for
+# debugging stack traces.
+#-keepattributes SourceFile,LineNumberTable
+
+# If you keep the line number information, uncomment this to
+# hide the original source file name.
+#-renamesourcefileattribute SourceFile

+ 124 - 0
devicemanager/src/main/AndroidManifest.xml

@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.yingtang.devicemanager">
+
+    <uses-sdk
+        android:minSdkVersion="17"
+        android:targetSdkVersion="26" />
+    <!-- share umeng -->
+    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
+    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
+    <uses-permission android:name="android.permission.INTERNET" />
+    <uses-permission android:name="android.permission.CALL_PHONE" />
+    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
+    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
+    <uses-permission android:name="android.permission.GET_TASKS" />
+    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
+    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
+    <uses-permission android:name="android.permission.USE_CREDENTIALS" />
+    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
+    <!-- 拨打电话 -->
+    <uses-permission android:name="android.permission.CALL_PHONE" />
+
+    <uses-feature android:name="android.hardware.camera" />
+    <uses-feature android:name="android.hardware.camera.autofocus" />
+    <uses-feature android:name="android.hardware.microphone" />
+
+    <uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES" />
+    <uses-permission android:name="android.permission.WAKE_LOCK" />
+    <uses-permission android:name="android.permission.GET_TASKS" />
+    <uses-permission android:name="android.permission.REORDER_TASKS" />
+    <!-- 录音录像的权限 -->
+    <uses-permission android:name="android.permission.RECORD_VIDEO" />
+    <uses-permission android:name="android.permission.RECORD_AUDIO" />
+    <uses-permission android:name="android.permission.CAMERA" />
+    <!-- 基本的 -->
+    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
+    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
+    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+    <!-- <uses-permission android:name="android.permission.INTERNET" /> -->
+    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
+    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
+    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
+    <uses-permission android:name="android.permission.USE_CREDENTIALS" />
+    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
+    <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
+    <uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
+    <uses-permission android:name="android.permission.BROADCAST_STICKY" />
+    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
+    <uses-permission android:name="android.permission.VIBRATE" />
+
+    <!-- Push service 运行需要的权限 -->
+    <uses-permission android:name="android.permission.INTERNET" />
+    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
+    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
+    <uses-permission android:name="android.permission.VIBRATE" />
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+    <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
+    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
+    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
+    <!-- 富媒体需要声明的权限 -->
+    <uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER" />
+    <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
+    <uses-permission android:name="android.permission.EXPAND_STATUS_BAR" />
+
+    <!-- 适配Android N系统必需的ContentProvider写权限声明,写权限包含应用包名-->
+    <uses-permission android:name="baidu.push.permission.WRITE_PUSHINFOPROVIDER.com.xzjmyk.pm.activity" />
+    <permission
+        android:name="baidu.push.permission.WRITE_PUSHINFOPROVIDER.com.xzjmyk.pm.activity"
+        android:protectionLevel="signature"></permission>
+
+    <!-- 百度自动更新 -->
+    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
+    <uses-permission android:name="android.permission.INTERNET" />
+    <uses-permission android:name="android.permission.GET_TASKS" />
+    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
+    <uses-permission android:name="android.permission.INTERNET" />
+    <uses-permission android:name="android.permission.VIBRATE" />
+    <uses-permission android:name="android.permission.FLASHLIGHT" />
+    <uses-permission android:name="android.permission.READ_CONTACTS" />
+    <uses-permission android:name="android.permission.WRITE_CONTACTS" />
+    <uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS" />
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
+    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
+    <uses-permission android:name="android.permission.VIBRATE" />
+    <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
+
+    <!-- 设置索尼的Badge需添加权限 -->
+    <uses-permission android:name="com.sonyericsson.home.permission.BROADCAST_BADGE" />
+
+    <uses-feature android:name="android.hardware.camera" />
+    <uses-feature android:name="android.hardware.camera" />
+    <!-- 使用照相机权限 -->
+    <uses-feature android:name="android.hardware.camera.autofocus" />
+    <!-- 计步器用到 -->
+    <uses-feature android:name="android.hardware.sensor.accelerometer" />
+
+    <application
+        android:name="com.core.app.MyApplication"
+        android:allowBackup="true"
+        android:icon="@mipmap/ic_launcher"
+        android:label="@string/app_name"
+        android:roundIcon="@mipmap/ic_launcher_round"
+        android:supportsRtl="true"
+        android:theme="@style/AppTheme">
+        <uses-library android:name="org.apache.http.legacy" android:required="false" />
+        <activity
+            android:name=".SplashActivity">
+            <intent-filter>
+                <action android:name="android.intent.action.MAIN" />
+
+                <category android:name="android.intent.category.LAUNCHER" />
+            </intent-filter>
+        </activity>
+    </application>
+
+</manifest>

BIN
devicemanager/src/main/assets/OpenSans-Light.ttf


BIN
devicemanager/src/main/assets/OpenSans-Regular.ttf


BIN
devicemanager/src/main/assets/gif_splash_welcome.gif


+ 2 - 0
devicemanager/src/main/assets/idl-license.face-android

@@ -0,0 +1,2 @@
+12FC7A335BD844EDBBD1EA4126E56711B566D8B330517DBEEA5F799B276BBD1D86E66DD18CC8954685C50564BA6349EC9431C61BAA42A80AB51FD2FB5F51DCCA8DF3A4BCFE928CEDAD17C9A2654E9B320A91C8711CF766B62CB0BA84F5012B1D8679B9FD1579DF2C708B0CE26A865AEDDA0D3A7A3D05E04C9AE3B4C92EF0E4118833379E0AC0DCC1F23E63E0C404CB9B54E465445DEF37D0012B8CB6B54A542C8C04CDDC752DD7A73BD16434BA142B558EDE20B65E64309913417BCB45533936699818911F35DEF0B6B595CF48805CCF0502EE733FE7C810B7B6C6D6DF5DFBE4273363F96B3A9C04182C9F21EAAABCF22F130F37E1FD82EE612C87F37EF96DD9
+04FAD27C007D9FF1C9B3A504BA23B7F18219D38C66CE88D2C2679BE5764D5643C3E631F822EFABDC36187749CB15D000AC2BB670FB173B8466E28050BB10868AE8FAF0F1A7F70E68B06AB86ED294F42531DE50D42E38C06F127149C205215AE2F811A4F2096FDB0A998B8FC522BD2A51E362362ECFF564B6CEBD0573DBDA86E53B6B9A9169D3FD40B005EF64B9220890626710A1BCBF0431EECDC78FD39CFAED0514BEA57BC831FF3C773B42EFF33F10D9D183CCBA13AA4D3C6E087F7B5F2778F9C1BD014845C68EE34A768F3B7862C2166C6977D27B0CFF9F9F42EB2AF9E3A357CD793B9836D50CE97994FA1C31B05D5D1C5F65BB29947416A7A9F620ADA960

BIN
devicemanager/src/main/assets/iflytek/recognize.xml


BIN
devicemanager/src/main/assets/iflytek/voice_bg.9.png


BIN
devicemanager/src/main/assets/iflytek/voice_empty.png


BIN
devicemanager/src/main/assets/iflytek/voice_full.png


BIN
devicemanager/src/main/assets/iflytek/waiting.png


BIN
devicemanager/src/main/assets/iflytek/warning.png


+ 31 - 0
devicemanager/src/main/assets/submit.css

@@ -0,0 +1,31 @@
+	#sub{
+		width:120px;height:50px;line-height:10px; no-repeat;
+		border-radius:10px;
+		background:#3399FF;color:#fff;
+		font-size:16px;
+		}
+		
+	.td1cls{
+		width:90px;
+		align:left;
+		font-size:16px;
+		font-weight:bold;		
+	}
+	
+	.inputcls{	
+		width:220px; 
+		type:text;
+		border-radius:8px;
+		height:1.7em;
+	}
+	.textareacls{
+		width:220px;
+		cols:50;
+		border-radius:8px;
+	}
+	.divcls{
+		padding-left:20px;
+		margin-right:40pt;
+		margin-bottom:120%;
+		margin-left:auto;
+	}

+ 171 - 0
devicemanager/src/main/assets/submit.html

@@ -0,0 +1,171 @@
+<!DOCTYPE html>
+<html >
+<head>
+<meta  http-equiv = 'refresh' charset="UTF-8" name="viewport"
+	 content="width=device-width,initial-scale=1.0,user-scalable=0, 
+	 maximum-scale=1.0, minimum-scale=1.0, user-scalable=0, width=device-width"/>
+<link rel="stylesheet" href="weui.min.css"/>
+<script src="jquery-1.8.2.min.js"></script>
+<title>submit</title>
+<!--
+表单标签: 表单标签的作用是用于提交数据给服务器的。
+
+    表单标签的根标签是<form>标签
+
+常用的属性:
+	action: 该属性是用于指定提交数据的地址。
+	method: 指定表单的提交方式。
+    		get : 默认使用的提交方式。  提交的数据会显示在地址栏上。
+            post :  提交的数据不会显示在地址栏上。
+
+注意: 表单项的数据如果需要提交到服务器上面,那么表单项必须要有name的属性值。
+-->
+
+
+	<!--JS交互本地测试html文件  可在submit SaveValue()方法中调用本地原生方法,成功后让后端人员调用该方法即可以了-->
+<link href="submit.css" rel="stylesheet">
+</head>
+<body padding-bottom="20px">
+<span style="font-size:18px">
+	<form  id="form" action="http://218.17.158.219:8090/ERP/common/saveCommon.action?caller=SubsApply&formStore"  
+			method="post" enctype="application/json">
+	
+    	<table border="0px" align="center" cellpadding="5px" cellspacing="0px">
+				<tr>
+					<td class="td1cls" valign="top">采购单分析</td>
+					<td>					
+						<textarea class="textareacls" name="analysis" id="subinfo" rows="3" onmousedown="s(event,this)"></textarea>
+					</td>
+				</tr>
+				<tr>
+					<td class="td1cls">单据日期</td>
+					
+					<td >
+						<input class="inputcls"name="logOutTime" id="logOutTime"   onclick="hitest"/>
+                        <span id=""></span>
+					</td>
+				</tr>
+				
+				<tr>
+					<td class="td1cls">单据状态</td>
+					<td>
+						<input class="inputcls" name="Apply_State" id="Apply_State" value = "在录入" readonly="readonly"/>
+					</td>
+				</tr>
+				<tr>
+					<td class="td1cls" >申请人</td>
+					<td>
+						<input class="inputcls" name="Applicant" id="Applicant" value=""/> 
+					</td>
+				</tr>
+				<tr>
+					<td class="td1cls" >申请人岗位</td>
+					<td>
+						<input  class="inputcls" name="Apply_Job"  id = "Apply_Job"/>
+						
+					</td>
+				</tr>
+				<tr>
+					<td class="td1cls" >申请部门</td>
+					<td>
+						<input class="inputcls" name="Apply_Department" id="Apply_Department"/>
+						
+					</td>
+				</tr>
+				<tr>
+					<td class="td1cls" valign="top" onfocus="textfocus(this)" onblur="textblur(this)" id="Apply_Reason">申请原因</td>
+					<td>	
+						<textarea   placeholder="请输入,限150字..." class="textareacls" rows="7"   maxlength="150" id="Apply_Reason" required></textarea>
+					</td>
+				</tr>
+	
+				<tr>
+					<td colspan="2" rowspan="2" align="center">
+						<input  id="sub" type="submit"  name="提交申请" value="提交申请" onclick="SaveValue()"/>
+					</td>
+				</tr>
+		</table>
+    </form>
+	</span>
+	
+	<!--申请单显示-->
+	<span style="font-size:18px;">
+	<script type="text/javascript">    
+		<span style="white-space:pre">  </span>	$.getJSON(URL,param,function(data){
+		<span style="white-space:pre">  </span>	alert(data.type);
+		<span style="white-space:pre">  </span>	$("form").setForm(data);
+		});
+	</script>
+	</span>
+</body>
+
+	
+	<!--单据基本信息显示-->
+	<script type="text/javascript">
+		var t=document.getElementById("logOutTime"); 
+		d=new Date(); 
+		t.value=d.getFullYear()+"-"+(d.getMonth()+1)+"-"+d.getDate(); 
+	</script>
+
+	<!--申请单保存至本地-->
+	<script type="text/javascript">
+		function SaveValue(){
+			
+			<!--var fs = new ActiveXObject("Scripting.FileSystemObject");//创建ActiveXObject对象得到文件对象-->
+			<!--var file = fs.CreateTextFile("E://sub.txt",true); //ActiveXObject对象得到文件对象-->
+			<!---->
+			<!--var date_ = document.getElementById("logOutTime").value;-->
+			<!--var status_ = document.getElementById("Apply_State").value;-->
+			<!--var empname_ = document.getElementById("Applicant").value;-->
+			<!--var empdep_ = document.getElementById("Apply_Department").value;-->
+			<!--var reason_ = document.getElementById("Apply_Reason").value;-->
+			<!---->
+			<!--file.WriteLine("单据日期\r\n"+date_+"单据状态\r\n"+status_-->
+			<!--+"申请人\r\n"+empname_+"申请人岗位\r\n"+empdep_-->
+			<!--+"申请原因\r\n"+reason_);-->
+			<!--file.close();-->
+			alert("you click 单据日期");
+		window.JSWebView.closeWebWindow();
+			}
+	</script>
+
+<script type="text/javascript">
+	function hitest(){
+		alert("you click 单据日期");
+		window.JSWebView.closeWebWindow();
+}
+</script>
+<!--解决大部分浏览器输入法遮挡住输入框问题,但少数浏览器还是存在问题
+		1.当textarea接收到focus事件时,自动将文本框滚动到屏幕顶端
+		2.设计的输入框不要超过半个屏幕,如果一定要超过,textarea有change事件,计算输入了多少个字,相应的再把输入框向上滚动-->	
+<script type='text/javascript'> 
+		function textfocus(o){ o.style.position = 'fixed'; o.style.top = '50px'; o.style.zIndex = '999'; } 
+		function textblur(o){ o.style.position = 'static'; o.style.top = 'auto'; } 
+</script>
+
+<!--html5中新标签placeholder(显示提示字符)的浏览器兼容性问题-->
+<script type="text/javascript">
+	function placeholder(nodes,pcolor) {
+      if(nodes.length && !("placeholder" in document_createElement_x("input"))){
+          for(i=0;i
+              var self = nodes[i],
+                  placeholder = self.getAttribute('placeholder') || '';     
+              self.onfocus = function(){
+                  if(self.value == placeholder){
+                     self.value = '';
+                     self.style.color = "";
+                  }               
+              }
+              self.onblur = function(){
+                  if(self.value == ''){
+                      self.value = placeholder;
+                      self.style.color = pcolor;
+                  }              
+              }                                       
+              self.value = placeholder;  
+              self.style.color = pcolor;              
+          }
+      }
+    }    
+</script>
+</html>

+ 14 - 0
devicemanager/src/main/java/com/yingtang/devicemanager/SplashActivity.java

@@ -0,0 +1,14 @@
+package com.yingtang.devicemanager;
+
+import android.os.Bundle;
+import android.support.v7.app.AppCompatActivity;
+
+
+public class SplashActivity extends AppCompatActivity {
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_splash);
+    }
+}

+ 30 - 0
devicemanager/src/main/res/drawable-v24/ic_launcher_foreground.xml

@@ -0,0 +1,30 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:aapt="http://schemas.android.com/aapt"
+    android:width="108dp"
+    android:height="108dp"
+    android:viewportWidth="108"
+    android:viewportHeight="108">
+    <path android:pathData="M31,63.928c0,0 6.4,-11 12.1,-13.1c7.2,-2.6 26,-1.4 26,-1.4l38.1,38.1L107,108.928l-32,-1L31,63.928z">
+        <aapt:attr name="android:fillColor">
+            <gradient
+                android:endX="85.84757"
+                android:endY="92.4963"
+                android:startX="42.9492"
+                android:startY="49.59793"
+                android:type="linear">
+                <item
+                    android:color="#44000000"
+                    android:offset="0.0" />
+                <item
+                    android:color="#00000000"
+                    android:offset="1.0" />
+            </gradient>
+        </aapt:attr>
+    </path>
+    <path
+        android:fillColor="#FFFFFF"
+        android:fillType="nonZero"
+        android:pathData="M65.3,45.828l3.8,-6.6c0.2,-0.4 0.1,-0.9 -0.3,-1.1c-0.4,-0.2 -0.9,-0.1 -1.1,0.3l-3.9,6.7c-6.3,-2.8 -13.4,-2.8 -19.7,0l-3.9,-6.7c-0.2,-0.4 -0.7,-0.5 -1.1,-0.3C38.8,38.328 38.7,38.828 38.9,39.228l3.8,6.6C36.2,49.428 31.7,56.028 31,63.928h46C76.3,56.028 71.8,49.428 65.3,45.828zM43.4,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2c-0.3,-0.7 -0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C45.3,56.528 44.5,57.328 43.4,57.328L43.4,57.328zM64.6,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2s-0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C66.5,56.528 65.6,57.328 64.6,57.328L64.6,57.328z"
+        android:strokeWidth="1"
+        android:strokeColor="#00000000" />
+</vector>

+ 170 - 0
devicemanager/src/main/res/drawable/ic_launcher_background.xml

@@ -0,0 +1,170 @@
+<?xml version="1.0" encoding="utf-8"?>
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="108dp"
+    android:height="108dp"
+    android:viewportWidth="108"
+    android:viewportHeight="108">
+    <path
+        android:fillColor="#3DDC84"
+        android:pathData="M0,0h108v108h-108z" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M9,0L9,108"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M19,0L19,108"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M29,0L29,108"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M39,0L39,108"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M49,0L49,108"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M59,0L59,108"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M69,0L69,108"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M79,0L79,108"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M89,0L89,108"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M99,0L99,108"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,9L108,9"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,19L108,19"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,29L108,29"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,39L108,39"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,49L108,49"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,59L108,59"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,69L108,69"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,79L108,79"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,89L108,89"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,99L108,99"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M19,29L89,29"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M19,39L89,39"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M19,49L89,49"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M19,59L89,59"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M19,69L89,69"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M19,79L89,79"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M29,19L29,89"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M39,19L39,89"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M49,19L49,89"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M59,19L59,89"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M69,19L69,89"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M79,19L79,89"
+        android:strokeWidth="0.8"
+        android:strokeColor="#33FFFFFF" />
+</vector>

+ 15 - 0
devicemanager/src/main/res/layout/activity_splash.xml

@@ -0,0 +1,15 @@
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:background="@color/white"
+    android:orientation="vertical">
+    <TextView
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:text="Hello World"
+        android:gravity="center|center_vertical"
+        />
+
+
+
+</LinearLayout>

+ 5 - 0
devicemanager/src/main/res/mipmap-anydpi-v26/ic_launcher.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
+    <background android:drawable="@drawable/ic_launcher_background" />
+    <foreground android:drawable="@drawable/ic_launcher_foreground" />
+</adaptive-icon>

+ 5 - 0
devicemanager/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
+    <background android:drawable="@drawable/ic_launcher_background" />
+    <foreground android:drawable="@drawable/ic_launcher_foreground" />
+</adaptive-icon>

BIN
devicemanager/src/main/res/mipmap-hdpi/ic_launcher.png


BIN
devicemanager/src/main/res/mipmap-hdpi/ic_launcher_round.png


BIN
devicemanager/src/main/res/mipmap-mdpi/ic_launcher.png


BIN
devicemanager/src/main/res/mipmap-mdpi/ic_launcher_round.png


BIN
devicemanager/src/main/res/mipmap-xhdpi/ic_launcher.png


BIN
devicemanager/src/main/res/mipmap-xhdpi/ic_launcher_round.png


BIN
devicemanager/src/main/res/mipmap-xxhdpi/ic_launcher.png


BIN
devicemanager/src/main/res/mipmap-xxhdpi/ic_launcher_round.png


BIN
devicemanager/src/main/res/mipmap-xxxhdpi/ic_launcher.png


BIN
devicemanager/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png


+ 10 - 0
devicemanager/src/main/res/values/colors.xml

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+    <color name="purple_200">#FFBB86FC</color>
+    <color name="purple_500">#FF6200EE</color>
+    <color name="purple_700">#FF3700B3</color>
+    <color name="teal_200">#FF03DAC5</color>
+    <color name="teal_700">#FF018786</color>
+    <color name="black">#FF000000</color>
+    <color name="white">#FFFFFFFF</color>
+</resources>

+ 3 - 0
devicemanager/src/main/res/values/strings.xml

@@ -0,0 +1,3 @@
+<resources>
+    <string name="app_name">DeviceManager</string>
+</resources>

+ 17 - 0
devicemanager/src/test/java/com/yingtang/devicemanager/ExampleUnitTest.java

@@ -0,0 +1,17 @@
+package com.yingtang.devicemanager;
+
+import org.junit.Test;
+
+import static org.junit.Assert.*;
+
+/**
+ * Example local unit test, which will execute on the development machine (host).
+ *
+ * @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
+ */
+public class ExampleUnitTest {
+    @Test
+    public void addition_isCorrect() {
+        assertEquals(4, 2 + 2);
+    }
+}

+ 1 - 0
settings.gradle

@@ -74,3 +74,4 @@ project(':recyclerlibrary').projectDir = new File('app_third/recyclerlibrary')
 //project(':refresh-layout').projectDir = new File('app_third/refresh-layout')
 //project(':refresh-header').projectDir = new File('app_third/refresh-header')
 
+include ':devicemanager'