angularjs实现一键短信(单纯的前端操作)

一键短信

  1. angularjs实现发短信功能
    后端会给接口和字段,短信内容你也不用管
    1.1 在按钮的地方,添加一个点击事件,事件里面传入后端给的字段
      <button class="btn btn-primary "  ng-click="detail.sendMessage(detail.id,detail.ag_num )">一键短信</button>

1.2在js里面写发送短信的方法:
这里的字段id,ag_num 有可能不在同一个接口几面,取的时候要注意

 this.sendMessage = (id, ag_num) => {
      this.$http.post('/aws/send_message/', { id: this.id, ag_num: this.advisorCallInfo.ag_num }).then(res => {
        this.toastr.success('一键短信成功');
      }, (err) => {
        this.toastr.error('一键短信失败', '😣');
      });
    };

写发短信,其实就是调接口,传参数。其他的后端来做
服务报200,url正确,payload里面有后端给的数据,就成功了

在这里插入图片描述
1.3最后说一点:本地代码和给你接口的后端要一致,测试代码的接口和给你接口的后端也要一致,不然就算代码写对,后端也不会接到你的请求
终于----------没有那么简单
产品考虑角度:
顾问万一错误按下发短信,导致会骚然用户
如果已经发送过短信,那么就不能再给用户发短信
实现
2.1: 后端给了两个接口,这次的逻辑,是要先判断是否已经发送过短信
接口一:接口一会返回一个code值,如果code值为0,那么可以发短信
发完短信,走第二个接口,第二个接口就是刚开始的需求
具体实现起来要注意:
3.1:post和get传参不一样
3.2:指行的时机(这个要和后端沟通好)
3.3:有时候会报请求4,5错误,在自己传参正确的情况下,问一下后端
附上代码,供参考

this.sendMessageUibModal = sendMsg => {
      this.$uibModal.open({
        templateUrl: addOneMessageModalTml,
        bindToController: true,
        windowClass: 'add_one_success',
        controller: ($uibModalInstance, $scope, pa) => {
          'ngInject';
          $scope.pa = pa;
          $scope.sendEnd = () => {
            this.$http.post('/aws/send_message/', { id: this.id, ag_num: this.advisorCallInfo.ag_num }).then(() => {
              this.toastr.success('一键短信成功');
              $uibModalInstance.close();
            }, (err) => {
              this.toastr.error('一键短信失败', '😣');
            });
          };
        },
        resolve: {
          pa: () => sendMsg
        }
      });
    }
    this.sendMessage = () => {
      // 先判断
      this.$http.get(`/aws/send_message/?id=${ this.id }&ag_num=${ this.advisorCallInfo.ag_num }&template=SMS_162446224`).then(data => {
        this.sendMsg = data.data.msg;
        if (data.data.code === 1) {
          this.toastr.info('已经发送过短信给该用户。针对同一客户,只能发送一次短信哦~~');
        } else if (data.data.code === 0) {
          this.sendMessageUibModal(this.sendMsg);
        }
      });
    };

一下是短信模版

<div class="modal-header">
  <h4 class="modal-title" style="text-align: center">
    短信发送内容
  </h4>
</div>
<div class="modal-body">
  <p>
    <span>{{ pa }}</span>
  </p>
</div>
<div class="modal-footer">
  <button type="button" class="btn btn-primary btn-o" ng-click="sendEnd()" style="background: #3487e2">发送</button>
  <button type="button" class="btn btn-default btn-default" ng-click="$dismiss();">取消</button>
</div>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章