123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196 |
- mbos('page').bind('afterOnload', function () {
- var app = new Vue({
- el: '#app_privacy',
- data: {
- storeEid: mbos.pageInfo.storeEid,
- noDataUrl: '/mbos/store/' + mbos.pageInfo.storeEid + '/shrnewlightapp/no_data.png',
- hasAgreement: true,
- agreements: [],
- showRevoke: false, //显示撤回按钮
- isAllowRecallAgreement: false, //是否允许撤回隐私协议
- confirmRevoke: false
- },
-
- mounted: function () {
-
- const _this = this;
- setTimeout(() => {
- _this.getSignedAgreement();
- _this.getTheme();//获取个性化配置
- });
- $('#body').css('overflow', 'hidden');
- let agreementDom = $('.agreementContent');
- agreementDom.on('scroll', function() {
- let agreementDom = $('.agreementContent');
- let clientHeight = agreementDom[0].clientHeight;
- let scrollTop = agreementDom[0].scrollTop;
- let scrollHeight = agreementDom[0].scrollHeight;
- if(clientHeight + scrollTop == scrollHeight && _this.isAllowRecallAgreement) {
- _this.showRevoke = true;
- }else if(clientHeight + scrollTop > scrollHeight && _this.isAllowRecallAgreement){
- _this.showRevoke = true;
- }else{
- _this.showRevoke = false;
- }
- });
- },
- methods: {
- getSignedAgreement() {
- const _this = this;
- const param = ['getSignedAgreementService', JSON.stringify({})];
-
- mbos.eas.invokeScript({
- name: "commonOSFservice",
- param: param,
- success: function (resp) {
- if(resp.data.length > 0) {
- _this.hasAgreement = true;
- _this.agreements = resp.data;
- _this.getAgreementContent();
- }else{
- _this.hasAgreement = false;
- }
- },
- error: function () {
- _this.hasAgreement = false;
- },
- })
- },
- getAgreementContent() {
- const _this = this;
- const id = _this.agreements[0].id;
- const obj = {
- id: id,
- lang: easContext.locale
- };
- const param = ['getAgreementServiceByID', JSON.stringify(obj)];
- mbos.eas.invokeScript({
- name: "commonOSFservice",
- param: param,
- success: function (resp) {
- $('.agreementContent').empty();
- $('.agreementContent').append(resp.data.content);
-
- let agreementDom = $('.agreementContent');
- let clientHeight = agreementDom[0].clientHeight;
- let scrollTop = agreementDom[0].scrollTop;
- let scrollHeight = agreementDom[0].scrollHeight
- if(clientHeight + scrollTop == scrollHeight && _this.isAllowRecallAgreement) {
- _this.showRevoke = true;
- }else{
- _this.showRevoke = false;
- }
- },
- error: function () {
-
- },
- })
- },
- onItemClick(id) {
- const _this = this;
- $('.agreementContent').scrollTop(0);
- $('.privacy_title').each(function() {
- if($(this).hasClass('privacy_title_active')) {
- $(this).removeClass('privacy_title_active');
- }
- });
- $(event.target).addClass('privacy_title_active');
- const obj = {
- id: id,
- lang: easContext.locale
- };
- const param = ['getAgreementServiceByID', JSON.stringify(obj)];
- mbos.eas.invokeScript({
- name: "commonOSFservice",
- param: param,
- success: function (resp) {
- $('.agreementContent').empty();
- $('.agreementContent').append(resp.data.content);
-
- let agreementDom = $('.agreementContent');
- let clientHeight = agreementDom[0].clientHeight;
- let scrollTop = agreementDom[0].scrollTop;
- let scrollHeight = agreementDom[0].scrollHeight;
- if(clientHeight + scrollTop == scrollHeight && _this.isAllowRecallAgreement) {
- _this.showRevoke = true;
- }else{
- _this.showRevoke = false;
- }
- },
- error: function () {
-
- },
- })
- },
-
- /**
- * 签署声明
- * signState: 0:同意;1:撤回;2:拒绝
- */
- Agreement(){
- const _this = this;
- let id = $('.privacy_title_active').attr('id');
- let obj = {
- signPerson: easContext.userID,
- agreementIds: id,
- signState: 1
- };
- const param = ['signAgreementService', JSON.stringify(obj)];
- mbos.eas.invokeScript({
- name: 'commonOSFservice',
- needShowLoading: true,
- param: param,
- success: function(res){
- console.log(res,'sign');
- _this.confirmRevoke = false;
- _this.getSignedAgreement();
- },
- error: function(res){
- console.log(res)
- }
- })
- },
-
- //获取个性化配置
- getTheme() {
- const _this = this;
- const param = ['getThemeActionService', JSON.stringify({})];
- mbos.eas.invokeScript({
- name: 'commonOSFservice',
- needShowLoading: true,
- param: param,
- success: function(res){
- const config = JSON.parse(res.config);
- //config.isRecallAgreement == '1'
- if(config.isRecallAgreement != '2') {
- _this.isAllowRecallAgreement = true;
- }
- },
- error: function(res){
- console.log(res)
- }
- })
- },
-
- //确认是否撤回授权
- revokeConfirm() {
- const _this = this;
- _this.confirmRevoke = true;
- },
- //取消撤回
- cancelRevoke() {
- const _this = this;
- _this.confirmRevoke = false;
- }
- }
- })
- });
-
|