邪性 3 жил өмнө
parent
commit
64565b7236

+ 1 - 0
app.json

@@ -5,6 +5,7 @@
     "pages/template/index",
     "pages/add/index",
     "pages/try/index",
+    "pages/tips/index",
     "pages/login/index",
     "pages/accessory/index"
   ],

+ 15 - 1
assets/login/wave.svg

@@ -1 +1,15 @@
-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="300" height="100"><g fill="rgba(255,255,255,0.1)"><path d="M 0 70 Q 75 39, 150 70 T 300 70 T 450 70 T 600 70 T 750 70 V 100 H 0 V 0"></path><animateTransform attributeName="transform" attributeType="XML" type="translate" from="0" to="-300" dur="1.5s" repeatCount="indefinite"></animateTransform></g><g fill="rgba(255,255,255,0.15)"><path d="M 0 70 Q 87.5 47, 175 70 T 350 70 T 525 70 T 700 70 T 875 70 T 1050 70 V 100 H 0 V 0"></path><animateTransform attributeName="transform" attributeType="XML" type="translate" from="0" to="-350" dur="3s" repeatCount="indefinite"></animateTransform></g><g fill="rgba(255,255,255,0.18)" transform="translate(-903.868 0)"><path d="M 0 70 Q 135 36, 270 70 T 540 70 T 810 70 T 1080 70 V 100 H 0 V 0" transform="translate(-38.232284367796474, 0)"></path><animateTransform attributeName="transform" attributeType="XML" type="translate" from="0" to="-540" dur="2s" repeatCount="indefinite"></animateTransform></g></svg>
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="300" height="100">
+	<g fill="rgba(255,255,255,0.1)">
+		<path d="M 0 70 Q 75 39, 150 70 T 300 70 T 450 70 T 600 70 T 750 70 V 100 H 0 V 0"></path>
+		<animateTransform attributeName="transform" attributeType="XML" type="translate" from="0" to="-300" dur="1.5s" repeatCount="indefinite"></animateTransform>
+	</g>
+	<g fill="rgba(255,255,255,0.15)">
+		<path d="M 0 70 Q 87.5 47, 175 70 T 350 70 T 525 70 T 700 70 T 875 70 T 1050 70 V 100 H 0 V 0"></path>
+		<animateTransform attributeName="transform" attributeType="XML" type="translate" from="0" to="-350" dur="3s" repeatCount="indefinite"></animateTransform>
+	</g>
+	<g fill="rgba(255,255,255,0.18)" transform="translate(-903.868 0)">
+		<path d="M 0 70 Q 135 36, 270 70 T 540 70 T 810 70 T 1080 70 V 100 H 0 V 0" transform="translate(-38.232284367796474, 0)"></path>
+		<animateTransform attributeName="transform" attributeType="XML" type="translate" from="0" to="-540" dur="2s" repeatCount="indefinite"></animateTransform>
+	</g>
+</svg>

+ 10 - 16
components/template/config.js

@@ -13,14 +13,14 @@ const value = [
   // 车辆和贷款信息
   [
     { name: "vmodel", title: "车型", value: '' },
-    { name: "invioce", title: "车辆发票金额", type: 'number', _type: "number", value: '', add: '' },
+    { name: "invioce", title: "车辆发票金额", reg: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, type: 'number', _type: "number", value: '', add: '' },
     { style: 1, title: "附加品金额 (如有必填)" },
     { name: "ptax", norequire: true, title: "购置税", _title: "金额", reg: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, type: 'number', _type: "number", value: '', add: '' },
     { name: "insurance", norequire: true, title: "保险", _title: "金额", reg: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, type: 'number', _type: "number", value: '', add: '' },
     { name: "boutique", norequire: true, title: "精品", _title: "金额", type: 'number', _type: "number", value: '', reg: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, add: '' },
     { name: "wextension", norequire: true, title: "延保", _title: "金额", type: 'number', _type: "number", value: '', reg: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, add: '' },
     { name: "upkeep", norequire: true, title: "保养", _title: "金额", type: 'number', _type: "number", value: '', reg: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, add: '' },
-    { name: "lamount", title: "申请贷款金额", type: 'number', _type: "number", value: '', add: '' },
+    { name: "lamount", title: "申请贷款金额", reg: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, type: 'number', _type: "number", value: '', add: '' },
     { name: "dpratio", disabled: true, title: "首付比例", value: '' },
     { name: "laompany", type: "switch", title: "申请贷款产品", value: '' },
     { name: "maturity", title: "申请贷款期限", disabled: true, value: '' }
@@ -51,10 +51,10 @@ const value = [
     { name: "maddress", title: "邮寄地址", type: 'switch', value: "" },
     { name: "email", title: "电子邮箱", reg: /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/, value: "" },
     { name: "wx", title: "微信号", reg: /^[a-zA-Z]{1}[-_a-zA-Z0-9]{5,19}$/, value: "" },
-    { name: "phone", title: "住宅固定电话", reg: /^\d{11,12}$/, value: "" },
-    { name: "tel", title: "手机号", reg: /^(0?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[13589]|16[0-9])[0-9]{8})|(([0-9]{3,4}-)?[0-9]{7,8})$/, type: 'number', _type: "number", value: "" },
+    { name: "phone", title: "住宅固定电话", reg: /(^0?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[13589]|16[0-9])[0-9]{8}$)|(^([0-9]{3,4}-)?[0-9]{7,8}$)/, value: "" },
+    { name: "tel", title: "手机号", reg: /(^0?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[13589]|16[0-9])[0-9]{8}$)|(^([0-9]{3,4}-)?[0-9]{7,8}$)/, type: 'number', _type: "number", value: "" },
     { name: "wname", title: "现工作单位名称", value: "" },
-    { name: "wphone", title: "单位电话", reg: /^(0?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[13589]|16[0-9])[0-9]{8})|(([0-9]{3,4}-)?[0-9]{7,8})$/, value: "" },
+    { name: "wphone", title: "单位电话", reg: /(^0?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[13589]|16[0-9])[0-9]{8}$)|(^([0-9]{3,4}-)?[0-9]{7,8}$)/, value: "" },
     { name: "waddress", title: "现工作单位地址", _title: "详细门牌号", reg_msg: "请填写详细门牌号!", reg: /^.*[0-9]{1,}.*$/, reg_msg: "请填写详细门牌号!", value: "" },
     // 0农林牧鱼 1制造业 2批发零售 3信息传输/软件/信息技术服务 4房地产 5建筑业 6住宿/餐饮 7卫生/社会工作 8科研/技术服务 9公共管理/社会保障/社会组织 10采矿业 11文化/体育/娱乐业 12居民服务/修理/其他服务业 13租赁/商务服务业 14交通运输/仓储/邮政业 15教育 16金融 17国际组织 18电热力/燃气/水生产供应业 19水利/环境/公共设施管理 20其他
     { name: "itype", title: "行业类型", type: "switch", value: "" },
@@ -65,18 +65,18 @@ const value = [
     { name: "wbst", forlen: 4, title: "是否挂靠", type: "switch", value: 0, index: 0 },
     { name: "bstname", for: 'wbst', norequire: true, title: "挂靠公司名称", value: "" },
     { name: "bstcode", for: 'wbst', norequire: true, title: "挂靠公司组织机构代码", value: "" },
-    { name: "bsttel", for: 'wbst', norequire: true, title: "挂靠公司电话", reg: /^(0?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[13589]|16[0-9])[0-9]{8})|(([0-9]{3,4}-)?[0-9]{7,8})$/, value: "" },
+    { name: "bsttel", for: 'wbst', norequire: true, title: "挂靠公司电话", reg: /(^0?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[13589]|16[0-9])[0-9]{8}$)|(^([0-9]{3,4}-)?[0-9]{7,8}$)/, value: "" },
     { name: "bstaddress", for: 'wbst', norequire: true, title: "挂靠公司地址", value: "" }
   ],
 
   // 紧急联系人信息
   [
     { name: "cname", title: "联系人1名称", value: "" },
-    { name: "ctel", type: "number", _type: "number", title: "联系人1手机号", reg: /^(0?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[13589]|16[0-9])[0-9]{8})|(([0-9]{3,4}-)?[0-9]{7,8})$/, value: "" },
+    { name: "ctel", type: "number", _type: "number", title: "联系人1手机号", reg: /(^0?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[13589]|16[0-9])[0-9]{8}$)|(^([0-9]{3,4}-)?[0-9]{7,8}$)/, value: "" },
     { name: "relation", title: "联系人1与借款人关系", type: 'switch', value: "" },
     { name: "caddress", title: "联系人1现居住地址", _title: "详细门牌号", reg: /^.*[0-9]{1,}.*$/, reg_msg: "请填写详细门牌号!", value: "" },
     { name: "ctname", title: "联系人2姓名", value: "" },
-    { name: "cttel", title: "联系人2手机号", type: "number", _type: "number", reg: /^(0?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[13589]|16[0-9])[0-9]{8})|(([0-9]{3,4}-)?[0-9]{7,8})$/, value: "" },
+    { name: "cttel", title: "联系人2手机号", type: "number", _type: "number", reg: /(^0?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[13589]|16[0-9])[0-9]{8}$)|(^([0-9]{3,4}-)?[0-9]{7,8}$)/, value: "" },
     // 是否有共借人 0没有 1有
     { name: "thesame", title: "是否有共借人", type: "switch", value: 0, index: 0 }
   ],
@@ -87,7 +87,7 @@ const value = [
   //0身份证 1护照 2军官证 3户口 4临时身份证 5港澳台通行证
   { name: "tsitype", title: "共借人身份证件类型", type: 'switch', value: '' },
   { name: "tsinumber", title: "共借人身份证件号码", _type: "idcard", reg: /(^\d{18}$)|(^\d{17}(\d|X|x)$)/, value: '' },
-  { name: "tstel", title: "共借人手机号", reg: /^(0?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[13589]|16[0-9])[0-9]{8})|(([0-9]{3,4}-)?[0-9]{7,8})$/, type: 'number', _type: "number", value: "" },
+  { name: "tstel", title: "共借人手机号", reg: /(^0?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[13589]|16[0-9])[0-9]{8}$)|(^([0-9]{3,4}-)?[0-9]{7,8}$)/, type: 'number', _type: "number", value: "" },
   { name: "tsrelation", title: "共借人与借款人关系", type: 'switch', value: "" },
   { name: "tsnaddress", title: "共借人现居住", _title: "详细门牌号", reg: /^.*[0-9]{1,}.*$/, reg_msg: "请填写详细门牌号!", value: "" },
   // 0同居住地址 1同单位地址
@@ -95,7 +95,7 @@ const value = [
   { name: "tsemail", title: "共借人电子邮箱", reg: /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/, value: "" },
   { name: "tswx", title: "共借人微信号", reg: /^[a-zA-Z]{1}[-_a-zA-Z0-9]{5,19}$/, value: "" },
   { name: "tswname", title: "共借人现工作单位名称", value: "" },
-  { name: "tswphone", title: "共借人单位电话", reg: /^\d{11,12}$/, value: "" },
+  { name: "tswphone", title: "共借人单位电话", reg: /(^0?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[13589]|16[0-9])[0-9]{8}$)|(^([0-9]{3,4}-)?[0-9]{7,8}$)/, value: "" },
   { name: "tswaddress", title: "共借人现工作单位地址", _title: "详细门牌号", reg: /^.*[0-9]{1,}.*$/, reg_msg: "请填写详细门牌号!", value: "" },
   { name: "tsmincome", title: "共借人税后月收入", type: 'number', _type: "number", value: "" }
   ]
@@ -202,12 +202,6 @@ const switchs = {
   ]
 }
 
-// 数字转汉字
-const RMB = data => {
-  var number = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'];
-  var unit = ['分', '角', '拾', '佰', '仟', '万', '亿', '兆'];
-
-}
 
 
 // 当前时间

+ 21 - 10
components/template/index.js

@@ -2,6 +2,7 @@ import { value, switchs, date } from "./config";
 import Dialog from "../../miniprogram_npm/@vant/weapp/dialog/dialog";
 import { chineseNumber } from "./ChinaNumToEnglishNum";
 var _value = value;
+const app = getApp();
 Component({
   options: {
     addGlobalClass: true,//解决继承全局样式问题
@@ -29,6 +30,7 @@ Component({
     }
   },
   data: {
+    Ios: app.globalData.Ios,
     value,
     active: '',
     activeObject: {},
@@ -69,7 +71,9 @@ Component({
           case 'providedupdate':
             // 修改已填报
             var resA = await wx.$request({ url: `/order/${this.data.key}/`, method: "get" });
-            var { data, edit_values } = resA.data;
+            var { data, edit_values, edit_file, edit_file2 } = resA.data;
+            this.edit_file = edit_file;
+            this.edit_file2 = edit_file2;
             value = this.updataFunc(value, data, edit_values, switchs);
           default:
             // 新增
@@ -157,8 +161,6 @@ Component({
           return itemC.name == itemB.name;
         }) ? '' : itemB['disabled'] = true;
 
-
-
         return itemB
       }));
     },
@@ -186,7 +188,7 @@ Component({
           // 判断是否为空
           if (item.value !== 0 && !item.value) { megs.push(`${item.title}不能为空!`); return false; };
           // 数字类型
-          if (item.type == 'number' && !/^\d+.?\d*$/.test(item.value)) { megs.push(`${item.title}必须是数字!`); return false; }
+          if (item.type == 'number' && !/^\d+.?\d*$/.test(item.value)) { megs.push(`${item.title}格式不正确!`); return false; }
           // 正则判断
           if (cvalue[index].reg && !cvalue[index].reg.test(item.value)) {
             if (item.hasOwnProperty('reg_msg')) {
@@ -197,15 +199,20 @@ Component({
             return false;
           };
           // 号码不能相同 tel tstel ctel cttel
-          if (item.name == 'tel' || item.name == 'tstel' || item.name == 'ctel' || item.name == 'cttel') { (!tels.some(itemT => itemT == item.value) || item.vlaue == '') && tels.push(item.value); ++i }
+          if (item.name == 'tel' || item.name == 'tstel' || item.name == 'ctel' || item.name == 'cttel') {
+            (!tels.some(itemT => itemT == item.value) || item.vlaue == '') && tels.push(item.value); ++i;
+          }
           ;
           // 身份证验证
           if (item.name == 'inumber' && data['bdate']) {
-            item.value.substr(6, 4) + "-" + item.value.substr(10, 2) + "-" + item.value.substr(12, 2) != data['bdate'] && megs.push(`身份证同出生日期不一致!`)
+            item.value.substr(6, 4) + "-" + item.value.substr(10, 2) + "-" + item.value.substr(12, 2) != data['bdate'] && megs.push(`身份证同出生日期不一致!`);
           }
           if (item.name == 'tsinumber' && data['tsbdate']) {
             item.value.substr(6, 4) + "-" + item.value.substr(10, 2) + "-" + item.value.substr(12, 2) != data['tsbdate'] && megs.push(`共同借款人身份证同出生日期不一致!`)
           }
+          if (item.name == "dpratio") {
+            /-/g.test(item.value) && megs.push("请重新填写申请贷款产品!")
+          }
           data[item.name] = item.value;
         });
         tels.length !== i && megs.push(`手机号码不能重复`);
@@ -219,7 +226,7 @@ Component({
         let resA = await wx.$request({ method: "post", url: "/order/", data });
         this.setData({ submitLock: false });
         Dialog.alert({ message: "已提交!" }).then(res => wx.redirectTo({ url: '/pages/accessory/index?data=' + resA.data }))
-      } catch (err) { wx.$err(err) }
+      } catch (err) { wx.$err(err); this.setData({ submitLock: false }); }
     },
 
     // 新增保存
@@ -322,7 +329,7 @@ Component({
           // 判断是否为空
           if (item.value !== 0 && !item.value) { megs.push(`${item.title}不能为空!`); return false; };
           // 数字类型
-          if (item.type == 'number' && !/^\d+.?\d*$/.test(item.value)) { megs.push(`${item.title}必须是数字!`); return false; }
+          if (item.type == 'number' && !/^\d+.?\d*$/.test(item.value)) { megs.push(`${item.title}格式不正确!`); return false; }
           // 正则判断
           if (cvalue[index].reg && !cvalue[index].reg.test(item.value)) {
             if (item.hasOwnProperty('reg_msg')) {
@@ -343,9 +350,13 @@ Component({
           if (item.name == 'tsinumber' && data['tsbdate']) {
             item.value.substr(6, 4) + "-" + item.value.substr(10, 2) + "-" + item.value.substr(12, 2) != data['tsbdate'] && megs.push(`共同借款人身份证同出生日期不一致!`)
           }
+          if (item.name == "dpratio") {
+            /-/g.test(item.value) && megs.push("请重新填写申请贷款产品!")
+          }
           data[item.name] = item.value;
         });
         tels.length !== i && megs.push(`手机号码不能重复`);
+
         if (megs.length != 0) {
           this.setData({ errorShow: true, megs, submitLock: false });
           return false;
@@ -355,8 +366,8 @@ Component({
         delete data['maturity'];
         let resA = await wx.$request({ method: "put", url: `/order/${key}/`, data });
         this.setData({ submitLock: false });
-        Dialog.alert({ message: "已提交!" }).then(res => wx.redirectTo({ url: '/pages/accessory/index?data=' + resA.data }))
-      } catch (err) { wx.$err(err) }
+        Dialog.alert({ message: "已提交!" }).then(res => wx.redirectTo({ url: `/pages/accessory/index?data=${resA.data}&imgs=${JSON.stringify(this.edit_file)}&images=${JSON.stringify(this.edit_file2)}` }))
+      } catch (err) { wx.$err(err); this.setData({ submitLock: false }); }
     },
 
 

+ 4 - 4
components/template/index.wxml

@@ -1,4 +1,4 @@
-<view class="section">
+<view class="section" style="margin-bottom:{{Ios ? '118px' : '50px'}};">
   <view class="cu-bar bg-white solid-bottom">
     <view class="action">
       <text class="cuIcon-title text-orange "></text>
@@ -172,17 +172,17 @@
 
 <!-- 功能栏 -->
 <!-- 新增 -->
-<van-goods-action wx:if="{{type=='add'}}">
+<van-goods-action custom-class="goods-ios" wx:if="{{type=='add'}}">
   <van-goods-action-button loading="{{saveLock}}" type="warning" bind:click="saveFunc" text="保存草稿" />
   <van-goods-action-button loading="{{submitLock}}" bind:click="submitFunc" text="提交" />
 </van-goods-action>
 <!-- 草稿箱修改 -->
-<van-goods-action wx:elif="{{type=='draftsupdate'}}">
+<van-goods-action custom-class="goods-ios" wx:elif="{{type=='draftsupdate'}}">
   <van-goods-action-button loading="{{saveLock}}" type="warning" bind:click="draftsUpdateSaveFunc" text="保存草稿" />
   <van-goods-action-button loading="{{submitLock}}" bind:click="submitFunc" text="上报" />
 </van-goods-action>
 <!-- 已填报修改 -->
-<van-goods-action wx:elif="{{type=='providedupdate'}}">
+<van-goods-action custom-class="goods-ios" wx:elif="{{type=='providedupdate'}}">
   <van-goods-action-button loading="{{submitLock}}" bind:click="UpdateSaveFunc" text="上报" />
 </van-goods-action>
 

+ 6 - 1
components/template/index.wxss

@@ -1,6 +1,11 @@
 /* 开发者 */
 .section{
-  margin-bottom: 50px;
+  margin-bottom: calc(50px + constant(safe-area-inset-bottom));
+  margin-bottom:calc(50px + env(safe-area-inset-bottom));
+  /* margin-bottom: 84px; */
+}
+.goods-ios{
+  padding-bottom: 0 !important;
 }
 
 

+ 2 - 1
config.js

@@ -1,5 +1,6 @@
 // 请求api
-export const requestUrl = "http://192.168.2.45:8888";
+// export const requestUrl = "http://192.168.2.45:8888";
+export const requestUrl = "https://finance.nostone.cn";
 
 // 拦截
 // 发送请求处理 

+ 32 - 11
pages/accessory/index.js

@@ -5,6 +5,8 @@ Page({
     value: [
       {
         name: "身份证",
+        detail: '需要身份证清晰的正反面',
+        require: true,
         maxlen: 2,
         key: 1,
         value: [
@@ -13,6 +15,8 @@ Page({
       },
       {
         name: "驾驶证",
+        detail: '需要驾驶证清晰的正反面',
+        require: true,
         maxlen: 2,
         key: 2,
         value: [],
@@ -43,19 +47,19 @@ Page({
   seeFunc (e) { wx.previewImage({ current: e.currentTarget.dataset.url, urls: [e.currentTarget.dataset.url] }) },
 
   // 刪除
-  async deleteFunc (e) {
+  deleteFunc (e) {
+    Dialog.confirm({ message: '确认删除吗?' }).then(() => this._delete(e)).catch(() => { });
+  },
+
+  async _delete (e) {
     try {
-      await wx.$request({ url: `/order/${this.id}/deleteImage/`, method: 'post', data: { id: e.currentTarget.dataset } });
+      await wx.$request({ url: `/order/${this.data.id}/deleteImage/`, method: 'post', data: { id: e.currentTarget.dataset.id } });
       let { value } = this.data;
       value[e.currentTarget.dataset.index]['value'].splice(e.currentTarget.dataset.ind, 1);
-    } catch (err) { wx.$err(er) };
+      this.setData({ value })
+    } catch (err) { wx.$err(err) };
   },
 
-  //修改
-  // updateFunc (e) {
-  //   this.photoAblum(e.currentTarget.dataset.index);
-  // },
-
   // 添加
   addFunc (e) {
     this.photoAblum(e.currentTarget.dataset.index);
@@ -89,7 +93,7 @@ Page({
         value[_index]['value'].push({ value: JSON.parse(res).data.path, key: JSON.parse(res).data.id });
         index == data.length - 1 && end.bind(this)();
       }).catch(err => {
-        brr.push(`第${index}张图片上传失败!`);
+        brr.push(`第${index + 1}张图片上传失败!`);
         index == data.length - 1 && end.bind(this)();
       });
     })
@@ -103,9 +107,26 @@ Page({
     }
   },
 
-
   onLoad: function (options) {
-    this.setData({ id: options.data })
+    let { value } = this.data;
+    if (options.imgs || options.images) {
+      options.imgs = JSON.parse(options.imgs);
+      options.images = JSON.parse(options.images);
+      value = value.map(itemA => {
+        if (itemA.hasOwnProperty('maxlen') && options.imgs.length > 0) itemA['disabled'] = true;
+        options.imgs.forEach(itemB => {
+          if (itemA.key == itemB.name && itemA.hasOwnProperty('maxlen')) {
+            itemA["disabled"] = false;
+            itemA['errMsg'] = itemB.reason;
+          };
+        })
+        options.images.forEach(itemC => {
+          itemC.type == itemA.key && itemA.value.push({ ...itemA, key: itemC.upload_id, value: itemC.url })
+        })
+        return itemA
+      })
+    }
+    this.setData({ id: options.data, value })
   },
   onReady: function () {
 

+ 11 - 4
pages/accessory/index.wxml

@@ -4,17 +4,24 @@
 </cu-custom>
 <view class="section">
   <!-- 其他 -->
-  <view wx:for="{{value}}" wx:key="index" class="margin-bottom">
+  <view wx:for="{{value}}" wx:key="index" class="margin-bottom" wx:if="{{!item.disabled}}">
     <view class="cu-bar bg-white solid-bottom">
-      <view class='action'>
-        <text class='cuIcon-titles text-orange '></text> {{item.name}}
+      <view class="action">
+        <text class="cuIcon-title text-orange "></text>
+        <view>
+          <view class="text-xl text-black"><text>{{item.name}}</text> <text wx:if="{{item.require}}"
+              class="text-red">(必填)</text></view>
+          <view wx:if="{{item.detail}}" class="text-sm">{{item.detail}}</view>
+          <view wx:if="{{item.errMsg}}" class="text-sm text-red">{{item.errMsg}}</view>
+        </view>
       </view>
     </view>
     <view class="padding">
       <van-grid column-num="3" border="{{ false }}" gutter="{{ 10 }}">
         <van-grid-item use-slot wx:for="{{ item.value }}" wx:for-item="it" wx:for-index="ind" wx:key="ind">
           <view wx:if="{{it.value }}" style="position:relative;width: 100%;height: 180rpx;">
-            <image mode="aspectFit" style="width: 100%; height: 100%;" src="{{it.value}}" />
+            <image bindtap="seeFunc" data-url="{{it.value}}" mode="aspectFit" style="width: 100%; height: 100%;"
+              src="{{it.value}}" />
             <view bindtap="deleteFunc" data-index='{{index}}' data-ind="{{ind}}" data-id="{{it.key}}"
               style='position: absolute;  top: -16rpx;right: -16rpx;'>
               <van-icon name="clear" />

+ 2 - 1
pages/detail/index.js

@@ -1,7 +1,8 @@
+const app = getApp();
 
 Page({
   data: {
-
+    Ios: app.globalData.Ios,
   },
   // 立即申请
   onClickButton () {

+ 2 - 3
pages/detail/index.wxml

@@ -2,14 +2,13 @@
   <view slot="backText">返回</view>
   <view slot="content">商品详情</view>
 </cu-custom>
-<view class="section" style="margin-bottom:50px">
+<view class="section" style="margin-bottom:{{Ios ? '50px' : '118px'}};">
   <view class="padding-xl bg-cyan">
     <view class="padding-xs text-white text-xl">{{value.title}}</view>
     <view class="padding-xs text-white">贷款期限:{{value.month}}个月</view>
   </view>
-
   <image wx:for="{{value.details}}" wx:key="index" style="width: 100%;" src="{{item}}" mode="widthFix" class="image" />
 </view>
-<van-goods-action>
+<van-goods-action custom-class="goods-ios">
   <van-goods-action-button text="立即申请" bind:click="onClickButton" />
 </van-goods-action>

+ 3 - 1
pages/detail/index.wxss

@@ -1 +1,3 @@
-/* pages/detail/index.wxss */
+.goods-ios{
+  padding-bottom: 0 !important;
+}

+ 2 - 1
pages/index/index.js

@@ -2,6 +2,7 @@ import { tabberFunc } from "../../utils/util";
 const app = getApp();
 Page({
   data: {
+    Ios: app.globalData.Ios,
     isLoad: true,
     loadProgress: 100,
     CustomBar: app.globalData.CustomBar,
@@ -34,7 +35,7 @@ Page({
   // 通知栏
   tipsFunc (e) {
     let { index } = e.currentTarget.dataset, { tips } = this.data;
-    console.log(tips[index])
+    wx.navigateTo({ url: "/pages/tips/index?data=" + JSON.stringify(tips[index]) })
   },
 
   // 请求

+ 2 - 3
pages/index/index.wxml

@@ -17,7 +17,7 @@
   </view>
 </van-sticky>
 <!-- 清除吸顶带来的为浮动 不建议这么做-->
-<view style="height:90rpx"></view>
+<view style="height:60rpx"></view>
 <!-- 商品 -->
 <veiw class="section">
   <image class="margin-bottom-sm" mode="widthFix" style="width: 100%;" bindtap="onClickFunc" data-index="{{index}}"
@@ -25,8 +25,7 @@
   <view class="cu-load text-grey {{value.page > value.totalPage ?'over':'loading'}}"></view>
   <van-empty wx:if="{{value.value.length == 0}}" description="暂无商品" />
 </veiw>
-
-<view style="height: 100rpx;"></view>
+<view style="height:{{Ios ? '100rpx' : '168rpx'}};"></view>
 <view class="cu-bar tabbar bg-white shadow foot">
   <view class="action" bindtap="NavChange" data-active="true" data-path="pages/index/index">
     <view class='cuIcon-cu-image'>

+ 6 - 2
pages/index/index.wxss

@@ -4,7 +4,7 @@
   width: 100%;
   display: flex;
   align-items: center;
-  line-height: 90rpx;
+  line-height: 60rpx;
   font-size: 32rpx;
 }
 .header .block{
@@ -14,6 +14,10 @@
 .header .body{
   flex: 1;
   box-sizing: border-box;
-  height: 90rpx;
+  height: 60rpx;
   padding-right: 15rpx;
+}
+.ios{
+  height: calc(100rpx + constant(safe-area-inset-bottom));
+  height:calc(100rpx + env(safe-area-inset-bottom));
 }

+ 1 - 0
pages/login/index.js

@@ -85,6 +85,7 @@ Page({
 
   },
   onShow: function () {
+
     let login = {
       imgurl: (wx.getStorageSync('token') && app.globalData.user.face) ? app.globalData.user.face : app.globalData.mustArg.userInfo.avatarUrl,
       name: wx.getStorageSync('token') ? app.globalData.user.name : "微信快捷登录",

+ 0 - 1
pages/template/index.js

@@ -8,7 +8,6 @@ Page({
       { name: "删除", type: "drafts", success (data) { this.drafts_delete(data) } },
       { name: "查看", type: "provided", success (data) { this.provided_watch(data) } },
       { name: "修改", type: "provided", success (data) { this.provided_update(data) } },
-      { name: "上传资料", type: "provided", success (data) { } }
     ]
   },
   // 草稿箱删除

+ 1 - 1
pages/template/index.wxml

@@ -28,7 +28,7 @@
     <view class="btns">
       <button bindtap="btnsFunc" wx:for="{{btns}}" wx:for-item="it" wx:for-index="ind" data-index="{{ind}}"
         data-id="{{item.id}}" data-order="{{index}}" data-index="{{ind}}"
-        wx:if="{{it.type==type && (it.type != 'provided' || item.status == 2 || it.name == '查看')}}"
+        wx:if="{{it.type==type && (it.type != 'provided' || item.status == 2 || item.status==0 || it.name == '查看')}}"
         class="cu-btn round bg-blue button-hover margin-left margin-top" wx:key="ind">{{it.name}}</button>
     </view>
   </view>

+ 26 - 0
pages/tips/index.js

@@ -0,0 +1,26 @@
+Page({
+  data: {
+
+  },
+  onLoad: function (options) {
+    this.setData({ value: JSON.parse(options.data) })
+  },
+  onReady: function () {
+
+  },
+  onShow: function () {
+
+  },
+  onHide: function () {
+
+  },
+  onUnload: function () {
+
+  },
+  onPullDownRefresh: function () {
+
+  },
+  onReachBottom: function () {
+
+  },
+})

+ 3 - 0
pages/tips/index.json

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

+ 19 - 0
pages/tips/index.wxml

@@ -0,0 +1,19 @@
+<cu-custom isBack bgColor="bg-gradual-blue">
+  <view slot="backText">返回</view>
+  <view slot="content">通知详情</view>
+</cu-custom>
+<view class="cu-card ">
+  <view class="cu-item shadow">
+    <view class="cu-item padding-tb">
+      <view>
+        <view class="text-center text-xl bold">{{value.value}}</view>
+        <view class="text-center text-xl text-gray text-sm">
+          {{value.create_time}}
+        </view>
+      </view>
+    </view>
+    <view class="text-content text-xl solid-top padding">
+      {{value.detail}}
+    </view>
+  </view>
+</view>

+ 1 - 0
pages/tips/index.wxss

@@ -0,0 +1 @@
+/* pages/tips/index.wxss */

+ 7 - 1
project.private.config.json

@@ -33,7 +33,7 @@
         {
           "name": "附件",
           "pathName": "pages/accessory/index",
-          "query": "data=36",
+          "query": "data=40&imgs=[]&images=[{\"upload_id\":83,\"url\":\"http://192.168.2.45:8888/up/user_image/20211225161121392623.png\",\"type\":3},{\"upload_id\":84,\"url\":\"http://192.168.2.45:8888/up/user_image/20211225161121518622.png\",\"type\":3},{\"upload_id\":85,\"url\":\"http://192.168.2.45:8888/up/user_image/20211225161121554621.png\",\"type\":3},{\"upload_id\":86,\"url\":\"http://192.168.2.45:8888/up/user_image/20211225161134954419.png\",\"type\":3},{\"upload_id\":87,\"url\":\"http://192.168.2.45:8888/up/user_image/20211225161135006423.png\",\"type\":3},{\"upload_id\":88,\"url\":\"http://192.168.2.45:8888/up/user_image/20211225161135006423.png\",\"type\":3},{\"upload_id\":89,\"url\":\"http://192.168.2.45:8888/up/user_image/20211225161144422932.png\",\"type\":4},{\"upload_id\":90,\"url\":\"http://192.168.2.45:8888/up/user_image/20211225161144609932.png\",\"type\":4},{\"upload_id\":91,\"url\":\"http://192.168.2.45:8888/up/user_image/20211225161144642934.png\",\"type\":4},{\"upload_id\":92,\"url\":\"http://192.168.2.45:8888/up/user_image/20211225161149638983.png\",\"type\":5},{\"upload_id\":93,\"url\":\"http://192.168.2.45:8888/up/user_image/20211225161149714955.png\",\"type\":5},{\"upload_id\":94,\"url\":\"http://192.168.2.45:8888/up/user_image/20211225161149753953.png\",\"type\":5}]",
           "scene": null
         },
         {
@@ -41,6 +41,12 @@
           "pathName": "pages/try/index",
           "query": "",
           "scene": null
+        },
+        {
+          "name": "广告",
+          "pathName": "pages/tips/index",
+          "query": "data={\"key\":3,\"value\":\"元旦公告\",\"detail\":\"请在元旦前,把客户资料提交过来。请在元旦前,把客户资料提交过来。请在元旦前,把客户资料提交过来。请在元旦前,把客户资料提交过来。\",\"create_time\":\"2021-12-22 16:46:56\",\"create_user\":1}",
+          "scene": null
         }
       ]
     }

+ 4 - 2
utils/init.js

@@ -17,9 +17,11 @@ class Index {
     return new Promise((resolve, reject) => {
       // color ui使用
       try {
-        let { statusBarHeight: StatusBar } = wx.getSystemInfoSync(),
+
+        let { statusBarHeight: StatusBar, safeArea, screenHeight } = wx.getSystemInfoSync(),
           capsule = wx.getMenuButtonBoundingClientRect();
-        that.globalData = capsule ? { StatusBar, Custom: capsule, CustomBar: capsule.bottom + capsule.top - StatusBar } : { StatusBar, CustomBar: StatusBar + 50 };
+        let Ios = screenHeight - safeArea.bottom;
+        that.globalData = capsule ? { Ios, StatusBar, Custom: capsule, CustomBar: capsule.bottom + capsule.top - StatusBar } : { Ios, StatusBar, CustomBar: StatusBar + 50 };
         resolve();
       } catch (err) { reject(err) }
     })