zouxuan 5 years ago
parent
commit
10ad1c71eb

+ 14 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SysUserBankCardDao.java

@@ -2,7 +2,21 @@ package com.ym.mec.biz.dal.dao;
 
 import com.ym.mec.biz.dal.entity.SysUserBankCard;
 import com.ym.mec.common.dal.BaseDAO;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 public interface SysUserBankCardDao extends BaseDAO<Long, SysUserBankCard> {
 
+    void setDefault(@Param("userId") Integer userId, @Param("bankCardId") Long bankCardId);
+
+    void setNotDefault(@Param("userId") Integer userId);
+
+    /**
+     * 获取用户银行卡列表
+     * @param search
+     * @param userId
+     * @return
+     */
+    List<SysUserBankCard> findByUser(@Param("search") String search,@Param("userId") Integer userId);
 }

+ 4 - 4
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/SysUserBankCard.java

@@ -19,7 +19,7 @@ public class SysUserBankCard {
 	
 	/** 是否默认 0,否;1,是 */
 	@ApiModelProperty(value = "是否默认 0,否;1,是",required = false)
-	private YesOrNoEnum isDefault;
+	private Integer isDefault;
 	
 	/** 银行名称 */
 	@ApiModelProperty(value = "银行名称",required = false)
@@ -46,7 +46,7 @@ public class SysUserBankCard {
 	private String address;
 	
 	/** 0,已删除;1,正常;2,冻结;3,验证中 */
-	@ApiModelProperty(value = "联系方式",required = false)
+	@ApiModelProperty(value = "状态",required = false)
 	private BankCardStatusEnum status;
 	
 	/** 创建时间 */
@@ -196,11 +196,11 @@ public class SysUserBankCard {
 		return this.transNo;
 	}
 
-	public YesOrNoEnum getIsDefault() {
+	public Integer getIsDefault() {
 		return isDefault;
 	}
 
-	public void setIsDefault(YesOrNoEnum isDefault) {
+	public void setIsDefault(Integer isDefault) {
 		this.isDefault = isDefault;
 	}
 

+ 11 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/SysUserBankCardService.java

@@ -3,6 +3,8 @@ package com.ym.mec.biz.service;
 import com.ym.mec.biz.dal.entity.SysUserBankCard;
 import com.ym.mec.common.service.BaseService;
 
+import java.util.List;
+
 public interface SysUserBankCardService extends BaseService<Long, SysUserBankCard> {
 
     /**
@@ -10,5 +12,13 @@ public interface SysUserBankCardService extends BaseService<Long, SysUserBankCar
      * @param sysUserBankCard
      * @return
      */
-    boolean add(SysUserBankCard sysUserBankCard);
+    SysUserBankCard add(SysUserBankCard sysUserBankCard);
+
+    /**
+     * 获取学员银行卡列表
+     * @param search
+     * @param id
+     * @return
+     */
+    List<SysUserBankCard> findByUser(String search, Integer id);
 }

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SubjectServiceImpl.java

@@ -116,7 +116,7 @@ public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject>  imple
     private Subject getTree(Subject sub,YesOrNoEnum yesOrNoEnum){
         //得到根节点对象
         //获取子节点list
-        List<Subject> subjects = subjectDao.findByParentId(sub.getCode(),yesOrNoEnum);
+        List<Subject> subjects = subjectDao.findByParentId(sub.getId().toString(),yesOrNoEnum);
         //如果存在子节点
         if(subjects != null && subjects.size() > 0) {
             //将子节点list放入父节点对象

+ 3 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMessageServiceImpl.java

@@ -59,7 +59,7 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 
 	private final int DEFAULT_CODE = 888888;
 
-	@Value("${message.debugMode:true}")
+	@Value("${message.debugMode:false}")
 	private boolean debugMode = false;
 
 	@Override
@@ -168,9 +168,8 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 		if (triggerTime == null || date.after(triggerTime)) {
 			status = SendStatusEnum.SENDING;
 			try {
-				if (debugMode == true
-						|| messageSenderPluginContext.send(messageSender, receiver, messageConfig.getDescription(),
-								MessageFormatter.arrayFormat(messageConfig.getContent(), args), url)) {
+				if (debugMode == true || messageSenderPluginContext.send(messageSender, messageConfig.getDescription(),
+								MessageFormatter.arrayFormat(messageConfig.getContent(), args), receiver, url)) {
 					status = SendStatusEnum.SUCCESSED;
 				} else {
 					status = SendStatusEnum.FAILED;

+ 15 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysUserBankCardServiceImpl.java

@@ -8,6 +8,9 @@ import com.ym.mec.common.service.impl.BaseServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
 
 @Service
 public class SysUserBankCardServiceImpl extends BaseServiceImpl<Long, SysUserBankCard> implements SysUserBankCardService {
@@ -24,7 +27,8 @@ public class SysUserBankCardServiceImpl extends BaseServiceImpl<Long, SysUserBan
 	}
 
 	@Override
-	public boolean add(SysUserBankCard sysUserBankCard) {
+    @Transactional(rollbackFor = Exception.class)
+	public SysUserBankCard add(SysUserBankCard sysUserBankCard) {
 		/*if(StringUtils.isEmpty(sysUserBankCard.getSmsCode()) || StringUtils.isEmpty(sysUserBankCard.getMobilePhone())){
 			return false;
 		}
@@ -33,7 +37,16 @@ public class SysUserBankCardServiceImpl extends BaseServiceImpl<Long, SysUserBan
 			sysUserBankCardDao.insert(sysUserBankCard);
 			return true;
 		}*/
+        if(sysUserBankCard.getIsDefault() != null && sysUserBankCard.getIsDefault() == 1){
+            //该用户所有卡设置未非默认
+            sysUserBankCardDao.setNotDefault(sysUserBankCard.getUserId());
+        }
 		sysUserBankCardDao.insert(sysUserBankCard);
-		return false;
+		return sysUserBankCard;
+	}
+
+	@Override
+	public List<SysUserBankCard> findByUser(String search, Integer userId) {
+		return sysUserBankCardDao.findByUser(search,userId);
 	}
 }

+ 29 - 8
mec-biz/src/main/resources/config/mybatis/SysUserBankCardMapper.xml

@@ -9,7 +9,7 @@
     <resultMap type="com.ym.mec.biz.dal.entity.SysUserBankCard" id="SysUserBankCard">
         <result column="id_" property="id"/>
         <result column="user_id_" property="userId"/>
-        <result column="is_default_" property="isDefault" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="is_default_" property="isDefault"/>
         <result column="bank_name_" property="bankName"/>
         <result column="bank_code_" property="bankCode"/>
         <result column="card_no_" property="cardNo"/>
@@ -28,12 +28,12 @@
 
     <!-- 根据主键查询一条记录 -->
     <select id="get" resultMap="SysUserBankCard">
-		SELECT * FROM sys_user_bank_card WHERE id_ = #{id} 
+		SELECT * FROM sys_user_bank_card WHERE id_ = #{id} AND status_ != 0
 	</select>
 
     <!-- 全查询 -->
     <select id="findAll" resultMap="SysUserBankCard">
-		SELECT * FROM sys_user_bank_card ORDER BY id_
+		SELECT * FROM sys_user_bank_card WHERE status_ != 0 ORDER BY id_
 	</select>
 
     <!-- 向数据库增加一条记录 -->
@@ -46,7 +46,7 @@
         -->
         INSERT INTO sys_user_bank_card
         (id_,user_id_,is_default_,bank_name_,bank_code_,card_no_,province_,city_,address,create_on_,modify_on_,is_quick_,mobile_phone_,trans_no_,real_name_,id_card_no_)
-        VALUES(#{id},#{userId},#{isDefault,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{bankName},#{bankCode},#{cardNo},#{province},
+        VALUES(#{id},#{userId},#{isDefault},#{bankName},#{bankCode},#{cardNo},#{province},
         #{city},#{address},now(),now(),#{isQuick,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{mobilePhone},#{transNo},#{realName},#{idCardNo})
     </insert>
 
@@ -67,7 +67,7 @@
                 address = #{address},
             </if>
             <if test="isDefault != null">
-                is_default_ = #{isDefault,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+                is_default_ = #{isDefault},
             </if>
             <if test="bankCode != null">
                 bank_code_ = #{bankCode},
@@ -105,17 +105,38 @@
 
     <!-- 根据主键删除一条记录 -->
     <update id="delete">
-		UPDATE sys_user_bank_card SET del_flag_ = 1 WHERE id_ = #{id}
+		UPDATE sys_user_bank_card SET status_ = 0 WHERE id_ = #{id}
 	</update>
 
+    <update id="setDefault">
+        UPDATE sys_user_bank_card SET is_default_ = 1 WHERE id_ = #{bankCardId} AND user_id_ = #{userId}
+    </update>
+    <update id="setNotDefault">
+        UPDATE sys_user_bank_card SET is_default_ = 0 WHERE user_id_ = #{userId}
+    </update>
+
     <!-- 分页查询 -->
     <select id="queryPage" resultMap="SysUserBankCard" parameterType="map">
-        SELECT * FROM sys_user_bank_card ORDER BY id_
+        SELECT * FROM sys_user_bank_card where status_ != 0 AND user_id_ =
+        <if test="search != null and search != ''">
+           AND create_time_ LIKE CONCAT(#{search},'%')
+        </if>
+        ORDER BY id_
         <include refid="global.limit"/>
     </select>
 
     <!-- 查询当前表的总记录数 -->
     <select id="queryCount" resultType="int">
-		SELECT COUNT(*) FROM sys_user_bank_card
+		SELECT COUNT(*) FROM sys_user_bank_card where status_ != 0
+        <if test="search != null and search != ''">
+            AND create_time_ LIKE CONCAT(#{search},'%')
+        </if>
 	</select>
+
+    <select id="findByUser" resultMap="SysUserBankCard">
+        SELECT * FROM sys_user_bank_card where status_ != 0 AND user_id_ = #{userId}
+        <if test="search != null and search != ''">
+            AND create_time_ LIKE CONCAT(#{search},'%')
+        </if>
+    </select>
 </mapper>

+ 4 - 0
mec-common/common-core/pom.xml

@@ -38,5 +38,9 @@
 			<groupId>org.springframework.cloud</groupId>
 			<artifactId>spring-cloud-starter-openfeign</artifactId>
 		</dependency>
+		<dependency>
+			<groupId>com.ym</groupId>
+			<artifactId>mec-thirdparty</artifactId>
+		</dependency>
     </dependencies>
 </project>

+ 1 - 1
mec-common/common-core/src/main/java/com/ym/mec/common/validcode/SmsCodeService.java

@@ -14,7 +14,7 @@ public interface SmsCodeService {
 	 * 发送登录验证码
 	 * @return
 	 */
-	boolean sendValidCode(String mobile);
+	boolean sendValidCode(String mobile) throws Exception;
 
 	/**
 	 * 获取验证码

+ 7 - 1
mec-common/common-core/src/main/java/com/ym/mec/common/validcode/impl/SmsCodeServiceImpl.java

@@ -1,5 +1,7 @@
 package com.ym.mec.common.validcode.impl;
 
+import com.ym.mec.thirdparty.message.MessageSenderPlugin;
+import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
 import org.apache.commons.lang3.RandomStringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -21,6 +23,9 @@ public class SmsCodeServiceImpl implements SmsCodeService {
 	
 	private int expireTime = 60;
 
+	@Autowired
+	private MessageSenderPluginContext messageSenderPluginContext;
+
 	@Override
 	public boolean verifyValidCode(String mobile, String authCode) {
 		String verifyCode = redisTemplate.opsForValue().get(loginVerifyCodeKey + mobile);
@@ -31,9 +36,10 @@ public class SmsCodeServiceImpl implements SmsCodeService {
 	}
 
 	@Override
-	public boolean sendValidCode(String mobile) {
+	public boolean sendValidCode(String mobile) throws Exception {
 		String code = RandomStringUtils.randomNumeric(6);
 		// 发送验证码
+		messageSenderPluginContext.send(MessageSenderPluginContext.MessageSender.YIMEI,"","",mobile,"");
 		redisTemplate.opsForValue().set(loginVerifyCodeKey + mobile, code, expireTime);
 		return true;
 	}

+ 1 - 1
mec-student/src/main/java/com/ym/mec/student/controller/SysMessageController.java

@@ -107,7 +107,7 @@ public class SysMessageController extends BaseController {
 		if (StringUtils.isBlank(mobileNo) || !CommonValidator.isMobileNo(mobileNo)) {
 			throw new BizException("请输入正确的手机号");
 		}
-		sysMessageService.sendSecurityCode(MessageSender.MOXINGTONG, userId, MessageSendMode.SMS, messageType, mobileNo);
+		sysMessageService.sendSecurityCode(MessageSender.YIMEI, userId, MessageSendMode.SMS, messageType, mobileNo);
 		return succeed();
 	}
 

+ 2 - 2
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/message/MessageSenderPlugin.java

@@ -13,7 +13,7 @@ public interface MessageSenderPlugin {
 	 * @return 是否发送成功
 	 * @throws IOException
 	 */
-	public boolean send(String subject, String content, String receiver, String url) throws IOException;
+	public boolean send(String subject, String content, String receiver, String url) throws Exception;
 
 	/**
 	 * 批量发送消息至目的地
@@ -24,5 +24,5 @@ public interface MessageSenderPlugin {
 	 * @return 是否发送成功
 	 * @throws IOException
 	 */
-	public boolean batchSend(String subject, String content, String[] receivers, String url) throws IOException;
+	public boolean batchSend(String subject, String content, String[] receivers, String url) throws Exception;
 }

+ 5 - 3
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/message/MessageSenderPluginContext.java

@@ -4,6 +4,7 @@ import java.io.IOException;
 import java.util.HashMap;
 import java.util.Map;
 
+import com.ym.mec.thirdparty.message.provider.YimeiSmsPlugin;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeansException;
 import org.springframework.context.ApplicationContext;
@@ -20,7 +21,7 @@ public class MessageSenderPluginContext implements ApplicationContextAware {
 
 	public enum MessageSender {
 
-		JIGUANG, MOXINGTONG, SHIYUAN;
+		JIGUANG, MOXINGTONG, SHIYUAN,YIMEI;
 	}
 
 	private MessageSenderPlugin messageSenderPlugin;
@@ -38,6 +39,7 @@ public class MessageSenderPluginContext implements ApplicationContextAware {
 			put(JiguangPushPlugin.getName(), StringUtils.uncapitalize(JiguangPushPlugin.class.getSimpleName()));
 			put(MOxintongSMSPlugin.getName(), StringUtils.uncapitalize(MOxintongSMSPlugin.class.getSimpleName()));
 			put(ShiyuanSMSPlugin.getName(), StringUtils.uncapitalize(ShiyuanSMSPlugin.class.getSimpleName()));
+			put(YimeiSmsPlugin.getName(), StringUtils.uncapitalize(YimeiSmsPlugin.class.getSimpleName()));
 		}
 	};
 
@@ -51,7 +53,7 @@ public class MessageSenderPluginContext implements ApplicationContextAware {
 	 * @return 是否发送成功
 	 * @throws IOException
 	 */
-	public boolean send(MessageSender messageSender, String subject, String content, String receiver, String url) throws IOException {
+	public boolean send(MessageSender messageSender, String subject, String content, String receiver, String url) throws Exception {
 
 		messageSenderPlugin = getMessageSenderPlugin(messageSender);
 
@@ -68,7 +70,7 @@ public class MessageSenderPluginContext implements ApplicationContextAware {
 	 * @return 是否发送成功
 	 * @throws IOException
 	 */
-	public boolean batchSend(MessageSender messageSender, String subject, String content, String[] receivers, String url) throws IOException {
+	public boolean batchSend(MessageSender messageSender, String subject, String content, String[] receivers, String url) throws Exception {
 
 		messageSenderPlugin = getMessageSenderPlugin(messageSender);
 

+ 88 - 0
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/message/provider/YimeiSmsPlugin.java

@@ -0,0 +1,88 @@
+package com.ym.mec.thirdparty.message.provider;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.alibaba.nacos.common.util.Md5Utils;
+import com.ym.mec.thirdparty.message.MessageSenderPlugin;
+import com.ym.mec.util.date.DateUtil;
+import com.ym.mec.util.encode.AES;
+import com.ym.mec.util.http.HttpUtil;
+import org.apache.commons.codec.digest.DigestUtils;
+import org.apache.commons.codec.digest.Md5Crypt;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.tomcat.util.security.MD5Encoder;
+import org.bouncycastle.crypto.digests.MD5Digest;
+import org.springframework.beans.factory.InitializingBean;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+import sun.security.provider.MD5;
+
+import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.HashMap;
+
+/**
+ * 极光推送
+ */
+@Service
+public class YimeiSmsPlugin implements MessageSenderPlugin, InitializingBean {
+	@Value("${com.properties.sms-appId:EUCP-EMY-SMS1-1AIHP}")
+	private String appId;
+	@Value("${com.properties.sms-secretKey:CBA790799C876DAD}")
+	private String secretKey;
+	@Value("${com.properties.sms-host-dev:http://bjksmtn.b2m.cn}")
+	private String host;
+	// 加密算法
+	private static String algorithm = "AES/ECB/PKCS5Padding";
+	// 是否压缩
+	static boolean isGizp = false;
+
+	public static String getName() {
+		return "yimei";
+	}
+
+	private String getParam(String subject, String content, String receiver,String host){
+		try {
+			HashMap<String,Object> param = new HashMap();
+			param.put("appId","");
+			String timestamp = DateUtil.format(new Date(),new SimpleDateFormat("yyyyMMddHHmmss"));
+			param.put("timestamp", timestamp);
+			param.put("sign", DigestUtils.md5Hex(appId + secretKey + timestamp));
+			param.put("content",receiver);
+			param.put("mobiles",subject);
+			return HttpUtil.postForHttp(host, param);
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		return "";
+	}
+
+	@Override
+	public boolean send(String subject, String content, String receiver, String url) throws Exception {
+		String result = getParam(subject, content, receiver, host + "/simpleinter/sendSMS");
+		JSONObject json = JSONObject.parseObject(result);
+		if("SUCCESS".equals(json.get("code"))){
+			return true;
+		}else {
+			throw new Exception(json.getString("code"));
+		}
+	}
+
+	@Override
+	public boolean batchSend(String subject, String content, String[] receivers, String url) throws Exception {
+		String join = StringUtils.join(receivers, ",");
+		String result = getParam(subject, content, join, host + "/simpleinter/sendSMS");
+		JSONObject json = JSONObject.parseObject(result);
+		if("SUCCESS".equals(json.get("code"))){
+			return true;
+		}else {
+			throw new Exception(json.getString("code"));
+		}
+	}
+
+	@Override
+	public void afterPropertiesSet() throws Exception {
+
+	}
+}

+ 141 - 0
mec-util/src/main/java/com/ym/mec/util/encode/AES.java

@@ -0,0 +1,141 @@
+package com.ym.mec.util.encode;
+
+import javax.crypto.Cipher;
+import javax.crypto.spec.IvParameterSpec;
+import javax.crypto.spec.SecretKeySpec;
+
+/**
+ * AES加解密工具
+ * 
+ * @author Frank
+ *
+ */
+public class AES {
+	
+	public final static String ALGORITHM_AEPP = "AES/ECB/PKCS5Padding";
+
+	/**
+	 * AES加密
+	 * 
+	 * @param content
+	 *            内容
+	 * @param password
+	 *            密钥
+	 * @param algorithm
+	 *            算法
+	 * @return 加密后数据
+	 */
+	public static byte[] encrypt(byte[] content, byte[] password, String algorithm) {
+		if (content == null || password == null)
+			return null;
+		try {
+			Cipher cipher = null;
+			if (algorithm.endsWith("PKCS7Padding")) {
+				cipher = Cipher.getInstance(algorithm, "BC");
+			} else {
+				cipher = Cipher.getInstance(algorithm);
+			}
+			cipher.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(password, "AES"));
+			return cipher.doFinal(content);
+		} catch (Exception e) {
+			e.printStackTrace();
+			return null;
+		}
+	}
+
+	/**
+	 * AES解密
+	 * 
+	 * @param content
+	 *            加密内容
+	 * @param password
+	 *            密钥
+	 * @param algorithm
+	 *            算法
+	 * @return 解密后数据
+	 */
+	public static byte[] decrypt(byte[] content, byte[] password, String algorithm) {
+		if (content == null || password == null)
+			return null;
+		try {
+			Cipher cipher = null;
+			if (algorithm.endsWith("PKCS7Padding")) {
+				cipher = Cipher.getInstance(algorithm, "BC");
+			} else {
+				cipher = Cipher.getInstance(algorithm);
+			}
+			cipher.init(Cipher.DECRYPT_MODE, new SecretKeySpec(password, "AES"));
+			byte[] bytes = cipher.doFinal(content);
+			return bytes;
+		} catch (Exception e) {
+			e.printStackTrace();
+			return null;
+		}
+	}
+
+	/**
+	 * AES加密
+	 * 
+	 * @param content
+	 *            内容
+	 * @param password
+	 *            密钥
+	 * @param algorithm
+	 *            算法
+	 * @param ivStr
+	 *            向量
+	 * @return 加密后数据
+	 */
+	public static byte[] encrypt(byte[] content, byte[] password, byte[] ivStr, String algorithm) {
+		if (content == null || password == null)
+			return null;
+		try {
+			Cipher cipher = null;
+			if (algorithm.endsWith("PKCS7Padding")) {
+				cipher = Cipher.getInstance(algorithm, "BC");
+			} else {
+				cipher = Cipher.getInstance(algorithm);
+			}
+			IvParameterSpec iv = new IvParameterSpec(ivStr);
+			cipher.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(password, "AES"), iv);
+			return cipher.doFinal(content);
+		} catch (Exception e) {
+			e.printStackTrace();
+			return null;
+		}
+	}
+
+	/**
+	 * AES解密
+	 * 
+	 * @param content
+	 *            加密内容
+	 * @param password
+	 *            密钥
+	 * @param algorithm
+	 *            算法
+	 * @param ivStr
+	 *            向量
+	 * @return 解密后数据
+	 */
+	public static byte[] decrypt(byte[] content, byte[] password, byte[] ivStr, String algorithm) {
+		if (content == null || password == null)
+			return null;
+		try {
+			Cipher cipher = null;
+			if (algorithm.endsWith("PKCS7Padding")) {
+				cipher = Cipher.getInstance(algorithm, "BC");
+			} else {
+				cipher = Cipher.getInstance(algorithm);
+			}
+			IvParameterSpec iv = new IvParameterSpec(ivStr);
+			cipher.init(Cipher.DECRYPT_MODE, new SecretKeySpec(password, "AES"), iv);
+			byte[] bytes = cipher.doFinal(content);
+			return bytes;
+		} catch (Exception e) {
+			e.printStackTrace();
+			return null;
+		}
+	}
+
+}

+ 33 - 0
mec-util/src/main/java/com/ym/mec/util/http/HttpUtil.java

@@ -45,6 +45,39 @@ public class HttpUtil {
 	 * @return 返回结果
 	 * @throws IOException 
 	 */
+	public static String postForHttp(String url, String json, Map<String, String> headers) throws IOException {
+		String result = null;
+		CloseableHttpClient httpClient = HttpClients.createDefault();
+		HttpPost httpPost = new HttpPost(url);
+		if (headers != null && headers.size() > 0) {
+			for (Entry<String, String> entry : headers.entrySet()) {
+				httpPost.setHeader(entry.getKey(), entry.getValue());
+			}
+		}
+		try {
+			httpPost.setEntity(new StringEntity(json, "UTF-8"));
+			HttpResponse httpResponse = httpClient.execute(httpPost);
+			HttpEntity httpEntity = httpResponse.getEntity();
+			result = EntityUtils.toString(httpEntity, "UTF-8");
+			EntityUtils.consume(httpEntity);
+		} finally {
+			httpPost.releaseConnection();
+			httpClient.close();
+		}
+		return result;
+	}
+
+
+	/**
+	 * POST请求http url
+	 *
+	 * @param url
+	 *            URL
+	 * @param parameterMap
+	 *            请求参数
+	 * @return 返回结果
+	 * @throws IOException
+	 */
 	public static String postForHttp(String url, Map<String, Object> parameterMap) throws IOException {
 		String result = null;
 		CloseableHttpClient httpClient = HttpClients.createDefault();

+ 19 - 6
mec-web/src/main/java/com/ym/mec/web/controller/SysUserBankCardController.java

@@ -1,5 +1,7 @@
 package com.ym.mec.web.controller;
 
+import com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.entity.SysUserBankCard;
 import com.ym.mec.biz.service.SysUserBankCardService;
 import com.ym.mec.common.controller.BaseController;
@@ -19,6 +21,8 @@ public class SysUserBankCardController extends BaseController {
 
     @Autowired
     private SysUserBankCardService sysUserBankCardService;
+    @Autowired
+    private SysUserFeignService sysUserFeignService;
 
     @ApiOperation(value = "新增银行卡信息")
     @PostMapping("/add")
@@ -26,27 +30,36 @@ public class SysUserBankCardController extends BaseController {
         if(sysUserBankCard == null){
             return failed("参数校验异常");
         }
-        return sysUserBankCardService.add(sysUserBankCard)?succeed():failed();
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if(sysUser == null || sysUser.getId() == null){
+            return failed("获取用户失败");
+        }
+        sysUserBankCard.setUserId(sysUser.getId());
+        return succeed(sysUserBankCardService.add(sysUserBankCard));
     }
 
     @ApiOperation(value = "删除银行卡信息")
     @PostMapping("/del")
-    public Object del(@ApiParam(value = "银行卡信息编号", required = true) @PathVariable("id") Long id) {
+    public Object del(Long id) {
         sysUserBankCardService.delete(id);
         return succeed();
     }
 
-    @ApiOperation(value = "修改银行卡信息")
+    /*@ApiOperation(value = "修改银行卡信息")
     @PostMapping("/update")
     public Object update(SysUserBankCard sysUserBankCard) {
         sysUserBankCard.setModifyOn(new Date());
         sysUserBankCardService.update(sysUserBankCard);
         return succeed();
-    }
+    }*/
 
     @ApiOperation(value = "分页查询银行卡信息列表")
     @GetMapping("/queryPage")
-    public Object queryPage(QueryInfo queryInfo) {
-        return succeed(sysUserBankCardService.queryPage(queryInfo));
+    public Object queryPage(String search) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if(sysUser == null || sysUser.getId() == null){
+            return failed("获取用户失败");
+        }
+        return succeed(sysUserBankCardService.findByUser(search,sysUser.getId()));
     }
 }