From 51600113c20d84ee54660de23324400604704dc2 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期三, 10 八月 2022 14:26:46 +0800
Subject: [PATCH] 台账、承诺书模块

---
 pages/promise/promise.js                           |   15 ++
 pages/module_ledger/ledgerupload/ledgerupload.wxml |   14 ++
 pages/module_ledger/ledgerupload/ledgerupload.wxss |   15 +++
 service/ledgerservice.js                           |   59 ++++-------
 res/icons/tab_5_select.png                         |    0 
 service/promiseservice.js                          |    2 
 app.json                                           |    4 
 pages/module_ledger/ledgerhome/ledgerhome.js       |   24 +++-
 service/baserequest.js                             |    2 
 pages/promisefile/promisefile.wxml                 |    6 
 pages/module_ledger/ledgerupload/ledgerupload.js   |   62 +++++++++++-
 pages/promisefile/promisefile.wxss                 |   21 ++-
 pages/promiseresult/promiseresult.js               |    9 +
 res/icons/tab_5.png                                |    0 
 pages/module_ledger/ledgerhome/ledgerhome.wxss     |   22 ++++
 pages/promisefile/promisefile.js                   |   16 +--
 pages/module_ledger/ledgerhome/ledgerhome.wxml     |    6 
 17 files changed, 194 insertions(+), 83 deletions(-)

diff --git a/app.json b/app.json
index 1cb7bf1..5dabcce 100644
--- a/app.json
+++ b/app.json
@@ -47,8 +47,8 @@
       {
         "pagePath": "pages/module_ledger/ledgerhome/ledgerhome",
         "text": "鍙拌处绠$悊",
-        "iconPath": "/res/icons/tab_2.png",
-        "selectedIconPath": "res/icons/tab_2_select.png"
+        "iconPath": "/res/icons/tab_5.png",
+        "selectedIconPath": "res/icons/tab_5_select.png"
       },
       {
         "pagePath": "pages/promise/promise",
diff --git a/pages/module_ledger/ledgerhome/ledgerhome.js b/pages/module_ledger/ledgerhome/ledgerhome.js
index bda114e..2cf573e 100644
--- a/pages/module_ledger/ledgerhome/ledgerhome.js
+++ b/pages/module_ledger/ledgerhome/ledgerhome.js
@@ -10,6 +10,7 @@
    */
   data: {
     deadline: '',
+    leftday:0 ,
 
     currentTab: 0,
     tabList: [],
@@ -18,11 +19,21 @@
     pageheight: '300px'
   },
 
+  //姣忔湀鍙拌处鎻愪氦鏈熼檺鏃�
+  DEADLINEDAY: 10,
+
   /**
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍔犺浇
    */
   onLoad(options) {
     this.getLedgerType()
+
+    var deadline = moment().format(`MM-${this.DEADLINEDAY}`)
+    var leftday = this.DEADLINEDAY + 1 - moment().date()
+    this.setData({
+      deadline: deadline,
+      leftday: leftday
+    })
   },
 
   /**
@@ -41,7 +52,8 @@
 
   getLedgerType () {
     var that = this
-    ledgerservice.getLedgerType(app.globalData.userInfo.extension2, {
+    var time = moment().format('YYYY-MM-DD')
+    ledgerservice.getLedgerSummary(app.globalData.accessToken.userId, app.globalData.userInfo.extension2, time, {
       success (res) {
         // console.log(res);
         let r = that.parseLedgerType(res)
@@ -58,16 +70,12 @@
     subtypes.forEach(s => {
       if (s.upLoad) {
         s.tag = '/res/icons/round_check_fill.png'
-        s.color = '#4CAF50'
       } else if (s.ledgerFinished) {
         s.tag = '/res/icons/warning_yellow.png'
-        s.color = '#FFEB3B'
       } else if (!s.needUpdate) {
         s.tag = '/res/icons/round_check_fill.png'
-        s.color = '#4CAF50'
       } else {
         s.tag = '/res/icons/warning_red.png'
-        s.color = 'red'
       }
       if (!map.has(s.ledgerType)) {
         map.set(s.ledgerType, [])
@@ -97,9 +105,11 @@
       events: {
         uploadOver: function (data) {
           let i = data.indexGroup
-          let path = `pageList[${i[0]}][${i[1]}].upLoad`
+          let pageList = that.data.pageList
+          pageList[i[0]][i[1]].upLoad = true
+          pageList[i[0]][i[1]].tag = '/res/icons/round_check_fill.png'
           that.setData({
-            [path]: true            
+            pageList
           })
         }
       },
diff --git a/pages/module_ledger/ledgerhome/ledgerhome.wxml b/pages/module_ledger/ledgerhome/ledgerhome.wxml
index 300efde..c502f1a 100644
--- a/pages/module_ledger/ledgerhome/ledgerhome.wxml
+++ b/pages/module_ledger/ledgerhome/ledgerhome.wxml
@@ -2,8 +2,10 @@
 <view class="page">
   <view class="banner-bg"></view>
   <view class="page__hd">
-    <view>鏈湀鍙拌处鎻愪氦鏃ワ細{{deadline}}</view>
-    <view>鍓╀綑{{leftday}}澶�</view>
+    <view class="head_1">鏈湀鍙拌处鎻愪氦鏃ワ細{{deadline}}</view>
+    <view wx:if="{{leftday > 0}}" class="head_2">鍓╀綑<text>{{leftday}}</text>澶�</view>
+    <view wx:else class="head_2">宸查�炬湡锛岃灏藉揩鎻愪氦</view>
+    <view class="head_3">鍑嗘椂浜ゅ彴璐︼紝缁存姢濂戒俊鐢�</view>
   </view>
   <view class="page__bd">
     <view class="swiper-tab">
diff --git a/pages/module_ledger/ledgerhome/ledgerhome.wxss b/pages/module_ledger/ledgerhome/ledgerhome.wxss
index 3ce89f1..b38016c 100644
--- a/pages/module_ledger/ledgerhome/ledgerhome.wxss
+++ b/pages/module_ledger/ledgerhome/ledgerhome.wxss
@@ -8,6 +8,28 @@
 
 .page__hd {
   height: 30vh;
+  text-align: center;
+  display: flex;
+  flex-flow: column;
+  justify-content: space-between;
+  color: #50854C;
+}
+
+.head_1 {
+  font-size: 12px;
+}
+
+.head_2 {
+  font-weight: 600;
+}
+
+.head_2>text {
+  font-size: 40px;
+}
+
+.head_3 {
+  font-size: 12px;
+  margin-bottom: 16px;
 }
 
 .page__bd {
diff --git a/pages/module_ledger/ledgerupload/ledgerupload.js b/pages/module_ledger/ledgerupload/ledgerupload.js
index 6061abe..08bf20f 100644
--- a/pages/module_ledger/ledgerupload/ledgerupload.js
+++ b/pages/module_ledger/ledgerupload/ledgerupload.js
@@ -1,5 +1,7 @@
 // pages/module_ledger/ledgerupload/ledgerupload.js
 const ledgerservice = require("../../../service/ledgerservice")
+const moment = require('../../../utils/moment.min')
+const $f = require('../../../service/baserequest')
 const app = getApp()
 
 Page({
@@ -8,7 +10,10 @@
    * 椤甸潰鐨勫垵濮嬫暟鎹�
    */
   data: {
-    imgFiles: []
+    imgFiles: [],
+
+    remark: '',
+    remarkDisable: false
   },
 
   /**
@@ -21,6 +26,8 @@
         ledger: data.ledger,
         indexGroup: data.indexGroup
       })
+
+      that.checkStatus()
     })
   },
 
@@ -29,6 +36,31 @@
    */
   onReady() {
 
+  },
+
+  checkStatus() {
+    if (this.data.ledger.upLoad) {
+      var that = this
+      var userId = app.globalData.accessToken.userId
+      var typeId = this.data.ledger.ledgerSubTypeId
+      var sceneType = app.globalData.userInfo.extension2
+      var time = moment().format('YYYY-MM-DD')
+      ledgerservice.getLedgerDetail(userId, typeId, sceneType, time, {
+        success (res) {
+          if (res.length > 0) {
+            let detail = res[0]
+            if (detail.upLoad) {
+              let imgFiles = detail.path1.split(';').map((value, index) => {
+                return $f.basePicUrl + value
+              })
+              let remark = detail.remark1 == null ? '' : detail.remark1
+              let remarkDisable = true
+              that.setData({imgFiles, remark, remarkDisable})
+            }
+          }
+        }
+      })
+    }
   },
 
   uploadFile(file) {
@@ -56,11 +88,13 @@
   },
 
   submitLedger() {
+    var that = this
+
     this.setData({
       showDialog: false,
     })
     wx.showLoading({
-      title: '涓婁紶涓�',
+      title: '鎻愪氦涓�',
       mask: true,
       success: (res) => {},
       fail: (res) => {},
@@ -73,12 +107,30 @@
     this.data.imgFiles.forEach(f => {
       path.push(f.url)
     });
-    ledgerservice.uploadLedger(app.globalData.accessToken.userId, this.data.ledger, path, {
+    let ledger = this.data.ledger
+    ledger.remark1 = this.data.remark
+    ledgerservice.uploadLedger(app.globalData.accessToken.userId, ledger, path, {
       success (res) {
-
+        wx.hideLoading({
+          success: (res) => {
+            wx.showToast({
+              title: '鎻愪氦鎴愬姛',
+              duration: 1000,
+              icon: 'success',
+              mask: true,
+              success: (res) => {
+                that.getOpenerEventChannel().emit('uploadOver', {
+                  indexGroup: that.data.indexGroup
+                })
+                wx.navigateBack({
+                  delta: 1,
+                })
+              },
+            })
+          },
+        })
       },
       complete (res) {
-        wx.hideLoading()
       }
     })
   }
diff --git a/pages/module_ledger/ledgerupload/ledgerupload.wxml b/pages/module_ledger/ledgerupload/ledgerupload.wxml
index 70852ab..d11297b 100644
--- a/pages/module_ledger/ledgerupload/ledgerupload.wxml
+++ b/pages/module_ledger/ledgerupload/ledgerupload.wxml
@@ -4,13 +4,19 @@
     {{ledger.ledgerName}}
   </view>
   <view class="page__bd">
-  <textarea class="text-area" name="des" cols="30" rows="10" placeholder="鍙�夊垯杈撳叆鍙拌处澶囨敞"></textarea>
-    <view class="weui-upload-view">
-      <mp-upload title="涓婁紶鍙拌处鍥剧墖" titleClass="upload-title-class" max-count="6" files="{{imgFiles}}" binduploadImg="uploadFile" binddelete="delImg"></mp-upload>
+    <textarea disabled="{{remarkDisable}}" value="{{remark}}" class="text-area" name="des" cols="30" rows="10" placeholder="鍙�夊垯杈撳叆鍙拌处澶囨敞"></textarea>
+    <view wx:if="{{!ledger.upLoad}}" class="weui-upload-view">
+      <mp-upload title="涓婁紶鍙拌处鍥剧墖" titleClass="upload-title-class" max-count="6" files="{{imgFiles}}"
+        binduploadImg="uploadFile" binddelete="delImg"></mp-upload>
+    </view>
+    <view wx:else class="img-group">
+      <view wx:for="{{imgFiles}}" >
+        <image class="img-group_img" src="{{item}}"></image>
+      </view>
     </view>
   </view>
   <view class="page__ft">
-    <view class="submit" bindtap="onSubmit">鎻愪氦</view>
+    <view wx:if="{{!ledger.upLoad}}" class="submit" bindtap="onSubmit">鎻愪氦</view>
   </view>
 
   <c-dialog show="{{showDialog}}" yes="纭" bindconfirm="submitLedger">
diff --git a/pages/module_ledger/ledgerupload/ledgerupload.wxss b/pages/module_ledger/ledgerupload/ledgerupload.wxss
index ecf2e30..f74dc50 100644
--- a/pages/module_ledger/ledgerupload/ledgerupload.wxss
+++ b/pages/module_ledger/ledgerupload/ledgerupload.wxss
@@ -18,4 +18,19 @@
 .text-area {
   background-color: rgba(255, 255, 255, 0.185);
   width: 100%;
+}
+
+.img-group {
+  display: flex;
+  flex-wrap: wrap;
+}
+
+.img-group>view {
+  width: 30vw;
+  text-align: center;
+}
+
+.img-group .img-group_img {
+  width: 29vw;
+  height: 29vw;
 }
\ No newline at end of file
diff --git a/pages/promise/promise.js b/pages/promise/promise.js
index 3563360..39c70af 100644
--- a/pages/promise/promise.js
+++ b/pages/promise/promise.js
@@ -29,14 +29,14 @@
    */
   onLoad: function (options) {
     this._initPlanYear()
-    this.getCommitment()
+
   },
 
   /**
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鏄剧ず
    */
   onShow: function () {
-
+    this.getCommitment()
   },
 
   /**
@@ -68,6 +68,13 @@
           status: 1,
           deadline: `涓嬫鎵胯鏃堕棿锛�${deadline}`
         })
+      } else {
+        this.setData({
+          text1: "宸插紑鍚�!璇峰強鏃跺畬鎴愭壙璇�",
+          text3: "鍘绘壙璇�",
+          status: 0,
+        })
+        this._initPlanYear()
       }
     }
   },
@@ -107,7 +114,7 @@
     if (status == 0) {
       wx.navigateTo({
         url: '/pages/promiseinfo/promiseinfo'
-      }) 
+      })
     } else {
       this.gotoResult(0)
     }
@@ -121,7 +128,7 @@
     this.gotoResult(i)
   },
 
-  gotoResult (i) {
+  gotoResult(i) {
     var p = this.data.promise[i]
     wx.navigateTo({
       url: '/pages/promiseresult/promiseresult',
diff --git a/pages/promisefile/promisefile.js b/pages/promisefile/promisefile.js
index 8b8a565..a46f424 100644
--- a/pages/promisefile/promisefile.js
+++ b/pages/promisefile/promisefile.js
@@ -88,18 +88,19 @@
       fail: (res) => {},
       complete: (res) => {},
     })
-    setTimeout(() => {
-      wx.hideLoading()
-    }, 20000);
+    // setTimeout(() => {
+    //   wx.hideLoading()
+    // }, 20000);
 
     let signPic = this.data.imgFiles[0]
 
     promiseservice.createCommitment(app.globalData.accessToken.userId, this.commitmentVo, signPic, {
       success(data) {
-        if (data.data.success) {
+        if (data.success) {
           wx.navigateTo({
             url: '/pages/promiseresult/promiseresult',
             success: function (res) {
+              console.log(res);
               // 閫氳繃 eventChannel 鍚戣鎵撳紑椤甸潰浼犻�佹暟鎹�
               res.eventChannel.emit('acceptDataFromOpenerPage', {
                 promise: {
@@ -116,13 +117,6 @@
       complete(res) {
         console.log(res);
         wx.hideLoading({
-          success: (res) => {
-            wx.showToast({
-              title: '鐢熸垚瀹屾垚',
-              duration: 1500,
-              icon: 'success',
-            })
-          },
         })
       }
     })
diff --git a/pages/promisefile/promisefile.wxml b/pages/promisefile/promisefile.wxml
index 42a24e1..169cd4c 100644
--- a/pages/promisefile/promisefile.wxml
+++ b/pages/promisefile/promisefile.wxml
@@ -19,9 +19,11 @@
           <text class="p-sign">娉曚汉绛惧悕锛堝繀濉級</text>
           <view class="weui-upload-view">
             <!-- <mp-upload data-type="0" max-count="1" files="{{imgFiles[0]}}" binduploadImg="uploadFile" binddelete="delImg"></mp-upload> -->
-            <view wx:if="{{imgFiles.length == 0}}" class="" >
+            <view wx:if="{{imgFiles.length == 0}}" class="">
               <view class="top-right" bindtap="startSign">
-                <mp-icon bindtap="startSign" class="" type="field" icon="add" color="gray" size="{{25}}"></mp-icon>
+                <view class="sign-btn">
+                  <mp-icon bindtap="startSign" type="field" icon="add" color="gray" size="{{60}}"></mp-icon>
+                </view>
               </view>
             </view>
             <image wx:else class="sign-img" src="{{imgFiles[0]}}" mode="aspectFill" />
diff --git a/pages/promisefile/promisefile.wxss b/pages/promisefile/promisefile.wxss
index 4f91d96..649c84a 100644
--- a/pages/promisefile/promisefile.wxss
+++ b/pages/promisefile/promisefile.wxss
@@ -2,6 +2,7 @@
 .page__bd {
   font-size: 14px;
 }
+
 .banner-bg {
   position: fixed;
   width: 100%;
@@ -23,7 +24,7 @@
   font-weight: 600;
 }
 
-.p-content{
+.p-content {
   font-size: 14px;
 }
 
@@ -40,14 +41,20 @@
   padding: 8px;
 }
 
+.sign-btn {
+  width: 96px;
+  height: 96px;
+  text-align: center;
+}
+
 .sign-img {
   float: left;
-   margin-right: 8px;
-   margin-bottom: 8px;
-   width: 96px;
-   height: 96px;
-   background: no-repeat 50%;
-   background-size: cover
+  margin-right: 8px;
+  margin-bottom: 8px;
+  width: 96px;
+  height: 96px;
+  background: no-repeat 50%;
+  background-size: cover
 }
 
 .top-right {
diff --git a/pages/promiseresult/promiseresult.js b/pages/promiseresult/promiseresult.js
index e6786d7..786fa3b 100644
--- a/pages/promiseresult/promiseresult.js
+++ b/pages/promiseresult/promiseresult.js
@@ -53,7 +53,14 @@
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍗歌浇
    */
   onUnload: function () {
-
+    var pages = getCurrentPages()
+    var d = pages.length - 1
+    wx.navigateBack({
+      delta: d,
+      success: (res) => {},
+      fail: (res) => {},
+      complete: (res) => {},
+    })
   },
 
   /**
diff --git a/res/icons/tab_5.png b/res/icons/tab_5.png
new file mode 100644
index 0000000..a745ffc
--- /dev/null
+++ b/res/icons/tab_5.png
Binary files differ
diff --git a/res/icons/tab_5_select.png b/res/icons/tab_5_select.png
new file mode 100644
index 0000000..5b81a88
--- /dev/null
+++ b/res/icons/tab_5_select.png
Binary files differ
diff --git a/service/baserequest.js b/service/baserequest.js
index 0ca0574..b924990 100644
--- a/service/baserequest.js
+++ b/service/baserequest.js
@@ -11,7 +11,7 @@
 
 const originProperties = ['url', 'data', 'header', 'method', 'success', 'fail', 'complete'];
 // const baseUrl = "http://127.0.0.1:8080"
-const baseUrl = "http://192.168.1.106:8080"
+const baseUrl = "http://192.168.0.117:8080"
 // const baseUrl = "https://fyami.com.cn:447"
 // const basePicUrl = baseUrl + "/images/"
 const basePicUrl = "https://fyami.com.cn:447/images/"
diff --git a/service/ledgerservice.js b/service/ledgerservice.js
index 8dea44d..808b086 100644
--- a/service/ledgerservice.js
+++ b/service/ledgerservice.js
@@ -4,11 +4,12 @@
 
 module.exports = {
   //鑾峰彇鍙拌处绫诲瀷
-  getLedgerType: function (sceneType, fun) {
+  getLedgerSummary: function (userId, sceneType, time, fun) {
     let cb = {
-      url: `/ledger/type`,
+      url: `/ledger/${userId}/summary`,
       params: {
         sceneType: sceneType,
+        time: time
       },
     }
     Object.assign(cb, fun)
@@ -24,38 +25,6 @@
   },
 
   //涓婁紶鍙拌处
-  // uploadLedger: function (userId, ledger, files, fun) {
-  //   let formData = new FormData();
-
-  //   // 鐢ㄦ硶
-  //   // formData.append("name", "value");      // value 琛ㄥ崟鍊�
-  //   // formData.appendFile("file", filepath); // filepath 鏂囦欢璺緞
-
-  //   // formData.append("params", JSON.stringify([ledger]))
-  //   files.forEach(f => {
-  //     formData.appendFile("images", f);
-  //   });
-
-  //   // formData.getData() => { 
-  //   //   buffer:<ArrayBuffer>[], // buffer	琛ㄥ崟鏁版嵁鐨凙rrayBuffer瀵硅薄 
-  //   //   contentType: string,    // http璇锋眰Content-Type澶撮儴鍐呭
-  //   // } 
-  //   const data = formData.getData();
-
-  //   let cb = {
-  //     url: `/ledger/${userId}/upload`,
-  //     params: {
-  //       params: JSON.stringify([ledger]),
-  //     },
-  //     header: {
-  //       'content-type': data.contentType
-  //     },
-  //     data: data.buffer,
-  //   }
-
-  //   Object.assign(cb, fun)
-  //   $f.post(cb)
-  // }
   uploadLedger: function (userId, ledger, paths, fun) {
     const fields = [{
       name: 'params',
@@ -69,9 +38,27 @@
       })
     });
     console.log(files);
-    new Multipart({
+    let p = new Multipart({
       fields,
       files
     }).submit($f.baseUrl + `/ledger/${userId}/upload`)
-  }
+    p.then(res => {
+      fun.success(res)
+    })
+  },
+
+  //鑾峰彇鍙拌处璇︽儏
+  getLedgerDetail: function (userId, ledgerSubTypeId, sceneType, time, fun) {
+    let cb = {
+      url: `/ledger/${userId}/detail2`,
+      params: {
+        ledgerSubTypeId: ledgerSubTypeId,
+        sceneType: sceneType,
+        time: time
+      },
+    }
+    Object.assign(cb, fun)
+
+    $f.get(cb)
+  },
 }
\ No newline at end of file
diff --git a/service/promiseservice.js b/service/promiseservice.js
index f94f0fe..9ec808a 100644
--- a/service/promiseservice.js
+++ b/service/promiseservice.js
@@ -12,7 +12,7 @@
         userId: userId,
         coVo: JSON.stringify(commitmentVo)
       },
-      success: (result) => {fun.success(result)},
+      success: (result) => {fun.success(JSON.parse(result.data))},
       fail: (res) => {fun.fail(res)},
       complete: (res) => {fun.complete(res)},
     })

--
Gitblit v1.9.3