ccjgmwz 3 năm trước cách đây
mục cha
commit
6f54313455
31 tập tin đã thay đổi với 333 bổ sung90 xóa
  1. 1 3
      .gitignore
  2. 1 3
      unimall-app-api/src/main/java/com/iotechn/unimall/app/api/tran/TranAppService.java
  3. 14 26
      unimall-app-api/src/main/java/com/iotechn/unimall/app/api/tran/TranAppServiceImpl.java
  4. 4 0
      unimall-app-api/src/main/java/com/iotechn/unimall/app/api/user/UserService.java
  5. 12 0
      unimall-app-api/src/main/java/com/iotechn/unimall/app/api/user/UserServiceImpl.java
  6. 6 14
      unimall-app/App.vue
  7. 93 0
      unimall-app/common/appUpdate.js
  8. 1 1
      unimall-app/config/index.js
  9. 152 0
      unimall-app/main.js
  10. 16 12
      unimall-app/manifest.json
  11. 13 1
      unimall-app/pages/sale/information.vue
  12. 0 1
      unimall-app/pages/tran/car_detail.vue
  13. 1 13
      unimall-app/pages/tran/my_car_detail.vue
  14. 0 8
      unimall-app/pages/user/task_detail_buy.vue
  15. 8 8
      unimall-app/pages/user/user.vue
  16. BIN
      unimall-app/unpackage/release/__UNI__7297DA2_360_0409084946.apk
  17. BIN
      unimall-app/unpackage/release/__UNI__7297DA2_google_0409084952.apk
  18. BIN
      unimall-app/unpackage/release/__UNI__7297DA2_huawei_0409084946.apk
  19. BIN
      unimall-app/unpackage/release/__UNI__7297DA2_oppo_0409085012.apk
  20. BIN
      unimall-app/unpackage/release/__UNI__7297DA2_vivo_0409085013.apk
  21. BIN
      unimall-app/unpackage/release/__UNI__7297DA2_xiaomi_0409085015.apk
  22. BIN
      unimall-app/unpackage/release/__UNI__7297DA2_yyb_0409084947.apk
  23. BIN
      unimall-app/unpackage/release/__UNI__EBA12D9_360_0409083053.apk
  24. BIN
      unimall-app/unpackage/release/__UNI__EBA12D9_google_0409083056.apk
  25. BIN
      unimall-app/unpackage/release/__UNI__EBA12D9_huawei_0409083054.apk
  26. BIN
      unimall-app/unpackage/release/__UNI__EBA12D9_oppo_0409083059.apk
  27. BIN
      unimall-app/unpackage/release/__UNI__EBA12D9_vivo_0409083120.apk
  28. BIN
      unimall-app/unpackage/release/__UNI__EBA12D9_xiaomi_0409083100.apk
  29. BIN
      unimall-app/unpackage/release/__UNI__EBA12D9_yyb_0409083055.apk
  30. 10 0
      unimall-data/src/main/java/com/iotechn/unimall/data/dto/UserDTO.java
  31. 1 0
      unimall-data/src/main/resources/com/iotechn/unimall/data/mapper/CarMapper.xml

+ 1 - 3
.gitignore

@@ -48,9 +48,7 @@ mvnw.cmd
 /unimall-core/target/
 /unimall-launcher/target/
 /unimall-plugin-core/target/
-/unimall-app/unpackage/dist/
-/unimall-app/unpackage/resources/
-/unimall-app/unpackage/debug/
+/unimall-app/unpackage/
 /unimall-admin/dist.zip
 
 ###node_modules###

+ 1 - 3
unimall-app-api/src/main/java/com/iotechn/unimall/app/api/tran/TranAppService.java

@@ -7,9 +7,7 @@ import com.iotechn.unimall.core.annotation.HttpParamType;
 import com.iotechn.unimall.core.annotation.param.NotNull;
 import com.iotechn.unimall.core.exception.ServiceException;
 import com.iotechn.unimall.data.domain.CarDO;
-import com.iotechn.unimall.data.domain.ContractDO;
 import com.iotechn.unimall.data.dto.*;
-import com.iotechn.unimall.data.model.Page;
 
 import java.util.List;
 
@@ -91,7 +89,7 @@ public interface TranAppService {
             @NotNull @HttpParam(name = "userId", type = HttpParamType.USER_ID, description = "用户ID") Long userId) throws ServiceException;
     @HttpMethod(description = "获取车辆信息详情")
     CarDTO getCarDetailInfo(
-            @NotNull @HttpParam(name = "sendCarNo", type = HttpParamType.COMMON, description = "派车单号") String sendCarNo,
+            @NotNull @HttpParam(name = "id", type = HttpParamType.COMMON, description = "id") Long id,
             @NotNull @HttpParam(name = "userId", type = HttpParamType.USER_ID, description = "用户ID") Long userId) throws ServiceException;
     @HttpMethod(description = "匹配")
     Boolean pipei(

+ 14 - 26
unimall-app-api/src/main/java/com/iotechn/unimall/app/api/tran/TranAppServiceImpl.java

@@ -4,16 +4,12 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
-import com.google.gson.JsonObject;
-import com.iotechn.unimall.admin.api.trade.TradeServiceImpl;
 import com.iotechn.unimall.admin.config.SendWxMsg;
 import com.iotechn.unimall.app.utils.HttpUtils;
 import com.iotechn.unimall.app.utils.PdfUtil;
 import com.iotechn.unimall.biz.service.user.UserBizService;
 import com.iotechn.unimall.biz.utils.GeTuiUtils;
 import com.iotechn.unimall.biz.utils.SendUtils;
-import com.iotechn.unimall.core.annotation.HttpParam;
-import com.iotechn.unimall.core.annotation.HttpParamType;
 import com.iotechn.unimall.core.exception.*;
 import com.iotechn.unimall.core.util.CalculationUtil;
 import com.iotechn.unimall.core.util.GeneratorUtil;
@@ -279,32 +275,24 @@ public class TranAppServiceImpl implements TranAppService{
         return integralIndexDataDTO;
     }
     @Override
-    public CarDTO getCarDetailInfo(String sendCarNo,Long userId) throws ServiceException {
+    public CarDTO getCarDetailInfo(Long id, Long userId) throws ServiceException {
         CarDTO carDTO = new CarDTO();
+        CarDO carDO = carMapper.selectById(id);
+        BeanUtils.copyProperties(carDO,carDTO);
+        UserDO userDO = userMapper.selectById(userId);
+        carDTO.setSignImg(userDO.getSignImg());
         Wrapper wrapper = new EntityWrapper();
-        wrapper.eq("send_car_no",sendCarNo);
-        List<CarDO> carDOS = carMapper.selectList(wrapper);
-        if(carDOS.size() > 0){
-            CarDO carDO = carDOS.get(0);
-            BeanUtils.copyProperties(carDO,carDTO);
-            UserDO userDO = userMapper.selectById(userId);
-            carDTO.setSignImg(userDO.getSignImg());
-            wrapper = new EntityWrapper();
-            wrapper.eq("contract_no",carDO.getTranContractNo());
-            TranContractDO tranContractDO = new TranContractDO();
-            List<TranContractDO> list = tranContractMapper.selectList(wrapper);
-            if(list.size() >0){
-                tranContractDO = list.get(0);
-            }
-            carDTO.setTranContractPdf(tranContractDO.getContractImg());
-            if(carDO.getTranNo() != null && !carDO.getTranNo().isEmpty()){
-                carDTO.setTranInfo(tranMapper.getTranByTranNo(carDO.getTranNo()));
-            }
-            return carDTO;
+        wrapper.eq("contract_no",carDO.getTranContractNo());
+        TranContractDO tranContractDO = new TranContractDO();
+        List<TranContractDO> list = tranContractMapper.selectList(wrapper);
+        if(list.size() >0){
+            tranContractDO = list.get(0);
         }
-        else{
-            throw new AppServiceException(ExceptionDefinition.APP_UNKNOWN_EXCEPTION);
+        carDTO.setTranContractPdf(tranContractDO.getContractImg());
+        if(carDO.getTranNo() != null && !carDO.getTranNo().isEmpty()){
+            carDTO.setTranInfo(tranMapper.getTranByTranNo(carDO.getTranNo()));
         }
+        return carDTO;
     }
 
     @Override

+ 4 - 0
unimall-app-api/src/main/java/com/iotechn/unimall/app/api/user/UserService.java

@@ -115,5 +115,9 @@ public interface UserService {
     @HttpMethod(description = "生成二维码")
     String getQrCode(
             @NotNull @HttpParam(name = "userId", type = HttpParamType.USER_ID, description = "用户Id") Long userId) throws ServiceException;
+    @HttpMethod(description = "app更新版本")
+    UserDTO updateAppVersion( @HttpParam(name = "appid", type = HttpParamType.COMMON, description = "iv") String appid,
+                   @HttpParam(name = "version", type = HttpParamType.COMMON, description = "iv") String version,
+                   @HttpParam(name = "imei", type = HttpParamType.COMMON, description = "iv") String imei) throws ServiceException;
 
 }

+ 12 - 0
unimall-app-api/src/main/java/com/iotechn/unimall/app/api/user/UserServiceImpl.java

@@ -963,6 +963,18 @@ public class UserServiceImpl implements UserService {
             return "error";
         }
     }
+
+    @Override
+    public UserDTO updateAppVersion(String appid, String version, String imei) throws ServiceException {
+        UserDTO userDTO = new UserDTO();
+        userDTO.setNote("易粮易运需要升级至最新版本");
+        userDTO.setVersion("1.0.8");
+        userDTO.setUrl("https://taohaoliang.oss-cn-beijing.aliyuncs.com/app/eliangeyun.apk");
+        userDTO.setWgtUrl("https://taohaoliang.oss-cn-beijing.aliyuncs.com/app/eliangeyun.apk");
+        userDTO.setVersionCode("108");
+        return userDTO;
+    }
+
     public void DBConnection(){
         try{
             //加载驱动程序

+ 6 - 14
unimall-app/App.vue

@@ -1,4 +1,3 @@
-
 <script>
 	/**
 	 * vuex管理登陆状态,具体可以参考官方登陆模板示例
@@ -6,11 +5,16 @@
 	import {
 		mapMutations
 	} from 'vuex';
+	import appUpdate from 'common/appUpdate.js'
 	export default {
 		methods: {
 			...mapMutations(['login'])
 		},
 		onLaunch: function() {
+			// #ifdef APP-PLUS
+			// 检测升级
+			appUpdate()
+			// #endif
 			this.$socket.initWebIM(this.$ws, true, true)
 			let userInfo = uni.getStorageSync('userInfo') || '';
 			if(userInfo.id){
@@ -22,19 +26,7 @@
 					}
 				});
 			}
-			// #ifdef APP-PLUS
-			var that = this
-			plus.push.getClientInfoAsync((info) => {
-				var name = 'clientId'
-				var value = info.clientid
-				that.$store.commit('$uStore', {
-					name,
-					value
-				});
-				console.log("info.clientid",info.clientid)
-			   }, err => {
-			});
-			// #endif
+			
 		},
 		onShow: function() {
 			console.log('App Show')

+ 93 - 0
unimall-app/common/appUpdate.js

@@ -0,0 +1,93 @@
+
+//APP更新
+
+import * as config from '../config'
+export default function appUpdate() {
+	var data ={
+			appid: plus.runtime.appid,
+			version: plus.runtime.version,
+			imei: plus.device.imei
+		}
+		
+	let baseUrl = config.def().baseUrl
+	let _gp = 'user'
+	let _mt = 'updateAppVersion'
+	uni.request({
+		url: baseUrl + '/m.api',
+		data: {
+			...data,
+			_gp,
+			_mt
+		},
+		method: 'POST',
+		header: {
+			'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
+			'ACCESSTOKEN': 'accessToken'
+		},
+		success: (res) => {
+			
+			console.log("uni.request update success",res)
+			plus.runtime.getProperty(plus.runtime.appid, function(wgtinfo) {
+				let client_version = wgtinfo.version
+				var flag_update = client_version.split(".").splice(0, 2).join(".") != res.data.data.version.split(".").splice(0, 2)
+					.join(".")
+				var flag_hot = (Number(client_version.split(".")[2]) < Number(res.data.data.version.split(".")[2])) & !flag_update
+				console.log("client_version",client_version) 
+				console.log("flag_update",flag_update)
+				console.log("flag_hot",flag_hot)
+
+				if (flag_update) {
+					console.log("更新弹窗")
+					// 提醒用户更新
+					uni.showModal({
+						title: '更新提示',
+						content: res.data.data.note,
+						success: (showResult) => {
+							if (showResult.confirm) {
+								plus.nativeUI.toast("正在准备环境,请稍后!");
+								console.log(res.data.data.url, )
+								var dtask = plus.downloader.createDownload(res.data.data.url, {
+									method: 'GET',
+									filename: '_doc/update/'
+								}, function(d, status) {
+									if (status == 200) {
+										var path = d.filename; //下载apk
+										plus.runtime.install(path); // 自动安装apk文件
+									} else {
+										plus.nativeUI.alert('版本更新失败:' + status);
+									}
+								});
+								dtask.start();
+							}
+						}
+					})
+				} else if (flag_hot) {
+					console.log("热更新") 
+					uni.downloadFile({
+						url: res.data.data.wgtUrl,
+						success: (downloadResult) => {
+							console.log(downloadResult.tempFilePath)
+							if (downloadResult.statusCode === 200) {
+								plus.nativeUI.toast(`正在热更新!${res.data.data.versionCode}`);
+								plus.runtime.install(downloadResult.tempFilePath, {
+									force: false
+								}, function() {
+									plus.nativeUI.toast("热更新成功");
+									plus.runtime.restart();
+								}, function(e) {
+									console.log(e)
+									plus.nativeUI.toast(`热更新失败:${e.message}`);
+								});
+							}
+						}
+					});
+				}
+
+			});
+
+
+
+
+		}
+	})
+}

+ 1 - 1
unimall-app/config/index.js

@@ -1,5 +1,5 @@
 const dev = {
-	// baseUrl: 'http://127.0.0.1:8080',
+	// baseUrl: 'http://192.168.1.122:8080',
 	baseUrl: 'https://www.zthymaoyi.com',
 	h5Appid: 'wxb66b599f7f61b46f',
 	debug: false

+ 152 - 0
unimall-app/main.js

@@ -282,3 +282,155 @@ const app = new Vue({
 	...App
 })
 app.$mount()
+
+    /**  
+     * 获取系统权限  
+     * @param {Object} permission       权限标识  
+     *      CAMERA: (String 类型 )访问摄像头权限         用于调用摄像头(plus.camera.* plus.barcode.*)  
+     *      CONTACTS: (String 类型 )访问系统联系人权限     用于访问(读、写)系统通讯录(plus.gallery.*)  
+     *      GALLERY: (String 类型 )访问系统相册权限       用于访问(读、写)系统相册(plus.gallery.*)  
+     *      LOCATION: (String 类型 )定位权限              用于获取当前用户位置信息(plus.geolocation.*)  
+     *      NOTIFITION: (String 类型 )消息通知权限      用于接收系统消息通知(plus.push.*)  
+     *      RECORD: (String 类型 )录音权限                用于进行本地录音操作(plus.audio.AudioRecorder)  
+     *      SHORTCUT: (String 类型 )创建桌面快捷方式权限    用于在系统桌面创建快捷方式图标(plus.navigator.createShortcut)  
+     *   
+     * @param {Object} successCallBack  成功回调  
+     * @param {Object} errorCallBack    失败回调  
+     */  
+function getPermission(permissionIdentity, successCallBack, errorCallBack){  
+        //权限标识转换成大写  
+        var permissionIdentity = permissionIdentity.toUpperCase();  
+        //获取检测权限的状态  
+        var checkResult = plus.navigator.checkPermission(permissionIdentity);  
+        //权限状态是否正常  
+        var permissionStatusOk = false;  
+        //权限中文名称  
+        var permissionName = '';  
+        //对应 andorid 的具体权限  
+        var androidPermission = '';  
+        //获取权限中文意思与对应 android 系统的权限字符串  
+        switch (permissionIdentity) {  
+            case 'CAMERA':  
+                permissionName = '摄像头';  
+                androidPermission = 'android.permission.CAMERA';  
+                break;  
+            case 'CONTACTS':  
+                permissionName = '系统联系人';  
+                androidPermission = 'android.permission.READ_CONTACTS'  
+                break;  
+            case 'GALLERY':  
+                permissionName = '系统相册';  
+                androidPermission = 'android.permission.READ_EXTERNAL_STORAGE';  
+                break;  
+            case 'LOCATION':  
+                permissionName = '定位';  
+                androidPermission = 'android.permission.ACCESS_COARSE_LOCATION';  
+                break;  
+            case 'NOTIFITION':  
+                permissionName = '消息通知';  
+                androidPermission = '消息通知';  
+                break;  
+            case 'RECORD':  
+                permissionName = '录音';  
+                androidPermission = 'android.permission.RECORD_AUDIO';  
+                break;  
+            case 'SHORTCUT':  
+                permissionName = '创建桌面快捷方式';  
+                androidPermission = 'com.android.launcher.permission.INSTALL_SHORTCUT';  
+                break;  
+            default:  
+                permissionName = '未知';  
+                androidPermission = '未知';  
+                break;  
+        }  
+
+        //判断检查权限的结果  
+        switch (checkResult) {  
+            case 'authorized':  
+                //正常的  
+                permissionStatusOk = true  
+                break;  
+            case 'denied':  
+                //表示程序已被用户拒绝使用此权限,如果是拒绝的就再次提示用户打开确认提示框  
+                //如果有该权限但是没有打开不进行操作还是会去申请或手动打开  
+                // console.log('已关闭' + permissionName + '权限')  
+                // errorCallBack('已关闭' + permissionName + '权限');  
+                // return  
+                break;  
+            case 'undetermined':  
+                // 表示程序未确定是否可使用此权限,此时调用对应的API时系统会弹出提示框让用户确认  
+                // this.requestPermissions(androidPermission, permissionName, successCallBack, errorCallBack)  
+                // errorCallBack('未确定' + permissionName + '权限');  
+                // return  
+                break;  
+            case 'unknown':  
+                errorCallBack('无法查询' + permissionName + '权限');  
+                return  
+                break;  
+            default:  
+                errorCallBack('不支持' + permissionName + '权限');  
+                return  
+                break;  
+        }  
+
+        //如果权限是正常的执行成功回调  
+        if (permissionStatusOk) {  
+            successCallBack()  
+        } else {  
+            //如果不正常,如果是 andorid 系统,就动态申请权限  
+            if (plus.os.name == 'Android') {  
+                //动态申请权限  
+                plus.android.requestPermissions([androidPermission], function(e) {  
+                    if (e.deniedAlways.length > 0) {  
+                        //权限被永久拒绝  
+                        // 弹出提示框解释为何需要定位权限,引导用户打开设置页面开启  
+                        errorCallBack(permissionName + ' 权限被永久拒绝,请到设置权限里找到应用手动开启权限,否则将不能使用此功能。')  
+                        // console.log('Always Denied!!! ' + e.deniedAlways.toString());  
+                    }  
+                    if (e.deniedPresent.length > 0) {  
+                        //权限被临时拒绝  
+                        // 弹出提示框解释为何需要定位权限,可再次调用plus.android.requestPermissions申请权限  
+                        errorCallBack('拒绝开启 ' + permissionName + ' 权限,将不能使用此功能!')  
+                        // console.log('Present Denied!!! ' + e.deniedPresent.toString());  
+                    }  
+                    if (e.granted.length > 0) {  
+                        //权限被允许  
+                        //调用依赖获取定位权限的代码  
+                        successCallBack()  
+                        // console.log('Granted!!! ' + e.granted.toString());  
+                    }  
+                }, function(e) {  
+                    errorCallBack('请求 ' + permissionName + ' 权限失败,' + +JSON.stringify(e))  
+                    // console.log('Request Permissions error:' + JSON.stringify(e));  
+                })  
+            } else if (plus.os.name == 'iOS') {  
+                //ios ,第一次使用目的权限时,应用的权限列表里是不存在的,所以先默认执行一下成功回调,打开要使用的操作,比如 plus.camera  
+                //这时系统会提示是否打开相应的权限,如果拒绝也没关系,因为应用的权限列表里已经存在该权限了,下次再调用相应权限时,就会  
+                //走 else 里的流程,会给用户提示,并且跳转到应该的权限页面,让用户手动打开。  
+                if (checkResult == 'undetermined') {  
+                    //调用依赖获取定位权限的代码  
+                    successCallBack(true)  
+                } else {  
+                    //如果是 ios 系统,ios 没有动态申请操作,所以提示用户去设置页面手动打开  
+                    mui.confirm(permissionName + ' 权限没有开启,是否去开启?', '提醒', ['取消', '确认'], function(e) {  
+                        //取消  
+                        if (e.index == 0) {  
+                            errorCallBack('拒绝开启 ' + permissionName + ' 权限,将不能使用此功能!')  
+                        } else if (e.index == 1) {  
+                            //确认,打开当前应用权限设置页面  
+                            var UIApplication = plus.ios.import('UIApplication');  
+                            var application2 = UIApplication.sharedApplication();  
+                            var NSURL2 = plus.ios.import('NSURL');  
+                            // var setting2 = NSURL2.URLWithString("prefs:root=LOCATION_SERVICES");                             
+                            var setting2 = NSURL2.URLWithString('app-settings:');  
+                            application2.openURL(setting2);  
+
+                            plus.ios.deleteObject(setting2);  
+                            plus.ios.deleteObject(NSURL2);  
+                            plus.ios.deleteObject(application2)  
+                        }  
+                    }, 'div')  
+                }  
+            }  
+        }  
+}

+ 16 - 12
unimall-app/manifest.json

@@ -2,8 +2,8 @@
     "name" : "易粮易运",
     "appid" : "__UNI__7297DA2",
     "description" : "易粮易运——为天下粮食人服务的App",
-    "versionName" : "1.0.6",
-    "versionCode" : 106,
+    "versionName" : "1.0.8",
+    "versionCode" : 108,
     "transformPx" : false,
     /* SDK配置 */
     "quickapp" : {},
@@ -45,6 +45,15 @@
         }
     },
     "app-plus" : {
+        "privacy" : {
+            "prompt" : "template",
+            "template" : {
+                "title" : "服务协议和隐私政策",
+                "message" : "  请你务必审慎阅读、充分理解“服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/>  你可阅读<a href=\"https://liangxin.zthymaoyi.com/userAgreement.html\">《服务协议》</a>和<a href=\"https://liangxin.zthymaoyi.com/screctAgreement.html\">《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。",
+                "buttonAccept" : "同意",
+                "buttonRefuse" : "拒绝"
+            }
+        },
         "compatible" : {
             "ignoreVersion" : true
         },
@@ -64,13 +73,12 @@
                 }
             },
             "android" : {
-                "permissions" : [
-                    "<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>"
-                ],
+                "permissions" : [],
                 "permissionExternalStorage" : {
-                    "request" : "always",
+                    "request" : "none",
                     "prompt" : "应用保存运行状态等信息,需要获取读写手机存储(系统提示为访问设备上的照片、媒体内容和文件)权限,请允许。"
-                }
+                },
+                "autoSdkPermissions" : false
             },
             "icons" : {
                 "android" : {
@@ -123,10 +131,6 @@
             }
         },
         "nvueCompiler" : "weex",
-        "modules" : {
-            "OAuth" : {},
-            "SQLite" : {},
-            "Push" : {}
-        }
+        "modules" : {}
     }
 }

+ 13 - 1
unimall-app/pages/sale/information.vue

@@ -192,7 +192,19 @@
 			this.loadData()
 		},
 		onLoad(options) {
-			
+			// #ifdef APP-PLUS
+			var that = this
+			plus.push.getClientInfoAsync((info) => {
+				var name = 'clientId'
+				var value = info.clientid
+				that.$store.commit('$uStore', {
+					name,
+					value
+				});
+				console.log("info.clientid",info.clientid)
+			   }, err => {
+			});
+			// #endif
 		},
 		onPageScroll(e) {
 			this.scrollTop = e.scrollTop;

+ 0 - 1
unimall-app/pages/tran/car_detail.vue

@@ -76,7 +76,6 @@
 			<view class="action-btn-group">
 				<button type="primary" class=" action-btn no-border buy-now-btn" @click="contactUs">联系我们</button>
 				<button v-if="car.status == 2" type="primary" class=" action-btn no-border add-cart-btn" @click="tranNow">立即委派</button>
-				<button v-else type="primary" class=" action-btn no-border add-cart-btn" >正在承运</button>
 			</view>
 		</view>
 	</view>

+ 1 - 13
unimall-app/pages/tran/my_car_detail.vue

@@ -418,7 +418,7 @@
 				title: '正在加载',
 				mask:true
 			})
-			that.$api.request('tran', 'getCarDetailInfo', {
+			that.$api.request('tran', 'getCarDetailInfoBySendCarNo', {
 				sendCarNo: options.sendCarNo
 			}, failres => {
 				that.$api.msg(failres.errmsg)
@@ -675,10 +675,6 @@
 			},
 			ChooseImageBank() {
 				var that = this
-				uni.showLoading({
-					title: '正在识别',
-					mask:true
-				})
 				uni.chooseImage({
 					count: 1, //默认9
 					sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
@@ -716,10 +712,6 @@
 			},
 			ChooseImagePerson() {
 				const that = this
-				uni.showLoading({
-					title: '正在识别',
-					mask:true
-				})
 				uni.chooseImage({
 					count: 1, //默认9
 					sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
@@ -755,10 +747,6 @@
 			},
 			ChooseImageRecPerson() {
 				var that = this
-				uni.showLoading({
-					title: '正在识别',
-					mask:true
-				})
 				uni.chooseImage({
 					count: 1, //默认9
 					sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有

+ 0 - 8
unimall-app/pages/user/task_detail_buy.vue

@@ -358,10 +358,6 @@
 			},
 			ChooseImageBank() {
 				var that = this
-				uni.showLoading({
-					title: '正在识别',
-						mask:true
-				})
 				uni.chooseImage({
 					count: 1, //默认9
 					sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
@@ -399,10 +395,6 @@
 			},
 			ChooseImagePerson() {
 				const that = this
-				uni.showLoading({
-					title: '正在识别',
-						mask:true
-				})
 				uni.chooseImage({
 					count: 1, //默认9
 					sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有

+ 8 - 8
unimall-app/pages/user/user.vue

@@ -52,13 +52,13 @@
 							
 						</view>
 						
-						<view class='cu-item' @click='scanCode'>
+						<!-- <view class='cu-item' @click='scanCode'>
 							<view>
 								<text class="cuIcon-scan icon text-grey"></text>
 							    <text class="text-grey">扫一扫</text>
 							</view>
 							<view class = 'tip_text cuIcon-right' ></view>
-						</view>
+						</view> -->
 						</view>
 						<view style='text-align:center;'>
 							<navigator url="/pages/sale/webview?can_share=false&url=https://liangxin.zthymaoyi.com/userAgreement.html" class="path" hover-class="navigator-hover">《服务协议》</navigator>|<navigator url="/pages/sale/webview?can_share=false&url=https://liangxin.zthymaoyi.com/screctAgreement.html"
@@ -115,7 +115,7 @@
 							icon:'cuIcon-apps',
 							tips: 0,
 							url:'/pages/tran/my_tran?TabCur=0',
-							show:true
+							show:false
 						},
 						{
 							num:1,
@@ -123,7 +123,7 @@
 							icon:'cuIcon-calendar',
 							tips: 0,
 							url:'/pages/tran/my_tran?TabCur=1',
-							show:true
+							show:false
 						},
 						{
 							num:2,
@@ -139,7 +139,7 @@
 							icon:'cuIcon-news',
 							tips: 0,
 							url:'/pages/user/message',
-							show:true
+							show:false
 						},
 						{
 							num:4,
@@ -147,7 +147,7 @@
 							icon:'cuIcon-copy',
 							tips: 0,
 							url:`/pages/user/task`,
-							show:true
+							show:false
 						},
 						{
 							num:5,
@@ -155,7 +155,7 @@
 							icon:'cuIcon-deliver',
 							tips: 0,
 							url:'',
-							show:true
+							show:false
 						},
 						{
 							num:6,
@@ -163,7 +163,7 @@
 							icon:'cuIcon-phone',
 							tips: 0,
 							url:'/pages/user/contact',
-							show:true
+							show:false
 						},
 						{
 							num:7,

BIN
unimall-app/unpackage/release/__UNI__7297DA2_360_0409084946.apk


BIN
unimall-app/unpackage/release/__UNI__7297DA2_google_0409084952.apk


BIN
unimall-app/unpackage/release/__UNI__7297DA2_huawei_0409084946.apk


BIN
unimall-app/unpackage/release/__UNI__7297DA2_oppo_0409085012.apk


BIN
unimall-app/unpackage/release/__UNI__7297DA2_vivo_0409085013.apk


BIN
unimall-app/unpackage/release/__UNI__7297DA2_xiaomi_0409085015.apk


BIN
unimall-app/unpackage/release/__UNI__7297DA2_yyb_0409084947.apk


BIN
unimall-app/unpackage/release/__UNI__EBA12D9_360_0409083053.apk


BIN
unimall-app/unpackage/release/__UNI__EBA12D9_google_0409083056.apk


BIN
unimall-app/unpackage/release/__UNI__EBA12D9_huawei_0409083054.apk


BIN
unimall-app/unpackage/release/__UNI__EBA12D9_oppo_0409083059.apk


BIN
unimall-app/unpackage/release/__UNI__EBA12D9_vivo_0409083120.apk


BIN
unimall-app/unpackage/release/__UNI__EBA12D9_xiaomi_0409083100.apk


BIN
unimall-app/unpackage/release/__UNI__EBA12D9_yyb_0409083055.apk


+ 10 - 0
unimall-data/src/main/java/com/iotechn/unimall/data/dto/UserDTO.java

@@ -50,4 +50,14 @@ public class UserDTO extends SuperDTO {
     private List<Long> storeIds;
     private Long companyId;
     private String liangxinId;
+    //版本
+    private String version;
+    //版本
+    private String versionCode;
+    //apk地址
+    private String url;
+    //apk地址
+    private String wgtUrl;
+    //更新提示
+    private String note;
 }

+ 1 - 0
unimall-data/src/main/resources/com/iotechn/unimall/data/mapper/CarMapper.xml

@@ -7,6 +7,7 @@
         s.id AS id,
         IFNULL(s.tran_no, '') AS tranNo,
         s.car_no AS carNo,
+        s.send_car_no as sendCarNo,
         s.start_place AS startPlace,
         s.end_place AS endPlace,
         s.price AS price,