Administrator
2018-11-09 deb9d01488abd94df1e8e150d5a59a57b06aa191
推荐页面管理
6个文件已添加
941 ■■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/controller/admin/homemodule/SpecialCardAdminController.java 658 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/homemodule/SuperSpecialCardMapper.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/bus/homemodule/SuperSpecialCard.java 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/mapping/homemodule/SuperSpecialCardMapper.xml 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/homemodule/SuperSpecialCardServiceImpl.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/homemodule/SuperSpecialCardService.java 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/admin/homemodule/SpecialCardAdminController.java
New file
@@ -0,0 +1,658 @@
package com.yeshi.fanli.controller.admin.homemodule;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.sf.json.JSONObject;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.commons.CommonsMultipartFile;
import org.yeshi.utils.JsonUtil;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;
import com.yeshi.fanli.entity.bus.homemodule.Special;
import com.yeshi.fanli.entity.bus.homemodule.SpecialCard;
import com.yeshi.fanli.entity.bus.homemodule.SuperSpecialCard;
import com.yeshi.fanli.entity.common.AdminUser;
import com.yeshi.fanli.entity.common.JumpDetailV2;
import com.yeshi.fanli.service.AdminUserService;
import com.yeshi.fanli.service.inter.common.JumpDetailV2Service;
import com.yeshi.fanli.service.inter.config.SystemConfigService;
import com.yeshi.fanli.service.inter.config.SystemService;
import com.yeshi.fanli.service.inter.homemodule.SpecialCardService;
import com.yeshi.fanli.service.inter.homemodule.SpecialService;
import com.yeshi.fanli.service.inter.homemodule.SuperSpecialCardService;
import com.yeshi.fanli.tag.PageEntity;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.annotation.RequestNoLogin;
import com.yeshi.fanli.entity.system.System;
@Controller
@RequestMapping("admin/new/api/v1/specialcard")
public class SpecialCardAdminController {
    @Resource
    private SpecialService specialService;
    @Resource
    private SpecialCardService specialCardService;
    @Resource
    private SuperSpecialCardService superSpecialCardService;
    @Resource
    private SystemConfigService systemConfigService;
    @Resource
    private JumpDetailV2Service jumpDetailV2Service;
    @Resource
    private AdminUserService adminUserService;
    @Resource
    private SystemService systemService;
    /**
     * 新增
     * @param callback
     * @param special
     * @param out
     */
    @RequestMapping(value = "saveAdd")
    public void saveAdd(String callback, SpecialCard specialCard, PrintWriter out) {
        try {
            String name = specialCard.getName();
            String card = specialCard.getCard();
            if (StringUtil.isNullOrEmpty(name) || StringUtil.isNullOrEmpty(card)) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("专题信息与标识不能为空"));
                return;
            }
            Date nowTime = new Date();
            specialCard.setState(1); // 默认停用
            specialCard.setCreatetime(nowTime);
            specialCard.setUpdatetime(nowTime);
            specialCardService.insert(specialCard);
            List<System> systemList = systemService.getSystems();
            if (systemList != null && systemList.size() > 0) {
                for (System system: systemList) {
                    SuperSpecialCard superCard = new  SuperSpecialCard();
                    superCard.setSpecialCard(specialCard);
                    superCard.setSystem(system);
                    superSpecialCardService.insertSelective(superCard);
                }
            }
            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("添加成功"));
        } catch (Exception e) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作异常"));
            e.printStackTrace();
        }
    }
    /**
     * 修改
     * @param callback
     * @param special
     * @param out
     */
    @RequestMapping(value = "saveModify")
    public void saveModify(String callback, SpecialCard specialCard, PrintWriter out) {
        try {
            Long id = specialCard.getId();
            if (id == null) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("ID不能为空"));
                return;
            }
            SpecialCard resultObj = specialCardService.selectByPrimaryKey(id);
            if (resultObj == null) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作数据已不存在"));
                return;
            }
            String name = specialCard.getName();
            String card = specialCard.getCard();
            if (StringUtil.isNullOrEmpty(name) && StringUtil.isNullOrEmpty(card)) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("修改内容不能为空"));
                return;
            }
            if (StringUtil.isNullOrEmpty(name)) {
                specialCard.setName(null);
            }
            if (StringUtil.isNullOrEmpty(card)) {
                specialCard.setCard(null);
            }
            specialCard.setUpdatetime(new Date());
            specialCardService.updateByPrimaryKeySelective(specialCard);
            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("修改成功"));
        } catch (Exception e) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作异常"));
            e.printStackTrace();
        }
    }
    /**
     * 修该状态
     * @param callback
     * @param id
     * @param out
     */
    @RequestMapping(value = "updateState")
    public void updateState(String callback, Long id, PrintWriter out) {
        try {
            if (id == null) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("ID不能为空"));
                return;
            }
            SpecialCard resultObj = specialCardService.selectByPrimaryKey(id);
            if (resultObj == null) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作数据已不存在"));
                return;
            }
            Integer state = resultObj.getState();
            if (state == null ||  state.equals(1) || state == 1) {
                resultObj.setState(0);
            } else {
                resultObj.setState(1);
            }
            specialCardService.updateByPrimaryKeySelective(resultObj);
            JSONObject data = new JSONObject();
            data.put("state", resultObj.getState());
            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
        } catch (Exception e) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作异常"));
            e.printStackTrace();
        }
    }
    /**
     * 修改系统状态
     * @param callback
     * @param type
     * @param cardId
     * @param systemId
     * @param out
     */
    @RequestMapping(value = "saveSystemState")
    public void saveSystemState(String callback, Long cardId, Long systemId, PrintWriter out) {
        if (cardId == null || systemId == null) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("传递参数不能为空"));
            return;
        }
        try {
            List<SuperSpecialCard> list = superSpecialCardService.querybyCardIdAndSystemId(cardId, systemId);
            if (list != null && list.size() > 0) {
                superSpecialCardService.deletebyCardIdAndSystemId(cardId, systemId);
                JSONObject data = new JSONObject();
                data.put("check", 0);
                JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
            } else {
                SpecialCard specialCard = new SpecialCard();
                specialCard.setId(cardId);
                System system = new System();
                system.setId(systemId);
                SuperSpecialCard superCard = new  SuperSpecialCard();
                superCard.setSpecialCard(specialCard);
                superCard.setSystem(system);
                superSpecialCardService.insertSelective(superCard);
                JSONObject data = new JSONObject();
                data.put("check", 1);
                JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
            }
        } catch (Exception e1) {
            e1.printStackTrace();
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("修改失败"));
        }
    }
    /**
     * 查询
     * @param callback
     * @param pageIndex
     * @param pageSize
     * @param key  模糊查询:说明、标识
     * @param out
     */
    @RequestMapping(value = "query")
    public void query(String callback, Integer pageIndex, Integer pageSize, String key,
            Integer sort, PrintWriter out) {
        if (pageIndex == null || pageIndex < 1) {
            pageIndex = 1;
        }
        if (pageSize == null || pageSize < 1) {
            pageSize = Constant.PAGE_SIZE;
        }
        try {
            List<SpecialCard> list = specialCardService.listQuery((pageIndex - 1) * pageSize,
                    pageSize, key, sort);
            if (list == null || list.size() == 0) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("暂无数据"));
                return;
            }
            for (SpecialCard specialCard: list) {
                long totalSpecial= specialService.countlistQueryByCard(specialCard.getId(), null);
                specialCard.setTotalSpecial(totalSpecial);
            }
            long count = specialCardService.countlistQuery(key);
            int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
            PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
            GsonBuilder gsonBuilder = new GsonBuilder();
            gsonBuilder.serializeNulls();
            Gson gson = gsonBuilder.setDateFormat("yyyy/MM/dd HH:mm:ss").create();
            JSONObject data = new JSONObject();
            data.put("pe", pe);
            data.put("result_list", gson.toJson(list));
            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
        } catch (Exception e) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作异常"));
            e.printStackTrace();
        }
    }
    /**
     * 删除
     * @param callback
     * @param idArray
     * @param out
     */
    @RequestMapping(value = "delete")
    public void delete(String callback, String idArray, PrintWriter out) {
        try {
            if (StringUtil.isNullOrEmpty(idArray)) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请选择操作的数据"));
                return;
            }
            Gson gson = new Gson();
            List<Long> list = gson.fromJson(idArray, new TypeToken<ArrayList<Long>>() {}.getType());
            if (list == null || list.size() == 0) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("未检测到删除的数据"));
                return;
            }
            int count = specialCardService.deleteBatchByPrimaryKey(list);
            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("成功删除["+ count +"]条数据"));
        } catch (Exception e) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("删除失败"));
            e.printStackTrace();
        }
    }
    /**
     *  查询专题
     * @param callback
     * @param pageIndex
     * @param pageSize
     * @param bannerId
     * @param out
     */
    @RequestMapping(value = "querySpecial")
    public void querySpecial(String callback, Integer pageIndex, Integer pageSize, String key,
            Long cardId, PrintWriter out) {
        if (pageIndex == null || pageIndex < 1) {
            pageIndex = 1;
        }
        if (pageSize == null || pageSize < 1) {
            pageSize = Constant.PAGE_SIZE;
        }
        if (cardId == null) {
            out.print(JsonUtil.loadFalseResult("唯一标识ID不能为空"));
            return;
        }
        try {
            List<Special> list = specialService.listQueryByCard((pageIndex - 1) * pageSize,
                    pageSize, cardId, key);
            if (list == null || list.size() == 0) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("暂无数据"));
                return;
            }
            // 跳转链接
            for (Special special: list) {
                String params = special.getParams();
                if (!StringUtil.isNullOrEmpty(params)) {
                    JSONObject jsonData = JSONObject.fromObject(params);
                    if (jsonData.get("url") != null){
                        special.setParams(jsonData.get("url").toString());
                    } else {
                        special.setParams(null);
                    }
                }
                JumpDetailV2 jumpDetail = special.getJumpDetail();
                if (jumpDetail == null) {
                    // 默认未选择
                    JumpDetailV2 jumpDetailV2 = new JumpDetailV2();
                    jumpDetailV2.setName("-未选择-");
                    jumpDetailV2.setType("default");
                    special.setJumpDetail(jumpDetailV2);
                }
            }
            long count = specialService.countlistQueryByCard(cardId, key);
            int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
            PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
            GsonBuilder gsonBuilder = new GsonBuilder();
            gsonBuilder.serializeNulls();
            Gson gson = gsonBuilder.setDateFormat("yyyy/MM/dd HH:mm:ss").create();
            JSONObject data = new JSONObject();
            data.put("pe", pe);
            data.put("result_list", gson.toJson(list));
            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
        } catch (Exception e) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作异常"));
            e.printStackTrace();
        }
    }
    /**
     * 修改专题信息
     * @param callback
     * @param record
     * @param out
     */
    @RequestNoLogin()
    @RequestMapping(value = "modifySpecial")
    public void modifySpecial(String callback, Special record, String jumpType, PrintWriter out) {
            Long id = record.getId();
            if (id == null) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("ID不能为空"));
                return;
            }
        try {
            Special resultObj = specialService.selectByPrimaryKey(id);
            if (resultObj == null) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作数据已不存在"));
                return;
            }
            String params = record.getParams();
            if (!StringUtil.isNullOrEmpty(params)) {
                String jumpValue = systemConfigService.get("jump");
                if (StringUtil.isNullOrEmpty(jumpValue)) {
                    jumpValue = "{\"url\":\"#\"}";
                }
                params = jumpValue.replace("#", params);
                record.setParams(params);
            }
            if (!StringUtil.isNullOrEmpty(jumpType)) {
                List<JumpDetailV2> listByType = jumpDetailV2Service.listByType(jumpType);
                if (listByType !=null && listByType.size() > 0) {
                    record.setJumpDetail(listByType.get(0));
                }
            }
            specialService.updateByPrimaryKeySelective(record);
            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("保存成功"));
        } catch (Exception e) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作失败"));
            e.printStackTrace();
        }
    }
    /**
     * 专题图片上传
     * @param file
     * @param uid
     * @param id
     * @param request
     * @param response
     * @param out
     */
    @RequestNoLogin()
    @RequestMapping(value = "saveSpecial")
    public void saveSpecial(@RequestParam("file") CommonsMultipartFile file, Long uid,
            Long id, Long cardId, HttpServletRequest request, HttpServletResponse response, PrintWriter out) {
        response.setHeader("Access-Control-Allow-Origin", "*");
        response.setHeader("Access-Control-Allow-Methods", "*");
        AdminUser admin = adminUserService.selectByPrimaryKey(uid);
        if (admin == null) {
            out.print(JsonUtil.loadFalseResult("当前账户验证失败"));
            return;
        }
        if (file == null) {
            out.print(JsonUtil.loadFalseResult("上传文件为空"));
            return;
        }
        try {
            Special resultObj = null;
            if (id != null) {
                resultObj = specialService.selectByPrimaryKey(id);
                if (resultObj == null) {
                    out.print(JsonUtil.loadFalseResult("该专题已不存在"));
                    return;
                }
            }
            specialService.uploadPicture(file, resultObj, cardId);
            out.print(JsonUtil.loadTrueResult("上传成功"));
        } catch (Exception e) {
            out.print(JsonUtil.loadFalseResult("操作失败"));
            e.printStackTrace();
        }
    }
    /**
     * 删除专题
     * @param callback
     * @param idArray
     * @param out
     */
    @RequestMapping(value = "deleteSpecial")
    public void deleteSpecial(String callback, String idArray, PrintWriter out) {
        try {
            if (StringUtil.isNullOrEmpty(idArray)) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请选择操作的数据"));
                return;
            }
            Gson gson = new Gson();
            List<Long> list = gson.fromJson(idArray, new TypeToken<ArrayList<Long>>() {}.getType());
            if (list == null || list.size() == 0) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("未检测到删除的数据"));
                return;
            }
            int count = specialService.deleteBatchByPrimaryKey(list);
            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("成功删除["+ count +"]条数据"));
        } catch (Exception e) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("删除失败"));
            e.printStackTrace();
        }
    }
    /**
     * 修该状态
     * @param callback
     * @param id
     * @param out
     */
    @RequestMapping(value = "updateSpecialState")
    public void updateSpecialState(String callback, Long id, PrintWriter out) {
        try {
            if (id == null) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("ID不能为空"));
                return;
            }
            Special resultObj = specialService.selectByPrimaryKey(id);
            if (resultObj == null) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作数据已不存在"));
                return;
            }
            Long state = resultObj.getState();
            if (state == null ||  state.equals(1) || state == 1) {
                resultObj.setState(0L);
            } else {
                resultObj.setState(1L);
            }
            specialService.updateByPrimaryKeySelective(resultObj);
            JSONObject data = new JSONObject();
            data.put("state", resultObj.getState());
            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
        } catch (Exception e) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作异常"));
            e.printStackTrace();
        }
    }
    /**
     * 修改排序
     *
     * @param callback
     * @param goodsClass
     * @param out
     */
    @RequestMapping(value = "saveSpecialOrder")
    public void saveSpecialOrder(String callback, Long id,Integer moveType, PrintWriter out) {
        if (moveType == null || (!moveType.equals(1) && !moveType.equals(-1))) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("传递的类型不正确"));
            return;
        }
        if (id == null) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("ID不能为空"));
            return;
        }
        try {
            Special resultObj = specialService.selectByPrimaryKey(id);
            if (resultObj == null) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作数据已不存在"));
                return;
            }
            Long cid = resultObj.getCardId();
            Integer oldOrder = resultObj.getOrderby();
            List<Special> list = specialService.getOrderByCardID(cid, moveType, oldOrder);
            if (list != null && list.size() > 0) {
                Special changeObj = list.get(0);
                // 交换排序序号
                resultObj.setOrderby(changeObj.getOrderby());
                changeObj.setOrderby(oldOrder);
                specialService.updateByPrimaryKeySelective(changeObj);
            }
            specialService.updateByPrimaryKeySelective(resultObj);
            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("操作成功"));
        } catch (Exception e) {
            e.printStackTrace();
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作异常"));
        }
    }
}
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/homemodule/SuperSpecialCardMapper.java
New file
@@ -0,0 +1,30 @@
package com.yeshi.fanli.dao.mybatis.homemodule;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.yeshi.fanli.entity.bus.homemodule.SuperSpecialCard;
public interface SuperSpecialCardMapper {
    int deleteByPrimaryKey(Long id);
    int insert(SuperSpecialCard record);
    int insertSelective(SuperSpecialCard record);
    SuperSpecialCard selectByPrimaryKey(Long id);
    int updateByPrimaryKeySelective(SuperSpecialCard record);
    int updateByPrimaryKey(SuperSpecialCard record);
    List<SuperSpecialCard> listByCardIDs(List<Long> list);
    int deleteBatchByCardId(List<Long> list);
    void deletebyCardIdAndSystemId(@Param("cardId") Long cardId, @Param("systemId") Long systemId);
    List<SuperSpecialCard> querybyCardIdAndSystemId(@Param("cardId") Long cardId, @Param("systemId") Long systemId);
}
fanli/src/main/java/com/yeshi/fanli/entity/bus/homemodule/SuperSpecialCard.java
New file
@@ -0,0 +1,74 @@
package com.yeshi.fanli.entity.bus.homemodule;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import com.yeshi.fanli.entity.system.System;
/**
 * 专题对应启用系统
 *
 * @author yj
 *
 * @date 2018年11月08日
 */
@Entity
@Table(name = "yeshi_ec_super_special_card")
@org.yeshi.utils.mybatis.Table("yeshi_ec_super_special_card")
public class SuperSpecialCard implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @Column(name = "sp_id")
    @GeneratedValue(strategy = GenerationType.AUTO)
    @org.yeshi.utils.mybatis.Column(name = "sp_id")
    private Long id;
    // 专题管理
    @ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name = "sp_special_cid")
    @org.yeshi.utils.mybatis.Column(name = "sp_special_cid")
    private SpecialCard specialCard;
    // 系统
    @ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name = "sp_system_id")
    @org.yeshi.utils.mybatis.Column(name = "sp_system_id")
    private System system;
    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }
    public SpecialCard getSpecialCard() {
        return specialCard;
    }
    public void setSpecialCard(SpecialCard specialCard) {
        this.specialCard = specialCard;
    }
    public System getSystem() {
        return system;
    }
    public void setSystem(System system) {
        this.system = system;
    }
}
fanli/src/main/java/com/yeshi/fanli/mapping/homemodule/SuperSpecialCardMapper.xml
New file
@@ -0,0 +1,66 @@
<?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.yeshi.fanli.dao.mybatis.homemodule.SuperSpecialCardMapper">
  <resultMap id="BaseResultMap" type="com.yeshi.fanli.entity.bus.homemodule.SuperSpecialCard">
    <id column="sp_id" property="id" jdbcType="BIGINT"/>
    <association property="specialCard" column="sp_special_cid"
        javaType="com.yeshi.fanli.entity.bus.homemodule.SpecialCard">
            <id column="sp_special_cid" property="id" jdbcType="BIGINT" />
    </association>
    <association property="system" column="sp_system_id"
        javaType="com.yeshi.fanli.entity.system.System">
            <id column="sp_system_id" property="id" jdbcType="BIGINT" />
    </association>
  </resultMap>
  <sql id="Base_Column_List">sp_id,sp_special_cid,sp_system_id</sql>
  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Long">select
    <include refid="Base_Column_List"/>from yeshi_ec_super_special_card where sp_id = #{id,jdbcType=BIGINT}
  </select>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">delete from yeshi_ec_super_special_card where sp_id = #{id,jdbcType=BIGINT}</delete>
  <insert id="insert" parameterType="com.yeshi.fanli.entity.bus.homemodule.SuperSpecialCard" useGeneratedKeys="true" keyProperty="id">insert into yeshi_ec_super_special_card (sp_id,sp_special_cid,sp_system_id) values (#{id,jdbcType=BIGINT},#{specialCard.id,jdbcType=BIGINT},#{system.id,jdbcType=BIGINT})</insert>
  <insert id="insertSelective" parameterType="com.yeshi.fanli.entity.bus.homemodule.SuperSpecialCard" useGeneratedKeys="true" keyProperty="id">insert into yeshi_ec_super_special_card
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="id != null">sp_id,</if>
      <if test="specialCard != null">sp_special_cid,</if>
      <if test="system != null">sp_system_id,</if>
    </trim>values
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="id != null">#{id,jdbcType=BIGINT},</if>
      <if test="specialCard != null">#{specialCard.id,jdbcType=BIGINT},</if>
      <if test="system != null">#{system.id,jdbcType=BIGINT},</if>
    </trim>
  </insert>
  <update id="updateByPrimaryKey" parameterType="com.yeshi.fanli.entity.bus.homemodule.SuperSpecialCard">update yeshi_ec_super_special_card set sp_special_cid = #{specialCard.id,jdbcType=BIGINT},sp_system_id = #{system.id,jdbcType=BIGINT} where sp_id = #{id,jdbcType=BIGINT}</update>
  <update id="updateByPrimaryKeySelective" parameterType="com.yeshi.fanli.entity.bus.homemodule.SuperSpecialCard">update yeshi_ec_super_special_card
    <set>
      <if test="specialCard != null">sp_special_cid=#{specialCard.id,jdbcType=BIGINT},</if>
      <if test="system != null">sp_system_id=#{system.id,jdbcType=BIGINT},</if>
    </set> where sp_id = #{id,jdbcType=BIGINT}
  </update>
   <select id="listByCardIDs"  parameterType="java.util.List" resultMap="BaseResultMap">
     SELECT sp.* FROM `yeshi_ec_super_special_card` sp
     LEFT JOIN `yeshi_ec_special_card` pp  ON sp.sp_special_cid = pp.`cd_id`
     WHERE  pp.`cd_id` in  <foreach collection="list" item="item" open="(" separator="," close=")">#{item}</foreach>
  </select>
   <delete id="deleteBatchByCardId" parameterType="java.util.List">
        delete from yeshi_ec_super_special_card WHERE sp_special_cid in
        <foreach collection="list" item="item" open="(" close=")"
            separator=",">#{item}</foreach>
   </delete>
    <select id="querybyCardIdAndSystemId"  resultMap="BaseResultMap">
        SELECT * FROM `yeshi_ec_super_special_card` WHERE sp_special_cid = #{cardId} and sp_system_id = #{systemId}
    </select>
    <delete id="deletebyCardIdAndSystemId">
        delete from yeshi_ec_super_special_card WHERE sp_special_cid = #{cardId} and sp_system_id = #{systemId}
   </delete>
</mapper>
fanli/src/main/java/com/yeshi/fanli/service/impl/homemodule/SuperSpecialCardServiceImpl.java
New file
@@ -0,0 +1,70 @@
package com.yeshi.fanli.service.impl.homemodule;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.yeshi.fanli.dao.mybatis.homemodule.SuperSpecialCardMapper;
import com.yeshi.fanli.entity.bus.homemodule.SuperSpecialCard;
import com.yeshi.fanli.service.inter.config.SystemService;
import com.yeshi.fanli.service.inter.homemodule.SuperSpecialCardService;
@Service
public class SuperSpecialCardServiceImpl implements SuperSpecialCardService {
    @Resource
    private SystemService systemService;
    @Resource
    private SuperSpecialCardMapper superSpecialCardMapper;
    @Override
    public int deleteByPrimaryKey(Long id) {
        return superSpecialCardMapper.deleteByPrimaryKey(id);
    }
    @Override
    public int insert(SuperSpecialCard record) {
        return superSpecialCardMapper.insert(record);
    }
    @Override
    public int insertSelective(SuperSpecialCard record) {
        return superSpecialCardMapper.insertSelective(record);
    }
    @Override
    public SuperSpecialCard selectByPrimaryKey(Long id) {
        return superSpecialCardMapper.selectByPrimaryKey(id);
    }
    @Override
    public int updateByPrimaryKeySelective(SuperSpecialCard record) {
        return superSpecialCardMapper.updateByPrimaryKeySelective(record);
    }
    @Override
    public int updateByPrimaryKey(SuperSpecialCard record) {
        return superSpecialCardMapper.updateByPrimaryKey(record);
    }
    @Override
    public int deleteBatchByCardId(List<Long> list) {
        return superSpecialCardMapper.deleteBatchByCardId(list);
    }
    @Override
    public void deletebyCardIdAndSystemId(Long cardId, Long systemId) throws Exception {
        superSpecialCardMapper.deletebyCardIdAndSystemId(cardId, systemId);
    }
    @Override
    public List<SuperSpecialCard> querybyCardIdAndSystemId(Long cardId, Long systemId) throws Exception {
        return superSpecialCardMapper.querybyCardIdAndSystemId(cardId, systemId);
    }
}
fanli/src/main/java/com/yeshi/fanli/service/inter/homemodule/SuperSpecialCardService.java
New file
@@ -0,0 +1,43 @@
package com.yeshi.fanli.service.inter.homemodule;
import java.util.List;
import com.yeshi.fanli.entity.bus.homemodule.SuperSpecialCard;
/**
 *  专题-系统
 *
 * @author Administrator
 *
 */
public interface SuperSpecialCardService {
    public int deleteByPrimaryKey(Long id);
    public int insert(SuperSpecialCard record);
    public int insertSelective(SuperSpecialCard record);
    public SuperSpecialCard selectByPrimaryKey(Long id);
    public int updateByPrimaryKeySelective(SuperSpecialCard record);
    public int updateByPrimaryKey(SuperSpecialCard record);
    public int deleteBatchByCardId(List<Long> list);
    /**
     * 删除系统
     * @param cardId
     * @param systemId
     */
    public void deletebyCardIdAndSystemId(Long cardId, Long systemId) throws Exception ;
    /**
     * 查询系统
     * @param cardId
     * @param systemId
     */
    public List<SuperSpecialCard> querybyCardIdAndSystemId(Long cardId, Long systemId) throws Exception ;
}