wuxw
2019-11-21 59ce81c19b75e3e6cdc6a3a65d49ec11e27b0a06
WebService/src/main/resources/components/ownerPackage/edit-owner/editOwner.js
@@ -1,5 +1,5 @@
(function(vc){
    var _fileUrl = 'https://hc.demo.winqi.cn/callComponent/download/getFile/fileByObjId';
    vc.extends({
        propTypes: {
            notifyLoadDataComponentName:vc.propTypes.string
@@ -12,7 +12,9 @@
                age:'',
                link:'',
                sex:'',
                remark:''
                remark:'',
                ownerPhoto:'',
                videoPlaying:false
            }
        },
         _initMethod:function(){
@@ -21,7 +23,11 @@
         _initEvent:function(){
            vc.on('editOwner','openEditOwnerModal',function(_owner){
                vc.copyObject(_owner,vc.component.editOwnerInfo);
                //根据memberId 查询 照片信息
                vc.component.editOwnerInfo.ownerPhoto = _fileUrl+"?objId="+
                   vc.component.editOwnerInfo.memberId +"&communityId="+vc.getCurrentCommunity().communityId+"&fileTypeCd=10000&time="+new Date();
                $('#editOwnerModel').modal('show');
                vc.component._initAddOwnerMediaForEdit();
            });
        },
        methods:{
@@ -83,6 +89,7 @@
                });
            },
            editOwnerMethod:function(){
                if(!vc.component.editOwnerValidate()){
@@ -92,6 +99,11 @@
                }
                vc.component.editOwnerInfo.communityId = vc.getCurrentCommunity().communityId;
                //编辑时 ownerPhoto 中内容不是照片内容,则清空
                if(vc.component.editOwnerInfo.ownerPhoto.indexOf(_fileUrl) != -1){
                    vc.component.editOwnerInfo.ownerPhoto = "";
                }
                vc.http.post(
                    'editOwner',
                    'changeOwner',
@@ -125,8 +137,54 @@
                    age:'',
                    link:'',
                    sex:'',
                    remark:''
                    remark:'',
                    ownerPhoto:'',
                    videoPlaying:false
                };
            },
            _editUserMedia:function() {
                return navigator.getUserMedia = navigator.getUserMedia ||
                    navigator.webkitGetUserMedia ||
                    navigator.mozGetUserMedia ||
                    navigator.msGetUserMedia || null;
            },
            _initAddOwnerMediaForEdit:function () {
                if(vc.component._editUserMedia()){
                    vc.component.editOwnerInfo.videoPlaying = false;
                    var constraints = {
                        video: true,
                        audio: false
                    };
                    var video = document.getElementById('ownerPhotoForEdit');
                    var media = navigator.getUserMedia(constraints, function (stream) {
                        var url = window.URL || window.webkitURL;
                        //video.src = url ? url.createObjectURL(stream) : stream;
                        try {
                            video.src = url ? url.createObjectURL(stream) : stream;
                        } catch (error) {
                            video.srcObject = stream;
                        }
                        video.play();
                        vc.component.editOwnerInfo.videoPlaying = true;
                    }, function (error) {
                        console.log("ERROR");
                        console.log(error);
                    });
                }else{
                    console.log("初始化视频失败");
                }
            },
            _takePhotoForEdit:function () {
                if (vc.component.editOwnerInfo.videoPlaying) {
                    var canvas = document.getElementById('canvasForEdit');
                    var video = document.getElementById('ownerPhotoForEdit');
                    canvas.width = video.videoWidth;
                    canvas.height = video.videoHeight;
                    canvas.getContext('2d').drawImage(video, 0, 0);
                    var data = canvas.toDataURL('image/webp');
                    vc.component.editOwnerInfo.ownerPhoto = data;
                    //document.getElementById('photo').setAttribute('src', data);
                }
            }
        }
    });