栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

孙大发的花

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

孙大发的花

package cn.changeHappy.exchange.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;


@Mapper
public interface WsPoolMapper {
    int inserWxMessage(@Param("senderId") String senderId, @Param("receiverId") String receiverId, @Param("message") String message,@Param("goodsId") String goodsId);

}

package cn.changeHappy.exchange.servcie.impl;

import cn.changeHappy.exchange.mapper.ExchangeUserGoodsMapper;
import cn.changeHappy.exchange.mapper.WsMassgMapper;
import cn.changeHappy.exchange.servcie.WsMassgService;
import cn.changeHappy.exchange.utils.R;
import cn.changeHappy.exchange.utils.TimeUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.text.ParseException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


@Service
public class WsMassgServiceImpl implements WsMassgService {

    @Autowired
    WsMassgMapper wsMassgMapper;

    @Autowired
    ExchangeUserGoodsMapper exchangeUserGoodsMapper;

    @Override
    public Map findMessageInfo(String SenderId) throws ParseException {
        List sendList = new ArrayList<>();
        Map returnMap = new HashMap<>();
        List> userList = new ArrayList<>();

        //查询用户发送或接收的消息
        
        List> messAgeList = wsMassgMapper.findMessageInfo(SenderId);
        if (null != messAgeList && 0 != messAgeList.size()) {
            //查询到所有用户 发送或者接收
            for (Map messAgeMap : messAgeList) {
                //判断是否当前用户id 和发送id是否相等 不相等再进行存储
                if (!SenderId.equals(String.valueOf(messAgeMap.get("sendUserId")))) {
                    sendList.add(String.valueOf(messAgeMap.get("sendUserId")));
                } else if (!SenderId.equals(String.valueOf(messAgeMap.get("assignUserId")))) {
                    sendList.add(String.valueOf(messAgeMap.get("assignUserId")));
                }
            }

            //根据发送id或者接收id查询最后聊天记录 按照时间排序
            List> messList = wsMassgMapper.findMessByUserId(SenderId, sendList);
            //根据id查询聊天页面的用户
            userList = wsMassgMapper.findUserInfoByUserId(SenderId, sendList);
            List> list = new ArrayList<>();
            for (Map userMap : userList) {
                list = new ArrayList<>();
                for (Map messMap : messList) {
                    if (userMap.get("userId").equals(messMap.get("sendUserId")) || userMap.get("userId").equals(messMap.get("assignUserId"))) {
                        list.add(messMap);
                        userMap.put("messList", list);
                        if(messMap.containsKey("goodsId")){
                            userMap.put("goodsId",messMap.get("goodsId"));
                        }
                    }
                }
            }

            for (int userIdx = 0; userIdx < userList.size(); userIdx++) {
                List> messoneList = new ArrayList();
                Map map = userList.get(userIdx);
                if (map.containsKey("messList")) {
                    List> messListIndx = (List>) map.get("messList");
                    Map map1 = messListIndx.get(messListIndx.size() - 1);
                    String creadeTime = String.valueOf(map1.get("creadeTime"));
                    map1.put("creadeTime", TimeUtil.QQFormatTime(creadeTime));
                    messOneList.add(map1);
                    map.put("messList", messOneList);
                }
                if(map.containsKey("goodsId")){
                    List> fileList = exchangeUserGoodsMapper.selectFileByGoodsId(String.valueOf(map.get("goodsId")));
                    if (fileList.size() > 0 && null != fileList) {
                        map.put("fileList", fileList);
                    } else {
                        map.put("fileList", new ArrayList<>());
                    }
                }
            }
        }
        
        int unreadAllCat = 0;
        for (Map unreadMap : userList) {
            //获取聊天列表list   拿到发送人id  接收人为当前用户
            String getsnedUserId = String.valueOf(unreadMap.get("userId"));
            int unreadCount = this.selectUnreadCat(getsnedUserId, SenderId);
            unreadMap.put("unreadCount", unreadCount);
            unreadAllCat += unreadCount;
        }
        returnMap.put("data", userList);
        returnMap.put("unreadAllCat", unreadAllCat);
        returnMap.put("code", R.SUCCESS);
        returnMap.put("msg", "");
        return returnMap;
    }

    @Override
    public List> findMessageByUserId(String senderId, String assignUserId) throws ParseException {
        List> list = wsMassgMapper.findMessageByUserId(senderId, assignUserId);
        if (null != list && list.size() > 0) {
            Map map1 = list.get(0);
            Map sendUser = wsMassgMapper.findUserByUserId(String.valueOf(map1.get("sendUserId")));
            map1.put("sendUser", sendUser);
            Map assignUser = wsMassgMapper.findUserByUserId(String.valueOf(map1.get("assignUserId")));
            map1.put("assignUser", assignUser);
            for (Map map : list) {
                String creadeTime = String.valueOf(map.get("creadeTime"));
                map.put("creadeTime", TimeUtil.QQFormatTime(creadeTime));
                if (senderId.equals(map.get("sendUserId"))) {
                    map.put("status", true);

                } else {
                    map.put("status", false);
                }
            }
        }
        return list;
    }

    @Override
    public int selectUnreadCat(String getsnedUserId, String senderId) {
        return this.wsMassgMapper.selectUnreadCat(getsnedUserId, senderId);
    }

    @Override
    public void updateMsgStatus(Map map) {
        this.wsMassgMapper.updateMsgStatus(map);
    }

    @Override
    public int selectCountByUserIdStatus(String userId) {
        return wsMassgMapper.selectCountByUserIdStatus(userId);
    }

}

package cn.changeHappy.exchange.servcie.impl;

import cn.changeHappy.exchange.mapper.WsPoolMapper;
import cn.changeHappy.exchange.servcie.WsPoolService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;


@Service
public class WsPoolServiceImpl implements WsPoolService {

    @Autowired
    WsPoolMapper wsPoolMapper;

    @Override
    @Transactional
    public  int inserWxMessage(String senderId, String receiverId, String message,String goodsId) throws Exception {
        int count = wsPoolMapper.inserWxMessage(senderId, receiverId, message,goodsId);
        if (count != 1) {
            throw new Exception("消息发送失败!");
        }
        return count;
    }



}






  
    INSERT INTO changeHappy_goods (
        id,
        goods_id,
        goods_name,
        user_id,
        goods_price,
        goods_type,
        goods_brief,
        goods_status,
        stand_up_and_down,
        crder_time,
        sftj,
        goods_postage,
        order_type_id,
        city,
        district,
        user_site_id,
        express_weight
    )
    VALUES
        (#{goodsId},#{goodsId},#{goodsName,jdbcType=VARCHAR},#{userId,jdbcType=VARCHAR},#{goodsPrice,jdbcType=VARCHAR},
    #{goodsType,jdbcType=VARCHAR},#{goodsBrief,jdbcType=VARCHAR},'1','1',now(),'1',
    #{goodsPostage,jdbcType=VARCHAR},#{orderTypeId},#{city},#{district},#{userSiteId}),#{expressWeight}
  
  
    update changeHappy_goods
    set goods_name=#{goodsName,jdbcType=VARCHAR},user_id=#{userId},
    goods_price=#{goodsPrice,jdbcType=VARCHAR},goods_type=#{goodsType,jdbcType=INTEGER},
    crder_time=now(),goods_status=#{goodsStatus},
    goods_brief=#{goodsBrief,jdbcType=VARCHAR},state_id=#{stateId},city_id=#{city_id},
    goods_postage=#{goodsPostage,jdbcType=VARCHAR},order_type_id=#{orderTypeId}
    where id=#{goodsId}
    
  
    UPDATE changeHappy_goods
    SET goods_name = #{goodsName,jdbcType=VARCHAR},
    user_id = #{userId},
    goods_price = #{goodsPrice,jdbcType=VARCHAR},
    goods_type=#{goodsType,jdbcType=INTEGER},
    crder_time = #{crderTime},
    goods_status=#{goodsStatus},
    goods_brief = #{goodsBrief,jdbcType=VARCHAR},
    city=#{city},
    district=#{district},
    goods_postage = #{goodsPostage,jdbcType=VARCHAR},
    order_type_id=#{orderTypeId},
    user_site_id=#{userSiteId},
    goods_original_price=#{goodsOriginalPrice},
    express_weight=#{expressWeight}
    WHERe
	id = #{goodsId}
  
  
    update changeHappy_goods
    set goods_status=#{goodsStatus,jdbcType=VARCHAR}
    where id=#{goodsId}
    
  
    update changeHappy_goods
    set goods_status=#{goodsStatus,jdbcType=VARCHAR},
    stand_up_and_down =#{standUpAndDown,jdbcType=VARCHAR}

    where id=#{goodsId}
    

  
    select a.id goodsId,a.goods_name goodsName,a.user_id userId,a.goods_brief goodsBrief,
    b.user_name userName,b.userImg userImg,a.goods_price goodsPrice,
    a.order_type_id orderTypeId,
    a.page_view pageView,
    a.crder_time crderTime,
    a.city cityName,
    a.district districtName,
    a.goods_postage goodsPostage,
    a.goods_original_price goodsOriginalPrice,
    a.goods_type goodsType,
    a.user_site_id userSiteId,
    a.order_type_id orderTypeId,
    a.express_weight expressWeight

    from changeHappy_goods a
    left join changehappy_user b on a.user_id = b.user_id
    left join changehappy_file f on a.goods_id = f.goods_id
    where a.id=#{goodsId}
    
  
    insert into changehappy_file(goods_id,file_url,file_unique)
    values
    (#{goodsId},#{url},#{fileUnique})
    
  
    select count(*) from changehappy_collect_goods where user_id =#{userId} and goods_id = #{goodsId}
    
  
    update changehappy_goods set page_view=#{pageView} where id =#{goodsId}
    
  
    insert into changehappy_goods(id) values (#{goodsId})
    
  
    select count(*) from changehappy_attention where user_id =#{userId} and attention_id=#{attentionId} and status ='1'
    
  
    select DISTINCT send_user_id sendUserId,assign_user_id assignUserId,goodsId from changehappy_information
    where send_user_id = #{senderId,jdbcType=VARCHAR}
     or assign_user_id =#{senderId,jdbcType=VARCHAR}
  
  
    select send_user_id sendUserId,assign_user_id assignUserId,content_txt contentTxt,creade_time creadeTime, goodsId
    from changehappy_information
    where (send_user_id = #{senderId,jdbcType=VARCHAR} or assign_user_id =#{senderId,jdbcType=VARCHAR})
      or
    assign_user_id in
    
      #{assignUserId}
    
  
  
     select happyuser.user_id userId,
    happyuser.sfzh,
    happyuser.user_status userStatus,
    happyuser.pohone,
    happyuser.user_name userName,
    happyuser.sex,
    happyuser.userImg
    from changehappy_user happyuser where  happyuser.user_id =#{sendUserId}
    
    
      select count(*)
      from changehappy_information
      where assign_user_id =#{userId} and status='2'
    






  insert into changehappy_information(send_user_id,assign_user_id,content_txt,goodsId,creade_time,status)
  values
  (
  #{senderId,jdbcType=VARCHAR},
  #{receiverId,jdbcType=VARCHAR},
  #{message,jdbcType=VARCHAR},
  #{goodsId,jdbcType=VARCHAR},
  now(),
  '2'
  )


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/760033.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号