liukangdong
2024-08-02 f966d5ca657dddc7537442122612efc445791f8e
Merge branch 'master' of http://139.186.142.91:10010/r/productDev/zbomyoujia
已修改11个文件
290 ■■■■ 文件已修改
server/service/src/main/java/com/doumee/config/Jwt/WebMvcConfig.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/core/constants/ResponseStatus.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/dao/web/reqeust/WxPhoneRequest.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/impl/GetZhongTaiDataServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java 145 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/impl/UsersServiceImpl.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
wechat_jiaxuan/components/areaSel/areaSel.js 74 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
wechat_jiaxuan/components/areaSel/areaSel.wxml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
wechat_jiaxuan/pages/design/design.js 43 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
wechat_jiaxuan/pages/design/design.wxml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
wechat_jiaxuan/pages/index/index.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/config/Jwt/WebMvcConfig.java
@@ -102,13 +102,13 @@
                throw new BusinessException(ResponseStatus.DATA_EMPTY);
            }
            if(Objects.isNull(member.getOpenid())){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"用户已注销,请重新登录");
                throw new BusinessException(ResponseStatus.USER_DISABLE_TIME.getCode(),"用户已注销,请重新登录");
            }
            if(Constants.equalsInteger(member.getIsdeleted(),Constants.ONE)){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"用户已删除,请联系管理员");
                throw new BusinessException(ResponseStatus.USER_DISABLE_TIME.getCode(),"用户已删除,请联系管理员");
            }
            if(!Constants.equalsInteger(member.getStatus(),Constants.ZERO)){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"用户已禁用,请联系管理员");
                throw new BusinessException(ResponseStatus.USER_DISABLE_TIME.getCode(),"用户已禁用,请联系管理员");
            }
            request.setAttribute(JwtTokenUtil.UserId_Name, memberId);
            request.setAttribute(JwtTokenUtil.UserType, ZTConstants.CUSTOMER);
@@ -132,10 +132,10 @@
                throw new BusinessException(ResponseStatus.DATA_EMPTY);
            }
            if(Constants.equalsInteger(users.getIsdeleted(),Constants.ONE)){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"用户已删除,请联系管理员");
                throw new BusinessException(ResponseStatus.USER_DISABLE_TIME.getCode(),"用户已删除,请联系管理员");
            }
            if(!StringUtils.equals(users.getStatus(),Constants.ONE+"")){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"用户已禁用,请联系管理员");
                throw new BusinessException(ResponseStatus.USER_DISABLE_TIME.getCode(),"用户状态异常,请重新登录");
            }
            request.setAttribute(JwtTokenUtil.UserId_Name, userId);
            request.setAttribute(JwtTokenUtil.UserType, ZTConstants.BUSINESS);
server/service/src/main/java/com/doumee/core/constants/ResponseStatus.java
@@ -26,6 +26,7 @@
    MASSIVE_REQUEST(5101, "请求过于频繁"),
    NOT_ALLOWED(5110, "不允许的操作"),
    TOKEN_EXCEED_TIME(5111, "TOKEN过期"),
    USER_DISABLE_TIME(5112, "用户已禁用"),
    NO_LOGIN(5112, "未登录"),
    ;
server/service/src/main/java/com/doumee/dao/web/reqeust/WxPhoneRequest.java
@@ -29,4 +29,6 @@
    @ApiModelProperty(value = "sessionKey")
    private String sessionKey;
    @ApiModelProperty(value = "openid")
    private String openid;
}
server/service/src/main/java/com/doumee/service/business/impl/GetZhongTaiDataServiceImpl.java
@@ -504,7 +504,6 @@
    public void batchAddLike(ZTBatchAddListRequest ztBatchAddListRequest){
        if(Objects.isNull(ztBatchAddListRequest)
                || StringUtils.isBlank(ztBatchAddListRequest.getArticleIds())
                || StringUtils.isBlank(ztBatchAddListRequest.getCustomerId())
                || StringUtils.isBlank(ztBatchAddListRequest.getPlatSourceId())
                || StringUtils.isBlank(ztBatchAddListRequest.getPlatSource())
        ){
server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -357,13 +357,75 @@
            return accountResponse;
    }
    public static void saveCustomerUser(ZbomZhongTaiService zbomZhongTaiService,CustomerUserMapper customerUserMapper,Users users,Member member){
        if(Objects.nonNull(users)&&Objects.nonNull(member.getId())) {
            CustomerUser customerUser = null;
            if (customerUserMapper.selectCount(new QueryWrapper<CustomerUser>().lambda()
//    public static void saveCustomerUser(ZbomZhongTaiService zbomZhongTaiService,CustomerUserMapper customerUserMapper,Users users,Member member){
//        if(Objects.nonNull(users)&&Objects.nonNull(member.getId())) {
//            CustomerUser customerUser = null;
//            if (customerUserMapper.selectCount(new QueryWrapper<CustomerUser>().lambda()
//                    .eq(CustomerUser::getIsdeleted, Constants.ZERO)
//                    .eq(CustomerUser::getUserId, users.getId())
//                    .eq(CustomerUser::getMemberId, member.getId())
//            ) <= Constants.ZERO) {
//                customerUser = new CustomerUser();
//                customerUser.setIsdeleted(Constants.ZERO);
//                customerUser.setUserId(users.getId());
//                customerUser.setCreateDate(new Date());
//                customerUser.setMemberId(member.getId());
//                customerUser.setPhone(users.getPhone());
//                customerUser.setIamUserId(users.getIamId());
//                customerUser.setName(users.getName());
//                customerUser.setUsername(users.getIamUsername());
//                customerUser.setAddr(users.getShopAddress());
//            }
//            //等待调起中台接口
//            ZTCustomerBindingUsersRequest ztCustomerBindingUsersRequest = new ZTCustomerBindingUsersRequest();
//            ztCustomerBindingUsersRequest.setName(member.getName());
//            ztCustomerBindingUsersRequest.setNickName(member.getNickname());
//            ztCustomerBindingUsersRequest.setPhone(member.getPhone());
//            ztCustomerBindingUsersRequest.setAvatarUrl(member.getImgurl());
//            ztCustomerBindingUsersRequest.setUptown(member.getDistrict());
//            ztCustomerBindingUsersRequest.setFullAddress(member.getAddress());
//            if(Objects.nonNull(member.getHousearea())){
//                ztCustomerBindingUsersRequest.setHouseArea(member.getHousearea().toString());
//            }
//            ztCustomerBindingUsersRequest.setOpenId(member.getOpenid());
//            ztCustomerBindingUsersRequest.setToken(member.getToken());
//            ztCustomerBindingUsersRequest.setUserType(ZTConstants.CUSTOMER);
//            ztCustomerBindingUsersRequest.setSourceCustomerId(member.getId().toString());
//            ztCustomerBindingUsersRequest.setDaoGouUserId(users.getIamId());
//            ztCustomerBindingUsersRequest.setDaoGouAccount(users.getIamUsername());
//            ztCustomerBindingUsersRequest.setPlatSource("2");
//            ZTBaseResponse ztBaseResponse = zbomZhongTaiService.customerBinDingUsers(ztCustomerBindingUsersRequest);
//            if(Objects.nonNull(customerUser)){
//                if(Objects.nonNull(ztBaseResponse)){
//                    if(ztBaseResponse.getSuccess()){
//                        customerUser.setZtStatus(1);
//                        customerUser.setZtDate(new Date());
//                    }else{
//                        customerUser.setZtStatus(2);
//                        customerUser.setZtDate(new Date());
//                        customerUser.setZtInfo(JSONObject.toJSONString(ztBaseResponse));
//                    }
//                } else{
//                    customerUser.setZtStatus(2);
//                    customerUser.setZtDate(new Date());
//                    customerUser.setZtInfo(JSONObject.toJSONString(ztBaseResponse));
//                }
//                customerUserMapper.insert(customerUser);
//            }
//        }
//    }
    public static void saveCustomerUser(ZbomZhongTaiService zbomZhongTaiService, CustomerUserMapper customerUserMapper, Users users, Member member) {
        if (Objects.nonNull(users) && Objects.nonNull(member.getId())) {
            CustomerUser customerUser = customerUserMapper.selectOne(new QueryWrapper<CustomerUser>().lambda()
                    .eq(CustomerUser::getIsdeleted, Constants.ZERO)
                    .eq(CustomerUser::getUserId, users.getId())
                    .eq(CustomerUser::getMemberId, member.getId())) <= Constants.ZERO) {
                    .eq(CustomerUser::getMemberId, member.getId())
                    .orderByDesc(CustomerUser::getCreateDate)
                    .last(" limit 1")
            );
            if (Objects.isNull(customerUser)) {
                customerUser = new CustomerUser();
                customerUser.setIsdeleted(Constants.ZERO);
                customerUser.setUserId(users.getId());
@@ -375,46 +437,71 @@
                customerUser.setUsername(users.getIamUsername());
                customerUser.setAddr(users.getShopAddress());
            }
            //等待调起中台接口
            ZTCustomerBindingUsersRequest ztCustomerBindingUsersRequest = new ZTCustomerBindingUsersRequest();
            ztCustomerBindingUsersRequest.setName(member.getName());
            ztCustomerBindingUsersRequest.setNickName(member.getNickname());
            ztCustomerBindingUsersRequest.setPhone(member.getPhone());
            ztCustomerBindingUsersRequest.setAvatarUrl(member.getImgurl());
            ztCustomerBindingUsersRequest.setUptown(member.getDistrict());
            ztCustomerBindingUsersRequest.setFullAddress(member.getAddress());
            if(Objects.nonNull(member.getHousearea())){
                ztCustomerBindingUsersRequest.setHouseArea(member.getHousearea().toString());
            }
            ztCustomerBindingUsersRequest.setOpenId(member.getOpenid());
            ztCustomerBindingUsersRequest.setToken(member.getToken());
            ztCustomerBindingUsersRequest.setUserType(ZTConstants.CUSTOMER);
            ztCustomerBindingUsersRequest.setSourceCustomerId(member.getId().toString());
            ztCustomerBindingUsersRequest.setDaoGouUserId(users.getIamId());
            ztCustomerBindingUsersRequest.setDaoGouAccount(users.getIamUsername());
            ztCustomerBindingUsersRequest.setPlatSource("2");
            ZTBaseResponse ztBaseResponse = zbomZhongTaiService.customerBinDingUsers(ztCustomerBindingUsersRequest);
            if(Objects.nonNull(customerUser)){
                if(Objects.nonNull(ztBaseResponse)){
                    if(ztBaseResponse.getSuccess()){
            //未绑定过
            if (Objects.isNull(customerUser.getId())) {
                ZTBaseResponse ztBaseResponse = MemberServiceImpl.syncZtCustomerUser(zbomZhongTaiService,member, users);
                if (Objects.nonNull(ztBaseResponse)) {
                    if (ztBaseResponse.getSuccess()) {
                        customerUser.setZtStatus(1);
                        customerUser.setZtDate(new Date());
                    }else{
                    } else {
                        customerUser.setZtStatus(2);
                        customerUser.setZtDate(new Date());
                        customerUser.setZtInfo(JSONObject.toJSONString(ztBaseResponse));
                    }
                } else{
                } else {
                    customerUser.setZtStatus(2);
                    customerUser.setZtDate(new Date());
                    customerUser.setZtInfo(JSONObject.toJSONString(ztBaseResponse));
                }
                customerUserMapper.insert(customerUser);
            } else {
                if (!Constants.equalsInteger(customerUser.getZtStatus(),Constants.ONE)) {
                    ZTBaseResponse ztBaseResponse = MemberServiceImpl.syncZtCustomerUser(zbomZhongTaiService,member, users);
                    if (Objects.nonNull(ztBaseResponse)) {
                        if (ztBaseResponse.getSuccess()) {
                            customerUser.setZtStatus(1);
                            customerUser.setZtDate(new Date());
                        } else {
                            customerUser.setZtStatus(2);
                            customerUser.setZtDate(new Date());
                            customerUser.setZtInfo(JSONObject.toJSONString(ztBaseResponse));
                        }
                    } else {
                        customerUser.setZtStatus(2);
                        customerUser.setZtDate(new Date());
                        customerUser.setZtInfo(JSONObject.toJSONString(ztBaseResponse));
                    }
                    customerUserMapper.updateById(customerUser);
                }
            }
        }
    }
    public  static ZTBaseResponse syncZtCustomerUser(ZbomZhongTaiService zbomZhongTaiService,Member member,Users users){
        //等待调起中台接口
        ZTCustomerBindingUsersRequest ztCustomerBindingUsersRequest = new ZTCustomerBindingUsersRequest();
        ztCustomerBindingUsersRequest.setName(member.getName());
        ztCustomerBindingUsersRequest.setNickName(member.getNickname());
        ztCustomerBindingUsersRequest.setPhone(member.getPhone());
        ztCustomerBindingUsersRequest.setAvatarUrl(member.getImgurl());
        ztCustomerBindingUsersRequest.setUptown(member.getDistrict());
        ztCustomerBindingUsersRequest.setFullAddress(member.getAddress());
        if(Objects.nonNull(member.getHousearea())){
            ztCustomerBindingUsersRequest.setHouseArea(member.getHousearea().toString());
        }
        ztCustomerBindingUsersRequest.setOpenId(member.getOpenid());
        ztCustomerBindingUsersRequest.setToken(member.getToken());
        ztCustomerBindingUsersRequest.setUserType(ZTConstants.CUSTOMER);
        ztCustomerBindingUsersRequest.setSourceCustomerId(member.getId().toString());
        ztCustomerBindingUsersRequest.setDaoGouUserId(users.getIamId());
        ztCustomerBindingUsersRequest.setDaoGouAccount(users.getIamUsername());
        ztCustomerBindingUsersRequest.setPlatSource("2");
        ZTBaseResponse ztBaseResponse = zbomZhongTaiService.customerBinDingUsers(ztCustomerBindingUsersRequest);
        return ztBaseResponse;
    }
    @Override
    public String getWxMiniPhone(WxPhoneRequest wxPhoneRequest){
        try {
server/service/src/main/java/com/doumee/service/business/impl/UsersServiceImpl.java
@@ -445,6 +445,13 @@
            accountResponse.setPhone( Constants.desensitizationPhone(phone));
            if(Objects.isNull(users)){
                return accountResponse;
            }else{
                if(StringUtils.isNotBlank(wxPhoneRequest.getOpenid())){
                    usersMapper.update(null,new UpdateWrapper<Users>().lambda().set(Users::getOpenid,null)
                            .eq(Users::getOpenid,wxPhoneRequest.getOpenid()));
                    users.setOpenid(wxPhoneRequest.getOpenid());
                    usersMapper.updateById(users);
                }
            }
            accountResponse.setUsers(users);
            String token = JwtTokenUtil.generateTokenForZb(users.getId(),ZTConstants.BUSINESS,JSONObject.toJSON(users).toString(),redisTemplate);
wechat_jiaxuan/components/areaSel/areaSel.js
@@ -1,3 +1,4 @@
import { 
  getArea
} from '../../api/index'
@@ -15,10 +16,12 @@
          // observer监听value的变化,如果有值则调用setLabel方法设置选择器的label
          observer(selectedValues) {
              if (selectedValues && selectedValues.length) {
                  this.resetValus(selectedValues)
                  console.log("--------------------",this.data.value)
                  this.setLabel();
              }
          }
      }
      }
  },
  data: {
      // label为选择器的显示值
@@ -32,15 +35,16 @@
  },
  // attached生命周期函数,在组件实例进入页面节点树时执行
  attached() {
    this.initData()
    this.initData()
  },
  methods: {
    // wx.setStorageSync('addressList', tl)    
    initData(){
      let list = wx.getStorageSync('addressList')
    let list = wx.getStorageSync('addressList')
    if(list && list.length){ 
      this.setData({addressList: list})
      this.resetValus(list)
      this.setLabel();
      if (!this.data.value.length) {
          this.initRange();
@@ -88,13 +92,58 @@
        }
        wx.setStorageSync('addressList', tl)
        this.setData({addressList: tl})
        this.resetValus()
        this.setLabel();
        if (!this.data.value.length) {
            this.initRange();
        }
        console.log(this.data.addressList)
        }
      })
    }
    },
    resetValus(selectedValues){
      selectedValues = selectedValues || this.data.value
      let temVal = []
      let tlable =''
      if (selectedValues.length == 3) {
         var v1  = selectedValues[0]
         var v2  = selectedValues[1]
         var v3= selectedValues[2]
        var t1,t2,t3;
        this.data.addressList.forEach(item =>{
          if(v1 && v1.length ==6
            &&v2 && v2.length ==6
            &&v3  && v3.length ==6){
              if(item.value.indexOf(v1) == 0){
                    t1 = item.value
                    if(item.children){
                      item.children.forEach(item2 =>{
                        if(item2.value.indexOf(v2) == 0){
                            if(item2.children){
                              item2.children.forEach(item3 =>{
                                if(item3.value.indexOf(v3) == 0){
                                    tlable = item.label +"-"+item2.label+'-'+item3.label
                                    t1 = item.value
                                    t2 = item2.value
                                    t3 = item3.value
                                    temVal = [t1,t2,t3]
                                    // this.value = temVal
                                    // this.data.label=tlable
                                    this.triggerEvent("change", {
                                        value: temVal,
                                        label:tlable
                                    });
                                    this.setData({value:temVal,label:tlable})
                                    console.log("--------------------",this.data.value)
                                }
                              })
                            }
                        }
                      })
                    }
              }
            }
        })
      }
    },
      // getAddressItem方法用于将地址信息转换为选择器可用的格式
      getAddressItem(data) {
@@ -108,7 +157,7 @@
          return list.map((v) => this.getAddressItem(v));
      },
      // getAddressByCode方法用于根据value值获取地址信息及其在数组中的下标
      getAddressByCode(list = [], value) {
      getAddressByCode(list = [], value) {
          let index = list.findIndex(item => item.value === value);
          return [index, list[index] || {}];
      },
@@ -144,9 +193,7 @@
          });
          this.setData({
            label:label
          });
          console.log("label1", label)
          console.log("label",this.data.label)
          });
      },
      // columnChange方法为选择器的columnchange事件处理函数,用于设置range和pickerValue
      columnChange(e) {
@@ -182,7 +229,7 @@
      setLabel() {
          let addressList = this.data.addressList;
          if (addressList && addressList.length) {
              const [v1, v2, v3] = this.data.value;
              const [v1, v2, v3] = this.data.value;
              const [s1, {
                  label: t1,
                  children: l1
@@ -195,6 +242,7 @@
                  label: t3
              }] = this.getAddressByCode(l2, v3);
              const label = [t1, t2, t3].filter(v => v).join('-');
              const pickerValue = [s1, s2, s3];
              const range = this.openChildren(addressList, [s1, s2, s3]);
              if (label.length) {
@@ -204,9 +252,7 @@
                      pickerValue
                  });
              }
          } else {
          }
          }
      },
      // initRange方法用于初始化range
      initRange() {
wechat_jiaxuan/components/areaSel/areaSel.wxml
@@ -1,8 +1,8 @@
<picker mode="multiSelector" model:value="{{pickerValue}}" range-key="label" range="{{range}}" bindchange="onChange"
    bindcolumnchange="columnChange">
    <view>
    <view style="width:400rpx;padding-left: 30rpx;white-space: nowrap;text-overflow: ellipsis; overflow:hidden;">
        <!-- 如果已经选择了选项,则显示选项的label属性,否则显示placeholder属性。 -->
        <text wx:if="{{label}}"> {{ label }} </text>
        <text  wx:if="{{label}}"> {{ label }} </text>
        <text style="color: #999" wx:else> {{ placeholder }}</text>
    </view>
</picker>
wechat_jiaxuan/pages/design/design.js
@@ -13,11 +13,11 @@
   */
  data: {
    name: '',
    phone: '',
    phone: '',
    showAreaList: false,
    areaList: [],
    addr: {},
    addrValues:[],
    fieldNames: {
      text: 'name',
      value: 'id',
@@ -44,8 +44,10 @@
          areaCode: res.result.ad_info.adcode + '00',
          areaName: res.result.ad_info.district,
        }
        this.setData({ addr })
        this.setData({ addr,addrValues:
          [res.result.ad_info.adcode.slice(0,2) + '0000',
          res.result.ad_info.adcode.slice(0,4) + '00',
          res.result.ad_info.adcode]  })
      }
    })
    const member =  wx.getStorageSync('member')
@@ -155,37 +157,8 @@
    // getArea({
    //   "level": "",
    //   "pid": ""
    // }).then(res => {
    //   var tl = []
    //   if(res && res.data && res.data.length){
    //       res.data.forEach(element => {
    //           let tc = []
    //           if(element.children &&element.children.length){
    //             element.children.forEach(c => {
    //               let ta = []
    //               if(c.children &&c.children.length){
    //                 c.children.forEach(a => {
    //                   ta.push({
    //                     name: a.name,
    //                     id: a.id
    //                   })
    //                 })
    //               }
    //               tc.push({
    //                 name: c.name,
    //                 id: c.id,
    //                 children:ta,
    //               })
    //             })
    //           }
    //           tl.push({
    //             name: element.name,
    //             id: element.id,
    //             children: tc,
    //           })
    //       });
    //   }
    //   this.setData({areaList: tl})
    // }).then(res => {
    //   this.setData({areaList: res.data})
    //   console.log(this.data.areaList)
    // })
    getDictData({
wechat_jiaxuan/pages/design/design.wxml
@@ -18,7 +18,7 @@
          {{ addr.provinceName }}{{ addr.cityName }}{{ addr.areaName }}
        </view>
      </picker> -->
      <areaSel class="city_picler" bindchange="regionChange" placeholder="请选择所在区域" value="{{['210000000','210500000','210501000']}}"  />
      <areaSel  bindchange="regionChange" placeholder="请选择所在区域" value="{{ addrValues }}"  />
      <image class="arrow_right" src="../../static/icon/arrow_right.png" mode="widthFix"></image>
    </view> 
    <view class="btn" bindtap="onSubmit">立即报名</view>
wechat_jiaxuan/pages/index/index.js
@@ -83,6 +83,7 @@
    })
  },
  onLoad(options) {
    console.log(options)
    this.initDictData()
    this.initData()
  },