From ecdac8a738f254db2b2ea28cbe3248f7a6a7eb2b Mon Sep 17 00:00:00 2001
From: mrzcc <121184950@qq.com>
Date: 星期五, 06 三月 2020 16:18:27 +0800
Subject: [PATCH] 优化采购申请组件

---
 WebService/src/main/resources/components/applicationKeyPackage/edit-applicationKey/editApplicationKey.js |  142 ++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 126 insertions(+), 16 deletions(-)

diff --git a/WebService/src/main/resources/components/applicationKeyPackage/edit-applicationKey/editApplicationKey.js b/WebService/src/main/resources/components/applicationKeyPackage/edit-applicationKey/editApplicationKey.js
index 0127bf4..da63aea 100644
--- a/WebService/src/main/resources/components/applicationKeyPackage/edit-applicationKey/editApplicationKey.js
+++ b/WebService/src/main/resources/components/applicationKeyPackage/edit-applicationKey/editApplicationKey.js
@@ -16,24 +16,66 @@
                 floorNum: '',
                 floorName: '',
                 unitId: '',
-                unitName: '',
+                unitNum: '',
                 roomId: '',
                 locationTypeCd: '',
                 locationObjId: '',
-                roomName: ''
-
+                roomName: '',
+                videoPlaying: false,
+                photo: '',
+                mediaStreamTrack: null,
+                typeFlag:'',
             }
         },
         _initMethod: function () {
             vc.component._initEditApplicationKeyDateInfo();
+            //vc.component._initEditApplicationKeyMedia();
+
 
         },
         _initEvent: function () {
             vc.on('editApplicationKey', 'openEditApplicationKeyModal', function (_params) {
                 vc.component.refreshEditApplicationKeyInfo();
-               // $('#editApplicationKeyModel').modal('show');
+                // $('#editApplicationKeyModel').modal('show');
                 vc.copyObject(_params, vc.component.editApplicationKeyInfo);
+                if (vc.component.editApplicationKeyInfo.locationTypeCd == '2000') {
+                    vc.emit('editApplicationKey', 'floorSelect2', 'setFloor', {
+                        floorId: vc.component.editApplicationKeyInfo.floorId,
+                        floorNum: vc.component.editApplicationKeyInfo.floorNum
+                    });
+                    vc.emit('editApplicationKey', 'unitSelect2', 'setUnit', {
+                        floorId: vc.component.editApplicationKeyInfo.floorId,
+                        floorNum: vc.component.editApplicationKeyInfo.floorNum,
+                        unitId: vc.component.editApplicationKeyInfo.unitId,
+                        unitNum: vc.component.editApplicationKeyInfo.unitNum,
+                    });
+                } else if (vc.component.editApplicationKeyInfo.locationTypeCd == '3000') {
+                    vc.emit('editApplicationKey', 'floorSelect2', 'setFloor', {
+                        floorId: vc.component.editApplicationKeyInfo.floorId,
+                        floorNum: vc.component.editApplicationKeyInfo.floorNum
+                    });
+                    vc.emit('editApplicationKey', 'unitSelect2', 'setUnit', {
+                        floorId: vc.component.editApplicationKeyInfo.floorId,
+                        floorNum: vc.component.editApplicationKeyInfo.floorNum,
+                        unitId: vc.component.editApplicationKeyInfo.unitId,
+                        unitNum: vc.component.editApplicationKeyInfo.unitNum,
+                    });
+                    vc.emit('editApplicationKey', 'roomSelect2', 'setRoom', {
+                        floorId: vc.component.editApplicationKeyInfo.floorId,
+                        floorNum: vc.component.editApplicationKeyInfo.floorNum,
+                        unitId: vc.component.editApplicationKeyInfo.unitId,
+                        unitNum: vc.component.editApplicationKeyInfo.unitNum,
+                        roomId: vc.component.editApplicationKeyInfo.roomId,
+                        roomNum: vc.component.editApplicationKeyInfo.roomNum,
+                    });
+                }
                 vc.component.editApplicationKeyInfo.communityId = vc.getCurrentCommunity().communityId;
+
+
+            });
+
+            vc.on('editApplicationKey', "_initEditApplicationKeyData", function () {
+                vc.component._initEditApplicationKeyMedia();
             });
 
             vc.on("editApplicationKey", "notify", function (_param) {
@@ -45,7 +87,7 @@
                     vc.component.editApplicationKeyInfo.unitId = _param.unitId;
                 }
 
-                if(_param.hasOwnProperty("roomId")){
+                if (_param.hasOwnProperty("roomId")) {
                     vc.component.editApplicationKeyInfo.roomId = _param.roomId;
                 }
             });
@@ -55,7 +97,7 @@
                 vc.component.editApplicationKeyInfo.startTime = vc.dateFormat(new Date().getTime());
                 $('.editApplicationStartTime').datetimepicker({
                     language: 'zh-CN',
-                    format: 'yyyy-mm-dd HH:ii:ss',
+                    format: 'yyyy-mm-dd hh:ii:ss',
                     initTime: true,
                     initialDate: new Date(),
                     autoClose: 1,
@@ -69,7 +111,7 @@
                     });
                 $('.editApplicationEndTime').datetimepicker({
                     language: 'zh-CN',
-                    format: 'yyyy-mm-dd HH:ii:ss',
+                    format: 'yyyy-mm-dd hh:ii:ss',
                     initTime: true,
                     initialDate: new Date(),
                     autoClose: 1,
@@ -126,12 +168,7 @@
                             limit: "required",
                             param: "",
                             errInfo: "鎬у埆涓嶈兘涓虹┖"
-                        },
-                        {
-                            limit: "num",
-                            param: "",
-                            errInfo: "鎬у埆鏍煎紡閿欒"
-                        },
+                        }
                     ],
                     'editApplicationKeyInfo.age': [
                         {
@@ -217,7 +254,7 @@
                     return;
                 }
                 if (!vc.component.editApplicationKeyValidate()) {
-                    vc.message(vc.validate.errInfo);
+                    vc.toast(vc.validate.errInfo);
                     return;
                 }
 
@@ -259,15 +296,88 @@
                     floorNum: '',
                     floorName: '',
                     unitId: '',
-                    unitName: '',
+                    unitNum: '',
                     roomId: '',
                     locationTypeCd: '',
                     locationObjId: '',
-                    roomName: ''
+                    roomName: '',
+                    videoPlaying: false,
+                    photo: '',
+                    mediaStreamTrack: null,
+                    typeFlag:'',
                 }
             },
             _closeEditApplicationKeyView: function () {
                 vc.emit('applicationKeyManage', 'listApplicationKey', {});
+                //鍏抽棴鎷嶇収鎽勫儚澶�
+                if (vc.component.editApplicationKeyInfo.mediaStreamTrack != null) {
+                    vc.component.editApplicationKeyInfo.mediaStreamTrack.stop();
+                }
+            },
+            _editUserMedia: function () {
+                return navigator.getUserMedia = navigator.getUserMedia ||
+                    navigator.webkitGetUserMedia ||
+                    navigator.mozGetUserMedia ||
+                    navigator.msGetUserMedia || null;
+            },
+            _initEditApplicationKeyMedia: function () {
+                if (vc.component._editUserMedia()) {
+                    vc.component.editApplicationKeyInfo.videoPlaying = false;
+                    var constraints = {
+                        video: true,
+                        audio: false
+                    };
+                    var editVideo = document.getElementById('editApplicationKeyPhoto');
+                    var media = navigator.getUserMedia(constraints, function (stream) {
+                        var url = window.URL || window.webkitURL;
+                        //video.src = url ? url.createObjectURL(stream) : stream;
+
+                        vc.component.editApplicationKeyInfo.mediaStreamTrack = typeof stream.stop === 'function' ? stream : stream.getTracks()[0];
+                        try {
+                            editVideo.src = url ? url.createObjectURL(stream) : stream;
+                        } catch (error) {
+                            editVideo.srcObject = stream;
+                        }
+                        editVideo.play();
+                        vc.component.editApplicationKeyInfo.videoPlaying = true;
+                    }, function (error) {
+                        console.log("ERROR");
+                        console.log(error);
+                    });
+                } else {
+                    console.log("鍒濆鍖栬棰戝け璐�");
+                }
+            },
+            _takeEditPhoto: function () {
+                if (vc.component.editApplicationKeyInfo.videoPlaying) {
+                    var canvas = document.getElementById('editApplicationKeyCanvas');
+                    var takeEditVideo = document.getElementById('editApplicationKeyPhoto');
+                    canvas.width = takeEditVideo.videoWidth;
+                    canvas.height = takeEditVideo.videoHeight;
+                    canvas.getContext('2d').drawImage(takeEditVideo, 0, 0);
+                    var data = canvas.toDataURL('image/webp');
+                    vc.component.editApplicationKeyInfo.photo = data;
+                    //document.getElementById('photo').setAttribute('src', data);
+                }
+            },
+            _uploadEditPhoto: function (event) {
+                $("#uploadEditApplicationKeyPhoto").trigger("click")
+            },
+            _chooseEditPhoto: function (event) {
+                var photoFiles = event.target.files;
+                if (photoFiles && photoFiles.length > 0) {
+                    // 鑾峰彇鐩墠涓婁紶鐨勬枃浠�
+                    var file = photoFiles[0];// 鏂囦欢澶у皬鏍¢獙鐨勫姩浣�
+                    if (file.size > 1024 * 1024 * 1) {
+                        vc.toast("鍥剧墖澶у皬涓嶈兘瓒呰繃 2MB!")
+                        return false;
+                    }
+                    var reader = new FileReader(); //鏂板缓FileReader瀵硅薄
+                    reader.readAsDataURL(file); //璇诲彇涓篵ase64
+                    reader.onloadend = function (e) {
+                        vc.component.editApplicationKeyInfo.photo = reader.result;
+                    }
+                }
             },
         }
     });

--
Gitblit v1.8.0