Forráskód Böngészése

菠萝派api开发

wangxiaoming 7 éve
szülő
commit
f73218b5a0

+ 10 - 0
tooth-common-core/src/main/java/com/iamberry/wechat/core/entity/order/Order.java

@@ -63,6 +63,8 @@ public class Order implements java.io.Serializable{
 	
 	private Date beginDate;	//开始时间
 	private Date endDate;		//结束时间
+	private Integer selectDateType; 		//按照什么时间查询   订单修改时间=1,订单创建时间=2
+
 	private int deadline;		//返利期限,以秒为单位,必须大于此时间才能返利
 	private Integer placeId;		//线下代理信息表id,奖励积分时要用到
 	private Integer itemSum;			//商品总数,定时任务按订单商品数量总数量奖励积分和金额
@@ -394,4 +396,12 @@ public class Order implements java.io.Serializable{
 	public void setUserResource(String userResource) {
 		this.userResource = userResource;
 	}
+
+	public Integer getSelectDateType() {
+		return selectDateType;
+	}
+
+	public void setSelectDateType(Integer selectDateType) {
+		this.selectDateType = selectDateType;
+	}
 }

+ 2 - 1
tooth-common-tool/src/main/java/com/iamberry/app/tool/des/MD5.java

@@ -210,6 +210,7 @@ public class MD5 {
 	public static String GetMD5Code(String strObj) throws Exception{
 		MessageDigest md = MessageDigest.getInstance(KEY_MD5);
 		// md.digest() 该函数返回值为存放哈希值结果的byte数组
-		return byteToString(md.digest(strObj.getBytes()));
+		return byteToString(md.digest(strObj.getBytes("UTF-8")));
 	}
+
 }

+ 7 - 0
tooth-wechat-interface/src/main/java/com/iamberry/wechat/face/order/AdminOrderService.java

@@ -23,10 +23,17 @@ public interface AdminOrderService {
 	//后台订单列表查询
 	public List<Order> selectShopOrder(Order order);
 
+	//菠萝派查询单个订单
+	public Order selectShopOrderByPolaById(String orderId);
 	//菠萝派查询订单
 	public List<Order> selectShopOrderByPola(Order order);
 	//菠萝派根据订单id查询订单项
 	public List<OrderItem> getShopOrderItemByOrderIdToPola(String orderId);
+	//菠萝派查询订单
+	public Integer selectOrderNum(Order order);
+	//菠萝派修改订单
+	public Integer updateOrderByPola(Order order);
+
 
 	//根据页面条件查询订单列表
 	public List<Order> selectShopOrderByOrderId(Order order);

+ 6 - 0
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/AdminOrderMapper.java

@@ -28,10 +28,16 @@ public interface AdminOrderMapper {
 	//根据页面条件查询订单列表
 	public List<Order> selectShopOrderByOrderId(Order order);
 
+	//菠萝派查询单个订单
+	public Order selectShopOrderByPolaById(String orderId);
 	//菠萝派查询订单
 	public List<Order> selectShopOrderByPola(Order order);
 	//菠萝派根据订单id查询订单项
 	public List<OrderItem> getShopOrderItemByOrderIdToPola(String orderId);
+	//菠萝派查询订单
+	public Integer selectOrderNum(Order order);
+	//菠萝派修改订单
+	public Integer updateOrderByPola(Order order);
 
 	//根据订单id查询订单
 	public Order getShopOrderByOrderId(String orderId);

+ 338 - 266
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/adminOrderMapper.xml

@@ -9,7 +9,7 @@ PUBLIC
 <mapper namespace="com.iamberry.wechat.service.mapper.AdminOrderMapper">
 	<!-- 后台订单返利信息查询 -->
 	<select id="selectOrderRebackByOrderId" parameterType="String" resultType="OrderRebackMoney">
-		
+
 		SELECT ( SELECT place_openid FROM tb_iamberry_place_info b WHERE b.place_id = a.logs_place_id
 		) name ,
 		 (SELECT place_username FROM tb_iamberry_place_info b WHERE b.place_id = a.logs_place_id
@@ -18,19 +18,19 @@ PUBLIC
 		SELECT role_name FROM tb_iamberry_place_role WHERE role_id = (
 		SELECT Place_role_id FROM tb_iamberry_place_info b WHERE b.place_id = a.logs_place_id)
 		) role,
-		logs_num money,logs_create_date TIME,logs_introduction remark FROM tb_iamberry_place_logs a WHERE logs_introduction LIKE  CONCAT('%',#{orderId},'%') 
+		logs_num money,logs_create_date TIME,logs_introduction remark FROM tb_iamberry_place_logs a WHERE logs_introduction LIKE  CONCAT('%',#{orderId},'%')
 		UNION ALL
-		SELECT 
+		SELECT
 		(SELECT b.user_openid
 		 FROM   tb_iamberry_user_userinfo b WHERE b.user_openid = a.cash_logs_openid
 		) name,(SELECT b.user_nickname
 		 FROM   tb_iamberry_user_userinfo b WHERE b.user_openid = a.cash_logs_openid
 		)  account
 		,'微代理'  role
-		,cash_logs_num money,cash_logs_create_date TIME,cash_logs_introduction remark FROM tb_iamberry_user_cash_logs  a WHERE cash_logs_orderid =#{orderId} 
+		,cash_logs_num money,cash_logs_create_date TIME,cash_logs_introduction remark FROM tb_iamberry_user_cash_logs  a WHERE cash_logs_orderid =#{orderId}
 		AND cash_logs_type = 1
-		AND cash_logs_res_type = 4 
-		
+		AND cash_logs_res_type = 4
+
 	</select>
 
 	<!--查询未发货数量-->
@@ -44,50 +44,50 @@ PUBLIC
 
 	<!-- 后台订单列表查询 -->
 	<select id="selectShopOrder" parameterType="Order" resultType="Order">
-		SELECT O.SALES_ORDERID salesOrderid, O.SALES_ADDRESS_NAME salesAddressName, 
-			U.USER_NICKNAME userNickname, O.SALES_ADDRESS_TEL salesAddressTel,  
-			O.SALES_AMOUNT salesAmount, O.SALES_RATE_AMOUNT salesRateAmount, 
-			O.SALES_INTEGRAL_NUM salesIntegralNum, O.SALES_YET_AMOUNT salesYetAmount, 
-			O.SALES_STATUS salesStatus, O.SALES_CREATE_DATE salesCreateDate, 
+		SELECT O.SALES_ORDERID salesOrderid, O.SALES_ADDRESS_NAME salesAddressName,
+			U.USER_NICKNAME userNickname, O.SALES_ADDRESS_TEL salesAddressTel,
+			O.SALES_AMOUNT salesAmount, O.SALES_RATE_AMOUNT salesRateAmount,
+			O.SALES_INTEGRAL_NUM salesIntegralNum, O.SALES_YET_AMOUNT salesYetAmount,
+			O.SALES_STATUS salesStatus, O.SALES_CREATE_DATE salesCreateDate,
 			O.SALES_POST_NUM salesPostNum,O.SALES_POST_FIRM salesPostFirm,
-			O.SALES_ADMIN_REMARK salesAdminRemark, O.SALES_COLOR_TYPE salesColorType, 
+			O.SALES_ADMIN_REMARK salesAdminRemark, O.SALES_COLOR_TYPE salesColorType,
 			O.SALES_USER_REMARK salesUserRemark,O.SALES_IS_RFUND salesIsRfund,
-			P.PLACE_NAME storesName, 
+			P.PLACE_NAME storesName,
 			PP.PLACE_NAME vipName,
 			PP.PLACE_ROLE_ID vipRole,
 			PP.PLACE_OPENID placeOpenID,
 			U.USER_RES_TYPE userResource,
 			(SELECT IFNULL(SUM(reback_money),0) FROM tb_iamberry_reback WHERE reback_orderid = O.SALES_ORDERID and Reback_status  = 2) placeId
-		FROM 
-			TB_IAMBERRY_SHOP_SALES_ORDER O 
-		LEFT JOIN 
-			TB_IAMBERRY_USER_USERINFO U 
-		ON 
-			O.SALES_OPENID = U.USER_OPENID 
+		FROM
+			TB_IAMBERRY_SHOP_SALES_ORDER O
+		LEFT JOIN
+			TB_IAMBERRY_USER_USERINFO U
+		ON
+			O.SALES_OPENID = U.USER_OPENID
 			<!-- 根据用户信息中的dealers查询对应的关系 -->
-		LEFT JOIN 
-			TB_IAMBERRY_DEALERS D 
-		ON 
+		LEFT JOIN
+			TB_IAMBERRY_DEALERS D
+		ON
 			U.USER_DEALERS = D.DEALER_ID
 			<!-- 查询用户关系对应的商户 -->
-		LEFT JOIN 
-			TB_IAMBERRY_PLACE_INFO P 
-		ON 
+		LEFT JOIN
+			TB_IAMBERRY_PLACE_INFO P
+		ON
 			D.DEALER_ID = P.PLACE_PIDS
 			<!-- 查询商户的上级,也就是门店 -->
-		LEFT JOIN 
-			TB_IAMBERRY_PLACE_INFO PP 
+		LEFT JOIN
+			TB_IAMBERRY_PLACE_INFO PP
 		ON
 			P.PLACE_PID = PP.PLACE_ID
-		WHERE 
-			O.SALES_ORDER_TYPE = 1 
+		WHERE
+			O.SALES_ORDER_TYPE = 1
 			<if test="salesStatus != null and salesStatus != -1">
-				AND O.SALES_STATUS = #{salesStatus} 
+				AND O.SALES_STATUS = #{salesStatus}
 			</if>
 			<if test="salesOrderid != null and salesOrderid!=''">
-				AND O.SALES_ORDERID = #{salesOrderid} 
+				AND O.SALES_ORDERID = #{salesOrderid}
 			</if>
-		ORDER BY O.SALES_CREATE_DATE DESC 
+		ORDER BY O.SALES_CREATE_DATE DESC
 		LIMIT ${page.recordBegin},${page.pageSize}
 	</select>
 
@@ -102,195 +102,195 @@ PUBLIC
 		LIMIT
 			0, 1
 	</select>
-	
+
 	<select id="selectShopOrderByOrderId" parameterType="Order" resultType="Order">
-		SELECT O.SALES_ORDERID salesOrderid, O.SALES_ADDRESS_NAME salesAddressName, 
-			U.USER_NICKNAME userNickname, O.SALES_ADDRESS_TEL salesAddressTel,  
-			O.SALES_AMOUNT salesAmount, O.SALES_RATE_AMOUNT salesRateAmount, 
-			O.SALES_INTEGRAL_NUM salesIntegralNum, O.SALES_YET_AMOUNT salesYetAmount, 
-			O.SALES_STATUS salesStatus, O.SALES_CREATE_DATE salesCreateDate, 
+		SELECT O.SALES_ORDERID salesOrderid, O.SALES_ADDRESS_NAME salesAddressName,
+			U.USER_NICKNAME userNickname, O.SALES_ADDRESS_TEL salesAddressTel,
+			O.SALES_AMOUNT salesAmount, O.SALES_RATE_AMOUNT salesRateAmount,
+			O.SALES_INTEGRAL_NUM salesIntegralNum, O.SALES_YET_AMOUNT salesYetAmount,
+			O.SALES_STATUS salesStatus, O.SALES_CREATE_DATE salesCreateDate,
 			O.SALES_ADMIN_REMARK salesAdminRemark, O.SALES_COLOR_TYPE salesColorType,
 			o.sales_post_num salesPostNum,o.sales_post_firm salesPostFirm,
 			O.SALES_USER_REMARK salesUserRemark, O.SALES_IS_RFUND salesIsRfund
-		FROM 
-			TB_IAMBERRY_SHOP_SALES_ORDER O LEFT JOIN TB_IAMBERRY_USER_USERINFO U 
-		ON O.SALES_OPENID = U.USER_OPENID 
+		FROM
+			TB_IAMBERRY_SHOP_SALES_ORDER O LEFT JOIN TB_IAMBERRY_USER_USERINFO U
+		ON O.SALES_OPENID = U.USER_OPENID
 		<where>
 			<if test="salesStatus != null and salesStatus != -1">
-				O.SALES_STATUS = #{salesStatus} 
+				O.SALES_STATUS = #{salesStatus}
 			</if>
 			<if test="salesOrderid != null and salesOrderid!=''">
-				AND O.SALES_ORDERID LIKE CONCAT('%',#{salesOrderid},'%') 
+				AND O.SALES_ORDERID LIKE CONCAT('%',#{salesOrderid},'%')
 			</if>
 			<if test="salesAddressName != null and salesAddressName != ''">
-				AND O.SALES_ADDRESS_NAME LIKE CONCAT('%',#{salesAddressName},'%') 
+				AND O.SALES_ADDRESS_NAME LIKE CONCAT('%',#{salesAddressName},'%')
 			</if>
 			<if test="salesAddressTel != null and salesAddressTel != ''">
-				AND O.SALES_ADDRESS_TEL LIKE CONCAT('%',#{salesAddressTel},'%') 
+				AND O.SALES_ADDRESS_TEL LIKE CONCAT('%',#{salesAddressTel},'%')
 			</if>
 			<if test="salesAddressInfo != null and salesAddressInfo != ''">
-				AND O.SALES_ADDRESS_INFO LIKE CONCAT('%',#{salesAddressInfo},'%') 
+				AND O.SALES_ADDRESS_INFO LIKE CONCAT('%',#{salesAddressInfo},'%')
 			</if>
 			<if test="beginDate != null">
-				<![CDATA[AND DATE_FORMAT(O.SALES_CREATE_DATE, '%Y-%m-%d') >= ]]>DATE_FORMAT(#{beginDate},'%Y-%m-%d') 
+				<![CDATA[AND DATE_FORMAT(O.SALES_CREATE_DATE, '%Y-%m-%d') >= ]]>DATE_FORMAT(#{beginDate},'%Y-%m-%d')
 			</if>
 			<if test="endDate != null">
-				<![CDATA[AND DATE_FORMAT(O.SALES_CREATE_DATE, '%Y-%m-%d') <= ]]>DATE_FORMAT(#{endDate},'%Y-%m-%d') 
+				<![CDATA[AND DATE_FORMAT(O.SALES_CREATE_DATE, '%Y-%m-%d') <= ]]>DATE_FORMAT(#{endDate},'%Y-%m-%d')
 			</if>
 		</where>
-		ORDER BY O.SALES_CREATE_DATE DESC 
+		ORDER BY O.SALES_CREATE_DATE DESC
 		LIMIT ${page.recordBegin},${page.pageSize}
 	</select>
-	
+
 	<!-- 根据条件获取查询数量 -->
 	<select id="selectShopOrderCount" parameterType="Order" resultType="int">
-		SELECT 
-			COUNT(O.SALES_ORDERID)  
-		FROM 
-			TB_IAMBERRY_SHOP_SALES_ORDER O LEFT JOIN TB_IAMBERRY_USER_USERINFO U 
-		ON O.SALES_OPENID = U.USER_OPENID 
-		WHERE 
-			O.SALES_ORDER_TYPE = 1 
+		SELECT
+			COUNT(O.SALES_ORDERID)
+		FROM
+			TB_IAMBERRY_SHOP_SALES_ORDER O LEFT JOIN TB_IAMBERRY_USER_USERINFO U
+		ON O.SALES_OPENID = U.USER_OPENID
+		WHERE
+			O.SALES_ORDER_TYPE = 1
 			<if test="salesStatus != null and salesStatus != -1">
-				 AND O.SALES_STATUS = #{salesStatus} 
+				 AND O.SALES_STATUS = #{salesStatus}
 			</if>
 			<if test="salesOrderid != null and salesOrderid!=''">
-				AND O.SALES_ORDERID LIKE CONCAT('%',#{salesOrderid},'%') 
+				AND O.SALES_ORDERID LIKE CONCAT('%',#{salesOrderid},'%')
 			</if>
 			<if test="salesAddressName != null and salesAddressName != ''">
-				AND O.SALES_ADDRESS_NAME LIKE CONCAT('%',#{salesAddressName},'%') 
+				AND O.SALES_ADDRESS_NAME LIKE CONCAT('%',#{salesAddressName},'%')
 			</if>
 			<if test="salesAddressTel != null and salesAddressTel != ''">
-				AND O.SALES_ADDRESS_TEL LIKE CONCAT('%',#{salesAddressTel},'%') 
+				AND O.SALES_ADDRESS_TEL LIKE CONCAT('%',#{salesAddressTel},'%')
 			</if>
 			<if test="salesAddressInfo != null and salesAddressInfo != ''">
-				AND O.SALES_ADDRESS_INFO LIKE CONCAT('%',#{salesAddressInfo},'%') 
+				AND O.SALES_ADDRESS_INFO LIKE CONCAT('%',#{salesAddressInfo},'%')
 			</if>
 			<if test="beginDate != null">
-				<![CDATA[AND DATE_FORMAT(O.SALES_CREATE_DATE, '%Y-%m-%d') >= ]]>DATE_FORMAT(#{beginDate},'%Y-%m-%d') 
+				<![CDATA[AND DATE_FORMAT(O.SALES_CREATE_DATE, '%Y-%m-%d') >= ]]>DATE_FORMAT(#{beginDate},'%Y-%m-%d')
 			</if>
 			<if test="endDate != null">
-				<![CDATA[AND DATE_FORMAT(O.SALES_CREATE_DATE, '%Y-%m-%d') <= ]]>DATE_FORMAT(#{endDate},'%Y-%m-%d') 
+				<![CDATA[AND DATE_FORMAT(O.SALES_CREATE_DATE, '%Y-%m-%d') <= ]]>DATE_FORMAT(#{endDate},'%Y-%m-%d')
 			</if>
 	</select>
-			
+
 	<!-- 根据orderId查询订单信息 -->
 	<select id="getShopOrderByOrderId" parameterType="String" resultType="Order">
-		SELECT O.SALES_ORDERID salesOrderid, U.USER_NICKNAME userNickname, O.SALES_STATUS salesStatus, 
-			O.SALES_YET_AMOUNT salesYetAmount, O.SALES_INTEGRAL_NUM salesIntegralNum, O.SALES_RATE_AMOUNT salesRateAmount, 
-			O.SALES_POST_FIRM salesPostFirm, O.SALES_POST_NUM salesPostNum, O.SALES_CREATE_DATE salesCreateDate, 
-			O.SALES_ADDRESS_POSTNUM salesAddressPostnum,  O.SALES_REWARD_INTEGRAL_NUM salesRewardIntegralNum, 
-			O.SALES_ADDRESS_NAME salesAddressName, O.SALES_ADDRESS_TEL salesAddressTel, O.SALES_SEND_DATE salesSendDate, 
-			O.SALES_USER_REMARK salesUserRemark, O.SALES_COLOR_TYPE salesColorType, O.SALES_ADMIN_REMARK salesAdminRemark, 
+		SELECT O.SALES_ORDERID salesOrderid, U.USER_NICKNAME userNickname, O.SALES_STATUS salesStatus,
+			O.SALES_YET_AMOUNT salesYetAmount, O.SALES_INTEGRAL_NUM salesIntegralNum, O.SALES_RATE_AMOUNT salesRateAmount,
+			O.SALES_POST_FIRM salesPostFirm, O.SALES_POST_NUM salesPostNum, O.SALES_CREATE_DATE salesCreateDate,
+			O.SALES_ADDRESS_POSTNUM salesAddressPostnum,  O.SALES_REWARD_INTEGRAL_NUM salesRewardIntegralNum,
+			O.SALES_ADDRESS_NAME salesAddressName, O.SALES_ADDRESS_TEL salesAddressTel, O.SALES_SEND_DATE salesSendDate,
+			O.SALES_USER_REMARK salesUserRemark, O.SALES_COLOR_TYPE salesColorType, O.SALES_ADMIN_REMARK salesAdminRemark,
 			O.SALES_RETURN_DES salesReturnDes, O.SALES_ADDRESS_INFO salesAddressInfo, O.SALES_RETURN_DATE salesReturnDate,
-			O.SALES_AMOUNT salesAmount, O.SALES_TRANSACTION_DATE salesTransactionDate, O.SALES_OPENID salesOpenid, 
+			O.SALES_AMOUNT salesAmount, O.SALES_TRANSACTION_DATE salesTransactionDate, O.SALES_OPENID salesOpenid,
 			O.SALES_COUPON_RECEIVE_ID couponId, O.SALES_BALANCE_AMOUNT balancePayAmount, O.SALES_IS_RFUND salesIsRfund
-		FROM 
-			TB_IAMBERRY_SHOP_SALES_ORDER O LEFT JOIN TB_IAMBERRY_USER_USERINFO U 
-			ON O.SALES_OPENID = U.USER_OPENID 
-		WHERE 
-			O.SALES_ORDERID = #{0} 
-		AND 
-			O.SALES_ORDER_TYPE = 1 
-	</select>
-	
+		FROM
+			TB_IAMBERRY_SHOP_SALES_ORDER O LEFT JOIN TB_IAMBERRY_USER_USERINFO U
+			ON O.SALES_OPENID = U.USER_OPENID
+		WHERE
+			O.SALES_ORDERID = #{0}
+		AND
+			O.SALES_ORDER_TYPE = 1
+	</select>
+
 	<!-- 根据orderId获取订单项数据 -->
 	<select id="getShopOrderItemByOrderId" parameterType="String" resultType="OrderItem">
-		SELECT I.ITEM_PRODUCT_NAME itemProductName, I.ITEM_PRODUCT_PIC itemProductPic, I.ITEM_PRODUCT_PRICE itemProductPrice, 
+		SELECT I.ITEM_PRODUCT_NAME itemProductName, I.ITEM_PRODUCT_PIC itemProductPic, I.ITEM_PRODUCT_PRICE itemProductPrice,
 			I.ITEM_PRODUCT_DISCOUNT itemProductDiscount, I.ITEM_NUM itemNum, I.ITEM_TOTAL itemTotal, C.COLOR_NAME productColor,
 			C.COLOR_69CODE produectRemark, I.ITEM_PRODUCT_TYPE itemProductType
-		FROM 
-			TB_IAMBERRY_SHOP_ORDER_ITEM I LEFT JOIN TB_IAMBERRY_PRODUCT_INFO P 
-			ON I.ITEM_PRODUCT_ID = P.PRODUCT_ID 
-			LEFT JOIN TB_IAMBERRY_PRODUCT_COLOR C ON I.ITEM_COLOR_ID = C.COLOR_ID 
-		WHERE 
-			ITEM_SALES_ORDERID = #{0} 
+		FROM
+			TB_IAMBERRY_SHOP_ORDER_ITEM I LEFT JOIN TB_IAMBERRY_PRODUCT_INFO P
+			ON I.ITEM_PRODUCT_ID = P.PRODUCT_ID
+			LEFT JOIN TB_IAMBERRY_PRODUCT_COLOR C ON I.ITEM_COLOR_ID = C.COLOR_ID
+		WHERE
+			ITEM_SALES_ORDERID = #{0}
 		ORDER BY ITEM_ID DESC
 	</select>
-	
+
 	<!-- 根据orderId查询订单状态 -->
 	<select id="selectOrderStatusByOrderId" parameterType="String" resultType="Order">
-		SELECT 
-			SALES_STATUS salesStatus, SALES_PROXY_REWARD salesProxyReward, 
+		SELECT
+			SALES_STATUS salesStatus, SALES_PROXY_REWARD salesProxyReward,
 			SALES_POST_FIRM salesPostFirm, SALES_POST_NUM salesPostNum ,
 			sales_openid salesOpenid, SALES_IS_RFUND salesIsRfund,
 			SALES_YET_AMOUNT salesYetAmount, sales_return_des salesReturnDes,
 			SALES_ADDRESS_INFO salesAddressInfo
-		FROM 
+		FROM
 			TB_IAMBERRY_SHOP_SALES_ORDER
-		WHERE 
+		WHERE
 			SALES_ORDERID = #{salesOrderid}
 	</select>
-	
+
 	<!-- 根据orderId修改订单状态 -->
 	<update id="updateOrderStatusByOrderId" parameterType="Order">
-		UPDATE 
-			TB_IAMBERRY_SHOP_SALES_ORDER 
-		SET 
+		UPDATE
+			TB_IAMBERRY_SHOP_SALES_ORDER
+		SET
 			<if test="salesChangeOrderid != null and salesChangeOrderid != ''">
 				SALES_CHANGE_ORDERID = #{salesChangeOrderid},
 			</if>
 			<if test="salesAuditRemark != null and salesAuditRemark != ''">
 				SALES_AUDIT_REMARK = #{salesAuditRemark},
 			</if>
-			SALES_STATUS = #{salesStatus} 
-		WHERE 
-			SALES_ORDERID = #{salesOrderid} 
-		AND 
-			SALES_STATUS = #{oldStatus} 
+			SALES_STATUS = #{salesStatus}
+		WHERE
+			SALES_ORDERID = #{salesOrderid}
+		AND
+			SALES_STATUS = #{oldStatus}
 	</update>
-	
+
 	<!-- 根据orderId修改订单状态 -->
 	<update id="updateOrderStatusByOrderIdAndToStatus" parameterType="Order">
-		UPDATE 
-			TB_IAMBERRY_SHOP_SALES_ORDER 
-		SET 
-			SALES_STATUS = #{salesStatus} 
-		WHERE 
+		UPDATE
+			TB_IAMBERRY_SHOP_SALES_ORDER
+		SET
+			SALES_STATUS = #{salesStatus}
+		WHERE
 			SALES_ORDERID = #{salesOrderid} AND SALES_STATUS = #{salesOpenid}
 	</update>
-	
+
 	<!-- 根据orderid添加发货信息并修改状态 -->
 	<update id="deliverOrderByOrderId" parameterType="Order">
-		UPDATE 
-			TB_IAMBERRY_SHOP_SALES_ORDER 
-		SET 
-			SALES_STATUS = #{salesStatus}, 
-			SALES_POST_NUM = #{salesPostNum}, 
-			SALES_POST_FIRM = #{salesPostFirm}, 
-			SALES_SEND_DATE = NOW() 
-		WHERE 
+		UPDATE
+			TB_IAMBERRY_SHOP_SALES_ORDER
+		SET
+			SALES_STATUS = #{salesStatus},
+			SALES_POST_NUM = #{salesPostNum},
+			SALES_POST_FIRM = #{salesPostFirm},
+			SALES_SEND_DATE = NOW()
+		WHERE
 			SALES_ORDERID = #{salesOrderid}
 	</update>
-	
+
 	<!-- 根据orderid添加发货信息并修改状态 -->
 	<update id="updateOrderDeliver" parameterType="Order">
-		UPDATE 
-			TB_IAMBERRY_SHOP_SALES_ORDER 
-		SET 
-			SALES_STATUS = #{salesStatus}, 
-			SALES_POST_NUM = #{salesPostNum}, 
-			SALES_POST_FIRM = #{salesPostFirm}, 
-			SALES_SEND_DATE = NOW() 
-		WHERE 
-			SALES_ORDERID = #{salesOrderid} 
-		AND 
+		UPDATE
+			TB_IAMBERRY_SHOP_SALES_ORDER
+		SET
+			SALES_STATUS = #{salesStatus},
+			SALES_POST_NUM = #{salesPostNum},
+			SALES_POST_FIRM = #{salesPostFirm},
+			SALES_SEND_DATE = NOW()
+		WHERE
+			SALES_ORDERID = #{salesOrderid}
+		AND
 			SALES_STATUS = #{oldStatus}
 	</update>
-	
+
 	<!-- 修改订单的备注信息 -->
 	<update id="updateOrderAdminRemarkByOrderId" parameterType="Order" >
-		UPDATE 
-			TB_IAMBERRY_SHOP_SALES_ORDER 
+		UPDATE
+			TB_IAMBERRY_SHOP_SALES_ORDER
 		<set>
 			<if test="salesColorType != null and salesColorType != ''">
-				SALES_COLOR_TYPE = #{salesColorType}, 
+				SALES_COLOR_TYPE = #{salesColorType},
 			</if>
 			<if test="salesAdminRemark != null and salesAdminRemark != ''">
 				SALES_ADMIN_REMARK = #{salesAdminRemark}
 			</if>
 		</set>
-		WHERE 
+		WHERE
 			SALES_ORDERID = #{salesOrderid}
 	</update>
 
@@ -306,26 +306,26 @@ PUBLIC
 		WHERE
 		SALES_ORDERID = #{salesOrderid}
 	</update>
-	
+
 	<!-- 查询订单中没有奖励积分的数据 -->
 	<select id="selectOrderByIntegral" resultType="Order" resultMap="orderMap">
-		SELECT 
-			O.SALES_ORDERID, 
-			O.SALES_OPENID, 
-			O.SALES_AMOUNT, 
-			O.SALES_REWARD_INTEGRAL_NUM  
-		FROM 
-			TB_IAMBERRY_SHOP_SALES_ORDER O 
-		WHERE 
-			O.SALES_PROXY_REWARD = 1 
-		AND 
+		SELECT
+			O.SALES_ORDERID,
+			O.SALES_OPENID,
+			O.SALES_AMOUNT,
+			O.SALES_REWARD_INTEGRAL_NUM
+		FROM
+			TB_IAMBERRY_SHOP_SALES_ORDER O
+		WHERE
+			O.SALES_PROXY_REWARD = 1
+		AND
 			<![CDATA[ TIMESTAMPDIFF(SECOND,O.SALES_SEND_DATE,NOW()) >= #{deadline} ]]>
-		AND 
-			O.SALES_STATUS = 5 
-		ORDER BY O.SALES_SEND_DATE ASC 
+		AND
+			O.SALES_STATUS = 5
+		ORDER BY O.SALES_SEND_DATE ASC
 		LIMIT ${page.recordBegin},${page.pageSize}
 	</select>
-	
+
 	<resultMap type="com.iamberry.wechat.core.entity.order.Order" id="orderMap">
 		<id column="SALES_ORDERID" property="salesOrderid"/>
 		<result column="SALES_OPENID" property="salesOpenid"/>
@@ -333,79 +333,79 @@ PUBLIC
 		<result column="SALES_REWARD_INTEGRAL_NUM" property="salesRewardIntegralNum"/>
 		<collection property="orderItemList" column="SALES_ORDERID" ofType="com.iamberry.wechat.core.entity.order.OrderItem" select="selectOrderItem"/>
 	</resultMap>
-	
+
 	<!-- 查询订单的订单项 -->
 	<select id="selectOrderItem" parameterType="String" resultType="com.iamberry.wechat.core.entity.order.OrderItem">
-		SELECT I.ITEM_ID itemId, 
-			I.ITEM_SALES_ORDERID itemSalesOrderid, I.ITEM_PRODUCT_NAME itemProductName, 
-			I.ITEM_NUM itemNum, I.ITEM_PRODUCT_TYPE itemProductType 
-		FROM 
-			TB_IAMBERRY_SHOP_ORDER_ITEM I 
-		WHERE 
-			I.ITEM_SALES_ORDERID = #{itemSalesOrderid} 
+		SELECT I.ITEM_ID itemId,
+			I.ITEM_SALES_ORDERID itemSalesOrderid, I.ITEM_PRODUCT_NAME itemProductName,
+			I.ITEM_NUM itemNum, I.ITEM_PRODUCT_TYPE itemProductType
+		FROM
+			TB_IAMBERRY_SHOP_ORDER_ITEM I
+		WHERE
+			I.ITEM_SALES_ORDERID = #{itemSalesOrderid}
 		ORDER BY I.ITEM_ID DESC
 	</select>
-	
-	
+
+
 	<!-- 通过openid查询用户购买商品的渠道 -->
 	<select id="getUserByOpenId" parameterType="String" resultType="Member">
-		SELECT 
+		SELECT
 			USER_RES_TYPE userResType,
-			USER_ID userId, 
+			USER_ID userId,
 			USER_OPENID userOpenid,
 			USER_INTEGRAL userIntegral,
 			USER_INCOME userIncome,
 			USER_DEALERS userDealers,
 			USER_TEMPLATE_ID templateId,
-			USER_SURPLUS_INTEGRAL userSurplusIntegral 
-		FROM 
-			TB_IAMBERRY_USER_USERINFO 
-		WHERE 
+			USER_SURPLUS_INTEGRAL userSurplusIntegral
+		FROM
+			TB_IAMBERRY_USER_USERINFO
+		WHERE
 			USER_OPENID = #{openId}
 	</select>
-	
+
 	<!-- 根据推荐人id查询推荐人信息 -->
 	<select id="getUserByUserRefereeid" parameterType="Integer" resultType="Member">
-		SELECT 
+		SELECT
 			USER_OPENID userOpenid,
 			USER_INTEGRAL userIntegral,
 			USER_INCOME userIncome,
-			USER_SURPLUS_INTEGRAL userSurplusIntegral 
-		FROM 
-			TB_IAMBERRY_USER_USERINFO 
-		WHERE 
+			USER_SURPLUS_INTEGRAL userSurplusIntegral
+		FROM
+			TB_IAMBERRY_USER_USERINFO
+		WHERE
 			USER_ID = #{userId}
 	</select>
-	
+
 	<!-- 根据userid修改会员表信息 -->
 	<update id="updateUserByUserId" parameterType="Member">
-		UPDATE 
-			TB_IAMBERRY_USER_USERINFO 
-		SET 
-			USER_INCOME =(USER_INCOME + #{userIncome}) 
+		UPDATE
+			TB_IAMBERRY_USER_USERINFO
+		SET
+			USER_INCOME =(USER_INCOME + #{userIncome})
 		<where>
 			<if test="userId != null and userId != ''">
-				USER_ID = #{userId} 
+				USER_ID = #{userId}
 			</if>
 			<if test="userOpenid != null and userOpenid != ''">
 				AND USER_OPENID = #{userOpenid}
 			</if>
 		</where>
 	</update>
-	
+
 	<update id="updatePlaceInfo" parameterType="PlaceInfo">
-	     update 
-	     	tb_iamberry_place_info 
-	     SET 
-	          PLACE_AMOUNT =(PLACE_AMOUNT + #{amount}) 
-	      WHERE 
+	     update
+	     	tb_iamberry_place_info
+	     SET
+	          PLACE_AMOUNT =(PLACE_AMOUNT + #{amount})
+	      WHERE
 	     	PLACE_ID = #{id}
 	      AND
 	      	<![CDATA[PLACE_AMOUNT + #{amount} >= 0]]>
 	</update>
-     
+
      <select id="getPlaceInfoByPlaceId" parameterType="integer" resultType="PlaceInfo">
-		SELECT 
+		SELECT
 			PLACE_ID id,
 			PLACE_SUPPER_ID supperId,
 			PLACE_NAME  name,
@@ -418,123 +418,123 @@ PUBLIC
 			PLACE_OPENID  openid,
 			PLACE_ROLE_ID roleId,
 			PLACE_PID  placePid ,
-			PLACE_INIT_CODE  initCode 
+			PLACE_INIT_CODE  initCode
         FROM tb_iamberry_place_info WHERE place_id = #{appid}
 	</select>
-	
+
 	<!-- 根据id查询系统规则表信息 -->
 	<select id="getReluByRid" parameterType="Integer" resultType="ShopSystemRule">
 		SELECT R_NUM ruleNum,r_desc ruleDesc, R_TYPE ruleType FROM TB_IAMBERRY_ADMIN_RELU WHERE R_ID = #{rId}
 	</select>
-	
+
 	<!-- 根据类型查询系统推责表信息 -->
 	<select id="getReluByRtype" parameterType="Integer" resultType="ShopSystemRule">
-		SELECT R_NUM ruleNum FROM TB_IAMBERRY_ADMIN_RELU WHERE R_TYPE = #{ruleType} 
+		SELECT R_NUM ruleNum FROM TB_IAMBERRY_ADMIN_RELU WHERE R_TYPE = #{ruleType}
 	</select>
-	
+
 	<!-- 查询订单表中有多少是可以奖励积分的单的数量 -->
 	<select id="getOrderNum"  resultType="Integer" parameterType="Order">
-		SELECT 
-			COUNT(SALES_ORDERID) 
-		FROM 
-			TB_IAMBERRY_SHOP_SALES_ORDER O 
-		WHERE 
-			O.SALES_PROXY_REWARD = 1 
-		AND 
-			<![CDATA[ TIMESTAMPDIFF(SECOND,O.SALES_SEND_DATE,NOW()) >= #{deadline} ]]> 
-		AND 
-			O.SALES_STATUS = 5 
-		ORDER BY O.SALES_SEND_DATE ASC 
-	</select>
-	
+		SELECT
+			COUNT(SALES_ORDERID)
+		FROM
+			TB_IAMBERRY_SHOP_SALES_ORDER O
+		WHERE
+			O.SALES_PROXY_REWARD = 1
+		AND
+			<![CDATA[ TIMESTAMPDIFF(SECOND,O.SALES_SEND_DATE,NOW()) >= #{deadline} ]]>
+		AND
+			O.SALES_STATUS = 5
+		ORDER BY O.SALES_SEND_DATE ASC
+	</select>
+
 	<!-- 对客户进行积分奖励 -->
 	<update id="updateOrderIntegral" parameterType="String">
-		UPDATE 
-			TB_IAMBERRY_SHOP_SALES_ORDER 
-		SET 
-			SALES_PROXY_REWARD = 2, 
-			SALES_STATUS = 12 
-		WHERE 
+		UPDATE
+			TB_IAMBERRY_SHOP_SALES_ORDER
+		SET
+			SALES_PROXY_REWARD = 2,
+			SALES_STATUS = 12
+		WHERE
 			SALES_ORDERID = #{0}
 	</update>
-	
+
 	<!-- 根据规定的订单关闭时间查询大于该时间且是待支付的订单 -->
 	<select id="getOrderByCreateTime" resultType="Order" parameterType="Order">
-		SELECT 
-			T.SALES_ORDERID salesOrderid,T.SALES_COUPON_RECEIVE_ID couponId,T.SALES_OPENID salesOpenid 
-			
-		FROM 
-			TB_IAMBERRY_SHOP_SALES_ORDER T 
-		WHERE 
-			T.SALES_STATUS = 1 
-		AND 
-			<![CDATA[ TIMESTAMPDIFF(SECOND,T.SALES_CREATE_DATE,NOW()) >= #{deadline} ]]> 
-	</select>
-	
+		SELECT
+			T.SALES_ORDERID salesOrderid,T.SALES_COUPON_RECEIVE_ID couponId,T.SALES_OPENID salesOpenid
+
+		FROM
+			TB_IAMBERRY_SHOP_SALES_ORDER T
+		WHERE
+			T.SALES_STATUS = 1
+		AND
+			<![CDATA[ TIMESTAMPDIFF(SECOND,T.SALES_CREATE_DATE,NOW()) >= #{deadline} ]]>
+	</select>
+
 	<!-- 根据规定的订单关闭时间查询大于该时间且是待支付的订单 -->
 	<select id="getOrderByCreateTimeAndFiveMinutes" resultType="Order" parameterType="Order">
-		
-			SELECT 
+
+			SELECT
 				T.SALES_ORDERID salesOrderid,T.SALES_OPENID salesOpenid ,
 				T.SALES_CREATE_DATE salesCreateDate
-			FROM 
-				TB_IAMBERRY_SHOP_SALES_ORDER T 
-			WHERE 
-				T.SALES_STATUS = 1 
-			AND 
-				<![CDATA[  #{deadline}-TIMESTAMPDIFF(SECOND,T.SALES_CREATE_DATE,NOW()) <= 900 ]]> 
-	</select>
-	
-	
+			FROM
+				TB_IAMBERRY_SHOP_SALES_ORDER T
+			WHERE
+				T.SALES_STATUS = 1
+			AND
+				<![CDATA[  #{deadline}-TIMESTAMPDIFF(SECOND,T.SALES_CREATE_DATE,NOW()) <= 900 ]]>
+	</select>
+
+
 	<!-- 根据orderId修改订单状态,关闭订单 -->
 	<update id="updateOrderByOrderId" parameterType="java.util.List">
-		UPDATE 
-			TB_IAMBERRY_SHOP_SALES_ORDER 
-		SET 
-			SALES_STATUS = 0 
-		WHERE 
+		UPDATE
+			TB_IAMBERRY_SHOP_SALES_ORDER
+		SET
+			SALES_STATUS = 0
+		WHERE
 			SALES_ORDERID  IN (
 				<foreach collection="list" item="item" separator=",">
-					#{item} 
-		        </foreach>) 
+					#{item}
+		        </foreach>)
 	</update>
-	
-		
+
+
 	<!-- 获取某个订单的所有产品的总个数 -->
   <select id="getItemsNumByOrderId"  parameterType="string" resultType="com.iamberry.wechat.core.entity.order.OrderItem">
-    select 
+    select
     	sum(g.item_num) itemNum,
-    	c.color_69code produectRemark 
-    from 
-    	tb_iamberry_shop_order_item g  LEFT JOIN tb_iamberry_product_color c on g.item_color_id = c.color_id 
-    where 
-		g.item_sales_orderid=#{id} 
-	GROUP BY 
+    	c.color_69code produectRemark
+    from
+    	tb_iamberry_shop_order_item g  LEFT JOIN tb_iamberry_product_color c on g.item_color_id = c.color_id
+    where
+		g.item_sales_orderid=#{id}
+	GROUP BY
 		c.color_69code
   </select>
-  
+
   <!-- 查询状态为待发货的所有订单号 -->
   <select id="getOrderList" resultType="Order" parameterType="Order">
-  	SELECT 
-  		SALES_ORDERID salesOrderid 
-  	FROM 
-  		TB_IAMBERRY_SHOP_SALES_ORDER 
-  	WHERE 
-  		SALES_STATUS = #{salesStatus} 
+  	SELECT
+  		SALES_ORDERID salesOrderid
+  	FROM
+  		TB_IAMBERRY_SHOP_SALES_ORDER
+  	WHERE
+  		SALES_STATUS = #{salesStatus}
   </select>
-  
+
   <!-- 批量修改订单状态 -->
   <update id="updateOrderListStatus" parameterType="java.util.List">
   		<foreach collection="list" item="item" index="index" separator=";" open="" close="">
-			UPDATE 
-				TB_IAMBERRY_SHOP_SALES_ORDER 
-			SET 
-				SALES_STATUS = 5, 
-				SALES_POST_NUM = #{item.salesPostNum,jdbcType=VARCHAR}, 
-				SALES_POST_FIRM = #{item.salesPostFirm,jdbcType=VARCHAR}, 
-				SALES_SEND_DATE = #{item.salesSendDate,javaType=DATE} 
-			WHERE 
-				SALES_ORDERID  =  #{item.salesOrderid,jdbcType=VARCHAR} 
+			UPDATE
+				TB_IAMBERRY_SHOP_SALES_ORDER
+			SET
+				SALES_STATUS = 5,
+				SALES_POST_NUM = #{item.salesPostNum,jdbcType=VARCHAR},
+				SALES_POST_FIRM = #{item.salesPostFirm,jdbcType=VARCHAR},
+				SALES_SEND_DATE = #{item.salesSendDate,javaType=DATE}
+			WHERE
+				SALES_ORDERID  =  #{item.salesOrderid,jdbcType=VARCHAR}
 		</foreach>
 	</update>
 
@@ -701,6 +701,37 @@ PUBLIC
 			date_format(o.sales_create_date,'%Y-%m')
 	</select>
 
+
+	<select id="selectShopOrderByPolaById" parameterType="String" resultType="Order">
+		SELECT
+			O.SALES_ORDERID salesOrderid,
+			O.SALES_ADDRESS_NAME salesAddressName,
+			U.USER_NICKNAME userNickname,
+			O.SALES_ADDRESS_TEL salesAddressTel,
+			O.SALES_AMOUNT salesAmount,
+			O.SALES_RATE_AMOUNT salesRateAmount,
+			O.SALES_INTEGRAL_NUM salesIntegralNum,
+			O.SALES_YET_AMOUNT salesYetAmount,
+			O.SALES_STATUS salesStatus,
+			O.SALES_CREATE_DATE salesCreateDate,
+			O.SALES_POST_NUM salesPostNum,
+			O.SALES_POST_FIRM salesPostFirm,
+			O.SALES_ADMIN_REMARK salesAdminRemark,
+			O.SALES_COLOR_TYPE salesColorType,
+			O.SALES_USER_REMARK salesUserRemark,
+			O.SALES_IS_RFUND salesIsRfund,
+			O.sales_transaction_date salesTransactionDate,
+			O.sales_address_info salesAddressInfo,
+			O.sales_address_postnum salesAddressPostnum,
+			O.sales_return_des salesReturnDes,
+			U.USER_RES_TYPE userResource
+		FROM
+			TB_IAMBERRY_SHOP_SALES_ORDER O
+		LEFT JOIN TB_IAMBERRY_USER_USERINFO U ON O.SALES_OPENID = U.USER_OPENID
+		WHERE
+			O.SALES_ORDERID = #{salesOrderid}
+	</select>
+
 	<select id="selectShopOrderByPola" parameterType="Order" resultType="Order">
 		SELECT
 			O.SALES_ORDERID salesOrderid,
@@ -722,6 +753,7 @@ PUBLIC
 			O.sales_transaction_date salesTransactionDate,
 			O.sales_address_info salesAddressInfo,
 			O.sales_address_postnum salesAddressPostnum,
+		O.sales_return_des salesReturnDes,
 			U.USER_RES_TYPE userResource
 		FROM
 			TB_IAMBERRY_SHOP_SALES_ORDER O
@@ -736,10 +768,10 @@ PUBLIC
 		<if test="salesOrderid != null and salesOrderid!=''">
 			AND O.SALES_ORDERID = #{salesOrderid}
 		</if>
-		<if test="beginDate != null and beginDate!=''">
+		<if test="beginDate != null and beginDate!='' and selectDateType == 2">
 			AND O.sales_create_date &gt;= #{beginDate}
 		</if>
-		<if test="endDate != null and endDate!=''">
+		<if test="endDate != null and endDate!='' and selectDateType == 2">
 			AND O.sales_create_date &lt;= #{endDate}
 		</if>
 		ORDER BY O.SALES_CREATE_DATE DESC
@@ -762,4 +794,44 @@ PUBLIC
 		ORDER BY ITEM_ID DESC
 	</select>
 
+	<select id="selectOrderNum" parameterType="Order" resultType="Integer">
+		SELECT
+			count(O.SALES_ORDERID)
+		FROM
+		TB_IAMBERRY_SHOP_SALES_ORDER O
+		LEFT JOIN TB_IAMBERRY_USER_USERINFO U ON O.SALES_OPENID = U.USER_OPENID
+		WHERE
+		O.SALES_ORDER_TYPE = 1
+		AND O.SALES_STATUS !=  1
+		AND O.SALES_STATUS !=  0
+		<if test="salesStatus != null and salesStatus != -1">
+			AND O.SALES_STATUS = #{salesStatus}
+		</if>
+		<if test="salesOrderid != null and salesOrderid!=''">
+			AND O.SALES_ORDERID = #{salesOrderid}
+		</if>
+		<if test="beginDate != null and beginDate!=''">
+			AND O.sales_create_date &gt;= #{beginDate}
+		</if>
+		<if test="endDate != null and endDate!=''">
+			AND O.sales_create_date &lt;= #{endDate}
+		</if>
+		ORDER BY O.SALES_CREATE_DATE DESC
+		LIMIT ${page.recordBegin},${page.pageSize}
+	</select>
+
+	<!-- 根据orderId修改订单状态 -->
+	<update id="updateOrderByPola" parameterType="Order">
+		UPDATE
+			TB_IAMBERRY_SHOP_SALES_ORDER
+		SET
+		<if test="salesUserRemark != null and salesUserRemark != ''">
+			sales_user_remark = #{salesUserRemark}
+		</if>
+		WHERE
+			SALES_ORDERID = #{salesOrderid}
+	</update>
+
+
+
 </mapper>

+ 9 - 1
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/order/AdminOrderServiceImpl.java

@@ -94,6 +94,9 @@ public class AdminOrderServiceImpl implements AdminOrderService {
 		return this.adminOrderDao.selectShopOrder(order);
 	}
 
+	public Order selectShopOrderByPolaById(String orderId){
+		return this.adminOrderDao.selectShopOrderByPolaById(orderId);
+	}
 	public List<Order> selectShopOrderByPola(Order order) {
 		order.getPage().initRecordBegin();
 		return this.adminOrderDao.selectShopOrderByPola(order);
@@ -101,7 +104,12 @@ public class AdminOrderServiceImpl implements AdminOrderService {
 	public List<OrderItem> getShopOrderItemByOrderIdToPola(String orderId) {
 		return this.adminOrderDao.getShopOrderItemByOrderIdToPola(orderId);
 	}
-
+	public Integer selectOrderNum(Order order){
+		return this.adminOrderDao.selectOrderNum(order);
+	}
+	public Integer updateOrderByPola(Order order){
+		return this.adminOrderDao.updateOrderByPola(order);
+	}
 
 	public List<Order> selectShopOrderByOrderId(Order order) {
 		// TODO Auto-generated method stub

+ 8 - 1
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/order/dao/AdminOrderDao.java

@@ -24,11 +24,18 @@ public interface AdminOrderDao {
 	//后台订单列表查询
 	public List<Order> selectShopOrder(Order order);
 
+	//菠萝派查询单个订单
+	public Order selectShopOrderByPolaById(String orderId);
 	//菠萝派查询订单
 	public List<Order> selectShopOrderByPola(Order order);
 	//菠萝派根据订单id查询订单项
 	public List<OrderItem> getShopOrderItemByOrderIdToPola(String orderId);
-	
+	//菠萝派查询订单
+	public Integer selectOrderNum(Order order);
+	//菠萝派修改订单
+	public Integer updateOrderByPola(Order order);
+
+
 	//根据页面条件查询订单列表
 	public List<Order> selectShopOrderByOrderId(Order order);
 	

+ 11 - 0
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/order/dao/impl/AdminOrderDaoImpl.java

@@ -41,6 +41,9 @@ public class AdminOrderDaoImpl implements AdminOrderDao {
 		return this.adminOrderMapper.selectShopOrder(order);
 	}
 
+	public Order selectShopOrderByPolaById(String orderId){
+		return this.adminOrderMapper.selectShopOrderByPolaById(orderId);
+	}
 	public List<Order> selectShopOrderByPola(Order order) {
 		order.getPage().initRecordBegin();
 		return this.adminOrderMapper.selectShopOrderByPola(order);
@@ -50,6 +53,14 @@ public class AdminOrderDaoImpl implements AdminOrderDao {
 		return this.adminOrderMapper.getShopOrderItemByOrderIdToPola(orderId);
 	}
 
+	public Integer selectOrderNum(Order order){
+		return this.adminOrderMapper.selectOrderNum(order);
+	}
+
+	public Integer updateOrderByPola(Order order){
+		return this.adminOrderMapper.updateOrderByPola(order);
+	}
+
 	@Override
 	public List<Order> selectShopOrderByOrderId(Order order) {
 		// TODO Auto-generated method stub

+ 374 - 57
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/polyapi/ExternalDockPolyApi.java

@@ -3,13 +3,11 @@ package com.iamberry.wechat.handles.polyapi;
 
 import com.alibaba.fastjson.JSON;
 import com.iamberry.app.tool.des.MD5;
-import com.iamberry.wechat.core.entity.coupon.CouponItem;
-import com.iamberry.wechat.core.entity.coupon.CouponType;
 import com.iamberry.wechat.core.entity.order.Order;
 import com.iamberry.wechat.core.entity.order.OrderItem;
-import com.iamberry.wechat.face.cart.CartService;
+import com.iamberry.wechat.core.entity.product.Product;
 import com.iamberry.wechat.face.order.AdminOrderService;
-import com.iamberry.wechat.filters.WechatFilter;
+import com.iamberry.wechat.face.porduct.ProductService;
 import com.iamberry.wechat.tools.NameUtils;
 import com.iamberry.wechat.tools.SendMessageUtil;
 import org.slf4j.Logger;
@@ -22,19 +20,25 @@ import org.springframework.web.bind.annotation.ResponseBody;
 import javax.servlet.http.HttpServletRequest;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 /**
  * 对接菠萝派接口,用与回调订单
  */
 @Controller
-public class ExternalDockPolyApi {
+public class ExternalDockPolyApiHandler {
 
-    private static Logger logger = LoggerFactory.getLogger(ExternalDockPolyApi.class);
+    private static Logger logger = LoggerFactory.getLogger(ExternalDockPolyApiHandler.class);
 
     @Autowired
     private AdminOrderService adminOrderService;
 
+    @Autowired
+    private ProductService productService;
+
     /**
      * DES对称加密
      */
@@ -69,34 +73,38 @@ public class ExternalDockPolyApi {
         }catch (Exception e){
             map.put("code","40000");
             map.put("message","请求未能识别");
-            map.put("submessage","参数不对");
-            map.put("numtotalorder","0");
+            map.put("submessage","参数有误");
+            map.put("numtotalorder",0);
             return map;
         }
 
         String method =  request.getParameter("method");
         switch (method){
             case "Differ.JH.Business.GetOrder" :  //订单下载
-                map = getSalesOrder(requstMap);
+                map = selectSalesOrder(requstMap);
                 break;
             case "Differ.JH.Business.CheckRefundStatus" :  //退款检测 :即使没有退款功能,该接口也需要有,否则影响发货流程,可以统一返回没有退款)
-                //map = getSalesOrder(requstMap);
+                map = selectOrderRefundStatus(requstMap);
                 break;
             case "Differ.JH.Business.Send" :  //订单发货
+                map = orderDelivery(requstMap);
                 break;
             case "Differ.JH.Business.UpdateSellerMemo" :  //修改订单备注
+                map = updateOrderRemark(requstMap);
                 break;
             case "Differ.JH.Business.DownloadProduct" :  //商品下载
+               // map = downProduct(requstMap);
                 break;
             case "Differ.JH.Business.SyncStock" :  //商品库存同步
                 break;
             case "Differ.JH.Business.GetRefund" :  //退货退款单下载
+                map = downRefundOrder(requstMap);
                 break;
             default:
                 map.put("code","40000");
                 map.put("message","请求未能识别");
-                map.put("submessage","参数不对");
-                map.put("numtotalorder","");
+                map.put("submessage","参数有误");
+                map.put("numtotalorder",0);
                 break;
         }
         return map;
@@ -107,7 +115,7 @@ public class ExternalDockPolyApi {
      * @param requstMap
      * @return
      */
-    private Map<String,Object> getSalesOrder(Map<String,Object> requstMap){
+    private Map<String,Object> selectSalesOrder(Map<String,Object> requstMap){
         Map<String,Object> map = new HashMap<String,Object>();
 
         /*订单交易状态(等待买家付款=JH_01,等待卖家发货=JH_02,等待买家确认收货=JH_03,交易成功=JH_04,交易关闭=JH_05,所有订单=JH_99)*/
@@ -123,12 +131,25 @@ public class ExternalDockPolyApi {
         if(platOrderNo != null && !"".equals(platOrderNo)){
             order.setSalesOrderid(platOrderNo);
         }
-        /*设置订单状态*/
-        this.setStatus(order,orderStatus);
 
-        order.getPage().setPageSize(pageSize);
-        order.getPage().setPageNumber(pageIndex);
-        order.getPage().initRecordBegin();
+        // TODO: 2018/2/7  只查询代发货的信息,
+       if(orderStatus == null || "".equals(orderStatus) || "JH_01".equals(orderStatus) || "JH_03".equals(orderStatus)
+               || "JH_04".equals(orderStatus) || "JH_05".equals(orderStatus) ){
+           List<Map<String,Object>> orders = new ArrayList<>();
+           map.put("code","10000");
+           map.put("message","SUCCESS");
+           map.put("orders",orders);
+           map.put("numtotalorder",0);
+       }else if("JH_99".equals(orderStatus)){
+           orderStatus = "JH_02";
+       }
+
+       //设置订单状态
+       this.setStatus(order,orderStatus);
+
+       //只查询创建时间的订单
+        order.setSelectDateType(2);
+
         try {
             order.setBeginDate(sdf.parse(startTime));
             order.setEndDate(sdf.parse(endTime));
@@ -136,10 +157,14 @@ public class ExternalDockPolyApi {
             map.put("code","40000");
             map.put("message","时间格式不对");
             map.put("submessage","时间格式不对");
-            map.put("numtotalorder","");
+            map.put("numtotalorder",0);
             return map;
         }
 
+        order.getPage().setPageSize(pageSize);
+        order.getPage().setPageNumber(pageIndex);
+        order.getPage().initRecordBegin();
+        Integer orderNum = adminOrderService.selectOrderNum(order);
         List<Order> orderList = adminOrderService.selectShopOrderByPola(order);
         List<Map<String,Object>> orders = new ArrayList<>();
         map.put("code","10000");
@@ -150,7 +175,7 @@ public class ExternalDockPolyApi {
             orders.add(getOrderMap(or));
         }
         map.put("orders",orders);
-        map.put("numtotalorder",orderList.size());
+        map.put("numtotalorder",orderNum);
         logger.info("------返回订单个数:" + orderList.size() + "---------");
         return map;
     }
@@ -160,12 +185,12 @@ public class ExternalDockPolyApi {
      * @param requstMap
      * @return
      */
-    private Map<String,Object> getOrderRefundStatus(Map<String,Object> requstMap){
+    private Map<String,Object> selectOrderRefundStatus(Map<String,Object> requstMap){
         Map<String,Object> map = new HashMap<String,Object>();
         String orderId = (String) requstMap.get("OrderID"); //平台订单号
 
         Order order = new Order();
-        List<Order> orderList = new ArrayList<>();
+        List<Order> orderList;
         if(orderId != null && !"".equals(orderId)){
             order.setSalesOrderid(orderId);
             orderList = adminOrderService.selectShopOrderByPola(order);
@@ -183,15 +208,293 @@ public class ExternalDockPolyApi {
             map.put("submessage","订单号不能为空");
             return map;
         }
-        Map<String,Object> orderMap = new HashMap<String,Object>();
-        //退款状态(没有退款=JH_07,买家已经申请退款等待卖家同意=JH_01,卖家已经同意退款等待买家退货=JH_02,
-        // 买家已经退货等待卖家确认收货=JH_03,卖家拒绝退款=JH_04,退款关闭=JH_05,退款成功=JH_06,其他=JH_99)
-        orderMap.put("refundStatus ","");
+        map.put("refundStatus ",this.getOrderRefundStatus(order.getSalesStatus()));     //退款状态   必填
+
+        String refundStatusdescription = "";
+        if(order.getSalesReturnDes() != null){
+            refundStatusdescription = order.getSalesReturnDes();
+        }
+        map.put("refundStatusdescription ",refundStatusdescription);  //选填 退款说明
+        List<Map<String,Object>> childrenrefundStatus = new ArrayList<>();
+        List<OrderItem> orderItemList = adminOrderService.getShopOrderItemByOrderIdToPola(order.getSalesOrderid());
+        for(OrderItem orderItem : orderItemList){
+            Map<String,Object> childrenrefund = new HashMap<String, Object>();
+            childrenrefund.put("refundno","");      //退款订单号    可选
+            childrenrefund.put("ProductName",orderItem.getItemProductName());      //退款商品名称    可选
+            childrenrefund.put("refundStatus",this.getOrderRefundStatus(order.getSalesStatus()));      //退款状态    可选
+            childrenrefund.put("refundStatusdescription",refundStatusdescription);      //选填 退款说明
+            childrenrefundStatus.add(childrenrefund);
+        }
+        map.put("childrenrefundStatus ",childrenrefundStatus);  //子订单退款说明
+        map.put("code","10000");
+        map.put("message","返回订单退款状态");
+        map.put("submessage","返回订单退款状态,订单状态为:"+ this.getDescription(order.getSalesStatus()));
+        return map;
+    }
+
+    /**
+     * 订单发货
+     * @param requstMap
+     * @return
+     */
+    private Map<String,Object> orderDelivery(Map<String,Object> requstMap){
+        Map<String,Object> map = new HashMap<String,Object>();
+        /*订单发货类别(自己联系物流=JH_01,在线下单=JH_02,无需物流=JH_03,自定义物流=JH_04,家装发货=JH_05,国际物流=JH_06)*/
+        String SendType = (String) requstMap.get("SendType");
+        String LogisticName = (String) requstMap.get("LogisticName"); //快递名称
+        String LogisticType = (String) requstMap.get("LogisticType"); //快递类别(JH前缀为国内快递 ,JHI为国际快递)详见物流公司代码对照表
+        String LogisticNo = (String) requstMap.get("LogisticNo"); //快递运单号
+        String PlatOrderNo = (String) requstMap.get("PlatOrderNo"); //平台订单号
+        Integer IsSplit = Integer.valueOf(requstMap.get("IsSplit").toString()) ; //是否拆单发货(拆单=1 ,不拆单=0)
+        /*平台子订单交易单号,支持订单拆分为不同商品不同数量发货,
+            多个商品用"|"隔开, 为空则视为整单发货
+            包含子订单编号和商品发货数量,格式suborderno1:count1|suborderno2:count2发货数量需为大于0的整数
+        */
+        String SubPlatOrderNo = (String) requstMap.get("SubPlatOrderNo");
+        String SenderName = (String) requstMap.get("SenderName"); //发货人姓名
+        String SenderTel = (String) requstMap.get("SenderTel"); //发货人联系电话
+        String SenderAddress = (String) requstMap.get("SenderAddress"); //发货人地址(省市区之间以空格分隔)
+        Integer IsHwgFlag = Integer.valueOf(requstMap.get("IsHwgFlag").toString()); //是否为海外购(是=1;否=0)
+
+        Order order;
+        if(PlatOrderNo != null && !"".equals(PlatOrderNo)) {
+            order = adminOrderService.selectShopOrderByPolaById(PlatOrderNo);
+            if(order == null){
+                map.put("code","40000");
+                map.put("message","未查询到该订单");
+                map.put("submessage","未查询到该订单");
+                return map;
+            }
+        }else{
+            map.put("code","40000");
+            map.put("message","订单号不能为空");
+            map.put("submessage","订单号不能为空");
+            return map;
+        }
+        Boolean flag = false;
+        if(order.getSalesStatus() == 2){ //判断订单是否支持发货
+            Order or = new Order();
+            or.setSalesOrderid(PlatOrderNo);
+            or.setSalesPostFirm(this.selectFirm(LogisticType));      //设置快递公司
+            or.setSalesPostNum(LogisticNo);       //设置快递单号
+            or.setSalesStatus(5);        //发货
+            flag = adminOrderService.deliverOrderByOrderId(or);
+        }
+        if(flag){
+            map.put("code","10000");
+            map.put("message","订单发货成功");
+            map.put("submessage","订单发货成功");
+        }else{
+            logger.info("订单发货失败,不支持发货操作,订单id:" + order.getSalesOrderid());
+            map.put("code","40000");
+            map.put("message","参数有误");
+            map.put("submessage","订单不支持发货操作");
+        }
         return map;
     }
 
+    /**
+     * 修改备注
+     * @param requstMap
+     * @return
+     */
+    private Map<String,Object> updateOrderRemark(Map<String,Object> requstMap){
+        Map<String,Object> map = new HashMap<String,Object>();
+
+        String orderId = (String) requstMap.get("PlatOrderNo");     //订单id
+        String remark = (String) requstMap.get("SellerMemo");      //备注
+        //卖家旗帜(无=JH_None,灰=JH_Gray,红=JH_Red,黄=JH_Yellow,绿=JH_Green,蓝=JH_Blue,紫=JH_Purple)
+        String sellerFlag = (String) requstMap.get("SellerFlag");
+
+        Order order = new Order();
+        order.setSalesOrderid(orderId);
+        if(orderId != null && !"".equals(orderId)) {
+            order = adminOrderService.selectShopOrderByPolaById(orderId);
+            if(order == null){
+                map.put("code","40000");
+                map.put("message","未查询到该订单");
+                map.put("submessage","未查询到该订单");
+                return map;
+            }
+        }else{
+            map.put("code","40000");
+            map.put("message","订单号不能为空");
+            map.put("submessage","订单号不能为空");
+            return map;
+        }
+        Order or = new Order();
+        or.setSalesOrderid(orderId);
+        or.setSalesUserRemark(remark);
+        Integer flag  = adminOrderService.updateOrderByPola(or);
+        if(flag > 0){
+            map.put("code","10000");
+            map.put("message","修改订单备注成功");
+            map.put("submessage","修改订单备注成功");
+        }else{
+            logger.info("修改订单备注失败,订单id:" + order.getSalesOrderid());
+            map.put("code","40000");
+            map.put("message","参数有误");
+            map.put("submessage","修改订单备注失败");
+        }
+        return map;
+    }
+
+    /**
+     *  退货退款单下载
+     * @param requstMap
+     * @return
+     */
+    private Map<String,Object> downRefundOrder(Map<String,Object> requstMap){
+        Map<String,Object> map = new HashMap<String,Object>();
+
+        String beginTime = (String) requstMap.get("BeginTime");     //开始时间
+        String endTime = (String) requstMap.get("EndTime");     //结束时间
+        String pageIndex = (String) requstMap.get("PageIndex");     //页码(默认值:1)
+        String pageSize = (String) requstMap.get("PageSize");     //每页条数(默认值:10)
+
+//        map.put("code","10000");
+//        map.put("message","修改订单备注成功");
+//        map.put("submessage","修改订单备注成功");
+
+        return map;
+    }
+
+
+    /**
+     * 获取商品
+     * @param requstMap
+     * @return
+     */
+    private Map<String,Object> downProduct(Map<String,Object> requstMap){
+        Map<String,Object> map = new HashMap<String,Object>();
+
+        Integer productId = Integer.valueOf(requstMap.get("ProductId").toString());     //可选,商品外部商家编码(注,网店管家目前尚未支持此参数的查询)
+        String productName = (String) requstMap.get("ProductName");     //商品名称
+        String status = (String) requstMap.get("Status");     //商品状态(已上架商品=JH_01,已下架商品=JH_02,所有商品=JH_99)
+        Integer pageIndex = Integer.valueOf(requstMap.get("PageIndex").toString()) ;     //开始时间
+        Integer pageSize = Integer.valueOf(requstMap.get("PageSize").toString());     //开始时间
+
+        Product product = new Product();
+        if(productId != null && !"".equals(productId)){
+            product.setProductId(productId);
+        }
+        product.getPage().setPageSize(pageSize);
+        product.getPage().setPageNumber(pageIndex);
+        List<Product> productList = productService.selectAllProductInfo(product);
+
+        // TODO: 2018/2/8 商品下载 
+
+//        map.put("code","10000");
+//        map.put("message","修改订单备注成功");
+//        map.put("submessage","修改订单备注成功");
+
+        return map;
+    }
+
+    /**
+     * 获取快递公司代号,
+     * @param LogisticType
+     * @return
+     */
+    private String selectFirm(String LogisticType){
+        switch (LogisticType){
+            case "JH_001": //EMS
+                return "ems";
+            case "JH_002": //圆通
+                return "yto";
+            case "JH_003": //韵达
+                return "yunda";
+            case "JH_004": //天天快递
+                return "ttkdex";
+            case "JH_005": //申通
+                return "sto";
+            case "JH_006": //中通
+                return "zto";
+            case "JH_007": //宅急送
+                return "zjs";
+//            case "JH_008": //快捷快递
+//                return "";
+//            case "JH_009": //全峰快递
+//                return "";
+//            case "JH_010": //国通快递
+//                return "";
+//            case "JH_011": //德邦物流
+//                return "";
+            case "JH_012": //百世汇通
+                return "htky";
+//            case "JH_013": //优速快递
+//                return "";
+            case "JH_014": //顺丰
+                return "sf";
+//            case "JH_015": //中铁快运
+//                return "";
+            case "JH_019": //龙邦速递
+                return "longbanwuliu";
+            case "JH_028": //汇通快运
+                return "htky";
+//            case "JH_037": //邮政包裹平邮
+//                return "";
+//            case "JH_046": //京东快递
+//                return "";
+            case "JH_092": //EMS经济快递
+                return "ems";
+//            case "JH_115": //万象
+//                return "";
+//            case "JH_091": //百世物流
+//                return "";
+            default:
+                return LogisticType;
+        }
+    }
+
+    /**
+     * 查询退款状态
+     *
+     *  本系统状态  0:取消订单  1:待支付  2:已支付、待发货  3:退款申请中  4:已退款  5:已发货  6:申请退货中
+     *  7:退货中  8:订单退货,订单关闭  9:换货中  10:换货完成  11申请换货中  12订单完成
+     *
+     * 退款状态(没有退款=JH_07,买家已经申请退款等待卖家同意=JH_01,卖家已经同意退款等待买家退货=JH_02,
+     * 买家已经退货等待卖家确认收货=JH_03,卖家拒绝退款=JH_04,退款关闭=JH_05,退款成功=JH_06,其他=JH_99)
+     *
+     * @param status
+     * @return
+     */
+    private String getOrderRefundStatus(Integer status){
+        switch (status){
+            case 0:
+                return "JH_07";
+            case 1:
+                return "JH_07";
+            case 2:
+                return "JH_07";
+            case 3:
+                return "JH_01";
+            case 4:
+                return "JH_06";
+            case 5:
+                return "JH_07";
+            case 6:
+                return "JH_01";
+            case 7:
+                return "JH_02";
+            case 8:
+                return "JH_06";
+            case 9:
+                return "JH_07";
+            case 10:
+                return "JH_07";
+            case 11:
+                return "JH_07";
+            case 12:
+                return "JH_07";
+            default:
+                return "JH_07";
+        }
+    }
+
     /***
-     * 拼接map
+     * 订单下载 拼接map
+     * 如果不用传参数请去掉,否则有可能会报错
      * @param order
      * @return
      */
@@ -218,10 +521,15 @@ public class ExternalDockPolyApi {
         orderMap.put("address",order.getSalesAddressInfo());    //全部地址 必填
         orderMap.put("zip",order.getSalesAddressPostnum());     //邮编
         orderMap.put("phone",order.getSalesAddressTel());       //手机号码   必填
-        orderMap.put("mobile","");
-        orderMap.put("email","");
-        orderMap.put("customerremark",order.getSalesUserRemark());      //买家备注
-        orderMap.put("sellerremark","");
+        //orderMap.put("mobile","");
+       // orderMap.put("email","");
+        String remark = order.getSalesUserRemark();
+        if(remark == null){
+            orderMap.put("customerremark","");      //买家备注
+        }else{
+            orderMap.put("customerremark",order.getSalesUserRemark());      //买家备注
+        }
+        //orderMap.put("sellerremark","");
         orderMap.put("postfee",0);     //邮资
         orderMap.put("goodsfee",0);    //货款金额
         double yetAmount = order.getSalesYetAmount().intValue() / 100;
@@ -229,28 +537,27 @@ public class ExternalDockPolyApi {
         orderMap.put("totalmoney",yetAmount);   //合计应收(针对卖家)
         orderMap.put("favourablemoney",amount-yetAmount);        //订单总优惠金额
         orderMap.put("commissionvalue",0);  //佣金
-        orderMap.put("taxamount","");   //订单税费总额
-        orderMap.put("tariffamount","");   //订单关税金额
-        orderMap.put("addedvalueamount","");   //订单增值税金额
-        orderMap.put("consumptiondutyamount","");   //订单消费税金额
+        //orderMap.put("taxamount","");   //订单税费总额
+        //orderMap.put("tariffamount","");   //订单关税金额
+       // orderMap.put("addedvalueamount","");   //订单增值税金额
+       // orderMap.put("consumptiondutyamount","");   //订单消费税金额
+
         orderMap.put("sendstyle",this.getSendstyle(order.getSalesPostFirm()));   //货运方式  可选
-        orderMap.put("qq","");
-        // TODO: 2018/2/2  订单未支付,没有支付时间,是否在未支付状态也需要支付时间
+        //orderMap.put("qq","");
         if(order.getSalesTransactionDate() != null){
             orderMap.put("paytime",sdf.format(order.getSalesTransactionDate()));     //支付时间  ,必填 支付时间(格式:yyyy-MM-dd HH:mm:ss)
         }
-        orderMap.put("invoicetitle","");    //发票抬头
-        orderMap.put("codservicefee","");   //纳税人识别号
-        orderMap.put("sellerflag","");  //COD服务费
-        orderMap.put("couponprice",""); //货币类型
-        orderMap.put("cardtype","");    //证件类型(身份证=JH_01,护照=JH_02,港澳通行证=JH_03)
-        orderMap.put("idcard","");      //证件号码
-        orderMap.put("idcardtruename","");      //证件真实姓名
-        orderMap.put("receivername","");      //收货人真实姓名
+        //orderMap.put("invoicetitle","");    //发票抬头
+        //orderMap.put("codservicefee","");   //纳税人识别号
+        //orderMap.put("couponprice",""); //货币类型
+        //orderMap.put("cardtype","");    //证件类型(身份证=JH_01,护照=JH_02,港澳通行证=JH_03)
+        //orderMap.put("idcard","");      //证件号码
+        //orderMap.put("idcardtruename","");      //证件真实姓名
+        //orderMap.put("receivername","");      //收货人真实姓名
         orderMap.put("nick",order.getUserNickname());      //必填  买家昵称
-        orderMap.put("whsecode","");      //商品所在仓库编号
-        orderMap.put("IsHwgFlag","");      //是否为海外购(是=1;否=0)
-        orderMap.put("ShouldPayType","多种结算");      //必填  结算方式(可选值有:担保交易;银行收款;现金收款;货到付款;欠款记应收;客户预付款;多种结算)
+        //orderMap.put("whsecode","");      //商品所在仓库编号
+        //orderMap.put("IsHwgFlag","");      //是否为海外购(是=1;否=0)
+        orderMap.put("ShouldPayType","担保交易");      //必填  结算方式(可选值有:担保交易;银行收款;现金收款;货到付款;欠款记应收;客户预付款;多种结算)
         List<Map<String,Object>> goodinfos = new ArrayList<>();
         for (OrderItem orderItem: order.getOrderItemList()){
             Map<String,Object> orderItemMap = new HashMap<String,Object>();
@@ -305,6 +612,7 @@ public class ExternalDockPolyApi {
             case "JH_99":
                 break;
             default:
+                order.setSalesStatus(2);
                 break;
         }
     }
@@ -348,8 +656,9 @@ public class ExternalDockPolyApi {
                 return "JH_03";
             case 12:
                 return "JH_04";
+            default:
+                return "JH_05";
         }
-        return "JH_05";
     }
 
     /**
@@ -392,8 +701,9 @@ public class ExternalDockPolyApi {
                 return "";
             case 12:
                 return "";
+            default:
+                return "";
         }
-        return "";
     }
 
     /**
@@ -435,8 +745,9 @@ public class ExternalDockPolyApi {
                 return "";
             case 12:
                 return "JH_04";
+            default:
+                return "";
         }
-        return "";
     }
 
     /**
@@ -474,8 +785,9 @@ public class ExternalDockPolyApi {
                 return "申请换货中";
             case 12:
                 return "订单完成";
+            default:
+                return "其他";
         }
-        return "";
     }
 
     /**
@@ -484,7 +796,11 @@ public class ExternalDockPolyApi {
      * @return
      */
     private String getSendstyle(String sendsStyle){
-        return SendMessageUtil.hashmap.get(sendsStyle);
+        String sendStyle = SendMessageUtil.hashmap.get(sendsStyle);
+        if(sendStyle == null){
+            sendStyle = "";
+        }
+        return sendStyle;
     }
 
 
@@ -510,12 +826,13 @@ public class ExternalDockPolyApi {
              */
            String signatureText = polyapiAppSecret + "appkey" + appkey + "bizcontent" + bizcontent + "method" + method + "token" + token + polyapiAppSecret;
            signatureText = signatureText.toLowerCase();
-           String signaTrue =  md5.GetMD5Code(signatureText);
+           String signaTrue = md5.GetMD5Code(signatureText);
            if(sign == null || !sign.equals(signaTrue)){
-               logger.info("-----------签名验证失败---------------,签名参数:"+signatureText);
+               logger.info("-----------签名验证失败---------------,signaTrue:"+signaTrue);
+               logger.info("-----------签名验证失败---------------,sign:"+sign);
                throw new Exception("签名验证失败");
            }
-            logger.info("-----------验证签名通过---------------");
+           logger.info("-----------验证签名通过---------------");
         }
         Map requstMap = (Map) JSON.parse(bizcontent);
         return requstMap;