Administrator 2 år sedan
incheckning
0554edba30
100 ändrade filer med 3707 tillägg och 0 borttagningar
  1. 31 0
      .eslintrc.js
  2. 4 0
      app.js
  3. 71 0
      app.json
  4. 184 0
      app.wxss
  5. 205 0
      base/MD5.js
  6. 236 0
      base/httputil.js
  7. 13 0
      base/scancode.js
  8. 12 0
      base/subutil.wxs
  9. 250 0
      iconfont.wxss
  10. 11 0
      pages/Introduction/Introduction.js
  11. 6 0
      pages/Introduction/Introduction.json
  12. 39 0
      pages/Introduction/Introduction.wxml
  13. 14 0
      pages/Introduction/Introduction.wxss
  14. 121 0
      pages/details/details.js
  15. 13 0
      pages/details/details.json
  16. 71 0
      pages/details/details.wxml
  17. 56 0
      pages/details/details.wxss
  18. BIN
      pages/images/4.png
  19. BIN
      pages/images/banner.jpg
  20. BIN
      pages/images/banner.png
  21. BIN
      pages/images/banner2.jpg
  22. BIN
      pages/images/banner3.jpg
  23. BIN
      pages/images/home-like.png
  24. BIN
      pages/images/home-like2.png
  25. BIN
      pages/images/icon_ck.png
  26. BIN
      pages/images/icon_dw.png
  27. BIN
      pages/images/icon_hy.png
  28. BIN
      pages/images/icon_wz.png
  29. BIN
      pages/images/icon_xg.png
  30. BIN
      pages/images/icon_xj.png
  31. BIN
      pages/images/icon_yj.png
  32. BIN
      pages/images/index1.png
  33. BIN
      pages/images/index2.png
  34. BIN
      pages/images/line1.png
  35. BIN
      pages/images/line2.png
  36. BIN
      pages/images/me1.png
  37. BIN
      pages/images/me2.png
  38. BIN
      pages/images/nav_db.png
  39. BIN
      pages/images/nav_qy.png
  40. BIN
      pages/images/nav_xc.png
  41. BIN
      pages/images/qy_by.png
  42. BIN
      pages/images/qy_bz.png
  43. BIN
      pages/images/qy_zs.png
  44. BIN
      pages/images/shearh.png
  45. BIN
      pages/images/top_bg.png
  46. BIN
      pages/images/xcx_lb.png
  47. BIN
      pages/images/xcx_top.jpg
  48. BIN
      pages/images/xcx_top.png
  49. BIN
      pages/images/yjtd.png
  50. 223 0
      pages/index/index.js
  51. 10 0
      pages/index/index.json
  52. 124 0
      pages/index/index.wxml
  53. 292 0
      pages/index/index.wxss
  54. 66 0
      pages/me/me.js
  55. 6 0
      pages/me/me.json
  56. 2 0
      pages/me/me.wxml
  57. 1 0
      pages/me/me.wxss
  58. 53 0
      pages/menu/menu.js
  59. 4 0
      pages/menu/menu.json
  60. 15 0
      pages/menu/menu.wxml
  61. 66 0
      pages/menu/menu.wxss
  62. 23 0
      pages/more/more.js
  63. 13 0
      pages/more/more.json
  64. 92 0
      pages/more/more.wxml
  65. 33 0
      pages/more/more.wxss
  66. 11 0
      pages/newcomer/newcomer.js
  67. 6 0
      pages/newcomer/newcomer.json
  68. 39 0
      pages/newcomer/newcomer.wxml
  69. 14 0
      pages/newcomer/newcomer.wxss
  70. 75 0
      pages/qiye/qiye.js
  71. 12 0
      pages/qiye/qiye.json
  72. 48 0
      pages/qiye/qiye.wxml
  73. 39 0
      pages/qiye/qiye.wxss
  74. 167 0
      pages/qiyemore/qiyemore.js
  75. 8 0
      pages/qiyemore/qiyemore.json
  76. 58 0
      pages/qiyemore/qiyemore.wxml
  77. 39 0
      pages/qiyemore/qiyemore.wxss
  78. 165 0
      pages/qiyexqtable/qiyexqtable.js
  79. 8 0
      pages/qiyexqtable/qiyexqtable.json
  80. 64 0
      pages/qiyexqtable/qiyexqtable.wxml
  81. 50 0
      pages/qiyexqtable/qiyexqtable.wxss
  82. 43 0
      pages/search/search.js
  83. 6 0
      pages/search/search.json
  84. 27 0
      pages/search/search.wxml
  85. 1 0
      pages/search/search.wxss
  86. 66 0
      pages/xqzggzs/xqzggzs.js
  87. 9 0
      pages/xqzggzs/xqzggzs.json
  88. 18 0
      pages/xqzggzs/xqzggzs.wxml
  89. 52 0
      pages/xqzggzs/xqzggzs.wxss
  90. 66 0
      pages/xqzggzs2/xqzggzs2.js
  91. 9 0
      pages/xqzggzs2/xqzggzs2.json
  92. 21 0
      pages/xqzggzs2/xqzggzs2.wxml
  93. 52 0
      pages/xqzggzs2/xqzggzs2.wxss
  94. 66 0
      pages/xqzggzs2/xqzgzs2.js
  95. 3 0
      pages/xqzggzs2/xqzgzs2.json
  96. 2 0
      pages/xqzggzs2/xqzgzs2.wxml
  97. 1 0
      pages/xqzggzs2/xqzgzs2.wxss
  98. 90 0
      pages/xuncha/xuncha.js
  99. 12 0
      pages/xuncha/xuncha.json
  100. 0 0
      pages/xuncha/xuncha.wxml

+ 31 - 0
.eslintrc.js

@@ -0,0 +1,31 @@
+/*
+ * Eslint config file
+ * Documentation: https://eslint.org/docs/user-guide/configuring/
+ * Install the Eslint extension before using this feature.
+ */
+module.exports = {
+  env: {
+    es6: true,
+    browser: true,
+    node: true,
+  },
+  ecmaFeatures: {
+    modules: true,
+  },
+  parserOptions: {
+    ecmaVersion: 2018,
+    sourceType: 'module',
+  },
+  globals: {
+    wx: true,
+    App: true,
+    Page: true,
+    getCurrentPages: true,
+    getApp: true,
+    Component: true,
+    requirePlugin: true,
+    requireMiniProgram: true,
+  },
+  // extends: 'eslint:recommended',
+  rules: {},
+}

+ 4 - 0
app.js

@@ -0,0 +1,4 @@
+// app.js
+App({
+  globalToken: null
+})

+ 71 - 0
app.json

@@ -0,0 +1,71 @@
+{
+  "pages": [
+    "pages/index/index",
+    "pages/qiye/qiye",
+    "pages/menu/menu",
+    "pages/search/search",
+    "pages/details/details",
+    "pages/newcomer/newcomer",
+    "pages/Introduction/Introduction",
+    "pages/xuncha/xuncha",
+    "pages/xunchawu/xunchawu",
+    "pages/xunchajilu/xunchajilu",
+    "pages/xunjianimg/xunjianimg",
+    "pages/me/me",
+    "pages/more/more",
+    "pages/qiyemore/qiyemore",
+    "pages/qiyexqtable/qiyexqtable",
+    "pages/zhenggaijindu/zhenggaijindu",
+    "pages/xqzggzs/xqzggzs",
+    "pages/xqzggzs2/xqzggzs2",
+    "pages/xunjian/xunjian",
+    "pages/xunjiancz/xunjiancz"
+
+  ],
+
+
+  "permission": {
+    "scope.userLocation": {
+      "desc": "小道要获取你的位置信息"
+    }
+  },
+
+  "window": {
+    "backgroundTextStyle": "light",
+    "navigationBarBackgroundColor": "#fff",
+    "navigationBarTitleText": "Weixin",
+    "navigationBarTextStyle": "black"
+  },
+
+  "tabBar": {
+    "index": "-1",
+    "color": "#737373",
+    "selectedColor": "#f94b0e",
+    "borderStyle": "black",
+    "backgroundColor": "#f9f9f9",
+    "list": [
+      {
+        "text": "首页",
+        "pagePath": "pages/index/index",
+        "iconPath": "pages/images/index2.png",
+        "selectedIconPath": "pages/images/index1.png"
+      },
+      {
+        "text": "我的",
+        "pagePath": "pages/me/me",
+        "iconPath": "pages/images/me2.png",
+        "selectedIconPath": "pages/images/me1.png"
+      }
+    ]
+  },
+
+
+
+
+
+
+
+  "style": "v2",
+  "sitemapLocation": "sitemap.json"
+  
+}

+ 184 - 0
app.wxss

@@ -0,0 +1,184 @@
+/**app.wxss**/
+@import"iconfont.wxss";
+
+page{
+  font-family:Arial, Helvetica, sans-serif;
+}
+.wid15{
+  margin: 0px 30rpx;
+}
+.line{
+  height: 4rpx;
+  background: #dddddd;
+}
+.line2{
+  height: 1rpx;
+  background: #dddddd;
+}
+.line3{
+  height: 1rpx;
+  background: #dddddd;
+}
+/* 搜索 */
+.search-container{
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  padding: 10rpx 20rpx 10rpx 40rpx;
+  box-sizing: border-box;
+  background-color: rgb(240, 240, 240);
+  margin: 30rpx;
+  border-radius: 50rpx;
+  position: relative;
+}
+.search-left{
+  flex: 2;
+  border-radius: 40rpx;
+  padding-right: 40rpx;
+  box-sizing: border-box;
+}
+.search-left input{
+  display: inline-block;
+  vertical-align: middle;
+  width: calc(100% - 90rpx);
+  height: 70rpx;
+}
+.search-right{
+  background: none;
+  width: 130rpx!important;
+  height: 80rpx;
+  padding: 0px!important;
+  position: absolute;
+  right: 0rpx;
+  top: 7rpx;
+  z-index: 99;
+}
+.search-right .img{
+  width: 45rpx;
+  height: 45rpx;
+  padding: 10rpx 0;
+  vertical-align: middle;
+}
+.icon-sousuo{
+  font-size: 55rpx;
+  color: rgb(206, 205, 205);
+}
+
+  /* 列表 */
+  .list_vi{
+    margin: 40rpx 30rpx 20rpx 30rpx;
+  }
+  .list_vi .list_li{
+    display: flex;
+    flex-direction: row;
+    height: 100rpx;
+    line-height: 100rpx;
+    padding-bottom: 10rpx;
+    border-bottom: 1px solid #f3f3f3;
+  }
+  .list_vi .list_li:active{
+    background: rgb(240, 240, 240);
+  }
+  .list_r{
+    display: flex;
+    flex-direction: column;
+  }
+  .list_li_c{
+    display: flex;
+    flex-direction: row;
+    height: auto;
+    line-height: auto;
+    padding-top: 10rpx;
+  }
+  .list_vi .list_li1{
+    display: flex;
+    flex-direction: row;
+    height: auto;
+    line-height: 50rpx;
+
+  }
+  .list_vi .list_li2{
+    display: flex;
+    flex-direction: row;
+    height: auto;
+    line-height: 50rpx;
+    padding-bottom: 10rpx;
+    padding-left: 58rpx;
+  }
+  .list_vi .list_li2 text{
+    font-size: 29rpx!important;
+    color: #999!important;
+    margin-right: 20rpx;
+  }
+  .list_vi .iconfont{
+   margin-right: 20rpx;
+    font-size: 40rpx;
+  }
+  .list_vi .list_li text{
+    font-size: 34rpx;
+    color: #181818;
+  }
+  .list_vi .icon-queding{
+    color:rgb(13, 145, 13);
+  }
+  .list_vi .icon-yingjipingtai{
+    color:rgb(230, 61, 19);
+  }
+  .list_vi .list_right{
+    color:rgb(207, 207, 207);
+    margin-left: auto;
+    font-size: 40rpx;
+  }
+
+  /* 暂无数据 */
+.zwsj{
+  font-size: 260rpx!important;
+  display: flex;
+  text-align: center;
+  justify-content: center;
+  color: rgb(206, 206, 206);
+  margin: 200rpx auto 40rpx auto!important;
+}
+.zwsj_text{
+  display: flex;
+  text-align: center;
+  justify-content: center;
+  font-size:40rpx;
+  color: #666;
+}
+/* 悬浮按钮 */
+.float_btn{
+  bottom: 150rpx;
+  right: 30rpx;
+  border-radius: 50%;
+  text-align: center;
+  position: fixed;
+  width: 100rpx;
+    height: 100rpx;
+    line-height: 100rpx;
+    background-color: #f94b0e;
+    color: #fff;
+    font-size: 36rpx;
+    box-shadow: 5rpx 5rpx 10rpx rgb(153, 153, 153);
+}
+/* 悬浮按钮 */
+.float_btn2{
+  bottom: 290rpx;
+  right: 30rpx;
+  border-radius: 50%;
+  text-align: center;
+  position: fixed;
+  width: 100rpx;
+    height: 100rpx;
+    line-height: 100rpx;
+    background-color: #fdcd2e;
+    color: #fff;
+    font-size: 36rpx;
+    box-shadow: 5rpx 5rpx 10rpx rgb(153, 153, 153);
+}
+.float_btn:active{
+  background-color: #f14405;
+}
+.float_btn2:active{
+  background-color: #f1c120;
+}

+ 205 - 0
base/MD5.js

@@ -0,0 +1,205 @@
+/* 
+ * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message 
+ * Digest Algorithm, as defined in RFC 1321. 
+ * Version 1.1 Copyright (C) Paul Johnston 1999 - 2002. 
+ * Code also contributed by Greg Holt 
+ * See http://pajhome.org.uk/site/legal.html for details. 
+ */
+
+/* 
+ * Add integers, wrapping at 2^32. This uses 16-bit operations internally 
+ * to work around bugs in some JS interpreters. 
+ */
+function safe_add(x, y) {
+  var lsw = (x & 0xFFFF) + (y & 0xFFFF)
+  var msw = (x >> 16) + (y >> 16) + (lsw >> 16)
+  return (msw << 16) | (lsw & 0xFFFF)
+}
+
+/* 
+ * Bitwise rotate a 32-bit number to the left. 
+ */
+function rol(num, cnt) {
+  return (num << cnt) | (num >>> (32 - cnt))
+}
+
+/* 
+ * These functions implement the four basic operations the algorithm uses. 
+ */
+function cmn(q, a, b, x, s, t) {
+  return safe_add(rol(safe_add(safe_add(a, q), safe_add(x, t)), s), b)
+}
+function ff(a, b, c, d, x, s, t) {
+  return cmn((b & c) | ((~b) & d), a, b, x, s, t)
+}
+function gg(a, b, c, d, x, s, t) {
+  return cmn((b & d) | (c & (~d)), a, b, x, s, t)
+}
+function hh(a, b, c, d, x, s, t) {
+  return cmn(b ^ c ^ d, a, b, x, s, t)
+}
+function ii(a, b, c, d, x, s, t) {
+  return cmn(c ^ (b | (~d)), a, b, x, s, t)
+}
+
+/* 
+ * Calculate the MD5 of an array of little-endian words, producing an array 
+ * of little-endian words. 
+ */
+function coreMD5(x) {
+  var a = 1732584193
+  var b = -271733879
+  var c = -1732584194
+  var d = 271733878
+
+  for (var i = 0; i < x.length; i += 16) {
+    var olda = a
+    var oldb = b
+    var oldc = c
+    var oldd = d
+
+    a = ff(a, b, c, d, x[i + 0], 7, -680876936)
+    d = ff(d, a, b, c, x[i + 1], 12, -389564586)
+    c = ff(c, d, a, b, x[i + 2], 17, 606105819)
+    b = ff(b, c, d, a, x[i + 3], 22, -1044525330)
+    a = ff(a, b, c, d, x[i + 4], 7, -176418897)
+    d = ff(d, a, b, c, x[i + 5], 12, 1200080426)
+    c = ff(c, d, a, b, x[i + 6], 17, -1473231341)
+    b = ff(b, c, d, a, x[i + 7], 22, -45705983)
+    a = ff(a, b, c, d, x[i + 8], 7, 1770035416)
+    d = ff(d, a, b, c, x[i + 9], 12, -1958414417)
+    c = ff(c, d, a, b, x[i + 10], 17, -42063)
+    b = ff(b, c, d, a, x[i + 11], 22, -1990404162)
+    a = ff(a, b, c, d, x[i + 12], 7, 1804603682)
+    d = ff(d, a, b, c, x[i + 13], 12, -40341101)
+    c = ff(c, d, a, b, x[i + 14], 17, -1502002290)
+    b = ff(b, c, d, a, x[i + 15], 22, 1236535329)
+
+    a = gg(a, b, c, d, x[i + 1], 5, -165796510)
+    d = gg(d, a, b, c, x[i + 6], 9, -1069501632)
+    c = gg(c, d, a, b, x[i + 11], 14, 643717713)
+    b = gg(b, c, d, a, x[i + 0], 20, -373897302)
+    a = gg(a, b, c, d, x[i + 5], 5, -701558691)
+    d = gg(d, a, b, c, x[i + 10], 9, 38016083)
+    c = gg(c, d, a, b, x[i + 15], 14, -660478335)
+    b = gg(b, c, d, a, x[i + 4], 20, -405537848)
+    a = gg(a, b, c, d, x[i + 9], 5, 568446438)
+    d = gg(d, a, b, c, x[i + 14], 9, -1019803690)
+    c = gg(c, d, a, b, x[i + 3], 14, -187363961)
+    b = gg(b, c, d, a, x[i + 8], 20, 1163531501)
+    a = gg(a, b, c, d, x[i + 13], 5, -1444681467)
+    d = gg(d, a, b, c, x[i + 2], 9, -51403784)
+    c = gg(c, d, a, b, x[i + 7], 14, 1735328473)
+    b = gg(b, c, d, a, x[i + 12], 20, -1926607734)
+
+    a = hh(a, b, c, d, x[i + 5], 4, -378558)
+    d = hh(d, a, b, c, x[i + 8], 11, -2022574463)
+    c = hh(c, d, a, b, x[i + 11], 16, 1839030562)
+    b = hh(b, c, d, a, x[i + 14], 23, -35309556)
+    a = hh(a, b, c, d, x[i + 1], 4, -1530992060)
+    d = hh(d, a, b, c, x[i + 4], 11, 1272893353)
+    c = hh(c, d, a, b, x[i + 7], 16, -155497632)
+    b = hh(b, c, d, a, x[i + 10], 23, -1094730640)
+    a = hh(a, b, c, d, x[i + 13], 4, 681279174)
+    d = hh(d, a, b, c, x[i + 0], 11, -358537222)
+    c = hh(c, d, a, b, x[i + 3], 16, -722521979)
+    b = hh(b, c, d, a, x[i + 6], 23, 76029189)
+    a = hh(a, b, c, d, x[i + 9], 4, -640364487)
+    d = hh(d, a, b, c, x[i + 12], 11, -421815835)
+    c = hh(c, d, a, b, x[i + 15], 16, 530742520)
+    b = hh(b, c, d, a, x[i + 2], 23, -995338651)
+
+    a = ii(a, b, c, d, x[i + 0], 6, -198630844)
+    d = ii(d, a, b, c, x[i + 7], 10, 1126891415)
+    c = ii(c, d, a, b, x[i + 14], 15, -1416354905)
+    b = ii(b, c, d, a, x[i + 5], 21, -57434055)
+    a = ii(a, b, c, d, x[i + 12], 6, 1700485571)
+    d = ii(d, a, b, c, x[i + 3], 10, -1894986606)
+    c = ii(c, d, a, b, x[i + 10], 15, -1051523)
+    b = ii(b, c, d, a, x[i + 1], 21, -2054922799)
+    a = ii(a, b, c, d, x[i + 8], 6, 1873313359)
+    d = ii(d, a, b, c, x[i + 15], 10, -30611744)
+    c = ii(c, d, a, b, x[i + 6], 15, -1560198380)
+    b = ii(b, c, d, a, x[i + 13], 21, 1309151649)
+    a = ii(a, b, c, d, x[i + 4], 6, -145523070)
+    d = ii(d, a, b, c, x[i + 11], 10, -1120210379)
+    c = ii(c, d, a, b, x[i + 2], 15, 718787259)
+    b = ii(b, c, d, a, x[i + 9], 21, -343485551)
+
+    a = safe_add(a, olda)
+    b = safe_add(b, oldb)
+    c = safe_add(c, oldc)
+    d = safe_add(d, oldd)
+  }
+  return [a, b, c, d]
+}
+
+/* 
+ * Convert an array of little-endian words to a hex string. 
+ */
+function binl2hex(binarray) {
+  var hex_tab = "0123456789abcdef"
+  var str = ""
+  for (var i = 0; i < binarray.length * 4; i++) {
+    str += hex_tab.charAt((binarray[i >> 2] >> ((i % 4) * 8 + 4)) & 0xF) +
+      hex_tab.charAt((binarray[i >> 2] >> ((i % 4) * 8)) & 0xF)
+  }
+  return str
+}
+
+/* 
+ * Convert an array of little-endian words to a base64 encoded string. 
+ */
+function binl2b64(binarray) {
+  var tab = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
+  var str = ""
+  for (var i = 0; i < binarray.length * 32; i += 6) {
+    str += tab.charAt(((binarray[i >> 5] << (i % 32)) & 0x3F) |
+      ((binarray[i >> 5 + 1] >> (32 - i % 32)) & 0x3F))
+  }
+  return str
+}
+
+/* 
+ * Convert an 8-bit character string to a sequence of 16-word blocks, stored 
+ * as an array, and append appropriate padding for MD4/5 calculation. 
+ * If any of the characters are >255, the high byte is silently ignored. 
+ */
+function str2binl(str) {
+  var nblk = ((str.length + 8) >> 6) + 1 // number of 16-word blocks  
+  var blks = new Array(nblk * 16)
+  for (var i = 0; i < nblk * 16; i++) blks[i] = 0
+  for (var i = 0; i < str.length; i++)
+    blks[i >> 2] |= (str.charCodeAt(i) & 0xFF) << ((i % 4) * 8)
+  blks[i >> 2] |= 0x80 << ((i % 4) * 8)
+  blks[nblk * 16 - 2] = str.length * 8
+  return blks
+}
+
+/* 
+ * Convert a wide-character string to a sequence of 16-word blocks, stored as 
+ * an array, and append appropriate padding for MD4/5 calculation. 
+ */
+function strw2binl(str) {
+  var nblk = ((str.length + 4) >> 5) + 1 // number of 16-word blocks  
+  var blks = new Array(nblk * 16)
+  for (var i = 0; i < nblk * 16; i++) blks[i] = 0
+  for (var i = 0; i < str.length; i++)
+    blks[i >> 1] |= str.charCodeAt(i) << ((i % 2) * 16)
+  blks[i >> 1] |= 0x80 << ((i % 2) * 16)
+  blks[nblk * 16 - 2] = str.length * 16
+  return blks
+}
+
+/* 
+ * External interface 
+ */
+function hexMD5(str) { return binl2hex(coreMD5(str2binl(str))) }
+function hexMD5w(str) { return binl2hex(coreMD5(strw2binl(str))) }
+function b64MD5(str) { return binl2b64(coreMD5(str2binl(str))) }
+function b64MD5w(str) { return binl2b64(coreMD5(strw2binl(str))) }
+/* Backward compatibility */
+function calcMD5(str) { return binl2hex(coreMD5(str2binl(str))) }
+module.exports = {
+  hexMD5: hexMD5
+}  

+ 236 - 0
base/httputil.js

@@ -0,0 +1,236 @@
+// let BASE_Server = "http://127.0.0.1:8329"
+
+
+
+
+
+
+
+let BASE_Server = "http://192.168.1.100:8080"
+let BASE_Server_Login = "http://192.168.1.100:9200"
+let app = getApp()
+
+
+
+function send_post_login(url, data, successfun) {
+
+  wx.request({
+    url: BASE_Server_Login + url, //仅为示例,并非真实的接口地址 
+    method: "POST",
+    header: {
+      'content-type': 'application/json'
+    },
+    data: data,
+    success(res) {
+      successfun(res)
+      // var d = decodeURIComponent(decodeURIComponent(res.data.data))
+      // console.log("*****", d) 
+      // var json = JSON.parse(d)
+      // successfun(json)
+    }
+  })
+}
+
+
+
+//-----------------------------登录,获取token-----------------------------------
+function init_userInfo() {
+  if (app.globalToken == null) {
+    console.log(1111111)
+    wx.getUserProfile({
+      desc: 'desc',
+      success: (res) => {
+        getSysUserInfo(res.userInfo)
+      },
+      fail: res => {
+        console.log(res)
+      }
+    })
+  }
+}
+
+function getSysUserInfo(info) {
+  console.log(2222)
+  let that = this
+  wx.login({
+    success(res) {
+      var code = res.code
+      var data = {
+        wxCode: code,
+        wxNickName: info.nickName,
+        wxAvatarUrl: info.avatarUrl
+      }
+      // http.send_post_login("/minapp/AppLoginController/appLogin",data)
+      send_post_login("/applogin", data, loginSuccess)
+    },
+    fail(res) {
+      console.log("ffff", res)
+    }
+  })
+}
+
+function loginSuccess(res) {
+  if (res.data.code != 200) {
+    wx.showToast({
+      title: res.data.msg,
+      icon: "none"
+    })
+  } else {
+    app.globalToken = res.data.data.access_token
+    //登录成功,获取首页数据
+    this.initIndexPage()
+  }
+  console.log("!!!!!", app.globalToken)
+}
+
+
+
+
+
+//------------------------------------------------------------------
+
+
+
+
+
+
+function send_post(url, data, successfun) {
+  console.log("令牌:", app.globalToken)
+  //如果令牌为空或过期,需要重新请求
+
+  wx.request({
+    url: BASE_Server + url, //仅为示例,并非真实的接口地址 
+    method: "POST",
+    header: {
+      'content-type': 'application/json',
+      'Authorization': 'Bearer ' + app.globalToken
+    },
+    data: data,
+    success(res) {
+      // var d = decodeURIComponent(decodeURIComponent(res.data.data))
+      // var json = JSON.parse(d)
+      successfun(res)
+    }
+  })
+}
+
+function post(url, data, successfun) {
+  wx.request({
+    url: BASE_Server + url, //仅为示例,并非真实的接口地址
+    method: "POST",
+    header: {
+      'content-type': 'application/x-www-form-urlencoded',
+      'Authorization': 'Bearer ' + app.globalToken
+    },
+    data: data,
+    success(res) {
+      successfun(res.data)
+    }
+  })
+}
+
+function wxpost(url, data, successfun) {
+  wx.request({
+    url: BASE_Server + url, //仅为示例,并非真实的接口地址
+    method: "POST",
+    header: {
+      'content-type': 'application/json',
+      'Authorization': 'Bearer ' + app.globalToken
+    },
+    data: data,
+    success(res) {
+      successfun(res.data)
+    }
+  })
+}
+
+function get(url, data, successfun) {
+  wx.request({
+    url: BASE_Server + url, //仅为示例,并非真实的接口地址
+    method: "Get",
+    header: {
+      'content-type': 'application/x-www-form-urlencoded'
+    },
+    params: data,
+    success(res) {
+      successfun(res.data)
+    }
+  })
+}
+
+function send_postdecode(url, data, successfun) {
+  wx.request({
+    url: BASE_Server + url, //仅为示例,并非真实的接口地址
+    method: "POST",
+    header: {
+      'content-type': 'application/x-www-form-urlencoded'
+    },
+    data: data,
+    success(res) {
+      var json = JSON.parse(res.data)
+      successfun(json)
+    }
+  })
+}
+
+function send_photo(data, successfun) {
+  var that = this
+  for (let i = 0; i < data.length; i++) {
+    console.log("data长度=" + data.length)
+    console.log(data)
+    wx.uploadFile({
+      url: BASE_Server + "/FileUpLoadController/upload.action", //仅为示例,非真实的接口地址
+      filePath: data[i] + "",
+      name: 'file',
+      success: function (res) {
+        var json = JSON.parse(res.data)
+        var sss = JSON.parse(decodeURIComponent(decodeURIComponent(json.data)));
+        wx.setStorageSync('filename' + (i + 1), sss.data.filename);
+        successfun(sss)
+      }
+    })
+  }
+}
+
+function send(data, successfun) {
+  var that = this
+  wx.uploadFile({
+    url: BASE_Server + "/CarIDScanController/carIduploadGetNumber.action", //仅为示例,非真实的接口地址
+    filePath: data[0] + "",
+    name: 'file',
+    success: function (res) {
+      var json = JSON.parse(res.data)
+      var sss = JSON.parse(decodeURIComponent(decodeURIComponent(json.data)));
+      // wx.setStorageSync("carnumber", sss.data.carNumber)
+      successfun(sss)
+    },
+    fail: function (res) {}
+  })
+}
+module.exports = {
+  BASE_Server: BASE_Server,
+  send_post: send_post,
+  send_photo: send_photo,
+  send: send,
+  post: post,
+  wxpost: wxpost,
+  get: get,
+  send_postdecode: send_postdecode,
+
+
+  send_post_login,
+  showLoading,
+  hideLoading,
+}
+
+
+function showLoading() {
+  wx.showLoading({
+    title: '加载中...',
+    mask: true,
+  })
+}
+
+function hideLoading() {
+  wx.hideLoading()
+}

+ 13 - 0
base/scancode.js

@@ -0,0 +1,13 @@
+function scancode(scansuccess, scancodefail) {
+  wx.scanCode({
+    success(res) {
+      scansuccess(res);
+    },
+    fail(res) {
+      scancodefail(res);
+    }
+  })
+}
+module.exports = {
+  scancode: scancode
+}

+ 12 - 0
base/subutil.wxs

@@ -0,0 +1,12 @@
+// 字段截取
+var sub = function(val) {
+  if (val.length == 0 || val == undefined) {
+    return;
+  }
+  if (val.length > 6) {
+    return val.substring(0, 6) + "...";
+  } else {
+    return val;
+  }
+}
+module.exports.sub = sub;

+ 250 - 0
iconfont.wxss

@@ -0,0 +1,250 @@
+@font-face {
+  font-family: "iconfont"; /* Project id 3264694 */
+  src: url('//at.alicdn.com/t/c/font_3264694_lo5p5irico.woff2?t=1669181716419') format('woff2'),
+       url('//at.alicdn.com/t/c/font_3264694_lo5p5irico.woff?t=1669181716419') format('woff'),
+       url('//at.alicdn.com/t/c/font_3264694_lo5p5irico.ttf?t=1669181716419') format('truetype');
+}
+
+.iconfont {
+  font-family: "iconfont" !important;
+  font-size: 16px;
+  font-style: normal;
+  -webkit-font-smoothing: antialiased;
+  -moz-osx-font-smoothing: grayscale;
+}
+
+.icon-web-icon-:before {
+  content: "\e6e8";
+}
+
+.icon-mn_shangchuantupian:before {
+  content: "\e603";
+}
+
+.icon-duihao:before {
+  content: "\e602";
+}
+
+.icon-huiyi:before {
+  content: "\e630";
+}
+
+.icon-xunjiandian1:before {
+  content: "\e610";
+}
+
+.icon-cangkukucun:before {
+  content: "\e636";
+}
+
+.icon-wuzichubei:before {
+  content: "\e67f";
+}
+
+.icon-yingjizhongxin:before {
+  content: "\e6ae";
+}
+
+.icon-dangjian_duiwujianshe:before {
+  content: "\e67d";
+}
+
+.icon-anfangxungeng:before {
+  content: "\e601";
+}
+
+.icon-huiyi1:before {
+  content: "\ea3f";
+}
+
+.icon-zengjiashuzi:before {
+  content: "\e641";
+}
+
+.icon-zengjia:before {
+  content: "\e60d";
+}
+
+.icon-jindu:before {
+  content: "\e7b0";
+}
+
+.icon-zhenggaishijian:before {
+  content: "\e662";
+}
+
+.icon-daizhenggai:before {
+  content: "\e6d0";
+}
+
+.icon-wenjianjia:before {
+  content: "\e617";
+}
+
+.icon-sousuo:before {
+  content: "\e600";
+}
+
+.icon-sousuotianchong:before {
+  content: "\e694";
+}
+
+.icon-icon-test:before {
+  content: "\e622";
+}
+
+.icon-wenjianguanli:before {
+  content: "\e616";
+}
+
+.icon-pinleishanchu:before {
+  content: "\eaf9";
+}
+
+.icon-gengduo:before {
+  content: "\e60c";
+}
+
+.icon-gongju-:before {
+  content: "\e635";
+}
+
+.icon-dian:before {
+  content: "\ec1e";
+}
+
+.icon-wushuju:before {
+  content: "\e642";
+}
+
+.icon-xunjianrenyuan:before {
+  content: "\e63a";
+}
+
+.icon-xunchaguanli:before {
+  content: "\e612";
+}
+
+.icon-daoluxuncha:before {
+  content: "\e615";
+}
+
+.icon-jiankong-xunjianbaogao:before {
+  content: "\e664";
+}
+
+.icon-xunjian:before {
+  content: "\e614";
+}
+
+.icon-xunjiandian:before {
+  content: "\e656";
+}
+
+.icon-xunjianjilu:before {
+  content: "\e657";
+}
+
+.icon-xuncharenwu:before {
+  content: "\e634";
+}
+
+.icon-anquanxuncha:before {
+  content: "\e608";
+}
+
+.icon-icon_xunchaxinxi:before {
+  content: "\e633";
+}
+
+.icon-jiahao:before {
+  content: "\eaf3";
+}
+
+.icon-xiangyou:before {
+  content: "\e65a";
+}
+
+.icon-queding:before {
+  content: "\e7d0";
+}
+
+.icon-daiban-wancheng-naozhong-02:before {
+  content: "\e73c";
+}
+
+.icon-fangxunyingjizhihui:before {
+  content: "\e65b";
+}
+
+.icon-yingjipingtai:before {
+  content: "\e63b";
+}
+
+.icon-huatong:before {
+  content: "\e67e";
+}
+
+.icon-mic-off:before {
+  content: "\e96c";
+}
+
+.icon-videooffshipinguanbi:before {
+  content: "\e6f0";
+}
+
+.icon-buxianshi:before {
+  content: "\e6ca";
+}
+
+.icon-xianxinghuishoutubiao:before {
+  content: "\e677";
+}
+
+.icon-shipin:before {
+  content: "\e701";
+}
+
+.icon-gongxiangrenwu:before {
+  content: "\e621";
+}
+
+.icon-jingyin2:before {
+  content: "\e747";
+}
+
+.icon-yangshengqi1:before {
+  content: "\e62a";
+}
+
+.icon-jingyin3:before {
+  content: "\e63e";
+}
+
+.icon-liaotian1:before {
+  content: "\e619";
+}
+
+.icon-liaotian2:before {
+  content: "\e61f";
+}
+
+.icon-yangshengqi2:before {
+  content: "\e675";
+}
+
+.icon-JC_006:before {
+  content: "\e631";
+}
+
+.icon-liaotian:before {
+  content: "\e637";
+}
+
+.icon-wenjiangongxiang:before {
+  content: "\e62f";
+}
+
+.icon-pingmugongxiang:before {
+  content: "\e746";
+}

+ 11 - 0
pages/Introduction/Introduction.js

@@ -0,0 +1,11 @@
+// pages/Introduction/Introduction.js
+Page({
+
+  /**
+   * 页面的初始数据
+   */
+  data: {
+
+  },
+  
+})

+ 6 - 0
pages/Introduction/Introduction.json

@@ -0,0 +1,6 @@
+{
+  "usingComponents": {},
+  "navigationBarBackgroundColor": "#f94b0e",
+  "navigationBarTextStyle": "white",
+  "navigationBarTitleText": "使用攻略"
+}

+ 39 - 0
pages/Introduction/Introduction.wxml

@@ -0,0 +1,39 @@
+<!--pages/Introduction/Introduction.wxml-->
+<view class="container">
+  <text class="title">二道应急小程序使用攻略</text>
+  <text>
+    一、遭遇拥挤踩踏事故怎么办
+
+  1.发觉拥挤的人群向着自己行走的方向拥来时,应该马上避到一旁,但是不要奔跑,以免摔倒。
+
+  2.可以到教室里暂避一时。切记不要逆着人流前进,那样非常容易被推倒在地。
+
+  3.若身不由己陷入人群之中,一定要先稳住双脚。切记远离教室的玻璃窗,以免因玻璃破碎而被扎伤。
+
+  4.遭遇拥挤的人流时,一定不要采用体位前倾或者低重心的姿势,即便鞋子被踩掉,也不要贸然弯腰提鞋或系鞋带。
+
+  5.如有可能,抓住一样坚固牢靠的东西,例如楼梯柱之类,待人群过去后,迅速而镇静地离开现场。
+
+  6.学生在校上下楼梯时要遵守秩序,靠右行走。课间操、放学时要排好队,不能从楼梯跑下,遇到其他班级要让行,不可争抢先行。
+
+  二、出现混乱局面后怎么办
+
+  1.在拥挤的人群中,要时刻保持警惕,当发现有人情绪不对,或人群开始骚动时,就要做好准备保护自己和他人。
+
+  2.此时脚下要敏感些,千万不能被绊倒,避免自己成为拥挤踩踏事件的诱发因素。
+
+  3.当发现自己前面有人突然摔倒了,马上要停下脚步,同时大声呼救,告知后面的人不要向前靠近。
+
+  4.当带着孩子遭遇拥挤的人群时,最好把孩子抱起来,避免其在混乱中被踩伤。
+
+  5.若被推倒,要设法靠近墙壁。面向墙壁,身体蜷成球状,双手在颈后紧扣,以保护身体最脆弱的部位。
+
+  三、 事故已经发生该怎么办
+
+  1.拥挤踩踏事故发生后,一方面赶快报警,等待救援,另一方面,在医务人员到达现场前,要抓紧时间用科学的方法开展自救和互救。
+
+  2.在救治中,要遵循先救重伤者、老人、儿童及妇女的原则。判断伤势的依据有:神志不清、呼之不应者伤势较重;脉搏急促而乏力者伤势较重;血压下降、瞳孔放大者伤势较重;有明显外伤,血流不止者伤势较重。
+
+  3.当发现伤者呼吸、心跳停止时,要赶快做人工呼吸,辅之以胸外按压。
+  </text>
+</view>

+ 14 - 0
pages/Introduction/Introduction.wxss

@@ -0,0 +1,14 @@
+/* pages/IntroductionIntroduction.wxss */
+.container{
+  margin: 30rpx 30rpx;
+}
+.title{
+  display: flex;
+  justify-content: center;
+  font-size: 40rpx;
+}
+text{
+  color: #000;
+  font-size: 32rpx;
+  text-align: justify;
+}

+ 121 - 0
pages/details/details.js

@@ -0,0 +1,121 @@
+// pages/details/details.js
+
+import http from '../../base/httputil'
+
+Page({
+
+
+  onLoad(e) {
+    this.data.busEnterpriseId = e.busEnterpriseId
+    this.getEnterpriseDetails()
+  },
+
+  data: {
+    busEnterpriseId: null,
+    enterpriseDetails: null,
+
+    //店铺经纬度
+    latitude: 43.8691319,
+    longitude: 125.3504459,
+    //标记点
+    markers: [{
+      id: 0,
+      name: "编程小石头",
+      address: "长春首佳科技有限公司",
+      latitude: 43.8691319,
+      longitude: 125.3504459,
+      width: 35,
+      height: 50
+    }]
+
+  },
+
+
+  getEnterpriseDetails() {
+    let obj = new Object();
+    obj.busEnterpriseId = this.data.busEnterpriseId
+    http.post("/system/AppEnterpriseController/getEnterpriseDetails", obj, this.getEnterpriseDetailsSuccess)
+  },
+  getEnterpriseDetailsSuccess(res) {
+    console.log(res)
+    this.setData({
+      enterpriseDetails: res.enterpriseDetails,
+      latitude: res.enterpriseDetails.latitude,
+      longitude: res.enterpriseDetails.longitude,
+      markers: [{
+        id: res.enterpriseDetails.busEnterpriseId,
+        name: res.enterpriseDetails.businessName,
+        address: res.enterpriseDetails.businessAddress,
+        latitude: res.enterpriseDetails.latitude,
+        longitude: res.enterpriseDetails.longitude,
+        width: 35,
+        height: 50
+      }]
+    })
+  },
+
+
+
+
+
+
+
+  //拨打电话
+  Call() {
+    wx.makePhoneCall({
+      phoneNumber: '17649876533'
+    })
+  },
+  //导航
+  navRoad(event) {
+    console.log(event)
+    wx.getLocation({ //获取当前经纬度
+      type: 'wgs84', //返回可以用于wx.openLocation的经纬度,
+      success: function (res) {
+        wx.openLocation({ //​使用微信内置地图查看位置。
+          latitude: event.currentTarget.dataset.marker.latitude, //要去的纬度-地址
+          longitude: event.currentTarget.dataset.marker.longitude, //要去的经度-地址
+          name: event.currentTarget.dataset.marker.name,
+          address: event.currentTarget.dataset.marker.address
+        })
+      }
+    })
+  },
+
+
+
+  //-------跳转
+  //巡检跳转
+  bindViewXunJian() {
+    wx.navigateTo({
+      url: '../xunjian/xunjian?busEnterpriseId='+this.data.busEnterpriseId,
+    })
+  },
+  //巡检跳转
+  bindViewXunChaJiLu() {
+    wx.navigateTo({
+      url: '../xunchajilu/xunchajilu?busEnterpriseId='
+      +this.data.enterpriseDetails.busEnterpriseId
+      +"&businessName="+this.data.enterpriseDetails.businessName,
+    })
+  },
+  //企业详情
+  bindViewQiYeXiangQingTable() {
+    wx.navigateTo({
+      url: '../qiyexqtable/qiyexqtable?busEnterpriseId='+this.data.busEnterpriseId,
+    })
+  },
+
+
+
+
+
+
+
+
+
+
+
+
+
+})

+ 13 - 0
pages/details/details.json

@@ -0,0 +1,13 @@
+{
+  "usingComponents": {
+    
+  },
+  "navigationBarBackgroundColor": "#f94b0e",
+  "navigationBarTextStyle": "white",
+  "navigationBarTitleText": "企业详情",
+  "permission": {
+    "scope.userLocation": {
+      "desc": "导航需要" 
+    }
+  }
+}

+ 71 - 0
pages/details/details.wxml

@@ -0,0 +1,71 @@
+<view class="container">
+  <view class="map">
+    <map longitude="{{enterpriseDetails.longitude}}" latitude="{{enterpriseDetails.latitude}}" scale="17" markers="{{markers}}" bindmarkertap="navRoad" data-marker="{{markers[0]}}" show-location />
+
+    <view class="map_btn"><text class="iconfont icon-wenjianguanli" bindtap="bindViewXunChaJiLu"></text><text class="iconfont icon-icon-test" bindtap="bindViewQiYeXiangQingTable"></text>
+    </view>
+
+
+
+    <view class="map_view">
+
+
+
+      <view>
+        <span>经度:</span>
+        <i>{{enterpriseDetails.longitude}}</i>
+      </view>
+      <view>
+        <span>纬度:</span>
+        <i>{{enterpriseDetails.latitude}}</i>
+      </view>
+      <view>
+        <span>企业名称:</span>
+        <i>{{enterpriseDetails.businessName}}</i>
+      </view>
+      <view>
+        <span>机构代码:</span>
+        <i>{{enterpriseDetails.orgCode}}</i>
+      </view>
+      <view>
+        <span>办公地址:</span>
+        <i>{{enterpriseDetails.officeAddress}}</i>
+      </view>
+      <view>
+        <span>经营地址:</span>
+        <i>{{enterpriseDetails.businessAddress}}</i>
+      </view>
+      <view>
+        <span>监管人员:</span>
+        <i>{{enterpriseDetails.supervisor}}</i>
+      </view>
+      <view>
+        <span>主管部门:</span>
+        <i>{{enterpriseDetails.tradeDept}}</i>
+      </view>
+      <view>
+        <span>所属部门:</span>
+        <i>{{enterpriseDetails.deptName}}</i>
+      </view>
+      <view>
+        <span>主要负责人:</span>
+        <i>{{enterpriseDetails.mainPerson}}</i>
+      </view>
+      <view class="phone" bindtap="Call">
+        <span>负责人电话:</span>
+        <i>{{enterpriseDetails.mainPersonPhone}}</i>
+      </view>
+      <view>
+        <span>安全负责人:</span>
+        <i>{{enterpriseDetails.headSecurity}}</i>
+      </view>
+      <view class="phone" bindtap="Call">
+        <span>负责人电话:</span>
+        <i>{{enterpriseDetails.headSecurityPhone}}</i>
+      </view>
+    </view>
+
+    <!-- 巡检悬浮按钮 -->
+    <view class="float_btn" bindtap="bindViewXunJian">检</view>
+  </view>
+</view>

+ 56 - 0
pages/details/details.wxss

@@ -0,0 +1,56 @@
+map{
+  height: 40vh;
+  width: 100vw;
+}
+.map{
+  height: 40vh;
+  width: 100vw;
+  position: relative;
+}
+.map canvas{
+  width:100%;
+  height: 100%;
+}
+.map_view{
+  margin: 30rpx 30rpx;
+}
+.map_view view{
+  display: flex;
+  flex-direction: row;
+  font-size: 34rpx;
+  line-height: 50rpx;
+  padding-bottom: 10rpx;
+}
+.map_view view span{
+  width: 240rpx;
+  text-align: right;
+  color: #181818;
+}
+.map_view view i{
+ color: rgb(146, 146, 146);
+ white-space:normal;
+word-break:break-all;
+word-wrap:break-word
+}
+.map_btn{
+  background: rgba(0, 0, 0, 0.479);
+  display: flex;
+  flex-direction: row;
+  width: 220rpx;
+  height: 70rpx;
+  position: absolute;
+  right:20rpx;
+  bottom:20rpx;
+  z-index: 99999;
+  border-radius: 50rpx;
+  justify-content: space-evenly;
+  align-items: center;
+}
+.map_btn .iconfont{
+  color: #fff;
+  font-size: 50rpx;
+}
+.logo-text{
+  display: none;
+}
+

BIN
pages/images/4.png


BIN
pages/images/banner.jpg


BIN
pages/images/banner.png


BIN
pages/images/banner2.jpg


BIN
pages/images/banner3.jpg


BIN
pages/images/home-like.png


BIN
pages/images/home-like2.png


BIN
pages/images/icon_ck.png


BIN
pages/images/icon_dw.png


BIN
pages/images/icon_hy.png


BIN
pages/images/icon_wz.png


BIN
pages/images/icon_xg.png


BIN
pages/images/icon_xj.png


BIN
pages/images/icon_yj.png


BIN
pages/images/index1.png


BIN
pages/images/index2.png


BIN
pages/images/line1.png


BIN
pages/images/line2.png


BIN
pages/images/me1.png


BIN
pages/images/me2.png


BIN
pages/images/nav_db.png


BIN
pages/images/nav_qy.png


BIN
pages/images/nav_xc.png


BIN
pages/images/qy_by.png


BIN
pages/images/qy_bz.png


BIN
pages/images/qy_zs.png


BIN
pages/images/shearh.png


BIN
pages/images/top_bg.png


BIN
pages/images/xcx_lb.png


BIN
pages/images/xcx_top.jpg


BIN
pages/images/xcx_top.png


BIN
pages/images/yjtd.png


+ 223 - 0
pages/index/index.js

@@ -0,0 +1,223 @@
+// index.js
+// 获取应用实例
+import http from '../../base/httputil'
+const app = getApp()
+
+Page({
+  data: {
+    current: 0, //当前所在页面的 index
+
+    indicatorDots: true, //是否显示面板指示点
+
+    autoplay: true, //是否自动切换
+
+    interval: 3000, //自动切换时间间隔
+
+    duration: 800, //滑动动画时长
+
+    circular: true, //是否采用衔接滑动
+
+    imgUrls: [
+
+      '../images/banner.jpg',
+
+      '../images/banner3.jpg',
+
+      '../images/banner2.jpg'
+
+    ],
+
+    links: [
+
+      // '/pages/second/register',
+
+      // '/pages/second/register',
+
+      // '/pages/second/register'
+
+    ],
+
+    //功能数据-孙一石
+    //记录首页点击-登录后继续跳转
+    dofun: null
+
+  },
+
+  onLoad() {
+
+  },
+
+  // 待办跳转
+  bindViewDaiBan() {
+    wx.navigateTo({
+      url: '../daiban/daiban'
+    })
+  },
+  // 企业跳转
+  bindViewQiYe() {
+    wx.navigateTo({
+      url: '../qiye/qiye'
+    })
+  },
+  // 巡查跳转
+  bindViewXunCha() {
+    wx.navigateTo({
+      url: '../xuncha/xuncha'
+    })
+  },
+  // 通知公告更多跳转
+  bindViewGengDuo() {
+    wx.navigateTo({
+      url: '../more/more'
+    })
+  },
+  // 新手指南跳转
+  bindViewNewComer() {
+    wx.navigateTo({
+      url: '../newcomer/newcomer',
+    })
+  },
+  //巡检跳转
+  bindViewXunJian() {
+    wx.navigateTo({
+      url: '../xunjian/xunjian',
+    })
+  },
+  // 使用攻略跳转
+  bindViewIntroduction() {
+    wx.navigateTo({
+      url: '../Introduction/Introduction'
+    })
+  },
+  bindViewXunjianimg() {
+    wx.navigateTo({
+      url: '../xunjianimg/xunjianimg'
+    })
+  },
+  // 图片轮播
+  //轮播图的切换事件
+
+  swiperChange: function (e) {
+
+    this.setData({
+
+      swiperCurrent: e.detail.current
+
+    })
+
+  },
+
+  //点击指示点切换
+
+  chuangEvent: function (e) {
+
+    this.setData({
+
+      swiperCurrent: e.currentTarget.id
+
+    })
+
+  },
+  //点击图片触发事件
+
+  swipclick: function (e) {
+
+    // console.log(this.data.swiperCurrent);
+
+    wx.switchTab({
+
+      // url: this.data.links[this.data.swiperCurrent]
+
+    })
+
+  },
+
+  //首页功能js-孙一石
+  init_userInfo(e) {
+    this.data.dofun = e.currentTarget.dataset.fun
+    let that = this
+    if (app.globalToken == null) {
+      http.showLoading()
+      wx.getUserProfile({
+        desc: 'desc',
+        success: (res) => {
+          this.getSysUserInfo(res.userInfo)
+        },
+        fail: res => {
+          console.log(res)
+        },
+
+      })
+    } else {
+      this.callByName(this.data.dofun)
+    }
+  },
+
+
+  callByName(name) {
+    if (name == "bindViewDaiBan") {
+      //待办
+      this.bindViewDaiBan()
+    } else if (name == "bindViewQiYe") {
+      //企业
+      this.bindViewQiYe()
+    } else if (name == "bindViewXunCha") {
+      this.bindViewXunCha()
+    } else if (name == "bindViewXunjianimg") {
+      this.bindViewXunjianimg()
+    }
+  },
+
+  initIndexPage() {
+    http.send_post("/system/AppIndexController/getIndexPageData", null, this.initIndexPageSuccess)
+  },
+  initIndexPageSuccess(res) {
+    http.hideLoading()
+  },
+
+  loginSuccess(res) {
+    if (res.data.code != 200) {
+      wx.showToast({
+        title: res.data.msg,
+        icon: "none"
+      })
+    } else {
+      app.globalToken = res.data.data.access_token
+      //登录成功,获取首页数据
+      this.initIndexPage()
+    }
+    console.log("!!!!!", app.globalToken)
+
+  },
+
+
+
+
+
+
+
+  getSysUserInfo(info) {
+    let that = this
+    wx.login({
+      success(res) {
+        var code = res.code
+        var data = {
+          wxCode: code,
+          wxNickName: info.nickName,
+          wxAvatarUrl: info.avatarUrl
+        }
+        // http.send_post_login("/minapp/AppLoginController/appLogin",data)
+        http.send_post_login("/applogin", data, that.loginSuccess)
+      },
+      fail(res) {
+        console.log("ffff", res)
+      }
+    })
+  }
+
+
+
+
+
+
+})

+ 10 - 0
pages/index/index.json

@@ -0,0 +1,10 @@
+{
+  "usingComponents": {
+
+  },
+"navigationBarBackgroundColor": "#f57c2a",
+"navigationStyle": "custom",
+"navigationBarTextStyle": "white"
+
+}
+

+ 124 - 0
pages/index/index.wxml

@@ -0,0 +1,124 @@
+<!--index.wxml-->
+<!-- 自定义顶部栏 -->
+<view class="nav-bar">
+  <view class="nav-barback"></view>
+</view>
+<!-- 占位,高度与顶部栏一样 -->
+<view style="height:450rpx;"></view>
+<view class="container">
+  <view class="bg">
+    <image src="../images/top_bg.png" class="img" mode="widthFix" />
+  </view>
+
+  <!-- 头部图片 -->
+  <view class="head_banner wid15"></view>
+  <!-- 快速跳转按钮 -->
+  <view class="nav">
+    <view class="item" bindtap="init_userInfo" data-fun="bindViewDaiBan">
+      <image class="img" src="../images/nav_db.png" />
+      <text>待办</text>
+    </view>
+    <view class="item" bindtap="init_userInfo" data-fun="bindViewQiYe">
+      <image class="img" src="../images/nav_qy.png" />
+      <text>企业</text>
+    </view>
+    <view class="item" bindtap="init_userInfo" data-fun="bindViewXunCha">
+      <image class="img" src="../images/nav_xc.png" />
+      <text>巡查</text>
+    </view>
+  </view>
+  <!-- 分割线 -->
+  <!-- 新手指南 使用攻略 -->
+  <view class="top_banner">
+<view class="fg_line">
+  <image src="../images/line1.png"/>
+</view>
+    <p bindtap="init_userInfo" data-fun="bindViewXunjianimg">安全隐患</p>
+    <h1 bindtap="init_userInfo" data-fun="bindViewXunjianimg">000,000</h1>
+    <span bindtap="init_userInfo" data-fun="bindViewXunjianimg">- 急事办 -</span>
+
+    <view class="xszn top_banner_btn" open-type="contact" style="width:unset" bindtap="bindViewNewComer">
+      <span>新手指南</span>
+      <i>newcomer</i>
+    </view>
+    <view class="sygl top_banner_btn" open-type="contact" style="width:unset" bindtap="bindViewIntroduction">
+      <span>使用攻略</span>
+    </view>
+    <view class="fg_line">
+      <image src="../images/line2.png"/>
+    </view>
+  </view>
+
+  <!-- 通知公告 -->
+  <view class="tzgg">
+    <image class="img" src="../images/xcx_lb.png" />
+    <b>[待办]</b>
+    <text>隐患排查已整改,请核查!</text>
+    <view class="more" bindtap="bindViewGengDuo">更多></view>
+  </view>
+  <!-- 中间图片banner -->
+  <!-- <view class="con_banner">
+<image class="img" src="../images/banner.jpg" mode="widthFix"/>
+</view> -->
+  <swiper indicator-dots="{{indicatorDots}}" autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}">
+    <block wx:for="{{imgUrls}}">
+      <swiper-item>
+        <image src="{{item}}" class="slide-image" />
+      </swiper-item>
+    </block>
+  </swiper>
+  <!-- 应急通道 -->
+  <view class="yjtd_vi">
+    <view class="tittle">
+      <image class="img" src="../images/yjtd.png" />
+      <span>应急通道</span>
+      <u>安全第一,预防为主!</u>
+    </view>
+    <view class="line2"></view>
+    <view class="yjtd_icon">
+      <view class="icon_vi">
+      <view class="icon_bg icon_xg">
+        <i class="iconfont icon-xunjiandian"></i>
+      </view>
+        <text>巡更</text>
+      </view>
+      <view class="icon_vi" bindtap="bindViewXunJian">
+        <view class="icon_bg icon_xj">
+        <i class="iconfont icon-xunjianjilu"></i>
+      </view>
+        <text>巡检</text>
+      </view>
+      <view class="icon_vi">
+        <view class="icon_bg icon_yj">
+        <i class="iconfont icon-yingjizhongxin"></i>
+      </view>
+        <text>应急</text>
+      </view>
+      <view class="icon_vi">
+        <view class="icon_bg icon_hy">
+        <i class="iconfont icon-huiyi"></i>
+      </view>
+        <text>会议</text>
+      </view>
+      <view class="icon_vi">
+        <view class="icon_bg icon_wz">
+        <i class="iconfont icon-wuzichubei"></i>
+      </view>
+        <text>物资</text>
+      </view>
+      <view class="icon_vi">
+        <view class="icon_bg icon_ck">
+        <i class="iconfont icon-cangkukucun"></i>
+      </view>
+        <text>仓库</text>
+      </view>
+      <view class="icon_vi">
+        <view class="icon_bg icon_dw">
+        <i class="iconfont icon-dangjian_duiwujianshe"></i>
+      </view>
+        <text>队伍</text>
+      </view>
+    </view>
+  </view>
+
+</view>

+ 292 - 0
pages/index/index.wxss

@@ -0,0 +1,292 @@
+page{
+  /* background: linear-gradient(#f94b0e,#fff); */
+  background: #f2f2f2;
+  display: flex;
+  flex-direction: column;
+  justify-content: flex-start;
+
+}
+.img {
+  width: 100%;
+}
+
+.container{
+  background: #fff;
+  border-top-left-radius: 45rpx;
+}
+/* 导航 */
+.nav-bar {
+  position: fixed;
+  width: 100%;
+  top: 0;
+  color: rgb(255, 255, 255);
+  /* background: rgb(255, 255, 255); */
+  z-index: 10000;
+  height: 160rpx;
+  text-align: center;
+  
+  }
+  .nav-barback{
+    background: -webkit-linear-gradient(top, rgb(255, 123, 0), rgb(249, 75, 14));
+  width: 100%;
+  position: relative;
+  top: 0;
+  z-index: 10001;
+  height: 160rpx;
+  line-height: 230rpx;
+  color: #fff;
+  font-size: 38rpx;
+  }
+  .nav-bar .search {
+  width: 60%;
+  color: #333;
+  font-size: 14px;
+  background: #fff;
+  position: absolute;
+  border-radius: 50px;
+  background: rgb(255, 255, 255);
+  padding-left: 14px;
+  z-index: 10002;
+  }
+ 
+.bg{
+  height: 500rpx;
+  position: absolute;
+  top:0rpx;
+  width: 100%;
+  z-index: -1;
+  background:#f94b0e;
+}
+.bg .img{
+  height: auto;
+  margin-top: 180rpx;
+}
+.head_banner .img{
+  height: auto;
+  border: 0px;
+  border-radius: 10rpx;
+}
+.nav {
+  display: flex;
+  flex-direction: row;
+  padding: 60rpx 30rpx 20rpx 30rpx;
+  justify-content:space-around;
+
+}
+
+.nav .item{
+  display: flex;
+  flex-direction: column;
+  text-align: center;
+}
+.nav .item text{
+ margin-top: 10rpx;
+ font-size: 34rpx;
+ color: rgba(0, 0, 0, 0.9);
+}
+.nav .item .img{
+  width: 100rpx;
+  height: 100rpx;
+}
+/* 新手指南 使用攻略 */
+.top_banner{
+  background: #fff;
+  width: auto;
+  text-align: center;
+  display: grid;
+  padding: 20rpx 0;
+  position: relative;
+}
+.top_banner p{
+  font-size: 30rpx;
+  height: 60rpx;
+  line-height: 60rpx;
+  color: rgba(0, 0, 0, 0.5);
+  padding-top: 20rpx;
+}
+.top_banner h1{
+  font-size: 44rpx;
+  height: 60rpx;
+  line-height: 60rpx;
+  color: rgba(0, 0, 0, 0.9);
+  font-weight: 500;
+}
+.top_banner span{
+  font-size: 24rpx;
+  height: 40rpx;
+  line-height: 40rpx;
+  color: #d2d2d2;
+}
+.top_banner_btn{
+  position: absolute;
+  top:3%;
+padding: 0;
+margin: 0;
+display: grid; 
+justify-content:space-around;
+background: none;
+}
+.top_banner .xszn{
+      left:5% ;
+      top:38%;
+}
+.top_banner .sygl{
+    right:5% ;
+    top:39%;
+}
+.top_banner .xszn span{
+  background-image:-webkit-linear-gradient(right,#ff2e56,#d260a8); 
+  color: #fff;
+  padding: 5rpx 20rpx;
+  border-radius: 50rpx;
+  font-size: 26rpx;
+}
+.top_banner .xszn i{
+  color: rgb(14, 211, 211);
+  font-size: 24rpx;
+  padding: 8rpx 0;
+}
+.top_banner .sygl span{
+      border-radius: 50rpx;
+      border: 4rpx solid #3076f7;
+      color: #3076f7;
+      padding: 5rpx 20rpx;
+      font-size: 24rpx;
+}
+
+.tzgg{
+  display: flex;
+  flex-direction: row;
+  align-items: center;
+  height: 120rpx;
+  line-height: 120rpx;
+  padding: 0rpx 30rpx;
+  border-bottom: 2px solid #eee;
+}
+.tzgg .img{
+ width: 60rpx;
+ height: 60rpx;
+ margin-right: 20rpx;
+}
+.tzgg b{
+  font-size: 32rpx;
+  color: #181818;
+  padding-right: 5rpx;
+ }
+.tzgg text{
+  font-size: 32rpx;
+  color: #181818;
+ }
+.tzgg .more{
+  margin-left:auto;
+  font-size: 28rpx;
+  color: #7b7b7b;
+ }
+ .con_banner .img{
+   height: auto;
+ }
+
+.yjtd_vi{
+  display: flex;
+  flex-direction: column;
+}
+.yjtd_vi .tittle{
+  display: flex;
+  flex-direction: row;
+  align-items: center;
+  height: 100rpx;
+  line-height: 100rpx;
+  border-bottom: 2rpx solid #f5f5f5;
+}
+.yjtd_vi .tittle .img{
+  width: 60rpx;
+  height: 60rpx;
+  padding: 5rpx 14rpx;
+}
+.yjtd_vi .tittle span{
+  font-size: 38rpx;
+  color: #181818;
+  margin-right: 30rpx;
+  font-weight: 500;
+}
+.yjtd_vi .tittle u{
+  font-size: 26rpx;
+  color: #7b7b7b;
+}
+.yjtd_icon{
+  display: flex;
+  flex-direction: row;
+  flex-wrap: wrap;
+  padding: 20rpx 20rpx;
+}
+.yjtd_icon .icon_vi{
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+  margin:20rpx 29.9rpx;
+}
+.yjtd_icon .icon_vi .icon_bg{
+ width: 120rpx;
+ height: 120rpx;
+ border-radius: 50%;
+}
+.yjtd_icon .icon_vi .icon_bg i{
+  color: #fff;
+  align-items: center;
+  font-size: 70rpx;
+  justify-content:center;
+  align-items: stretch;
+  display: flex;
+  line-height: 120rpx;
+  
+ }
+ .yjtd_icon .icon_vi .icon_xg{
+    background: #ffb05b;
+ }
+ .yjtd_icon .icon_vi .icon_xj{
+  background: #6467f0;
+}
+.yjtd_icon .icon_vi .icon_yj{
+  background: #07c160;
+}
+.yjtd_icon .icon_vi .icon_hy{
+  background: #fa5151;
+}
+.yjtd_icon .icon_vi .icon_wz{
+  background: #95ec69;
+}
+.yjtd_icon .icon_vi .icon_ck{
+  background: #1485ee;
+}
+.yjtd_icon .icon_vi .icon_dw{
+  background: #ffc300;
+}
+.yjtd_icon .icon_vi text{
+  font-size: 34rpx;
+  height: 80rpx;
+  line-height: 80rpx;
+  color: #181818;
+  }
+
+  /* 轮播图 */
+  swiper {
+    height: 200rpx;
+    width: 100%;
+  }
+  swiper-item {
+    height: 100%;
+    width: 100%;
+  }
+  .slide-image{
+     height: 100%;
+    width: 100%;
+  }
+
+  .fg_line{
+    width: 100%;
+    height: 20rpx;
+  }
+  .fg_line image{
+    width: 100%;
+    height: 100%;
+  }

+ 66 - 0
pages/me/me.js

@@ -0,0 +1,66 @@
+// pages/me/me.js
+Page({
+
+  /**
+   * 页面的初始数据
+   */
+  data: {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面加载
+   */
+  onLoad(options) {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面初次渲染完成
+   */
+  onReady() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面显示
+   */
+  onShow() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面隐藏
+   */
+  onHide() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面卸载
+   */
+  onUnload() {
+
+  },
+
+  /**
+   * 页面相关事件处理函数--监听用户下拉动作
+   */
+  onPullDownRefresh() {
+
+  },
+
+  /**
+   * 页面上拉触底事件的处理函数
+   */
+  onReachBottom() {
+
+  },
+
+  /**
+   * 用户点击右上角分享
+   */
+  onShareAppMessage() {
+
+  }
+})

+ 6 - 0
pages/me/me.json

@@ -0,0 +1,6 @@
+{
+  "usingComponents": {},
+  "navigationBarBackgroundColor": "#f94b0e",
+  "navigationBarTextStyle": "white",
+  "navigationBarTitleText": "个人资料"
+}

+ 2 - 0
pages/me/me.wxml

@@ -0,0 +1,2 @@
+<!--pages/me/me.wxml-->
+<text>pages/me/me.wxml</text>

+ 1 - 0
pages/me/me.wxss

@@ -0,0 +1 @@
+/* pages/me/me.wxss */

+ 53 - 0
pages/menu/menu.js

@@ -0,0 +1,53 @@
+// components/menu/menu.js
+Component({
+  /**
+   * ����������б�
+   */
+  
+  properties: {
+    mainmodel: {
+      type: Object,
+      value: {}
+    },
+    menulist: {
+      type: Object,
+      value: []
+    }
+  },
+  options: {
+    addGlobalClass: true,
+  },
+
+  /**
+   * ����ij�ʼ����
+   */
+  data: {
+    showmenus:true,
+  },
+
+  /**
+   * ����ķ����б�
+   */
+  methods: {
+    showclick:function(){
+      console.log("showclick")
+      let isshow = !this.data.showmenus;
+      console.log(isshow)
+      this.setData({
+        showmenus: isshow,
+      })
+    },
+    itemclick:function(e){
+      this.showclick();
+      console.log(e.currentTarget.dataset);
+      let info = e.currentTarget.dataset.item;
+      if (info){
+        this.triggerEvent('menuItemClick', {
+            "iteminfo":info
+        })
+      }
+    }
+   
+
+  }
+})

+ 4 - 0
pages/menu/menu.json

@@ -0,0 +1,4 @@
+{
+  "component": true,
+  "usingComponents": {}
+}

+ 15 - 0
pages/menu/menu.wxml

@@ -0,0 +1,15 @@
+
+<!--pages/menu/menu.wxml-->
+<view class='menu_box'>
+    <view hidden='{{showmenus}}' class='menu_bg'>
+    <block wx:for='{{menulist}}' wx:key='menulist'>
+      <view class='menu_main' catchtap='itemclick' data-item='{{item}}'>
+        <image class='menu_img iconfont {{item.url}}' src='' />
+        <text class='menu_title'  hidden='{{mainmodel.title.length > 0 ? flase:true}}'>{{item.title}}</text>
+      </view>
+    </block>
+    </view>
+    <view catchtap='showclick' class='menu_main menu_con'>
+    <i class="iconfont icon-jiahao"></i>
+    </view>
+</view>

+ 66 - 0
pages/menu/menu.wxss

@@ -0,0 +1,66 @@
+/* components/menu/menu.wxss */
+
+
+
+.menu_box{
+  position: fixed;
+  bottom: 150rpx;
+  right: 30rpx;
+  /* background-color: red; */
+  text-align: center;
+}
+
+.menu_main{
+  top: 10rpx;
+  width: 100rpx;
+  height: auto;
+  border-radius: 50%;
+  display: flex;
+  flex-direction: column;
+  text-align: center;
+  }
+  .menu_bg .iconfont{
+    color: #f94b0e;
+    font-size: 50rpx;
+    margin: 10rpx auto;
+  }
+  .menu_con{
+    top: 10rpx;
+    width: 100rpx;
+    height: 100rpx;
+    background-color: #f94b0e;
+    border-radius: 50%;
+    display: flex;
+    box-shadow: 5rpx 5rpx 10rpx rgb(153, 153, 153);
+    
+    }
+.menu_img{
+margin-top: 10rpx;
+width: 50rpx;
+height: 50rpx;
+/* background-color: red; */
+}
+.menu_title{
+  display: block;
+  width: 100%;
+  text-align: center;
+  font-size: 30rpx;
+
+}
+.icon-jiahao{
+  font-size: 50rpx;
+
+  color: #fff;
+  margin: auto;
+}
+.menu_bg{
+  background: rgb(236, 235, 235);
+  padding-bottom: 60rpx;
+  margin-bottom: -50rpx;
+  padding-top: 20rpx;
+  border-top-left-radius: 50rpx;
+  border-top-right-radius: 50rpx;
+}
+.menu_bg .menu_main{
+  margin-bottom: 20rpx;
+}

+ 23 - 0
pages/more/more.js

@@ -0,0 +1,23 @@
+// pages/qiye/qiye.js
+
+Page({
+  /**
+   * 组件的初始数据
+   */
+  data: {
+    
+  },
+  // 搜索结果跳页
+  bindViewSearchEnd() {
+    wx.navigateTo({
+       url: '../search/search'
+    })
+  },
+  // 企业详细页
+  bindViewDetails() {
+    wx.navigateTo({
+       url: '../details/details'
+    })
+  },
+
+})

+ 13 - 0
pages/more/more.json

@@ -0,0 +1,13 @@
+{
+  "component": true, 
+  "usingComponents": {
+    "menu": "/pages/menu/menu"
+  },
+
+
+  "navigationBarBackgroundColor": "#f94b0e",
+  "navigationBarTextStyle": "white",
+  "navigationBarTitleText": "通知公告"
+
+}
+

+ 92 - 0
pages/more/more.wxml

@@ -0,0 +1,92 @@
+<view class="container">
+  <!-- 搜索 -->
+  <view class="search-container">
+  <view class="search-left">
+    <input type="text" placeholder="搜索"/>
+  </view>
+  <button bindtap="bindViewSearchEnd" class="search-right">
+    <image class="img" src="../images/shearh.png" />
+  </button>
+</view>
+
+<!-- 列表 -->
+<view class="list_vi">
+  <view class="list_li" bindtap="bindViewDetails">
+    <i class="list_icon iconfont icon-queding"></i>
+    <text>[巡检]长春首佳科技有限公司</text>
+    <i class="iconfont icon-xiangyou list_right"></i>
+  </view>
+  <view class="line2"></view>
+  <view class="list_li" bindtap="bindViewDetails">
+    <i class="list_icon iconfont icon-yingjipingtai"></i>
+    <text>[巡检]长春首佳科技有限公司</text>
+    <i class="iconfont icon-xiangyou list_right"></i>
+  </view>
+  <view class="line2"></view>
+  <view class="list_li" bindtap="bindViewDetails">
+    <i class="list_icon iconfont icon-queding"></i>
+    <text>[巡检]长春首佳科技有限公司</text>
+    <i class="iconfont icon-xiangyou list_right"></i>
+  </view>
+  <view class="line2"></view>
+  <view class="list_li" bindtap="bindViewDetails">
+    <i class="list_icon iconfont icon-yingjipingtai"></i>
+    <text>[巡检]长春首佳科技有限公司</text>
+    <i class="iconfont icon-xiangyou list_right"></i>
+  </view>
+  <view class="line2"></view>
+  <view class="list_li" bindtap="bindViewDetails">
+    <i class="list_icon iconfont icon-queding"></i>
+    <text>[巡检]长春首佳科技有限公司</text>
+    <i class="iconfont icon-xiangyou list_right"></i>
+  </view>
+  <view class="line2"></view>
+  <view class="list_li" bindtap="bindViewDetails">
+    <i class="list_icon iconfont icon-yingjipingtai"></i>
+    <text>[巡检]长春首佳科技有限公司</text>
+    <i class="iconfont icon-xiangyou list_right"></i>
+  </view>
+  <view class="line2"></view>
+  <view class="list_li">
+    <i class="list_icon iconfont icon-queding"></i>
+    <text>[巡检]长春首佳科技有限公司</text>
+    <i class="iconfont icon-xiangyou list_right"></i>
+  </view>
+  <view class="line2"></view>
+  <view class="list_li">
+    <i class="list_icon iconfont icon-queding"></i>
+    <text>[巡检]长春首佳科技有限公司</text>
+    <i class="iconfont icon-xiangyou list_right"></i>
+  </view>
+  <view class="line2"></view>
+  <view class="list_li">
+    <i class="list_icon iconfont icon-queding"></i>
+    <text>[巡检]长春首佳科技有限公司</text>
+    <i class="iconfont icon-xiangyou list_right"></i>
+  </view>
+  <view class="line2"></view>
+  <view class="list_li">
+    <i class="list_icon iconfont icon-queding"></i>
+    <text>[巡检]长春首佳科技有限公司</text>
+    <i class="iconfont icon-xiangyou list_right"></i>
+  </view>
+  <view class="line2"></view>
+  <view class="list_li">
+    <i class="list_icon iconfont icon-queding"></i>
+    <text>[巡检]长春首佳科技有限公司</text>
+    <i class="iconfont icon-xiangyou list_right"></i>
+  </view>
+  <view class="line2"></view>
+  <view class="list_li">
+    <i class="list_icon iconfont icon-queding"></i>
+    <text>[巡检]长春首佳科技有限公司</text>
+    <i class="iconfont icon-xiangyou list_right"></i>
+  </view>
+  <view class="line2"></view>
+
+</view>
+
+
+
+
+</view>

+ 33 - 0
pages/more/more.wxss

@@ -0,0 +1,33 @@
+.qy_con{
+  display: flex;
+  flex-direction: row;
+  justify-content:space-around;
+  text-align: center;
+  margin: 30rpx 30rpx;
+}
+.qy_con view{
+height: 140rpx;
+color: #fff;
+display: flex;
+flex-direction: column;
+padding: 15rpx 40rpx;
+position: relative;
+}
+.qy_con view image{
+  position: absolute;
+  top:0px;
+  left: 0px;
+  width: 100%;
+  height: 100%;
+  z-index: -1;
+  }
+.qy_con view h2{
+  font-size: 58rpx;
+  font-weight: bolder;
+  padding-top: 10rpx;
+  }
+  .qy_con view p{
+    font-size: 35rpx;
+    }
+
+  

+ 11 - 0
pages/newcomer/newcomer.js

@@ -0,0 +1,11 @@
+// pages/newcomer/newcomer.js
+Page({
+
+  /**
+   * 页面的初始数据
+   */
+  data: {
+
+  },
+  
+})

+ 6 - 0
pages/newcomer/newcomer.json

@@ -0,0 +1,6 @@
+{
+  "usingComponents": {},
+  "navigationBarBackgroundColor": "#f94b0e",
+  "navigationBarTextStyle": "white",
+  "navigationBarTitleText": "新手指南"
+}

+ 39 - 0
pages/newcomer/newcomer.wxml

@@ -0,0 +1,39 @@
+<!--pages/newcomer/newcomer.wxml-->
+<view class="container">
+  <text class="title">二道应急小程序新手指南</text>
+  <text>
+    一、遭遇拥挤踩踏事故怎么办
+
+  1.发觉拥挤的人群向着自己行走的方向拥来时,应该马上避到一旁,但是不要奔跑,以免摔倒。
+
+  2.可以到教室里暂避一时。切记不要逆着人流前进,那样非常容易被推倒在地。
+
+  3.若身不由己陷入人群之中,一定要先稳住双脚。切记远离教室的玻璃窗,以免因玻璃破碎而被扎伤。
+
+  4.遭遇拥挤的人流时,一定不要采用体位前倾或者低重心的姿势,即便鞋子被踩掉,也不要贸然弯腰提鞋或系鞋带。
+
+  5.如有可能,抓住一样坚固牢靠的东西,例如楼梯柱之类,待人群过去后,迅速而镇静地离开现场。
+
+  6.学生在校上下楼梯时要遵守秩序,靠右行走。课间操、放学时要排好队,不能从楼梯跑下,遇到其他班级要让行,不可争抢先行。
+
+  二、出现混乱局面后怎么办
+
+  1.在拥挤的人群中,要时刻保持警惕,当发现有人情绪不对,或人群开始骚动时,就要做好准备保护自己和他人。
+
+  2.此时脚下要敏感些,千万不能被绊倒,避免自己成为拥挤踩踏事件的诱发因素。
+
+  3.当发现自己前面有人突然摔倒了,马上要停下脚步,同时大声呼救,告知后面的人不要向前靠近。
+
+  4.当带着孩子遭遇拥挤的人群时,最好把孩子抱起来,避免其在混乱中被踩伤。
+
+  5.若被推倒,要设法靠近墙壁。面向墙壁,身体蜷成球状,双手在颈后紧扣,以保护身体最脆弱的部位。
+
+  三、 事故已经发生该怎么办
+
+  1.拥挤踩踏事故发生后,一方面赶快报警,等待救援,另一方面,在医务人员到达现场前,要抓紧时间用科学的方法开展自救和互救。
+
+  2.在救治中,要遵循先救重伤者、老人、儿童及妇女的原则。判断伤势的依据有:神志不清、呼之不应者伤势较重;脉搏急促而乏力者伤势较重;血压下降、瞳孔放大者伤势较重;有明显外伤,血流不止者伤势较重。
+
+  3.当发现伤者呼吸、心跳停止时,要赶快做人工呼吸,辅之以胸外按压。
+  </text>
+</view>

+ 14 - 0
pages/newcomer/newcomer.wxss

@@ -0,0 +1,14 @@
+/* pages/newcomer/newcomer.wxss */
+.container{
+  margin: 30rpx 30rpx;
+}
+.title{
+  display: flex;
+  justify-content: center;
+  font-size: 40rpx;
+}
+text{
+  color: #000;
+  font-size: 32rpx;
+  text-align: justify;
+}

+ 75 - 0
pages/qiye/qiye.js

@@ -0,0 +1,75 @@
+// pages/qiye/qiye.js
+import http from '../../base/httputil'
+Page({
+  /**
+   * 组件的初始数据
+   */
+  onLoad() {
+    this.initQiyePage()
+  },
+  data: {
+
+    weekCount: 0,
+    monthCount: 0,
+    totalCount: 0,
+
+    enterpriseList: [],
+
+
+    menulist: [{
+        "id": "1",
+        "url": "icon-anquanxuncha",
+        "title": "巡查",
+      },
+      {
+        "id": "2",
+        "url": "icon-xunjian",
+        "title": "巡检",
+      },
+    ],
+    mainmodel: {
+
+    }
+  },
+  // 搜索结果跳页
+  bindViewSearchEnd() {
+    wx.navigateTo({
+      url: '../search/search'
+    })
+  },
+  // 企业详细页
+  bindViewDetails(e) {
+    let busEnterpriseId = e.currentTarget.dataset.enterpriseid
+    wx.navigateTo({
+      url: '../details/details?busEnterpriseId=' + busEnterpriseId
+    })
+  },
+  //企业表单详细
+  bindViewQiYeMore() {
+    wx.navigateTo({
+      url: '../qiyemore/qiyemore'
+    })
+  },
+
+  initQiyePage() {
+    http.send_post("/system/AppEnterpriseController/getInitEnterpriseData", null, this.getQiyePageSuccess)
+    http.send_post("/system/AppEnterpriseController/getInitEnterpriseList", null, this.getQiyeEnterpriseListSuccess)
+  },
+  getQiyePageSuccess(res) {
+    let enterpriseCount = res.data.enterpriseCount;
+    this.setData({
+      weekCount: enterpriseCount.weekCount,
+      monthCount: enterpriseCount.monthCount,
+      totalCount: enterpriseCount.totalCount,
+    })
+  },
+  getQiyeEnterpriseListSuccess(res) {
+    this.setData({
+      enterpriseList: res.data.rows
+    })
+  },
+  changeSearch(e) {
+    console.log(e.detail.value)
+  }
+
+})

+ 12 - 0
pages/qiye/qiye.json

@@ -0,0 +1,12 @@
+{
+  "component": true, 
+  "usingComponents": {
+  },
+
+
+  "navigationBarBackgroundColor": "#f94b0e",
+  "navigationBarTextStyle": "white",
+  "navigationBarTitleText": "企业"
+
+}
+

+ 48 - 0
pages/qiye/qiye.wxml

@@ -0,0 +1,48 @@
+<view class="container">
+  <!-- 搜索 -->
+  <view class="search-container">
+    <view class="search-left">
+      <input type="text" bindtap="bindViewSearchEnd" placeholder="搜索" />
+    </view>
+    <button bindtap="bindViewSearchEnd" class="search-right">
+      <text class="iconfont icon-sousuo"></text>
+    </button>
+  </view>
+  <!-- 企业录入数量 -->
+  <view class="qy_con">
+    <view class="qy_bz">
+      <image src="../images/qy_bz.png" />
+      <h2>{{weekCount}}</h2>
+      <p>本周录入</p>
+
+    </view>
+    <view class="qy_by">
+      <image src="../images/qy_by.png" />
+      <h2>{{monthCount}}</h2>
+      <p>本月录入</p>
+    </view>
+    <view class="qy_zs">
+      <image src="../images/qy_zs.png" />
+      <h2>{{totalCount}}</h2>
+      <p>企业总数</p>
+    </view>
+  </view>
+  <!-- 列表 -->
+  <view class="list_vi">
+    <view class="list_li" bindtap="bindViewDetails" wx:for="{{enterpriseList}}" wx:key="index" data-enterpriseid="{{item.busEnterpriseId}}">
+      <i class="list_icon iconfont icon-queding" wx:if="{{item.riskCount == 0}}"></i>
+      <i class="list_icon iconfont icon-yingjipingtai" wx:if="{{item.riskCount > 0}}"></i>
+      <text>{{item.businessName}}</text>
+      <i class="iconfont icon-xiangyou list_right"></i>
+    </view>
+
+
+
+  </view>
+        
+  <!-- 巡检悬浮按钮 -->
+  <view class="float_btn iconfont icon-jiahao" bindtap="bindViewQiYeMore"></view>
+
+
+
+</view>

+ 39 - 0
pages/qiye/qiye.wxss

@@ -0,0 +1,39 @@
+.qy_con {
+  display: flex;
+  flex-direction: row;
+  justify-content: space-around;
+  text-align: center;
+  margin: 30rpx 30rpx;
+}
+
+.qy_con view {
+  height: 140rpx;
+  color: #fff;
+  display: flex;
+  flex-direction: column;
+  padding: 15rpx 40rpx;
+  position: relative;
+}
+
+.qy_con view image {
+  position: absolute;
+  top: 0px;
+  left: 0px;
+  width: 100%;
+  height: 100%;
+  z-index: -1;
+}
+
+.qy_con view h2 {
+  font-size: 58rpx;
+  font-weight: bolder;
+  padding-top: 10rpx;
+}
+
+.qy_con view p {
+  font-size: 35rpx;
+}
+
+.icon-jiahao {
+  font-size: 60rpx;
+}

+ 167 - 0
pages/qiyemore/qiyemore.js

@@ -0,0 +1,167 @@
+// pages/qiyemore/qiyemore.js
+import http from '../../base/httputil'
+Page({
+
+  onLoad() {
+    this.getLocation()
+  },
+
+  /**
+   * 页面的初始数据
+   */
+  data: {
+    longitude: Number,
+    form: {
+      longitude: Number,
+      latitude: Number,
+      businessName: null,
+      orgCode: null,
+      officeAddress: null,
+      businessAddress: null,
+      supervisor: null,
+      tradeDept: null,
+      deptId: null,
+      mainPerson: null,
+      mainPersonPhone: null,
+      headSecurity: null,
+      headSecurityPhone: null
+    }
+  },
+  //-------------------------------表单数据绑定方法---------------------------------------
+  get_businessName(e) {
+    this.data.form.businessName = e.detail.value
+  },
+  get_orgCode(e) {
+    this.data.form.orgCode = e.detail.value
+  },
+  get_officeAddress(e) {
+    this.data.form.officeAddress = e.detail.value
+  },
+  get_businessAddress(e) {
+    this.data.form.businessAddress = e.detail.value
+  },
+  get_supervisor(e) {
+    this.data.form.supervisor = e.detail.value
+  },
+  get_tradeDept(e) {
+    this.data.form.tradeDept = e.detail.value
+  },
+  get_mainPerson(e) {
+    this.data.form.mainPerson = e.detail.value
+  },
+  get_mainPersonPhone(e) {
+    this.data.form.mainPersonPhone = e.detail.value
+  },
+  get_headSecurity(e) {
+    this.data.form.headSecurity = e.detail.value
+  },
+  headSecurityPhone(e) {
+    this.data.form.headSecurityPhone = e.detail.value
+  },
+  //----------------------------------------------------------------------------
+
+
+
+
+  addEnterprise(e) {
+    let obj = new Object()
+    obj.latitude = this.data.form.latitude
+    obj.longitude = this.data.form.longitude
+    obj.businessName = this.data.form.businessName
+    obj.orgCode = this.data.form.orgCode
+    obj.officeAddress = this.data.form.officeAddress
+    obj.businessAddress = this.data.form.businessAddress
+    obj.supervisor = this.data.form.supervisor
+    obj.tradeDept = this.data.form.tradeDept
+    obj.mainPerson = this.data.form.mainPerson
+    obj.mainPersonPhone = this.data.form.mainPersonPhone
+    obj.headSecurity = this.data.form.headSecurity
+    obj.headSecurityPhone = this.data.form.headSecurityPhone
+
+    http.post("/system/AppEnterpriseController/addEnterprise", obj, this.addEnterpriseSuccess)
+  },
+  addEnterpriseSuccess(e) {
+    wx.showToast({
+      title: e.msg,
+      icon: "none" 
+    })
+    if(e.code == 200){
+      wx.navigateTo({
+        url: '../qiye/qiye',
+      })
+    }
+  },
+
+
+
+  getLocation() {
+    let that = this
+    wx.getLocation({
+      type: 'wgs84', //返回可以用于wx.openLocation的经纬度
+      success: function (res) {
+        that.setData({
+          form: {
+            longitude: res.longitude,
+            latitude: res.latitude
+          }
+        })
+      },
+    })
+  },
+
+  /**
+   * 生命周期函数--监听页面加载
+   */
+  onLoad(options) {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面初次渲染完成
+   */
+  onReady() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面显示
+   */
+  onShow() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面隐藏
+   */
+  onHide() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面卸载
+   */
+  onUnload() {
+
+  },
+
+  /**
+   * 页面相关事件处理函数--监听用户下拉动作
+   */
+  onPullDownRefresh() {
+
+  },
+
+  /**
+   * 页面上拉触底事件的处理函数
+   */
+  onReachBottom() {
+
+  },
+
+  /**
+   * 用户点击右上角分享
+   */
+  onShareAppMessage() {
+
+  }
+})

+ 8 - 0
pages/qiyemore/qiyemore.json

@@ -0,0 +1,8 @@
+{
+  "usingComponents": {},
+
+
+  "navigationBarBackgroundColor": "#f94b0e",
+  "navigationBarTextStyle": "white",
+  "navigationBarTitleText": "企业详情"
+}

+ 58 - 0
pages/qiyemore/qiyemore.wxml

@@ -0,0 +1,58 @@
+<!--pages/qiyemore/qiyemore.wxml-->
+<view class="container">
+  <view class="page-section">
+    <view class="input_vi">
+      <view class="input_title">经度</view>
+      <input bindtap="getLocation" value="{{form.longitude}}" disabled="true" class="inp_txt" auto-focus placeholder="点击获取当前" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">纬度</view>
+      <input bindtap="getLocation" value="{{form.latitude}}" disabled="true" class="inp_txt" placeholder="点击获取当前位置" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">企业名称</view>
+      <input bindinput="get_businessName" class="inp_txt" placeholder="请输入企业名称" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">机构代码</view>
+      <input bindinput="get_orgCode" class="inp_txt" placeholder="请输入机构代码证号" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">办公地址</view>
+      <input bindinput="get_officeAddress" class="inp_txt"  placeholder="请输入办公地址" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">经营地址</view>
+      <input bindinput="get_businessAddress" class="inp_txt" placeholder="请输入经营地址" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">监管人员</view>
+      <input bindinput="get_supervisor" class="inp_txt" placeholder="请输入监管人员姓名" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">主管部门</view>
+      <input bindinput="get_tradeDept" class="inp_txt" placeholder="请输入主管部门名称" />
+    </view>
+    <!-- <view class="input_vi">
+      <view class="input_title">所属部门</view>
+      <input class="inp_txt" placeholder="将会获取焦点" />
+    </view> -->
+    <view class="input_vi">
+      <view class="input_title">主要负责人</view>
+      <input bindinput="get_mainPerson" class="inp_txt" placeholder="请输入主要负责人姓名" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">负责人电话</view>
+      <input bindinput="get_mainPersonPhone" class="inp_txt" placeholder="请输入负责人电话" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">安全负责人</view>
+      <input bindinput="get_headSecurity" class="inp_txt" placeholder="请输入安全负责人电话" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">负责人电话</view>
+      <input bindinput="headSecurityPhone" class="inp_txt" placeholder="请输入负责人电话" />
+    </view>
+  </view>
+  <button type="primary" class="tj_btn" bindtap="addEnterprise">提交</button>
+</view>

+ 39 - 0
pages/qiyemore/qiyemore.wxss

@@ -0,0 +1,39 @@
+/* pages/qiyemore/qiyemore.wxss */
+.container{
+  padding: 30rpx 30rpx;
+}
+.page-section{
+  display: flex;
+  flex-direction: column;
+}
+.input_vi{
+  display: block;
+  border-bottom: 1px solid #f3f3f3;
+  height: 100rpx;
+}
+.input_vi .input_title{
+  font-size: 34rpx;
+  height: 100rpx;
+  line-height: 100rpx;
+  color: #181818;
+  float: left;
+}
+.input_vi input{
+  border:0px;
+  height: 100rpx;
+  line-height: 100rpx;
+ padding-left: 20rpx;
+ border-radius: 10rpx;
+ font-size: 34rpx;
+ color: #555;
+ text-align: right;
+}
+.input-placeholder, .input-placeholder-dark{
+ color: #c5c5c5!important;
+}
+.tj_btn{
+  width: 100%!important;
+  font-size: 32rpx;
+  margin: 60rpx auto;
+  padding: 24rpx 46rpx!important;
+}

+ 165 - 0
pages/qiyexqtable/qiyexqtable.js

@@ -0,0 +1,165 @@
+import http from '../../base/httputil'
+Page({
+
+  /**
+   * 页面的初始数据
+   */
+  data: {
+    busEnterpriseId: null,
+    enterpriseDetails: {
+      busEnterpriseId: null,
+      longitude: Number,
+      latitude: Number,
+      businessName: null,
+      orgCode: null,
+      officeAddress: null,
+      businessAddress: null,
+      supervisor: null,
+      tradeDept: null,
+      deptId: null,
+      mainPerson: null,
+      mainPersonPhone: null,
+      headSecurity: null,
+      headSecurityPhone: null
+    },
+
+
+  },
+
+  /**
+   * 生命周期函数--监听页面加载
+   */
+  onLoad(options) {
+    this.busEnterpriseId = options.busEnterpriseId
+    this.getEnterpriseDetails()
+  },
+
+  getEnterpriseDetails() {
+    let obj = new Object();
+    obj.busEnterpriseId = this.busEnterpriseId
+    http.post("/system/AppEnterpriseController/getEnterpriseDetails", obj, this.getEnterpriseDetailsSuccess)
+  },
+  getEnterpriseDetailsSuccess(res) {
+    this.setData({
+      enterpriseDetails: res.enterpriseDetails,
+    })
+  },
+  //-----------------------------------------
+  get_businessName(e) {
+    this.data.enterpriseDetails.businessName = e.detail.value
+  },
+  get_officeAddress(e) {
+    this.data.enterpriseDetails.officeAddress = e.detail.value
+  },
+  get_businessAddress(e) {
+    this.data.enterpriseDetails.businessAddress = e.detail.value
+  },
+  get_supervisor(e) {
+    this.data.enterpriseDetails.supervisor = e.detail.value
+  },
+  get_tradeDept(e) {
+    this.data.enterpriseDetails.tradeDept = e.detail.value
+  },
+  get_mainPerson(e) {
+    this.data.enterpriseDetails.mainPerson = e.detail.value
+  },
+  get_mainPersonPhone(e) {
+    this.data.enterpriseDetails.mainPersonPhone = e.detail.value
+  },
+  get_headSecurity(e) {
+    this.data.enterpriseDetails.headSecurity = e.detail.value
+  },
+  headSecurityPhone(e) {
+    this.data.enterpriseDetails.headSecurityPhone = e.detail.value
+  },
+
+  //------------------------------------------
+
+  updateEnterprise() {
+    let obj = new Object();
+    obj.busEnterpriseId = this.data.enterpriseDetails.busEnterpriseId
+    obj.businessName = this.data.enterpriseDetails.businessName
+    obj.officeAddress = this.data.enterpriseDetails.officeAddress
+    obj.businessAddress = this.data.enterpriseDetails.businessAddress
+    obj.supervisor = this.data.enterpriseDetails.supervisor
+    obj.tradeDept = this.data.enterpriseDetails.tradeDept
+    obj.mainPerson = this.data.enterpriseDetails.mainPerson
+    obj.mainPersonPhone = this.data.enterpriseDetails.mainPersonPhone
+    obj.headSecurity = this.data.enterpriseDetails.headSecurity
+    obj.headSecurityPhone = this.data.enterpriseDetails.headSecurityPhone
+    http.post("/system/AppEnterpriseController/updateEnterprise", obj, this.updateEnterpriseSuccess)
+  },
+  updateEnterpriseSuccess(res) {
+    wx.showToast({
+      title: res.msg,
+    })
+    if(res.code == 200){
+      wx.navigateTo({
+        url: '../details/details?busEnterpriseId=' + this.busEnterpriseId,
+      })
+    }
+  },
+  deleteEnterprise() {
+    let obj = new Object();
+    obj.busEnterpriseId = this.data.enterpriseDetails.busEnterpriseId
+    http.post("/system/AppEnterpriseController/deleteEnterprise", obj, this.deleteEnterpriseSuccess)
+  },
+  deleteEnterpriseSuccess(res) {
+    wx.showToast({
+      title: res.msg,
+    })
+    if(res.code == 200){
+      wx.navigateTo({
+        url: '../qiye/qiye'
+      })
+    }
+  },
+  /**
+   * 生命周期函数--监听页面初次渲染完成
+   */
+  onReady() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面显示
+   */
+  onShow() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面隐藏
+   */
+  onHide() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面卸载
+   */
+  onUnload() {
+
+  },
+
+  /**
+   * 页面相关事件处理函数--监听用户下拉动作
+   */
+  onPullDownRefresh() {
+
+  },
+
+  /**
+   * 页面上拉触底事件的处理函数
+   */
+  onReachBottom() {
+
+  },
+
+  /**
+   * 用户点击右上角分享
+   */
+  onShareAppMessage() {
+
+  }
+})

+ 8 - 0
pages/qiyexqtable/qiyexqtable.json

@@ -0,0 +1,8 @@
+{
+  "usingComponents": {},
+
+
+  "navigationBarBackgroundColor": "#f94b0e",
+  "navigationBarTextStyle": "white",
+  "navigationBarTitleText": "企业详情"
+}

+ 64 - 0
pages/qiyexqtable/qiyexqtable.wxml

@@ -0,0 +1,64 @@
+<!--pages/qiyexqtable/qiyexqtanle.wxml-->
+<view class="container">
+  <view class="page-section">
+    <view class="input_vi">
+      <view class="input_title">经度</view>
+      <input class="inp_txt" value="{{enterpriseDetails.longitude}}" disabled="true" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">纬度</view>
+      <input class="inp_txt" value="{{enterpriseDetails.latitude}}" disabled="true" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">企业名称</view>
+      <input class="inp_txt" bindinput="get_businessName" value="{{enterpriseDetails.businessName}}" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">机构代码</view>
+      <input class="inp_txt" value="{{enterpriseDetails.orgCode}}" disabled="true" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">办公地址</view>
+      <input class="inp_txt" bindinput="get_officeAddress" value="{{enterpriseDetails.officeAddress}}" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">经营地址</view>
+      <input class="inp_txt" bindinput="get_businessAddress" value="{{enterpriseDetails.businessAddress}}" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">监管人员</view>
+      <input class="inp_txt" bindinput="get_supervisor" value="{{enterpriseDetails.supervisor}}" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">主管部门</view>
+      <input class="inp_txt" bindinput="get_tradeDept" value="{{enterpriseDetails.tradeDept}}" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">所属部门</view>
+      <input class="inp_txt" value="{{enterpriseDetails.deptName}}" disabled="true" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">主要负责人</view>
+      <input class="inp_txt" bindinput="get_mainPerson" value="{{enterpriseDetails.mainPerson}}" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">负责人电话</view>
+      <input class="inp_txt" bindinput="get_mainPersonPhone" value="{{enterpriseDetails.mainPersonPhone}}" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">安全负责人</view>
+      <input class="inp_txt" bindinput="get_headSecurity" value="{{enterpriseDetails.headSecurity}}" />
+    </view>
+    <view class="input_vi">
+      <view class="input_title">负责人电话</view>
+      <input class="inp_txt" bindinput="headSecurityPhone" value="{{enterpriseDetails.headSecurityPhone}}" />
+    </view>
+  </view>
+
+  <view class="table_btn">
+    <button type="warn" class="sc_btn" bindtap="deleteEnterprise">删除</button>
+
+    <button type="primary" class="tj_btn" bindtap="updateEnterprise">提交</button>
+  </view>
+
+</view>

+ 50 - 0
pages/qiyexqtable/qiyexqtable.wxss

@@ -0,0 +1,50 @@
+/* pages/qiyexqtable/qiyexqtanle.wxss */
+.container{
+  padding: 30rpx 30rpx;
+}
+.page-section{
+  display: flex;
+  flex-direction: column;
+}
+.input_vi{
+  display: block;
+  border-bottom: 1px solid #f3f3f3;
+  height: 100rpx;
+  margin-bottom: 20rpx;
+}
+.input_vi .input_title{
+  font-size: 34rpx;
+  height: 100rpx;
+  line-height: 100rpx;
+  color: #181818;
+  float: left;
+}
+.input_vi input{
+  border:0px;
+  height: 100rpx;
+  line-height: 100rpx;
+ padding-left: 20rpx;
+ border-radius: 10rpx;
+ font-size: 34rpx;
+ color: #555;
+ text-align: right;
+}
+.input-placeholder, .input-placeholder-dark{
+ color: #c5c5c5!important;
+}
+.table_btn{
+  display: flex;
+  flex-direction: row;
+}
+.sc_btn{
+  width: 30%!important;
+  font-size: 32rpx;
+  margin: 60rpx auto;
+padding: 24rpx 0px!important;
+}
+.tj_btn{
+  width: 60%!important;
+  font-size: 32rpx;
+  margin: 60rpx auto;
+  padding: 24rpx 0px!important;
+}

+ 43 - 0
pages/search/search.js

@@ -0,0 +1,43 @@
+import http from '../../base/httputil'
+
+Page({
+  /**
+   * 组件的初始数据
+   */
+  data: {
+    enterpriseList: [],
+  },
+  onLoad() {
+    this.list(null)
+  },
+  // 搜索结果跳页
+  bindViewSearchEnd() {
+    wx.navigateTo({
+      url: '../search/search'
+    })
+  },
+  // 企业详细页
+  bindViewDetails(e) {
+    let busEnterpriseId = e.currentTarget.dataset.enterpriseid
+    wx.navigateTo({
+      url: '../details/details?busEnterpriseId='+busEnterpriseId
+    })
+  },
+
+  searchEnterprise(e) {
+    var obj = new Object()
+    obj.businessName = e.detail.value
+    this.list(obj)
+  },
+
+  list(data) {
+    http.post("/system/AppEnterpriseController/getInitEnterpriseList", data, this.getQiyeEnterpriseListSuccess)
+  },
+
+  getQiyeEnterpriseListSuccess(res) {
+    this.setData({
+      enterpriseList: res.rows
+    })
+  }
+
+})

+ 6 - 0
pages/search/search.json

@@ -0,0 +1,6 @@
+{
+  "usingComponents": {},
+  "navigationBarBackgroundColor": "#f94b0e",
+    "navigationBarTextStyle": "white",
+    "navigationBarTitleText": "搜索结果"
+}

+ 27 - 0
pages/search/search.wxml

@@ -0,0 +1,27 @@
+<view class="container">
+  <!-- 搜索 -->
+  <view class="search-container">
+    <view class="search-left">
+      <input type="text" bindinput="searchEnterprise" placeholder="搜索" />
+    </view>
+    <button bindtap="bindViewSearchEnd" class="search-right">
+      <text class="iconfont icon-sousuo"></text>
+    </button>
+  </view>
+
+  <!-- 列表 -->
+  <view class="list_vi">
+    <view class="list_li" bindtap="bindViewDetails" wx:for="{{enterpriseList}}" wx:key="index"
+     data-enterpriseid="{{item.busEnterpriseId}}">
+      <i class="list_icon iconfont icon-queding" wx:if="{{item.riskCount == 0}}"></i>
+      <i class="list_icon iconfont icon-yingjipingtai" wx:if="{{item.riskCount > 0}}"></i>
+      <text>{{item.businessName}}</text>
+      <i class="iconfont icon-xiangyou list_right"></i>
+    </view>
+
+  </view>
+
+
+
+
+</view>

+ 1 - 0
pages/search/search.wxss

@@ -0,0 +1 @@
+/* pages/search/search.wxss */

+ 66 - 0
pages/xqzggzs/xqzggzs.js

@@ -0,0 +1,66 @@
+// pages/xqzggzs/xqzggzs.js
+Page({
+
+  /**
+   * 页面的初始数据
+   */
+  data: {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面加载
+   */
+  onLoad(options) {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面初次渲染完成
+   */
+  onReady() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面显示
+   */
+  onShow() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面隐藏
+   */
+  onHide() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面卸载
+   */
+  onUnload() {
+
+  },
+
+  /**
+   * 页面相关事件处理函数--监听用户下拉动作
+   */
+  onPullDownRefresh() {
+
+  },
+
+  /**
+   * 页面上拉触底事件的处理函数
+   */
+  onReachBottom() {
+
+  },
+
+  /**
+   * 用户点击右上角分享
+   */
+  onShareAppMessage() {
+
+  }
+})

+ 9 - 0
pages/xqzggzs/xqzggzs.json

@@ -0,0 +1,9 @@
+{
+  "usingComponents": {},
+
+
+
+  "navigationBarBackgroundColor": "#f94b0e",
+  "navigationBarTextStyle": "white",
+  "navigationBarTitleText": "限期整改告知书"
+}

+ 18 - 0
pages/xqzggzs/xqzggzs.wxml

@@ -0,0 +1,18 @@
+<!--pages/xqzggzs/xqzggzs.wxml-->
+<view class="container">
+  <view class="zg_bh"><text>编号:</text><input type="number" style="width: 400rpx;"/></view>
+  <text class="con_tit mar_top">复查意见告知书</text>
+  <view class="flex_row text_ind mar_top2">本机关于 <input type="text" style="width: 250rpx;" />,对你单位做出了隐患限期整改告知书(编号:<input type="number"  style="width: 250rpx;"/>),经对你单位整改情况进行复查,提出如下意见:</view>
+    <textarea ></textarea>
+    <view class="flex_row text_ind">现告知你单位对上述问题于 <input type="text" style="width: 100rpx;" />前整改完毕,达到有关法律法规规章和标准规定的要求。由此造成应当采取措施,确保安全生产。</view>
+    <view class="flex_row text_ind">逾期未整改或在整改过程中存在安全生产违法行为的,我单位将提报相关执法部门进行依法查处。</view>
+<view class="flex_row text_ind">如果对本告知内容有异议,可向<input type="text" style="width: 150rpx;"/>咨询或说明情况,也可通过12350安全生产举报电话进行反映。在没有新书面告知前,本告知要求不停止执行,法律另有规定的除外。</view>
+
+<view class="flex_row mar_top">被复查单位负责人(签名):<input type="text" style="width: 220rpx;"/></view>
+<view class="flex_row mar_top2">检查人员:<input type="text" style="width: 190rpx;"/><text>编号:</text><input type="text" style="width: 190rpx;"/></view>
+<view class="flex_row mar_top2"><text style="opacity: 0;">检查人员:</text><input type="text" style="width: 190rpx;"/>编号:<input type="text" style="width: 190rpx;"/></view>
+<view class="flex_row mar_top2" style="text-align: right;"><input type="text" style="width: 370rpx;"/>部门(印章)</view>
+<view class="flex_row mar_top2" style="text-align: right;"><input type="number" style="width: 100rpx;"/>年<input type="number" style="width: 100rpx;"/>月<input type="number" style="width: 100rpx;"/>日</view>
+
+<button type="primary">提交</button>
+</view>

+ 52 - 0
pages/xqzggzs/xqzggzs.wxss

@@ -0,0 +1,52 @@
+/* pages/xqzggzs/xqzggzs.wxss */
+.container{
+  margin: 30rpx;
+}
+.zg_bh{
+  display: flex;
+  flex-direction: row;
+  color: #666;
+}
+input{
+  border-bottom: 1px solid rgb(238, 238, 238);
+  height: 50rpx;
+  line-height: 50rpx;
+}
+.con_tit{
+  text-align: center;
+  height: 100rpx;
+  line-height: 100rpx;
+  font-size: 44rpx;
+  display: block;
+}
+.flex_row{
+  margin-bottom: 20rpx;
+  line-height: 70rpx;
+  font-size: 34rpx;
+  color: #333;
+}
+.flex_row input{
+display: inline-table;
+padding: 0px 10rpx;
+text-align: center;
+}
+.text_ind{
+  text-indent:60rpx;
+}
+textarea{
+  border: 1px solid rgb(238, 238, 238);
+  outline: 0px;
+  padding: 1%;
+  width: 98%;
+  margin-bottom: 20rpx;
+}
+.mar_top{
+  margin-top: 60rpx;
+}
+.mar_top2{
+  margin-top: 30rpx;
+}
+button{
+  width: 70%!important;
+  margin: 50rpx auto;
+}

+ 66 - 0
pages/xqzggzs2/xqzggzs2.js

@@ -0,0 +1,66 @@
+// pages/xqzggzs2/xqzggzs2.js
+Page({
+
+  /**
+   * 页面的初始数据
+   */
+  data: {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面加载
+   */
+  onLoad(options) {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面初次渲染完成
+   */
+  onReady() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面显示
+   */
+  onShow() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面隐藏
+   */
+  onHide() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面卸载
+   */
+  onUnload() {
+
+  },
+
+  /**
+   * 页面相关事件处理函数--监听用户下拉动作
+   */
+  onPullDownRefresh() {
+
+  },
+
+  /**
+   * 页面上拉触底事件的处理函数
+   */
+  onReachBottom() {
+
+  },
+
+  /**
+   * 用户点击右上角分享
+   */
+  onShareAppMessage() {
+
+  }
+})

+ 9 - 0
pages/xqzggzs2/xqzggzs2.json

@@ -0,0 +1,9 @@
+{
+  "usingComponents": {},
+
+
+
+  "navigationBarBackgroundColor": "#f94b0e",
+  "navigationBarTextStyle": "white",
+  "navigationBarTitleText": "限期整改告知书"
+}

+ 21 - 0
pages/xqzggzs2/xqzggzs2.wxml

@@ -0,0 +1,21 @@
+<!--pages/xqzggzs2/xqzggzs2.wxml-->
+<view class="container">
+  <view class="zg_bh"><text>编号:</text><input type="number" style="width: 400rpx;"/></view>
+  <text class="con_tit mar_top">隐患限期整改告知书</text>
+  <view class="flex_row text_ind mar_top2">经查,你单位存在下列问题: </view>
+    <textarea >
+    1、
+    </textarea>
+    <view class="flex_row text_ind">现告知你单位对上述问题于 <input type="text" style="width: 100rpx;" />前整改完毕,达到有关法律法规规章和标准规定的要求。由此造成事故的,依法追究有关人员的责任。整改期间,你单位应当采取措施,确保安全生产。</view>
+    <view class="flex_row text_ind">逾期未整改或在整改过程中存在安全生产违法行为的,我单位将提报相关执法部门进行依法查处。</view>
+<view class="flex_row text_ind">如果对本告知内容有异议,可向<input type="text" style="width: 150rpx;"/>咨询或说明情况,也可通过12350安全生产举报电话进行反映。在没有新书面告知前,本告知要求不停止执行,法律另有规定的除外。</view>
+
+
+<view class="flex_row mar_top">检查人员:<input type="text" style="width: 190rpx;"/><text>编号:</text><input type="text" style="width: 190rpx;"/></view>
+<view class="flex_row mar_top2"><text style="opacity: 0;">检查人员:</text><input type="text" style="width: 190rpx;"/>编号:<input type="text" style="width: 190rpx;"/></view>
+<view class="flex_row mar_top2">被复查单位负责人(签名):<input type="text" style="width: 220rpx;"/></view>
+<view class="flex_row mar_top2" style="text-align: right;"><input type="text" style="width: 370rpx;"/>部门(印章)</view>
+<view class="flex_row mar_top2" style="text-align: right;"><input type="number" style="width: 100rpx;"/>年<input type="number" style="width: 100rpx;"/>月<input type="number" style="width: 100rpx;"/>日</view>
+
+<button type="primary">提交</button>
+</view>

+ 52 - 0
pages/xqzggzs2/xqzggzs2.wxss

@@ -0,0 +1,52 @@
+/* pages/xqzggzs2/xqzggzs2.wxss */
+.container{
+  margin: 30rpx;
+}
+.zg_bh{
+  display: flex;
+  flex-direction: row;
+  color: #666;
+}
+input{
+  border-bottom: 1px solid rgb(238, 238, 238);
+  height: 50rpx;
+  line-height: 50rpx;
+}
+.con_tit{
+  text-align: center;
+  height: 100rpx;
+  line-height: 100rpx;
+  font-size: 44rpx;
+  display: block;
+}
+.flex_row{
+  margin-bottom: 20rpx;
+  line-height: 70rpx;
+  font-size: 34rpx;
+  color: #333;
+}
+.flex_row input{
+display: inline-table;
+padding: 0px 10rpx;
+text-align: center;
+}
+.text_ind{
+  text-indent:60rpx;
+}
+textarea{
+  border: 1px solid rgb(238, 238, 238);
+  outline: 0px;
+  padding: 1%;
+  width: 98%;
+  margin-bottom: 20rpx;
+}
+.mar_top{
+  margin-top: 60rpx;
+}
+.mar_top2{
+  margin-top: 30rpx;
+}
+button{
+  width: 70%!important;
+  margin: 50rpx auto;
+}

+ 66 - 0
pages/xqzggzs2/xqzgzs2.js

@@ -0,0 +1,66 @@
+// pages/xqzggzs2/xqzgzs2.js
+Page({
+
+  /**
+   * 页面的初始数据
+   */
+  data: {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面加载
+   */
+  onLoad(options) {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面初次渲染完成
+   */
+  onReady() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面显示
+   */
+  onShow() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面隐藏
+   */
+  onHide() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面卸载
+   */
+  onUnload() {
+
+  },
+
+  /**
+   * 页面相关事件处理函数--监听用户下拉动作
+   */
+  onPullDownRefresh() {
+
+  },
+
+  /**
+   * 页面上拉触底事件的处理函数
+   */
+  onReachBottom() {
+
+  },
+
+  /**
+   * 用户点击右上角分享
+   */
+  onShareAppMessage() {
+
+  }
+})

+ 3 - 0
pages/xqzggzs2/xqzgzs2.json

@@ -0,0 +1,3 @@
+{
+  "usingComponents": {}
+}

+ 2 - 0
pages/xqzggzs2/xqzgzs2.wxml

@@ -0,0 +1,2 @@
+<!--pages/xqzggzs2/xqzgzs2.wxml-->
+<text>pages/xqzggzs2/xqzgzs2.wxml</text>

+ 1 - 0
pages/xqzggzs2/xqzgzs2.wxss

@@ -0,0 +1 @@
+/* pages/xqzggzs2/xqzgzs2.wxss */

+ 90 - 0
pages/xuncha/xuncha.js

@@ -0,0 +1,90 @@
+import http from '../../base/httputil'
+
+Page({
+  /**
+   * 组件的初始数据
+   */
+  data: {
+
+    todayXunchaCount: 0,
+    todayRiskCount: 0,
+    todayEnterpriseCount: 0,
+
+    xunchaList: null,
+
+
+    menulist: [{
+        "id": "1",
+        "url": "icon-anquanxuncha",
+        "title": "巡查",
+      },
+      {
+        "id": "2",
+        "url": "icon-xunjian",
+        "title": "巡检",
+      },
+    ],
+    mainmodel: {
+
+    }
+  },
+
+  onLoad() {
+    this.getXunchaCount()
+    this.getXunchaList()
+  },
+
+  getXunchaCount() {
+    http.post("/system/AppXunchaController/getXunchaCount", null, this.getXunchaCountSuccess)
+  },
+  getXunchaCountSuccess(res) {
+    this.setData({
+      todayXunchaCount: res.xunchaCount.todayXunchaCount,
+      todayRiskCount: res.xunchaCount.todayRiskCount,
+      todayEnterpriseCount: res.xunchaCount.todayEnterpriseCount
+    })
+  },
+  getXunchaList() {
+    http.post("/system/AppXunchaController/getXunchaList", null, this.getXunchaListSuccess)
+  },
+  getXunchaListSuccess(res) {
+    this.setData({
+      xunchaList: res.rows
+    })
+  },
+
+
+
+  // 搜索结果跳页
+  bindViewSearchEnd() {
+    wx.navigateTo({
+      url: '../xunchawu/xunchawu'
+    })
+  },
+  toBindXunjinaMore(e){
+    let isrisk = e.currentTarget.dataset.isrisk
+    let buslogid = e.currentTarget.dataset.buslogid
+    if(isrisk == 0){
+      wx.showToast({
+        title: '没有发现安全隐患,请放心!!',
+        icon: "none" 
+      })
+    }
+    console.log(isrisk,"####",buslogid)
+  },
+
+  menuItemClick: function (res) {
+    //获取点击事件的信息
+    let clickInfo = res.detail.iteminfo
+    if(clickInfo.id ==2){
+      //巡检
+      wx.navigateTo({
+        url: '../search/search',
+      })
+
+    }
+    // 根据不同类型进行判别处理
+    //事件的处理 代码
+  }
+
+})

+ 12 - 0
pages/xuncha/xuncha.json

@@ -0,0 +1,12 @@
+{
+  "component": true, 
+  "usingComponents": {
+    "menu": "/pages/menu/menu"
+  },
+
+
+
+  "navigationBarBackgroundColor": "#f94b0e",
+  "navigationBarTextStyle": "white",
+  "navigationBarTitleText": "巡查"
+}

+ 0 - 0
pages/xuncha/xuncha.wxml


Vissa filer visades inte eftersom för många filer har ändrats