Browse Source

Merge branch 'master' of http://git.zthymaoyi.com/gongdecai/wangluohuoyun-huozhuapp

ccj 2 years ago
parent
commit
7740e8df8c
51 changed files with 2083 additions and 2789 deletions
  1. 1 1
      App.vue
  2. 18 0
      common/helper.js
  3. 1 1
      components/bert-suggest/suggest.vue
  4. 133 0
      components/cuixinyu-trajectory/cuixinyu-trajectory.nvue
  5. 0 27
      components/itmister-address-picker/city_other.json
  6. 727 0
      components/itmister-date-picker/itmister-date-picker.nvue
  7. 140 0
      components/xbd-maptrack/xbd-maptrack.vue
  8. 2 2
      config/index.js
  9. 6 6
      package.json
  10. 24 47
      pages.json
  11. 20 4
      pages/carSource/driverSee.vue
  12. 6 41
      pages/carSource/index.vue
  13. 8 65
      pages/mine/cargoowner/addEnerprise.vue
  14. 4 4
      pages/mine/cargoowner/cargoowner.vue
  15. 18 63
      pages/mine/cargoowner/editEnerprise.vue
  16. 37 68
      pages/mine/cargoowner/editpersonalinformation.vue
  17. 26 126
      pages/mine/company/addcompany.vue
  18. 0 109
      pages/mine/company/addcompanythree.vue
  19. 0 286
      pages/mine/company/addcompanytwo.vue
  20. 59 95
      pages/mine/company/editcompany.vue
  21. 0 100
      pages/mine/company/editcompanythree.vue
  22. 0 286
      pages/mine/company/editcompanytwo.vue
  23. 0 69
      pages/mine/company/editcompanyvideo.vue
  24. 0 538
      pages/mine/driverCertification.vue
  25. 0 329
      pages/mine/driverCertificationNext.vue
  26. 113 109
      pages/mine/index.vue
  27. 11 6
      pages/mine/manageBankCards/addBankCard.vue
  28. 1 0
      pages/mine/manageBankCards/editBankCard.vue
  29. 2 3
      pages/mine/set.vue
  30. 25 8
      pages/mine/settings/editPassword.vue
  31. 3 0
      pages/news/index.vue
  32. 0 3
      pages/order/addEvaluation.vue
  33. 20 4
      pages/order/driverDetail.vue
  34. 3 1
      pages/order/index.vue
  35. 1 1
      pages/order/map.nvue
  36. 21 2
      pages/order/orderDetails.vue
  37. 1 0
      pages/order/signContract.vue
  38. 11 3
      pages/public/code.vue
  39. 23 0
      pages/public/cytScrectAgreement/cytScrectAgreement.vue
  40. 51 24
      pages/public/login.vue
  41. 40 12
      pages/public/register.vue
  42. 23 0
      pages/public/serviceAgreement/serviceAgreement.vue
  43. 51 25
      pages/release/addAddress.vue
  44. 1 1
      pages/release/editAddress.vue
  45. 124 108
      pages/release/editRelease.vue
  46. 3 5
      pages/release/lookRelease.vue
  47. 98 6
      pages/release/record.vue
  48. 222 199
      pages/release/release.vue
  49. 4 1
      pages/release/selectAddress.vue
  50. BIN
      static/images/mine/kf.png
  51. 1 1
      util/request.js

+ 1 - 1
App.vue

@@ -217,7 +217,7 @@
 			console.log(type)
 			if (type == "android") {
 				console.log(111111111111111111111111111111111111111111111111111)
-				appUpdate()
+				// appUpdate()
 			}
 			// var that = this
 			// plus.push.getClientInfoAsync((info) => {

+ 18 - 0
common/helper.js

@@ -14,6 +14,23 @@ const imgTypeList = [{
 		name: '拍照',
 	}
 ]
+// 当前日期是否超过今天(校验有效期)
+const periodOfValidity=function(year1,month1,day1){
+	let nowDate = new Date();
+	let year = nowDate.getFullYear()
+	let month = nowDate.getMonth() + 1
+	let day = nowDate.getDate()
+	if(year1<year){
+		return false
+	}
+	if(year1==year&&month1<month){
+		return false
+	}
+	if(year1==year&&month1==month&&day1<=day){
+		return false
+	}
+	return true
+}
 const makeValidityPeriod = function(type, name) {
 	//获取当前年
 	let nowDate = new Date();
@@ -314,6 +331,7 @@ export default {
 	ossUploadUrl,
 	contactCustomerService,
 	chooseImage,
+	periodOfValidity,
 	imgType,
 	imgTypeList,
 	makeValidityPeriod,

+ 1 - 1
components/bert-suggest/suggest.vue

@@ -6,7 +6,7 @@
 				<view style='position:absolute;right:22px;bottom:16px;font-size:13px;'>{{data.content.length}}/150个字</view>
 			</uni-card>
 			<uni-card class="box contact" :isFull="true" title="联系方式" >
-				<input v-model="data.contact" placeholder="请输入您的手机号,方便我们联系您" />
+				<input v-model="data.contact" placeholder="请输入您的手机号,方便我们联系您" maxlength="11" type="number"/>
 			</uni-card>
 		</view>
 		<button class="submit-btn" @click="submit">提交</button>

File diff suppressed because it is too large
+ 133 - 0
components/cuixinyu-trajectory/cuixinyu-trajectory.nvue


+ 0 - 27
components/itmister-address-picker/city_other.json

@@ -5,7 +5,6 @@
 { "name": "天津", "city":[{"name":"天津", "area":["全市","和平区","河东区","河西区","南开区","河北区","红桥区","塘沽区","汉沽区","大港区","东丽区","西青区","津南区","北辰区","武清区","宝坻区","宁河县","静海县","蓟  县"]}]},
 
 { "name": "河北", "city":[
-         {"name":"全省", "area":[]},
          {"name":"石家庄", "area":["全市","长安区","桥东区","桥西区","新华区","郊  区","井陉矿区","井陉县","正定县","栾城县","行唐县","灵寿县","高邑县","深泽县","赞皇县","无极县","平山县","元氏县","赵  县","辛集市","藁","晋州市","新乐市","鹿泉市"]},
 
          {"name":"唐山", "area":["全市","路南区","路北区","古冶区","开平区","新  区","丰润县","滦  县","滦南县","乐亭县","迁西县","玉田县","唐海县","遵化市","丰南市","迁安市"]},
@@ -31,7 +30,6 @@
       ]},
 
 { "name": "山西", "city":[
-     {"name":"全省", "area":[]},
      {"name":"太原", "area":["全市","小店区","迎泽区","杏花岭区","尖草坪区","万柏林区","晋源区","清徐县","阳曲县","娄烦县","古交市"]},
 
      {"name":"大同", "area":["全市","城  区","矿  区","南郊区","新荣区","阳高县","天镇县","广灵县","灵丘县","浑源县","左云县","大同县"]},
@@ -57,7 +55,6 @@
 ]},
 
 { "name": "内蒙古", "city":[
-   {"name":"全省", "area":[]},
    {"name":"呼和浩特", "area":["全市","新城区","回民区","玉泉区","郊  区","土默特左旗","托克托县","和林格尔县","清水河县","武川县"]},
 
    {"name":"包头", "area":["全市","东河区","昆都伦区","青山区","石拐矿区","白云矿区","郊  区","土默特右旗","固阳县","达尔罕茂明安联合旗"]},
@@ -85,7 +82,6 @@
 ]},
 
 { "name": "辽宁", "city":[
-{"name":"全省", "area":[]},
 {"name":"沈阳", "area":["全市","沈河区","皇姑区","和平区","大东区","铁西区","苏家屯区","东陵区","于洪区","新民市","法库县","辽中县","康平县","新城子区","其他"]},
 
 {"name":"大连", "area":["全市","西岗区","中山区","沙河口区","甘井子区","旅顺口区","金州区","瓦房店市","普兰店市","庄河市","长海县","其他"]},
@@ -118,7 +114,6 @@
 ]},
 
 { "name": "吉林", "city":[
-{"name":"全省", "area":[]},
 {"name":"长春", "area":["全市","朝阳区","宽城区","二道区","南关区","绿园区","双阳区","九台市","榆树市","德惠市","农安县","其他"]},
 
 {"name":"吉林", "area":["全市","船营区","昌邑区","龙潭区","丰满区","舒兰市","桦甸市","蛟河市","磐石市","永吉县","其他"]},
@@ -140,7 +135,6 @@
 ]},
 
 { "name": "黑龙江", "city":[
-{"name":"全省", "area":[]},
 {"name":"哈尔滨", "area":["全市","松北区","道里区","南岗区","平房区","香坊区","道外区","呼兰区","阿城区","双城市","尚志市","五常市","宾县","方正县","通河县","巴彦县","延寿县","木兰县","依兰县","其他"]},
 
 {"name":"齐齐哈尔", "area":["全市","龙沙区","昂昂溪区","铁锋区","建华区","富拉尔基区","碾子山区","梅里斯达斡尔族区","讷河市","富裕县","拜泉县","甘南县","依安县","克山县","泰来县","克东县","龙江县","其他"]},
@@ -176,7 +170,6 @@
 ]},
 
 { "name": "江苏", "city":[
-{"name":"全省", "area":[]},
 {"name":"南京", "area":["全市","玄武区","白下区","秦淮区","建邺区","鼓楼区","下关区","栖霞区","雨花台区","浦口区","江宁区","六合区","溧水县","高淳县","其他"]},
 
 {"name":"苏州", "area":["全市","金阊区","平江区","沧浪区","虎丘区","吴中区","相城区","常熟市","张家港市","昆山市","吴江市","太仓市","其他"]},
@@ -206,7 +199,6 @@
 ]},
 
 { "name": "浙江", "city":[
-{"name":"全省", "area":[]},
 {"name":"杭州", "area":["全市","拱墅区","西湖区","上城区","下城区","江干区","滨江区","余杭区","萧山区","建德市","富阳市","临安市","桐庐县","淳安县","其他"]},
 
 {"name":"宁波", "area":["全市","海曙区","江东区","江北区","镇海区","北仑区","鄞州区","余姚市","慈溪市","奉化市","宁海县","象山县","其他"]},
@@ -232,7 +224,6 @@
 ]},
 
 { "name": "安徽", "city":[
-{"name":"全省", "area":[]},
 {"name":"合肥", "area":["全市","庐阳区","瑶海区","蜀山区","包河区","长丰县","肥东县","肥西县","其他"]},
 
 {"name":"芜湖", "area":["全市","镜湖区","弋江区","鸠江区","三山区","芜湖县","南陵县","繁昌县","其他"]},
@@ -270,7 +261,6 @@
 ]},
 
 { "name": "福建", "city":[
-{"name":"全省", "area":[]},
 {"name":"福州", "area":["全市","鼓楼区","台江区","仓山区","马尾区","晋安区","福清市","长乐市","闽侯县","闽清县","永泰县","连江县","罗源县","平潭县","其他"]},
 
 {"name":"厦门", "area":["全市","思明区","海沧区","湖里区","集美区","同安区","翔安区","其他"]},
@@ -292,7 +282,6 @@
 ]},
 
 { "name": "江西", "city":[
-{"name":"全省", "area":[]},
 {"name":"南昌", "area":["全市","东湖区","西湖区","青云谱区","湾里区","青山湖区","新建县","南昌县","进贤县","安义县","其他"]},
 
 {"name":"景德镇", "area":["全市","珠山区","昌江区","乐平市","浮梁县","其他"]},
@@ -318,7 +307,6 @@
 ]},
 
 { "name": "山东", "city":[
-{"name":"全省", "area":[]},
 {"name":"济南", "area":["全市","市中区","历下区","天桥区","槐荫区","历城区","长清区","章丘市","平阴县","济阳县","商河县","其他"]},
 
 {"name":"青岛", "area":["全市","市南区","市北区","城阳区","四方区","李沧区","黄岛区","崂山区","胶南市","胶州市","平度市","莱西市","即墨市","其他"]},
@@ -356,7 +344,6 @@
 ]},
 
 { "name": "河南", "city":[
-{"name":"全省", "area":[]},
 {"name":"郑州", "area":["全市","中原区","金水区","二七区","管城回族区","上街区","惠济区","巩义市","新郑市","新密市","登封市","荥阳市","中牟县","其他"]},
 
 {"name":"开封", "area":["全市","鼓楼区","龙亭区","顺河回族区","禹王台区","金明区","开封县","尉氏县","兰考县","杞县","通许县","其他"]},
@@ -396,7 +383,6 @@
 ]},
 
 { "name": "湖北", "city":[
-{"name":"全省", "area":[]},
 {"name":"武汉", "area":["全市","江岸区","武昌区","江汉区","硚口区","汉阳区","青山区","洪山区","东西湖区","汉南区","蔡甸区","江夏区","黄陂区","新洲区","其他"]},
 
 {"name":"黄石", "area":["全市","黄石港区","西塞山区","下陆区","铁山区","大冶市","阳新县","其他"]},
@@ -434,7 +420,6 @@
 ]},
 
 { "name": "湖南", "city":[
-{"name":"全省", "area":[]},
 {"name":"长沙", "area":["全市","岳麓区","芙蓉区","天心区","开福区","雨花区","浏阳市","长沙县","望城县","宁乡县","其他"]},
 
 {"name":"株洲", "area":["全市","天元区","荷塘区","芦淞区","石峰区","醴陵市","株洲县","炎陵县","茶陵县","攸县","其他"]},
@@ -466,7 +451,6 @@
 ]},
 
 { "name": "广东", "city":[
-{"name":"全省", "area":[]},
 {"name":"广州", "area":["全市","越秀区","荔湾区","海珠区","天河区","白云区","黄埔区","番禺区","花都区","南沙区","萝岗区","增城市","从化市","其他"]},
 
 {"name":"深圳", "area":["全市","福田区","罗湖区","南山区","宝安区","龙岗区","盐田区","其他"]},
@@ -512,7 +496,6 @@
 ]},
 
 { "name": "广西", "city":[
-{"name":"全省", "area":[]},
 {"name":"南宁", "area":["全市","青秀区","兴宁区","西乡塘区","良庆区","江南区","邕宁区","武鸣县","隆安县","马山县","上林县","宾阳县","横县","其他"]},
 
 {"name":"柳州", "area":["全市","城中区","鱼峰区","柳北区","柳南区","柳江县","柳城县","鹿寨县","融安县","融水苗族自治县","三江侗族自治县","其他"]},
@@ -544,7 +527,6 @@
 ]},
 
 { "name": "海南", "city":[
-{"name":"全省", "area":[]},
 {"name":"海口", "area":["全市","龙华区","秀英区","琼山区","美兰区","其他"]},
 
 {"name":"三亚", "area":["全市","三亚市","其他"]},
@@ -590,7 +572,6 @@
 ]},
 
 { "name": "四川", "city":[
-{"name":"全省", "area":[]},
 {"name":"成都", "area":["全市","青羊区","锦江区","金牛区","武侯区","成华区","龙泉驿区","青白江区","新都区","温江区","都江堰市","彭州市","邛崃市","崇州市","金堂县","郫县","新津县","双流县","蒲江县","大邑县","其他"]},
 
 {"name":"自贡", "area":["全市","大安区","自流井区","贡井区","沿滩区","荣县","富顺县","其他"]},
@@ -636,7 +617,6 @@
 ]},
 
 { "name": "贵州", "city":[
-{"name":"全省", "area":[]},
 {"name":"贵阳", "area":["全市","南明区","云岩区","花溪区","乌当区","白云区","小河区","清镇市","开阳县","修文县","息烽县","其他"]},
 
 {"name":"六盘水", "area":["全市","钟山区","水城县","盘县","六枝特区","其他"]},
@@ -658,7 +638,6 @@
 ]},
 
 { "name": "云南", "city":[
-{"name":"全省", "area":[]},
 {"name":"昆明", "area":["全市","盘龙区","五华区","官渡区","西山区","东川区","安宁市","呈贡县","晋宁县","富民县","宜良县","嵩明县","石林彝族自治县","禄劝彝族苗族自治县","寻甸回族彝族自治县","其他"]},
 
 {"name":"曲靖", "area":["全市","麒麟区","宣威市","马龙县","沾益县","富源县","罗平县","师宗县","陆良县","会泽县","其他"]},
@@ -694,7 +673,6 @@
 ]},
 
 { "name": "西藏", "city":[
-{"name":"全省", "area":[]},
 {"name":"拉萨", "area":["全市","城关区","林周县","当雄县","尼木县","曲水县","堆龙德庆县","达孜县","墨竹工卡县","其他"]},
 
 {"name":"那曲地区", "area":["全市","那曲县","嘉黎县","比如县","聂荣县","安多县","申扎县","索县","班戈县","巴青县","尼玛县","其他"]},
@@ -712,7 +690,6 @@
 ]},
 
 { "name": "陕西", "city":[
-{"name":"全省", "area":[]},
 {"name":"西安", "area":["全市","莲湖区","新城区","碑林区","雁塔区","灞桥区","未央区","阎良区","临潼区","长安区","高陵县","蓝田县","户县","周至县","其他"]},
 
 {"name":"铜川", "area":["全市","耀州区","王益区","印台区","宜君县","其他"]},
@@ -736,7 +713,6 @@
 ]},
 
 { "name": "甘肃", "city":[
-{"name":"全省", "area":[]},
 {"name":"兰州", "area":["全市","城关区","七里河区","西固区","安宁区","红古区","永登县","皋兰县","榆中县","其他"]},
 
 {"name":"嘉峪关", "area":["全市","嘉峪关市","其他"]},
@@ -768,7 +744,6 @@
 ]},
 
 { "name": "青海", "city":[
-{"name":"全省", "area":[]},
 {"name":"西宁", "area":["全市","城中区","城东区","城西区","城北区","湟源县","湟中县","大通回族土族自治县","其他"]},
 
 {"name":"海东地区", "area":["全市","平安县","乐都县","民和回族土族自治县","互助土族自治县","化隆回族自治县","循化撒拉族自治县","其他"]},
@@ -788,7 +763,6 @@
 ]},
 
 { "name": "宁夏", "city":[
-{"name":"全省", "area":[]},
 {"name":"银川", "area":["全市","兴庆区","西夏区","金凤区","灵武市","永宁县","贺兰县","其他"]},
 
 {"name":"石嘴山", "area":["全市","大武口区","惠农区","平罗县","其他"]},
@@ -802,7 +776,6 @@
 ]}, 
 
 { "name": "新疆", "city":[
-{"name":"全省", "area":[]},
 {"name":"乌鲁木齐", "area":["全市","天山区","沙依巴克区","新市区","水磨沟区","头屯河区","达坂城区","东山区","乌鲁木齐县","其他"]},
 
 {"name":"克拉玛依", "area":["全市","克拉玛依区","独山子区","白碱滩区","乌尔禾区","其他"]},

+ 727 - 0
components/itmister-date-picker/itmister-date-picker.nvue

@@ -0,0 +1,727 @@
+<template>
+	<view>
+		<view v-if="isShow">
+			<view class="date-picker-mask" bubble='true' @click="hide" :class="[isOpen?'show-date-picker-mask':'hide-date-picekr-mask']"
+			 :style="{backgroundColor:maskColor}"></view>
+			<view class="date-picker-container" @click.stop="handleClick" :class="[isOpen?'show-date-picker':'hide-date-picekr']">
+
+				<!-- 操作 -->
+				<view class="date-picker-title row between-center">
+					<text class="date-picker-cancel" @click="hide">取消</text>
+					<text class="date-picker-confirm" @click="dateConfirm">确定</text>
+				</view>
+				<!-- 内容 -->
+				<picker-view class="date-picker-box" v-if="visible" :indicator-style="indicatorStyle" :value="value" @change="bindChange">
+					<picker-view-column class="center">
+						<view class="date-picker-item center" v-for="(item,index) in years" :key="index">
+							<text >{{item}}</text>
+						</view>
+					</picker-view-column>
+					<picker-view-column>
+						<view class="date-picker-item center" v-for="(item,index) in months" :key="index">
+							<text>{{item}}</text>
+						</view>
+					</picker-view-column>
+					<picker-view-column>
+						<view class="date-picker-item center" v-for="(item,index) in days" :key="index">
+							<text>{{item}}</text>
+						</view>
+					</picker-view-column>
+				</picker-view>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	var that
+	/**
+	 * 日期控件
+	 * @property {String} maskColor 模态框背景色
+	 * @property {String,Number} checkYear 控件打开默认选中的年份(未传值或传空字符串默认选中的年份为当年)
+	 * @property {String,Number} checkMonth 控件打开默认选中的月份(未传值或传空字符串默认选中的年份为当月)
+	 * @property {String,Number} checkDay 控件打开默认选中的日期(未传值或传空字符串默认选中的年份为当日)
+	 * @property {String,Number} startYear 开始年份,默认为1940
+	 * @property {String,Number} futureYear 终止年份,今年向后多少年,可选的最晚年份(截止日期未传时生效)
+	 * @property {Boolean} periodOfValidity = [true | false] 是否是有效期(开启之后选择今天及之前的日期提示日期已过期)
+	 * @property {Boolean} isShow = [true | false] 开启|关闭
+	 * @property {String} overdueContent 开启periodOfValidity之后,选择今天及之前的日期提示日期已过期的内容文字
+	 * @property {Object} endDate 截止日期,可选的最晚日期
+	 * @property {String,Number} dateStatus 日期类型,默认0没有长期和随时,1长期,2随时
+	 */
+	export default {
+		name: "datePicker",
+		props: {
+			maskColor: { 
+				type: String,
+				default: 'rgba(0,0,0,0.3)'
+			},
+			checkYear:{
+				type: [String,Number],
+				default: new Date().getFullYear()
+			},
+			checkMonth:{
+				type: [String,Number],
+				default: new Date().getMonth() + 1
+			},
+			checkDay:{
+				type: [String,Number],
+				default: new Date().getDate()
+			},
+			startYear:{
+				type: [String,Number],
+				default: 1940
+			},
+			futureYear:{
+				type: [String,Number],
+				default: 10
+			},
+			periodOfValidity:{
+				type: Boolean,
+				default: false
+			},
+			overdueContent:{
+				type: String,
+				default: ''
+			},
+			endDate: {
+			  type: Object,
+			  default: () => ({})
+			},
+			dateStatus:{
+				type: [String,Number],
+				default: 0
+			}
+		},
+		data() {
+			const date = new Date();
+			let years = [],months = [];
+			if(this.dateStatus==1){
+				years = ['长期'];
+				months = [''];
+			}
+			if(this.dateStatus==2){
+				years = ['随时'];
+				months = [''];
+			}
+			const currectyear = date.getFullYear()
+			const currectmonth = date.getMonth() + 1
+			const currectday = date.getDate()
+			// console.log(this.checkYear)
+			// const month = date.getMonth() + 1
+			// const day = date.getDate();
+			
+			// 传截止日期设置起始年份和终止年份
+			if(JSON.stringify(this.endDate)!='{}'){
+				if(this.endDate.year&&this.endDate.year<currectyear){
+					this.showtoast('截止日期年份必须大于等于当前年份')
+					return
+				}
+				if(this.endDate.year&&this.endDate.year==currectyear&&this.endDate.month&&this.endDate.month<currectmonth){
+					this.showtoast('截止日期月份必须大于等于当前月份')
+					return
+				}
+				if(this.endDate.year&&this.endDate.year==currectyear&&this.endDate.month&&this.endDate.month==currectmonth&&this.endDate.day&&this.endDate.day<currectday){
+					this.showtoast('截止日期必须大于等于今天')
+					return
+				}
+				var obj=this.createExpirationDate()
+				// console.log(obj)
+				years=obj.years
+				months=obj.months
+			}
+			
+			const year = this.checkYear?this.checkYear:currectyear
+			const month = this.checkMonth?Number(this.checkMonth):currectmonth
+			const day = this.checkDay?Number(this.checkDay):currectday
+			
+			console.log(year,month,day)
+			// 未传截止日期设置起始年份和终止年份
+			if(JSON.stringify(this.endDate)=='{}'){
+				for (let i = this.startYear; i <= currectyear + this.futureYear; i++) {
+					years.push(i);
+				}
+				if(this.dateStatus==0&&year=='长期'||this.dateStatus==0&&year=='随时'){
+					this.showtoast('当前日期选择器未带长期和随时选项,请修改当前类型')
+					return
+				}
+				if(year!='长期'&&year!='随时'){
+					for (let i = 1; i <= 12; i++) {
+						months.push(i);
+					}
+				}
+			}
+			
+			return {
+				isShow: false, // 是否弹出
+				isOpen: false,
+
+				years,
+				months,
+				days: [''],
+				year,
+				month,
+				day,
+				value: this.dateStatus==0?[Number(year - this.startYear), month-1 , day]:year=='长期'||year=='随时'?[0,0,0]:[Number(year - this.startYear+1), month , day], // 默认选中当天
+				visible: true,
+				indicatorStyle: `height: ${Math.round(uni.getSystemInfoSync().screenWidth/(750/100))}px;`
+			}
+		},
+		methods: {
+			setYearList(){
+				const date = new Date();
+				let years = [],months = [];
+				if(this.dateStatus==1){
+					years = ['长期'];
+					months = [''];
+				}
+				if(this.dateStatus==2){
+					years = ['随时'];
+					months = [''];
+				}
+				const currectyear = date.getFullYear()
+				const currectmonth = date.getMonth() + 1
+				const currectday = date.getDate()
+				// console.log(this.checkYear)
+				// const month = date.getMonth() + 1
+				// const day = date.getDate();
+				
+				// 传截止日期设置起始年份和终止年份
+				if(JSON.stringify(this.endDate)!='{}'){
+					if(this.endDate.year&&this.endDate.year<currectyear){
+						this.showtoast('截止日期年份必须大于等于当前年份')
+						return
+					}
+					if(this.endDate.year&&this.endDate.year==currectyear&&this.endDate.month&&this.endDate.month<currectmonth){
+						this.showtoast('截止日期月份必须大于等于当前月份')
+						return
+					}
+					if(this.endDate.year&&this.endDate.year==currectyear&&this.endDate.month&&this.endDate.month==currectmonth&&this.endDate.day&&this.endDate.day<currectday){
+						this.showtoast('截止日期必须大于等于今天')
+						return
+					}
+					var obj=this.createExpirationDate()
+					// console.log(obj)
+					years=obj.years
+				}
+				
+				// console.log(year,month,day)
+				// 未传截止日期设置起始年份和终止年份
+				if(JSON.stringify(this.endDate)=='{}'){
+					for (let i = this.startYear; i <= currectyear + this.futureYear; i++) {
+						years.push(i);
+					}
+				}
+				// console.log(years,2222222)
+				this.years=years
+			},
+			createExpirationDate(){
+				let years = [],months = [];
+				if(this.dateStatus==1){
+					years = ['长期'];
+					months = [''];
+				}
+				if(this.dateStatus==2){
+					years = ['随时'];
+					months = [''];
+				}
+				var year=this.checkYear?this.checkYear:this.year?this.year:new Date().getFullYear()
+				if(this.dateStatus==0&&year=='长期'||this.dateStatus==0&&year=='随时'){
+					this.showtoast('当前日期选择器未带长期和随时选项,请修改当前类型')
+					return
+				}
+				for (let i = this.startYear; i <= this.endDate.year; i++) {
+					years.push(i);
+				}
+				
+				if(year==this.endDate.year&&this.endDate.month){
+					if(year!='长期'||year!='随时'){
+						for (let i = 1; i <= this.endDate.month; i++) {
+							months.push(i);
+						}
+					}
+				}
+				if(year!=this.endDate.year){
+					for (let i = 1; i <= 12; i++) {
+						months.push(i);
+					}
+				}
+				return {years,months}
+			},
+			showtoast(content){
+				// #ifdef APP-PLUS
+				plus.nativeUI.toast(`<font style=\"font-size:15px;margin:20px;\" color="#f56c6c">&nbsp&nbsp&nbsp&nbsp${content?content:this.overdueContent}!&nbsp&nbsp&nbsp&nbsp</font>`, {
+					icon : "icon URL",// eg. "/img/add.png"
+					duration : "long",// 持续3.5s,short---2s
+					align : "center",// 水平居中
+					verticalAlign : "center",// 垂直底部
+					background:'#FEF0F0',
+					type: "richtext",
+				})
+				// #endif
+				// #ifdef H5
+				uni.showToast({
+					title: (content?content:this.overdueContent)+'!',
+					icon:'none',
+					duration: 2000
+				});
+				// #endif
+			},
+			setValue(){
+				var val=[]
+				console.log(this.days)
+				for (let i = 0; i < this.years.length; i++) {
+					if(this.year==this.years[i]){
+						val[0]=i
+					}
+				}
+				for (let i = 0; i < this.months.length; i++) {
+					if(Number(this.month)==this.months[i]){
+						val[1]=i
+					}
+				}
+				for (let i = 0; i < this.days.length; i++) {
+					if(Number(this.day)==this.days[i]){
+						val[2]=i
+					}
+				}
+				return val
+			},
+			// 选中日期
+			dateConfirm() {
+				if(this.month==''&&this.year!='长期'&&this.month==''&&this.year!='随时'){
+					this.showtoast('未选择月份')
+					return
+				}
+				if(this.day==''&&this.year!='长期'&&this.day==''&&this.year!='随时'){
+					this.showtoast('未选择日期')
+					return
+				}
+				if(this.periodOfValidity&&this.year!='长期'&&this.periodOfValidity&&this.year!='随时'){
+					const date=new Date()
+					const currectyear = date.getFullYear()
+					const currectmonth = date.getMonth() + 1
+					const currectday = date.getDate()
+					if(this.year<currectyear){
+						this.showtoast()
+						return
+					}
+					if(this.year==currectyear&&this.month<currectmonth){
+						this.showtoast()
+						return
+					}
+					if(this.year==currectyear&&this.month==currectmonth&&this.day<=currectday){
+						this.showtoast()
+						return
+					}
+				}
+				let dateobj={
+					year:this.year,
+					month:this.month?this.month > 9 ? this.month : '0' + this.month:'',
+					day:this.day?this.day > 9 ? this.day :'0' + this.day:'',
+					date:''
+				}
+				if(this.year!='长期'&&this.year!='随时'){
+					this.value=this.setValue()
+					 dateobj.date= this.year + '-' + (this.month > 9 ? this.month : '0' + this.month) + '-' + (this.day > 9 ? this.day :
+					'0' + this.day);
+				}else{
+					this.value=[0,0,0]
+					dateobj.date = this.year
+				}
+				
+				// 发送一个点击事件,并把当前选中的日期发送出去
+				
+				this.$emit('dateConfirm', dateobj);
+				this.hide();
+				
+			},
+
+			bindChange(e) {
+				const date = new Date();
+				const year = date.getFullYear()
+				const month = date.getMonth() + 1
+				const day = date.getDate()
+				// console.log(this.value,e)
+				
+				const val = e.detail.value;
+				this.year = this.years[val[0]];
+				this.month = this.months[val[1]];
+				this.day = this.days[val[2]];
+				
+				// this.value=[this.year, this.month, this.day]
+			},
+
+			// 弹出
+			show() {
+				this.isShow = true;
+				this.$nextTick(() => {
+					setTimeout(() => {
+						this.isOpen = true;
+					}, 20);
+				});
+			},
+
+			// 关闭
+			hide() {
+				this.isOpen = false;
+				setTimeout(() => {
+					this.isShow = false;
+				}, 200);
+			},
+
+			// 阻止冒泡
+			handleClick(event) {
+				event.stopPropagation();
+			}
+		},
+		watch: {
+			"checkYear":{
+				handler(val){
+					// console.log(val)
+					this.checkYear=val
+					this.year=val
+					this.$nextTick(() => {
+						setTimeout(() => {
+							if(val=='长期'||val=='随时'){
+								this.value=[0,0,0]
+							}
+						}, 500);
+					})
+				}
+			},
+			'dateStatus':{
+				handler(val){
+					this.dateStatus=val
+					this.setYearList()
+					// console.log(this.years,3333333)
+				},
+				deep: true,
+				immediate: true
+			},
+			"endDate":{
+				handler(val){
+					this.endDate=val
+				},
+				deep: true,
+				immediate: true
+			},
+			"checkMonth":{
+				handler(val){
+					this.checkMonth=val
+					this.month=val
+					this.$nextTick(() => {
+						setTimeout(() => {
+							// console.log(this.month,this.day,this.days)
+							if(val!='长期'&&val!='随时'){
+								this.value=this.setValue()
+								// console.log(this.value)
+							}
+						}, 500);
+					})
+					// this.$nextTick(() => {
+					// 	setTimeout(() => {
+					// 		if(val!='长期'&&val!='随时'){
+					// 			this.value=this.setValue()
+					// 			// console.log(this.value)
+					// 		}else{
+					// 			this.value=[0,0,0]
+					// 		}
+					// 	}, 350);
+					// })
+				}
+			},
+			"checkDay":{
+				handler(val){
+					console.log(val,333333)
+					this.checkDay=val
+					this.day=val
+					// this.$nextTick(() => {
+					// 	setTimeout(() => {
+					// 		if(val!='长期'&&val!='随时'){
+					// 			this.value=this.setValue()
+					// 			// console.log(this.value)
+					// 		}else{
+					// 			this.value=[0,0,0]
+					// 		}
+					// 	}, 350);
+					// })
+				}
+			},
+			"month": { // 监听月份变化,改变当前月份天数值 
+				handler(val) {
+					console.log(this.endDate)
+					if (val < 8&&this.year!='长期'&&val < 8&&this.year!='随时') {
+						if (val % 2 !== 0) {
+							this.days = [''];
+							if(this.endDate.day&&val===this.endDate.month&&this.year===this.endDate.year){
+								for (let i = 1; i <= this.endDate.day; i++) {
+									this.days.push(i);
+								}
+							}else{
+								for (let i = 1; i <= 31; i++) {
+									this.days.push(i);
+								}
+							}
+						} else {
+							this.days = [''];
+							if(this.endDate.day&&val===this.endDate.month&&this.year===this.endDate.year){
+								for (let i = 1; i <= this.endDate.day; i++) {
+									this.days.push(i);
+								}
+							}else{
+								for (let i = 1; i <= 30; i++) {
+									this.days.push(i);
+								}
+							}
+						}
+					}
+					if (val > 7&&this.year!='长期'&&val > 7&&this.year!='随时') {
+						if (val % 2 === 0) {
+							this.days = [''];
+							if(this.endDate.day&&val===this.endDate.month&&this.year===this.endDate.year){
+								for (let i = 1; i <= this.endDate.day; i++) {
+									this.days.push(i);
+								}
+							}else{
+								for (let i = 1; i <= 31; i++) {
+									this.days.push(i);
+								}
+							}
+						} else {
+							this.days = [''];
+							if(this.endDate.day&&val===this.endDate.month&&this.year===this.endDate.year){
+								for (let i = 1; i <= this.endDate.day; i++) {
+									this.days.push(i);
+								}
+							}else{
+								for (let i = 1; i <= 30; i++) {
+									this.days.push(i);
+								}
+							}
+						}
+					}
+					if (val === 2&&this.year!='长期'&&val === 2&&this.year!='随时') {
+						if (this.year % 4 === 0) {
+							this.days = [''];
+							if(this.endDate.day&&val===this.endDate.month&&this.year===this.endDate.year){
+								for (let i = 1; i <= this.endDate.day; i++) {
+									this.days.push(i);
+								}
+							}else{
+								for (let i = 1; i <= 29; i++) {
+									this.days.push(i);
+								}
+							}
+						} else {
+							this.days = [''];
+							if(this.endDate.day&&val===this.endDate.month&&this.year===this.endDate.year){
+								for (let i = 1; i <= this.endDate.day; i++) {
+									this.days.push(i);
+								}
+							}else{
+								for (let i = 1; i <= 28; i++) {
+									this.days.push(i);
+								}
+							}
+						}
+					}
+				},
+				deep: true,
+				immediate: true
+			},
+			"year": { // 监听年份变化,处理2月份天数变化
+				handler(val) {
+					if(val=='长期'||val=='随时'){
+						this.months=[''];
+						this.days = [''];
+					}else{
+						const months = [''];
+						// console.log(this.endDate)
+						if(this.endDate.year&&val===this.endDate.year&&this.endDate.month){
+							for (let i = 1; i <= this.endDate.month; i++) {
+								months.push(i);
+							}
+						}else{
+							for (let i = 1; i <= 12; i++) {
+								months.push(i);
+							}
+						}
+						
+						this.months=months
+						if (val % 4 === 0) {
+							if (this.month === 2) {
+								this.days = [''];
+								if(this.endDate.year&&val===this.endDate.year&&this.endDate.month&&this.endDate.month===this.month&&this.endDate.day){
+									for (let i = 1; i <= this.endDate.day; i++) {
+										this.days.push(i);
+									}
+								}else{
+									for (let i = 1; i <= 29; i++) {
+										this.days.push(i);
+									}
+								}
+							}
+						} else {
+							if (this.month === 2) {
+								this.days = [''];
+								if(this.endDate.year&&val===this.endDate.year&&this.endDate.month&&this.endDate.month===this.month&&this.endDate.day){
+									for (let i = 1; i <= this.endDate.day; i++) {
+										this.days.push(i);
+									}
+								}else{
+									for (let i = 1; i <= 28; i++) {
+										this.days.push(i);
+									}
+								}
+							}
+						}
+					}
+					
+				}
+			},
+			deep: true,
+			immediate: true
+		}
+	}
+</script>
+
+<style lang="scss">
+	.date-picker-mask {
+		position: fixed;
+		left: 0;
+		right: 0;
+		top: 0;
+		bottom: 0;
+		z-index: 99988;
+	}
+
+	.date-picker-container {
+		position: fixed;
+		left: 0;
+		right: 0;
+		bottom: 0;
+		z-index: 99999;
+		background-color: #FFFFFF;
+	}
+
+	.show-date-picker-mask {
+		transition-property: opacity;
+		transition-duration: 0.2s;
+		transition-timing-function: ease;
+		opacity: 1;
+	}
+
+	.hide-date-picekr-mask {
+		transition-property: opacity;
+		transition-duration: 0.2s;
+		transition-timing-function: ease;
+		opacity: 0;
+	}
+
+	.show-date-picker {
+		transition-property: transform, opacity;
+		transition-duration: 0.2s;
+		transition-timing-function: ease;
+		transform: translateY(0);
+		opacity: 1;
+		/* #ifndef APP-PLUS-NVUE */
+		-moz-transition-property: transform, opacity;
+		-webkit-transition-property: transform, opacity;
+		-o-transition-property: transform, opacity;
+
+		-moz-transition-duration: 0.2s;
+		-webkit-transition-duration: 0.2s;
+		-webkit-transition-duration: 0.2s;
+
+		-moz-transition-timing-function: ease;
+		-webkit-transition-timing-function: ease;
+		-o-transition-timing-function: ease;
+
+		-moz-transform: translateY(0);
+		-webkit-transform: translateY(0);
+		-o-transform: translateY(0);
+		/* #endif */
+	}
+
+	.hide-date-picekr {
+		transition-property: transform, opacity;
+		transition-duration: 0.2s;
+		transition-timing-function: ease;
+		transform: translateY(500px);
+		opacity: 1;
+		/* #ifndef APP-PLUS-NVUE */
+		-moz-transition-property: transform, opacity;
+		-webkit-transition-property: transform, opacity;
+		-o-transition-property: transform, opacity;
+
+		-moz-transition-duration: 0.2s;
+		-webkit-transition-duration: 0.2s;
+		-webkit-transition-duration: 0.2s;
+
+		-moz-transition-timing-function: ease;
+		-webkit-transition-timing-function: ease;
+		-o-transition-timing-function: ease;
+
+		-moz-transform: translateY(500px);
+		-webkit-transform: translateY(500px);
+		-o-transform: translateY(500px);
+		/* #endif */
+	}
+
+	// 确定、取消
+	.date-picker-title {
+		height: 100rpx;
+		padding: 0 20rpx;
+		// box-shadow: 0 1rpx 1rpx #e4e4e4;
+	}
+
+	.date-picker-confirm {
+		padding: 10rpx 30rpx;
+		font-size: 32rpx;
+		color: #007AFF;
+	}
+
+	.date-picker-cancel {
+		padding: 10rpx 30rpx;
+		font-size: 32rpx;
+		// color: red;
+	}
+
+	// 内容
+	.date-picker-box {
+		width: 750rpx;
+		height: 500rpx;
+		padding: 0 20rpx;
+		/* #ifndef APP-PLUS-NVUE */
+		box-sizing: border-box;
+		/* #endif */
+		background-color: #FFF;
+	}
+
+	.date-picker-item {
+		height: 100rpx;
+	}
+
+	// flex
+	.row {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		flex-direction: row;
+
+	}
+
+	.center {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		justify-content: center;
+		align-items: center;
+	}
+
+	.between-center {
+		justify-content: space-between;
+		align-items: center;
+	}
+</style>

+ 140 - 0
components/xbd-maptrack/xbd-maptrack.vue

@@ -0,0 +1,140 @@
+<template>
+	<view class="content">
+		<map
+			style="width: 100%; height: 100%;position: fixed;"
+			:markers="covers"
+			:polyline="polyline"
+			:include-points="covers"
+			@markertap="showRoute"
+			id="myMap"
+			show-location
+		></map>
+		<slider :value="progress" @change="sliderChange" @changing="trackState = 2" activeColor="#FFD090" block-color="#D65600" />
+		<view class="fn">
+			<button @tap="trackState = trackState == 1 ? 2 : 1">{{ ['开始', '暂停', '继续'][trackState] }}</button>
+			<button @tap="trackState = 0">终止</button>
+		</view>
+	</view>
+</template>
+
+<script>
+export default {
+	name: 'xbdMaptrack',
+	props: ['isauto', 'covers', 'polyline'], //是否自动播放和轨迹数据
+	data() {
+		return {
+			trackLength: 0, //轨迹长度
+			trackkey: 0, //轨迹点
+			progress: 0, // 进度条
+			mapContext: '',
+			terval: false, //计时器
+			trackState: 0 //轨迹播放状态 0未开始 1播放 2暂停
+		};
+	},
+	watch: {
+		trackState(k) {
+			//监听播放状态改变
+			if (k == 1 && !this.terval) return this.trackplay();
+			clearInterval(this.terval);
+			this.terval = false;
+			//进度停止时返回当前轨迹的key值与坐标值
+			this.$emit('getStopTrack',{key:this.trackkey,track:this.polyline[0].points[this.trackkey]})
+			if (k !== 0) return;
+			this.trackkey = 0;
+			this.progress = 0;
+			this.trackMove();
+		},
+	},
+	created() {
+		this.mapContext = uni.createMapContext('myMap', this);
+		setTimeout(() => {
+			//mapContext 创建后延时设置定位
+			this.trackLength = this.polyline[0].points.length - 1;
+			this.mapContext.moveToLocation(this.covers[0]);
+			if (this.isauto) this.trackState = 1;
+		}, 888);
+	},
+	methods: {
+		/**
+		 * 轨迹播放方法
+		 * @param {number} s = 10 控制移动速度
+		 *
+		 * */
+		trackplay(s = 10) {
+			this.terval = setInterval(() => {
+				this.trackkey++;
+				if (this.trackkey >= this.trackLength) {
+					clearInterval(this.terval);
+					this.trackState = 0;
+					this.trackkey = 0;
+					this.terval = false;
+				}
+				this.progress = ((this.trackkey * 100) / this.trackLength).toFixed(1);
+				this.trackMove();
+			}, s);
+		},
+		/**
+		 * 轨迹移动方法
+		 * @param {number} markerId = 2  指定 marker的id
+		 * @param {object} destination ={latitude,longitude} 指定 marker 移动到的目标点
+		 * @param {number} duration = 100 动画持续时长
+		 * @param {void} animationEnd = ()=>{} 轨迹动画完成后回调
+		 * @param {void} fail 轨迹回放失败回调
+		 *
+		 * */
+		trackMove(markerId = 2, destination = this.polyline[0].points[this.trackkey], duration = 100, animationEnd = () => {}, fail = e => console.log('轨迹回放失败', e)) {
+			this.mapContext.translateMarker({
+				markerId,
+				destination,
+				duration,
+				animationEnd,
+				fail
+			});
+		},
+		//进度条改变了调用方法
+		sliderChange(e) {
+			this.trackkey = ((e.detail.value / 100) * this.trackLength).toFixed(0);
+			//进度条改变时返回当前轨迹的key值与坐标值
+			this.$emit('getStopTrack',{key:this.trackkey,track:this.polyline[0].points[this.trackkey]})
+		}
+	}
+};
+</script>
+
+<style>
+.content {
+	display: flex;
+	flex-direction: column;
+	align-items: center;
+	justify-content: center;
+}
+
+.logo {
+	height: 200rpx;
+	width: 200rpx;
+	margin-top: 200rpx;
+	margin-left: auto;
+	margin-right: auto;
+	margin-bottom: 50rpx;
+}
+
+.text-area {
+	display: flex;
+	justify-content: center;
+}
+.fn {
+	position: fixed;
+	bottom: 22%;
+	text-align: center;
+	z-index: 100;
+}
+.title {
+	font-size: 36rpx;
+	color: #8f8f94;
+}
+slider {
+	width: 88%;
+	height: 12px;
+	margin-left: 2.5%;
+}
+</style>

+ 2 - 2
config/index.js

@@ -1,7 +1,7 @@
 const dev = {
-	baseUrlNew: 'https://api.changyuntong56.com',
+	// baseUrlNew: 'https://api.changyuntong56.com',
 	// baseUrlNew: 'https://apitest.changyuntong56.com',
-	// baseUrlNew: 'http://192.168.110.9:8099',
+	baseUrlNew: 'http://192.168.110.9:8099',
 	// baseUrlNew: 'https://apitest.eliangeyun.com',
 	// baseUrlNew: 'http://192.168.110.67:8999/',
 	h5Appid: 'wxb66b599f7f61b46f',

+ 6 - 6
package.json

@@ -1,11 +1,11 @@
 {
-    "id": "xbd-maptrack",
-    "name": "地图轨迹播放组件",
+    "id": "cuixinyu-trajectory",
+    "name": "高德轨迹回放nvue版本",
     "version": "1.0.0",
-    "description": "调用地图和滑动组件及uni.createMapContext(mapId,this)的简单地图轨迹播放组件",
+    "description": "高德轨迹回放nvue版本",
     "keywords": [
-        "地图",
-        "轨迹",
-        "地图轨迹播放"
+        "高德",
+        "轨迹回放",
+        "nvue"
     ]
 }

+ 24 - 47
pages.json

@@ -176,21 +176,7 @@
 				"enablePullDownRefresh": false
 			}
 
-		}, {
-			"path": "pages/mine/driverCertification",
-			"style": {
-				"navigationBarTitleText": "司机认证",
-				"enablePullDownRefresh": false
-			}
-
-		}, {
-			"path": "pages/mine/driverCertificationNext",
-			"style": {
-				"navigationBarTitleText": "司机认证",
-				"enablePullDownRefresh": false
-			}
-
-		}, {
+		},{
 			"path": "pages/mine/helpDescription",
 			"style": {
 				"navigationBarTitleText": "操作说明",
@@ -386,20 +372,7 @@
 				"enablePullDownRefresh": false
 			}
 
-		}, {
-			"path": "pages/mine/company/addcompanytwo",
-			"style": {
-				"navigationStyle": "custom"
-			}
-
-		}, {
-			"path": "pages/mine/company/addcompanythree",
-			"style": {
-				"navigationBarTitleText": "视频认证",
-				"enablePullDownRefresh": false
-			}
-
-		}, {
+		},{
 			"path": "pages/mine/company/companyvideo",
 			"style": {
 				"navigationBarTitleText": "视频认证",
@@ -413,24 +386,6 @@
 				"enablePullDownRefresh": false
 			}
 
-		}, {
-			"path": "pages/mine/company/editcompanytwo",
-			"style": {
-				"navigationStyle": "custom"
-			}
-
-		}, {
-			"path": "pages/mine/company/editcompanythree",
-			"style": {
-				"navigationStyle": "custom"
-			}
-
-		}, {
-			"path": "pages/mine/company/editcompanyvideo",
-			"style": {
-				"navigationStyle": "custom"
-			}
-
 		}, {
 			"path": "pages/mine/cargoowner/selectcompany",
 			"style": {
@@ -457,6 +412,10 @@
 			"style": {
 				"navigationBarTitleText": "地址簿",
 				"enablePullDownRefresh": false
+				// "app-plus":{ 
+				//                     // 将回弹属性关掉
+				//                     "bounce":"none"
+				//                 }
 			}
 
 		}, {
@@ -625,6 +584,24 @@
             }
             
         }
+        ,{
+            "path" : "pages/public/serviceAgreement/serviceAgreement",
+            "style" :                                                                                    
+            {
+                "navigationBarTitleText": "服务协议",
+                "enablePullDownRefresh": false
+            }
+            
+        }
+        ,{
+            "path" : "pages/public/cytScrectAgreement/cytScrectAgreement",
+            "style" :                                                                                    
+            {
+                "navigationBarTitleText": "隐私声明",
+                "enablePullDownRefresh": false
+            }
+            
+        }
     ],
 	"globalStyle": {
 		"navigationBarTextStyle": "black",

+ 20 - 4
pages/carSource/driverSee.vue

@@ -68,7 +68,7 @@
 			<mescroll-body ref="mescrollRef" @init="mescrollInit" @down="downCallback" @up="upCallback"
 				class="mescroll">
 				<view class="flex flex-space-between">
-					<view :class="haoType == '' ? 'btn-active':'btn'" @click="btnChange('')">全部({{ping.haoPing+ping.chaPing}})</view>
+					<view :class="haoType == '' ? 'btn-active':'btn'" @click="btnChange('')">全部({{total}})</view>
 					<!-- <view :class="btnData == 2 ? 'btn-active':'btn'" @click="btnChange(2)">最新(1)</view> -->
 					<view :class="haoType == 1 ? 'btn-active':'btn'" @click="btnChange(1)">好评({{ping.haoPing}})</view>
 					<view :class="haoType == 2 ? 'btn-active':'btn'" @click="btnChange(2)">差评({{ping.chaPing}})</view>
@@ -136,6 +136,7 @@
 	import {
 		mapState
 	} from 'vuex';
+	import permision from "@/js_sdk/wa-permission/permission.js"
 	import start from '../../common/components/uni-rate.vue'
 	import MescrollMixin from "@/uni_modules/mescroll-uni/components/mescroll-uni/mescroll-mixins.js";
 	export default {
@@ -175,6 +176,7 @@
 			this.show = true
 		},
 		onLoad(options) {
+			this.get_camera_permission()
 			this.commonId=options.commonId
 			console.log(options )
 			// this.dataObj =JSON.parse(options.driver) 
@@ -190,6 +192,23 @@
 			...mapState(['hasLogin', 'userInfo', 'firstAuthentication'])
 		},
 		methods: {
+			async get_camera_permission() {
+				var phone = await permision.requestAndroidPermission("android.permission.CALL_PHONE")
+				if (phone == false) {
+					uni.showModal({
+						title: '提示',
+						content: '您已经关闭拨打电话权限,去设置',
+						success: function(res) {
+							if (res.confirm) {
+								permision.gotoAppPermissionSetting()
+								// plus.runtime.openURL("app-settings:");
+							} else if (res.cancel) {
+								console.log('用户点击取消');
+							}
+						}
+					});
+				}
+			},
 			confirmBtn(e) {
 				console.log(this.driverList)
 				if (e.value == '投诉') {
@@ -240,7 +259,6 @@
 				this.tabIndex = index
 			},
 			btnChange(num) {
-				// debugger
 				this.haoType = num
 				this.upCallback({size:10,num:1})
 				// this.getList()
@@ -308,8 +326,6 @@
 				
 			},
 			// getList() {
-
-			// 		debugger
 			// 	this.$request.baseRequest('get', '/orderInfo/selectHaoPing', {
 			// 			commonId: this.userInfo.id,
 			// 			haoType:''

+ 6 - 41
pages/carSource/index.vue

@@ -131,8 +131,7 @@
 			</view> -->
 		</view>
 		<u-toast ref="uToast"></u-toast>
-		<u-modal :show="isShowAlert" :title="alertTitle" :closeOnClickOverlay='true' :showCancelButton='true'
-			confirmColor='#2772FB' @confirm="$u.throttle(confirmClick(), 5000)" @close="cancelClick" @cancel="cancelClick"></u-modal>
+		
 		<u-modal :show="tipsShow" :content='tipsText' :confirmText="btnTips" @confirm="$u.throttle(authentication(), 5000)"></u-modal>
 	</view>
 </template>
@@ -229,7 +228,7 @@
 				})
 			},
 			checking() {
-				this.statusVal = uni.getStorageSync("firstAuthentication").authenticationStatus
+				this.statusVal = uni.getStorageSync("firstAuthentication").passOnce
 				if(!uni.getStorageSync("firstAuthentication")&&!uni.getStorageSync("userInfo")) { //判断有没有登录
 					this.tipsShow = true
 					this.tipsText = "您尚未登录,请前去登录!"
@@ -285,16 +284,12 @@
 			},
 			authentication() {
 				this.tipsShow = false
-				if (this.statusVal == '未认证') {
-					this.$u.route("/pages/mine/driverCertification")
-				} else if (this.statusVal == '未通过') {
-					this.$u.route("/pages/mine/editDriverCertification")
-				} else if (this.statusVal == '审核中') {
+				if (this.statusVal == 0)  {
 					// this.$u.route("")
 					uni.switchTab({
 						url: '/pages/mine/index'
 					});
-				} else {
+				} else if (!this.hasLogin) {
 					uni.$u.route('/pages/public/login');
 				}
 			},
@@ -383,14 +378,7 @@
 				uni.setStorageSync("fleetLocation", this.fleetLocation)
 				this.getList()
 			},
-			joinFleet(item) {
-				this.addMember.commonId = this.commonId
-				this.addMember.driverNickname = uni.getStorageSync("firstAuthentication").driverCall
-				this.addMember.driverPortrait = uni.getStorageSync("userInfo").avatarUrl
-				this.addMember.fleetId = item.id
-				this.alertTitle = "确定申请加入该车队?"
-				this.isShowAlert = true
-			},
+
 			// addressChange(num) {
 			// 	if (num == 1) {
 			// 		this.show1 = true
@@ -400,30 +388,7 @@
 			// 		this.show2 = true
 			// 	}
 			// },
-			cancelClick() {
-				this.isShowAlert = false
-			},
-			confirmClick() {
-				this.isShowAlert = false
-				this.addMember.joinFlag = 1
-				this.$request.baseRequest('post', '/fleetMemberInfo/api/addFleetMemberInfo', this.addMember).then(res => {
-						if (res.code == '200') {
-							this.$refs.uToast.show({
-								type: 'success',
-								message: "申请成功,等待队长审核",
-							})
-							this.getList()
-						} else {
-							this.$refs.uToast.show({
-								type: 'success',
-								message: "申请失败,请稍后重试",
-							})
-						}
-					})
-					.catch(res => {
-						uni.$u.toast(res.message);
-					});
-			},
+			
 			getList() {
 				this.status = 'loading';
 				if (this.indexbtn == 1) {

+ 8 - 65
pages/mine/cargoowner/addEnerprise.vue

@@ -70,10 +70,10 @@
 					</view>
 				</view>
 			</view>
-			<u-picker :show="isdate" ref="uPicker" :columns="validityPeriod" @confirm="confirmValidityPeriod"
+			<!-- <u-picker :show="isdate" ref="uPicker" :columns="validityPeriod" @confirm="confirmValidityPeriod"
 				@change="changeHandler" @cancel="isdate=false">
-			</u-picker>
-
+			</u-picker> -->
+			<itmister-date-picker :overdueContent="'授权已过期'" :dateStatus="1" :periodOfValidity="true" :futureYear="30"  ref="dateAuthorization"  @dateConfirm="confirmValidityPeriod"></itmister-date-picker>
 		</view>
 		<u-toast ref="uToast"></u-toast>
 		<u-action-sheet :actions="$helper.imgTypeList" :title="$helper.imgType" :show="isShowimgType"
@@ -93,6 +93,7 @@
 				提交
 			</view>
 		</view>
+		
 		<u-picker :show="formWorkShow" @cancel="formWorkShow = false" @close="formWorkShow = false"
 			:columns="formWorkColumns" @confirm="formWorkSubmit"></u-picker>
 	</view>
@@ -142,7 +143,6 @@
 			if (uni.getStorageSync('cargoOwnerId')) {
 				this.dataDetails.cargoOwnerId = uni.getStorageSync('cargoOwnerId')
 			}
-			this.validityPeriod = this.$helper.makeValidityPeriod(0, '长期')
 			// this.getList()
 		},
 		onShow() {
@@ -280,70 +280,14 @@
 				this.checked = !this.checked
 			},
 			selectdate() {
-				this.isdate = true
+				this.$refs.dateAuthorization.show();
+				
 			},
 			selectshow() {
 				this.goDetailPage('/pages/mine/cargoowner/selectcompany')
 			},
-			confirmValidityPeriod(e) {
-				console.log('confirm', e)
-				if (e.value[0] == '长期') {
-					if(e.value[1]||e.value[2]){
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "选择长期时不允许选择月日!",
-						})
-						return
-					}
-					this.dataDetails.authorizationDeadline = e.value[0]
-					
-				} else {
-					if (e.value[0] == '') {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "年份不能为空!",
-						})
-						return
-					} else if (e.value[1] == '') {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "月份不能为空!",
-						})
-						return
-					} else if (e.value[2] == '') {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "日期不能为空!",
-						})
-						return
-					}
-					var date = new Date()
-					if (e.value[0] < date.getFullYear()) {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "授权已过期!",
-						})
-						return
-					}
-					if (e.value[0] == date.getFullYear() && Number(e.value[1]) < (date.getMonth() + 1)) {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "授权已过期!",
-						})
-						return
-					}
-					if (e.value[0] == date.getFullYear() && Number(e.value[1]) == (date.getMonth() + 1) && Number(e.value[
-							2]) <= (date.getDate())) {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "授权已过期!",
-						})
-						return
-					}
-					this.dataDetails.authorizationDeadline = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-				}
-
-				this.isdate = false
+			confirmValidityPeriod(date) {
+				this.dataDetails.authorizationDeadline = date.date
 			},
 			goDetailPage(src) {
 				uni.setStorage({
@@ -439,7 +383,6 @@
 				// 	title: '加载中',
 				// 	mask: true
 				// })
-				// debugger
 				var _this = this
 				this.dataDetails.commonId = this.userInfo.id
 				this.dataDetails.certificateAddressUrl = this.urlList

+ 4 - 4
pages/mine/cargoowner/cargoowner.vue

@@ -211,10 +211,10 @@
 							duration: 2000
 						})
 					});
-				uni.showLoading({
-					title: '加载中',
-					mask: true
-				})
+				// uni.showLoading({
+				// 	title: '加载中',
+				// 	mask: true
+				// })
 				// this.$request.baseRequest('get', '/cargoOwnerCompInfo/api/addCargoOwnerComp',{commonId:this.userInfo.id} ).then(res => {
 				// 	uni.hideLoading()
 				// 	if(res.data){

+ 18 - 63
pages/mine/cargoowner/editEnerprise.vue

@@ -70,9 +70,10 @@
 					</view>
 				</view>
 			</view>
-			<u-picker :show="isdate" ref="uPicker" :columns="validityPeriod" @confirm="confirmValidityPeriod"
+			<!-- <u-picker :show="isdate" ref="uPicker" :columns="validityPeriod" @confirm="confirmValidityPeriod"
 				@change="changeHandler" @cancel="isdate=false">
-			</u-picker>
+			</u-picker> -->
+			<itmister-date-picker :overdueContent="'授权已过期'" :dateStatus="1" :checkYear="year" :checkMonth="month" :periodOfValidity="true" :futureYear="30"  ref="dateAuthorization"  @dateConfirm="confirmValidityPeriod"></itmister-date-picker>
 
 		</view>
 		<u-action-sheet :actions="$helper.imgTypeList" :title="$helper.imgType" :show="isShowimgType"
@@ -116,6 +117,9 @@
 				isshow: false,
 				isdate: false,
 				checked: false,
+				year:'',
+				month:'',
+				day:'',
 				validityPeriod: [],
 				isShowimgType: false,
 				uploadType: '',
@@ -136,10 +140,18 @@
 			if (uni.getStorageSync('cargoOwnerId')) {
 				this.dataDetails.cargoOwnerId = uni.getStorageSync('cargoOwnerId')
 			}
-			this.validityPeriod = this.$helper.makeValidityPeriod(0, '长期')
 			// this.getList()
 
 			this.dataDetails = options
+			if(this.dataDetails.authorizationDeadline&&this.dataDetails.authorizationDeadline!='长期'){
+				const arr=this.dataDetails.authorizationDeadline.split('-')
+				this.year=arr[0]
+				this.month=arr[1]
+				this.day=arr[2]
+			}
+			if(this.dataDetails.authorizationDeadline=='长期'){
+				this.year='长期'
+			}
 			if (this.dataDetails.legalPersonName.length == 2) {
 				this.dataDetails.legalPersonName1 = this.dataDetails.legalPersonName.toString().replace(
 					/^([^\x00-\xff])([^\x00-\xff]{0,})([^\x00-\xff])/g, '$1*')
@@ -153,7 +165,6 @@
 
 			console.log(this.dataDetails)
 			if (options.certificateAddressUrl) {
-				debugger
 				this.urlList = options.certificateAddressUrl
 				this.fileList1 = []
 				this.fileList1.push({
@@ -267,69 +278,13 @@
 				this.checked = !this.checked
 			},
 			selectdate() {
-				this.isdate = true
+				this.$refs.dateAuthorization.show();
 			},
 			selectshow() {
 				this.goDetailPage('/pages/mine/cargoowner/selectcompany')
 			},
-			confirmValidityPeriod(e) {
-				console.log('confirm', e)
-				if (e.value[0] == '长期') {
-					if(e.value[1]||e.value[2]){
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "选择长期时不允许选择月日!",
-						})
-						return
-					}
-					this.dataDetails.authorizationDeadline = e.value[0]
-				} else {
-					if (e.value[0] == '') {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "年份不能为空!",
-						})
-						return
-					} else if (e.value[1] == '') {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "月份不能为空!",
-						})
-						return
-					} else if (e.value[2] == '') {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "日期不能为空!",
-						})
-						return
-					}
-					var date = new Date()
-					if (e.value[0] < date.getFullYear()) {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "授权已过期!",
-						})
-						return
-					}
-					if (e.value[0] == date.getFullYear() && Number(e.value[1]) < (date.getMonth() + 1)) {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "授权已过期!",
-						})
-						return
-					}
-					if (e.value[0] == date.getFullYear() && Number(e.value[1]) == (date.getMonth() + 1) && Number(e.value[
-							2]) <= (date.getDate())) {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "授权已过期!",
-						})
-						return
-					}
-					this.dataDetails.authorizationDeadline = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-				}
-
-				this.isdate = false
+			confirmValidityPeriod(date) {
+				this.dataDetails.authorizationDeadline =date.date
 			},
 			goDetailPage(src) {
 				uni.setStorage({

+ 37 - 68
pages/mine/cargoowner/editpersonalinformation.vue

@@ -82,15 +82,12 @@
 					<view :style="{'color':dataDetails.cardValidityDate ? '#000':'#C6CBD5'}">
 						{{dataDetails.cardValidityDate?dataDetails.cardValidityDate:'选择身份证截止日期'}}
 					</view>
-					<view>
-						<u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon>
-					</view>
+					<image class='right' src="@/static/mine/right.png" mode=""></image>
+					<!-- <u-icon name="arrow-right" color="#7E7E7E" size="16"></u-icon> -->
 				</view>
 			</view>
 			<view class="bz">注:个人信息审核通过后自动认证成为个人货主。</view>
-			<u-picker :show="isShowcardValidity" ref="uPicker" :columns="validityPeriod"
-				@confirm="confirmValidityPeriod" @change="changeHandler" @cancel="isShowcardValidity=false">
-			</u-picker>
+			<itmister-date-picker :overdueContent="'身份证已过期'" :dateStatus="1" :periodOfValidity="true" :futureYear="30" :checkYear="year" :checkMonth="month" :checkDay="day" ref="dateValidityPeriod"  @dateConfirm="confirmValidityPeriod"></itmister-date-picker>
 		</view>
 
 		<view class="content4">
@@ -145,6 +142,9 @@
 						disabled: false
 					},
 				],
+				year:'',
+				month:'',
+				day:'',
 				uploadType: '',
 				isShowimgType: false,
 				dataDetails: {
@@ -174,8 +174,16 @@
 			// console.log(options)
 			if(JSON.stringify(options) != "{}"){
 				this.dataDetails = options
+				if(this.dataDetails.cardValidityDate&&this.dataDetails.cardValidityDate!='长期'){
+					const arr=this.dataDetails.cardValidityDate.split('-')
+					this.year=arr[0]
+					this.month=arr[1]
+					this.day=arr[2]
+				}
+				if(this.dataDetails.cardValidityDate=='长期'){
+					this.year='长期'
+				}
 			}
-			this.validityPeriod = this.$helper.makeValidityPeriod(0, '长期')
 			this.dataDetails.phone = this.userInfo.phone
 			this.dataDetails.commonId = this.userInfo.id
 		},
@@ -223,7 +231,8 @@
 				this.checked = !this.checked
 			},
 			selectValidityPeriod() {
-				this.isShowcardValidity = true
+				this.$refs.dateValidityPeriod.show();
+				// this.isShowcardValidity = true
 			},
 			//设置图片
 			setImage(e) {
@@ -290,64 +299,8 @@
 				// 	}
 				// }
 			},
-			confirmValidityPeriod(e) {
-				console.log('confirm', e)
-				if (e.value[0] == '长期') {
-					if(e.value[1]!=''||e.value[2]!=''){
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "选择长期时不允许选择月日!",
-						})
-						return
-					}
-					this.dataDetails.cardValidityDate = e.value[0]
-					
-				} else {
-					if(e.value[0]==''){
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "年份不能为空!",
-						})
-						return
-					}else if(e.value[1]==''){
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "月份不能为空!",
-						})
-						return
-					}else if(e.value[2]==''){
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "日期不能为空!",
-						})
-						return
-					}
-					var date=new Date()
-					if(e.value[0]<date.getFullYear()){
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "身份证已过期!",
-						})
-						return
-					}
-					if(e.value[0]==date.getFullYear()&&Number(e.value[1])<(date.getMonth()+1)){
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "身份证已过期!",
-						})
-						return
-					}
-					if(e.value[0]==date.getFullYear()&&Number(e.value[1])==(date.getMonth()+1)&&Number(e.value[2])<=(date.getDate())){
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "身份证已过期!",
-						})
-						return
-					}
-					this.dataDetails.cardValidityDate = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-				}
-
-				this.isShowcardValidity = false
+			confirmValidityPeriod(date) {
+				this.dataDetails.cardValidityDate=date.date
 			},
 			uploadImg(type, index) {
 				this.uploadType = type
@@ -393,6 +346,17 @@
 					})
 					return true
 				}
+				
+				if(this.dataDetails.cardValidityDate!='长期'){
+					var arr=this.dataDetails.cardValidityDate.split('-')
+					if(!this.$helper.periodOfValidity(arr[0],arr[1],arr[2])){
+						this.$refs.uToast.show({
+							type: 'error',
+							message: "身份证已过期!",
+						})
+						return true
+					}
+				}
 				if (uni.$u.test.isEmpty(this.dataDetails.cardNumber)) {
 					this.$refs.uToast.show({
 						type: 'error',
@@ -496,7 +460,7 @@
 													personImg: result,
 													flag: 1
 												}).then(res => {
-												if(!that.dataDetails.id){
+												// if(!that.dataDetails.id){
 													if (res.data.recPersonNo) {
 														that.dataDetails.cardNumber = res.data.recPersonNo
 														if(that.dataDetails.cardNumber[16]%2==0){
@@ -509,7 +473,7 @@
 														that.dataDetails.name = res.data.recPerson
 														that.dataDetails.call=that.dataDetails.name[0]
 													}
-												}
+												// }
 												
 												
 												that.$forceUpdate()
@@ -748,4 +712,9 @@
 	.bz {
 		font-size: 28rpx;
 	}
+	.right{
+		width:16px;height:16px;
+		position:relative;
+		top:1px;
+	}
 </style>

+ 26 - 126
pages/mine/company/addcompany.vue

@@ -133,7 +133,6 @@
 						</image>
 					</view>
 				</view>
-
 			</view>
 			<view class="flex row border-bottom mt20 flex-space-between">
 				<view class="left-text">开户行</view>
@@ -156,7 +155,6 @@
 					</view>
 					<view @click="manualInput" class="type">手动输入</view>
 				</view>
-
 			</view>
 			<!-- 	<view class="flex row noborder">
 					<view class="left-text">身份证截止日期</view>
@@ -165,14 +163,14 @@
 					</view>
 				</view> -->
 		</view>
-		<view class='content3' v-if="!dataDetails.videoAddressUrl"
+		<!-- <view class='content3' v-if="!dataDetails.videoAddressUrl"
 			@click="goDetailPage('/pages/mine/company/companyvideo')">
 			<view class="left-text">视频验证(打开摄像头并阅读提示文字)</view>
 			<view class="video-icon">
 				<u-icon size="40" name="camera-fill"></u-icon>
 			</view>
-		</view>
-		<view class='content3' v-if="dataDetails.videoAddressUrl">
+		</view> -->
+		<!-- <view class='content3' v-if="dataDetails.videoAddressUrl">
 			<view class="flex row noborder mt20 flex-space-between">
 				<view class="left-text">视频验证(点击按钮播放视频)</view>
 				<view>
@@ -181,15 +179,12 @@
 					</u-button>
 				</view>
 			</view>
-			<!-- <video class="myVideo" :src="dataDetails.videoAddressUrl" controls></video> -->
 			<view>
 				<view class="video-icon">
 					<u-icon size="40" name="play-circle-fill" @click="videoShow()"></u-icon>
 				</view>
 			</view>
-
-		</view>
-
+		</view> -->
 		<view class='content3'>
 			<view class="flex row noborder flex-space-between">
 				<view class="left-text">申请开通平台垫付运费业务</view>
@@ -257,9 +252,7 @@
 			<!-- <view @click="goDetailPage('/pages/mine/company/addcompanythree')" class='newlyIncreased'>下一步</view> -->
 			<view @click="$u.throttle(submit(), 5000)" class='newlyIncreased'>提交</view>
 		</view>
-		<u-picker :show="isShowcardValidity" ref="uPicker" :columns="validityPeriod" @confirm="confirmValidityPeriod"
-			@change="changeHandler" @cancel="isShowcardValidity=false">
-		</u-picker>
+		<itmister-date-picker :overdueContent="overdueContent" :dateStatus="1" :periodOfValidity="true" :futureYear="30"  ref="dateValidityPeriod"  @dateConfirm="confirmValidityPeriod"></itmister-date-picker>
 		<u-picker :show="isShowBank" :columns="columns" :closeOnClickOverlay='true' @close='zhBankClose'
 			@cancel='zhBankClose' @confirm='confirmBank'></u-picker>
 		</u-picker>
@@ -292,6 +285,7 @@
 				value: false,
 				isShowBank: false,
 				columns: [],
+				overdueContent:'',
 				radioCustomStyle: {
 					margin: '0 0 0 20rpx'
 				},
@@ -305,7 +299,6 @@
 					},
 
 				],
-				isShowcardValidity: false,
 				uploadType: '',
 				index: '',
 				isShowimgType: false,
@@ -325,23 +318,18 @@
 					advanceFreightService: 0,
 					landOwnership: '自有',
 					videoAddressUrl: null,
-					legalPersonName: '',
 					corporateAccount: ''
 				},
 				dataType: ""
 			}
 		},
 		onShow() {
-			// debugger
-			console.log(uni.getStorageSync("videoSrc"))
 			var viderSrc = uni.getStorageSync("videoSrc")
 			if (viderSrc) {
 				this.dataDetails.videoAddressUrl = viderSrc
 			}
-
 		},
 		onLoad(options) {
-			// debugger
 			this.dataDetails.videoAddressUrl = options.videoSrc
 			// #ifdef APP-PLUS
 			this.get_camera_permission()
@@ -371,7 +359,12 @@
 			},
 			selectData(num) {
 				this.dataType = num
-				this.isShowcardValidity = true
+				if(num==0){
+					this.overdueContent='营业执照已过期'
+				}else if(num==1){
+					this.overdueContent='身份证已过期'
+				}
+				this.$refs.dateValidityPeriod.show()
 			},
 			zhBankClose() {
 				this.isShowBank = false
@@ -417,110 +410,22 @@
 				this.isShowBank = false
 			},
 			// uploadImg() {
-			// 	debugger
 			// 	this.uploadType = 5
 			// 	this.imgTypeSelect()
 			// 	// this.isShowimgType = true
 			// },
-			confirmValidityPeriod(e) {
-				if (e.value[0] == '' && e.value[0] != '长期') {
-					this.$refs.uToast.show({
-						type: 'error',
-						message: "年份不能为空!",
-					})
-					return
-				} else if (e.value[1] == '' && e.value[0] != '长期') {
-					this.$refs.uToast.show({
-						type: 'error',
-						message: "月份不能为空!",
-					})
-					return
-				} else if (e.value[2] == '' && e.value[0] != '长期') {
-					this.$refs.uToast.show({
-						type: 'error',
-						message: "日期不能为空!",
-					})
-					return
-				}
+			confirmValidityPeriod(date) {
+				console.log(date,this.dataType)
 				switch (this.dataType) {
 					case 0:
-						if (e.value[0] == '长期') {
-							this.dataDetails.businessTermDate = e.value[0]
-							if (e.value[1] != '' || e.value[2] != '') {
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "选择长期时不允许选择月日!",
-								})
-								return
-							}
-							this.dataDetails.businessTermDate = e.value[0]
+							this.dataDetails.businessTermDate = date.date
 
-						} else {
-							var date = new Date()
-							if (e.value[0] < date.getFullYear()) {
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "营业截止日期已过期!",
-								})
-								return
-							}
-							if (e.value[0] == date.getFullYear() && Number(e.value[1]) < (date.getMonth() + 1)) {
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "营业截止日期已过期!",
-								})
-								return
-							}
-							if (e.value[0] == date.getFullYear() && Number(e.value[1]) == (date.getMonth() + 1) && Number(e
-									.value[2]) <= (date.getDate())) {
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "营业截止日期已过期!",
-								})
-								return
-							}
-							this.dataDetails.businessTermDate = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-						}
 						break
 					case 1:
-						if (e.value[0] == '长期') {
-							this.dataDetails.cardValidityDate = e.value[0]
-							if (e.value[1] != '' || e.value[2] != '') {
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "选择长期时不允许选择月日!",
-								})
-								return
-							}
-						} else {
-							var date = new Date()
-							if (e.value[0] < date.getFullYear()) {
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "身份证已过期!",
-								})
-								return
-							}
-							if (e.value[0] == date.getFullYear() && Number(e.value[1]) < (date.getMonth() + 1)) {
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "身份证已过期!",
-								})
-								return
-							}
-							if (e.value[0] == date.getFullYear() && Number(e.value[1]) == (date.getMonth() + 1) && Number(e
-									.value[2]) <= (date.getDate())) {
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "身份证已过期!",
-								})
-								return
-							}
-							this.dataDetails.cardValidityDate = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-						}
+							this.dataDetails.cardValidityDate = date.date
 						break
 				}
-				this.isShowcardValidity = false
+				this.$forceUpdate()
 			},
 			screenChange(e) {
 				let fullScreen = e.detail.fullScreen; // 值true为进入全屏,false为退出全屏
@@ -624,7 +529,6 @@
 						commonId: this.userInfo.id
 					}).then(res => {
 						if (res.code == 200) {
-							this.validityPeriod = this.$helper.makeValidityPeriod(0, '长期')
 							console.log(this,res.data)
 							if (uni.getStorageSync('companydata')) {
 								this.dataDetails = uni.getStorageSync('companydata')
@@ -790,13 +694,13 @@
 				// 		return true
 				// 	}
 				// }
-				if (uni.$u.test.isEmpty(this.dataDetails.videoAddressUrl)) {
-					this.$refs.uToast.show({
-						type: 'error',
-						message: "视频认证不能为空!",
-					})
-					return true
-				}
+				// if (uni.$u.test.isEmpty(this.dataDetails.videoAddressUrl)) {
+				// 	this.$refs.uToast.show({
+				// 		type: 'error',
+				// 		message: "视频认证不能为空!",
+				// 	})
+				// 	return true
+				// }
 			},
 			submit() {
 				if (this.validate()) return
@@ -877,11 +781,7 @@
 
 				}
 			},
-			// clickcancel() {
-			// 	this.isShowcardValidity = false
-			// },
 			imgTypeSelect(val) {
-				// debugger
 				var _this = this
 				// if (val.name == '相册') {
 				uni.chooseImage({
@@ -909,8 +809,8 @@
 														}
 														_this.dataDetails.unifiedSocialCreditCode = res
 															.data.regNum
-														_this.dataDetails.legalPersonName = res.data
-															.licensePerson
+														// _this.dataDetails.legalPersonName = res.data
+														// 	.licensePerson
 														_this.dataDetails.companyName = res.data
 															.licenseName
 														_this.dataDetails.corporateAccount = _this

+ 0 - 109
pages/mine/company/addcompanythree.vue

@@ -1,109 +0,0 @@
-<template>
-	<view>
-		<!-- <web-view id="mapContainer" :src="srcHandler()"></web-view> -->
-		<view style='text-align:center;height:90vh;'>
-			<view style='transform: translateY(50%);'>
-				<image class="xj-image" src="@/static/mine/company/shipinrenzheng.png" @click="openVideo"></image>
-				<view class='hinttext'>请打开摄像头并阅读提示文字</view>
-			</view>
-		</view>
-		<view class="content4">
-			<view style='margin:0 0 18px;font-size:12px;color:#999;' class='flex items-center'>
-				<u--image style='margin-right:5px;' @click='consent'
-					:src="checked?'../../../static/mine/duihao@2x.png':'../../../static/mine/wxz.png'"
-					width="12px" height="12px"></u--image>
-					我已阅读并同意全部细则
-			</view>
-			<view class='line'></view>
-			<view class="next-btn" :class="checked?'active':'' " @click="goDetailPage('/pages/mine/company/companyvideo')">
-				开始
-			</view>
-		</view>
-		
-	</view>
-</template>
-
-<script>
-	export default {
-		data() {
-			return {
-				checked:false,
-			}
-		},
-		methods: {
-		srcHandler() {
-			// 
-			return `/hybrid/html/video.html`
-		},
-			openVideo(){
-					// uni.$u.route('/pages/mine/camera/video/video?dotype=idcardface');
-				// console.log(uni)
-				// uni.chooseVideo({
-				//   count: 1,
-				//   mediaType: ['video'],
-				//   sourceType: ['camera'],
-				//   maxDuration: 30,
-				//   camera: 'back',
-				//   success(res) {
-				//     console.log(res.tempFilest)
-				//   }
-				// })
-				
-			},
-			consent(){
-				this.checked=!this.checked
-			},
-			goDetailPage(src) 
-			{
-				if(this.checked){
-					uni.$u.route(src);
-				}
-			},
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	page{
-		background:#F5F6FA;
-	}
-	.xj-image{
-		width:216rpx;
-		height:216rpx;
-	}
-	.hinttext{
-		width:236rpx;
-		margin:80rpx auto 0;
-		font-size:32rpx;
-	}
-	.content4 {
-		position:fixed;
-		bottom:0;
-		background: white;
-		width:100%;
-		text-align:center;
-		left:0;
-		box-sizing: border-box;;
-		padding:10px 15px;
-		.line{
-			position:absolute;
-			left:0;
-			margin-top:-9px;
-			border-top:1px solid #eee;
-			width:100%;
-		}
-		.next-btn {
-			background: #F1F3F6;
-			width: 85%;
-			padding: 20rpx 20rpx;
-			text-align: center;
-			color: #C5CAD4;
-			border-radius: 50rpx;margin:0 auto;
-			margin-top:10px;
-		}
-		.next-btn.active{
-			background: #2772FB;
-			color:#fff;
-		}
-	}
-</style>

+ 0 - 286
pages/mine/company/addcompanytwo.vue

@@ -1,286 +0,0 @@
-<template>
-	<view>
-		<u-navbar leftText="返回" title="企业认证" :safeAreaInsetTop="false">
-			<view class="u-nav-slot" slot="left">
-		        <u-icon @click='navback' name="arrow-left" size="19"></u-icon>
-		    </view>
-			<view class="u-nav-slot" slot="right">
-				<view @click="goDetailPage('/pages/mine/company/addcompanythree')" class='next'>下一步</view>
-			</view>
-		</u-navbar>
-		<view class='content1'>
-			<view class="title">上传房产证或租赁合同</view>
-			<view style='position:relative;'>
-				<view v-if='!dataDetails.propertyAddressUrl' @click="uploadImg(1)" class="picture">
-					<image class="xj-image" src="@/static/mine/company/tianjiazhaopian@3x.png"></image>
-				</view>
-				<view v-if='dataDetails.propertyAddressUrl' @click.stop="uploadImg(1)"
-				class="preview-card-img picture">
-				<view @click.stop="delCard(1)">
-					<image class='del-card' src="@/static/images/common/quxiao@2x.png">
-					</image>
-				</view>
-				<image class="uploadimage" :src="dataDetails.propertyAddressUrl" mode="aspectFit"></image>
-			</view>
-			</view>
-		</view>
-		<view class='content'>
-			<view class="flex row">
-				<view class="left-text">场地租赁截止日期</view>
-				<view style='font-size:16px;width:50%;' class='flex flex-space-between'  @click="selectValidityPeriod">
-					<view :style="{'color':dataDetails.siteLeaseDate ? '#000':'#C6CBD5'}">{{dataDetails.siteLeaseDate?dataDetails.siteLeaseDate:'选择日期'}}</view>
-					<view><u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon></view>
-				</view>
-			</view>
-			<view class="flex row noborder">
-				<view style='width:285px;' class="left-text">申请开通平台垫付运费业务</view>
-				<view>
-					<u-switch @change="change" v-model="value" inactiveColor='#ABB0BB' size="20" ></u-switch>
-				</view>
-			</view>
-			<u-picker :show="isShowcardValidity" ref="uPicker" :columns="validityPeriod"
-				@confirm="confirmValidityPeriod" @change="changeHandler"  @cancel="isShowcardValidity=false" >
-			</u-picker>
-		</view>
-		<view class='footer'>
-			<view @click="goDetailPage('/pages/mine/company/addcompanythree')" class='newlyIncreased'>下一步</view>
-		</view>
-		<u-action-sheet :actions="$helper.imgTypeList" :title="$helper.imgType" :show="isShowimgType"
-			@select="imgTypeSelect" :closeOnClickOverlay="true" :closeOnClickAction="true" @close="isShowimgType=false">
-		</u-action-sheet>
-	</view>
-</template>
-
-<script>
-	import upload from '@/components/upload.vue';
-	import uploadImage from '@/components/ossutil/uploadFile.js';
-	export default {
-		data() {
-			return {
-				dataDetails:{},
-				value:false,
-				isShowcardValidity:false,
-				uploadType:'',
-				index:'',
-				isShowimgType:false,
-				validityPeriod:[]
-			}
-		},
-		onLoad(){
-			var _this=this
-			this.validityPeriod = this.$helper.makeValidityPeriod(0,100)
-			uni.getStorage({
-				key: 'companydata',
-				success: function (res) {
-					console.log(res.data);
-					_this.dataDetails = JSON.parse(res.data)
-					if(_this.dataDetails.advanceFreightService){
-						_this.value=true
-					}
-				}
-			});
-		},
-		methods: {
-			navBack() {
-				uni.navigateBack();
-			},
-			change(e){
-				if(this.value){
-					_this.$set(_this.dataDetails,'advanceFreightService',1)
-				}else{
-					_this.$set(_this.dataDetails,'advanceFreightService',0)
-				}
-			},
-			imgTypeSelect(val) {
-				var _this=this
-				if (val.name == '相册') {
-					uni.chooseImage({
-						count: 1,
-						sourceType: this.$helper.chooseImage.sourceType,
-						success: function(res) {
-							console.log(JSON.stringify(res.tempFilePaths));
-							uploadImage('image',res.tempFilePaths[0], 'appData/',
-								result => {
-									// 上传成功回调函数
-									console.log('图片地址', result)
-									_this.$set(_this.dataDetails,'propertyAddressUrl',result)
-									console.log(_this.dataDetails)
-								}
-							)
-						}
-					});
-				} else {
-					uni.chooseImage({
-						count: 1,
-						sourceType: ['camera'],
-						success: function(res) {
-							console.log(JSON.stringify(res.tempFilePaths));
-							uploadImage('image',res.tempFilePaths[0], 'appData/',
-								result => {
-									// 上传成功回调函数
-									console.log('图片地址', result)
-									_this.dataDetails.propertyAddressUrl=result
-								}
-							)
-						}
-					});
-				}
-			},
-			uploadImg(type, index) {
-				this.uploadType = type
-				this.isShowimgType = true
-				this.index = index
-			},
-			goDetailPage(src) {
-				uni.setStorage({key: 'companydata',data: JSON.stringify(this.dataDetails)});
-				uni.$u.route(src);
-			},
-			selectValidityPeriod() {
-				this.isShowcardValidity = true
-			},
-			confirmValidityPeriod(e) {
-				console.log('confirm', e)
-				if (e.value[0] == '长期') {
-					if(e.value[1]||e.value[2]){
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "选择长期时不允许选择月日!",
-						})
-						return
-					}
-					this.dataDetails.siteLeaseDate = e.value[0]
-				} else {
-					this.dataDetails.siteLeaseDate = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-				}
-			
-				this.isShowcardValidity = false
-			},
-			changeHandler(e) {
-				const {
-					columnIndex,
-					value,
-					values,
-					index,
-					picker = this.$refs.uPicker
-				} = e
-			
-				// if (columnIndex === 0) {
-				// 	
-				// 	if (e.index != 0) {
-				// 		picker.setColumnValues(1, this.validityPeriod[1].shift())
-				// 	}
-			
-				// } else if (columnIndex === 1) {
-				// 	if (e.index != 0) {
-				// 		picker.setColumnValues(2, this.validityPeriod[2].shift())
-				// 	}
-				// }
-			},
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	page{
-		background:#F5F6FA;
-	}
-	.preview-card-img {
-		/deep/uni-image.uploadimage {
-		   width:212rpx;
-		   height:212rpx;
-		}
-	}
-	.next{
-		color:#2772FB;
-		font-size:13px;
-	}
-	
-	.content1,.content {
-		background:#fff;
-		padding:40rpx 20rpx 40rpx;
-		margin:110rpx 20rpx 20rpx;
-		border-radius: 10rpx;
-		.row {
-			border-bottom: 1px solid #EEEEEE;
-			padding-bottom: 28rpx;
-			margin-top: 26rpx;
-	
-		}
-	
-		.left-text {
-			// background: red;
-			width: 320rpx;
-			color: #333333;
-			display: flex;
-			align-items: center;
-		}
-	
-		.picture {
-			position: relative;
-			width: 212rpx;
-			height: 212rpx;
-			display: flex;
-			justify-content: center;
-			flex-direction: column;
-			align-items: center;
-			background:#F5F6FA;
-			.text {
-				margin-top: 20rpx;
-			}
-		}
-	
-	
-		.xj-image {
-			width: 46rpx;
-			height: 46rpx;
-		}
-	
-		.title {
-			color: #999999;
-			margin: 20rpx 0;
-		}
-	}
-	.content{
-		padding:20rpx 20rpx 20rpx;
-		margin:20rpx 20rpx 20rpx;
-		background:#fff;
-		border-radius: 10rpx;
-	}
-	.service {
-		font-size: 24rpx;
-		margin: 20rpx;
-		justify-content: center;
-	
-		/deep/.u-image {
-			margin: 0 20rpx;
-		}
-	}
-	
-	.del-card {
-		position: absolute;
-		top: -10rpx;
-		right: -6rpx;
-		width: 80rpx;
-		height: 80rpx;
-		z-index: 9;
-	}
-	.footer{
-		position:fixed;
-		background:#fff;
-		width:100%;
-		bottom:0;
-		left:0;
-		padding:15px 15px 30px;
-		box-sizing: border-box;
-	}
-	.newlyIncreased{
-		width:100%;
-		margin:0 auto;
-		text-align:center;
-		height:46px;
-		line-height: 46px;
-		color:#fff;
-		background:url(../../../static/mine/huozhurenzheng/Mask@3x.png) no-repeat;
-		background-size:100%;
-	}
-</style>

+ 59 - 95
pages/mine/company/editcompany.vue

@@ -161,14 +161,14 @@
 		</view>
 		<!-- http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4 -->
 		<!-- dataDetails.videoAddressUrl -->
-		<view class='content3' v-if="!dataDetails.videoAddressUrl"
+		<!-- <view class='content3' v-if="!dataDetails.videoAddressUrl"
 			@click="goDetailPage('/pages/mine/company/companyvideo')">
 			<view class="left-text">视频验证(打开摄像头并阅读提示文字)</view>
 			<view class="video-icon">
 				<u-icon size="40" name="camera-fill"></u-icon>
 			</view>
-		</view>
-		<view class='content3' v-if="dataDetails.videoAddressUrl">
+		</view> -->
+		<!-- <view class='content3' v-if="dataDetails.videoAddressUrl">
 			<view class="flex row noborder mt20 flex-space-between">
 				<view class="left-text">视频验证(点击按钮播放视频)</view>
 				<view>
@@ -176,15 +176,15 @@
 						size="mini">重新上传
 					</u-button>
 				</view>
-			</view>
+			</view> -->
 			<!-- <video class="myVideo" :src="dataDetails.videoAddressUrl" controls></video> -->
-			<view>
+			<!-- <view>
 				<view class="video-icon">
 					<u-icon size="40" name="play-circle-fill" @click="videoShow()"></u-icon>
 				</view>
 			</view>
 
-		</view>
+		</view> -->
 
 		<view class='content3'>
 			<view class="flex row noborder mt20 flex-space-between">
@@ -256,9 +256,10 @@
 		<u-picker :show="isShowBank" :columns="columns" :closeOnClickOverlay='true' @close='zhBankClose'
 			@cancel='zhBankClose' @confirm='confirmBank'></u-picker>
 		</u-picker>
-		<u-picker :show="isShowcardValidity" ref="uPicker" :columns="validityPeriod" @confirm="confirmValidityPeriod"
+		<!-- <u-picker :show="isShowcardValidity" ref="uPicker" :columns="validityPeriod" @confirm="confirmValidityPeriod"
 			@change="changeHandler" @cancel="isShowcardValidity=false">
-		</u-picker>
+		</u-picker> -->
+		<itmister-date-picker :overdueContent="'身份证已过期'" :dateStatus="1" :periodOfValidity="true" :futureYear="30" :checkYear="year" :checkMonth="month" :checkDay="day" ref="dateValidityPeriod"  @dateConfirm="confirmValidityPeriod"></itmister-date-picker>
 		<u-action-sheet :actions="$helper.imgTypeList" :title="$helper.imgType" :show="isShowimgType"
 			@select="imgTypeSelect" :closeOnClickOverlay="true" :closeOnClickAction="true" @close="isShowimgType=false">
 		</u-action-sheet>
@@ -300,13 +301,15 @@
 					},
 
 				],
+				year:'',
+				month:'',
+				day:'',
 				isShowManualInput: false,
 				isShowcardValidity: false,
 				uploadType: '',
 				index: '',
 				submitstatus:false,
 				isShowimgType: false,
-				validityPeriod: [],
 				checked: false,
 				checked1: false,
 				dataDetails: {
@@ -331,7 +334,6 @@
 		onLoad(options) {
 			this.get_camera_permission()
 			this.dataDetails.id = options.id
-			this.validityPeriod = this.$helper.makeValidityPeriod(0, '长期')
 			this.dataDetails.commonId = this.userInfo.id
 			this.dataDetails.phone = this.userInfo.phone
 			console.log('```````````````')
@@ -381,7 +383,34 @@
 			},
 			selectData(num) {
 				this.dataType = num
-				this.isShowcardValidity = true
+				switch (this.dataType) {
+					case 0:
+						if(this.dataDetails.businessTermDate=='长期'){
+							this.year=this.dataDetails.businessTermDate
+						}else{
+							var arr=this.dataDetails.businessTermDate.split('-')
+							this.year=arr[0]
+							this.month=arr[1]
+							this.day=arr[2]
+						}
+						break
+					case 1:
+						if(this.dataDetails.cardValidityDate=='长期'){
+							this.year=this.dataDetails.cardValidityDate
+						}else{
+							var arr=this.dataDetails.cardValidityDate.split('-')
+							this.year=arr[0]
+							this.month=arr[1]
+							this.day=arr[2]
+						}
+						break
+				}
+				if(num==0){
+					this.overdueContent='营业执照已过期'
+				}else if(num==1){
+					this.overdueContent='身份证已过期'
+				}
+				this.$refs.dateValidityPeriod.show()
 			},
 			zhBankClose() {
 				this.isShowBank = false
@@ -403,84 +432,17 @@
 				this.dataDetails.bankDepositBranch = e.value[0]
 				this.isShowBank = false
 			},
-			confirmValidityPeriod(e) {
+			confirmValidityPeriod(date) {
 				switch (this.dataType) {
 					case 0:
-						if (e.value[0] == '长期') {
-							if(e.value[1]!=''||e.value[2]!=''){
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "选择长期时不允许选择月日!",
-								})
-								return
-							}
-							this.dataDetails.businessTermDate = e.value[0]
-							
-						} else {
-							var date=new Date()
-							if(e.value[0]<date.getFullYear()){
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "营业截止日期已过期!",
-								})
-								return
-							}
-							if(e.value[0]==date.getFullYear()&&Number(e.value[1])<(date.getMonth()+1)){
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "营业截止日期已过期!",
-								})
-								return
-							}
-							if(e.value[0]==date.getFullYear()&&Number(e.value[1])==(date.getMonth()+1)&&Number(e.value[2])<=(date.getDate())){
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "营业截止日期已过期!",
-								})
-								return
-							}
-							this.dataDetails.businessTermDate = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-						}
+							this.dataDetails.businessTermDate = date.date
+				
 						break
 					case 1:
-						if (e.value[0] == '长期') {
-							if(e.value[1]!=''||e.value[2]!=''){
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "选择长期时不允许选择月日!",
-								})
-								return
-							}
-							this.dataDetails.cardValidityDate = e.value[0]
-							
-						} else {
-							var date=new Date()
-							if(e.value[0]<date.getFullYear()){
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "身份证已过期!",
-								})
-								return
-							}
-							if(e.value[0]==date.getFullYear()&&Number(e.value[1])<(date.getMonth()+1)){
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "身份证已过期!",
-								})
-								return
-							}
-							if(e.value[0]==date.getFullYear()&&Number(e.value[1])==(date.getMonth()+1)&&Number(e.value[2])<=(date.getDate())){
-								this.$refs.uToast.show({
-									type: 'error',
-									message: "身份证已过期!",
-								})
-								return
-							}
-							this.dataDetails.cardValidityDate = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-						}
+							this.dataDetails.cardValidityDate = date.date
 						break
 				}
-				this.isShowcardValidity = false
+				this.$forceUpdate()
 			},
 			screenChange(e) {
 				let fullScreen = e.detail.fullScreen; // 值true为进入全屏,false为退出全屏
@@ -509,11 +471,13 @@
 						id: this.dataDetails.id
 					}).then(res => {
 						uni.hideLoading()
-						_this.dataDetails = res.data
-						if(_this.dataDetails.advanceFreightService==1){
-							this.value=true
-						}else{
-							this.value=false
+						if(res.data){
+							_this.dataDetails = res.data
+							if(_this.dataDetails.advanceFreightService==1){
+								this.value=true
+							}else{
+								this.value=false
+							}	
 						}
 					})
 					.catch(res => {
@@ -680,13 +644,13 @@
 				// 		return true
 				// 	}
 				// }
-				if (uni.$u.test.isEmpty(this.dataDetails.videoAddressUrl)) {
-					this.$refs.uToast.show({
-						type: 'error',
-						message: "视频认证不能为空!",
-					})
-					return true
-				}
+				// if (uni.$u.test.isEmpty(this.dataDetails.videoAddressUrl)) {
+				// 	this.$refs.uToast.show({
+				// 		type: 'error',
+				// 		message: "视频认证不能为空!",
+				// 	})
+				// 	return true
+				// }
 			},
 			companyNamechange(e) {
 				console.log(e)

+ 0 - 100
pages/mine/company/editcompanythree.vue

@@ -1,100 +0,0 @@
-<template>
-	<view>
-		<view style='text-align:center;height:90vh;'>
-			<view style='transform: translateY(50%);'>
-				<image class="xj-image" src="@/static/mine/company/shipinrenzheng.png"></image>
-				<view class='hinttext' @click="openVideo">请打开摄像头并阅读提示文字</view>
-			</view>
-		</view>
-		<view class="content4">
-			<view style='margin:0 0 18px;font-size:12px;color:#999;' class='flex items-center'>
-				<u--image style='margin-right:5px;' @click='consent'
-					:src="checked?'../../../static/mine/duihao@2x.png':'../../../static/mine/wxz.png'"
-					width="12px" height="12px"></u--image>
-					我已阅读并同意全部细则
-			</view>
-			<view class='line'></view>
-			<view class="next-btn" :class="checked?'active':'' " @click="goDetailPage('/pages/mine/company/companyvideo')">
-				开始
-			</view>
-		</view>
-	</view>
-</template>
-
-<script>
-	export default {
-		data() {
-			return {
-				checked:false,
-			}
-		},
-		methods: {
-			openVideo(){
-				uni.chooseMedia({
-				  count: 1,
-				  mediaType: ['video'],
-				  sourceType: ['camera'],
-				  maxDuration: 30,
-				  camera: 'back',
-				  success(res) {
-				    console.log(res.tempFilest)
-				  }
-				})
-			},
-			consent(){
-				this.checked=!this.checked
-			},
-			goDetailPage(src) 
-			{
-				if(this.checked){
-					uni.$u.route(src);
-				}
-			},
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	page{
-		background:#F5F6FA;
-	}
-	.xj-image{
-		width:216rpx;
-		height:216rpx;
-	}
-	.hinttext{
-		width:236rpx;
-		margin:80rpx auto 0;
-		font-size:32rpx;
-	}
-	.content4 {
-		position:fixed;
-		bottom:0;
-		background: white;
-		width:100%;
-		text-align:center;
-		left:0;
-		box-sizing: border-box;;
-		padding:10px 15px;
-		.line{
-			position:absolute;
-			left:0;
-			margin-top:-9px;
-			border-top:1px solid #eee;
-			width:100%;
-		}
-		.next-btn {
-			background: #F1F3F6;
-			width: 85%;
-			padding: 20rpx 20rpx;
-			text-align: center;
-			color: #C5CAD4;
-			border-radius: 50rpx;margin:0 auto;
-			margin-top:10px;
-		}
-		.next-btn.active{
-			background: #2772FB;
-			color:#fff;
-		}
-	}
-</style>

+ 0 - 286
pages/mine/company/editcompanytwo.vue

@@ -1,286 +0,0 @@
-<template>
-	<view>
-		<u-navbar leftText="返回" title="企业认证" :safeAreaInsetTop="false">
-			<view class="u-nav-slot" slot="left">
-		        <u-icon @click='navback' name="arrow-left" size="19"></u-icon>
-		    </view>
-			<view class="u-nav-slot" slot="right">
-				<view @click="goDetailPage('/pages/mine/company/addcompanythree')" class='next'>下一步</view>
-			</view>
-		</u-navbar>
-		<view class='content1'>
-			<view class="title">上传房产证或租赁合同</view>
-			<view style='position:relative;'>
-				<view v-if='!dataDetails.propertyAddressUrl' @click="uploadImg(1)" class="picture">
-					<image class="xj-image" src="@/static/mine/company/tianjiazhaopian@3x.png"></image>
-				</view>
-				<view v-if='dataDetails.propertyAddressUrl' @click.stop="uploadImg(1)"
-				class="preview-card-img picture">
-				<view @click.stop="delCard(1)">
-					<image class='del-card' src="@/static/images/common/quxiao@2x.png">
-					</image>
-				</view>
-				<image class="uploadimage" :src="dataDetails.propertyAddressUrl" mode="aspectFit"></image>
-			</view>
-			</view>
-		</view>
-		<view class='content'>
-			<view class="flex row">
-				<view class="left-text">场地租赁截止日期</view>
-				<view style='font-size:16px;width:50%;' class='flex flex-space-between'  @click="selectValidityPeriod">
-					<view :style="{'color':dataDetails.siteLeaseDate ? '#000':'#C6CBD5'}">{{dataDetails.siteLeaseDate?dataDetails.siteLeaseDate:'选择日期'}}</view>
-					<view><u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon></view>
-				</view>
-			</view>
-			<view class="flex row noborder">
-				<view style='width:285px;' class="left-text">申请开通平台垫付运费业务</view>
-				<view>
-					<u-switch @change="change" v-model="value" inactiveColor='#ABB0BB' size="20" ></u-switch>
-				</view>
-			</view>
-			<u-picker :show="isShowcardValidity" ref="uPicker" :columns="validityPeriod"
-				@confirm="confirmValidityPeriod" @change="changeHandler"  @cancel="isShowcardValidity=false" >
-			</u-picker>
-		</view>
-		<view class='footer'>
-			<view @click="goDetailPage('/pages/mine/company/addcompanythree')" class='newlyIncreased'>下一步</view>
-		</view>
-		<u-action-sheet :actions="$helper.imgTypeList" :title="$helper.imgType" :show="isShowimgType"
-			@select="imgTypeSelect" :closeOnClickOverlay="true" :closeOnClickAction="true" @close="isShowimgType=false">
-		</u-action-sheet>
-	</view>
-</template>
-
-<script>
-	import upload from '@/components/upload.vue';
-	import uploadImage from '@/components/ossutil/uploadFile.js';
-	export default {
-		data() {
-			return {
-				dataDetails:{},
-				value:false,
-				isShowcardValidity:false,
-				uploadType:'',
-				index:'',
-				isShowimgType:false,
-				validityPeriod:[]
-			}
-		},
-		onLoad(){
-			var _this=this
-			this.validityPeriod = this.$helper.makeValidityPeriod(0,100)
-			uni.getStorage({
-				key: 'companydata',
-				success: function (res) {
-					console.log(res.data);
-					_this.dataDetails = JSON.parse(res.data)
-					if(_this.dataDetails.advanceFreightService){
-						_this.value=true
-					}
-				}
-			});
-		},
-		methods: {
-			navBack() {
-				uni.navigateBack();
-			},
-			change(e){
-				if(this.value){
-					_this.$set(_this.dataDetails,'advanceFreightService',1)
-				}else{
-					_this.$set(_this.dataDetails,'advanceFreightService',0)
-				}
-			},
-			imgTypeSelect(val) {
-				var _this=this
-				if (val.name == '相册') {
-					uni.chooseImage({
-						count: 1,
-						sourceType: this.$helper.chooseImage.sourceType,
-						success: function(res) {
-							console.log(JSON.stringify(res.tempFilePaths));
-							uploadImage('image',res.tempFilePaths[0], 'appData/',
-								result => {
-									// 上传成功回调函数
-									console.log('图片地址', result)
-									_this.$set(_this.dataDetails,'propertyAddressUrl',result)
-									console.log(_this.dataDetails)
-								}
-							)
-						}
-					});
-				} else {
-					uni.chooseImage({
-						count: 1,
-						sourceType: ['camera'],
-						success: function(res) {
-							console.log(JSON.stringify(res.tempFilePaths));
-							uploadImage('image',res.tempFilePaths[0], 'appData/',
-								result => {
-									// 上传成功回调函数
-									console.log('图片地址', result)
-									_this.dataDetails.propertyAddressUrl=result
-								}
-							)
-						}
-					});
-				}
-			},
-			uploadImg(type, index) {
-				this.uploadType = type
-				this.isShowimgType = true
-				this.index = index
-			},
-			goDetailPage(src) {
-				uni.setStorage({key: 'companydata',data: JSON.stringify(this.dataDetails)});
-				uni.$u.route(src);
-			},
-			selectValidityPeriod() {
-				this.isShowcardValidity = true
-			},
-			confirmValidityPeriod(e) {
-				console.log('confirm', e)
-				if (e.value[0] == '长期') {
-					if(e.value[1]||e.value[2]){
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "选择长期时不允许选择月日!",
-						})
-						return
-					}
-					this.dataDetails.siteLeaseDate = e.value[0]
-				} else {
-					this.dataDetails.siteLeaseDate = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-				}
-			
-				this.isShowcardValidity = false
-			},
-			changeHandler(e) {
-				const {
-					columnIndex,
-					value,
-					values,
-					index,
-					picker = this.$refs.uPicker
-				} = e
-			
-				// if (columnIndex === 0) {
-				// 	
-				// 	if (e.index != 0) {
-				// 		picker.setColumnValues(1, this.validityPeriod[1].shift())
-				// 	}
-			
-				// } else if (columnIndex === 1) {
-				// 	if (e.index != 0) {
-				// 		picker.setColumnValues(2, this.validityPeriod[2].shift())
-				// 	}
-				// }
-			},
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	page{
-		background:#F5F6FA;
-	}
-	.preview-card-img {
-		/deep/uni-image.uploadimage {
-		   width:212rpx;
-		   height:212rpx;
-		}
-	}
-	.next{
-		color:#2772FB;
-		font-size:13px;
-	}
-	
-	.content1,.content {
-		background:#fff;
-		padding:40rpx 20rpx 40rpx;
-		margin:110rpx 20rpx 20rpx;
-		border-radius: 10rpx;
-		.row {
-			border-bottom: 1px solid #EEEEEE;
-			padding-bottom: 28rpx;
-			margin-top: 26rpx;
-	
-		}
-	
-		.left-text {
-			// background: red;
-			width: 320rpx;
-			color: #333333;
-			display: flex;
-			align-items: center;
-		}
-	
-		.picture {
-			position: relative;
-			width: 212rpx;
-			height: 212rpx;
-			display: flex;
-			justify-content: center;
-			flex-direction: column;
-			align-items: center;
-			background:#F5F6FA;
-			.text {
-				margin-top: 20rpx;
-			}
-		}
-	
-	
-		.xj-image {
-			width: 46rpx;
-			height: 46rpx;
-		}
-	
-		.title {
-			color: #999999;
-			margin: 20rpx 0;
-		}
-	}
-	.content{
-		padding:20rpx 20rpx 20rpx;
-		margin:20rpx 20rpx 20rpx;
-		background:#fff;
-		border-radius: 10rpx;
-	}
-	.service {
-		font-size: 24rpx;
-		margin: 20rpx;
-		justify-content: center;
-	
-		/deep/.u-image {
-			margin: 0 20rpx;
-		}
-	}
-	
-	.del-card {
-		position: absolute;
-		top: -10rpx;
-		right: -6rpx;
-		width: 80rpx;
-		height: 80rpx;
-		z-index: 9;
-	}
-	.footer{
-		position:fixed;
-		background:#fff;
-		width:100%;
-		bottom:0;
-		left:0;
-		padding:15px 15px 30px;
-		box-sizing: border-box;
-	}
-	.newlyIncreased{
-		width:100%;
-		margin:0 auto;
-		text-align:center;
-		height:46px;
-		line-height: 46px;
-		color:#fff;
-		background:url(../../../static/mine/huozhurenzheng/Mask@3x.png) no-repeat;
-		background-size:100%;
-	}
-</style>

+ 0 - 69
pages/mine/company/editcompanyvideo.vue

@@ -1,69 +0,0 @@
-<template>
-	<view>
-		<view class='footer'>
-			<view @click="submit" class='newlyIncreased'>提交</view>
-		</view>
-	</view>
-</template>
-
-<script>
-	export default {
-		data() {
-			return {
-				
-			}
-		},
-		onLoad(){
-			var _this=this
-			uni.getStorage({
-				key: 'companydata',
-				success: function (res) {
-					_this.dataDetails = JSON.parse(res.data)
-				}
-			});
-		},
-		methods: {
-			submit(){
-				uni.showLoading({
-					title: '加载中',
-					mask:true
-				})
-				var _this=this
-				this.$request.baseRequest('post', '/companyInfo/api/editCompanyInfo', _this.dataDetails).then(res => {
-					uni.hideLoading()
-					uni.$u.toast('提交成功')
-				})
-				.catch(res => {
-					uni.hideLoading()
-					uni.showToast({
-						title: res.message,
-						icon: 'none',
-						duration: 2000
-					})
-				});
-			},
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-.footer{
-		position:fixed;
-		background:#fff;
-		width:100%;
-		bottom:0;
-		left:0;
-		padding:15px 15px 30px;
-		box-sizing: border-box;
-	}
-	.newlyIncreased{
-		width:100%;
-		margin:0 auto;
-		text-align:center;
-		height:46px;
-		line-height: 46px;
-		color:#fff;
-		background:url(../../../static/mine/huozhurenzheng/Mask@3x.png) no-repeat;
-		background-size:100%;
-	}
-</style>

+ 0 - 538
pages/mine/driverCertification.vue

@@ -1,538 +0,0 @@
-<template>
-	<view class="content">
-		<view class="content1 content-other">
-			<view class="flex flex-space-between">
-				<view>姓名</view>
-				<u--input placeholder="请输入内容" inputAlign='right' border="none" v-model="dataDetails.driverName">
-				</u--input>
-			</view>
-			<view class="flex flex-space-between">
-				<view>联系电话</view>
-				<u--input placeholder="请输入联系电话" inputAlign='right' border="none" v-model="dataDetails.driverPhone">
-				</u--input>
-			</view>
-			<view class="flex s-row" v-for="(item,index) in dataDetails.driverCarInfoList" :key='index'>
-				<view class="flex flex-space-between width100">
-					<view class="left">
-						车牌号-{{index+1}}
-					</view>
-					<view class="right flex">
-						<input class="car-uumber" v-model='item.carNumber' @click.stop="handleShowKeyboard(index)"
-							:disabled="true" placeholder="输入7位车牌号" name="input"></input>
-						<!-- <u-input v-model="item1.carNo" placeholder="输入7位车牌号" /> -->
-						<view class="flex">
-							<view @click="addCarNumber(dataDetails.driverCarInfoList)" style="margin-right: 20rpx;">
-								<image class='row4-img'
-									src="https://taohaoliang.oss-cn-beijing.aliyuncs.com/app/tmp/jia%402x.png">
-								</image>
-							</view>
-							<view @click="delCarNumber(dataDetails.driverCarInfoList,index)">
-								<image class='row4-img'
-									src="https://taohaoliang.oss-cn-beijing.aliyuncs.com/app/tmp/jian%402x.png">
-								</image>
-							</view>
-						</view>
-					</view>
-				</view>
-				<view class="width100">
-					<view class="">人车合影-{{index+1}}</view>
-					<u-button type="primary" @click="uploadImg(0,item)">上传人车合影</u-button>
-					<image class="preview" :src="item.addressUrl" mode="aspectFit"
-						style="width:710rpx:height:710rpx;margin: 20rpx;">
-						<!-- 		<upload class="upload" ref="upload" :action="action" :max-size="maxSize" :max-count="1"
-						:size-type="['compressed']" @on-success="getImgUrl" @on-error="onError" @on-remove="onRemove"
-						@on-uploaded="isAdd = true" :before-upload="filterFileType" @on-progress="onProgress"></upload> -->
-				</view>
-			</view>
-		</view>
-		<u-divider text="分割线"></u-divider>
-		<view class="content2 content-other">
-			<u-button type="primary" @click="uploadImg(1)">上传身份证人像</u-button>
-			<!-- <upload class="upload" ref="upload" :action="action" :max-size="maxSize" :max-count="1"
-				:size-type="['compressed']" @on-success="getImgUrl1" @on-error="onError" @on-remove="onRemove"
-				@on-uploaded="isAdd = true" :before-upload="filterFileType" :options="uploadOptions1"
-				:custom="uploadCustom1" @on-progress="onProgress"></upload> -->
-			<!-- <navigator class="buttons" url="./camera/idcard/idcard?dotype=face"><button type="primary">打开身份证人像面采集相机</button></navigator> -->
-			<!-- <view>拍摄结果预览图,见下方</view> -->
-			<image class="preview" :src="dataDetails.cardAddressUrl" mode="aspectFit"
-				style="width:710rpx:height:710rpx;margin: 20rpx;">
-			</image>
-			<view class="flex flex-space-between">
-				<view>身份证号</view>
-				<u--input placeholder="请输入身份证号" inputAlign='right' border="none" v-model="dataDetails.numberCard">
-				</u--input>
-			</view>
-			<u-button type="primary" @click="uploadImg(2)">上传身份证国徽页</u-button>
-			<image class="preview" :src="dataDetails.cardBackAddressUrl" mode="aspectFit"
-				style="width:710rpx:height:710rpx;margin: 20rpx;">
-			</image>
-			<view class="flex flex-space-between">
-				<view>身份证截止日期</view>
-				<view class="" @click="selectValidityPeriod">
-					{{dataDetails.cardValidityDate?dataDetails.cardValidityDate:'选择身份证截止日期'}}</view>
-
-			</view>
-			<u-picker :show="isShowcardValidity" ref="uPicker" :columns="validityPeriod"
-				@confirm="confirmValidityPeriod" @change="changeHandler">
-			</u-picker>
-		</view>
-		<u-divider text="分割线"></u-divider>
-		<view class="content3 flex s-row" v-for="(item,index) in dataDetails.bankList" :key='index'>
-			<view class="flex flex-space-between width100">
-				<view class="left">
-					银行卡-{{index+1}}
-				</view>
-				<view class="right flex">
-					<view class="flex">
-						<view @click="addBankNumber(dataDetails.bankList)" style="margin-right: 20rpx;">
-							<image class='row4-img'
-								src="https://taohaoliang.oss-cn-beijing.aliyuncs.com/app/tmp/jia%402x.png">
-							</image>
-						</view>
-						<view @click="delBankNumber(dataDetails.bankList,index)">
-							<image class='row4-img'
-								src="https://taohaoliang.oss-cn-beijing.aliyuncs.com/app/tmp/jian%402x.png">
-							</image>
-						</view>
-					</view>
-				</view>
-			</view>
-			<!-- 	<view class="width100">
-				<view class="">上传银行卡号面</view>
-				<upload class="upload" ref="upload" :action="action" :max-size="maxSize" :max-count="1"
-					:size-type="['compressed']" @on-success="getImgUrl" @on-remove="onRemove" delIconSize='30'
-					delBgColor='rgba(0,0,0,0.4)' delIcon="trash" @on-uploaded="isAdd = true"
-					:before-upload="filterFileType" :options="uploadOptions3" :custom="uploadCustom3"></upload>
-			</view> -->
-			<u-button type="primary" @click="uploadImg(3)">上传银行卡号页</u-button>
-			<view class="flex flex-space-between width100">
-				<view>银行卡卡号</view>
-				<view class="flex">
-					<u--input placeholder="输入银行卡号码" inputAlign='right' border="none" v-model="dataDetails.name">
-					</u--input>
-					<u--image src="../../static/images/xiangji-2.png" width="40px" height="40px" @click='photograph'>
-					</u--image>
-				</view>
-			</view>
-			<view class="flex flex-space-between width100">
-				<view>开户行</view>
-				<view class="flex">
-					<u--input placeholder="输入开户行" inputAlign='right' border="none" v-model="dataDetails.name">
-					</u--input>
-				</view>
-			</view>
-			<view class="flex flex-space-between width100">
-				<view>开户支行</view>
-				<view class="flex">
-					<u--input placeholder="选择开户支行" inputAlign='right' border="none" v-model="dataDetails.name">
-					</u--input>
-					<view>手动输入</view>
-				</view>
-			</view>
-			<view class="flex flex-space-between width100">
-				<view>收款人</view>
-				<view class="flex">
-					<u--input placeholder="输入收款人姓名" inputAlign='right' border="none" v-model="dataDetails.name">
-					</u--input>
-				</view>
-			</view>
-		</view>
-		<view class="content4">
-			<u-button type="primary" @click="next()">
-				下一步
-			</u-button>
-		</view>
-		<master-keyboard ref="keyboard" keyboardtype="car" :show="keyShow" :randomNumber="true" :newCar="false"
-			:defaultValue="carNumber" @keyboardClick="handleClick"></master-keyboard>
-		<u-toast ref="uToast"></u-toast>
-		<u-action-sheet :actions="$helper.imgTypeList" :title="$helper.imgType" :show="isShowimgType"
-			@select="imgTypeSelect" :closeOnClickOverlay="true" :closeOnClickAction="true" @close="isShowimgType=false">
-		</u-action-sheet>
-	</view>
-</template>
-
-<script>
-	import keyboard from "@/components/master-keyboard/master-keyboard.vue";
-	import upload from '@/components/upload.vue';
-	import uploadImage from '@/components/ossutil/uploadFile.js';
-	var _this;
-	export default {
-		components: {
-			keyboard,
-			upload
-		},
-		data() {
-			return {
-				index:'',
-				validityPeriod: [],
-				isShowcardValidity: false,
-				uploadType: '',
-				isShowimgType: false,
-				// uploadOptions1: {
-				// 	"text": "上传身份证头像页",
-				// 	"bgc": "https://taohaoliang.oss-cn-beijing.aliyuncs.com/app/tmp/identityup%282%29.png"
-				// },
-				// uploadOptions2: {
-				// 	"text": "上传身份证国徽页",
-				// 	"bgc": "https://taohaoliang.oss-cn-beijing.aliyuncs.com/app/tmp/identitylow%282%29.png"
-				// },
-				// uploadOptions3: {
-				// 	"text": "上传银行卡正面",
-				// 	"bgc": "https://taohaoliang.oss-cn-beijing.aliyuncs.com/app/tmp/bankup%282%29.png"
-				// },
-				carInfo: '',
-				dataDetails: {
-					commonId: '',
-					driverName: '',
-					driverPhone: '',
-					cardAddressUrl: '',
-					cardBackAddressUrl: '',
-					cardValidityDate: '',
-					driverType: '',
-					driverLicenseHomePage: '',
-					driverLicenseBackPage: '',
-					driverLicenseValidityDate: '',
-					drivingLicenseHomePage: '',
-					drivingLicenseBackPage: '',
-					drivingLicenseValidityDate: '',
-					trailerLicenseHomePage: '',
-					trailerLicenseBackPage: '',
-					trailerLicenseValidityDate: '',
-					qualificationCertificate: '',
-					qualificationCertificateValidityDate: '',
-					operationCertificate: '',
-					operationCertificateValidityDate: '',
-					trailerOperationCertificate: '',
-					trailerOperationCertificateValidityDate: '',
-					numberCard: '',
-					numberCard: '',
-					numberCard: '',
-					numberCard: '',
-					numberCard: '',
-					numberCard: '',
-					numberCard: '',
-					numberCard: '',
-					numberCard: '',
-					numberCard: '',
-					numberCard: '',
-					numberCard: '',
-					numberCard: '',
-					driverCarInfoList: [{
-						carNumber: '',
-						addressUrl: ''
-					}],
-					driverPayeeInfoList: [{
-						payeeAddressUrl: '',
-						bankCard: '',
-						bankDeposit: '',
-						bankDepositBranch: '',
-						payeeName: ''
-					}],
-				},
-				keyShow: false,
-				carNumber: '',
-				action: this.$helper.ossUploadUrl,
-				maxSize: 50 * 1024 * 1024, //限制文件大小 50M
-				isAdd: true,
-				imagesrc: ''
-			};
-		},
-		onLoad() {
-			_this = this;
-			this.makeValidityPeriod()
-		},
-		methods: {
-			changeHandler(e) {
-				const {
-					columnIndex,
-					value,
-					values,
-					index,
-					picker = this.$refs.uPicker
-				} = e
-
-				// if (columnIndex === 0) {
-				// 	
-				// 	if (e.index != 0) {
-				// 		picker.setColumnValues(1, this.validityPeriod[1].shift())
-				// 	}
-
-				// } else if (columnIndex === 1) {
-				// 	if (e.index != 0) {
-				// 		picker.setColumnValues(2, this.validityPeriod[2].shift())
-				// 	}
-				// }
-			},
-			// 回调参数为包含columnIndex、value、values
-			confirmValidityPeriod(e) {
-				// 
-				console.log('confirm', e)
-				if (e.value[0] == '长期') {
-					if(e.value[1]||e.value[2]){
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "选择长期时不允许选择月日!",
-						})
-						return
-					}
-					this.dataDetails.cardValidityDate = e.value[0]
-				} else {
-					this.dataDetails.cardValidityDate = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-				}
-
-				this.isShowcardValidity = false
-			},
-			makeValidityPeriod() {
-				//获取当前年
-				let nowDate = new Date();
-				let year = nowDate.getFullYear()
-				let _list1 = ['长期']
-				// let _list2 = ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]
-				let _list2 = ['长期', "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12"]
-				let _list3 = ['长期', "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14",
-					"15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30",
-					"31"
-				]
-				let _ValidityPeriod = []
-				for (let i = 0; i < 30; i++) {
-					_list1.push(year + i)
-				}
-				this.validityPeriod.push(_list1, _list2, _list3)
-
-			},
-			selectValidityPeriod() {
-				this.isShowcardValidity = true
-			},
-			//设置图片
-			setImage(e) {
-				// 
-				console.log(e);
-				//显示在页面
-				//this.imagesrc = e.path;
-				if (e.dotype == 'idphoto') {
-					_this.zjzClipper(e.path);
-				} else if (e.dotype == 'watermark') {
-					_this.watermark(e.path);
-				} else {
-					_this.savePhoto(e.path);
-				}
-			},
-			//保存图片到相册,方便核查
-			savePhoto(path) {
-				// 
-				this.imagesrc = path;
-				uploadImage('image',path, 'appData/',
-					result => {
-						// 上传成功
-						console.log('图片地址', result)
-					}
-				)
-				//保存到相册
-				// uni.saveImageToPhotosAlbum({
-				// 	filePath: path,
-				// 	success: () => {
-				// 		uni.showToast({
-				// 			title: '已保存至相册',
-				// 			duration: 2000
-				// 		});
-				// 	}
-				// });
-			},
-			uploadImg(type, val) {
-				// 
-				this.uploadType = type
-				this.isShowimgType = true
-				this.carInfo = val
-			},
-			photograph() {
-				console.log('拍照')
-				let that = this;
-				uni.chooseImage({
-					count: 1,
-					success: function(res) {
-						console.log(JSON.stringify(res.tempFilePaths));
-						uploadImage('image',res.tempFilePaths[0], 'appData/',
-							result => {
-								// 上传成功
-								console.log('图片地址', result)
-							}
-						)
-					}
-				});
-
-			},
-			imgTypeSelect(val) {
-				// 
-				console.log(val)
-				console.log(this.uploadType)
-				if (val.name == '相册') {
-					uni.chooseImage({
-						count: 1,
-						sourceType: this.$helper.chooseImage.sourceType,
-						success: function(res) {
-							console.log(JSON.stringify(res.tempFilePaths));
-							uploadImage('image',res.tempFilePaths[0], 'appData/',
-								result => {
-
-									// 上传成功
-									console.log('图片地址', result)
-									switch (_this.uploadType) {
-										case 0:
-											//赋值上传图片图片路径
-											for (let i = 0; i < _this.dataDetails.driverCarInfoList
-												.length; i++) {
-												let _item = _this.dataDetails.driverCarInfoList[i]
-												if (_item.carNumber == _this.carInfo.carNumber) {
-													_item.addressUrl = result
-													}
-										}
-										
-											console.log('人车合影')
-											break
-										case 1:
-											console.log('身份正面')
-											break
-										case 2:
-											console.log('身份反面')
-											break
-										case 3:
-											console.log('银行卡')
-											break
-										case 4:
-									}
-								}
-							)
-						}
-					});
-
-				} else {
-					switch (this.uploadType) {
-						case 0:
-							console.log('人车合影')
-							break
-						case 1:
-							uni.$u.route('/pages/mine/camera/idcard/idcard?dotype=face');
-							console.log('身份正面')
-							break
-						case 2:
-							console.log('身份反面')
-							break
-						case 3:
-							console.log('银行卡')
-							break
-						case 4:
-					}
-				}
-
-			},
-			//身份证正面
-			getImgUrl1(src) {
-				// console.log(src)
-				// console.log('------------res-----------')
-				// let that = this;
-				// that.id[0] = src
-				// that.id1 = src
-				// that.certificates = false
-				// that.personImgs.personImg = that.id[0]
-				// that.$api.doRequest('get', '/driverViewInfo/personShibie', that
-				// 	.personImgs).then(res => {
-				// 	if (res.data.data.recPerson != null) {
-				// 		if (res.data.data.recPerson != "") {
-				// 			that.$set(that.DriverViewInfo, 'driverName', res
-				// 				.data.data.recPerson)
-				// 		}
-				// 	}
-				// 	if (res.data.data.recPersonNo != null) {
-				// 		if (res.data.data.recPersonNo != "") {
-				// 			that.$set(that.DriverViewInfo, 'numberCard', res
-				// 				.data.data.recPersonNo)
-				// 		}
-				// 	}
-				// }).catch(res => {
-				// 	uni.showToast({
-				// 		title: res.data.message,
-				// 		icon: 'none',
-				// 		duration: 2000
-				// 	})
-				// })
-			},
-			handleClick(e) {
-				this.carNumber = e.value
-				this.dataDetails.driverCarInfoList[this.index].carNumber = e.value //键盘输入值
-			},
-			handleShowKeyboard(index) {
-				// 
-				if (this.dataDetails.driverCarInfoList[index].carNumber == '') {
-					this.carNumber = ''
-				} else {
-					this.carNumber = this.dataDetails.driverCarInfoList[index].carNumber
-				}
-				if (this.$refs.keyboard.open) {
-					this.$refs.keyboard.open(false) //true 键盘显示 false 键盘隐藏
-				} else {
-					this.$refs.keyboard[0].open(false)
-				}
-				this.index = index
-				if (this.$refs.keyboard.open) {
-					this.$refs.keyboard.open(true) //true 键盘显示 false 键盘隐藏
-				} else {
-					this.$refs.keyboard[0].open(true)
-				}
-			},
-			addCarNumber(val) {
-				val.push({
-					carNo: ''
-				})
-			},
-			delCarNumber(val, index) {
-				if (val.length > 1) {
-					val.splice(index, 1)
-					this.$forceUpdate()
-				} else {
-					let params = {
-						type: 'error',
-						message: "至少保留一个车牌号!",
-						iconUrl: 'https://cdn.uviewui.com/uview/demo/toast/success.png'
-					}
-					this.$refs.uToast.show({
-						...params
-					})
-				}
-			},
-			addBankNumber(val) {
-				val.push({
-					bankNo: ''
-				})
-			},
-			delBankNumber(val, index) {
-				if (val.length > 1) {
-					val.splice(index, 1)
-					this.$forceUpdate()
-				} else {
-					let params = {
-						type: 'error',
-						message: "至少保留一张银行卡!",
-						iconUrl: 'https://cdn.uviewui.com/uview/demo/toast/success.png'
-					}
-					this.$refs.uToast.show({
-						...params
-					})
-				}
-			},
-			next(val) {
-				console.log(111111111111)
-				uni.$u.route('/pages/mine/driverCertificationNext', {
-					id: 1,
-				});
-			}
-
-		},
-	};
-</script>
-
-<style scoped lang="scss">
-	.row4-img {
-		width: 32rpx;
-		height: 32rpx;
-	}
-</style>

+ 0 - 329
pages/mine/driverCertificationNext.vue

@@ -1,329 +0,0 @@
-<template>
-	<view class="content">
-		<u-radio-group v-model="radiovalue1" iconPlacement="row">
-			<u-radio :customStyle="{marginBottom: '8px'}" v-for="(item, index) in radiolist1" :key="index"
-				:label="item.name" :name="item.name" @change="radioChange">
-			</u-radio>
-		</u-radio-group>
-
-		<view class="level1-title">证件信息</view>
-		<view class="content1">
-			<view class="flex flex-space-between">
-				<view class="left">
-					<view>驾驶证主页</view>
-					<u-button type="primary">上传驾驶证主页</u-button>
-				</view>
-				<view class="left">
-					<view>驾驶证副页</view>
-					<u-button type="primary">上传驾驶证副页</u-button>
-				</view>
-			</view>
-			<view class="flex flex-space-between">
-				<view>驾驶证有效期</view>
-				<view>选择驾驶证有效期</view>
-			</view>
-		</view>
-
-		<u-divider text="分割线"></u-divider>
-		<view class="content2">
-			<view class="flex flex-space-between">
-				<view class="left">
-					<view>行驶证主页</view>
-					<u-button type="primary">上传行驶证主页</u-button>
-				</view>
-				<view class="left">
-					<view>行驶证副页</view>
-					<u-button type="primary">上传行驶证副页</u-button>
-				</view>
-			</view>
-			<view class="flex flex-space-between">
-				<view>行驶证有效期</view>
-				<view>选择行驶证有效期</view>
-			</view>
-		</view>
-		<u-divider text="分割线"></u-divider>
-		<view class="content3">
-			<view class="flex flex-space-between">
-				<view class="left">
-					<view>挂车行驶证主页</view>
-					<u-button type="primary">上传挂车行驶证主页</u-button>
-				</view>
-				<view class="left">
-					<view>挂车行驶证副页</view>
-					<u-button type="primary">上传挂车行驶证副页</u-button>
-				</view>
-			</view>
-			<view class="flex flex-space-between">
-				<view>挂车行驶证有效期</view>
-				<view>选择挂车行驶证有效期</view>
-			</view>
-			<u-divider text="分割线"></u-divider>
-		</view>
-		<view class="content4">
-			<view class="flex s-row">
-				<view class="">从业资格证</view>
-				<u-button type="primary">上传从业资格证</u-button>
-			</view>
-			<view class="flex flex-space-between">
-				<view>从业资格证有效期</view>
-				<view>选择从业资格证有效期</view>
-			</view>
-		</view>
-		<u-divider text="分割线"></u-divider>
-		<view class="content5">
-			<view class="flex s-row">
-				<view class="">运营证</view>
-				<u-button type="primary">上传运营证</u-button>
-			</view>
-			<view class="flex flex-space-between">
-				<view>运营证有效期</view>
-				<view>选择运营证有效期</view>
-			</view>
-		</view>
-		<u-divider text="分割线"></u-divider>
-		<view class="content6">
-			<view class="flex s-row">
-				<view class="">挂车运营证</view>
-				<u-button type="primary">上传挂车运营证</u-button>
-			</view>
-			<view class="flex flex-space-between">
-				<view>挂车运营证有效期</view>
-				<view>选择挂车运营证有效期</view>
-			</view>
-		</view>
-		<u-button type="primary" @click="submit">提交</u-button>
-		<u-toast ref="uToast"></u-toast>
-
-	</view>
-</template>
-
-<script>
-	import uploadImage from '@/components/ossutil/uploadFile.js';
-	var _this;
-	export default {
-		components: {},
-		data() {
-			return {
-				radiolist1: [{
-						name: '挂车司机',
-						disabled: false
-					},
-					{
-						name: '非挂车司机',
-						disabled: false
-					}
-				],
-				// u-radio-group的v-model绑定的值如果设置为某个radio的name,就会被默认选中
-				radiovalue1: '挂车司机',
-			};
-		},
-		onLoad(options) {
-			_this = this;
-			console.log(options)
-		},
-		methods: {
-			submit() {
-				// 校验
-				console.log('提交')
-			},
-			radioChange(n) {
-				console.log('radioChange', n);
-			},
-			//设置图片
-			setImage(e) {
-				// 
-				console.log(e);
-				//显示在页面
-				//this.imagesrc = e.path;
-				if (e.dotype == 'idphoto') {
-					_this.zjzClipper(e.path);
-				} else if (e.dotype == 'watermark') {
-					_this.watermark(e.path);
-				} else {
-					_this.savePhoto(e.path);
-				}
-			},
-			//保存图片到相册,方便核查
-			savePhoto(path) {
-				// 
-				this.imagesrc = path;
-				uploadImage('image',path, 'appData/',
-					result => {
-						// 上传成功
-						console.log('图片地址', result)
-					}
-				)
-				//保存到相册
-				// uni.saveImageToPhotosAlbum({
-				// 	filePath: path,
-				// 	success: () => {
-				// 		uni.showToast({
-				// 			title: '已保存至相册',
-				// 			duration: 2000
-				// 		});
-				// 	}
-				// });
-			},
-			uploadImg(type) {
-
-				this.uploadType = type
-				this.isShowimgType = true
-			},
-			photograph() {
-				console.log('拍照')
-				let that = this;
-				uni.chooseImage({
-					count: 1,
-					success: function(res) {
-						console.log(JSON.stringify(res.tempFilePaths));
-						uploadImage('image',res.tempFilePaths[0], 'appData/',
-							result => {
-								// 上传成功
-								console.log('图片地址', result)
-							}
-						)
-					}
-				});
-
-			},
-			imgTypeSelect(val) {
-				console.log(val)
-				console.log(this.uploadType)
-				if (val.name == '相册') {
-					uni.chooseImage({
-						count: 1,
-						sourceType: this.$helper.chooseImage.sourceType,
-						success: function(res) {
-							console.log(JSON.stringify(res.tempFilePaths));
-							uploadImage('image',res.tempFilePaths[0], 'appData/',
-								result => {
-									// 上传成功
-									console.log('图片地址', result)
-									switch (this.uploadType) {
-										case 0:
-											console.log('人车合影')
-											break
-										case 1:
-											console.log('身份正面')
-											break
-										case 2:
-											console.log('身份反面')
-											break
-										case 3:
-											console.log('银行卡')
-											break
-										case 4:
-									}
-								}
-							)
-						}
-					});
-
-				} else {
-					// 
-					switch (this.uploadType) {
-						case 0:
-
-
-							console.log('人车合影')
-
-							break
-						case 1:
-							uni.$u.route('/pages/mine/camera/idcard/idcard?dotype=face');
-							console.log('身份正面')
-							break
-						case 2:
-							console.log('身份反面')
-							break
-						case 3:
-							console.log('银行卡')
-							break
-						case 4:
-					}
-				}
-
-			},
-			// 上传人车合影
-			unloadGroupPhoto() {
-				this.isShowimgType = true
-				// uni.chooseImage({
-				//     count: 1, 
-				//     success: function (res) {
-				//         console.log(JSON.stringify(res.tempFilePaths));
-				// 		uploadImage(res.tempFilePaths[0], 'appData/',
-				// 			result => {
-				// 				// 上传成功
-				// 				console.log('图片地址', result)
-				// 			}
-				// 		)
-				//     }
-				// });
-			},
-			//身份证正面
-			getImgUrl1(src) {
-				// console.log(src)
-				// console.log('------------res-----------')
-				// let that = this;
-				// that.id[0] = src
-				// that.id1 = src
-				// that.certificates = false
-				// that.personImgs.personImg = that.id[0]
-				// that.$api.doRequest('get', '/driverViewInfo/personShibie', that
-				// 	.personImgs).then(res => {
-				// 	if (res.data.data.recPerson != null) {
-				// 		if (res.data.data.recPerson != "") {
-				// 			that.$set(that.DriverViewInfo, 'driverName', res
-				// 				.data.data.recPerson)
-				// 		}
-				// 	}
-				// 	if (res.data.data.recPersonNo != null) {
-				// 		if (res.data.data.recPersonNo != "") {
-				// 			that.$set(that.DriverViewInfo, 'numberCard', res
-				// 				.data.data.recPersonNo)
-				// 		}
-				// 	}
-				// }).catch(res => {
-				// 	uni.showToast({
-				// 		title: res.data.message,
-				// 		icon: 'none',
-				// 		duration: 2000
-				// 	})
-				// })
-			},
-
-			// getImgUrl(res) {
-			// 	// this.detailData.addressUrl = res
-			// 	console.log(res)
-			// 	console.log('------------res-----------')
-			// },
-			// onError(error) {
-			// 	console.log('------------error-----------')
-			// 	console.log(error)
-			// },
-			// onRemove(index) {},
-			// filterFileType(index, lists) {
-			// 	if (lists[index].fileType != 'jpg' && lists[index].fileType != 'png' && lists[index].fileType != 'gif') {
-			// 		lists.splice(index, 1);
-			// 		// 当前文件不支持
-			// 		uni.showModal({
-			// 			title: '暂不支持当前图片类型',
-			// 			showCancel: false
-			// 		});
-			// 	} else {
-			// 		this.isAdd = false;
-			// 	}
-			// },
-			// onProgress(e) {
-			// 	console.log(e)
-			// },
-
-		},
-	};
-</script>
-
-<style scoped lang="scss">
-	.row4-img {
-		width: 32rpx;
-		height: 32rpx;
-	}
-</style>

+ 113 - 109
pages/mine/index.vue

@@ -22,113 +22,116 @@
 							<view @click="goDetailPage('/pages/mine/cargoowner/cargoowner',true)" v-if='!status'
 								class='currectstatus1'>
 								{{CargoOwner.authenticationStatus?CargoOwner.authenticationStatus:'未认证'}}
+							</view>
 						</view>
+						<view class='phone'>{{starUserphone}}</view>
 					</view>
-					<view class='phone'>{{starUserphone}}</view>
+					<view class='information' v-else @click="toLogin">立即登录</view>
 				</view>
-				<view class='information' v-else @click="toLogin">立即登录</view>
-			</view>
-			<view v-if='hasLogin&&!status1' class='authentication flex flex-space-between'>
-				<view>
-					<view style='font-size:14px;'>货主身份认证</view>
-					<view style='color:#DDA558;font-size:12px;'>您还没有完成货主认证哦~</view>
-				</view>
-				<view @click="goDetailPage('/pages/mine/cargoowner/cargoowner',true)" class='promptlyAuthentication'>立即认证
+				<view v-if='hasLogin&&!status1' class='authentication flex flex-space-between'>
+					<view>
+						<view style='font-size:14px;'>货主身份认证</view>
+						<view style='color:#DDA558;font-size:12px;'>您还没有完成货主认证哦~</view>
+					</view>
+					<view @click="goDetailPage('/pages/mine/cargoowner/cargoowner',true)"
+						class='promptlyAuthentication'>立即认证
+					</view>
 				</view>
 			</view>
-		</view>
 
-		<view class='flex operate flex-space-around'>
-			<view style='font-size:14px;' class='flex items-center' @click="toMyRelease">
-				<u--image style='margin-right:8px;position:relative;top:3px;' :showLoading="true"
-					src="../../static/mine/wodefabu.png" width="42px" height="42px"></u--image>我的发布
-			</view>
-			<view style='font-size:14px;' class='flex items-center' @click="goDetailPage('/pages/mine/evaluate')">
-				<u--image style='margin-right:8px;position:relative;top:3px;' :showLoading="true"
-					src="../../static/mine/pingjia.png" width="42px" height="42px"></u--image>
-				司机评价
-			</view>
-		</view>
-		<view class="content1">
-			<view class="flex flex-space-between content1-item"
-				@click="goDetailPage('/pages/mine/myAccount/index',false)">
-				<view class='flex items-center'>
-					<u--image style='margin-right:8px;' :showLoading="true" src="../../static/mine/zhanghu.png"
-						width="20px" height="20px"></u--image>我的账户
+			<view class='flex operate flex-space-around'>
+				<view style='font-size:14px;' class='flex items-center' @click="toMyRelease">
+					<u--image style='margin-right:8px;position:relative;top:3px;' :showLoading="true"
+						src="../../static/mine/wodefabu.png" width="42px" height="42px"></u--image>我的发布
 				</view>
-				<view>
-					<image class='right' src="@/static/mine/right.png" mode=""></image>
-					<!-- <u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon> -->
+				<view style='font-size:14px;' class='flex items-center' @click="goDetailPage('/pages/mine/evaluate')">
+					<u--image style='margin-right:8px;position:relative;top:3px;' :showLoading="true"
+						src="../../static/mine/pingjia.png" width="42px" height="42px"></u--image>
+					司机评价
 				</view>
 			</view>
-			<view class="flex flex-space-between content1-item"
-				@click="goDetailPage('/pages/mine/company/index',false)">
-				<view class='flex items-center'>
-					<u--image style='margin-right:8px;' :showLoading="true" src="../../static/mine/wodegongsi.png"
-						width="20px" height="20px"></u--image>我的公司
-				</view>
-				<view class='flex'>
-					<image class='right' src="@/static/mine/right.png" mode=""></image>
-					<!-- <u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon> -->
-				</view>
-			</view>
-			<view class="flex flex-space-between content1-item"
-				@click="goDetailPage('/pages/mine/manageBankCards/index',false)">
-				<view class='flex items-center'>
-					<u--image style='margin-right:8px;' :showLoading="true" src="../../static/mine/yinhangka.png"
-						width="20px" height="20px"></u--image>我的银行卡
-				</view>
-				<view>
-					<image class='right' src="@/static/mine/right.png" mode=""></image>
-					<!-- <u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon> -->
-				</view>
-			</view>
-			<view class="flex flex-space-between content1-item"
-				@click="goDetailPage('/pages/mine/cargoowner/cargoowner',true)">
-				<view class='flex items-center'>
-					<u--image style='margin-right:8px;' :showLoading="true" src="../../static/mine/huozhu.png"
-						width="20px" height="20px"></u--image>货主认证
-				</view>
-				<view class='flex'>
-					<image class='right' src="@/static/mine/right.png" mode=""></image>
-					<!-- <u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon> -->
+			<view class="content1">
+				<view class="flex flex-space-between content1-item"
+					@click="goDetailPage('/pages/mine/myAccount/index',false)">
+					<view class='flex items-center'>
+						<u--image style='margin-right:8px;' :showLoading="true" src="../../static/mine/zhanghu.png"
+							width="20px" height="20px"></u--image>我的账户
+					</view>
+					<view>
+						<image class='right' src="@/static/mine/right.png" mode=""></image>
+						<!-- <u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon> -->
+					</view>
 				</view>
-			</view>
-			<view class="flex flex-space-between content1-item"
-				@click="goDetailPage('/pages/mine/agentCargoOwner',false)">
-				<view  class='flex'>
-					<view class='flex items-center'><u--image style='margin-right:8px;' :showLoading="true" src="../../static/mine/dailihuozhu.png"
-						width="20px" height="20px"></u--image>代理货主</view>
-					<u-badge v-if='redDotPrompt==0' :isDot="true" type="error"></u-badge>
+				<view class="flex flex-space-between content1-item"
+					@click="goDetailPage('/pages/mine/company/index',false)">
+					<view class='flex items-center'>
+						<u--image style='margin-right:8px;' :showLoading="true" src="../../static/mine/wodegongsi.png"
+							width="20px" height="20px"></u--image>我的公司
+					</view>
+					<view class='flex'>
+						<image class='right' src="@/static/mine/right.png" mode=""></image>
+						<!-- <u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon> -->
+					</view>
 				</view>
-				<view >
-					<image class='right' src="@/static/mine/right.png" mode=""></image>
-					<!-- <u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon> -->
+				<view class="flex flex-space-between content1-item"
+					@click="goDetailPage('/pages/mine/manageBankCards/index',false)">
+					<view class='flex items-center'>
+						<u--image style='margin-right:8px;' :showLoading="true" src="../../static/mine/yinhangka.png"
+							width="20px" height="20px"></u--image>我的银行卡
+					</view>
+					<view>
+						<image class='right' src="@/static/mine/right.png" mode=""></image>
+						<!-- <u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon> -->
+					</view>
 				</view>
-			</view>
-			<view class="flex flex-space-between content1-item" @click="$helper.contactCustomerService()">
-				<view class="flex align-center">
-					<u--image style='margin-right:8px;' :showLoading="true" src="../../static/images/mine/kf.png"
-						width="20px" height="20px"></u--image>
-					<view>联系客服</view>
+				<view class="flex flex-space-between content1-item"
+					@click="goDetailPage('/pages/mine/cargoowner/cargoowner',true)">
+					<view class='flex items-center'>
+						<u--image style='margin-right:8px;' :showLoading="true" src="../../static/mine/huozhu.png"
+							width="20px" height="20px"></u--image>货主认证
+					</view>
+					<view class='flex'>
+						<image class='right' src="@/static/mine/right.png" mode=""></image>
+						<!-- <u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon> -->
+					</view>
 				</view>
-				<view>
-					<image class='right' src="@/static/mine/right.png" mode=""></image>
+				<view class="flex flex-space-between content1-item"
+					@click="goDetailPage('/pages/mine/agentCargoOwner',false)">
+					<view class='flex'>
+						<view class='flex items-center'>
+							<u--image style='margin-right:8px;' :showLoading="true"
+								src="../../static/mine/dailihuozhu.png" width="20px" height="20px"></u--image>代理货主
+						</view>
+						<u-badge v-if='redDotPrompt==0 && hasLogin' :isDot="true" type="error"></u-badge>
+					</view>
+					<view>
+						<image class='right' src="@/static/mine/right.png" mode=""></image>
+						<!-- <u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon> -->
+					</view>
 				</view>
-			</view>
-			<view class="flex flex-space-between content1-item"
-				@click="goDetailPage('/pages/mine/helpDescription',true)">
-				<view class='flex items-center'>
-					<u--image style='margin-right:8px;' :showLoading="true" src="../../static/mine/bangzhushuoming.png"
-						width="20px" height="20px"></u--image>帮助说明
+				<view class="flex flex-space-between content1-item" @click="$helper.contactCustomerService()">
+					<view class="flex align-center">
+						<u--image style='margin-right:8px;' :showLoading="true" src="../../static/images/mine/kf.png"
+							width="20px" height="20px"></u--image>
+						<view>联系客服</view>
+					</view>
+					<view>
+						<image class='right' src="@/static/mine/right.png" mode=""></image>
+					</view>
 				</view>
-				<view>
-					<image class='right' src="@/static/mine/right.png" mode=""></image>
-					<!-- <u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon> -->
+				<view class="flex flex-space-between content1-item"
+					@click="goDetailPage('/pages/mine/helpDescription',true)">
+					<view class='flex items-center'>
+						<u--image style='margin-right:8px;' :showLoading="true"
+							src="../../static/mine/bangzhushuoming.png" width="20px" height="20px"></u--image>帮助说明
+					</view>
+					<view>
+						<image class='right' src="@/static/mine/right.png" mode=""></image>
+						<!-- <u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon> -->
+					</view>
 				</view>
-			</view>
 
-			<!-- 		<view class="flex flex-space-between content1-item"
+				<!-- 		<view class="flex flex-space-between content1-item"
 					@click="goDetailPage('/pages/mine/driverEvaluation')">
 					<view class='flex items-center'>
 						<u--image style='margin-right:8px;' :showLoading="true" src="../../static/mine/dailihuozhu.png"
@@ -138,7 +141,7 @@
 						<u-icon name="arrow-right" color="#7E7E7E" size="10"></u-icon>
 					</view>
 				</view> -->
-			<!-- <view class="flex flex-space-between content1-item" @click="goDetailPage('/pages/mine/set')">
+				<!-- <view class="flex flex-space-between content1-item" @click="goDetailPage('/pages/mine/set')">
 					<view class='flex items-center'>
 						<u--image style='margin-right:8px;' :showLoading="true" src="../../static/mine/dailihuozhu.png"
 							width="20px" height="20px"></u--image>设置
@@ -148,12 +151,12 @@
 					</view>
 				</view> -->
 
+			</view>
 		</view>
-	</view>
-	<u-modal :show="isShowAlert" :title="alertTitle" :content='alertContent' :closeOnClickOverlay='true'
-		:showCancelButton='showCancelButton' confirmColor='#2772FB' @confirm="confirmClick" @close="cancelClick"
-		@cancel="cancelClick"></u-modal>
-	<u-toast ref="uToast"></u-toast>
+		<u-modal :show="isShowAlert" :title="alertTitle" :content='alertContent' :closeOnClickOverlay='true'
+			:showCancelButton='showCancelButton' confirmColor='#2772FB' @confirm="confirmClick" @close="cancelClick"
+			@cancel="cancelClick"></u-modal>
+		<u-toast ref="uToast"></u-toast>
 	</view>
 </template>
 
@@ -166,7 +169,7 @@
 			return {
 				confirmText: '',
 				CargoOwner: {},
-				redDotPrompt:'',
+				redDotPrompt: 1,
 				showCancelButton: true,
 				isShowAlert: false,
 				alertTitle: '',
@@ -227,7 +230,7 @@
 				}).then(res => {
 					uni.setStorageSync("firstAuthentication", res.data)
 					if (res.data) {
-						this.redDotPrompt=res.data.redDotPrompt
+						this.redDotPrompt = res.data.redDotPrompt
 						this.userName = res.data.call
 						if (res.data.sex) {
 							if (res.data.sex == '男') {
@@ -288,7 +291,6 @@
 					uni.navigateTo({
 						url: `./confirm?token=${this.token}`
 					});
-
 				})
 			},
 			confirmClick() {
@@ -328,19 +330,19 @@
 						phone: this.userInfo.phone
 					}).then(res => {
 						uni.setStorageSync("firstAuthentication", res.data)
-						if (res.data.authenticationStatus!='已认证'&&!isClick) {
+						if (res.data.authenticationStatus != '已认证' && !isClick) {
 							uni.$u.toast('请先完成货主认证!')
-						}else{
-							if(src=='/pages/mine/agentCargoOwner'){
+						} else {
+							if (src == '/pages/mine/agentCargoOwner') {
 								this.$request.baseRequest('post', '/cargoOwnerInfo/api/readRed', {
 									id: res.data.id
 								}).then(res1 => {
 									uni.$u.route(src);
 								})
-							}else{
+							} else {
 								uni.$u.route(src);
 							}
-							
+
 						}
 					})
 					// if (isClick) {
@@ -380,7 +382,8 @@
 		background: url('~@/static/mine/bg@3x.png');
 		background-size: 100% 100%;
 		margin: 0 auto;
-		height: calc(100vh - 35px);
+		height: calc(100vh - 100px);
+
 		.container_content {
 			padding: 18px;
 		}
@@ -476,9 +479,10 @@
 		width: 10px;
 		height: 10px;
 	}
-	.u-badge--error{
-		background:#EE5032;
-		width:6px;
-		height:6px;
+
+	.u-badge--error {
+		background: #EE5032;
+		width: 6px;
+		height: 6px;
 	}
 </style>

+ 11 - 6
pages/mine/manageBankCards/addBankCard.vue

@@ -40,12 +40,12 @@
 				<view class="flex align-center" v-if="!isShowManualInput">
 					<!-- 	<u--input  @click="selectZhbank" placeholder="选择开户支行" inputAlign='left' border="none" disabled>
 					</u--input> -->
-					<u--input class="select-bankzh point" placeholder="选择开户支行" inputAlign='left' border="none"
+					<!-- <u--input class="select-bankzh point" placeholder="选择开户支行" inputAlign='left' border="none"
 						v-model="dataDetails.bankDepositBranch">
-					</u--input>
-				<!-- 	<view class="select-bankzh" @click="selectZhbank">
+					</u--input> -->
+					<view :style="{'color':dataDetails.bankDepositBranch?'#000':'#C6CBD5'}" style='font-size:15px;' class="select-bankzh" @click="selectZhbank">
 						{{dataDetails.bankDepositBranch?dataDetails.bankDepositBranch:'选择开户支行'}}
-					</view> -->
+					</view>
 					<view @click="manualInput" class="type">手动输入</view>
 				</view>
 
@@ -251,6 +251,7 @@
 				// });
 			},
 			uploadImg() {
+				this.dataDetails.bankDepositBranch=''
 				this.imgTypeSelect()
 				// this.isShowimgType = true
 			},
@@ -323,6 +324,7 @@
 			},
 
 			imgTypeSelect(val) {
+				
 				console.log(val)
 				// if (val.name == '相册') {
 					uni.chooseImage({
@@ -414,12 +416,12 @@
 							delete that.dataDetails.payeeAddressUrl
 							that.$request.baseRequest('post', '/hyCargoOwnerPayeeInfo/api/addPayee',
 									that.dataDetails).then(res => {
+										uni.hideLoading()
 									if (res.code == '200') {
 										let params = {
 											type: 'success',
 											message: "提交成功",
 										}
-										uni.hideLoading()
 										this.submitstatus=false
 										that.$refs.uToast.show({
 											...params
@@ -436,10 +438,12 @@
 					
 								})
 								.catch(res => {
+									uni.hideLoading()
 									this.submitstatus
 									uni.$u.toast(res.message);
 								});
 						} else {
+							uni.hideLoading()
 							this.submitstatus=false
 							uni.$u.toast(response.data.distinguish);
 						}
@@ -465,7 +469,8 @@
 	}
 
 	.content {
-		padding: 20rpx 20rpx 140rpx 20rpx;
+		padding: 20rpx ;
+		height: calc(100vh - 23vh);
 	}
 
 	.content3 {

+ 1 - 0
pages/mine/manageBankCards/editBankCard.vue

@@ -237,6 +237,7 @@
 
 	.content {
 		padding: 20rpx;
+		height: calc(100vh - 23vh);
 	}
 
 	.content3 {

+ 2 - 3
pages/mine/set.vue

@@ -56,7 +56,7 @@
 		</view>
 		<u-modal :show="isShowAlert" :title-style="{fontSize: '18px',fontWeight:'500'}"
 			:content-style="{fontSize: '14px',fontWeight:'400'}" confirm-color='#2772FB' confirm-text='确定' :title='title'
-			:showCancelButton='false' :content="content" @confirm="logout" @cancel="cancelClick"></u-modal>
+			:showCancelButton='true' :content="content" @confirm="logout" @cancel="cancelClick"></u-modal>
 	</view>
 </template>
 
@@ -227,8 +227,8 @@
 	}
 	.content{
 		padding:0 20px;
+		height: calc(100vh - 7vh);
 	}
-
 	.pictures {
 		justify-content: flex-end;
 		width: 35px;
@@ -236,7 +236,6 @@
 		background-color: #E0FAF6;
 		border-radius: 18px;
 	}
-
 	.picture {
 		width: 60px;
 		height: 60px;

+ 25 - 8
pages/mine/settings/editPassword.vue

@@ -13,14 +13,22 @@
 					<button :disabled="disabled1" class="code-style code-small" @tap="getCode">{{tips}}</button>
 				</u-form-item>
 				<u-form-item label="新密码" prop="password" borderBottom>
-					<u--input v-model="registerData.password" border="none" placeholder="请输入新密码,6-16位字符"></u--input>
+					<!-- <u--input v-model="registerData.password" border="none" suffixIcon="eye" @suffix="textChange" placeholder="请输入新密码,6-16位字符"></u--input> -->
+					<input class='password' v-model='registerData.password' v-if="isShowPassword=='password'"
+						placeholder="请输入密码" type="password">
+					<input maxlength='16' class='password' v-model='registerData.password' v-else type="text"
+						placeholder="请输入密码">
+					<image class='yanjingicon' style='width:22px;height:22px;' @click="passWordStatus(1)"
+						v-if="isShowPassword=='password'" src="../../../static/yioncang.png" mode=""></image>
+					<image class='yanjingicon' style='width:22px;height:22px;' @click="passWordStatus(2)" v-else
+						src="../../../static/xianshi.png" mode=""></image>
 				</u-form-item>
 
 				<u-code ref="uCode" @change="codeChange" seconds="60" @start="disabled1 = true"
 					@end="disabled1 = false">
 				</u-code>
 			</u--form>
-			<button class="code-style reset" @click="$u.throttle(reset, 5000)">重置密码</button>
+			<button class="code-style reset" @click="$u.throttle(reset, 1000)">重置密码</button>
 		</view>
 	</view>
 </template>
@@ -55,7 +63,8 @@
 						message: '请填写6位验证码',
 						trigger: ['blur']
 					},
-				}
+				},
+				isShowPassword: 'password',
 			}
 		},
 		computed: {
@@ -77,6 +86,13 @@
 			this.registerData.phone = this.userInfo.phone
 		},
 		methods: {
+			passWordStatus(type) {
+				if (type == 1) {
+					this.isShowPassword = 'text'
+				} else {
+					this.isShowPassword = 'password'
+				}
+			},
 			navBack() {
 				uni.navigateBack();
 			},
@@ -94,15 +110,16 @@
 						})
 						_this.$request.baseRequest('get', '/commonUser/sendVerifyCode', {
 								phone: this.registerData.phone,
-								identification:2
+								identification: 2,
+								flag: 2
 							}).then(res => {
-								if(res.code==200){
+								if (res.code == 200) {
 									uni.hideLoading();
 									// 这里此提示会被this.start()方法中的提示覆盖
 									uni.$u.toast('验证码已发送');
 									// 通知验证码组件内部开始倒计时
 									this.$refs.uCode.start();
-								}else{
+								} else {
 									uni.showToast({
 										title: res.message,
 										icon: 'none',
@@ -146,8 +163,7 @@
 								// 获得数据
 								if (res.code == 200) {
 									uni.clearStorageSync();
-									this.$request.baseRequest('post', '/auth/api/logout').then(res => {
-									})
+									this.$request.baseRequest('post', '/auth/api/logout').then(res => {})
 									this.$store.commit('logout')
 									// this.$api.logout()
 									uni.showToast({
@@ -185,6 +201,7 @@
 		height: 100vh;
 		padding-top: 85px;
 		position: relative;
+		box-sizing: border-box;
 	}
 
 	.back-btn {

+ 3 - 0
pages/news/index.vue

@@ -175,6 +175,7 @@
 
 					})
 					.catch(res => {
+						uni.hideLoading()
 						uni.$u.toast(res.message);
 					});
 			},
@@ -192,11 +193,13 @@
 				that.$request.baseRequest('post', '/newsInfo/api/editNewsInfo', {
 						id: val.id,
 					}).then(res => {
+						uni.hideLoading()
 						that.mescroll.resetUpScroll()
 						that.look()
 						uni.hideLoading()
 					})
 					.catch(res => {
+						uni.hideLoading()
 						uni.$u.toast(res.message);
 					});
 			},

+ 0 - 3
pages/order/addEvaluation.vue

@@ -122,7 +122,6 @@
 		},
 		onNavigationBarButtonTap() {
 			// console.log(12121,uni.$u,this)
-			// debugger
 			uni.$u.throttle(this.submit(), 5000)
 			// uni.$u.debounce(this.submit, 500)
 			
@@ -208,9 +207,7 @@
 
 			},
 			getVal(e) {
-				// debugger
 				this.starIndex = e.value
-				console.log(e)
 			},
 			checkboxChange(n) {
 				console.log('change', n);

+ 20 - 4
pages/order/driverDetail.vue

@@ -68,7 +68,7 @@
 				</view>
 			</view>
 				<view class="flex flex-space-between">
-					<view :class="haoType == '' ? 'btn-active':'btn'" @click="btnChange('')">全部({{ping.haoPing+ping.chaPing}})</view>
+					<view :class="haoType == '' ? 'btn-active':'btn'" @click="btnChange('')">全部({{total}})</view>
 					<!-- <view :class="btnData == 2 ? 'btn-active':'btn'" @click="btnChange(2)">最新(1)</view> -->
 					<view :class="haoType == 1 ? 'btn-active':'btn'" @click="btnChange(1)">好评({{ping.haoPing}})</view>
 					<view :class="haoType == 2 ? 'btn-active':'btn'" @click="btnChange(2)">差评({{ping.chaPing}})</view>
@@ -138,6 +138,7 @@
 	import {
 		mapState
 	} from 'vuex';
+	import permision from "@/js_sdk/wa-permission/permission.js"
 	import start from '../../common/components/uni-rate.vue'
 	import MescrollMixin from "@/uni_modules/mescroll-uni/components/mescroll-uni/mescroll-mixins.js";
 	export default {
@@ -193,6 +194,7 @@
 					}, 2000)
 				},
 		onLoad(options) {
+			this.get_camera_permission()
 			this.dataObj =JSON.parse(options.driver) 
 			console.log(this.dataObj)
 			that = this
@@ -207,6 +209,23 @@
 			...mapState(['hasLogin', 'userInfo', 'firstAuthentication'])
 		},
 		methods: {
+			async get_camera_permission() {
+				var phone = await permision.requestAndroidPermission("android.permission.CALL_PHONE")
+				if (phone == false) {
+					uni.showModal({
+						title: '提示',
+						content: '您已经关闭拨打电话权限,去设置',
+						success: function(res) {
+							if (res.confirm) {
+								permision.gotoAppPermissionSetting()
+								// plus.runtime.openURL("app-settings:");
+							} else if (res.cancel) {
+								console.log('用户点击取消');
+							}
+						}
+					});
+				}
+			},
 			toPhone(){
 				console.log(this.driverList.driverPhone)
 				var that=this
@@ -244,7 +263,6 @@
 				this.tabIndex = index
 			},
 			btnChange(num) {
-				// debugger
 				this.haoType = num
 				this.upCallback({size:10,num:1})
 				// this.getList()
@@ -318,8 +336,6 @@
 				
 			},
 			// getList() {
-
-			// 		debugger
 			// 	this.$request.baseRequest('get', '/orderInfo/selectHaoPing', {
 			// 			commonId: this.userInfo.id,
 			// 			haoType:''

+ 3 - 1
pages/order/index.vue

@@ -407,7 +407,7 @@
 				size: 10,
 				num: 1
 			})
-			that.$request.baseRequest('get', '/newsInfo/unreadMessage', {
+			this.$request.baseRequest('get', '/newsInfo/unreadMessage', {
 				reCommonId: this.userInfo.id,
 			}).then(res3 => {
 				if (res3.data || res3.data == 0) {
@@ -1177,6 +1177,8 @@
 	.pingjia {
 		width: 14px;
 		height: 14px;
+		margin-right: 10rpx;
+		top: 2rpx;
 	}
 
 	.u-popup-wrap {

+ 1 - 1
pages/order/map.nvue

@@ -84,7 +84,7 @@
 				})
 				// this.$request.baseRequest('post', '/hyOrderTravelPath/getInfo', {
 				// 		orderId: this.id,
-				// 	}).then(res => {debugger
+				// 	}).then(res => {
 				// 	console.log("res",res)
 				// 	// this.polyline[0].points = [
 				// 	// 	{latitude: 39.997761, longitude: 116.478935},

+ 21 - 2
pages/order/orderDetails.vue

@@ -234,7 +234,7 @@
 			<view class='row-between'>
 				<view class="row-left-text gray">运费尾款</view>
 				<view class="row-right-text">
-					{{dataObj.freightInfo.ownerFreightBalance?dataObj.freightInfo.ownerFreightBalance:"未支付"}}
+					{{dataObj.freightInfo.ownerFreightBalanceDate?dataObj.freightInfo.ownerFreightBalance:"未支付"}}
 				</view>
 			</view>
 			<view class='flex flex-end'>
@@ -242,7 +242,7 @@
 			</view>
 			<view style='flex-wrap: wrap;' class='flex mx row-left-text'>
 				<!-- 明细:预付{{dataObj.advanceCharge}}元,服务费{{dataObj.freightInfo.driverServiceCharge}}元,尾款{{dataObj.freightInfo.ownerFreightBalance}}元,合计{{dataObj.freightInfo.totalPayment}}元。 -->
-				明细:预付{{dataObj.advanceCharge}}元,工本费{{dataObj.freightInfo.ownerServiceCharge}}元,<text v-if="dataObj.freightInfo.ownerFreightBalance">尾款{{dataObj.freightInfo.ownerFreightBalance}}元,</text>合计{{dataObj.freightInfo.totalPayment}}元。</view>
+				明细:预付{{dataObj.advanceCharge}}元,工本费{{dataObj.freightInfo.ownerServiceCharge}}元,<text v-if="dataObj.freightInfo.ownerFreightBalance">尾款{{dataObj.freightInfo.ownerFreightBalance}}元,</text>合计{{dataObj.freightInfo.totalPayment}}元。</view>
 			</view>
 		<!-- v-if="status3" -->
 		<view class="content4" v-if="status3">
@@ -355,6 +355,7 @@
 
 <script>
 	var that;
+	import permision from "@/js_sdk/wa-permission/permission.js"
 	import uniPopup from '@/components/uni-popup/uni-popup.vue'
 	import uploadImage from '@/components/ossutil/uploadFile.js';
 	export default {
@@ -419,6 +420,7 @@
 		onLoad(options) {
 			that = this
 			this.id = options.id
+			this.get_camera_permission()
 			// this.ctx = uni.createCanvasContext("handWriting");
 			// this.$nextTick(() => {
 			// 	uni.createSelectorQuery().select('.handCenter').boundingClientRect(rect => {
@@ -434,6 +436,23 @@
 			this.getList()
 		},
 		methods: {
+			async get_camera_permission() {
+				var phone = await permision.requestAndroidPermission("android.permission.CALL_PHONE")
+				if (phone == false) {
+					uni.showModal({
+						title: '提示',
+						content: '您已经关闭拨打电话权限,去设置',
+						success: function(res) {
+							if (res.confirm) {
+								permision.gotoAppPermissionSetting()
+								// plus.runtime.openURL("app-settings:");
+							} else if (res.cancel) {
+								console.log('用户点击取消');
+							}
+						}
+					});
+				}
+			},
 			moneyClick(){
 				this.moneyShow = false
 				if(this.dataObj.cargoOwnerStatus == "司机驳回运费信息"){

+ 1 - 0
pages/order/signContract.vue

@@ -224,6 +224,7 @@
 											}
 										})
 									.catch(res => {
+										uni.hideLoading()
 										uni.$u.toast(res.message);
 									});
 							}

+ 11 - 3
pages/public/code.vue

@@ -35,8 +35,8 @@
 		<view class="top_four">
 			<input type="number" class="input_show" maxlength="6" @input='submit' v-model="inputList" focus="true" />
 		</view>
-		<!-- 重新获取 -->
-		<view class="top_five" @click='regain' :class="!status ? 'active' : '' "><text v-if="!status">重新发送</text><text
+		<!-- 重新获取 regain-->
+		<view class="top_five" @click='judge' :class="!status ? 'active' : '' "><text v-if="!status">重新发送</text><text
 				v-if="status">{{count_down}}秒后重新发送</text></view>
 	</view>
 </template>
@@ -73,8 +73,15 @@
 			navBack() {
 				uni.navigateBack();
 			},
+			judge(){
+				if(this.count_down > 0){
+					return
+				}else{
+					this.regain()
+				}
+			},
 			regain() {
-				console.log("regain", this.phone);
+				this.count_down = 60
 				this.status = true
 				// console.log(e)150500
 				// 设定一个定时器 1000是1秒的意思
@@ -148,6 +155,7 @@
 							}
 						})
 						.catch(res => {
+							uni.hideLoading()
 							uni.showToast({
 								title: res.message,
 								icon: 'none',

+ 23 - 0
pages/public/cytScrectAgreement/cytScrectAgreement.vue

@@ -0,0 +1,23 @@
+<template>
+	<web-view :src="url"></web-view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				url: ""
+			}
+		},
+		onLoad: function(option) {
+			this.url = option.url;
+		},
+		methods: {}
+	}
+</script>
+
+
+
+<style>
+
+</style>

+ 51 - 24
pages/public/login.vue

@@ -9,15 +9,19 @@
 				class="flex">
 				<view class="phone-before-num NumberMedium">+86</view>
 				<view style='width:85%;'>
-					<input class='phone' maxlength='11' v-model='phone'  placeholder="请输入手机号码" type="number">
+					<input class='phone' maxlength='11' v-model='phone' placeholder="请输入手机号码" type="number">
 				</view>
 			</view>
 			<view style='margin-top:20px;border-bottom:1px solid #E8E9ED;position:relative;height:40px'>
 				<view style='position:relative;'>
-					<input class='password' v-model='password' v-if="isShowPassword=='password'" placeholder="请输入密码" type="password">
-					<input class='password' v-model='password' v-else type="text" placeholder="请输入密码">
-						<image class='yanjingicon' style='width:22px;height:22px;' @click="passWordStatus(1)" v-if="isShowPassword=='password'" src="../../static/yioncang.png" mode=""></image>
-						<image class='yanjingicon' style='width:22px;height:22px;' @click="passWordStatus(2)" v-else src="../../static/xianshi.png" mode=""></image>
+					<input class='password' v-model='password' v-if="isShowPassword=='password'" placeholder="请输入密码"
+						type="password" @input="check">
+					<input maxlength='16' class='password' v-model='password' v-else type="text" placeholder="请输入密码"
+						@input="check">
+					<image class='yanjingicon' style='width:22px;height:22px;' @click="passWordStatus(1)"
+						v-if="isShowPassword=='password'" src="../../static/yioncang.png" mode=""></image>
+					<image class='yanjingicon' style='width:22px;height:22px;' @click="passWordStatus(2)" v-else
+						src="../../static/xianshi.png" mode=""></image>
 				</view>
 			</view>
 			<button :class='phone!=""&&password!=""?"active":""' @click='passlogin'
@@ -31,7 +35,7 @@
 		</view>
 		<u-toast ref="uToast"></u-toast>
 	</view>
-	
+
 	</view>
 </template>
 
@@ -117,6 +121,17 @@
 			// })
 		},
 		methods: {
+			check(val) {
+				console.log(val)
+				if (!uni.$u.test.enOrNum(val.detail.value)) {
+					this.$refs.uToast.show({
+						type: 'error',
+						message: "密码只能是字母或数字!"
+					})
+					this.password = ''
+					return
+				}
+			},
 			passWordStatus(type) {
 				if (type == 1) {
 					this.isShowPassword = 'text'
@@ -126,22 +141,28 @@
 			},
 			passlogin(e) {
 				var that = this
-				if(this.phone==''){
+				if (this.phone == '') {
 					that.$refs.uToast.show({
 						type: 'error',
 						message: "请输入手机号!"
 					})
 					return
 				}
-				if(this.password==''){
+				if (this.password == '') {
 					that.$refs.uToast.show({
 						type: 'error',
 						message: "请输入密码!"
 					})
 					return
 				}
-				
-				
+				if (!uni.$u.test.enOrNum(this.password)) {
+					that.$refs.uToast.show({
+						type: 'error',
+						message: "密码只能是字母或数字!"
+					})
+					return
+				}
+
 				that.$request.baseRequest('get', '/cargoOwnerInfo/firstAuthentication', {
 					phone: this.phone,
 				}).then(res => {
@@ -150,7 +171,7 @@
 							type: 'error',
 							message: "账号审核中!"
 						})
-						
+
 					} else {
 						uni.showLoading({
 							title: '登录中',
@@ -160,14 +181,14 @@
 								phone: that.phone,
 								password: that.password,
 								loginFlag: 1,
-								identification:2
+								identification: 2
 							}).then(res => {
 								if (res.code == 200) {
 									uni.setStorageSync('userInfo', res.data)
 									that.$request.baseRequest('get', '/newsInfo/unreadMessage', {
 										reCommonId: that.userInfo.id,
 									}).then(res3 => {
-										if (res3.data||res3.data==0) {
+										if (res3.data || res3.data == 0) {
 											let name = 'myTip';
 											let value = res3.data
 											if (value == 0) {
@@ -187,7 +208,7 @@
 											}
 										}
 									})
-									
+
 									that.$store.commit('login', res.data)
 									var name = 'userInfo';
 									var value = res.data;
@@ -209,6 +230,7 @@
 								}
 							})
 							.catch(res => {
+								uni.hideLoading()
 								uni.$u.toast(res.message);
 							});
 					}
@@ -252,22 +274,26 @@
 	page {
 		background: #fff;
 	}
-	.phone{
-		padding:20rpx;
-		font-size:28rpx;
+
+	.phone {
+		padding: 20rpx;
+		font-size: 28rpx;
 	}
+
 	.close {
 		width: 20px;
 		height: 20px;
 		position: absolute;
 		right: 0px;
 	}
-	.yanjingicon{
-		position:absolute;
-		right:0;
-		top:50%;
-		transform: translate(-50%,-50%);
+
+	.yanjingicon {
+		position: absolute;
+		right: 0;
+		top: 50%;
+		transform: translate(-50%, -50%);
 	}
+
 	.close1 {
 		width: 20px;
 		height: 20px;
@@ -288,7 +314,7 @@
 	.password {
 		border: none;
 		outline: none;
-		font-size:28rpx;
+		font-size: 28rpx;
 	}
 
 	.cuIcon-weixin {
@@ -374,7 +400,8 @@
 		font-weight: 500;
 		color: #333333;
 	}
+
 	/deep/.uni-input-input:disabled {
-	    background:#fff;
+		background: #fff;
 	}
 </style>

+ 40 - 12
pages/public/register.vue

@@ -22,14 +22,27 @@
 					<input placeholder-style="color:#AFB3BF" border="none" maxlength="6" v-model='verifyCode' style=''
 						placeholder="请输入验证码" type="number" class="Regular" />
 				</view>
+				<!--  -->
 				<button :class='codestatus?"activeCode":""' @click='getcode'
 					class='getcode Regular'>{{sendText}}</button>
 			</view>
-			<view style='border-bottom:1px solid #E8E9ED;padding:10px 0;position:relative;'>
+			<view style='border-bottom:1px solid #E8E9ED;padding:10px 0;position:relative;display: flex;'>
 				<!-- <u-input border="none" maxlength='16' class='Regular input-style' style='height:30px;'
 					v-model='password' placeholder="请输入密码,6-16位字符" :type="type" /> -->
-				<input placeholder-style="color:#AFB3BF" border="none" maxlength="16" v-model='password' style=''
-					placeholder="请输入密码,6-16位字符" :type="type" class="Regular input-style" />
+				<!-- <u-input placeholder-style="color:#AFB3BF" border="none" maxlength="16" v-model='password' style=''
+					placeholder="请输入密码,6-16位字符" :type="isShowPassword" class="Regular input-style" /> -->
+				<input placeholder-style="color:#AFB3BF" v-model='password' v-if="isShowPassword=='password'"
+					placeholder="请输入密码" type="password">
+				<input maxlength='16' placeholder-style="color:#AFB3BF" class='password Regular' v-model='password'
+					v-else type="text" placeholder="请输入密码">
+				<view style="width: 50%;text-align: right;">
+					<image class='yanjingicon' style='width:22px;height:22px;margin-right: 20rpx;'
+						@click="passWordStatus(1)" v-if="isShowPassword=='password'" src="../../static/yioncang.png"
+						mode=""></image>
+					<image class='yanjingicon' style='width:22px;height:22px;margin-right: 20rpx;'
+						@click="passWordStatus(2)" v-else src="../../static/xianshi.png" mode=""></image>
+				</view>
+
 				<!-- 				<input maxlength='16' class='password Regular input-style' style='height:30px;' v-model='password' placeholder="请输入密码,6-16位字符" :type="type"> -->
 				<!-- <image v-if='password!=""' @click='password=""' class='close2' src='../../static/img/login/guanbi@2x.png'></image> -->
 				<!-- <view @click='switchover' style='position:absolute;right:0;top:38%;z-index:10;cursor:pointer;' class="iconfont " :class='type=="password"?"icon-yanjing-biyan":"icon-yanjing-zhengyan"'></view> -->
@@ -43,9 +56,9 @@
 					width="17px" height="17px"></u--image>
 				已阅读并同意
 				<navigator
-					url="/pages/sale/webview?can_share=false&url=https://liangxin.zthymaoyi.com/userAgreement.html"
+					url="/pages/public/serviceAgreement/serviceAgreement?url=http://liangxin.zthymaoyi.com/cytUserAgreement.html"
 					class="path" hover-class="navigator-hover">《服务协议》</navigator>和<navigator
-					url="/pages/sale/webview?can_share=false&url=https://liangxin.zthymaoyi.com/screctAgreement.html"
+					url="/pages/public/cytScrectAgreement/cytScrectAgreement?url=http://liangxin.zthymaoyi.com/cytScrectAgreement.html"
 					class="path" hover-class="navigator-hover">《隐私政策》</navigator>
 			</view>
 		</view>
@@ -99,7 +112,8 @@
 				sendDisabled: false,
 				system: '',
 				platform: '',
-				canIUseProfile: false
+				canIUseProfile: false,
+				isShowPassword: 'password'
 			}
 		},
 
@@ -127,6 +141,13 @@
 			// })
 		},
 		methods: {
+			passWordStatus(type) {
+				if (type == 1) {
+					this.isShowPassword = 'text'
+				} else {
+					this.isShowPassword = 'password'
+				}
+			},
 			// 随机数
 			randomAccess(min, max) {
 				return Math.floor(Math.random() * (min - max) + max)
@@ -163,9 +184,13 @@
 			},
 			getcode() {
 				var that = this
+				if (this.sendText != "获取验证码") {
+					return
+				}
 				if (/^0?1[3|4|5|6|7|8][0-9]\d{8}$/.test(this.phone)) {
 					that.$request.baseRequest('get', '/commonUser/sendVerifyCode', {
-							phone: this.phone
+							phone: this.phone,
+							flag: 3
 						}).then(res => {
 							if (res.code == 200) {
 								that.codestatus = false
@@ -176,6 +201,7 @@
 									if (sec <= 0) {
 										that.sendDisabled = true
 										that.sendText = "获取验证码"
+										that.codestatus = true
 										clearInterval(interval)
 									}
 								}, 1000)
@@ -247,7 +273,7 @@
 				}
 				if (this.password.length < 6) {
 					uni.showToast({
-						title: '密码请输入6-16字符格式',
+						title: '密码输入错误',
 						icon: 'none',
 						duration: 2000
 					})
@@ -262,9 +288,9 @@
 						identification: 2,
 						avatarUrl: "https://taohaoliang.oss-cn-beijing.aliyuncs.com/appData/165672849620975.png" //司机默认头像
 					}).then(res => {
-						if (res.code == '11002') {
+						if (res.code == '11003') {
 							uni.showToast({
-								title: '验证码错误或过期,请重新获取',
+								title: res.message,
 								icon: 'none',
 								duration: 2000
 							})
@@ -335,11 +361,13 @@
 									uni.hideLoading()
 								})
 								.catch(res => {
+									uni.hideLoading()
 									console.log(res);
 								});
 						}
 					})
 					.catch(res => {
+						uni.hideLoading()
 						console.log(res);
 					});
 			},
@@ -405,10 +433,10 @@
 		padding-top: 85px;
 		position: relative;
 		width: 100vw;
-		height: calc(100vh - 85px);
+		height: calc(100vh - 13vh);
 		overflow: hidden;
 		background: url('~@/static/images/mine/bg@2x.png');
-		background-size: 100%;
+		/* background-size: 100%; */
 	}
 
 	.close {

+ 23 - 0
pages/public/serviceAgreement/serviceAgreement.vue

@@ -0,0 +1,23 @@
+<template>
+	<web-view :src="url"></web-view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				url: ""
+			}
+		},
+		onLoad: function(option) {
+			this.url = option.url;
+		},
+		methods: {}
+	}
+</script>
+
+
+
+<style>
+
+</style>

+ 51 - 25
pages/release/addAddress.vue

@@ -14,21 +14,28 @@
 			<view class="">
 				<u--form labelPosition="left" :model="addressInfo" ref="form1" labelWidth='100'>
 					<u-form-item label="所属区域" ref="item1" borderBottom>
-						<view style='width:100%;flex-direction:row-reverse;' class='flex align-center' @click='toMap' :class="addressInfo.area?'':'select-color'">
-							<image src="../../static/right.png" style="width: 22rpx;height: 22rpx;"></image>
-							<view>{{addressInfo.area?(addressInfo.province+addressInfo.city+addressInfo.area):'选择所属区域 '}}</view>
+						<view style='width:100%;flex-direction:row-reverse;' class='flex align-center' @click='toMap'
+							:class="addressInfo.area?'':'select-color'">
+							<image src="../../static/right.png" style="width: 12px;height: 12px;margin-top: 2px;">
+							</image>
+							<view>
+								{{addressInfo.area?(addressInfo.province+addressInfo.city+addressInfo.area):'选择所属区域 '}}
+							</view>
 						</view>
 					</u-form-item>
 					<u-form-item label="详细地址" prop="addressInfo.detailedAddress" ref="item1" borderBottom>
 						<!-- <u--input v-model="addressInfo.detailedAddress" border="none" inputAlign="left"  placeholder="详细地址"></u--input> -->
-						<u--textarea v-model="addressInfo.detailedAddress" border="none" inputAlign="left" placeholder="详细地址" autoHeight  maxlength="15"></u--textarea>
+						<u--textarea v-model="addressInfo.detailedAddress" border="none" inputAlign="left"
+							placeholder="请输入详细地址" autoHeight maxlength="15"></u--textarea>
 						<!-- <u--input v-model="addressInfo.detailedAddress" border="none" placeholder="详细地址"></u--input> -->
 					</u-form-item>
 					<u-form-item label="联系人" prop="addressInfo.contacts" ref="item1" borderBottom>
-						<u--input v-model="addressInfo.contacts"  maxlength="10" inputAlign="right" border="none" placeholder="联系人">></u--input>
+						<u--input v-model="addressInfo.contacts" maxlength="10" inputAlign="right" border="none"
+							placeholder="请输入联系人">></u--input>
 					</u-form-item>
 					<u-form-item label="联系电话" prop="addressInfo.contactPhone" ref="item1">
-						<u--input v-model="addressInfo.contactPhone" inputAlign="right" border="none" placeholder="联系电话" maxlength="11">>
+						<u--input v-model="addressInfo.contactPhone" inputAlign="right" border="none"
+							placeholder="请输入联系电话" maxlength="11">>
 						</u--input>
 					</u-form-item>
 				</u--form>
@@ -60,7 +67,8 @@
 					contacts: "",
 					contactPhone: "",
 					longitude: "",
-					latitude: ""
+					latitude: "",
+					adCode:"",
 				},
 				// rules: {
 				// 	// 'addressInfo.name': {
@@ -96,9 +104,7 @@
 										})
 									}
 								})
-
 							}
-
 						})
 					.catch(res => {
 						uni.showToast({
@@ -120,10 +126,10 @@
 				// this.isShowMap = true
 				uni.getLocation({
 					type: 'gcj02',
-					geocode:true,
-					altitude:true,
-					isHighAccuracy:true,
-					success: function (res) {
+					geocode: true,
+					altitude: true,
+					isHighAccuracy: true,
+					success: function(res) {
 						console.log('当前位置的经度:' + res.longitude);
 						console.log('当前位置的纬度:' + res.latitude);
 						uni.chooseLocation({
@@ -136,8 +142,6 @@
 								console.log('纬度:' + res.latitude);
 								console.log('经度:' + res.longitude);
 								let _address = that.$helper.formatLocation(res.address)
-								console.log('----------------------------')
-								console.log(_address)
 								that.addressInfo.latitude = res.latitude
 								that.addressInfo.longitude = res.longitude
 								that.addressInfo.detailedAddress = _address.Village
@@ -145,6 +149,18 @@
 								that.addressInfo.city = _address.City
 								that.addressInfo.area = _address.Country
 								that.addressInfo.commonId = that.userInfo.id
+								uni.request({
+									url: 'https://restapi.amap.com/v3/config/district?key=d29a9d10160efaca0dd616bbec936d7f&subdistrict=1&keywords=' +
+										_address.City,
+									success: (res) => {
+									  for(let i = 0 ; i < res.data.districts[0].districts.length ; i++){
+										  if(res.data.districts[0].districts[i].name == _address.Country){
+											  that.addressInfo.adCode = res.data.districts[0].districts[i].adcode
+											  break
+										  } 
+									  }
+									}
+								});
 								that.$forceUpdate()
 							},
 							fail(err) {
@@ -156,20 +172,27 @@
 						});
 					}
 				})
-				
+
 				// console.log(123)
 				// uni.$u.route('/pages/release/map', {
 				// 	id: 1,
 				// });
 			},
 			validate() {
-				if (this.addressInfo.contacts.length<2||this.addressInfo.contacts.length>10) {
+				if (this.addressInfo.contacts.length < 2 || this.addressInfo.contacts.length > 10) {
 					this.$refs.uToast.show({
 						type: 'error',
 						message: "联系人姓名长度2-10个字符!",
 					})
 					return true
 				}
+				if (this.addressInfo.contactPhone.length < 7) {
+					this.$refs.uToast.show({
+						type: 'error',
+						message: "联系人电话输入错误!",
+					})
+					return true
+				}
 				if (uni.$u.test.isEmpty(this.addressInfo.contactPhone)) {
 					this.$refs.uToast.show({
 						type: 'error',
@@ -177,7 +200,7 @@
 					})
 					return true
 				}
-				if (this.addressInfo.detailedAddress.length<4||this.addressInfo.detailedAddress.length>15) {
+				if (this.addressInfo.detailedAddress.length < 4 || this.addressInfo.detailedAddress.length > 15) {
 					this.$refs.uToast.show({
 						type: 'error',
 						message: "详细地址4-15个字符!",
@@ -230,14 +253,17 @@
 		right: 0;
 		margin: auto;
 	}
-	/deep/input{
-		word-break:break-all;
+
+	/deep/input {
+		word-break: break-all;
 	}
-	/deep/.u-textarea{
-		padding:9px 0;
+
+	/deep/.u-textarea {
+		padding: 9px 0;
 	}
-	/deep/.u-textarea__field{
-		color:#000;
-		text-align:right;
+
+	/deep/.u-textarea__field {
+		color: #000;
+		text-align: right;
 	}
 </style>

+ 1 - 1
pages/release/editAddress.vue

@@ -17,7 +17,7 @@
 
 						<view style='width:100%;flex-direction:row-reverse;' class='flex align-center' @click='toMap'>
 							<image src="../../static/right.png" style="width: 22rpx;height: 22rpx;"></image>
-							{{addressInfo.area?(addressInfo.province?addressInfo.province:''+addressInfo.city+addressInfo.area):'选择所属区域 '}}
+							{{addressInfo.area?((addressInfo.province?addressInfo.province:'')+addressInfo.city+addressInfo.area):'选择所属区域 '}}
 						</view>
 					</u-form-item>
 					<u-form-item label="详细地址" prop="addressInfo.detailedAddress" ref="item1" borderBottom>

+ 124 - 108
pages/release/editRelease.vue

@@ -10,7 +10,7 @@
 		<view class="content1">
 			<view class="row" @click="selectCargoOwner">
 				<view class="left select-sf">{{dataObj.cargoOwner?dataObj.cargoOwner:'选择货主身份'}}</view>
-				<view class="right">></view>
+				<image src="../../static/right.png" style="width: 22rpx;height: 22rpx;margin-top:14rpx;"></image>
 			</view>
 			<!-- 		<view class="row" @click="selectCargoOwner" v-if="dataObj.cargoOwner">
 				<view class="left">{{dataObj.cargoOwner}}</view>
@@ -23,7 +23,7 @@
 			<view class="row1">
 				<view class="left">
 					<view class="top" @click="selectAddress(0)">
-						<view class="send"></view>
+						<view class="send"></view>
 						<view class="title">
 							{{dataObj.sendArea?((dataObj.sendPrivate?dataObj.sendPrivate:'' )+ dataObj.sendCity+dataObj.sendArea):'选择发货地区'}}
 						</view>
@@ -32,8 +32,9 @@
 						<input type="text" value="" placeholder="输入详细地址" v-model="dataObj.sendDetailedAddress" />
 					</view>
 				</view>
-				<view class="right" @click="selectAddress(0)" v-if="!dataObj.sendArea">
-					<view class="right">{{dataObj.sendArea?'':'>'}}</view>
+				<view v-if='dataObj.sendArea' class="right"></view>
+				<view class="right" @click="selectAddress(0)" v-else>
+					<image src="../../static/right.png" style="width: 22rpx;height: 22rpx;margin-top:14rpx;"></image>
 				</view>
 			</view>
 			<view class="row2">
@@ -48,16 +49,22 @@
 						<input type="text" value="" placeholder="输入详细地址" v-model="dataObj.unloadDetailedAddress" />
 					</view>
 				</view>
-				<view class="right" @click="selectAddress(1)" v-if="!dataObj.unloadArea">
-					<view class="right">{{dataObj.unloadArea?(dataObj.unloadCity+dataObj.unloadArea):'>'}}</view>
+				<view v-if='dataObj.unloadPrivate' class="right"></view>
+				<view class="right" @click="selectAddress(1)" v-else>
+					<image src="../../static/right.png" style="width: 22rpx;height: 22rpx;margin-top:14rpx;"></image>
 				</view>
 			</view>
 		</view>
 		<view class="content3">
 			<view class="row">
 				<view class="left">距离</view>
-				<input type="text" value="" class="input" placeholder="自动计算" v-model="dataObj.distance" disabled="" />
-				<view>Km</view>
+				<!-- <input type="text" class="input" placeholder="自动计算" v-model="dataObj.distance" disabled /> -->
+				<view class="input">{{dataObj.distance?dataObj.distance:"自动计算"}} km</view>
+			</view>
+			<view class="row">
+				<view class="left">业务类型</view>
+				<view class="right" >{{dataObj.businessType?dataObj.businessType:"请选择业务类型"}}
+				</view>
 			</view>
 			<view class="row">
 				<view class="left">货物类别</view>
@@ -82,14 +89,14 @@
 				</view>
 			</view>
 			<view class="row">
-				<view class="left">收货方身份证号</view>
+				<view class="left" style="width: 240rpx;">收货方身份证号(选填)</view>
 				<view class="right flex">
 					<input type="number" maxlength="18" placeholder="输入收货人身份证号" class="input"
 						v-model="dataObj.receiverIdcard" />
 				</view>
 			</view>
 			<view class="row">
-				<view class="left">收货方信用代码(选填)</view>
+				<view class="left" style="width: 240rpx;">收货方信用代码(选填)</view>
 				<view class="right flex">
 					<input maxlength="18" placeholder="统一社会信用代码" class="input" v-model="dataObj.receiverCreditCode" />
 				</view>
@@ -210,15 +217,18 @@
 					{{dataObj.taskValidity?dataObj.taskValidity:'选择任务有效期>'}}
 				</view>
 			</view>
-			<u-picker :show="isShowcardValidity" ref="uPicker" :columns="validityPeriodcq"
+			<!-- <u-picker :show="isShowcardValidity" ref="uPicker" :columns="validityPeriodcq"
 				@confirm="confirmValidityPeriodcq" @change="changeHandler" @close='isShowcardValidity=false'
 				@cancel='isShowcardValidity=false' :closeOnClickOverlay='true'>
-			</u-picker>
+			</u-picker> -->
+			<itmister-date-picker :overdueContent="'任务已过期'" :dateStatus="1" :periodOfValidity="true" :startYear='2022' :checkYear="year" :checkMonth="month" :checkDay="day" ref="dateEl" :endDate="array" :futureYear="30" @dateConfirm="confirmValidityPeriodcq"></itmister-date-picker>
 		</view>
 		<view class="submit" @click="submit">立即发布</view>
-		<u-picker :show="isShowValidity" ref="uPicker" :columns="validityPeriod" @confirm="confirmValidityPeriod"
+		
+		<!-- <u-picker :show="isShowValidity" ref="uPicker" :columns="validityPeriod" @confirm="confirmValidityPeriod"
 			:closeOnClickOverlay='true' @close='isShowValidity=false' @cancel='isShowValidity=false'>
-		</u-picker>
+		</u-picker> -->
+		<itmister-date-picker :dateStatus="2" :startYear='2022' ref="datezc" :futureYear="30" :checkYear="year" :checkMonth="month" :checkDay="day" @dateConfirm="confirmValidityPeriod"></itmister-date-picker>
 		<u-modal :show="isShowAlert" :title="alertTitle" :content='alertContent' :closeOnClickOverlay='true'
 			:showCancelButton='true' confirmColor='#2772FB' @confirm="$u.throttle(confirmClick(), 5000)" @close="cancelClick"
 			@cancel="cancelClick"></u-modal>
@@ -246,6 +256,10 @@
 				columns: [
 					[]
 				],
+				array:{},
+				year:'',
+				month:'',
+				day:'',
 				dataObj: {
 					commonId: '',
 					cargoOwner: '',
@@ -321,6 +335,7 @@
 			}
 		},
 		onShow() {
+			
 			this.getSFList()
 			let _faddress = uni.getStorageSync('storage_faddress');
 			let _saddress = uni.getStorageSync('storage_saddress');
@@ -355,6 +370,7 @@
 				this.dataObj.billingMethod = '元/吨'
 			}
 			
+			
 			for (let i = 0; i < this.dataObj.carModel.length; i++) {
 			
 				if (this.dataObj.carModel[i] == '1') {
@@ -374,11 +390,8 @@
 				this.dataObj.freightAdvance = false
 				this.freightAdvance=false
 			}
-			console.log(this.dataObj)
 			this.validityPeriod = this.$helper.makeValidityPeriod(0, '随时')
 			this.validityPeriodcq = this.$helper.makeValidityPeriod(0, '长期')
-
-
 		},
 		computed: {
 			...mapState(['hasLogin', 'userInfo']),
@@ -435,8 +448,6 @@
 							this.columns[0].push(this.qyList[i].company ? this.qyList[i].company : this.qyList[i]
 								.companyName)
 						}
-						console.log('1111', _this.columns)
-
 					})
 					.catch(res => {
 						uni.showToast({
@@ -445,8 +456,6 @@
 							duration: 2000
 						})
 					});
-
-
 			},
 			validate() {
 				if (uni.$u.test.isEmpty(this.dataObj.cargoOwner)) {
@@ -477,6 +486,42 @@
 					})
 					return true
 				}
+				if (uni.$u.test.isEmpty(this.dataObj.receiver)) {
+					this.$refs.uToast.show({
+						type: 'error',
+						message: "收货方不能为空!",
+					})
+					return true
+				}
+				if (uni.$u.test.isEmpty(this.dataObj.receiverPhone)) {
+					this.$refs.uToast.show({
+						type: 'error',
+						message: "收货方手机号不能为空!",
+					})
+					return true
+				}
+				if (!this.dataObj.receiverIdcard && !this.dataObj.receiverCreditCode) {
+					this.$refs.uToast.show({
+						type: 'error',
+						message: "信用代码和身份证号码至少填写一个!",
+						duration:4000
+					})
+					return true
+				}
+				if(this.dataObj.receiverIdcard&&this.dataObj.receiverIdcard.length!=18){
+					this.$refs.uToast.show({
+							type: 'error',
+							message: "身份证号输入错误!",
+						})
+						return true
+				}
+				if(this.dataObj.receiverCreditCode&&this.dataObj.receiverCreditCode.length!=18){
+					this.$refs.uToast.show({
+						type: 'error',
+						message: "信用代码输入错误!",
+					})
+					return true
+				}
 				if (uni.$u.test.isEmpty(this.dataObj.freightPrice)) {
 					this.$refs.uToast.show({
 						type: 'error',
@@ -682,6 +727,7 @@
 				this.$request.baseRequest('get', '/cargoOwnerAddressInfo/addressList', {
 						commonId: this.userInfo.id
 					}).then(res => {
+						uni.hideLoading()
 						for (let i = 0; i < res.data.length; i++) {
 							if (res.data[i].defaultShipment == 1 && type == 0) {
 								this.dataObj.sendCity = res.data[i].city
@@ -705,11 +751,12 @@
 							this.dataObj.distance = this.$helper.getDistance(this.dataObj.unsendLatitude, this.dataObj
 								.unsendLongitude, this.dataObj.sendLatitude, this.dataObj.sendLongitude)
 						}
-						uni.hideLoading()
+						
 
 
 					})
 					.catch(res => {
+						uni.hideLoading()
 						uni.showToast({
 							title: res.message,
 							icon: 'none',
@@ -802,101 +849,70 @@
 				}
 			},
 			selectValidityPeriodcq() {
-				this.isShowcardValidity = true
+				var datetime = new Date().getTime()
+				var datetime1 = datetime + (24 * 60 * 60 * 1000 * 30 * 6)
+				var date=new Date(datetime1)
+				this.array={year:date.getFullYear(),month:date.getMonth() + 1,day:date.getDate()}
+				console.log(this.array)
+				if(this.dataObj.taskValidity&&this.dataObj.taskValidity!='长期'){
+					const arr=this.dataObj.taskValidity.split('-')
+					this.year=arr[0]
+					this.month=arr[1]
+					this.day=arr[2]
+				}
+				if(this.dataObj.taskValidity=='长期'){
+					this.year='长期'
+					this.month=''
+					this.day=''
+				}
+				this.$refs.dateEl.show()
 			},
-			confirmValidityPeriod(e) {
-				console.log('confirm', e)
-				if (e.value[0] == '随时') {
-					switch (this.ValidityPeriodType) {
-						case 0:
-							this.dataObj.loadingDateStart = e.value[0]
-							break
-						case 1:
-							this.dataObj.loadingDateEnd = e.value[0]
-							break
-					}
-				} else {
-					if (!e.value[1] || !e.value[2]) {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "日期格式错误,请重新选择!",
-						})
-						return
-					}
-					switch (this.ValidityPeriodType) {
-						case 0:
-							this.dataObj.loadingDateStart = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-							break
-						case 1:
-							this.dataObj.loadingDateEnd = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-							break
+			confirmValidityPeriod(date) {
+				switch (this.ValidityPeriodType) {
+					case 0:
+						this.dataObj.loadingDateStart =date.date
+						break
+					case 1:
+						this.dataObj.loadingDateEnd = date.date
+						break
 
-					}
 				}
-
-
-				this.isShowValidity = false
 			},
-			confirmValidityPeriodcq(e) {
-				console.log('confirm', e)
-				if (e.value[0] == '长期') {
-					if(e.value[1]||e.value[2]){
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "选择长期时不允许选择月日!",
-						})
-						return
-					}
-					this.dataObj.taskValidity = e.value[0]
-				} else {
-					if (!e.value[1] || !e.value[2]) {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "日期格式错误,请重新选择!",
-						})
-						return
-					}
-					var date=new Date()
-					var text='任务已过期!'
-						if(e.value[0]<date.getFullYear()){
-							this.$refs.uToast.show({
-								type: 'error',
-								message: text,
-							})
-							return
+			confirmValidityPeriodcq(date) {
+				this.dataObj.taskValidity = date.date
+			},
+			selectValidityPeriod(type) {
+				this.ValidityPeriodType = type
+				switch (this.ValidityPeriodType) {
+					case 0:
+						if(this.dataObj.loadingDateStart&&this.dataObj.loadingDateStart!='随时'){
+							const arr=this.dataObj.loadingDateStart.split('-')
+							this.year=arr[0]
+							this.month=arr[1]
+							this.day=arr[2]
 						}
-						if(e.value[0]==date.getFullYear()&&Number(e.value[1])<(date.getMonth()+1)){
-							this.$refs.uToast.show({
-								type: 'error',
-								message: text,
-							})
-							return
+						if(this.dataObj.loadingDateStart=='随时'){
+							this.year='随时'
+							this.month=''
+							this.day=''
 						}
-						if(e.value[0]==date.getFullYear()&&Number(e.value[1])==(date.getMonth()+1)&&Number(e.value[2])<=(date.getDate())){
-							this.$refs.uToast.show({
-								type: 'error',
-								message: text,
-							})
-							return
+						break
+					case 1:
+						if(this.dataObj.loadingDateEnd&&this.dataObj.loadingDateEnd!='随时'){
+							const arr=this.dataObj.loadingDateEnd.split('-')
+							this.year=arr[0]
+							this.month=arr[1]
+							this.day=arr[2]
 						}
-						var datetime = new Date().getTime()
-						var datetime1 = datetime + (24 * 60 * 60 * 1000 * 30 * 6)
-						var currecttime = new Date(e.value[0] + '-' + e.value[1] + '-' + e.value[2]).getTime()
-						if (currecttime < datetime || currecttime > datetime1) {
-							this.$refs.uToast.show({
-								type: 'error',
-								message: "请选择未来六个月之内的日期!",
-							})
-						} else {
-							this.dataObj.taskValidity = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-							
+						if(this.dataObj.loadingDateEnd=='随时'){
+							this.year='随时'
+							this.month=''
+							this.day=''
 						}
+						break
+				
 				}
-				this.isShowcardValidity = false
-			},
-			selectValidityPeriod(type) {
-				this.ValidityPeriodType = type
-				this.isShowValidity = true
+				this.$refs.datezc.show()
 			},
 			change(e) {
 				console.log('change', e);

+ 3 - 5
pages/release/lookRelease.vue

@@ -73,7 +73,7 @@
 				<view class="right">{{dataObj.billingMethod=='0'?'元/吨':'元/车'}}</view>
 			</view>
 			<view class="row">
-				<view class="left">运费单价(元/车)</view>
+				<view class="left">运费单价({{dataObj.billingMethod=='0'?'元/吨':'元/车'}})</view>
 				<view class="right">{{dataObj.freightPrice}}</view>
 			</view>
 			<view class="row">
@@ -124,11 +124,11 @@
 			</view>
 			<view class="row">
 				<view class="left">车长要求(米)</view>
-				<view class="right">{{dataObj.carLengthSmall}}-{{dataObj.carLength}}</view>
+				<view class="right">{{dataObj.carLengthSmall}}~{{dataObj.carLength}}</view>
 			</view>
 			<view class="row">
 				<view class="left">载重要求(吨)</view>
-				<view class="right">{{dataObj.loadWeightSmall}}-{{dataObj.loadWeight}}</view>
+				<view class="right">{{dataObj.loadWeightSmall}}~{{dataObj.loadWeight}}</view>
 			</view>
 			<view class="row">
 				<view class="left">车型要求</view>
@@ -194,8 +194,6 @@
 		},
 		onLoad(options) {
 			_this = this;
-			// this.validityPeriod = this.$helper.makeValidityPeriod()
-			// this.validityPeriodcq = this.$helper.makeValidityPeriod(0)
 			this.id = options.id
 			this.getDetails()
 		},

+ 98 - 6
pages/release/record.vue

@@ -7,7 +7,29 @@
 				<u-search placeholder="可按编号、货主、收发地查找" v-model="searchKeyWord" @search="search" @custom="search"
 					bgColor='#F5F6FA'></u-search>
 			</view>
-
+			<!-- <u-tabs
+			        :list="list1"
+			        lineWidth="30"
+			        lineColor="#f56c6c"
+			        :activeStyle="{
+			            color: '#303133',
+			            fontWeight: 'bold',
+			            transform: 'scale(1.05)'
+			        }"
+			        :inactiveStyle="{
+			            color: '#606266',
+			            transform: 'scale(1)'
+			        }"
+			        itemStyle="padding-left: 15px; padding-right: 15px; height: 34px;"
+			    >
+			    </u-tabs> -->
+				<view class='tab-nav'>
+					<view class='tab-item' v-for='item in list1' @click='statuschange(item)' :class='{active:item.status==searchType}'>
+						{{item.name}} {{item.num}}	
+					</view>
+				</view>
+			
+			<!-- <u-tabs  :list="list1" @click="click"></u-tabs> -->
 			<view :id="'good'+good.id" class="good-list" v-for="good in goods" :key="good.id"
 				@click="toDetail(good.id)">
 				<view style="padding: 0 35rpx 20rpx 35rpx;">
@@ -62,7 +84,7 @@
 							<view class="flex align-center">
 								<view class="">运距约 {{good.distance}}km</view>
 								<view v-if='good.weight' class="sline"></view>
-								<view v-if='good.weight' class=" ">{{good.weight}}吨</view>
+								<view v-if='good.weight' class="">{{good.weight}}吨</view>
 							</view>
 						</view>
 					</view>
@@ -115,12 +137,30 @@
 				mescroll: null,
 				id: '',
 				confirmText: '确定',
+				searchType:'2',
 				alertTitle: '',
 				alertContent: "",
 				isShowAlert: false,
 				goods: [], // 数据列表
 				delOrShowHidden: '',
 				rowObj: {},
+				 list1: [{
+				    name: '审核中',
+					status:'1',
+					num:0,
+					}, {
+				    name: '已通过',
+					status:'2',
+					num:0,
+				    }, {
+				    name: '未通过',
+					status:'3',
+					num:0,
+				    }, {
+				    name: '已过期',
+					status:'4',
+					num:0,
+				    }],
 				upOption: {
 					page: {
 						size: 10 // 每页数据的数量,默认10
@@ -148,6 +188,7 @@
 			//#endif
 		},
 		onLoad() {
+			
 			// let _isHave = this.$utils.getRoles('aaa')
 			// console.log(_isHave)
 
@@ -179,6 +220,13 @@
 
 		// },
 		methods: {
+			statuschange(item){
+				this.searchType=item.status
+				this.upCallback({
+					size: 10,
+					num: 1
+				})
+			},
 			mescrollInit(mescroll) {
 				this.mescroll = mescroll;
 			},
@@ -195,13 +243,13 @@
 					_val = ''
 				} else {
 					if (good.carModel && good.carModel.includes(2)) {
-						_val += '高栏/'
+						_val += '高栏'
 					}
 					if (good.carModel && good.carModel.includes(3)) {
-						_val += '集装箱/'
+						_val += '/集装箱'
 					}
 					if (good.carModel && good.carModel.includes(4)) {
-						_val += '自卸车'
+						_val += '/自卸车'
 					}
 				}
 				return _val
@@ -341,6 +389,18 @@
 					mask: true,
 					title: '加载中...'
 				})
+				this.$request.baseRequest('get', '/publishTaskInfo/selectNum', {
+						commonId: this.userInfo.id,
+					}).then(res => {
+						this.list1[0].num=res.data.examieNum
+						this.list1[1].num=res.data.noNum
+						this.list1[2].num=res.data.passNum
+						this.list1[3].num=res.data.overdueNum
+						console.log(res)
+					})
+					.catch(res => {
+						uni.$u.toast(res.message);
+					});
 				this.$request.baseRequest('get', '/publishTaskInfo/selectTask', {
 						commonId: this.userInfo.id,
 						searchKeyWord: this.searchKeyWord,
@@ -354,6 +414,7 @@
 						uni.hideLoading()
 					})
 					.catch(res => {
+						uni.hideLoading()
 						uni.$u.toast(res.message);
 					});
 			},
@@ -365,7 +426,7 @@
 <style scoped lang="scss">
 	.content {
 		padding-top: var(--status-bar-height);
-		background: white;
+		// background: white;
 
 		.top {
 			display: flex;
@@ -630,4 +691,35 @@
 	/deep/.u-modal__content {
 		flex-direction: column;
 	}
+	.tab-nav{
+		width:100%;
+		background: white;
+		display:flex;
+	}
+	.tab-item{
+		width:25%;
+		display:block;
+		position:relative;
+		text-align:center;
+		padding:10px 0;
+		box-sizing: border-box;
+		color:#7D8087;
+		font-size:14px;
+	}
+	.tab-item.active{
+		color:#000;
+		font-size:16px;
+	}
+	.tab-item.active:after{
+		position:absolute;
+		content:'';
+		display:block;
+		width:50%;
+		left:50%;
+		transform: translate(-50%);
+		height:4px;
+		bottom:0;
+		background:#2772FB;
+		border-radius: 2px;
+	}
 </style>

+ 222 - 199
pages/release/release.vue

@@ -21,8 +21,11 @@
 		<view class="content1">
 			<view class="row" @click="selectCargoOwner">
 
-				<view class="left select-sf" :class='dataObj.cargoOwner?"":"select-sf1"'>{{dataObj.cargoOwner?dataObj.cargoOwner:'选择货主身份'}}</view>
-				<view class="right"><image src="../../static/right.png" style="width: 22rpx;height: 22rpx;margin-top:14rpx;"></image></view>
+				<view class="left select-sf" :class='dataObj.cargoOwner?"":"select-sf1"'>
+					{{dataObj.cargoOwner?dataObj.cargoOwner:'选择货主身份'}}</view>
+				<view class="right">
+					<image src="../../static/right.png" style="width: 22rpx;height: 22rpx;margin-top:14rpx;"></image>
+				</view>
 			</view>
 			<!-- 		<view class="row" @click="selectCargoOwner" v-if="dataObj.cargoOwner">
 				<view class="left">{{dataObj.cargoOwner}}</view>
@@ -46,7 +49,10 @@
 				</view>
 				<view class="right" @click="selectAddress(0)" v-if="!dataObj.sendArea">
 					<view v-if='dataObj.sendArea' class="right"></view>
-					<view class="right" v-else><image src="../../static/right.png" style="width: 22rpx;height: 22rpx;margin-top:14rpx;"></image></view>
+					<view class="right" v-else>
+						<image src="../../static/right.png" style="width: 22rpx;height: 22rpx;margin-top:14rpx;">
+						</image>
+					</view>
 				</view>
 			</view>
 			<view class="row2">
@@ -63,7 +69,10 @@
 				</view>
 				<view class="right" @click="selectAddress(1)" v-if="!dataObj.unloadArea">
 					<view v-if='dataObj.unloadArea' class="right">{{(dataObj.unloadCity+dataObj.unloadArea)}}</view>
-					<view class="right" v-else><image src="../../static/right.png" style="width: 22rpx;height: 22rpx;margin-top:14rpx;"></image></view>
+					<view class="right" v-else>
+						<image src="../../static/right.png" style="width: 22rpx;height: 22rpx;margin-top:14rpx;">
+						</image>
+					</view>
 				</view>
 			</view>
 		</view>
@@ -74,6 +83,11 @@
 				{{dataObj.distance }}
 				km
 			</view>
+			<view class="row">
+				<view class="left">业务类型</view>
+				<view class="right" @click="businessChange">{{dataObj.businessType?dataObj.businessType:"请选择业务类型"}}
+				</view>
+			</view>
 			<view class="row">
 				<view class="left">货物类别</view>
 				<view class="right" @click="goodstypeChange">{{dataObj.goodsType?dataObj.goodsType:"请选择货物类别"}}</view>
@@ -104,7 +118,7 @@
 				</view>
 			</view>
 			<view class="row">
-				<view  style='width:120px;' class="left">收货方信用代码(选填)</view>
+				<view style='width:120px;' class="left">收货方信用代码(选填)</view>
 				<view class="right flex">
 					<input maxlength="18" placeholder="统一社会信用代码" class="input" v-model="dataObj.receiverCreditCode" />
 				</view>
@@ -225,22 +239,28 @@
 					{{dataObj.taskValidity?dataObj.taskValidity:'选择任务有效期>'}}
 				</view>
 			</view>
-			<u-picker :show="isShowcardValidity" ref="uPicker" :columns="validityPeriodcq"
-				@confirm="confirmValidityPeriodcq" @change="changeHandler" @close='isShowcardValidity=false'
-				@cancel='isShowcardValidity=false' :closeOnClickOverlay='true'>
-			</u-picker>
+			<itmister-date-picker :overdueContent="'任务已过期'" :dateStatus="1" :periodOfValidity="true" :startYear='2022'
+				ref="dateEl" :endDate="array" :futureYear="30" @dateConfirm="confirmValidityPeriodcq">
+			</itmister-date-picker>
 		</view>
 		<view class="submit" @click="submit">立即发布</view>
-		<u-picker :show="isShowValidity" ref="uPicker" :columns="validityPeriod" @confirm="confirmValidityPeriod"
+		<!-- <u-picker :show="isShowValidity" ref="uPicker" :columns="validityPeriod" @confirm="confirmValidityPeriod"
 			:closeOnClickOverlay='true' @close='isShowValidity=false' @cancel='isShowValidity=false'>
-		</u-picker>
+		</u-picker> -->
+		<itmister-date-picker :dateStatus="2" :startYear='2022' ref="datezc" :futureYear="30"
+			@dateConfirm="confirmValidityPeriod"></itmister-date-picker>
 		<!-- //货物类别 -->
 		<u-picker :show="isGoodsType" ref="uPicker" :columns="goodsList" keyName="constValue" @confirm="goodsSubmit"
 			:closeOnClickOverlay='true' @close='isGoodsType=false' @cancel='isGoodsType=false'>
 		</u-picker>
+		<!-- 业务类型 -->
+		<u-picker :show="isBusinessType" ref="uPicker" :columns="businessList" keyName="constValue"
+			@confirm="businessSubmit" :closeOnClickOverlay='true' @close='isBusinessType=false'
+			@cancel='isBusinessType=false'>
+		</u-picker>
 		<u-modal :show="isShowAlert" :title="alertTitle" :content='alertContent' :closeOnClickOverlay='false'
-			:showCancelButton='showCancelButton' confirmColor='#2772FB' @confirm="$u.throttle(confirmClick(), 5000)" @close="cancelClick"
-			@cancel="cancelClick"></u-modal>
+			:showCancelButton='showCancelButton' confirmColor='#2772FB' @confirm="$u.throttle(confirmClick(), 5000)"
+			@close="cancelClick" @cancel="cancelClick"></u-modal>
 		<u-modal :show="isShowAlert1" :title="alertTitle" :confirmText='confirmText' :content='alertContent'
 			:closeOnClickOverlay='false' :showCancelButton='showCancelButton' confirmColor='#2772FB'
 			@confirm="$u.throttle(confirmClick(), 5000)" @close="cancelClick" @cancel="cancelClick"></u-modal>
@@ -269,6 +289,7 @@
 				columns: [
 					[]
 				],
+				array: {},
 				freightAdvance: false,
 				dataObj: {
 					commonId: '',
@@ -304,6 +325,8 @@
 					sendLatitude: '',
 					unsendLongitude: '',
 					unsendLatitude: '',
+					sendAdCode: '',
+					unsendAdCode: ''
 				},
 				confirmText: '',
 				isShowAlert1: false,
@@ -326,11 +349,7 @@
 					}
 				],
 				value: true,
-				isShowcardValidity: false,
 				ValidityPeriodType: '',
-				validityPeriod: [],
-				validityPeriodcq: [],
-				isShowValidity: false,
 				dataDetails: {
 					type: '元/吨'
 				},
@@ -345,8 +364,11 @@
 
 				],
 				// 货物类别
-				isGoodsType:false,
-				goodsList:[]
+				isGoodsType: false,
+				goodsList: [],
+				//业务类型
+				isBusinessType: false,
+				businessList: []
 			}
 		},
 		onNavigationBarButtonTap(e) {
@@ -354,6 +376,14 @@
 			this.goToRecord()
 		},
 		onShow() {
+			var datetime = new Date().getTime()
+			var datetime1 = datetime + (24 * 60 * 60 * 1000 * 30 * 6)
+			var date = new Date(datetime1)
+			this.array = {
+				year: date.getFullYear(),
+				month: date.getMonth() + 1,
+				day: date.getDate()
+			}
 			_this = this
 			// #ifdef APP-PLUS
 			// let _status = this.$request.baseRequest('get', '/cargoOwnerInfo/firstAuthentication', {
@@ -402,20 +432,20 @@
 			})
 
 			this.validityPeriod = this.$helper.makeValidityPeriod(0, '随时')
-			this.validityPeriodcq = this.$helper.makeValidityPeriod(0, '长期')
 			let _faddress = uni.getStorageSync('storage_faddress');
 			let _saddress = uni.getStorageSync('storage_saddress');
 			if (_faddress) {
 				this.dataObj.sendCity = _faddress.city
 				this.dataObj.sendArea = _faddress.area
+				this.dataObj.sendAdCode = _faddress.adCode
 				this.dataObj.sendPrivate = _faddress.province
 				this.dataObj.sendDetailedAddress = _faddress.detailedAddress
 				this.dataObj.sendLongitude = _faddress.longitude
 				this.dataObj.sendLatitude = _faddress.latitude
-				if(_faddress.contactPhone){
+				if (_faddress.contactPhone) {
 					this.dataObj.senderPhone = _faddress.contactPhone
 				}
-				if(_faddress.contacts){
+				if (_faddress.contacts) {
 					this.dataObj.sender = _faddress.contacts
 				}
 			} else {
@@ -425,13 +455,14 @@
 				this.dataObj.unloadDetailedAddress = _saddress.detailedAddress
 				this.dataObj.unloadCity = _saddress.city
 				this.dataObj.unloadArea = _saddress.area
+				this.dataObj.unsendAdCode = _faddress.adCode
 				this.dataObj.unloadPrivate = _saddress.province
 				this.dataObj.unsendLongitude = _saddress.longitude
 				this.dataObj.unsendLatitude = _saddress.latitude
-				if(_saddress.contacts){
+				if (_saddress.contacts) {
 					this.dataObj.receiver = _saddress.contacts
 				}
-				if(_saddress.contactPhone){
+				if (_saddress.contactPhone) {
 					this.dataObj.receiverPhone = _saddress.contactPhone
 				}
 			} else {
@@ -447,17 +478,18 @@
 			this.dataObj.loadingDateEnd = '随时'
 			this.dataObj.taskValidity = '长期'
 			this.getSFList()
-			
+
 		},
 		async onLoad() {
 			//货物类别(默认上一次)
 			this.queryGoodsList() // 查询货物类别
 			let goods = uni.getStorageSync("goodsType")
-			if(goods){
+			if (goods) {
 				this.dataObj.goodsType = goods.name
 				this.dataObj.goodsTypeKey = goods.key
 			}
-			
+			this.queryBusinessTypeList() //查询业务类型
+
 
 			// _this = this
 			// // #ifdef APP-PLUS
@@ -483,27 +515,41 @@
 			...mapState(['hasLogin', 'userInfo']),
 		},
 		methods: {
-			queryGoodsList(){
+			queryGoodsList() {
 				this.$request.baseRequest('get', '/commonSysParameter/getInfo', {
-						constId: "CON1"
-					}).then(res => {
-						this.goodsList.push(res.data)
-						console.log(this.goodsList)
-					})
+					constId: "CON1"
+				}).then(res => {
+					this.goodsList.push(res.data)
+				})
 			},
-			goodstypeChange(){
+			queryBusinessTypeList() {
+				this.$request.baseRequest('get', '/commonSysParameter/getInfo', {
+					constId: "BUS1"
+				}).then(res => {
+					this.businessList.push(res.data)
+				})
+			},
+			goodstypeChange() {
 				this.isGoodsType = true
 			},
-			goodsSubmit(e){
+			businessChange() {
+				this.isBusinessType = true
+			},
+			goodsSubmit(e) {
 				this.dataObj.goodsType = e.value[0].constValue
 				this.dataObj.goodsTypeKey = e.value[0].constKey
-				let _obj={
-					name:e.value[0].constValue,
-					key:e.value[0].constKey
+				let _obj = {
+					name: e.value[0].constValue,
+					key: e.value[0].constKey
 				}
-				uni.setStorageSync("goodsType",_obj)
+				uni.setStorageSync("goodsType", _obj)
 				this.isGoodsType = false
 			},
+			businessSubmit(e) {
+				this.dataObj.businessType = e.value[0].constValue
+				this.dataObj.businessTypeKey = e.value[0].constKey
+				this.isBusinessType = false
+			},
 			getSFList() {
 				this.dataObj.commonId = this.userInfo.id
 				this.$request.baseRequest('get', '/cargoOwnerCompInfo/cargoOwnerList', {
@@ -511,8 +557,8 @@
 					}).then(res => {
 						if (uni.getStorageSync('releaseCargoOwner')) {
 							this.dataObj.cargoOwner = uni.getStorageSync('releaseCargoOwner')
-							this.dataObj.compId =uni.getStorageSync('releasecompId')
-							
+							this.dataObj.compId = uni.getStorageSync('releasecompId')
+
 						}
 						// 可用企业货主
 						this.qyList = []
@@ -526,7 +572,7 @@
 						if (!_self) _self = []
 						if (_self.length > 0) {
 							for (let i = 0; i < _self.length; i++) {
-								_self[i].compStatus='wd'
+								_self[i].compStatus = 'wd'
 								if (_self[i].status == '已认证') {
 									this.qyList.push(_self[i])
 								}
@@ -534,7 +580,7 @@
 						}
 						if (_dlhz.length > 0) {
 							for (let i = 0; i < _dlhz.length; i++) {
-								_dlhz[i].compStatus='ss'
+								_dlhz[i].compStatus = 'ss'
 								if (_dlhz[i].status == '已认证') {
 									this.qyList.push(_dlhz[i])
 								}
@@ -593,6 +639,13 @@
 					})
 					return true
 				}
+				if (uni.$u.test.isEmpty(this.dataObj.businessType)) {
+					this.$refs.uToast.show({
+						type: 'error',
+						message: "业务类型不能为空!",
+					})
+					return true
+				}
 				if (uni.$u.test.isEmpty(this.dataObj.goodsType)) {
 					this.$refs.uToast.show({
 						type: 'error',
@@ -614,8 +667,6 @@
 					})
 					return true
 				}
-				console.log(this.dataObj.receiver,"收货方")
-				console.log(this.dataObj.receiverPhone,"收货方手机号")
 				if (uni.$u.test.isEmpty(this.dataObj.receiver)) {
 					this.$refs.uToast.show({
 						type: 'error',
@@ -642,7 +693,7 @@
 					this.$refs.uToast.show({
 						type: 'error',
 						message: "信用代码和身份证号码至少填写一个!",
-						duration:2000
+						duration: 4000
 					})
 					return true
 				}
@@ -653,14 +704,14 @@
 				// 	})
 				// 	return true
 				// }
-				if(this.dataObj.receiverIdcard&&this.dataObj.receiverIdcard.length!=18){
+				if (this.dataObj.receiverIdcard && this.dataObj.receiverIdcard.length != 18) {
 					this.$refs.uToast.show({
-							type: 'error',
-							message: "身份证号输入错误!",
-						})
-						return true
+						type: 'error',
+						message: "身份证号输入错误!",
+					})
+					return true
 				}
-				if(this.dataObj.receiverCreditCode&&this.dataObj.receiverCreditCode.length!=18){
+				if (this.dataObj.receiverCreditCode && this.dataObj.receiverCreditCode.length != 18) {
 					this.$refs.uToast.show({
 						type: 'error',
 						message: "信用代码输入错误!",
@@ -778,7 +829,7 @@
 			confirmClick() {
 				uni.$u.throttle(this.requestdata, 500)
 			},
-			requestdata(){
+			requestdata() {
 				console.log(this.dataObj)
 				// // #ifdef APP-PLUS
 				// if (this.alertTitle == '账号审核中') {
@@ -790,7 +841,7 @@
 				// 	return
 				// }
 				// // #endif
-				
+
 				// if (this.alertTitle == '身份信息未认证,去认证?') {
 				// 	uni.switchTab({
 				// 		url: '/pages/mine/index'
@@ -798,7 +849,7 @@
 				// 	return
 				// }
 				// this.isShowAlert = false
-				
+
 				if (this.dataDetails.type == '元/吨') {
 					this.dataObj.billingMethod = 0
 				} else {
@@ -809,11 +860,11 @@
 				} else {
 					this.dataObj.freightAdvance = 0
 				}
-				if(!this.dataObj.receiverIdcard){
-					this.dataObj.receiverIdcard=''
+				if (!this.dataObj.receiverIdcard) {
+					this.dataObj.receiverIdcard = ''
 				}
-				if(!this.dataObj.receiverCreditCode){
-					this.dataObj.receiverCreditCode=''
+				if (!this.dataObj.receiverCreditCode) {
+					this.dataObj.receiverCreditCode = ''
 				}
 				let _list = []
 				for (let i = 0; i < this.checkboxValue1.length; i++) {
@@ -846,49 +897,75 @@
 							type: 'success',
 							message: "发布成功",
 							complete() {
-								_this.dataObj = {
-									commonId: '',
-									cargoOwner: '',
-									sendPrivate: '',
-									sendCity: '',
-									sendArea: '',
-									sendDetailedAddress: '',
-									unloadPrivate: '',
-									unloadCity: '',
-									unloadArea: '',
-									unloadDetailedAddress: '',
-									distance: '',
-									goodsName: '',
-									billingMethod: '元/吨',
-									freightPrice: '',
-									freightAdvance: true,
-									sender: '',
-									senderPhone: '',
-									receiver: '',
-									receiverPhone: '',
-									weight: '',
-									loadingDateStart: '',
-									loadingDateEnd: '',
-									carLengthSmall: '',
-									carLength: '',
-									loadWeightSmall: '',
-									loadWeight: '',
-									carModel: '',
-									taskDescription: '',
-									taskValidity: '',
-									sendLongitude: '',
-									receiverIdcard:'',
-									sendLatitude: '',
-									receiverCreditCode:'',
-									unsendLongitude: '',
-									unsendLatitude: '',
-								}
-								_this.checkboxValue1 = ['不限']
+								// _this.dataObj = {
+								// 	commonId: '',
+								// 	cargoOwner: '',
+								// 	sendPrivate: '',
+								// 	sendCity: '',
+								// 	sendArea: '',
+								// 	sendDetailedAddress: '',
+								// 	unloadPrivate: '',
+								// 	unloadCity: '',
+								// 	unloadArea: '',
+								// 	unloadDetailedAddress: '',
+								// 	distance: '',
+								// 	goodsName: '',
+								// 	billingMethod: '元/吨',
+								// 	freightPrice: '',
+								// 	freightAdvance: true,
+								// 	sender: '',
+								// 	senderPhone: '',
+								// 	receiver: '',
+								// 	receiverPhone: '',
+								// 	weight: '',
+								// 	loadingDateStart: '',
+								// 	loadingDateEnd: '',
+								// 	carLengthSmall: '',
+								// 	carLength: '',
+								// 	loadWeightSmall: '',
+								// 	loadWeight: '',
+								// 	carModel: '',
+								// 	taskDescription: '',
+								// 	taskValidity: '',
+								// 	sendLongitude: '',
+								// 	receiverIdcard:'',
+								// 	sendLatitude: '',
+								// 	receiverCreditCode:'',
+								// 	unsendLongitude: '',
+								// 	unsendLatitude: '',
+								// }
+								// _this.checkboxValue1 = ['不限']
+								// _this.queryGoodsList() // 查询货物类别
+								// let goods = uni.getStorageSync("goodsType")
+								// if(goods){
+								// 	_this.dataObj.goodsType = goods.name
+								// 	_this.dataObj.goodsTypeKey = goods.key
+								// }
+								// const pages = getCurrentPages()
+								// console.log(pages)
+								// 声明一个pages使用getCurrentPages方法
+								// const curPage = pages[pages.length - 1]
+								// 声明一个当前页面
+								// curPage.$vm.$options.onLoad[1].bind(curPage.$vm); // 传入参数
+								// curPage.$vm.$options.onShow[1].bind(curPage.$vm); // curPage.onShow()
+								//       curPage.$vm.$options.onReady[1].bind(curPage.$vm);
+								// curPage.onReady()
+								// uni.switchTab({
+								// 	url: '/pages/mine/index'
+								// })
+								// uni.switchTab({
+								// 	url: '/pages/mine/index'
+								// })
+								uni.redirectTo({
+									url: "/pages/release/release"
+								})
+								// uni.reLaunch({url:"/pages/release/release"})
+								// uni.redirectTo("/pages/release/record")
 								// uni.$u.route("/pages/release/record")
 							}
 						})
 						this.isShowAlert = false
-				
+
 					})
 					.catch(res => {
 						uni.showToast({
@@ -911,6 +988,7 @@
 				this.$request.baseRequest('get', '/cargoOwnerAddressInfo/addressList', {
 						commonId: this.userInfo.id
 					}).then(res => {
+						uni.hideLoading()
 						for (let i = 0; i < res.data.length; i++) {
 							if (res.data[i].defaultShipment == 1 && type == 0) {
 								this.dataObj.sendCity = res.data[i].city
@@ -938,9 +1016,10 @@
 							this.dataObj.distance = this.$helper.getDistance(this.dataObj.unsendLatitude, this.dataObj
 								.unsendLongitude, this.dataObj.sendLatitude, this.dataObj.sendLongitude)
 						}
-						uni.hideLoading()
+
 					})
 					.catch(res => {
+						uni.hideLoading()
 						uni.showToast({
 							title: res.message,
 							icon: 'none',
@@ -977,23 +1056,39 @@
 				for (let i = 0; i < this.qyList.length; i++) {
 					let _name = this.qyList[i].company ? this.qyList[i].company : this.qyList[i].companyName
 					if (_name == e.value[0]) {
-						if(e.value[0]!='个人货主'){
-							this.freightAdvance=true
-							if(this.qyList[i].compStatus=='ss'){
-								this.dataObj.compId=this.qyList[i].compId
-							}else{
-								this.dataObj.compId=this.qyList[i].id
+						if (e.value[0] != '个人货主') {
+							this.freightAdvance = true
+							if (this.qyList[i].compStatus == 'ss') {
+								this.dataObj.compId = this.qyList[i].compId
+							} else {
+								this.dataObj.compId = this.qyList[i].id
 							}
 							// console.log(this.qyList[i].compStatus,this.dataObj.compId)
 							uni.setStorageSync('releasecompId', this.dataObj.compId)
-						}else{
-							this.freightAdvance=false
+						} else {
+							this.$request.baseRequest('get', '/hyCargoOwnerPayeeInfo/selectPayee', {
+								commonId: this.userInfo.id,
+								pageSize: 10,
+								currentPage: 1,
+							}).then(res => {
+								if (res.code == '200') {
+									if (res.data.records.length == 0) {
+										this.$refs.uToast.show({
+											type: 'error',
+											message: "未绑定银行卡"
+										})
+										this.dataObj.cargoOwner = ''
+										return
+									}
+									this.freightAdvance = false
+								}
+							})
 						}
-						this.freightAdvance= this.qyList[i].advanceFreightService == 1 ? true : false
+						this.freightAdvance = this.qyList[i].advanceFreightService == 1 ? true : false
 						this.dataObj.freightAdvance = this.qyList[i].advanceFreightService == 1 ? true : false
 					}
 				}
-				
+
 				uni.setStorageSync('releaseCargoOwner', this.dataObj.cargoOwner)
 				this.show = false
 			},
@@ -1019,40 +1114,18 @@
 				}
 			},
 			selectValidityPeriodcq() {
-				this.isShowcardValidity = true
+				this.$refs.dateEl.show();
 			},
-			confirmValidityPeriod(e) {
-				if (e.value[0] == '随时') {
-					switch (this.ValidityPeriodType) {
-						case 0:
-							this.dataObj.loadingDateStart = e.value[0]
-							break
-						case 1:
-							this.dataObj.loadingDateEnd = e.value[0]
-							break
-					}
-				} else {
-					if (!e.value[1] || !e.value[2]) {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "日期格式错误,请重新选择!",
-						})
-						return
-					}
-					
-					switch (this.ValidityPeriodType) {
-						case 0:
-							this.dataObj.loadingDateStart = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-							break
-						case 1:
-							this.dataObj.loadingDateEnd = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-							break
-
-					}
+			confirmValidityPeriod(date) {
+
+				switch (this.ValidityPeriodType) {
+					case 0:
+						this.dataObj.loadingDateStart = date.date
+						break
+					case 1:
+						this.dataObj.loadingDateEnd = date.date
+						break
 				}
-
-
-				this.isShowValidity = false
 			},
 			getTime: function() {
 
@@ -1066,67 +1139,13 @@
 				var timer = year + '-' + month + '-' + day
 				return timer;
 			},
-			confirmValidityPeriodcq(e) {
-				if (e.value[0] == '长期') {
-					if(e.value[1]||e.value[2]){
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "选择长期时不允许选择月日!",
-						})
-						return
-					}
-					this.dataObj.taskValidity = e.value[0]
-				} else {
-					if (!e.value[1] || !e.value[2]) {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "日期格式错误,请重新选择!",
-						})
-						return
-					}
-					var date=new Date()
-					var text='任务已过期!'
-						if(e.value[0]<date.getFullYear()){
-							this.$refs.uToast.show({
-								type: 'error',
-								message: text,
-							})
-							return
-						}
-						if(e.value[0]==date.getFullYear()&&Number(e.value[1])<(date.getMonth()+1)){
-							this.$refs.uToast.show({
-								type: 'error',
-								message: text,
-							})
-							return
-						}
-						if(e.value[0]==date.getFullYear()&&Number(e.value[1])==(date.getMonth()+1)&&Number(e.value[2])<=(date.getDate())){
-							this.$refs.uToast.show({
-								type: 'error',
-								message: text,
-							})
-							return
-						}
-					var datetime = new Date().getTime()
-					var datetime1 = datetime + (24 * 60 * 60 * 1000 * 30 * 6)
-					var currecttime = new Date(e.value[0] + '-' + e.value[1] + '-' + e.value[2]).getTime()
-					if (currecttime < datetime || currecttime > datetime1) {
-						this.$refs.uToast.show({
-							type: 'error',
-							message: "请选择未来六个月之内的日期!",
-						})
-						return
-					} else {
-						this.dataObj.taskValidity = e.value[0] + '-' + e.value[1] + '-' + e.value[2]
-					}
-					console.log(datetime, currecttime)
-
-				}
-				this.isShowcardValidity = false
+			confirmValidityPeriodcq(date) {
+				this.dataObj.taskValidity = date.date
 			},
 			selectValidityPeriod(type) {
 				this.ValidityPeriodType = type
-				this.isShowValidity = true
+				this.$refs.datezc.show()
+				// this.isShowValidity = true
 			},
 			change(e) {
 				console.log('change', e);
@@ -1299,6 +1318,9 @@
 			font-size: 36rpx;
 			font-weight: 700;
 			color: #171717;
+			width: 90%;
+			justify-content: flex-start;
+			// text-align:left;
 		}
 
 		.collect {
@@ -1307,6 +1329,7 @@
 			line-height: 40rpx;
 			background: #2772FB;
 			color: white;
+			// font-size:1px;
 			padding: 6rpx;
 			border-radius: 50%;
 			text-align: center;

+ 4 - 1
pages/release/selectAddress.vue

@@ -161,6 +161,7 @@
 						pageSize: 100,
 						currentPage: 1
 					}).then(res => {
+						uni.hideLoading()
 						if (res.code == 200) {
 							if (res.data.records.length) {
 								for (var i = 0; i < res.data.records.length; i++) {
@@ -180,11 +181,12 @@
 								}
 							}
 
-							uni.hideLoading()
+							
 						}
 
 					})
 					.catch(res => {
+						uni.hideLoading()
 						uni.showToast({
 							title: res.message,
 							icon: 'none',
@@ -346,6 +348,7 @@
 
 	.content {
 		height: 100vh;
+		overflow:scroll;
 	}
 
 	.content2-wrap {

BIN
static/images/mine/kf.png


+ 1 - 1
util/request.js

@@ -59,7 +59,7 @@ const baseRequest = (method, url, data, header) => {
 								title: '网络异常,请检查网络状况',
 								duration: 2000
 							});
-							reject(response)
+							reject(res)
 							
 						}
 						// // 登录失败

Some files were not shown because too many files changed in this diff