diff --git a/src/main/java/com/yutou/tools/home/nas/MusicFavoritesController.java b/src/main/java/com/yutou/tools/home/nas/MusicFavoritesController.java index a6a67e4..27aa331 100644 --- a/src/main/java/com/yutou/tools/home/nas/MusicFavoritesController.java +++ b/src/main/java/com/yutou/tools/home/nas/MusicFavoritesController.java @@ -1,13 +1,68 @@ package com.yutou.tools.home.nas; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.yutou.tools.mybatis.dao.MusicFavoritesDao; +import com.yutou.tools.mybatis.dao.MusicFavoritesDirDao; +import com.yutou.tools.mybatis.model.MusicFavorites; +import com.yutou.tools.mybatis.model.MusicFavoritesDir; +import com.yutou.tools.mybatis.model.MusicFavoritesDirExample; +import com.yutou.tools.mybatis.model.MusicFavoritesExample; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; + +import javax.annotation.Resource; /** * 收藏夹相关 */ @Controller -@RequestMapping("/nas/music/") +@RequestMapping("/nas/music/favorite/") public class MusicFavoritesController{ + @Resource + MusicFavoritesDao favoritesDao; + @Resource + MusicFavoritesDirDao favoritesDirDao; + @RequestMapping("dir/add.do") + @ResponseBody + public String addFavoriteDir(String favorite){ + JSONObject json=new JSONObject(); + MusicFavoritesDirExample example=new MusicFavoritesDirExample(); + example.createCriteria().andTitleEqualTo(favorite); + if(favoritesDirDao.selectByExample(example).isEmpty()){ + json.put("code",-1); + json.put("msg","已有该收藏夹"); + }else{ + MusicFavoritesDir favoritesDir=new MusicFavoritesDir(); + favoritesDir.setTitle(favorite); + int ret=favoritesDirDao.insert(favoritesDir); + json.put("code",ret==0?-1:0); + json.put("msg",ret==0?"添加失败":"添加成功"); + } + return json.toJSONString(); + } + @RequestMapping("dir/list.do") + @ResponseBody + public String getAllFavoriteDir(){ + JSONObject json=new JSONObject(); + json.put("code",0); + json.put("data", JSONArray.toJSON(favoritesDirDao.selectByExample(new MusicFavoritesDirExample()))); + return json.toJSONString(); + } + public String renameFavoriteDir(String id,String title){ + JSONObject json=new JSONObject(); + MusicFavoritesDir favoritesDir=favoritesDirDao.selectByPrimaryKey(Integer.parseInt(id)); + if(favoritesDir==null){ + json.put("code",-1); + json.put("msg","没有该收藏夹"); + }else{ + favoritesDir.setTitle(title); + favoritesDirDao.updateByPrimaryKey(favoritesDir); + json.put("code",0); + json.put("msg","更新成功"); + } + return json.toJSONString(); + } } diff --git a/src/main/java/com/yutou/tools/mybatis/dao/MusicFavoritesDirDao.java b/src/main/java/com/yutou/tools/mybatis/dao/MusicFavoritesDirDao.java new file mode 100644 index 0000000..373ca41 --- /dev/null +++ b/src/main/java/com/yutou/tools/mybatis/dao/MusicFavoritesDirDao.java @@ -0,0 +1,32 @@ +package com.yutou.tools.mybatis.dao; + +import com.yutou.tools.mybatis.model.MusicFavoritesDir; +import com.yutou.tools.mybatis.model.MusicFavoritesDirExample; +import java.util.List; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +@Mapper +public interface MusicFavoritesDirDao { + long countByExample(MusicFavoritesDirExample example); + + int deleteByExample(MusicFavoritesDirExample example); + + int deleteByPrimaryKey(Integer id); + + int insert(MusicFavoritesDir record); + + int insertSelective(MusicFavoritesDir record); + + List selectByExample(MusicFavoritesDirExample example); + + MusicFavoritesDir selectByPrimaryKey(Integer id); + + int updateByExampleSelective(@Param("record") MusicFavoritesDir record, @Param("example") MusicFavoritesDirExample example); + + int updateByExample(@Param("record") MusicFavoritesDir record, @Param("example") MusicFavoritesDirExample example); + + int updateByPrimaryKeySelective(MusicFavoritesDir record); + + int updateByPrimaryKey(MusicFavoritesDir record); +} \ No newline at end of file diff --git a/src/main/java/com/yutou/tools/mybatis/model/MusicFavorites.java b/src/main/java/com/yutou/tools/mybatis/model/MusicFavorites.java index 2b2ee25..0c1272a 100644 --- a/src/main/java/com/yutou/tools/mybatis/model/MusicFavorites.java +++ b/src/main/java/com/yutou/tools/mybatis/model/MusicFavorites.java @@ -1,6 +1,7 @@ package com.yutou.tools.mybatis.model; import java.io.Serializable; +import java.util.Date; import lombok.Data; /** @@ -11,9 +12,11 @@ import lombok.Data; public class MusicFavorites implements Serializable { private Integer id; - private String title; + private Integer favoriteid; private String musisMd5; + private Date subTime; + private static final long serialVersionUID = 1L; } \ No newline at end of file diff --git a/src/main/java/com/yutou/tools/mybatis/model/MusicFavoritesDir.java b/src/main/java/com/yutou/tools/mybatis/model/MusicFavoritesDir.java new file mode 100644 index 0000000..b7992aa --- /dev/null +++ b/src/main/java/com/yutou/tools/mybatis/model/MusicFavoritesDir.java @@ -0,0 +1,20 @@ +package com.yutou.tools.mybatis.model; + +import java.io.Serializable; +import lombok.Data; + +/** + * music_favorites_dir + * @author + */ +@Data +public class MusicFavoritesDir implements Serializable { + private Integer id; + + /** + * 收藏夹标题 + */ + private String title; + + private static final long serialVersionUID = 1L; +} \ No newline at end of file diff --git a/src/main/java/com/yutou/tools/mybatis/model/MusicFavoritesDirExample.java b/src/main/java/com/yutou/tools/mybatis/model/MusicFavoritesDirExample.java new file mode 100644 index 0000000..89e3151 --- /dev/null +++ b/src/main/java/com/yutou/tools/mybatis/model/MusicFavoritesDirExample.java @@ -0,0 +1,331 @@ +package com.yutou.tools.mybatis.model; + +import java.util.ArrayList; +import java.util.List; + +public class MusicFavoritesDirExample { + protected String orderByClause; + + protected boolean distinct; + + protected List oredCriteria; + + public MusicFavoritesDirExample() { + oredCriteria = new ArrayList<>(); + } + + public void setOrderByClause(String orderByClause) { + this.orderByClause = orderByClause; + } + + public String getOrderByClause() { + return orderByClause; + } + + public void setDistinct(boolean distinct) { + this.distinct = distinct; + } + + public boolean isDistinct() { + return distinct; + } + + public List getOredCriteria() { + return oredCriteria; + } + + public void or(Criteria criteria) { + oredCriteria.add(criteria); + } + + public Criteria or() { + Criteria criteria = createCriteriaInternal(); + oredCriteria.add(criteria); + return criteria; + } + + public Criteria createCriteria() { + Criteria criteria = createCriteriaInternal(); + if (oredCriteria.size() == 0) { + oredCriteria.add(criteria); + } + return criteria; + } + + protected Criteria createCriteriaInternal() { + Criteria criteria = new Criteria(); + return criteria; + } + + public void clear() { + oredCriteria.clear(); + orderByClause = null; + distinct = false; + } + + protected abstract static class GeneratedCriteria { + protected List criteria; + + protected GeneratedCriteria() { + super(); + criteria = new ArrayList<>(); + } + + public boolean isValid() { + return criteria.size() > 0; + } + + public List getAllCriteria() { + return criteria; + } + + public List getCriteria() { + return criteria; + } + + protected void addCriterion(String condition) { + if (condition == null) { + throw new RuntimeException("Value for condition cannot be null"); + } + criteria.add(new Criterion(condition)); + } + + protected void addCriterion(String condition, Object value, String property) { + if (value == null) { + throw new RuntimeException("Value for " + property + " cannot be null"); + } + criteria.add(new Criterion(condition, value)); + } + + protected void addCriterion(String condition, Object value1, Object value2, String property) { + if (value1 == null || value2 == null) { + throw new RuntimeException("Between values for " + property + " cannot be null"); + } + criteria.add(new Criterion(condition, value1, value2)); + } + + public Criteria andIdIsNull() { + addCriterion("id is null"); + return (Criteria) this; + } + + public Criteria andIdIsNotNull() { + addCriterion("id is not null"); + return (Criteria) this; + } + + public Criteria andIdEqualTo(Integer value) { + addCriterion("id =", value, "id"); + return (Criteria) this; + } + + public Criteria andIdNotEqualTo(Integer value) { + addCriterion("id <>", value, "id"); + return (Criteria) this; + } + + public Criteria andIdGreaterThan(Integer value) { + addCriterion("id >", value, "id"); + return (Criteria) this; + } + + public Criteria andIdGreaterThanOrEqualTo(Integer value) { + addCriterion("id >=", value, "id"); + return (Criteria) this; + } + + public Criteria andIdLessThan(Integer value) { + addCriterion("id <", value, "id"); + return (Criteria) this; + } + + public Criteria andIdLessThanOrEqualTo(Integer value) { + addCriterion("id <=", value, "id"); + return (Criteria) this; + } + + public Criteria andIdIn(List values) { + addCriterion("id in", values, "id"); + return (Criteria) this; + } + + public Criteria andIdNotIn(List values) { + addCriterion("id not in", values, "id"); + return (Criteria) this; + } + + public Criteria andIdBetween(Integer value1, Integer value2) { + addCriterion("id between", value1, value2, "id"); + return (Criteria) this; + } + + public Criteria andIdNotBetween(Integer value1, Integer value2) { + addCriterion("id not between", value1, value2, "id"); + return (Criteria) this; + } + + public Criteria andTitleIsNull() { + addCriterion("title is null"); + return (Criteria) this; + } + + public Criteria andTitleIsNotNull() { + addCriterion("title is not null"); + return (Criteria) this; + } + + public Criteria andTitleEqualTo(String value) { + addCriterion("title =", value, "title"); + return (Criteria) this; + } + + public Criteria andTitleNotEqualTo(String value) { + addCriterion("title <>", value, "title"); + return (Criteria) this; + } + + public Criteria andTitleGreaterThan(String value) { + addCriterion("title >", value, "title"); + return (Criteria) this; + } + + public Criteria andTitleGreaterThanOrEqualTo(String value) { + addCriterion("title >=", value, "title"); + return (Criteria) this; + } + + public Criteria andTitleLessThan(String value) { + addCriterion("title <", value, "title"); + return (Criteria) this; + } + + public Criteria andTitleLessThanOrEqualTo(String value) { + addCriterion("title <=", value, "title"); + return (Criteria) this; + } + + public Criteria andTitleLike(String value) { + addCriterion("title like", value, "title"); + return (Criteria) this; + } + + public Criteria andTitleNotLike(String value) { + addCriterion("title not like", value, "title"); + return (Criteria) this; + } + + public Criteria andTitleIn(List values) { + addCriterion("title in", values, "title"); + return (Criteria) this; + } + + public Criteria andTitleNotIn(List values) { + addCriterion("title not in", values, "title"); + return (Criteria) this; + } + + public Criteria andTitleBetween(String value1, String value2) { + addCriterion("title between", value1, value2, "title"); + return (Criteria) this; + } + + public Criteria andTitleNotBetween(String value1, String value2) { + addCriterion("title not between", value1, value2, "title"); + return (Criteria) this; + } + } + + /** + */ + public static class Criteria extends GeneratedCriteria { + protected Criteria() { + super(); + } + } + + public static class Criterion { + private String condition; + + private Object value; + + private Object secondValue; + + private boolean noValue; + + private boolean singleValue; + + private boolean betweenValue; + + private boolean listValue; + + private String typeHandler; + + public String getCondition() { + return condition; + } + + public Object getValue() { + return value; + } + + public Object getSecondValue() { + return secondValue; + } + + public boolean isNoValue() { + return noValue; + } + + public boolean isSingleValue() { + return singleValue; + } + + public boolean isBetweenValue() { + return betweenValue; + } + + public boolean isListValue() { + return listValue; + } + + public String getTypeHandler() { + return typeHandler; + } + + protected Criterion(String condition) { + super(); + this.condition = condition; + this.typeHandler = null; + this.noValue = true; + } + + protected Criterion(String condition, Object value, String typeHandler) { + super(); + this.condition = condition; + this.value = value; + this.typeHandler = typeHandler; + if (value instanceof List) { + this.listValue = true; + } else { + this.singleValue = true; + } + } + + protected Criterion(String condition, Object value) { + this(condition, value, null); + } + + protected Criterion(String condition, Object value, Object secondValue, String typeHandler) { + super(); + this.condition = condition; + this.value = value; + this.secondValue = secondValue; + this.typeHandler = typeHandler; + this.betweenValue = true; + } + + protected Criterion(String condition, Object value, Object secondValue) { + this(condition, value, secondValue, null); + } + } +} \ No newline at end of file diff --git a/src/main/java/com/yutou/tools/mybatis/model/MusicFavoritesExample.java b/src/main/java/com/yutou/tools/mybatis/model/MusicFavoritesExample.java index 147f668..f5831d6 100644 --- a/src/main/java/com/yutou/tools/mybatis/model/MusicFavoritesExample.java +++ b/src/main/java/com/yutou/tools/mybatis/model/MusicFavoritesExample.java @@ -1,6 +1,7 @@ package com.yutou.tools.mybatis.model; import java.util.ArrayList; +import java.util.Date; import java.util.List; public class MusicFavoritesExample { @@ -164,73 +165,63 @@ public class MusicFavoritesExample { return (Criteria) this; } - public Criteria andTitleIsNull() { - addCriterion("title is null"); + public Criteria andFavoriteidIsNull() { + addCriterion("favoriteId is null"); return (Criteria) this; } - public Criteria andTitleIsNotNull() { - addCriterion("title is not null"); + public Criteria andFavoriteidIsNotNull() { + addCriterion("favoriteId is not null"); return (Criteria) this; } - public Criteria andTitleEqualTo(String value) { - addCriterion("title =", value, "title"); + public Criteria andFavoriteidEqualTo(Integer value) { + addCriterion("favoriteId =", value, "favoriteid"); return (Criteria) this; } - public Criteria andTitleNotEqualTo(String value) { - addCriterion("title <>", value, "title"); + public Criteria andFavoriteidNotEqualTo(Integer value) { + addCriterion("favoriteId <>", value, "favoriteid"); return (Criteria) this; } - public Criteria andTitleGreaterThan(String value) { - addCriterion("title >", value, "title"); + public Criteria andFavoriteidGreaterThan(Integer value) { + addCriterion("favoriteId >", value, "favoriteid"); return (Criteria) this; } - public Criteria andTitleGreaterThanOrEqualTo(String value) { - addCriterion("title >=", value, "title"); + public Criteria andFavoriteidGreaterThanOrEqualTo(Integer value) { + addCriterion("favoriteId >=", value, "favoriteid"); return (Criteria) this; } - public Criteria andTitleLessThan(String value) { - addCriterion("title <", value, "title"); + public Criteria andFavoriteidLessThan(Integer value) { + addCriterion("favoriteId <", value, "favoriteid"); return (Criteria) this; } - public Criteria andTitleLessThanOrEqualTo(String value) { - addCriterion("title <=", value, "title"); + public Criteria andFavoriteidLessThanOrEqualTo(Integer value) { + addCriterion("favoriteId <=", value, "favoriteid"); return (Criteria) this; } - public Criteria andTitleLike(String value) { - addCriterion("title like", value, "title"); + public Criteria andFavoriteidIn(List values) { + addCriterion("favoriteId in", values, "favoriteid"); return (Criteria) this; } - public Criteria andTitleNotLike(String value) { - addCriterion("title not like", value, "title"); + public Criteria andFavoriteidNotIn(List values) { + addCriterion("favoriteId not in", values, "favoriteid"); return (Criteria) this; } - public Criteria andTitleIn(List values) { - addCriterion("title in", values, "title"); + public Criteria andFavoriteidBetween(Integer value1, Integer value2) { + addCriterion("favoriteId between", value1, value2, "favoriteid"); return (Criteria) this; } - public Criteria andTitleNotIn(List values) { - addCriterion("title not in", values, "title"); - return (Criteria) this; - } - - public Criteria andTitleBetween(String value1, String value2) { - addCriterion("title between", value1, value2, "title"); - return (Criteria) this; - } - - public Criteria andTitleNotBetween(String value1, String value2) { - addCriterion("title not between", value1, value2, "title"); + public Criteria andFavoriteidNotBetween(Integer value1, Integer value2) { + addCriterion("favoriteId not between", value1, value2, "favoriteid"); return (Criteria) this; } @@ -303,6 +294,66 @@ public class MusicFavoritesExample { addCriterion("musis_md5 not between", value1, value2, "musisMd5"); return (Criteria) this; } + + public Criteria andSubTimeIsNull() { + addCriterion("sub_time is null"); + return (Criteria) this; + } + + public Criteria andSubTimeIsNotNull() { + addCriterion("sub_time is not null"); + return (Criteria) this; + } + + public Criteria andSubTimeEqualTo(Date value) { + addCriterion("sub_time =", value, "subTime"); + return (Criteria) this; + } + + public Criteria andSubTimeNotEqualTo(Date value) { + addCriterion("sub_time <>", value, "subTime"); + return (Criteria) this; + } + + public Criteria andSubTimeGreaterThan(Date value) { + addCriterion("sub_time >", value, "subTime"); + return (Criteria) this; + } + + public Criteria andSubTimeGreaterThanOrEqualTo(Date value) { + addCriterion("sub_time >=", value, "subTime"); + return (Criteria) this; + } + + public Criteria andSubTimeLessThan(Date value) { + addCriterion("sub_time <", value, "subTime"); + return (Criteria) this; + } + + public Criteria andSubTimeLessThanOrEqualTo(Date value) { + addCriterion("sub_time <=", value, "subTime"); + return (Criteria) this; + } + + public Criteria andSubTimeIn(List values) { + addCriterion("sub_time in", values, "subTime"); + return (Criteria) this; + } + + public Criteria andSubTimeNotIn(List values) { + addCriterion("sub_time not in", values, "subTime"); + return (Criteria) this; + } + + public Criteria andSubTimeBetween(Date value1, Date value2) { + addCriterion("sub_time between", value1, value2, "subTime"); + return (Criteria) this; + } + + public Criteria andSubTimeNotBetween(Date value1, Date value2) { + addCriterion("sub_time not between", value1, value2, "subTime"); + return (Criteria) this; + } } /** diff --git a/src/main/resources/mapper/MusicFavoritesDao.xml b/src/main/resources/mapper/MusicFavoritesDao.xml index d49d07d..d3eefc2 100644 --- a/src/main/resources/mapper/MusicFavoritesDao.xml +++ b/src/main/resources/mapper/MusicFavoritesDao.xml @@ -3,8 +3,9 @@ - + + @@ -65,7 +66,7 @@ - id, title, musis_md5 + id, favoriteId, musis_md5, sub_time @@ -132,12 +141,15 @@ id = #{record.id,jdbcType=INTEGER}, - - title = #{record.title,jdbcType=VARCHAR}, + + favoriteId = #{record.favoriteid,jdbcType=INTEGER}, musis_md5 = #{record.musisMd5,jdbcType=VARCHAR}, + + sub_time = #{record.subTime,jdbcType=TIMESTAMP}, + @@ -146,8 +158,9 @@ update music_favorites set id = #{record.id,jdbcType=INTEGER}, - title = #{record.title,jdbcType=VARCHAR}, - musis_md5 = #{record.musisMd5,jdbcType=VARCHAR} + favoriteId = #{record.favoriteid,jdbcType=INTEGER}, + musis_md5 = #{record.musisMd5,jdbcType=VARCHAR}, + sub_time = #{record.subTime,jdbcType=TIMESTAMP} @@ -155,19 +168,23 @@ update music_favorites - - title = #{title,jdbcType=VARCHAR}, + + favoriteId = #{favoriteid,jdbcType=INTEGER}, musis_md5 = #{musisMd5,jdbcType=VARCHAR}, + + sub_time = #{subTime,jdbcType=TIMESTAMP}, + where id = #{id,jdbcType=INTEGER} update music_favorites - set title = #{title,jdbcType=VARCHAR}, - musis_md5 = #{musisMd5,jdbcType=VARCHAR} + set favoriteId = #{favoriteid,jdbcType=INTEGER}, + musis_md5 = #{musisMd5,jdbcType=VARCHAR}, + sub_time = #{subTime,jdbcType=TIMESTAMP} where id = #{id,jdbcType=INTEGER} \ No newline at end of file diff --git a/src/main/resources/mapper/MusicFavoritesDirDao.xml b/src/main/resources/mapper/MusicFavoritesDirDao.xml new file mode 100644 index 0000000..c4fa83e --- /dev/null +++ b/src/main/resources/mapper/MusicFavoritesDirDao.xml @@ -0,0 +1,158 @@ + + + + + + + + + + + + + + + + and ${criterion.condition} + + + and ${criterion.condition} #{criterion.value} + + + and ${criterion.condition} #{criterion.value} and #{criterion.secondValue} + + + and ${criterion.condition} + + #{listItem} + + + + + + + + + + + + + + + + + + and ${criterion.condition} + + + and ${criterion.condition} #{criterion.value} + + + and ${criterion.condition} #{criterion.value} and #{criterion.secondValue} + + + and ${criterion.condition} + + #{listItem} + + + + + + + + + + + id, title + + + + + delete from music_favorites_dir + where id = #{id,jdbcType=INTEGER} + + + delete from music_favorites_dir + + + + + + insert into music_favorites_dir (title) + values (#{title,jdbcType=VARCHAR}) + + + insert into music_favorites_dir + + + title, + + + + + #{title,jdbcType=VARCHAR}, + + + + + + update music_favorites_dir + + + id = #{record.id,jdbcType=INTEGER}, + + + title = #{record.title,jdbcType=VARCHAR}, + + + + + + + + update music_favorites_dir + set id = #{record.id,jdbcType=INTEGER}, + title = #{record.title,jdbcType=VARCHAR} + + + + + + update music_favorites_dir + + + title = #{title,jdbcType=VARCHAR}, + + + where id = #{id,jdbcType=INTEGER} + + + update music_favorites_dir + set title = #{title,jdbcType=VARCHAR} + where id = #{id,jdbcType=INTEGER} + + \ No newline at end of file