shop--14.升级--添加本地账号进行登录

Dao层

package com.shop.dao;

import com.shop.bean.LocalUser;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.Date;

/**
 * Created by Skye on 2018/5/13.
 */
@Repository
public interface LocalUserDao {


    /**
     * 根据传入的用户名和密码查询对应的信息,登录时使用
     * @param username
     * @param password
     * @return
     */
    LocalUser queryLocalUserByUserNameAndPWd(@Param( "username" ) String username,
                                             @Param( "password" ) String password);


    /**
     * 通过userId查询用户信息
     * @param userId
     * @return
     */
    LocalUser queryLocalUserByUserId(@Param( "userId" ) long userId);


    /**
     * 添加本地账号
     * @param localUser
     * @return
     */
    int insertLocalUser(LocalUser localUser);


    /**
     * 通过userId,username,password确定要修改密码的用户,然后进行密码的修改
     * @param userId
     * @param username
     * @param password
     * @param newPassword
     * @param lastEditTime
     * @return
     */
    int updateLocalUser(@Param( "userId" ) Long userId,
                        @Param( "username" ) String username,
                        @Param( "password" ) String password,
                        @Param( "newPassword" ) String newPassword,
                        @Param( "lastEditTime" ) Date lastEditTime);
}

  

Dao.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.shop.dao.LocalUserDao">
    <resultMap id="localUserResultMap" type="com.shop.bean.LocalUser">
        <id column="local_user_id" property="localUserId"/>
        <result column="user_name" property="userName"/>
        <result column="password" property="password"/>
        <result column="create_time" property="createTime"/>
        <result column="last_edit_time" property="lastEditTime"/>
        <association column="user_id" property="personInfo"
                     javaType="com.shop.bean.PersonInfo">
            <id column="user_id" property="userId"/>
            <result column="user_name" property="userName"/>
            <result column="gender" property="gender"/>
            <result column="email" property="email"/>
            <result column="photo" property="photo"/>
            <result column="user_type" property="userType"/>
            <result column="create_time" property="createTime"/>
            <result column="last_edit_time" property="lastEditTime"/>
            <result column="status" property="status"/>
        </association>
    </resultMap>
    <!--LocalUser queryLocalUserByUserNameAndPWd(@Param( "username" ) String username,
                                                 @Param( "password" ) String password);-->
    <select id="queryLocalUserByUserNameAndPWd" resultType="localUserResultMap">
        SELECT
        l.local_user_id,
        l.user_name,
        l.password,
        l.create_time,
        l.last_edit_time,
        p.user_id,
        p.user_name,
        p.gender,
        p.email,
        p.photo,
        p.user_type,
        p.create_time,
        p.last_edit_time,
        p.status
        FROM local_user l
        LEFT JOIN person_info
        WHERE
        l.user_name=#{username}
        AND
        l.password=#{password}
    </select>



    <!--LocalUser queryLocalUserByUserId(long userId);-->
    <select id="queryLocalUserByUserId" resultType="localUserResultMap">
        SELECT
        l.local_user_id,
        l.user_name,
        l.password,
        l.create_time,
        l.last_edit_time,
        p.user_id,
        p.user_name,
        p.gender,
        p.email,
        p.photo,
        p.user_type,
        p.create_time,
        p.last_edit_time,
        p.status
        FROM local_user l
        LEFT JOIN person_info
        WHERE
        l.user_id=#{userId}
    </select>


    <!--int insertLocalUser(LocalUser localUser);-->
    <insert id="insertLocalUser" parameterType="com.shop.bean.LocalUser"
            useGeneratedKeys="true" keyColumn="local_user_id" keyProperty="localUserId">
        INSERT INTO local_user
        local_user(user_name, password, user_id, create_time, last_edit_time)
        VALUES(#{userName}, #{password}, #{personInfo.userId}, #{createTime}, #{lastEditTime})
    </insert>

    <!--int updateLocalUser(@Param( "userId" ) Long userId,
                        @Param( "username" ) String username,
                        @Param( "password" ) String password,
                        @Param( "newPassword" ) String newPassword,
                        @Param( "lastEditTime" ) Date lastEditTime);-->
    <update id="updateLocalUser">
        UPDATE local_user
        <set>
            <if test="newPassword != null">password=#{newPassword},</if>
            <if test="lastEditTime !=  null">last_edit_time=#{lastEditTime}</if>
        </set>
        WHERE
        user_id=#{userId}
        AND
        user_name={username}
        AND
        password=#{password}

    </update>
</mapper>

  

Service层开发

猜你喜欢

转载自www.cnblogs.com/SkyeAngel/p/9033716.html