| @@ -0,0 +1,74 @@ | |||
| package com.iformall.controller.market; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.iformall.annotation.SystemControllerLog; | |||
| import com.iformall.common.ErrorCode; | |||
| import com.iformall.common.ResultData; | |||
| import com.iformall.controller.base.BaseController; | |||
| import com.iformall.domain.po.AliBusinessCircleOrder; | |||
| import com.iformall.domain.po.base.BaseEntity; | |||
| import com.iformall.service.AliBusinessCircleOrderService; | |||
| import com.iformall.utils.Constant; | |||
| import io.swagger.annotations.Api; | |||
| import io.swagger.annotations.ApiImplicitParam; | |||
| import io.swagger.annotations.ApiImplicitParams; | |||
| import io.swagger.annotations.ApiOperation; | |||
| import org.apache.commons.lang3.StringUtils; | |||
| import org.slf4j.Logger; | |||
| import org.slf4j.LoggerFactory; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.web.bind.annotation.GetMapping; | |||
| import org.springframework.web.bind.annotation.ModelAttribute; | |||
| import org.springframework.web.bind.annotation.RequestMapping; | |||
| import org.springframework.web.bind.annotation.RestController; | |||
| @RestController | |||
| @RequestMapping("aliCircle") | |||
| @Api(description = "订单相关接口") | |||
| public class AliBusinessCircleOrderController extends BaseController { | |||
| private final Logger logger = LoggerFactory.getLogger(this.getClass()); | |||
| @Autowired | |||
| private AliBusinessCircleOrderService aliBusinessCircleOrderService; | |||
| @ApiOperation("分页列表接口") | |||
| @GetMapping("list") | |||
| @ApiImplicitParams({ | |||
| @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), | |||
| @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true), | |||
| }) | |||
| @SystemControllerLog(description = "-列表") | |||
| public ResultData list(@ModelAttribute AliBusinessCircleOrder circleOrder, Integer pageNum, Integer pageSize) { | |||
| logger.debug("[" + getIpAddr() + "] WxOrderController::list"); | |||
| if (null == circleOrder) { | |||
| circleOrder = new AliBusinessCircleOrder(); | |||
| } | |||
| circleOrder.updateTenantInfo(getTenantInfo()); | |||
| circleOrder.setSortColumns(BaseEntity.SortField.CreateTime_DESC,BaseEntity.SortField.Id_DESC); | |||
| final PageInfo<AliBusinessCircleOrder> page = aliBusinessCircleOrderService.listAsPage(circleOrder, pageNum, pageSize); | |||
| return new ResultData(page); | |||
| } | |||
| @ApiOperation("详情接口") | |||
| @GetMapping("detail") | |||
| @ApiImplicitParams({ | |||
| @ApiImplicitParam(name = "orderId", value = "订单id", dataType = "String", paramType = "query", required = true) | |||
| }) | |||
| public ResultData detail(String orderId) { | |||
| if (StringUtils.isBlank(orderId) || orderId.equalsIgnoreCase(Constant.UNDEFINED)) { | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | |||
| } | |||
| Long id; | |||
| try { | |||
| id = Long.valueOf(orderId); | |||
| } catch (NumberFormatException e) { | |||
| logger.error(e.getMessage()); | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "orderId: " + orderId + ", e: " + e.getMessage()); | |||
| } | |||
| AliBusinessCircleOrder order = aliBusinessCircleOrderService.detail(id,getTenantInfo()); | |||
| return new ResultData(order); | |||
| } | |||
| } | |||
| @@ -2,22 +2,26 @@ package com.iformall.controller.market; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.iformall.annotation.SystemControllerLog; | |||
| import com.iformall.common.ErrorCode; | |||
| import com.iformall.common.ResultData; | |||
| import com.iformall.controller.base.BaseController; | |||
| import com.iformall.domain.po.*; | |||
| import com.iformall.domain.po.base.BaseEntity; | |||
| import com.iformall.domain.po.tt.TtOrder; | |||
| import com.iformall.service.*; | |||
| import com.iformall.utils.Constant; | |||
| import io.swagger.annotations.Api; | |||
| import io.swagger.annotations.ApiImplicitParam; | |||
| import io.swagger.annotations.ApiImplicitParams; | |||
| import io.swagger.annotations.ApiOperation; | |||
| import org.apache.commons.lang3.StringUtils; | |||
| import org.slf4j.Logger; | |||
| import org.slf4j.LoggerFactory; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.web.bind.annotation.*; | |||
| @RestController | |||
| @RequestMapping("businessCircle") | |||
| @RequestMapping("wxCircle") | |||
| @Api(description = "订单相关接口") | |||
| public class WxBusinessCircleOrderController extends BaseController { | |||
| private final Logger logger = LoggerFactory.getLogger(this.getClass()); | |||
| @@ -38,10 +42,31 @@ public class WxBusinessCircleOrderController extends BaseController { | |||
| circleOrder = new WxBusinessCircleOrder(); | |||
| } | |||
| circleOrder.updateTenantInfo(getTenantInfo()); | |||
| circleOrder.setSortColumns(BaseEntity.SortField.CreateDate_DESC,BaseEntity.SortField.Id_DESC); | |||
| circleOrder.setSortColumns(BaseEntity.SortField.CreateTime_DESC,BaseEntity.SortField.Id_DESC); | |||
| final PageInfo<WxBusinessCircleOrder> page = wxBusinessCircleOrderService.listAsPage(circleOrder, pageNum, pageSize); | |||
| return new ResultData(page); | |||
| } | |||
| @ApiOperation("详情接口") | |||
| @GetMapping("detail") | |||
| @ApiImplicitParams({ | |||
| @ApiImplicitParam(name = "orderId", value = "订单id", dataType = "String", paramType = "query", required = true) | |||
| }) | |||
| public ResultData detail(String orderId) { | |||
| if (StringUtils.isBlank(orderId) || orderId.equalsIgnoreCase(Constant.UNDEFINED)) { | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | |||
| } | |||
| Long id; | |||
| try { | |||
| id = Long.valueOf(orderId); | |||
| } catch (NumberFormatException e) { | |||
| logger.error(e.getMessage()); | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "orderId: " + orderId + ", e: " + e.getMessage()); | |||
| } | |||
| WxBusinessCircleOrder order = wxBusinessCircleOrderService.detail(id,getTenantInfo()); | |||
| return new ResultData(order); | |||
| } | |||
| } | |||
| @@ -75,7 +75,7 @@ public class WxCouponController extends BaseController { | |||
| } | |||
| if(StringUtils.isNotBlank(wxCoupon.getSortColumn())){ | |||
| String coryColumn = "c."+wxCoupon.getSortColumns(); | |||
| wxCoupon.setSortColumn(coryColumn); | |||
| wxCoupon.setSortColumns(coryColumn); | |||
| wxCoupon.setSortColumn(null); | |||
| } | |||
| if(wxCoupon.getTargetAd() != null && wxCoupon.getTargetAd() == EnumCouponChannelType.COUPON_CHANNEL_ID_TIMED.getCode()){ | |||
| @@ -114,7 +114,7 @@ public class WxCouponController extends BaseController { | |||
| wxCoupon.setTypes(Arrays.asList(typeArray)); | |||
| if(StringUtils.isNotBlank(wxCoupon.getSortColumn())){ | |||
| String coryColumn = "c."+wxCoupon.getSortColumns(); | |||
| wxCoupon.setSortColumn(coryColumn); | |||
| wxCoupon.setSortColumns(coryColumn); | |||
| wxCoupon.setSortColumn(null); | |||
| } | |||
| return wxCouponService.list(wxCoupon,wxCoupon, pageNum, pageSize); //全列表 | |||
| @@ -0,0 +1,74 @@ | |||
| package com.iformall.controller.market; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.iformall.annotation.SystemControllerLog; | |||
| import com.iformall.common.ErrorCode; | |||
| import com.iformall.common.ResultData; | |||
| import com.iformall.controller.base.BaseController; | |||
| import com.iformall.domain.po.WxThirdPartyOrders; | |||
| import com.iformall.domain.po.base.BaseEntity; | |||
| import com.iformall.service.WxThirdPartyOrdersService; | |||
| import com.iformall.utils.Constant; | |||
| import io.swagger.annotations.Api; | |||
| import io.swagger.annotations.ApiImplicitParam; | |||
| import io.swagger.annotations.ApiImplicitParams; | |||
| import io.swagger.annotations.ApiOperation; | |||
| import org.apache.commons.lang3.StringUtils; | |||
| import org.slf4j.Logger; | |||
| import org.slf4j.LoggerFactory; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.web.bind.annotation.GetMapping; | |||
| import org.springframework.web.bind.annotation.ModelAttribute; | |||
| import org.springframework.web.bind.annotation.RequestMapping; | |||
| import org.springframework.web.bind.annotation.RestController; | |||
| @RestController | |||
| @RequestMapping("thirdCircle") | |||
| @Api(description = "订单相关接口") | |||
| public class WxThirdPartyOrdersController extends BaseController { | |||
| private final Logger logger = LoggerFactory.getLogger(this.getClass()); | |||
| @Autowired | |||
| private WxThirdPartyOrdersService wxThirdPartyOrdersOrderService; | |||
| @ApiOperation("分页列表接口") | |||
| @GetMapping("list") | |||
| @ApiImplicitParams({ | |||
| @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), | |||
| @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true), | |||
| }) | |||
| @SystemControllerLog(description = "-列表") | |||
| public ResultData list(@ModelAttribute WxThirdPartyOrders circleOrder, Integer pageNum, Integer pageSize) { | |||
| logger.debug("[" + getIpAddr() + "] WxOrderController::list"); | |||
| if (null == circleOrder) { | |||
| circleOrder = new WxThirdPartyOrders(); | |||
| } | |||
| circleOrder.updateTenantInfo(getTenantInfo()); | |||
| circleOrder.setSortColumns(BaseEntity.SortField.CreateTime_DESC,BaseEntity.SortField.Id_DESC); | |||
| final PageInfo<WxThirdPartyOrders> page = wxThirdPartyOrdersOrderService.listAsPage(circleOrder, pageNum, pageSize); | |||
| return new ResultData(page); | |||
| } | |||
| @ApiOperation("详情接口") | |||
| @GetMapping("detail") | |||
| @ApiImplicitParams({ | |||
| @ApiImplicitParam(name = "orderId", value = "订单id", dataType = "String", paramType = "query", required = true) | |||
| }) | |||
| public ResultData detail(String orderId) { | |||
| if (StringUtils.isBlank(orderId) || orderId.equalsIgnoreCase(Constant.UNDEFINED)) { | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | |||
| } | |||
| Long id; | |||
| try { | |||
| id = Long.valueOf(orderId); | |||
| } catch (NumberFormatException e) { | |||
| logger.error(e.getMessage()); | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "orderId: " + orderId + ", e: " + e.getMessage()); | |||
| } | |||
| WxThirdPartyOrders order = wxThirdPartyOrdersOrderService.detail(id,getTenantInfo()); | |||
| return new ResultData(order); | |||
| } | |||
| } | |||
| @@ -58,7 +58,7 @@ public class MemCouponController extends BaseController { | |||
| if(StringUtils.isNotBlank(wxCouponChannel.getSortColumn())){ | |||
| // String coryColumn = "c."+wxCouponChannel.getSortColumns(); | |||
| // wxCouponChannel.setSortColumn(coryColumn); | |||
| // wxCouponChannel.setSortColumns(coryColumn); | |||
| // wxCouponChannel.setSortColumn(null); | |||
| }else{ | |||
| wxCouponChannel.setSortColumns(BaseEntity.SortField.CCUpdateDate_DESC); | |||
| @@ -12,6 +12,7 @@ import com.iformall.domain.po.base.BaseEntity; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.domain.po.msg.WxMsg; | |||
| import com.iformall.enums.EnumSendWay; | |||
| import com.iformall.enums.EnumTemplateType; | |||
| import com.iformall.service.WxMsgService; | |||
| import com.iformall.service.WxTemplateMsgService; | |||
| import io.swagger.annotations.ApiImplicitParam; | |||
| @@ -71,6 +72,29 @@ public class WxMsgController extends BaseController { | |||
| logger.debug("[" + getIpAddr() + "] WxMsgController::list"); | |||
| if (null == wxTemplateMsg) wxTemplateMsg = new WxTemplateMsg(); | |||
| wxTemplateMsg.updateTenantInfo(getTenantInfo()); | |||
| List<Integer> types = new ArrayList<>(); | |||
| types.add(EnumTemplateType.ACTIVITY_REMIND.getCode()); | |||
| types.add(EnumTemplateType.LIVE_REMIND.getCode()); | |||
| wxTemplateMsg.setTypes(types); | |||
| final PageInfo<WxTemplateMsg> page = wxTemplateMsgService.listAsPageForMiniApp(wxTemplateMsg, pageNum, pageSize); | |||
| return new ResultData(page); | |||
| } | |||
| @ApiOperation("模板分页列表接口") | |||
| @GetMapping("templateListV1") | |||
| @ApiImplicitParams({ | |||
| @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), | |||
| @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) | |||
| @SystemControllerLog(description = "moban-列表") | |||
| public ResultData templateListV1(@ModelAttribute WxTemplateMsg wxTemplateMsg, Integer pageNum, Integer pageSize) { | |||
| logger.debug("[" + getIpAddr() + "] WxMsgController::list"); | |||
| if (null == wxTemplateMsg) wxTemplateMsg = new WxTemplateMsg(); | |||
| wxTemplateMsg.updateTenantInfo(getTenantInfo()); | |||
| List<Integer> types = new ArrayList<>(); | |||
| types.add(EnumTemplateType.ACTIVITY_REMIND.getCode()); | |||
| types.add(EnumTemplateType.LIVE_REMIND.getCode()); | |||
| types.add(EnumTemplateType.CREDIT_UPD_REMIND.getCode()); | |||
| wxTemplateMsg.setTypes(types); | |||
| final PageInfo<WxTemplateMsg> page = wxTemplateMsgService.listAsPageForMiniApp(wxTemplateMsg, pageNum, pageSize); | |||
| return new ResultData(page); | |||
| } | |||
| @@ -0,0 +1,13 @@ | |||
| ALTER TABLE `wx_merchant` | |||
| ADD COLUMN `business_types` json AFTER `business_id`; | |||
| ALTER TABLE `wx_pay_account` | |||
| ADD COLUMN `notify_token` varchar(255) COMMENT '回调token' AFTER `notify_url`; | |||
| ALTER TABLE `wx_merchant` | |||
| ADD COLUMN `mark` smallint(1) COMMENT '记号' AFTER `action_desc`; | |||
| ALTER TABLE `wx_merchant` | |||
| ADD COLUMN `entry_amount` int(11) DEFAULT 0 COMMENT '入账金额' AFTER `credit_locked`; | |||
| UPDATE wx_merchant SET entry_amount = 0 ; | |||
| @@ -0,0 +1,499 @@ | |||
| ALTER TABLE `ali_business_circle_order_0` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_1` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_2` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_3` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_4` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_5` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_6` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_7` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_8` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_9` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_10` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_11` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_12` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_13` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_14` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_15` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_16` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_17` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_18` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_19` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_20` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_21` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_22` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_23` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_24` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_25` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_26` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_27` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_28` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_29` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_30` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_31` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_32` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_33` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_34` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_35` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_36` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_37` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_38` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_39` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_40` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_41` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_42` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_43` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_44` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_45` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_46` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_47` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_48` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_49` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_50` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_51` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_52` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_53` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_54` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_55` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_56` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_57` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_58` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_59` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_60` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_61` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_62` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_63` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_64` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_65` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_66` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_67` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_68` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_69` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_70` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_71` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_72` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_73` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_74` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_75` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_76` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_77` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_78` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_79` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_80` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_81` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_82` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_83` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_84` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_85` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_86` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_87` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_88` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_89` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_90` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_91` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_92` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_93` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_94` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_95` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_96` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_97` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_98` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `ali_business_circle_order_99` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| @@ -0,0 +1,499 @@ | |||
| ALTER TABLE `wx_business_circle_order_0` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_1` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_2` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_3` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_4` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_5` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_6` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_7` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_8` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_9` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_10` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_11` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_12` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_13` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_14` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_15` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_16` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_17` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_18` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_19` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_20` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_21` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_22` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_23` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_24` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_25` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_26` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_27` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_28` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_29` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_30` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_31` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_32` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_33` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_34` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_35` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_36` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_37` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_38` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_39` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_40` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_41` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_42` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_43` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_44` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_45` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_46` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_47` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_48` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_49` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_50` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_51` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_52` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_53` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_54` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_55` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_56` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_57` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_58` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_59` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_60` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_61` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_62` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_63` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_64` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_65` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_66` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_67` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_68` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_69` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_70` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_71` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_72` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_73` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_74` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_75` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_76` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_77` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_78` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_79` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_80` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_81` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_82` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_83` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_84` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_85` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_86` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_87` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_88` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_89` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_90` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_91` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_92` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_93` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_94` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_95` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_96` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_97` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_98` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_business_circle_order_99` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| @@ -0,0 +1,499 @@ | |||
| ALTER TABLE `wx_third_party_orders_0` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_1` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_2` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_3` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_4` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_5` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_6` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_7` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_8` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_9` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_10` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_11` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_12` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_13` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_14` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_15` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_16` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_17` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_18` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_19` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_20` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_21` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_22` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_23` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_24` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_25` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_26` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_27` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_28` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_29` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_30` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_31` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_32` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_33` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_34` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_35` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_36` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_37` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_38` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_39` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_40` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_41` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_42` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_43` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_44` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_45` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_46` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_47` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_48` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_49` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_50` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_51` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_52` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_53` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_54` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_55` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_56` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_57` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_58` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_59` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_60` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_61` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_62` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_63` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_64` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_65` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_66` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_67` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_68` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_69` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_70` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_71` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_72` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_73` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_74` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_75` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_76` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_77` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_78` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_79` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_80` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_81` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_82` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_83` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_84` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_85` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_86` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_87` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_88` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_89` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_90` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_91` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_92` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_93` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_94` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_95` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_96` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_97` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_98` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| ALTER TABLE `wx_third_party_orders_99` | |||
| ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, | |||
| ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, | |||
| ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; | |||
| @@ -0,0 +1,20 @@ | |||
| --加商圈交易菜单 | |||
| INSERT INTO `mall_permission`(`id`, `name`, `parent_id`, `available`, `permission`, `resource_type`, `module_color`, `module_color_num`, `url`, `icon`, `version_type`, `sort`) VALUES (420, 'ALI商圈交易', 416, 'Y', NULL, 1, NULL, NULL, 'aliCircle', NULL, 0, 420); | |||
| INSERT INTO `mall_permission`(`id`, `name`, `parent_id`, `available`, `permission`, `resource_type`, `module_color`, `module_color_num`, `url`, `icon`, `version_type`, `sort`) VALUES (421, 'WX商圈交易', 416, 'Y', NULL, 1, NULL, NULL, 'wxCircle', NULL, 0, 421); | |||
| INSERT INTO `mall_permission`(`id`, `name`, `parent_id`, `available`, `permission`, `resource_type`, `module_color`, `module_color_num`, `url`, `icon`, `version_type`, `sort`) VALUES (422, '麟客交易', 416, 'Y', NULL, 1, NULL, NULL, 'lkCircle', NULL, 0, 422); | |||
| --销售类型加权限 | |||
| update mall_sale_type set menus = '[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 50, 101, 102, 103, 104, 105, 106, 107, 108, 201, 202, 203, 204, 205, 206, 209, 211, 212, 221, 222, 251, 299, 300, 301, 302, 303, 304, 305, 306, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 420, 421, 422, 501, 502, 503, 504, 505, 506, 507, 508, 509, 511, 512, 513, 514, 521, 522, 523, 531, 532, 533, 591, 592, 595, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 621, 622, 623, 624, 625, 626, 627, 641, 642, 643, 644, 645, 646, 651, 661, 662, 663, 664, 671, 672, 673, 674, 675, 681, 682, 683, 684, 685, 686, 691, 692, 693, 694, 695, 701, 702, 703, 704, 711, 712, 713, 901, 902, 903, 904, 905, 931, 932, 951, 952, 961, 962, 963, 965, 966, 967, 968, 1001, 1002, 1003, 1004, 60701, 60702]' where id=1; | |||
| INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`) | |||
| select CEILING(RAND()*90000000000+10000000000) ,tenant_id,parent_tenant_id,'',50,'{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}',now(),now() | |||
| from wx_mall | |||
| where id != 1 and id != 10011 and id != 10071 and id != 10141 ; | |||
| INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`, `on_off`) VALUES (CEILING(RAND()*90000000000+10000000000), '1001', NULL, '', 50, '{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}', '2021-05-31 13:09:16', '2021-05-31 13:09:16', 0); | |||
| INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`, `on_off`) VALUES (CEILING(RAND()*90000000000+10000000000), '1007', NULL, '', 50, '{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}', '2021-05-31 13:09:16', '2021-05-31 13:09:16', 0); | |||
| INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`, `on_off`) VALUES (CEILING(RAND()*90000000000+10000000000), '1014', NULL, '', 50, '{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}', '2021-05-31 13:09:16', '2021-05-31 13:09:16', 0); | |||
| @@ -72,7 +72,7 @@ public class WxCouponController extends BaseController { | |||
| if(StringUtils.isNotBlank(wxCoupon.getSortColumn())){ | |||
| String coryColumn = "c."+wxCoupon.getSortColumns(); | |||
| wxCoupon.setSortColumn(coryColumn); | |||
| wxCoupon.setSortColumns(coryColumn); | |||
| wxCoupon.setSortColumn(null); | |||
| } | |||
| @@ -102,7 +102,7 @@ public class WxCouponController extends BaseController { | |||
| wxCoupon.setMerchantId(getLoginBUser().getMerchantId()); | |||
| if(StringUtils.isNotBlank(wxCoupon.getSortColumn())){ | |||
| String coryColumn = "c."+wxCoupon.getSortColumns(); | |||
| wxCoupon.setSortColumn(coryColumn); | |||
| wxCoupon.setSortColumns(coryColumn); | |||
| wxCoupon.setSortColumn(null); | |||
| } | |||
| return wxCouponService.list(wxCoupon,wxCoupon, pageNum, pageSize); //全列表 | |||
| @@ -3,6 +3,7 @@ package com.iformall.controller; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.iformall.common.ResultData; | |||
| import com.iformall.domain.po.WxTemplateMsg; | |||
| import com.iformall.enums.EnumTemplateType; | |||
| import com.iformall.service.WxTemplateMsgService; | |||
| import io.swagger.annotations.ApiImplicitParam; | |||
| import io.swagger.annotations.ApiImplicitParams; | |||
| @@ -12,6 +13,9 @@ import org.slf4j.LoggerFactory; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.web.bind.annotation.*; | |||
| import java.util.ArrayList; | |||
| import java.util.List; | |||
| /** | |||
| * @author gongbiao | |||
| @@ -33,6 +37,11 @@ public class WxMsgController extends BaseController { | |||
| logger.debug("[" + getIpAddr() + "] WxMsgController::list"); | |||
| if (null == wxTemplateMsg) wxTemplateMsg = new WxTemplateMsg(); | |||
| wxTemplateMsg.updateTenantInfo(getTenantInfo()); | |||
| List<Integer> types = new ArrayList<>(); | |||
| types.add(EnumTemplateType.ACTIVITY_REMIND.getCode()); | |||
| types.add(EnumTemplateType.LIVE_REMIND.getCode()); | |||
| types.add(EnumTemplateType.CREDIT_UPD_REMIND.getCode()); | |||
| wxTemplateMsg.setTypes(types); | |||
| final PageInfo<WxTemplateMsg> page = wxTemplateMsgService.listAsPageForMiniApp(wxTemplateMsg, pageNum, pageSize); | |||
| return new ResultData(page); | |||
| } | |||
| @@ -203,6 +203,8 @@ public enum ErrorCode{ | |||
| ORDER_USER_NOT_MATCH(2013, "订单用户不匹配"), | |||
| ORDER_COUPON_CHANNEL_NOT_MATCH(2014, "订单渠道不匹配"), | |||
| ORDER_COUPON_NOT_MATCH(2015, "订单券不匹配"), | |||
| ORDER_RECORDED_AMOUNT(2016, "已入账"), | |||
| ORDER_RECORDED_AMOUNT_ERROR(2017, "入账失败"), | |||
| /** | |||
| * 卡券 | |||
| @@ -65,9 +65,16 @@ public class BusinessCircleBase extends TenantEntity { | |||
| @io.swagger.annotations.ApiModelProperty(value="门店Id,与第三方对齐",name="merchantId") | |||
| private Long merchantId; | |||
| private String merchantName; | |||
| @TableField(exist = false) | |||
| private WxMerchant merchant; | |||
| @io.swagger.annotations.ApiModelProperty(value="c端会员id,与第三方对齐",name="cUserId") | |||
| private Long cUserId; | |||
| private String cUserNickName; | |||
| private String cUserPhone; | |||
| @TableField(exist = false) | |||
| private WxCUserBasicInfo basicInfo; | |||
| @io.swagger.annotations.ApiModelProperty(value="是否获得积分(1:是,0:否)",name="earnPoints") | |||
| private Integer earnPoints; | |||
| @@ -46,6 +46,9 @@ public class WxMerchant extends TenantEntity { | |||
| @TableField(exist = false) | |||
| private Long rentContractId; | |||
| @TableField(exist = false) | |||
| private Long cUserId; | |||
| @io.swagger.annotations.ApiModelProperty(value="商户编码",name="encode") | |||
| @Excel(name="商户编码",width = 20,orderNum = "1") | |||
| private String encode; | |||
| @@ -245,6 +248,9 @@ public class WxMerchant extends TenantEntity { | |||
| private String introduction; | |||
| @io.swagger.annotations.ApiModelProperty(value="优惠活动",name="actionDesc") | |||
| private String actionDesc; | |||
| @io.swagger.annotations.ApiModelProperty(value = "记号1是0否", name = "mark") | |||
| private Integer mark; | |||
| @io.swagger.annotations.ApiModelProperty(value = "是否删除1是0否", name = "isDel") | |||
| private Integer isDel; | |||
| @io.swagger.annotations.ApiModelProperty(value = "客服电话", name = "linkLinePhone") | |||
| @@ -267,6 +273,9 @@ public class WxMerchant extends TenantEntity { | |||
| @io.swagger.annotations.ApiModelProperty(value = "积分锁定0正常1锁定", name = "creditLocked") | |||
| private Integer creditLocked; | |||
| @io.swagger.annotations.ApiModelProperty(value = "入账金额(分)", name = "entryAmount") | |||
| private Integer entryAmount; | |||
| @io.swagger.annotations.ApiModelProperty(value = "商户待提现金额(分)", name = "cashOutNumber") | |||
| private Integer cashOutNumber; | |||
| @@ -24,6 +24,8 @@ public class WxPayAccount extends TenantEntity { | |||
| private String merchantApiKey; | |||
| @io.swagger.annotations.ApiModelProperty(value="微信回调,支持3种回调,(1.url/pay 2.url/refund3.url/separate)",name="notifyUrl") | |||
| private String notifyUrl; | |||
| @io.swagger.annotations.ApiModelProperty(value="tt回调token",name="notifyToken") | |||
| private String notifyToken; | |||
| @io.swagger.annotations.ApiModelProperty(value="证书本地存放位置",name="certPath") | |||
| private String certPath; | |||
| @io.swagger.annotations.ApiModelProperty(value="商户自己的证书",name="merchantCertPath") | |||
| @@ -33,6 +33,9 @@ public class WxTemplateMsg extends TenantEntity { | |||
| @TableField(exist = false) | |||
| private String typeName; | |||
| @TableField(exist = false) | |||
| private List<Integer> types; | |||
| public String getTypeName(){ | |||
| if(this.getType() != null) { | |||
| @@ -62,6 +62,9 @@ public class BaseEntity implements Serializable { | |||
| for (Field field : fieldList) { | |||
| SortColumn sortColumnField = field.getAnnotation(SortColumn.class); | |||
| if (sortColumnField != null && field.getName().equals(sortColumn)) { | |||
| if(StringUtils.isBlank(sortOrder)){ | |||
| return sortColumnField.column(); | |||
| } | |||
| return sortColumnField.column() + " "+sortOrder; | |||
| } | |||
| } | |||
| @@ -79,6 +82,9 @@ public class BaseEntity implements Serializable { | |||
| } | |||
| //默认驼峰解析 | |||
| if(StringUtils.isBlank(sortOrder)){ | |||
| return underscoreName(sortColumn); | |||
| } | |||
| return underscoreName(sortColumn) +" "+sortOrder; | |||
| } | |||
| } catch (Exception e) { | |||
| @@ -161,6 +167,9 @@ public class BaseEntity implements Serializable { | |||
| UpdateDate_ASC("`update_date` ASC"), | |||
| UpdateDate_DESC("`update_date` DESC"), | |||
| CUpdateDate_ASC("c.`update_date` ASC"), | |||
| CUpdateDate_DESC("c.`update_date` DESC"), | |||
| CCUpdateDate_ASC("cc.`update_date` ASC"), | |||
| CCUpdateDate_DESC("cc.`update_date` DESC"), | |||
| @@ -23,6 +23,9 @@ public class TtCoupon extends TenantEntity { | |||
| protected Long id; | |||
| @TableField(exist = false) | |||
| private Long cUserId; | |||
| @TableField(exist = false) | |||
| protected List<Integer> types; | |||
| @@ -56,6 +59,9 @@ public class TtCoupon extends TenantEntity { | |||
| @io.swagger.annotations.ApiModelProperty(value="副标题",name="subTitle") | |||
| private String subTitle; | |||
| @io.swagger.annotations.ApiModelProperty(value="type=1时,课时",name="countClass") | |||
| private Integer countClass; | |||
| @io.swagger.annotations.ApiModelProperty(value="",name="videoId") | |||
| private String videoId; | |||
| @io.swagger.annotations.ApiModelProperty(value="视频时长(秒)",name="videoTime") | |||
| @@ -108,6 +114,8 @@ public class TtCoupon extends TenantEntity { | |||
| @io.swagger.annotations.ApiModelProperty(value="收藏数",name="collectCount") | |||
| private Integer collectCount; | |||
| @io.swagger.annotations.ApiModelProperty(value = "记号1是0否", name = "mark") | |||
| private Integer mark; | |||
| @io.swagger.annotations.ApiModelProperty(value = "是否删除1是0否", name = "isDel") | |||
| private Integer isDel; | |||
| @@ -141,6 +149,10 @@ public class TtCoupon extends TenantEntity { | |||
| @TableField(exist = false) | |||
| private List<TtCoupon> columnCoupons; | |||
| @TableField(exist = false) | |||
| @io.swagger.annotations.ApiModelProperty(value="是否可观看",name="view") | |||
| private boolean view; | |||
| @TableField(exist = false) | |||
| @io.swagger.annotations.ApiModelProperty(value = "审批流参数", name = "flowParams") | |||
| private Map<String, Object> flowParams; | |||
| @@ -3,6 +3,7 @@ package com.iformall.domain.po.tt; | |||
| import cn.afterturn.easypoi.excel.annotation.Excel; | |||
| import com.baomidou.mybatisplus.annotation.TableField; | |||
| import com.baomidou.mybatisplus.annotation.TableName; | |||
| import com.iformall.domain.po.WxMerchant; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import lombok.Data; | |||
| import lombok.EqualsAndHashCode; | |||
| @@ -28,25 +29,25 @@ public class TtOrder extends TenantEntity { | |||
| private String phone; | |||
| @io.swagger.annotations.ApiModelProperty(value="产品ID(couponId)",name="productId") | |||
| private Long productId; | |||
| @TableField(exist = false) | |||
| private String productTitle; | |||
| @TableField(exist = false) | |||
| private String productPic; | |||
| @TableField(exist = false) | |||
| private Long authorId; | |||
| private Integer productSalePrice; | |||
| private Long merchantId; | |||
| @TableField(exist = false) | |||
| private String author; | |||
| @TableField(exist = false) | |||
| private String authorPic; | |||
| @io.swagger.annotations.ApiModelProperty(value="支付类型(1:微信,)",name="type") | |||
| @io.swagger.annotations.ApiModelProperty(value="支付类型5 头条担保支付",name="type") | |||
| private Integer type; | |||
| @io.swagger.annotations.ApiModelProperty(value="支付渠道:2-支付宝,1-微信,3-银行卡",name="way") | |||
| private Integer way; | |||
| @io.swagger.annotations.ApiModelProperty(value="0: 付款 1: 退款",name="paymentType") | |||
| private Integer paymentType; | |||
| @io.swagger.annotations.ApiModelProperty(value="支付金额(分):允许有负数,退款时为负值。",name="payment") | |||
| private Integer payment; | |||
| @io.swagger.annotations.ApiModelProperty(value="支付时间",name="paymentTime") | |||
| private Date paymentTime; | |||
| private String paymentTime; | |||
| @Excel(name = "订单状态", width = 20, orderNum = "9", replace = {"待付款_0", "已支付_1", "已取消_2", "待退款_3", "已退款_4", "退款失败_5", " _-1"}) | |||
| @io.swagger.annotations.ApiModelProperty(value="\"待付款_0\", \"已支付_1\", \"已取消_2\", \"待退款_3\", \"已退款_4\", \"退款失败_5\", \" _-1\"",name="orderStatus") | |||
| @@ -58,6 +59,12 @@ public class TtOrder extends TenantEntity { | |||
| @io.swagger.annotations.ApiModelProperty(value="更新时间",name="updateDate") | |||
| private Date updateDate; | |||
| @io.swagger.annotations.ApiModelProperty(value="是否入账",name="isRecorded") | |||
| private Integer isRecorded; | |||
| @io.swagger.annotations.ApiModelProperty(value="入账时间",name="recordedDate") | |||
| private Date recordedDate; | |||
| public String getPaymentStr() { | |||
| return payment != null ? new BigDecimal(payment).divide(new BigDecimal(100)).toPlainString() : paymentStr; | |||
| @@ -68,7 +75,13 @@ public class TtOrder extends TenantEntity { | |||
| private String paymentStr; | |||
| @TableField(exist = false) | |||
| protected TtCoupon ttCoupon; | |||
| protected TtCUser cUser; | |||
| @TableField(exist = false) | |||
| protected TtCoupon coupon; | |||
| @TableField(exist = false) | |||
| protected WxMerchant merchant; | |||
| @TableField(exist = false) | |||
| protected List<Integer> statusS; | |||
| @@ -31,4 +31,7 @@ public class TtUserCollectFollow extends TenantEntity { | |||
| @io.swagger.annotations.ApiModelProperty(value="查询-结束时间",name="enddate") | |||
| private Date enddate; | |||
| @TableField(exist = false) | |||
| private String name; | |||
| } | |||
| @@ -3,11 +3,13 @@ package com.iformall.douyin.pay; | |||
| import java.io.UnsupportedEncodingException; | |||
| import java.net.URLEncoder; | |||
| import java.nio.charset.Charset; | |||
| import java.util.HashMap; | |||
| import java.util.Map; | |||
| import java.util.TreeMap; | |||
| import java.nio.charset.StandardCharsets; | |||
| import java.security.MessageDigest; | |||
| import java.security.NoSuchAlgorithmException; | |||
| import java.util.*; | |||
| import java.util.Map.Entry; | |||
| import com.iformall.utils.sign.SignUtils; | |||
| import org.apache.commons.lang3.StringUtils; | |||
| import com.alibaba.fastjson.JSON; | |||
| @@ -27,66 +29,94 @@ import lombok.extern.slf4j.Slf4j; | |||
| */ | |||
| @Slf4j | |||
| public class DouYinPayHelper { | |||
| /** | |||
| * urlEncode | |||
| * | |||
| * @param src | |||
| * 微信参数 | |||
| * @return String | |||
| * @throws UnsupportedEncodingException | |||
| * 编码错误 | |||
| */ | |||
| private static String urlEncode(String src) throws UnsupportedEncodingException { | |||
| return URLEncoder.encode(src, Charset.forName("UTF-8").name()).replace("+", "%20"); | |||
| } | |||
| /** | |||
| * 组装签名的字段 | |||
| * | |||
| * @param params | |||
| * 参数 | |||
| * @param urlEncoder | |||
| * 是否urlEncoder | |||
| * @return String | |||
| */ | |||
| private static String packageSign(Map<String, String> params, boolean urlEncoder) { | |||
| // 先将参数以其参数名的字典序升序进行排序 | |||
| TreeMap<String, String> sortedParams = new TreeMap<String, String>(params); | |||
| // 遍历排序后的字典,字段内容(不包含 key)与支付 SALT 一起进行字典序排序后,使用&符号链接 | |||
| StringBuilder sb = new StringBuilder(); | |||
| boolean first = true; | |||
| for (Entry<String, String> param : sortedParams.entrySet()) { | |||
| String value = param.getValue(); | |||
| if (StringUtils.isBlank(value)) { | |||
| public static String getSign(Map<String, Object> paramsMap) { | |||
| List<String> paramsArr = new ArrayList<>(); | |||
| for (Map.Entry<String, Object> entry : paramsMap.entrySet()) { | |||
| String key = entry.getKey(); | |||
| if (key.equals("other_settle_params")) { | |||
| continue; | |||
| } | |||
| if (first) { | |||
| first = false; | |||
| } else { | |||
| sb.append("&"); | |||
| String value = entry.getValue().toString(); | |||
| value = value.trim(); | |||
| if (value.startsWith("\"") && value.endsWith("\"") && value.length() > 1) { | |||
| value = value.substring(1, value.length() - 1); | |||
| } | |||
| value = value.trim(); | |||
| if (value.equals("") || value.equals("null")) { | |||
| continue; | |||
| } | |||
| if (urlEncoder) { | |||
| try { | |||
| value = urlEncode(value); | |||
| } catch (UnsupportedEncodingException e) { | |||
| } | |||
| switch (key) { | |||
| case "app_id": | |||
| case "thirdparty_id": | |||
| case "sign": | |||
| break; | |||
| default: | |||
| paramsArr.add(value); | |||
| break; | |||
| } | |||
| sb.append(value); | |||
| } | |||
| return sb.toString(); | |||
| Collections.sort(paramsArr); | |||
| StringBuilder signStr = new StringBuilder(); | |||
| String sep = ""; | |||
| for (String s : paramsArr) { | |||
| signStr.append(sep).append(s); | |||
| sep = "&"; | |||
| } | |||
| return md5FromStr(signStr.toString()); | |||
| } | |||
| public static String createSign(Map<String, String> params, String sercrect) { | |||
| // 生成签名前先去除sign | |||
| params.remove("sign"); | |||
| params.remove("app_id"); | |||
| params.remove("thirdparty_id"); | |||
| String stringA = packageSign(params, false); | |||
| String stringSignTemp = stringA + "&" + sercrect; | |||
| return HashUtil.md5(stringSignTemp).toUpperCase(); | |||
| public static String md5FromStr(String inStr) { | |||
| MessageDigest md5; | |||
| try { | |||
| md5 = MessageDigest.getInstance("MD5"); | |||
| } catch (NoSuchAlgorithmException e) { | |||
| e.printStackTrace(); | |||
| return ""; | |||
| } | |||
| byte[] byteArray = inStr.getBytes(StandardCharsets.UTF_8); | |||
| byte[] md5Bytes = md5.digest(byteArray); | |||
| StringBuilder hexValue = new StringBuilder(); | |||
| for (byte md5Byte : md5Bytes) { | |||
| int val = ((int) md5Byte) & 0xff; | |||
| if (val < 16) { | |||
| hexValue.append("0"); | |||
| } | |||
| hexValue.append(Integer.toHexString(val)); | |||
| } | |||
| return hexValue.toString(); | |||
| } | |||
| public static String getTTBackSign(Map<String, Object> params, String signMethod) { | |||
| List<String> paramsArr = new ArrayList<>(); | |||
| for (Map.Entry<String, Object> entry : params.entrySet()) { | |||
| String key = entry.getKey(); | |||
| String value = entry.getValue().toString(); | |||
| value = value.trim(); | |||
| if (value.startsWith("\"") && value.endsWith("\"") && value.length() > 1) { | |||
| value = value.substring(1, value.length() - 1); | |||
| } | |||
| value = value.trim(); | |||
| if (value.equals("") || value.equals("null")) { | |||
| continue; | |||
| } | |||
| paramsArr.add(value); | |||
| } | |||
| Collections.sort(paramsArr); | |||
| StringBuilder signStr = new StringBuilder(); | |||
| String sep = ""; | |||
| for (String s : paramsArr) { | |||
| signStr.append(sep).append(s); | |||
| } | |||
| return SignUtils.encrypt(signStr.toString(),signMethod); | |||
| } | |||
| public static String doPost(String url, Map<String, String> params) { | |||
| public static String doPost(String url, Map<String, Object> params) { | |||
| return HttpUtil.payPost(url, JSON.toJSONString(params)); | |||
| } | |||
| @@ -119,12 +149,15 @@ public class DouYinPayHelper { | |||
| //订单查询 | |||
| public static OrderQueryResult orderQuery(String appId,String secrect,String orderNo,String thirdParytyId) { | |||
| public static OrderQueryResult orderQuery(String appId,String salt,String orderNo,String thirdParytyId) { | |||
| Map map = new HashMap(); | |||
| map.put("app_id",appId); | |||
| map.put("salt",salt); | |||
| map.put("out_order_no",orderNo); | |||
| map.put("sign",createSign(map, secrect)); | |||
| // map.put("sign",createSign(map, secrect)); | |||
| map.put("sign",getSign(map)); | |||
| String response = doPost("https://developer.toutiao.com/api/apps/ecpay/v1/query_order", map); | |||
| log.info("查询订单结果 response:"+response); | |||
| JSONObject jsonObject = JSON.parseObject(response); | |||
| JSONObject info = jsonObject.getJSONObject("payment_info"); | |||
| if (null != info) { | |||
| @@ -6,12 +6,14 @@ import java.util.Map; | |||
| import com.iformall.douyin.pay.DouYinPayHelper; | |||
| import lombok.Data; | |||
| import org.apache.commons.lang3.StringUtils; | |||
| @Data | |||
| public class DouYinCreatePreOrder { | |||
| private String appId;//小程序 AppID | |||
| private String sercrect;//密钥 | |||
| private String salt;// | |||
| private String outOrderNo;//开发者侧的订单号, 同一小程序下不可重复 | |||
| private Integer totalAmount;//支付价格; 接口中参数支付金额单位为[分] | |||
| private String subject;//商品描述; 长度限制 128 字节,不超过 42 个汉字 | |||
| @@ -27,19 +29,32 @@ public class DouYinCreatePreOrder { | |||
| public Map toRequestMap() { | |||
| Map map = new HashMap(); | |||
| map.put("app_id", appId); | |||
| map.put("salt",salt); | |||
| map.put("out_order_no", outOrderNo); | |||
| map.put("total_amount", totalAmount); | |||
| map.put("subject", subject); | |||
| map.put("body", body); | |||
| map.put("valid_time", validTime); | |||
| map.put("cp_extra", cpExtra); | |||
| map.put("notify_url", notifyUrl); | |||
| map.put("thirdparty_id", thirdpartyId); | |||
| map.put("disable_msg", disableMsg); | |||
| map.put("msg_page", msgPage); | |||
| map.put("store_uid", storeUid); | |||
| if(StringUtils.isNotBlank(cpExtra)){ | |||
| map.put("cp_extra", cpExtra); | |||
| } | |||
| if(StringUtils.isNotBlank(notifyUrl)){ | |||
| map.put("notify_url", notifyUrl); | |||
| } | |||
| if(StringUtils.isNotBlank(thirdpartyId)){ | |||
| map.put("thirdparty_id", thirdpartyId); | |||
| } | |||
| if(disableMsg != null){ | |||
| map.put("disable_msg", disableMsg); | |||
| } | |||
| if(StringUtils.isNotBlank(msgPage)){ | |||
| map.put("msg_page", msgPage); | |||
| } | |||
| if(StringUtils.isNotBlank(storeUid)){ | |||
| map.put("store_uid", storeUid); | |||
| } | |||
| map.put("sign", DouYinPayHelper.createSign(map, sercrect)); | |||
| map.put("sign", DouYinPayHelper.getSign(map)); | |||
| return map; | |||
| } | |||
| } | |||
| @@ -11,8 +11,12 @@ public enum EnumTemplateType { | |||
| VERIFY_FAIL(2, "核销失败消息",""), // 小程序(作废) | |||
| PRESS_SUCCESS(3, "砍价成功消息",""), // 小程序(作废) | |||
| /** | |||
| * | |||
| */ | |||
| ACTIVITY_REMIND(4, "活动开始提醒","386"), // 小程序 | |||
| LIVE_REMIND(5, "直播开播提醒","8501"), // 小程序 | |||
| CREDIT_UPD_REMIND(50, "积分变更提醒","310"), // 小程序 | |||
| AUDIT_MESSAGE(101, "公众号审核结果通知",""), // 公众号 | |||
| VERIFY_RESULT(102, "公众号卡券核销通知",""), // 公众号 | |||
| @@ -7,12 +7,14 @@ public enum EnumTtOrderStatus { | |||
| ORDER_STATUS_PENDING_PAYMENT(0, "待付款"), | |||
| ORDER_STATUS_PAYMENT_ING(1,"支付中"), | |||
| ORDER_STATUS_PAYMENT_SUCCESS(1, "已支付"), | |||
| ORDER_STATUS_OVERTIME_CANCEL(2, "已取消"), | |||
| ORDER_STATUS_PENDING_REFUND(3, "待退款"), | |||
| ORDER_STATUS_REFUND_SUCCESS(4,"已退款"), | |||
| ORDER_STATUS_REFUND_FAILD(5, "退款失败"), | |||
| // ORDER_STATUS_PAYMENT_ING(1,"支付中"), | |||
| ORDER_STATUS_PAYMENT_SUCCESS(2, "已支付"), | |||
| ORDER_STATUS_OVERTIME_CANCEL(3, "已取消"),//已关闭 | |||
| ORDER_STATUS_PENDING_REFUND(4, "待退款"), | |||
| ORDER_STATUS_REFUND_SUCCESS(5,"已退款"), | |||
| ORDER_STATUS_REFUND_FAILD(6, "退款失败"), | |||
| ; | |||
| public static EnumTtOrderStatus getEnum(Integer code) { | |||
| @@ -19,7 +19,7 @@ public interface TtCUserMapper extends CommonMapper<TtCUser, Long> { | |||
| TtCUser findByToken(@Param("token")String token,@Param("tenantId")String tenantId); | |||
| TtCUser selectById(@Param("id")Long id,@Param("tenantId")String tenantId); | |||
| TtCUser getById(@Param("id")Long id,@Param("tenantId")String tenantId); | |||
| long findCount(WxCUserBasicInfoDto dto); | |||
| @@ -63,4 +63,5 @@ public interface TtCouponMapper extends CommonMapper<TtCoupon, Long> { | |||
| */ | |||
| int addPopularity(@Param("id")Long id,@Param("popularity")Integer popularity); | |||
| List<TtCoupon> findCollectList(TtCoupon record); | |||
| } | |||
| @@ -8,6 +8,7 @@ import com.iformall.domain.po.tt.TtOrder; | |||
| import com.iformall.domain.vo.*; | |||
| import org.apache.ibatis.annotations.Param; | |||
| import java.util.Date; | |||
| import java.util.HashMap; | |||
| import java.util.List; | |||
| import java.util.Map; | |||
| @@ -16,5 +17,13 @@ public interface TtOrderMapper extends CommonMapper<TtOrder, Long> { | |||
| List<TtOrder> findList(TtOrder record); | |||
| List<TtOrder> findCList(TtOrder record); | |||
| Integer findListCount(TtOrder orderQ); | |||
| // int updateExpire(@Param("expireDate")Date expireDate,@Param("orderStatus") Integer orderStatus); | |||
| List<Long> findBeforeIdList(@Param("beforeDate")Date beforeDate,@Param("orderStatus") Integer orderStatus,@Param("isRecorded") Integer isRecorded); | |||
| int updateIsRecorded(@Param("id")Long id, @Param("isRecorded")Integer isRecorded); | |||
| } | |||
| @@ -53,4 +53,8 @@ public interface WxMerchantMapper extends CommonMapper<WxMerchant, Long> { | |||
| void reSetCashCount(WxMerchant record); | |||
| WxMerchant getMerchantByEncode(@Param("encode")String encode); | |||
| List<WxMerchant> findFollowList(WxMerchant record); | |||
| int recordedAmount(WxMerchant record); | |||
| } | |||
| @@ -3,6 +3,7 @@ package com.iformall.service; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.iformall.domain.po.AliBusinessCircleOrder; | |||
| import com.iformall.domain.po.WxMerchant; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import java.util.List; | |||
| @@ -25,6 +26,7 @@ public interface AliBusinessCircleOrderService { | |||
| * @return | |||
| */ | |||
| AliBusinessCircleOrder getById(Long id, String tenantId); | |||
| AliBusinessCircleOrder detail(Long id, TenantEntity tenantInfo); | |||
| /** | |||
| * transactionId+tenantId | |||
| @@ -2,6 +2,7 @@ package com.iformall.service; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.iformall.domain.po.WxBusinessCircleOrder; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import java.util.List; | |||
| @@ -24,6 +25,7 @@ public interface WxBusinessCircleOrderService { | |||
| * @return | |||
| */ | |||
| WxBusinessCircleOrder getById(Long id, String tenantId); | |||
| WxBusinessCircleOrder detail(Long id, TenantEntity tenantInfo); | |||
| /** | |||
| * transactionId+tenantId | |||
| @@ -49,5 +51,4 @@ public interface WxBusinessCircleOrderService { | |||
| */ | |||
| void updateIsPointsNotify(WxBusinessCircleOrder record); | |||
| } | |||
| @@ -1,6 +1,7 @@ | |||
| package com.iformall.service; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.iformall.common.ErrorCode; | |||
| import com.iformall.common.ResultData; | |||
| import com.iformall.domain.dto.WxMerchantDto; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| @@ -106,6 +107,7 @@ public interface WxMerchantService { | |||
| * @param id | |||
| * @return | |||
| */ | |||
| WxMerchant selectById(Long id); | |||
| WxMerchant getById(Long id); | |||
| /** | |||
| @@ -161,4 +163,10 @@ public interface WxMerchantService { | |||
| List<Long> getMerchantShopIds(Long merchantId); | |||
| void followMerchant(TenantEntity tenantEntity, Long memberId, Long id); | |||
| void cancelFollow(Long memberId, Long id); | |||
| int getfollow(Long memberId, Long id); | |||
| PageInfo<WxMerchant> followListAsPage(WxMerchant record, Integer pageNum, Integer pageSize); | |||
| } | |||
| @@ -2,6 +2,7 @@ package com.iformall.service; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.iformall.domain.po.WxThirdPartyOrders; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.enums.EnumThirdOrderType; | |||
| import java.util.List; | |||
| @@ -25,6 +26,7 @@ public interface WxThirdPartyOrdersService { | |||
| * @return | |||
| */ | |||
| WxThirdPartyOrders getById(Long id, String tenantId); | |||
| WxThirdPartyOrders detail(Long id, TenantEntity tenantInfo); | |||
| /** | |||
| * transactionId+tenantId | |||
| @@ -51,4 +53,5 @@ public interface WxThirdPartyOrdersService { | |||
| * @param record | |||
| */ | |||
| void pointDeduction(WxThirdPartyOrders record); | |||
| } | |||
| @@ -4,6 +4,7 @@ import com.github.pagehelper.PageHelper; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.iformall.common.IdWorker; | |||
| import com.iformall.domain.po.*; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.enums.*; | |||
| import com.iformall.mapper.AliBusinessCircleOrderMapper; | |||
| import com.iformall.service.*; | |||
| @@ -16,7 +17,6 @@ import org.springframework.stereotype.Service; | |||
| import org.springframework.transaction.annotation.Propagation; | |||
| import org.springframework.transaction.annotation.Transactional; | |||
| import java.math.BigDecimal; | |||
| import java.util.Date; | |||
| import java.util.List; | |||
| @@ -59,6 +59,21 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder | |||
| return aliBusinessCircleOrderMapper.getById(recordQ); | |||
| } | |||
| @Override | |||
| public AliBusinessCircleOrder detail(Long id, TenantEntity tenantInfo) { | |||
| AliBusinessCircleOrder order = this.getById(id, tenantInfo.getTenantId()); | |||
| if(order.getMerchantId() != null){ | |||
| order.setMerchant(wxMerchantService.selectById(order.getMerchantId())); | |||
| } | |||
| if(order.getCUserId() != null){ | |||
| order.setBasicInfo(wxCUserBasicInfoService.getById(id,tenantInfo.getFinalTenantId())); | |||
| } | |||
| // if(order.getIsRefund() != null && order.getIsRefund().equals(EnumYesOrNo.YES.getCode())){ | |||
| // | |||
| // } | |||
| return order; | |||
| } | |||
| @Override | |||
| public AliBusinessCircleOrder getOrderByTransactionId(String transactionId, String tenantId) { | |||
| AliBusinessCircleOrder recordQ = new AliBusinessCircleOrder(); | |||
| @@ -110,6 +125,7 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder | |||
| // logger.error("--Ali商圈付款通知消息未找到门店--mallStoreId="+record.getMallStoreId()); | |||
| // } | |||
| record.setMerchantId(wxMerchant.getId()); | |||
| record.setMerchantName(wxMerchant.getName()); | |||
| AliPayCUser userQ = new AliPayCUser(); | |||
| userQ.updateTenantInfo(record); | |||
| @@ -120,6 +136,8 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder | |||
| WxCUserBasicInfo infoByPhone = wxCUserBasicInfoService.registerByPhone(aliUser, aliUser.getPhone(),aliUser.getName(),null,null); | |||
| if(infoByPhone != null ){ | |||
| record.setCUserId(infoByPhone.getId()); | |||
| record.setCUserNickName(infoByPhone.getNickName()); | |||
| record.setCUserPhone(infoByPhone.getPhone()); | |||
| }else{ | |||
| logger.error("--Ali商圈付款通知消息未找到会员--aliUserId="+record.getBuyerId()); | |||
| } | |||
| @@ -129,6 +147,7 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder | |||
| aliBusinessCircleOrderMapper.insertNoticeOrder(record); | |||
| if(record.getCUserId() == null){ | |||
| redisLock.unlock(lockKey, timeStr); | |||
| return; | |||
| } | |||
| Integer businessId = EnumBusiness.BUSINESS_ID6.getCode(); | |||
| @@ -153,6 +172,7 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder | |||
| creditNum = creditHistory.getCreditNum(); | |||
| } | |||
| if(creditNum == 0){ | |||
| redisLock.unlock(lockKey, timeStr); | |||
| return; | |||
| } | |||
| record.setIncreasedPoints(creditNum); | |||
| @@ -221,7 +241,10 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder | |||
| record.setAmount(order.getAmount()); | |||
| record.setPayAmount(order.getPayAmount()); | |||
| record.setCUserId(order.getCUserId()); | |||
| record.setCUserNickName(order.getCUserNickName()); | |||
| record.setCUserPhone(order.getCUserPhone()); | |||
| record.setMerchantId(order.getMerchantId()); | |||
| record.setMerchantName(order.getMerchantName()); | |||
| aliBusinessCircleOrderMapper.insertRefundNoticeOrder(record); | |||
| order.setOrderStatus(2);//全额退款 订单关闭 | |||
| @@ -257,6 +280,7 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder | |||
| creditNum = creditHistory.getCreditNum(); | |||
| } | |||
| if(creditNum == 0){ | |||
| redisLock.unlock(lockKey, timeStr); | |||
| return; | |||
| } | |||
| @@ -64,7 +64,7 @@ public class TtCUserServiceImpl implements TtCUserService { | |||
| @Override | |||
| public TtCUser getById(Long id,String tenantId) { | |||
| return ttCUserMapper.selectById(id,tenantId); | |||
| return ttCUserMapper.getById(id,tenantId); | |||
| } | |||
| @Override | |||
| @@ -4,6 +4,7 @@ import com.github.pagehelper.PageHelper; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.iformall.common.IdWorker; | |||
| import com.iformall.domain.po.*; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.enums.*; | |||
| import com.iformall.mapper.WxBusinessCircleOrderMapper; | |||
| import com.iformall.service.*; | |||
| @@ -39,6 +40,9 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe | |||
| @Autowired | |||
| WxCUserService wxCUserService; | |||
| @Autowired | |||
| WxCUserBasicInfoService wxCUserBasicInfoService; | |||
| @Autowired | |||
| WxCreditHistoryService creditHistoryService; | |||
| @@ -59,6 +63,21 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe | |||
| return wxBusinessCircleOrderMapper.getById(recordQ); | |||
| } | |||
| @Override | |||
| public WxBusinessCircleOrder detail(Long id, TenantEntity tenantInfo) { | |||
| WxBusinessCircleOrder order = this.getById(id, tenantInfo.getTenantId()); | |||
| if(order.getMerchantId() != null){ | |||
| order.setMerchant(wxMerchantService.selectById(order.getMerchantId())); | |||
| } | |||
| if(order.getCUserId() != null){ | |||
| order.setBasicInfo(wxCUserBasicInfoService.getById(id,tenantInfo.getFinalTenantId())); | |||
| } | |||
| // if(order.getIsRefund() != null && order.getIsRefund().equals(EnumYesOrNo.YES.getCode())){ | |||
| // | |||
| // } | |||
| return order; | |||
| } | |||
| @Override | |||
| public WxBusinessCircleOrder getOrderByTransactionId(String transactionId, String tenantId) { | |||
| WxBusinessCircleOrder recordQ = new WxBusinessCircleOrder(); | |||
| @@ -106,6 +125,7 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe | |||
| WxMerchant wxMerchant = wxMerchantService.getMerchantByEncode(record.getWxShopNumber()); | |||
| if (wxMerchant != null) { | |||
| record.setMerchantId(wxMerchant.getId()); | |||
| record.setMerchantName(wxMerchant.getName()); | |||
| } else { | |||
| logger.error("--wx商圈付款通知消息未找到门店--shopName=" + record.getWxShopName() + "&shopNumber=" + record.getWxShopNumber()); | |||
| } | |||
| @@ -116,6 +136,8 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe | |||
| WxCUser user = wxCUserService.getByOpenId(userQ); | |||
| if (user != null && user.getUserId() != null) { | |||
| record.setCUserId(user.getUserId()); | |||
| record.setCUserNickName(user.getNickName()); | |||
| record.setCUserPhone(user.getPhone()); | |||
| } else { | |||
| logger.error("--Wx商圈付款通知消息未找到会员--openid=" + record.getOpenid()); | |||
| } | |||
| @@ -143,6 +165,7 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe | |||
| creditNum = creditHistory.getCreditNum(); | |||
| } | |||
| if(creditNum == 0){ | |||
| redisLock.unlock(lockKey, timeStr); | |||
| return; | |||
| } | |||
| record.setIncreasedPoints(creditNum); | |||
| @@ -208,7 +231,10 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe | |||
| record.setUpdateTime(now); | |||
| record.setCUserId(order.getCUserId()); | |||
| record.setCUserNickName(order.getCUserNickName()); | |||
| record.setCUserPhone(order.getCUserPhone()); | |||
| record.setMerchantId(order.getMerchantId()); | |||
| record.setMerchantName(order.getMerchantName()); | |||
| wxBusinessCircleOrderMapper.insertRefundNoticeOrder(record); | |||
| if((refundAmount + record.getRefundAmount()) == amount){ | |||
| @@ -248,6 +274,7 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe | |||
| creditNum = creditHistory.getCreditNum(); | |||
| } | |||
| if(creditNum == 0){ | |||
| redisLock.unlock(lockKey, timeStr); | |||
| return; | |||
| } | |||
| @@ -11,15 +11,13 @@ import com.iformall.common.IdWorker; | |||
| import com.iformall.common.ResultData; | |||
| import com.iformall.domain.po.*; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.domain.po.msg.WxMsg; | |||
| import com.iformall.domain.vo.MerchantCreditRankingVo; | |||
| import com.iformall.domain.vo.WxCreditHistoryVo; | |||
| import com.iformall.enums.*; | |||
| import com.iformall.exception.MallinkException; | |||
| import com.iformall.mapper.*; | |||
| import com.iformall.service.ExcelService; | |||
| import com.iformall.service.WxCreditHistoryService; | |||
| import com.iformall.service.WxMallService; | |||
| import com.iformall.service.WxScoreRulesService; | |||
| import com.iformall.service.*; | |||
| import com.iformall.utils.CreditUtil; | |||
| import com.iformall.utils.RedisLock; | |||
| import com.iformall.utils.UserUtil; | |||
| @@ -91,6 +89,12 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { | |||
| @Autowired | |||
| private WxMallService wxMallService; | |||
| @Autowired | |||
| private WxMsgService wxMsgService; | |||
| @Autowired | |||
| private WxTemplateMsgService wxTemplateMsgService; | |||
| @Override | |||
| public void clearCreditByYear() { | |||
| WxScoreRules wxScoreRules = new WxScoreRules(); | |||
| @@ -308,6 +312,35 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { | |||
| wxCUserBasicInfoMapper.updateById(wxCUserBasicInfoNew); | |||
| } | |||
| //发消息 | |||
| try { | |||
| WxTemplateMsg temp = new WxTemplateMsg(); | |||
| temp.updateTenantInfo(record); | |||
| temp.setType(EnumTemplateType.CREDIT_UPD_REMIND.getCode()); | |||
| temp = wxTemplateMsgService.getByObj(temp); | |||
| if(temp.getId() != null){ | |||
| WxMsg msg = new WxMsg(); | |||
| msg.updateTenantInfo(record); | |||
| msg.setWay(EnumSendWay.APPINFOR.getCode()); | |||
| msg.setIsright(EnumMsgSend.MSG_SEND_IMMEDIATELY.getCode()); | |||
| msg.setPhones(wxCUserBasicInfo.getPhone()); | |||
| msg.setModelId(temp.getId()); | |||
| Map<String,String> map = new HashMap<>(); | |||
| map.put("character_string1",record.getCreditNum().toString()); | |||
| map.put("character_string2",record.getCreditAmount().toString()); | |||
| map.put("time4",new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(record.getCreateDate())); | |||
| map.put("thing3",record.getChangePurpose()); | |||
| map.put("goToPage","pages/index/index?type=jf"); | |||
| msg.setMsg(JSONObject.toJSONString(map)); | |||
| msg.setName(EnumTemplateType.CREDIT_UPD_REMIND.name()); | |||
| msg.setSignature(EnumTemplateType.CREDIT_UPD_REMIND.name()); | |||
| wxMsgService.add(msg); | |||
| } | |||
| } catch (Exception e) { | |||
| logger.error("积分消息发送异常"); | |||
| } | |||
| } else { | |||
| //wxCreditHistoryMapper.updateById(record); | |||
| } | |||
| @@ -12,6 +12,7 @@ import com.iformall.domain.dto.WxMerchantDto; | |||
| import com.iformall.domain.po.*; | |||
| import com.iformall.domain.po.base.BaseEntity; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.domain.po.tt.TtUserFollow; | |||
| import com.iformall.domain.vo.*; | |||
| import com.iformall.enums.*; | |||
| import com.iformall.exception.MallinkException; | |||
| @@ -102,12 +103,12 @@ public class WxMerchantServiceImpl implements WxMerchantService { | |||
| @Autowired | |||
| WxPropertyContractService wxPropertyContractService; | |||
| @Autowired | |||
| TtUserFollowMapper ttUserFollowMapper; | |||
| @Override | |||
| public PageInfo<WxMerchant> listAsPage(WxMerchant record, Integer pageIndex, Integer pageSize) { | |||
| PageHelper.startPage(pageIndex, pageSize); | |||
| List<WxMerchant> merchants = wxMerchantMapper.findList(record); | |||
| PageInfo<WxMerchant> pageInfo = new PageInfo<>(merchants); | |||
| return pageInfo; | |||
| return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxMerchantMapper.findList(record)); | |||
| } | |||
| @Override | |||
| @@ -154,6 +155,11 @@ public class WxMerchantServiceImpl implements WxMerchantService { | |||
| return collect; | |||
| } | |||
| @Override | |||
| public WxMerchant selectById(Long id) { | |||
| return wxMerchantMapper.selectById(id); | |||
| } | |||
| @Override | |||
| public WxMerchant getById(Long id) { | |||
| WxMerchant wxMerchant = wxMerchantMapper.selectById(id); | |||
| @@ -941,4 +947,42 @@ public class WxMerchantServiceImpl implements WxMerchantService { | |||
| return wxMerchantShopMapper.findShopIds(merchantId); | |||
| } | |||
| @Override | |||
| public void followMerchant(TenantEntity tenantEntity, Long memberId, Long id) { | |||
| final IdWorker idWorker = IdWorker.get(); | |||
| TtUserFollow userFollow = new TtUserFollow(); | |||
| userFollow.setId(idWorker.nextId()); | |||
| userFollow.updateTenantInfo(tenantEntity); | |||
| userFollow.setUserId(memberId); | |||
| userFollow.setMerchernId(id); | |||
| userFollow.setCreateDate(new Date()); | |||
| userFollow.setUpdateDate(new Date()); | |||
| try { | |||
| ttUserFollowMapper.insert(userFollow); | |||
| } catch (Exception e) { | |||
| // e.printStackTrace(); | |||
| } | |||
| } | |||
| @Override | |||
| public void cancelFollow(Long memberId, Long id) { | |||
| TtUserFollow userFollow = new TtUserFollow(); | |||
| userFollow.setUserId(memberId); | |||
| userFollow.setMerchernId(id); | |||
| int delete = ttUserFollowMapper.delete(new QueryWrapper<>(userFollow)); | |||
| } | |||
| @Override | |||
| public int getfollow(Long memberId, Long id) { | |||
| TtUserFollow userFollow = new TtUserFollow(); | |||
| userFollow.setUserId(memberId); | |||
| userFollow.setMerchernId(id); | |||
| return ttUserFollowMapper.selectCount(new QueryWrapper<>(userFollow)); | |||
| } | |||
| @Override | |||
| public PageInfo<WxMerchant> followListAsPage(WxMerchant record, Integer pageNum, Integer pageSize) { | |||
| return PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> wxMerchantMapper.findFollowList(record)); | |||
| } | |||
| } | |||
| @@ -366,6 +366,7 @@ public class WxMsgServiceImpl implements WxMsgService { | |||
| } | |||
| } | |||
| @Async | |||
| @Override | |||
| public void batchSendAppinfo(WxMsg wxMsg) { | |||
| TenantEntity tenantEntity = new TenantEntity(); | |||
| @@ -418,6 +419,19 @@ public class WxMsgServiceImpl implements WxMsgService { | |||
| customParam.getString("thing4"), | |||
| customParam.getString("thing5") | |||
| )); | |||
| }else if(wxTemplateMsg.getType() == EnumTemplateType.CREDIT_UPD_REMIND.getCode()){ | |||
| /** | |||
| * 变更数量{{character_string1.DATA}} | |||
| * 积分余额{{character_string2.DATA}} | |||
| * 变动时间{{time4.DATA}} | |||
| * 变更原因{{thing3.DATA}} | |||
| */ | |||
| smartAppMsg.setDataList(Lists.newArrayList( | |||
| customParam.getString("character_string1"), | |||
| customParam.getString("character_string2"), | |||
| customParam.getString("time4"), | |||
| customParam.getString("thing3") | |||
| )); | |||
| }else{ | |||
| return; | |||
| } | |||
| @@ -57,6 +57,10 @@ public class WxTemplateMsgServiceImpl implements WxTemplateMsgService { | |||
| wxTemplateMsg.setType(EnumTemplateType.LIVE_REMIND.getCode()); | |||
| wxTemplateMsg.setCustomParam("{\"index\": [\"thing1\", \"date3\", \"thing4\", \"thing5\"], \"emphasis\": \"\"}"); | |||
| wxTemplateMsgMapper.insert(wxTemplateMsg); | |||
| wxTemplateMsg.setId(null); | |||
| wxTemplateMsg.setType(EnumTemplateType.CREDIT_UPD_REMIND.getCode()); | |||
| wxTemplateMsg.setCustomParam("{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}"); | |||
| wxTemplateMsgMapper.insert(wxTemplateMsg); | |||
| } | |||
| @Override | |||
| @@ -131,6 +135,15 @@ public class WxTemplateMsgServiceImpl implements WxTemplateMsgService { | |||
| } catch (WxErrorException e) { | |||
| return new ResultData(ErrorCode.TEMPLATE_ADD_ERROR); | |||
| } | |||
| }else if(byId.getType() == EnumTemplateType.CREDIT_UPD_REMIND.getCode()){ | |||
| try { | |||
| s = wxMaService.getSubscribeService().addTemplate(EnumTemplateType.CREDIT_UPD_REMIND.getTid(), | |||
| Lists.newArrayList(1, 2, 4, 3),EnumTemplateType.CREDIT_UPD_REMIND.getMessage()); | |||
| } catch (WxErrorException e) { | |||
| return new ResultData(ErrorCode.TEMPLATE_ADD_ERROR); | |||
| } | |||
| }else{ | |||
| return new ResultData(ErrorCode.TEMPLATE_NOT_FOUND); | |||
| } | |||
| if(StringUtils.isBlank(s)){ | |||
| return new ResultData(ErrorCode.TEMPLATE_ADD_ERROR); | |||
| @@ -5,6 +5,7 @@ import com.github.pagehelper.PageInfo; | |||
| import com.iformall.common.ErrorCode; | |||
| import com.iformall.common.IdWorker; | |||
| import com.iformall.domain.po.*; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.enums.*; | |||
| import com.iformall.exception.MallinkException; | |||
| import com.iformall.mapper.WxThirdPartyOrdersMapper; | |||
| @@ -64,6 +65,21 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService | |||
| return wxThirdPartyOrdersMapper.getById(recordQ); | |||
| } | |||
| @Override | |||
| public WxThirdPartyOrders detail(Long id, TenantEntity tenantInfo) { | |||
| WxThirdPartyOrders order = this.getById(id, tenantInfo.getTenantId()); | |||
| if(order.getMerchantId() != null){ | |||
| order.setMerchant(wxMerchantService.selectById(order.getMerchantId())); | |||
| } | |||
| if(order.getCUserId() != null){ | |||
| order.setBasicInfo(wxCUserBasicInfoService.getById(id,tenantInfo.getFinalTenantId())); | |||
| } | |||
| // if(order.getIsRefund() != null && order.getIsRefund().equals(EnumYesOrNo.YES.getCode())){ | |||
| // | |||
| // } | |||
| return order; | |||
| } | |||
| @Override | |||
| public WxThirdPartyOrders getOrderByTransactionId(EnumThirdOrderType orderType, String transactionId, String tenantId) { | |||
| WxThirdPartyOrders recordQ = new WxThirdPartyOrders(); | |||
| @@ -101,6 +117,7 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService | |||
| WxThirdPartyOrders byTransactionId = this.getOrderByTransactionId(EnumThirdOrderType.RMB_PAY,record.getTransactionId(),record.getTenantId()); | |||
| if(byTransactionId != null){ | |||
| logger.error("--第三方付款--通知消息已存在---byTransactionId="+byTransactionId.getTransactionId()); | |||
| redisLock.unlock(lockKey, timeStr); | |||
| throw new MallinkException(ErrorCode.SYS_PARAMETER_ERROR.getCode(), "订单数据已存在"); | |||
| }else{ | |||
| Date now = new Date(); | |||
| @@ -116,10 +133,12 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService | |||
| WxMerchant wxMerchant = wxMerchantService.getMerchantByEncode(record.getShopNumber()); | |||
| if(wxMerchant != null){ | |||
| record.setMerchantId(wxMerchant.getId()); | |||
| record.setShopName(wxMerchant.getName()); | |||
| record.setMerchantName(wxMerchant.getName()); | |||
| // record.setShopName(wxMerchant.getName()); | |||
| }else{ | |||
| if(StringUtils.isBlank(record.getShopName())){ | |||
| record.setShopName("第三方门店"); | |||
| // record.setShopName("第三方门店"); | |||
| record.setMerchantName("未知门店"); | |||
| } | |||
| logger.info("--第三方付款通知消息未找到门店--shopName="+record.getShopName()+"&shopNumber="+record.getShopNumber()); | |||
| } | |||
| @@ -138,12 +157,15 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService | |||
| if(basicInfo != null){ | |||
| record.setCUserId(basicInfo.getId()); | |||
| record.setCUserNickName(basicInfo.getNickName()); | |||
| record.setCUserPhone(basicInfo.getPhone()); | |||
| }else{ | |||
| logger.error("--第三方付款通知消息未找到会员--userPhone="+record.getUserPhone()+"$userNumer="+record.getId()); | |||
| } | |||
| wxThirdPartyOrdersMapper.insertNoticeOrder(record); | |||
| if(record.getCUserId() == null){ | |||
| redisLock.unlock(lockKey, timeStr); | |||
| return; | |||
| } | |||
| Integer businessId = EnumBusiness.BUSINESS_ID6.getCode(); | |||
| @@ -168,6 +190,7 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService | |||
| creditNum = creditHistory.getCreditNum(); | |||
| } | |||
| if(creditNum == 0){ | |||
| redisLock.unlock(lockKey, timeStr); | |||
| return; | |||
| } | |||
| record.setIncreasedPoints(creditNum); | |||
| @@ -231,9 +254,11 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService | |||
| } | |||
| if(refundAmount >= amount){ | |||
| logger.error("--第三方退款--已经退款--transactionId="+record.getTransactionId()); | |||
| redisLock.unlock(lockKey, timeStr); | |||
| throw new MallinkException(ErrorCode.SYS_PARAMETER_ERROR.getCode(), "已经退款"); | |||
| }else if((refundAmount + record.getRefundAmount()) > amount ){ | |||
| logger.error("--第三方退款--退款金额超限--transactionId="+record.getTransactionId()); | |||
| redisLock.unlock(lockKey, timeStr); | |||
| throw new MallinkException(ErrorCode.SYS_PARAMETER_ERROR.getCode(), "退款金额超限"); | |||
| }else{ | |||
| @@ -252,7 +277,10 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService | |||
| record.setAmount(order.getAmount()); | |||
| record.setPayAmount(order.getPayAmount()); | |||
| record.setCUserId(order.getCUserId()); | |||
| record.setCUserNickName(order.getCUserNickName()); | |||
| record.setCUserPhone(order.getCUserPhone()); | |||
| record.setMerchantId(order.getMerchantId()); | |||
| record.setMerchantName(order.getMerchantName()); | |||
| wxThirdPartyOrdersMapper.insertRefundNoticeOrder(record); | |||
| if((refundAmount + record.getRefundAmount()) == amount){ | |||
| @@ -292,6 +320,7 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService | |||
| creditNum = creditHistory.getCreditNum(); | |||
| } | |||
| if(creditNum == 0){ | |||
| redisLock.unlock(lockKey, timeStr); | |||
| return; | |||
| } | |||
| @@ -341,6 +370,8 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService | |||
| } | |||
| record.setCUserId(basicInfo.getId()); | |||
| record.setCUserNickName(basicInfo.getNickName()); | |||
| record.setCUserPhone(basicInfo.getPhone()); | |||
| String lockKey = StringUtils.join(THIRD_CIRCLE_KEY,record.getTransactionId(), ":CP:", "lock"); | |||
| long time = System.currentTimeMillis() + 2000; | |||
| @@ -349,6 +380,7 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService | |||
| WxThirdPartyOrders byTransactionId = this.getOrderByTransactionId(EnumThirdOrderType.CREDIT_PAY,record.getTransactionId(),record.getTenantId()); | |||
| if(byTransactionId != null){ | |||
| logger.error("--第三方积分订单--数据已存在---byTransactionId="+byTransactionId.getTransactionId()); | |||
| redisLock.unlock(lockKey, timeStr); | |||
| throw new MallinkException(ErrorCode.SYS_PARAMETER_ERROR.getCode(), "订单数据已存在"); | |||
| }else{ | |||
| Date now = new Date(); | |||
| @@ -364,10 +396,12 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService | |||
| WxMerchant wxMerchant = wxMerchantService.getMerchantByEncode(record.getShopNumber()); | |||
| if(wxMerchant != null){ | |||
| record.setMerchantId(wxMerchant.getId()); | |||
| record.setShopName(wxMerchant.getName()); | |||
| record.setMerchantName(wxMerchant.getName()); | |||
| // record.setShopName(wxMerchant.getName()); | |||
| }else{ | |||
| if(StringUtils.isBlank(record.getShopName())){ | |||
| record.setShopName("第三方门店"); | |||
| // record.setShopName("第三方门店"); | |||
| record.setMerchantName("未知门店"); | |||
| } | |||
| logger.info("--第三方积分抵扣未找到门店--shopName="+record.getShopName()+"&shopNumber="+record.getShopNumber()); | |||
| } | |||
| @@ -387,6 +421,7 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService | |||
| creditNum = creditHistory.getCreditNum(); | |||
| } | |||
| if(creditNum == 0){ | |||
| redisLock.unlock(lockKey, timeStr); | |||
| throw new MallinkException(ErrorCode.CREDIT_ZERO.getCode(), "本次扣减积分为0"); | |||
| } | |||
| wxThirdPartyOrdersMapper.insertNoticeOrder(record); | |||
| @@ -1,6 +1,7 @@ | |||
| package com.iformall.service.tt; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.iformall.common.ErrorCode; | |||
| import com.iformall.common.ResultData; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.domain.po.tt.TtCoupon; | |||
| @@ -50,11 +51,8 @@ public interface TtCouponService { | |||
| void collectCoupon(TenantEntity tenantEntity,Long memberId, Long id); | |||
| void cancelCollect(Long memberId, Long id); | |||
| int getcollect(Long memberId, Long id); | |||
| PageInfo<TtCoupon> collectListAsPage(TtCoupon record, Integer pageNum, Integer pageSize); | |||
| @Async | |||
| void followMerchant(TenantEntity tenantEntity, Long memberId, Long id); | |||
| void cancelFollow(Long memberId, Long id); | |||
| int getfollow(Long memberId, Long id); | |||
| ResultData auditPass(Long id); | |||
| @@ -64,4 +62,5 @@ public interface TtCouponService { | |||
| int addSeeCount(Long id); | |||
| int addSellCount(Long id); | |||
| } | |||
| @@ -1,12 +1,18 @@ | |||
| package com.iformall.service.tt; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.iformall.common.ErrorCode; | |||
| import com.iformall.common.ResultData; | |||
| import com.iformall.domain.dto.OrderSaveDto; | |||
| import com.iformall.domain.po.WxAppinfo; | |||
| import com.iformall.domain.po.WxPayAccount; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.domain.po.tt.TtOrder; | |||
| import com.iformall.enums.EnumPayWay; | |||
| import org.springframework.scheduling.annotation.Async; | |||
| import java.util.Date; | |||
| import java.util.List; | |||
| public interface TtOrderService { | |||
| @@ -19,8 +25,9 @@ public interface TtOrderService { | |||
| * @return | |||
| */ | |||
| PageInfo<TtOrder> listAsPage(TtOrder record, Integer pageIndex, Integer pageSize); | |||
| PageInfo<TtOrder> listCAsPage(TtOrder order, Integer pageNum, Integer pageSize); | |||
| ResultData saveOrder(Long couponId, Long memberId, EnumPayWay payWay, TenantEntity tenantInfo); | |||
| ResultData saveOrder(Long couponId, Long memberId, EnumPayWay payWay); | |||
| ResultData cancelOrder(Long orderId, Long memberId); | |||
| @@ -28,5 +35,17 @@ public interface TtOrderService { | |||
| ResultData createPay(TenantEntity tenantEntity,Long orderId, Long memberId, WxAppinfo appinfo); | |||
| ResultData updateOrderStatus(TenantEntity tenantInfo, Long orderId, Long memberId, WxAppinfo cAppInfo); | |||
| ResultData updateOrderStatus(Long orderId, WxAppinfo cAppInfo, WxPayAccount payAccount); | |||
| boolean isByMember(Long memberId, Long id); | |||
| List<Long> findExpireIdList(Date expireDate); | |||
| List<Long> findRecordedIdList(Date recordedDate); | |||
| /** | |||
| * 入账 | |||
| * @return | |||
| */ | |||
| ResultData recordedAmount(Long orderId); | |||
| } | |||
| @@ -68,12 +68,17 @@ public class TtCouponServiceImpl implements TtCouponService { | |||
| if (StringUtils.isNotEmpty(record.getOrigPriceStr())) { | |||
| record.setOrigPrice(new BigDecimal(record.getOrigPriceStr()).multiply(new BigDecimal(100)).intValue()); | |||
| } | |||
| if(record.getSalePrice() == null || record.getSalePrice().intValue() == 0){ | |||
| record.setSalePrice(0); | |||
| record.setIsPayment(EnumYesOrNo.NO.getCode()); | |||
| record.setPreviewDuration(0); | |||
| }else{ | |||
| record.setIsPayment(EnumYesOrNo.YES.getCode()); | |||
| // if(!record.getType().equals(EnumTtCouponType.COUPON_MORE.getCode())){ | |||
| if(record.getSalePrice() == null || record.getSalePrice().intValue() == 0){ | |||
| record.setSalePrice(0); | |||
| record.setIsPayment(EnumYesOrNo.NO.getCode()); | |||
| // record.setPreviewDuration(0); | |||
| }else{ | |||
| record.setIsPayment(EnumYesOrNo.YES.getCode()); | |||
| } | |||
| // } | |||
| if(record.getFalseSellCount() != null && record.getFalseSellCount().intValue() > 0){ | |||
| record.setPopularity(record.getFalseSellCount()*20);//虚拟人气 | |||
| } | |||
| if (StringUtils.isBlank(record.getCoverPicture())) { | |||
| @@ -93,8 +98,8 @@ public class TtCouponServiceImpl implements TtCouponService { | |||
| record.setStatus(EnumTtCouponStatus.TTCOUPON_STATUS_EXAMINE.getCode()); | |||
| } | |||
| final IdWorker idWorker = IdWorker.get(); | |||
| if (record.getId() == null) { | |||
| final IdWorker idWorker = IdWorker.get(); | |||
| record.setId(idWorker.nextId()); | |||
| record.setCreateDate(new Date()); | |||
| record.setUpdateDate(new Date()); | |||
| @@ -110,12 +115,21 @@ public class TtCouponServiceImpl implements TtCouponService { | |||
| TtCoupon couponD = new TtCoupon(); | |||
| couponD.setColumnId(record.getId()); | |||
| couponD.setType(EnumTtCouponType.COUPON_MORE.getCode()); | |||
| couponD.setCountClass(record.getColumnCoupons().size()); | |||
| ttCouponMapper.delete(new QueryWrapper<TtCoupon>(couponD)); | |||
| for (TtCoupon ttc:record.getColumnCoupons()) { | |||
| if(ttc.getId() == null){ | |||
| ttc.setId(idWorker.nextId()); | |||
| ttc.setCreateDate(new Date()); | |||
| } | |||
| ttc.updateTenantInfo(record); | |||
| ttc.setType(EnumTtCouponType.COUPON_MORE.getCode()); | |||
| ttc.setColumnId(record.getId()); | |||
| this.saveOrUpdate(ttc); | |||
| ttc.setSalePrice(record.getSalePrice()); | |||
| ttc.setIsPayment(record.getIsPayment()); | |||
| ttc.setStatus(EnumTtCouponStatus.TTCOUPON_STATUS_DRAFT.getCode()); | |||
| ttc.setUpdateDate(new Date()); | |||
| ttCouponMapper.insert(ttc); | |||
| } | |||
| } | |||
| return new ResultData(); | |||
| @@ -215,36 +229,8 @@ public class TtCouponServiceImpl implements TtCouponService { | |||
| } | |||
| @Override | |||
| public void followMerchant(TenantEntity tenantEntity, Long memberId, Long id) { | |||
| final IdWorker idWorker = IdWorker.get(); | |||
| TtUserFollow userFollow = new TtUserFollow(); | |||
| userFollow.setId(idWorker.nextId()); | |||
| userFollow.updateTenantInfo(tenantEntity); | |||
| userFollow.setUserId(memberId); | |||
| userFollow.setMerchernId(id); | |||
| userFollow.setCreateDate(new Date()); | |||
| userFollow.setUpdateDate(new Date()); | |||
| try { | |||
| ttUserFollowMapper.insert(userFollow); | |||
| } catch (Exception e) { | |||
| // e.printStackTrace(); | |||
| } | |||
| } | |||
| @Override | |||
| public void cancelFollow(Long memberId, Long id) { | |||
| TtUserFollow userFollow = new TtUserFollow(); | |||
| userFollow.setUserId(memberId); | |||
| userFollow.setMerchernId(id); | |||
| int delete = ttUserFollowMapper.delete(new QueryWrapper<>(userFollow)); | |||
| } | |||
| @Override | |||
| public int getfollow(Long memberId, Long id) { | |||
| TtUserFollow userFollow = new TtUserFollow(); | |||
| userFollow.setUserId(memberId); | |||
| userFollow.setMerchernId(id); | |||
| return ttUserFollowMapper.selectCount(new QueryWrapper<>(userFollow)); | |||
| public PageInfo<TtCoupon> collectListAsPage(TtCoupon record, Integer pageNum, Integer pageSize) { | |||
| return PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> ttCouponMapper.findCollectList(record)); | |||
| } | |||
| @Override | |||
| @@ -17,16 +17,19 @@ import com.iformall.douyin.pay.preOrder.DouYinCreatePreOrder; | |||
| import com.iformall.enums.*; | |||
| import com.iformall.exception.MallinkException; | |||
| import com.iformall.mapper.*; | |||
| import com.iformall.service.TtCUserService; | |||
| import com.iformall.service.WxAppinfoService; | |||
| import com.iformall.service.WxCUserBasicInfoService; | |||
| import com.iformall.service.tt.TtCouponService; | |||
| import com.iformall.service.*; | |||
| import com.iformall.service.tt.TtOrderService; | |||
| import com.iformall.utils.Constant; | |||
| import com.iformall.utils.RedisLock; | |||
| import org.apache.commons.lang3.StringUtils; | |||
| import org.slf4j.Logger; | |||
| import org.slf4j.LoggerFactory; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.stereotype.Service; | |||
| import org.springframework.transaction.annotation.Propagation; | |||
| import org.springframework.transaction.annotation.Transactional; | |||
| import java.text.SimpleDateFormat; | |||
| import java.util.*; | |||
| @@ -37,11 +40,22 @@ public class TtOrderServiceImpl implements TtOrderService { | |||
| private final Integer time_out = 30*60; | |||
| private final String TT_ORDER_KEY = "ORDER:TT:"; | |||
| @Autowired | |||
| RedisLock redisLock; | |||
| @Autowired | |||
| private TtOrderMapper ttOrderMapper; | |||
| @Autowired | |||
| private TtCouponService ttCouponService; | |||
| private TtCouponMapper ttcouponMapper; | |||
| @Autowired | |||
| private TtCUserMapper ttCUserMapper; | |||
| @Autowired | |||
| private WxMerchantMapper wxMerchantMapper; | |||
| // @Autowired | |||
| // private WxCUserBasicInfoService wxCUserBasicInfoService; | |||
| @@ -52,15 +66,34 @@ public class TtOrderServiceImpl implements TtOrderService { | |||
| @Autowired | |||
| private WxAppinfoService wxAppinfoService; | |||
| @Autowired | |||
| private WxPayAccountService payAccountService; | |||
| @Override | |||
| public PageInfo<TtOrder> listAsPage(TtOrder record, Integer pageIndex, Integer pageSize) { | |||
| return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> ttOrderMapper.findList(record)); | |||
| } | |||
| @Override | |||
| public ResultData saveOrder(Long couponId,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity) { | |||
| public PageInfo<TtOrder> listCAsPage(TtOrder record, Integer pageIndex, Integer pageSize) { | |||
| return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> ttOrderMapper.findCList(record)); | |||
| } | |||
| @Override | |||
| public ResultData saveOrder(Long couponId,Long cUserId,EnumPayWay payWay) { | |||
| TtCoupon coupon = ttcouponMapper.selectById(couponId); | |||
| if (null == coupon) { | |||
| return new ResultData(ErrorCode.TTCOUPON_IS_EMPTY); | |||
| } | |||
| if (!coupon.getStatus().equals(EnumTtCouponStatus.TTCOUPON_STATUS_SHELFING.getCode())) { | |||
| return new ResultData(ErrorCode.TTCOUPON_IS_TAKE_OFF); | |||
| } | |||
| if(coupon.getSalePrice() == null || coupon.getSalePrice().intValue() == 0){ | |||
| return new ResultData(ErrorCode.TTCOUPON_IS_TAKE_OFF); | |||
| } | |||
| logger.info("OrderSave: couponId:" + couponId + "---cUserId:"+cUserId); | |||
| TtCUser byId = ttCUserService.getById(cUserId, tenantEntity.getTenantId()); | |||
| TtCUser byId = ttCUserService.getById(cUserId, coupon.getTenantId()); | |||
| // WxCUserBasicInfo wxCUserBasicInfo = wxCUserBasicInfoService.getById(cUserId,tenantEntity.getFinalTenantId()); | |||
| // if(wxCUserBasicInfo == null){ | |||
| if(byId == null){ | |||
| @@ -71,6 +104,7 @@ public class TtOrderServiceImpl implements TtOrderService { | |||
| orderQ.setProductId(couponId); | |||
| List<Integer> statuss = new ArrayList<>(); | |||
| statuss.add(EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); | |||
| // statuss.add(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_ING.getCode()); | |||
| statuss.add(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); | |||
| orderQ.setStatusS(statuss); | |||
| Integer listCount = ttOrderMapper.findListCount(orderQ); | |||
| @@ -82,16 +116,7 @@ public class TtOrderServiceImpl implements TtOrderService { | |||
| // logger.info("会员权益被锁定:cUserId:" + cUserId); | |||
| // return new ResultData(ErrorCode.MEMBER_IS_LOCKED); | |||
| // } | |||
| TtCoupon coupon = ttCouponService.getById(couponId); | |||
| if (null == coupon) { | |||
| return new ResultData(ErrorCode.TTCOUPON_IS_EMPTY); | |||
| } | |||
| if (!coupon.getStatus().equals(EnumTtCouponStatus.TTCOUPON_STATUS_SHELFING.getCode())) { | |||
| return new ResultData(ErrorCode.TTCOUPON_IS_TAKE_OFF); | |||
| } | |||
| if(coupon.getSalePrice() == null || coupon.getSalePrice().intValue() == 0){ | |||
| return new ResultData(ErrorCode.TTCOUPON_IS_TAKE_OFF); | |||
| } | |||
| try { | |||
| // 4.2 保存订单 | |||
| @@ -99,22 +124,25 @@ public class TtOrderServiceImpl implements TtOrderService { | |||
| Date now = new Date(); | |||
| TtOrder order = new TtOrder(); | |||
| order.setId(idWorker.nextId()); | |||
| order.updateTenantInfo(tenantEntity); | |||
| order.updateTenantInfo(coupon); | |||
| order.setCUserId(cUserId); | |||
| order.setProductId(coupon.getId()); | |||
| order.setProductTitle(coupon.getTitle()); | |||
| order.setProductPic(coupon.getCoverImg()); | |||
| order.setProductSalePrice(coupon.getSalePrice()); | |||
| order.setMerchantId(coupon.getMerchantId()); | |||
| order.setType(payWay.getCode()); | |||
| order.setPaymentType(EnumPayType.PAY_PAYMENT.getCode()); | |||
| order.setPayment(coupon.getSalePrice()); | |||
| if(order.getPayment() == null || order.getPayment().intValue() == 0){ | |||
| order.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); | |||
| order.setPaymentTime(now); | |||
| // order.setPaymentTime(now); | |||
| }else{ | |||
| order.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); | |||
| } | |||
| order.setCreateDate(now); | |||
| order.setUpdateDate(now); | |||
| ttOrderMapper.insert(order); | |||
| ttCouponService.addSellCount(coupon.getId()); | |||
| return new ResultData(order); | |||
| } catch (MallinkException e) { | |||
| logger.error(e.getMessage()); | |||
| @@ -169,8 +197,9 @@ public class TtOrderServiceImpl implements TtOrderService { | |||
| if(memberId != null && !ttOrder.getCUserId().equals(memberId)){ | |||
| return null; | |||
| } | |||
| TtCoupon coupon = ttCouponService.detail(ttOrder.getProductId()); | |||
| ttOrder.setTtCoupon(coupon); | |||
| ttOrder.setCUser(ttCUserMapper.selectById(ttOrder.getCUserId())); | |||
| ttOrder.setCoupon(ttcouponMapper.selectById(ttOrder.getProductId())); | |||
| ttOrder.setMerchant(wxMerchantMapper.selectById(ttOrder.getMerchantId())); | |||
| return ttOrder; | |||
| } | |||
| @@ -199,7 +228,11 @@ public class TtOrderServiceImpl implements TtOrderService { | |||
| if(appInfo == null) { | |||
| return new ResultData(ErrorCode.APP_ID_NOT_FOUND); | |||
| } | |||
| TtCoupon coupon = ttCouponService.getById(order.getProductId()); | |||
| WxPayAccount payAcount = payAccountService.getById(appInfo.getPayId()); | |||
| if(payAcount == null){ | |||
| return new ResultData(ErrorCode.APP_ID_NOT_FOUND); | |||
| } | |||
| TtCoupon coupon = ttcouponMapper.selectById(order.getProductId()); | |||
| if (!coupon.getStatus().equals(EnumTtCouponStatus.TTCOUPON_STATUS_SHELFING.getCode())) { | |||
| logger.error("券已经下架了>>>" + order.getProductId()); | |||
| return new ResultData(ErrorCode.COUPON_CHANNEL_IS_TAKE_OFF); | |||
| @@ -208,109 +241,191 @@ public class TtOrderServiceImpl implements TtOrderService { | |||
| if (order.getPaymentType() != EnumPayType.PAY_PAYMENT.getCode()) { | |||
| return new ResultData(ErrorCode.PAY_ORDER_IS_NOT_PAYMENT); | |||
| } | |||
| if (order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()) { | |||
| logger.error("订单已支付: " + order.toString()); | |||
| ResultData resultData = this.updateOrderStatus(orderId, appInfo, payAcount); | |||
| if(resultData.code == ResultData.SUCCESS){ | |||
| return new ResultData(ErrorCode.ORDER_HAD_PAY); | |||
| } else if (order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()) { | |||
| logger.error("订单已取消: " + order.toString()); | |||
| return new ResultData(ErrorCode.ORDER_HAD_CANCEL); | |||
| } else if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PAYMENT_ING.getCode()){ | |||
| logger.info("订单支付中: " + order.toString()); | |||
| OrderQueryResult orderQueryResult = DouYinPayHelper.orderQuery(appInfo.getAppId(), appInfo.getSecret(), order.getId().toString(), null); | |||
| String trade_state = orderQueryResult.getOrderStatus(); | |||
| if ("PROCESSING".equals(trade_state)) {//处理中 | |||
| return new ResultData(ErrorCode.PAY_ORDER_PAYING); | |||
| }else if ("SUCCESS".equals(trade_state)) {//成功 | |||
| TtOrder orderSuc = new TtOrder(); | |||
| orderSuc.setId(order.getId()); | |||
| orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); | |||
| orderSuc.setUpdateDate(new Date()); | |||
| ttOrderMapper.updateById(orderSuc); | |||
| return new ResultData(ErrorCode.PAY_ORDER_EXIST,"该订单已经支付,请勿重复支付!"); | |||
| }else if ("FAIL".equals(trade_state)) {//失败 | |||
| }else if ("TIMEOUT".equals(trade_state)) {//超时 | |||
| }else if(resultData.code == ErrorCode.PAY_ORDER_NOT_PAY.getCode() ){ | |||
| DouYinCreatePreOrder preOrder = new DouYinCreatePreOrder(); | |||
| preOrder.setAppId(appInfo.getAppId()); | |||
| preOrder.setSercrect(appInfo.getSecret()); | |||
| preOrder.setSalt(payAcount.getApiKey()); | |||
| preOrder.setOutOrderNo(order.getId().toString()); | |||
| preOrder.setTotalAmount(order.getPayment()); | |||
| preOrder.setSubject(coupon.getTitle()); | |||
| preOrder.setBody(coupon.getTitle()); | |||
| preOrder.setValidTime(time_out); | |||
| // preOrder.setNotifyUrl();//回调地址 | |||
| CreatePreOrderResult preOrderResult = DouYinPayHelper.createPreOrder(preOrder); | |||
| // if(preOrderResult.isSuccess()){ | |||
| // TtOrder orderSuc = new TtOrder(); | |||
| // orderSuc.setId(order.getId()); | |||
| // orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_ING.getCode()); | |||
| // orderSuc.setUpdateDate(new Date()); | |||
| // ttOrderMapper.updateById(orderSuc); | |||
| // } | |||
| return new ResultData(preOrderResult); | |||
| }else{ | |||
| return resultData; | |||
| } | |||
| } | |||
| @Override | |||
| @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | |||
| public ResultData updateOrderStatus(Long orderId, WxAppinfo appInfo, WxPayAccount payAccount) { | |||
| String lockKey = StringUtils.join(TT_ORDER_KEY,orderId, ":", "lock"); | |||
| long time = System.currentTimeMillis() + 5000; | |||
| String timeStr = String.valueOf(time); | |||
| if (redisLock.lock2(lockKey, timeStr)) { | |||
| TtOrder order = ttOrderMapper.selectById(orderId); | |||
| if (null == order) { | |||
| logger.error("pay order, order not allow, orderId: " + orderId); | |||
| return new ResultData(ErrorCode.ORDER_IS_NOT_FIND); | |||
| } | |||
| Boolean isExpire = false;//是否过期 | |||
| Date now = new Date(); | |||
| Date expireDate = new Date(now.getTime() - Constant.PRESS_TIME_OUT ); | |||
| if(order.getCreateDate().before(expireDate)){ | |||
| isExpire = true; | |||
| } | |||
| if(appInfo == null || payAccount == null) { | |||
| return new ResultData(ErrorCode.APP_ID_NOT_FOUND); | |||
| } | |||
| if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()){ | |||
| String msg = ""; | |||
| //待付款 | |||
| OrderQueryResult orderQueryResult = DouYinPayHelper.orderQuery(appInfo.getAppId(), payAccount.getApiKey(), order.getId().toString(), null); | |||
| if(orderQueryResult == null){ | |||
| msg = "查询-单号不存在"; | |||
| }else{ | |||
| String trade_state = orderQueryResult.getOrderStatus(); | |||
| if ("PROCESSING".equals(trade_state)) {//处理中 | |||
| msg = "查询-处理中"; | |||
| }else if ("SUCCESS".equals(trade_state)) {//成功 | |||
| TtOrder orderSuc = new TtOrder(); | |||
| orderSuc.setId(order.getId()); | |||
| orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); | |||
| orderSuc.setWay(orderQueryResult.getWay()); | |||
| orderSuc.setPaymentTime(orderQueryResult.getPayTime()); | |||
| orderSuc.setUpdateDate(new Date()); | |||
| ttOrderMapper.updateById(orderSuc); | |||
| ttcouponMapper.addSellCount(order.getProductId()); | |||
| redisLock.unlock(lockKey, timeStr); | |||
| return new ResultData(); | |||
| }else if ("FAIL".equals(trade_state)) {//失败 | |||
| msg = "查询-支付失败"; | |||
| }else if ("TIMEOUT".equals(trade_state)) {//超时 | |||
| msg = "查询-支付超时"; | |||
| }else{ | |||
| msg = "查询-单号异常"; | |||
| } | |||
| } | |||
| if(isExpire){ | |||
| TtOrder orderSuc = new TtOrder(); | |||
| orderSuc.setId(order.getId()); | |||
| orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()); | |||
| orderSuc.setUpdateDate(new Date()); | |||
| ttOrderMapper.updateById(orderSuc); | |||
| redisLock.unlock(lockKey, timeStr); | |||
| return new ResultData(ErrorCode.PAY_ORDER_CLOSED); | |||
| } | |||
| redisLock.unlock(lockKey, timeStr); | |||
| return new ResultData(ErrorCode.PAY_ORDER_NOT_PAY,msg); | |||
| } | |||
| } else{ | |||
| if (order.getOrderStatus() != EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()) { | |||
| logger.error("订单已支付: " + order.toString()); | |||
| return new ResultData(ErrorCode.ORDER_IS_NOT_PAY); | |||
| // else if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PAYMENT_ING.getCode()){ | |||
| // //支付中 | |||
| // } | |||
| else if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()){ | |||
| //已支付 | |||
| redisLock.unlock(lockKey, timeStr); | |||
| return new ResultData(); | |||
| } | |||
| else if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()){ | |||
| //已取消,已关闭 | |||
| redisLock.unlock(lockKey, timeStr); | |||
| return new ResultData(ErrorCode.PAY_ORDER_CLOSED); | |||
| } | |||
| else{ | |||
| redisLock.unlock(lockKey, timeStr); | |||
| return new ResultData(ErrorCode.PAY_ORDER_ERROR,"订单状态异常"); | |||
| } | |||
| }else { | |||
| logger.debug("CacheAspect 业务等待中, key:{}: " + lockKey); | |||
| try { | |||
| Thread.sleep(5000); | |||
| } catch (InterruptedException e) { | |||
| e.printStackTrace(); | |||
| }finally { | |||
| redisLock.unlock(lockKey, timeStr); | |||
| } | |||
| } | |||
| DouYinCreatePreOrder preOrder = new DouYinCreatePreOrder(); | |||
| preOrder.setAppId(appInfo.getAppId()); | |||
| preOrder.setOutOrderNo(order.getId().toString()); | |||
| preOrder.setTotalAmount(order.getPayment()); | |||
| preOrder.setSubject(coupon.getTitle()); | |||
| preOrder.setBody(coupon.getTitle()); | |||
| preOrder.setValidTime(time_out); | |||
| // preOrder.setNotifyUrl();//回调地址 | |||
| return new ResultData(ErrorCode.PAY_ORDER_ERROR,"请重试!"); | |||
| } | |||
| CreatePreOrderResult preOrderResult = DouYinPayHelper.createPreOrder(preOrder); | |||
| if(preOrderResult.isSuccess()){ | |||
| TtOrder orderSuc = new TtOrder(); | |||
| orderSuc.setId(order.getId()); | |||
| orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_ING.getCode()); | |||
| orderSuc.setUpdateDate(new Date()); | |||
| ttOrderMapper.updateById(orderSuc); | |||
| @Override | |||
| public boolean isByMember(Long memberId, Long id) { | |||
| TtOrder orderQ = new TtOrder(); | |||
| orderQ.setCUserId(memberId); | |||
| orderQ.setProductId(id); | |||
| List<Integer> statuss = new ArrayList<>(); | |||
| statuss.add(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); | |||
| orderQ.setStatusS(statuss); | |||
| int listCount = ttOrderMapper.findListCount(orderQ); | |||
| if(listCount > 0){ | |||
| return true; | |||
| } | |||
| return new ResultData(preOrderResult); | |||
| return false; | |||
| } | |||
| @Override | |||
| public List<Long> findExpireIdList(Date expireDate) { | |||
| return ttOrderMapper.findBeforeIdList(expireDate,EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode(),null); | |||
| } | |||
| @Override | |||
| public List<Long> findRecordedIdList(Date recordedDate) { | |||
| return ttOrderMapper.findBeforeIdList(recordedDate,EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode(),EnumYesOrNo.NO.getCode()); | |||
| } | |||
| @Override | |||
| public ResultData updateOrderStatus(TenantEntity tenantEntity, Long orderId, Long memberId, WxAppinfo appInfo) { | |||
| @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | |||
| public ResultData recordedAmount(Long orderId) { | |||
| TtOrder order = ttOrderMapper.selectById(orderId); | |||
| if (null == order) { | |||
| logger.error("pay order, order not allow, orderId: " + orderId); | |||
| return new ResultData(ErrorCode.ORDER_IS_NOT_FIND); | |||
| } | |||
| if(!order.getCUserId().equals(memberId)){ | |||
| return new ResultData(ErrorCode.ORDER_USER_NOT_MATCH); | |||
| } | |||
| TtCUser byId = ttCUserService.getById(memberId, tenantEntity.getTenantId()); | |||
| // WxCUserBasicInfo wxCUserBasicInfo = wxCUserBasicInfoService.getById(memberId,tenantEntity.getFinalTenantId()); | |||
| // if ( null == wxCUserBasicInfo) { | |||
| if ( byId == null) { | |||
| logger.error("用户不存在."+memberId); | |||
| return new ResultData(ErrorCode.USER_IS_EMPTY.getCode(),"用户不存在."+memberId); | |||
| } | |||
| // if (null != wxCUserBasicInfo && EnumCreditLockedStatus.CLOSE.getCode().equals(wxCUserBasicInfo.getStatus())) { | |||
| // return new ResultData(ErrorCode.MEMBER_IS_LOCKED); | |||
| // } | |||
| // WxAppinfo appInfo = wxAppinfoService.getByAppId(appId); | |||
| if(appInfo == null) { | |||
| return new ResultData(ErrorCode.APP_ID_NOT_FOUND); | |||
| } | |||
| if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PAYMENT_ING.getCode()){ | |||
| logger.info("订单支付中: " + order.toString()); | |||
| OrderQueryResult orderQueryResult = DouYinPayHelper.orderQuery(appInfo.getAppId(), appInfo.getSecret(), order.getId().toString(), null); | |||
| String trade_state = orderQueryResult.getOrderStatus(); | |||
| if ("PROCESSING".equals(trade_state)) {//处理中 | |||
| return new ResultData(ErrorCode.PAY_ORDER_PAYING); | |||
| }else if ("SUCCESS".equals(trade_state)) {//成功 | |||
| TtOrder orderSuc = new TtOrder(); | |||
| orderSuc.setId(order.getId()); | |||
| orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); | |||
| orderSuc.setUpdateDate(new Date()); | |||
| ttOrderMapper.updateById(orderSuc); | |||
| return new ResultData(ErrorCode.PAY_ORDER_EXIST,"该订单已经支付,请勿重复支付!"); | |||
| }else if ("FAIL".equals(trade_state)) {//失败 | |||
| TtOrder orderSuc = new TtOrder(); | |||
| orderSuc.setId(order.getId()); | |||
| orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); | |||
| orderSuc.setUpdateDate(new Date()); | |||
| ttOrderMapper.updateById(orderSuc); | |||
| }else if ("TIMEOUT".equals(trade_state)) {//超时 | |||
| TtOrder orderSuc = new TtOrder(); | |||
| orderSuc.setId(order.getId()); | |||
| orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()); | |||
| orderSuc.setUpdateDate(new Date()); | |||
| ttOrderMapper.updateById(orderSuc); | |||
| if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()){ | |||
| if(order.getIsRecorded() == null || !order.getIsRecorded().equals(EnumYesOrNo.YES.getCode())){ | |||
| WxMerchant merchant = new WxMerchant(); | |||
| merchant.setId(order.getMerchantId()); | |||
| merchant.setEntryAmount(order.getPayment()); | |||
| merchant.setCashOutNumber(order.getPayment()); | |||
| int i = wxMerchantMapper.recordedAmount(merchant); | |||
| if(i == 1){ | |||
| ttOrderMapper.updateIsRecorded(order.getId(),EnumYesOrNo.YES.getCode()); | |||
| return new ResultData(); | |||
| }else{ | |||
| throw new MallinkException(ErrorCode.ORDER_RECORDED_AMOUNT_ERROR); | |||
| } | |||
| }else{ | |||
| return new ResultData(ErrorCode.ORDER_RECORDED_AMOUNT); | |||
| } | |||
| }else{ | |||
| return new ResultData(ErrorCode.PAY_ORDER_NOT_PAY,"订单不是支付状态"); | |||
| } | |||
| return new ResultData(); | |||
| } | |||
| } | |||
| @@ -10,6 +10,8 @@ public class Constant { | |||
| public static final int WX_LIMIT_DAYS = 30; // 微信分账限制30天 | |||
| public static final long PRESS_TIME_OUT = 30 * 60 * 1000;//必须30分钟内支付; | |||
| //游戏常量 | |||
| public static final int limit = 0;//游戏玩法不限次数 | |||
| public static final int notLimit = -1;//游戏玩法不限能玩 | |||
| @@ -5,8 +5,7 @@ import org.slf4j.Logger; | |||
| import org.slf4j.LoggerFactory; | |||
| import java.security.MessageDigest; | |||
| import java.util.Arrays; | |||
| import java.util.Map; | |||
| import java.util.*; | |||
| public class SignUtils { | |||
| @@ -53,7 +52,7 @@ public class SignUtils { | |||
| return encrypt(str, "MD5"); | |||
| } | |||
| private static String encrypt(String str, String algorithm) { | |||
| public static String encrypt(String str, String algorithm) { | |||
| try { | |||
| MessageDigest md = MessageDigest.getInstance(algorithm); | |||
| md.update(str.getBytes("UTF-8")); | |||
| @@ -25,7 +25,10 @@ | |||
| <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/> | |||
| <result column="merchant_id" jdbcType="BIGINT" property="merchantId"/> | |||
| <result column="merchant_name" jdbcType="VARCHAR" property="merchantName" /> | |||
| <result column="c_user_id" jdbcType="BIGINT" property="cUserId"/> | |||
| <result column="c_user_nick_name" jdbcType="VARCHAR" property="cUserNickName" /> | |||
| <result column="c_user_phone" jdbcType="VARCHAR" property="cUserPhone" /> | |||
| <result column="earn_points" jdbcType="TINYINT" property="earnPoints"/> | |||
| <result column="increased_points" jdbcType="INTEGER" property="increasedPoints"/> | |||
| @@ -44,7 +47,8 @@ | |||
| `id`, `tenant_id`, `parent_tenant_id`, `notice_id`, `notice_create_time`, `notice_event_type`, | |||
| `summary`,`mall_id`, `mall_name`, `mall_store_id`, `buyer_id`, | |||
| `time_end`, `amount`, `pay_amount`, `transaction_id`, `create_time`, `update_time`, | |||
| `merchant_id`, `c_user_id`, `earn_points`, `increased_points`, `points_update_time`, | |||
| `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, | |||
| `earn_points`, `increased_points`, `points_update_time`, | |||
| `is_refund`, `order_status`, `refund_id`, `refund_amount` | |||
| </sql> | |||
| @@ -88,10 +92,18 @@ | |||
| <if test=" null != merchantId "> | |||
| and `merchant_id` = #{merchantId} | |||
| </if> | |||
| <if test=" null != merchantName and ''!=merchantName"> | |||
| and `merchant_name` like concat('%', #{merchantName},'%') | |||
| </if> | |||
| <if test=" null != cUserId "> | |||
| and `c_user_id` = #{cUserId} | |||
| </if> | |||
| <if test=" null != cUserNickName and ''!=cUserNickName"> | |||
| and `c_user_nick_name` like concat('%', #{cUserNickName},'%') | |||
| </if> | |||
| <if test=" null != cUserPhone and ''!=cUserPhone"> | |||
| and `c_user_phone` like concat('%', #{cUserPhone},'%') | |||
| </if> | |||
| <if test=" null != earnPoints "> | |||
| and `earn_points` = #{earnPoints} | |||
| @@ -164,12 +176,12 @@ | |||
| INSERT INTO ali_business_circle_order ( | |||
| `id`, `tenant_id`, `parent_tenant_id`, `notice_id`, `notice_create_time`, `notice_event_type`, | |||
| `summary`, `mall_id`, `mall_name`, `mall_store_id`, `buyer_id`,`time_end`, `amount`, `pay_amount`, `transaction_id`, `create_time`, `update_time`, | |||
| `merchant_id`, `c_user_id`, `earn_points`, `is_refund` | |||
| `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, `earn_points`, `is_refund` | |||
| ) | |||
| VALUES( | |||
| #{id},#{tenantId},#{parentTenantId},#{noticeId},#{noticeCreateTime},#{noticeEventType}, | |||
| #{summary},#{mallId},#{mallName},#{mallStoreId},#{buyerId},#{timeEnd},#{amount},#{payAmount},#{transactionId},#{createTime},#{updateTime}, | |||
| #{merchantId},#{cUserId},0,0 | |||
| #{merchantId},#{merchantName},#{cUserId},#{cUserNickName},#{cUserPhone},0,0 | |||
| ); | |||
| </insert> | |||
| @@ -184,12 +196,12 @@ | |||
| INSERT INTO ali_business_circle_order ( | |||
| `id`, `tenant_id`, `parent_tenant_id`,`notice_id`, `notice_create_time`, `notice_event_type`, | |||
| `summary`,`mall_id`, `mall_name`, `mall_store_id`, `buyer_id`, `time_end`, `amount`,`pay_amount`, `transaction_id`, `create_time`, `update_time`, | |||
| `merchant_id`, `c_user_id`, `earn_points`, `is_refund`, `refund_id`, `refund_amount` | |||
| `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, `earn_points`, `is_refund`, `refund_id`, `refund_amount` | |||
| ) | |||
| VALUES( | |||
| #{id},#{tenantId},#{parentTenantId},#{noticeId},#{noticeCreateTime},#{noticeEventType}, | |||
| #{summary},#{mallId},#{mallName},#{mallStoreId},#{buyerId},#{timeEnd},#{amount},#{payAmount},#{transactionId},#{createTime},#{updateTime}, | |||
| #{merchantId},#{cUserId},0,1,#{refundId},#{refundAmount} | |||
| #{merchantId},#{merchantName},#{cUserId},#{cUserNickName},#{cUserPhone},0,1,#{refundId},#{refundAmount} | |||
| ); | |||
| </insert> | |||
| @@ -277,7 +277,7 @@ | |||
| where `token` = #{token} and `tenant_id` = #{tenantId} | |||
| </select> | |||
| <select id="selectById" parameterType="java.util.HashMap" resultMap="BaseResultMap"> | |||
| <select id="getById" parameterType="java.util.HashMap" resultMap="BaseResultMap"> | |||
| select <include refid="allColumns"/> from tt_c_user where id = #{id} and `tenant_id` = #{tenantId} | |||
| </select> | |||
| @@ -11,6 +11,8 @@ | |||
| <result column="detail_picture" jdbcType="VARCHAR" property="detailPicture"/> | |||
| <result column="title" jdbcType="VARCHAR" property="title"/> | |||
| <result column="sub_title" jdbcType="VARCHAR" property="subTitle"/> | |||
| <result column="count_class" jdbcType="INTEGER" property="countClass"/> | |||
| <result column="video_id" jdbcType="VARCHAR" property="videoId"/> | |||
| <result column="video_time" jdbcType="VARCHAR" property="videoTime"/> | |||
| <result column="video_url" jdbcType="VARCHAR" property="videoUrl"/> | |||
| @@ -34,6 +36,7 @@ | |||
| <result column="sell_count" jdbcType="INTEGER" property="sellCount"/> | |||
| <result column="assess_count" jdbcType="INTEGER" property="assessCount"/> | |||
| <result column="collect_count" jdbcType="INTEGER" property="collectCount"/> | |||
| <result column="mark" jdbcType="INTEGER" property="mark"/> | |||
| <result column="is_del" jdbcType="INTEGER" property="isDel"/> | |||
| <result column="column_id" jdbcType="BIGINT" property="columnId"/> | |||
| <result column="popularity" jdbcType="INTEGER" property="popularity"/> | |||
| @@ -48,10 +51,10 @@ | |||
| <sql id="allColumns"> | |||
| c.`id`, c.`tenant_id`, c.`parent_tenant_id`, c.`type`, c.`cover_img`, c.`cover_picture`, c.`detail_picture`, | |||
| c.`title`, c.`sub_title`, c.`video_id`, c.`video_time`,c.`video_url`, c.`html`, c.`is_landscape`, c.`is_payment`, | |||
| c.`title`, c.`sub_title`, c.`count_class`, c.`video_id`, c.`video_time`,c.`video_url`, c.`html`, c.`is_landscape`, c.`is_payment`, | |||
| c.`sale_price`, c.`orig_price`, c.`is_preview`, c.`preview_duration`, c.`detail`, c.`false_sell_count`, | |||
| c.`dy_title`, c.`inventory`, c.`remark`, c.`status`, c.`create_date`, c.`update_date`, | |||
| c.`see_count`, c.`sell_count`, c.`assess_count`, c.`collect_count`, c.`is_del`, | |||
| c.`see_count`, c.`sell_count`, c.`assess_count`, c.`collect_count`, c.`mark`, c.`is_del`, | |||
| c.`column_id`, c.`popularity`, c.`merchant_id`, c.`business_id`, c.`business_name`, | |||
| m.name merchant_name, m.img_url merchant_pic | |||
| </sql> | |||
| @@ -101,6 +104,10 @@ | |||
| and c.`status` = #{status} | |||
| </if> | |||
| <if test=" null != mark"> | |||
| and c.`mark` = #{mark} | |||
| </if> | |||
| <if test="startdate != null"> | |||
| and c.`create_date` >= #{startdate} | |||
| </if> | |||
| @@ -123,8 +130,7 @@ | |||
| </foreach> | |||
| </if> | |||
| order by c.`update_date` desc | |||
| <!--<if test=" null != sortColumns">order by ${sortColumns}</if>--> | |||
| <if test=" null != sortColumns">order by ${sortColumns}</if> | |||
| </sql> | |||
| <select id="findList" parameterType="com.iformall.domain.po.tt.TtCoupon" resultMap="BaseResultMap"> | |||
| @@ -135,6 +141,32 @@ | |||
| <include refid="dynamicWhereConditions"/> | |||
| </select> | |||
| <select id="findCollectList" parameterType="com.iformall.domain.po.tt.TtCoupon" resultMap="BaseResultMap"> | |||
| select | |||
| <include refid="allColumns"/> | |||
| from tt_user_collect uc | |||
| left join tt_coupon c on c.id = uc.coupon_id | |||
| left join wx_merchant m on m.id = c.merchant_id | |||
| where uc.`is_del` = 0 and uc.`user_id` = ${cUserId} | |||
| and c.`is_del` = 0 and c.`type` != 3 | |||
| <if test=" null != type "> | |||
| and c.`type` = #{type} | |||
| </if> | |||
| <if test=" null != title and ''!=title"> | |||
| and c.`title` like concat('%', #{title},'%') | |||
| </if> | |||
| <if test=" null != status"> | |||
| and c.`status` = #{status} | |||
| </if> | |||
| <if test=" null != mark"> | |||
| and c.`mark` = #{mark} | |||
| </if> | |||
| <if test=" null != businessId "> | |||
| and c.`business_id` = #{businessId} | |||
| </if> | |||
| order by uc.create_date desc | |||
| </select> | |||
| <select id="selectById" parameterType="Long" resultMap="BaseResultMap"> | |||
| select <include refid="allColumns"/> | |||
| from tt_coupon c | |||
| @@ -147,31 +179,31 @@ | |||
| </delete> | |||
| <update id="addSeeCount" parameterType="Long"> | |||
| update tt_coupon SET see_count = see_count+1,popularity = popularity+1, update_date=now() where id = #{id} | |||
| update tt_coupon SET see_count = see_count+1,popularity = popularity+1 where id = #{id} | |||
| </update> | |||
| <update id="addSellCount" parameterType="Long"> | |||
| update tt_coupon SET sell_count = sell_count+1,popularity = popularity+20, false_sell_count = false_sell_count+1, update_date=now() where id = #{id} | |||
| update tt_coupon SET sell_count = sell_count+1,popularity = popularity+20, false_sell_count = false_sell_count+1 where id = #{id} | |||
| </update> | |||
| <update id="reduceSellCount" parameterType="Long"> | |||
| update tt_coupon SET sell_count = sell_count-1,popularity = popularity-20, false_sell_count = false_sell_count-1, update_date=now() where id = #{id} | |||
| update tt_coupon SET sell_count = sell_count-1,popularity = popularity-20, false_sell_count = false_sell_count-1 where id = #{id} | |||
| </update> | |||
| <update id="addAssessCount" parameterType="Long"> | |||
| update tt_coupon SET assess_count = assess_count+1,popularity = popularity+10, update_date=now() where id = #{id} | |||
| update tt_coupon SET assess_count = assess_count+1,popularity = popularity+10 where id = #{id} | |||
| </update> | |||
| <update id="addCollectCount" parameterType="Long"> | |||
| update tt_coupon SET collect_count = collect_count+1,popularity = popularity+5, update_date=now() where id = #{id} | |||
| update tt_coupon SET collect_count = collect_count+1,popularity = popularity+5 where id = #{id} | |||
| </update> | |||
| <update id="reduceCollectCount" parameterType="Long"> | |||
| update tt_coupon SET collect_count = collect_count-1,popularity = popularity-5, update_date=now() where id = #{id} | |||
| update tt_coupon SET collect_count = collect_count-1,popularity = popularity-5 where id = #{id} | |||
| </update> | |||
| <update id="addPopularity" parameterType="java.util.HashMap"> | |||
| update tt_coupon SET popularity = popularity+#{popularity}, update_date=now() where id = #{id} | |||
| update tt_coupon SET popularity = popularity+#{popularity} where id = #{id} | |||
| </update> | |||
| </mapper> | |||
| @@ -7,28 +7,35 @@ | |||
| <result column="parent_tenant_id" jdbcType="VARCHAR" property="parentTenantId" /> | |||
| <result column="c_user_id" jdbcType="BIGINT" property="cUserId"/> | |||
| <result column="product_id" jdbcType="BIGINT" property="productId"/> | |||
| <result column="product_title" jdbcType="VARCHAR" property="productTitle"/> | |||
| <result column="product_pic" jdbcType="VARCHAR" property="productPic"/> | |||
| <result column="product_sale_price" jdbcType="INTEGER" property="productSalePrice"/> | |||
| <result column="merchant_id" jdbcType="BIGINT" property="merchantId"/> | |||
| <result column="type" jdbcType="TINYINT" property="type"/> | |||
| <result column="way" jdbcType="TINYINT" property="way"/> | |||
| <result column="payment_type" jdbcType="INTEGER" property="paymentType"/> | |||
| <result column="payment" jdbcType="INTEGER" property="payment"/> | |||
| <result column="payment_time" jdbcType="TIMESTAMP" property="paymentTime"/> | |||
| <result column="payment_time" jdbcType="VARCHAR" property="paymentTime"/> | |||
| <result column="order_status" jdbcType="INTEGER" property="orderStatus"/> | |||
| <result column="create_date" jdbcType="TIMESTAMP" property="createDate"/> | |||
| <result column="update_date" jdbcType="TIMESTAMP" property="updateDate"/> | |||
| <result column="is_recorded" jdbcType="INTEGER" property="isRecorded"/> | |||
| <result column="recorded_date" jdbcType="TIMESTAMP" property="recordedDate"/> | |||
| <result column="nick_name" jdbcType="VARCHAR" property="nickName"/> | |||
| <result column="phone" jdbcType="VARCHAR" property="phone"/> | |||
| <result column="product_title" jdbcType="VARCHAR" property="productTitle"/> | |||
| <result column="product_pic" jdbcType="VARCHAR" property="productPic"/> | |||
| <result column="author" jdbcType="VARCHAR" property="author"/> | |||
| <result column="author_pic" jdbcType="VARCHAR" property="authorPic"/> | |||
| </resultMap> | |||
| <sql id="allColumns"> | |||
| o.`id`,o.`tenant_id`,o.`parent_tenant_id`,o.`c_user_id`,o.`product_id`,o.`type`,o.`payment_type`,o.`payment`, | |||
| o.`payment_time`,o.`order_status`,o.`create_date`,o.`update_date`, | |||
| o.`id`,o.`tenant_id`,o.`parent_tenant_id`,o.`c_user_id`,o.`product_id`,o.`type`,o.`way`,o.`payment_type`,o.`payment`, | |||
| o.`payment_time`,o.`order_status`,o.`create_date`,o.`update_date`,o.`is_recorded`,o.`recorded_date`, | |||
| u.`nick_name`,u.`phone`, | |||
| c.`title` product_title,c.`coverImg` product_pic, | |||
| m.`name` author,m.`imgUrl` author_pic | |||
| o.`product_title`,o.`product_pic`,o.`product_sale_price`, | |||
| m.`name` author,m.`img_url` author_pic | |||
| </sql> | |||
| <sql id="dynamicWhereConditions"> | |||
| @@ -57,21 +64,29 @@ | |||
| and o.`type` = #{type} | |||
| </if> | |||
| <if test=" null != way "> | |||
| and o.`way` = #{way} | |||
| </if> | |||
| <if test=" null != paymentType "> | |||
| and o.`payment_type` = #{paymentType} | |||
| </if> | |||
| <if test="startdate != null"> | |||
| and o.`payment_time` >= #{startdate} | |||
| and o.`create_date` >= #{startdate} | |||
| </if> | |||
| <if test="enddate != null"> | |||
| and o.`payment_time` <= #{enddate} | |||
| and o.`create_date` <= #{enddate} | |||
| </if> | |||
| <if test=" null != orderStatus "> | |||
| and o.`order_status` = #{orderStatus} | |||
| </if> | |||
| <if test=" null != isRecorded "> | |||
| and o.`is_recorded` = #{isRecorded} | |||
| </if> | |||
| <if test=" null != nickName "> | |||
| and u.`nick_name` like concat('%', #{nickName},'%') | |||
| </if> | |||
| @@ -81,11 +96,11 @@ | |||
| </if> | |||
| <if test=" null != productTitle "> | |||
| and c.`title` like concat('%', #{productTitle},'%') | |||
| and o.`product_title` like concat('%', #{productTitle},'%') | |||
| </if> | |||
| <if test=" null != authorId "> | |||
| and c.merchant_id = #{authorId} | |||
| <if test=" null != merchantId "> | |||
| and o.merchant_id = #{merchantId} | |||
| </if> | |||
| <if test=" null != author "> | |||
| @@ -113,11 +128,98 @@ | |||
| <include refid="allColumns"/> | |||
| from tt_order o | |||
| left join tt_c_user u on o.c_user_id = u.id | |||
| left join tt_coupon c on o.product_id = c.id | |||
| left join wx_merchant m on c.merchant_id = m.id | |||
| left join wx_merchant m on o.merchant_id = m.id | |||
| <include refid="dynamicWhereConditions"/> | |||
| </select> | |||
| <select id="findCList" parameterType="com.iformall.domain.po.tt.TtOrder" resultMap="BaseResultMap"> | |||
| select | |||
| <include refid="allColumnsC"/> | |||
| from tt_order o | |||
| left join wx_merchant m on o.merchant_id = m.id | |||
| <include refid="dynamicWhereConditionsC"/> | |||
| </select> | |||
| <sql id="allColumnsC"> | |||
| o.`id`,o.`tenant_id`,o.`parent_tenant_id`,o.`c_user_id`,o.`product_id`,o.`type`,o.`way`,o.`payment_type`,o.`payment`, | |||
| o.`payment_time`,o.`order_status`,o.`create_date`,o.`update_date`, | |||
| o.`product_title`,o.`product_pic`,o.`product_sale_price`, | |||
| m.`name` author,m.`img_url` author_pic | |||
| </sql> | |||
| <sql id="dynamicWhereConditionsC"> | |||
| where 1 = 1 | |||
| <if test=" null != id "> | |||
| and o.`id` = #{id} | |||
| </if> | |||
| <if test=" null != tenantId and '' != tenantId"> | |||
| and o.`tenant_id` = #{tenantId} | |||
| </if> | |||
| <if test=" null != parentTenantId and '' != parentTenantId"> | |||
| and o.`parent_tenant_id` = #{parentTenantId} | |||
| </if> | |||
| <if test=" null != cUserId "> | |||
| and o.`c_user_id` = #{cUserId} | |||
| </if> | |||
| <if test=" null != productId "> | |||
| and o.`product_id` = #{productId} | |||
| </if> | |||
| <if test=" null != productTitle "> | |||
| and o.`product_title` like concat('%', #{productTitle},'%') | |||
| </if> | |||
| <if test=" null != type "> | |||
| and o.`type` = #{type} | |||
| </if> | |||
| <if test=" null != way "> | |||
| and o.`way` = #{way} | |||
| </if> | |||
| <if test=" null != paymentType "> | |||
| and o.`payment_type` = #{paymentType} | |||
| </if> | |||
| <if test="startdate != null"> | |||
| and o.`create_date` >= #{startdate} | |||
| </if> | |||
| <if test="enddate != null"> | |||
| and o.`create_date` <= #{enddate} | |||
| </if> | |||
| <if test=" null != orderStatus "> | |||
| and o.`order_status` = #{orderStatus} | |||
| </if> | |||
| <if test=" null != merchantId "> | |||
| and o.merchant_id = #{merchantId} | |||
| </if> | |||
| <if test=" null != author "> | |||
| and m.`name` like concat('%', #{author},'%') | |||
| </if> | |||
| <if test=" null != statusS "> | |||
| and o.`order_status` in | |||
| <foreach collection="statusS" index="index" item="sItem" open="(" separator="," close=")"> | |||
| #{sItem} | |||
| </foreach> | |||
| </if> | |||
| <if test=" null != ids "> | |||
| and o.`id` in | |||
| <foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")"> | |||
| #{idItem} | |||
| </foreach> | |||
| </if> | |||
| order by o.`update_date` desc | |||
| </sql> | |||
| <select id="findListCount" parameterType="com.iformall.domain.po.tt.TtOrder" resultType="Integer"> | |||
| select count(1) | |||
| from tt_order | |||
| @@ -149,4 +251,17 @@ | |||
| </if> | |||
| </select> | |||
| <select id="findExpireIdList" parameterType="java.util.HashMap" resultType="Long"> | |||
| select id | |||
| from tt_order | |||
| where order_status=#{orderStatus} and create_date <= #{beforeDate} | |||
| <if test=" null != isRecorded "> | |||
| and `is_recorded` = #{isRecorded} | |||
| </if> | |||
| </select> | |||
| <update id="updateIsRecorded" parameterType="java.util.HashMap"> | |||
| update tt_order set `is_recorded` = #{isRecorded},recorded_date = now() where id = #{id} | |||
| </update> | |||
| </mapper> | |||
| @@ -25,7 +25,10 @@ | |||
| <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/> | |||
| <result column="merchant_id" jdbcType="BIGINT" property="merchantId"/> | |||
| <result column="merchant_name" jdbcType="VARCHAR" property="merchantName" /> | |||
| <result column="c_user_id" jdbcType="BIGINT" property="cUserId"/> | |||
| <result column="c_user_nick_name" jdbcType="VARCHAR" property="cUserNickName" /> | |||
| <result column="c_user_phone" jdbcType="VARCHAR" property="cUserPhone" /> | |||
| <result column="earn_points" jdbcType="TINYINT" property="earnPoints"/> | |||
| <result column="increased_points" jdbcType="INTEGER" property="increasedPoints"/> | |||
| @@ -45,7 +48,8 @@ | |||
| `id`, `tenant_id`, `parent_tenant_id`, `notice_id`, `notice_create_time`, `notice_event_type`, | |||
| `summary`, `wx_mchid`, `wx_merchant_name`, `wx_shop_name`, `wx_shop_number`, | |||
| `appid`, `openid`, `time_end`, `amount`, `pay_amount`, `transaction_id`, `commit_tag`, `create_time`, `update_time`, | |||
| `merchant_id`, `c_user_id`, `earn_points`, `increased_points`, `points_update_time`, `is_points_notify`, | |||
| `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, | |||
| `earn_points`, `increased_points`, `points_update_time`, `is_points_notify`, | |||
| `is_refund`, `order_status`, `refund_id`, `refund_amount` | |||
| </sql> | |||
| @@ -105,10 +109,18 @@ | |||
| <if test=" null != merchantId "> | |||
| and `merchant_id` = #{merchantId} | |||
| </if> | |||
| <if test=" null != merchantName and ''!=merchantName"> | |||
| and `merchant_name` like concat('%', #{merchantName},'%') | |||
| </if> | |||
| <if test=" null != cUserId "> | |||
| and `c_user_id` = #{cUserId} | |||
| </if> | |||
| <if test=" null != cUserNickName and ''!=cUserNickName"> | |||
| and `c_user_nick_name` like concat('%', #{cUserNickName},'%') | |||
| </if> | |||
| <if test=" null != cUserPhone and ''!=cUserPhone"> | |||
| and `c_user_phone` like concat('%', #{cUserPhone},'%') | |||
| </if> | |||
| <if test=" null != earnPoints "> | |||
| and `earn_points` = #{earnPoints} | |||
| @@ -186,13 +198,13 @@ | |||
| `id`, `tenant_id`, `parent_tenant_id`, `notice_id`, `notice_create_time`, `notice_event_type`, | |||
| `summary`, `wx_mchid`, `wx_merchant_name`, `wx_shop_name`, `wx_shop_number`, | |||
| `appid`, `openid`, `time_end`, `amount`, `pay_amount`, `transaction_id`, `commit_tag`, `create_time`, `update_time`, | |||
| `merchant_id`, `c_user_id`, `earn_points`, `is_points_notify`, `is_refund` | |||
| `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, `earn_points`, `is_points_notify`, `is_refund` | |||
| ) | |||
| VALUES( | |||
| #{id},#{tenantId},#{parentTenantId},#{noticeId},#{noticeCreateTime},#{noticeEventType}, | |||
| #{summary},#{wxMchid},#{wxMerchantName},#{wxShopName},#{wxShopNumber}, | |||
| #{appid},#{openid},#{timeEnd},#{amount},#{payAmount},#{transactionId},#{commitTag},#{createTime},#{updateTime}, | |||
| #{merchantId},#{cUserId},0,0,0 | |||
| #{merchantId},#{merchantName},#{cUserId},#{cUserNickName},#{cUserPhone},0,0,0 | |||
| ); | |||
| </insert> | |||
| @@ -215,13 +227,13 @@ | |||
| `id`, `tenant_id`, `parent_tenant_id`, `notice_id`, `notice_create_time`, `notice_event_type`, | |||
| `summary`, `wx_mchid`, `wx_merchant_name`, `wx_shop_name`, `wx_shop_number`, | |||
| `appid`, `openid`, `time_end`, `amount`,`pay_amount`, `transaction_id`, `commit_tag`, `create_time`, `update_time`, | |||
| `merchant_id`, `c_user_id`, `earn_points`, `is_refund`, `refund_id`, `refund_amount` | |||
| `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, `earn_points`, `is_refund`, `refund_id`, `refund_amount` | |||
| ) | |||
| VALUES( | |||
| #{id},#{tenantId},#{parentTenantId},#{noticeId},#{noticeCreateTime},#{noticeEventType}, | |||
| #{summary},#{wxMchid},#{wxMerchantName},#{wxShopName},#{wxShopNumber}, | |||
| #{appid},#{openid},#{timeEnd},#{amount},#{payAmount},#{transactionId},#{commitTag},#{createTime},#{updateTime}, | |||
| #{merchantId},#{cUserId},0,1,#{refundId},#{refundAmount} | |||
| #{merchantId},#{merchantName},#{cUserId},#{cUserNickName},#{cUserPhone},0,1,#{refundId},#{refundAmount} | |||
| ); | |||
| </insert> | |||
| @@ -31,6 +31,7 @@ | |||
| <result column="qr_code" jdbcType="VARCHAR" property="qrCode"/> | |||
| <result column="introduction" jdbcType="VARCHAR" property="introduction"/> | |||
| <result column="action_desc" jdbcType="VARCHAR" property="actionDesc"/> | |||
| <result column="mark" jdbcType="INTEGER" property="mark"/> | |||
| <result column="is_del" jdbcType="INTEGER" property="isDel"/> | |||
| <result column="talk_user_main" jdbcType="VARCHAR" property="talkUserMain"/> | |||
| <result column="talk_user_aux" jdbcType="VARCHAR" property="talkUserAux"/> | |||
| @@ -38,109 +39,113 @@ | |||
| <result column="rental_start_date" property="rentalStartDate"/> | |||
| <result column="rental_end_date" property="rentalEndDate"/> | |||
| <result column="credit_locked" property="creditLocked"/> | |||
| <result column="entry_amount" jdbcType="INTEGER" property="entryAmount"/> | |||
| <result column="cash_out_number" jdbcType="INTEGER" property="cashOutNumber"/> | |||
| <result column="cash_out_count" jdbcType="INTEGER" property="cashOutCount"/> | |||
| <result column="cash_out_last_time" jdbcType="TIMESTAMP" property="cashOutLastTime"/> | |||
| </resultMap> | |||
| <sql id="allColumns"> | |||
| `id`,`tenant_id`,`parent_tenant_id`,`img_url`,`name`,`encode`,`link_phone`,`create_date`,`update_date`,`car_vendor_type`,`car_params`,`status`,`link_person`, | |||
| `business_id`,`business_types`,`sub_business_id`,`shop_type`,`brand`,`type`,`is_public`,email,`title`,`cover_picture`,`is_admin`,`bill_setting`,`qr_code`, | |||
| `introduction`,`action_desc`,`is_del`,`talk_user_main`,`talk_user_aux`,link_line_phone,credit_locked,cash_out_number,cash_out_count,cash_out_last_time | |||
| m.`id`,m.`tenant_id`,m.`parent_tenant_id`,m.`img_url`,m.`name`,m.`encode`,m.`link_phone`,m.`create_date`,m.`update_date`,m.`car_vendor_type`,m.`car_params`,m.`status`,m.`link_person`, | |||
| m.`business_id`,m.`business_types`,m.`sub_business_id`,m.`shop_type`,m.`brand`,m.`type`,m.`is_public`,m.email,m.`title`,m.`cover_picture`,m.`is_admin`,m.`bill_setting`,m.`qr_code`, | |||
| m.`introduction`,m.`action_desc`,m.`mark`,m.`is_del`,m.`talk_user_main`,m.`talk_user_aux`,m.link_line_phone,m.credit_locked,m.credit_locked,m.entry_amount,m.cash_out_count,m.cash_out_last_time | |||
| </sql> | |||
| <sql id="allColumnsVo"> | |||
| m.`id`,m.`tenant_id`,m.`parent_tenant_id`,m.`img_url`,m.`name`,m.`encode`,m.`link_phone`,m.`create_date`,m.`update_date`,m.`car_vendor_type`,m.`car_params`,m.`status`,m.`link_person`, | |||
| m.`business_id`,m.`business_types`,m.`sub_business_id`,m.`shop_type`,m.`brand`,m.`type`,m.`is_public`,m.email,m.`title`,m.`cover_picture`,m.`is_admin`,m.`bill_setting`,m.`qr_code`, | |||
| m.`introduction`,m.`action_desc`,m.`is_del`,m.`talk_user_main`,m.`talk_user_aux`,m.link_line_phone,r.rental_start_date,r.rental_end_date,m.cash_out_number,m.cash_out_count,m.cash_out_last_time | |||
| m.`introduction`,m.`action_desc`,m.`mark`,m.`is_del`,m.`talk_user_main`,m.`talk_user_aux`,m.link_line_phone,r.rental_start_date,r.rental_end_date,m.entry_amount,m.cash_out_number,m.cash_out_count,m.cash_out_last_time | |||
| </sql> | |||
| <sql id="dynamicWhereConditions"> | |||
| where is_del = 0 | |||
| where m.is_del = 0 | |||
| <if test=" null != id "> | |||
| and `id` = #{id} | |||
| and m.`id` = #{id} | |||
| </if> | |||
| <if test=" null != tenantId and '' != tenantId"> | |||
| and `tenant_id` = #{tenantId} | |||
| and m.`tenant_id` = #{tenantId} | |||
| </if> | |||
| <if test=" null != parentTenantId and '' != parentTenantId"> | |||
| and `parent_tenant_id` = #{parentTenantId} | |||
| and m.`parent_tenant_id` = #{parentTenantId} | |||
| </if> | |||
| <if test=" null != imgUrl "> | |||
| and `img_url` like concat('%', #{imgUrl},'%') | |||
| and m.`img_url` like concat('%', #{imgUrl},'%') | |||
| </if> | |||
| <if test=" null != encode and ''!=encode "> | |||
| and `encode` like concat('%', #{encode},'%') | |||
| and m.`encode` like concat('%', #{encode},'%') | |||
| </if> | |||
| <if test=" null != name and ''!=name "> | |||
| and `name` like concat('%', #{name},'%') | |||
| and m.`name` like concat('%', #{name},'%') | |||
| </if> | |||
| <if test=" null != linkPhone and ''!=linkPhone "> | |||
| and `link_phone` like concat('%', #{linkPhone},'%') | |||
| and m.`link_phone` like concat('%', #{linkPhone},'%') | |||
| </if> | |||
| <if test=" null != createDate "> | |||
| and `create_date` = #{createDate} | |||
| and m.`create_date` = #{createDate} | |||
| </if> | |||
| <if test=" null != updateDate "> | |||
| and `update_date` = #{updateDate} | |||
| and m.`update_date` = #{updateDate} | |||
| </if> | |||
| <if test=" null != carVendorType "> | |||
| and `car_vendor_type` = #{carVendorType} | |||
| and m.`car_vendor_type` = #{carVendorType} | |||
| </if> | |||
| <if test=" null != businessId "> | |||
| and `business_id` = #{businessId} | |||
| and m.`business_id` = #{businessId} | |||
| </if> | |||
| <if test=" null != businessTypes "> | |||
| and JSON_CONTAINS(business_types,JSON_OBJECT('id', #{businessTypes})) | |||
| and JSON_CONTAINS(m.business_types,JSON_OBJECT('id', #{businessTypes})) | |||
| </if> | |||
| <if test=" null != subBusinessId "> | |||
| and `sub_business_id` = #{subBusinessId} | |||
| and m.`sub_business_id` = #{subBusinessId} | |||
| </if> | |||
| <if test=" null != carParams "> | |||
| and `car_params` like concat('%', #{carParams},'%') | |||
| and m.`car_params` like concat('%', #{carParams},'%') | |||
| </if> | |||
| <if test=" null != status "> | |||
| and `status` = #{status} | |||
| and m.`status` = #{status} | |||
| </if> | |||
| <if test=" null != linkPerson "> | |||
| and `link_person` = #{linkPerson} | |||
| and m.`link_person` = #{linkPerson} | |||
| </if> | |||
| <if test=" null != type "> | |||
| and `type` = #{type} | |||
| and m.`type` = #{type} | |||
| </if> | |||
| <if test=" null != isPublic "> | |||
| and `is_public` = #{isPublic} | |||
| and m.`is_public` = #{isPublic} | |||
| </if> | |||
| <if test=" null != email "> | |||
| and `email` = #{email} | |||
| and m.`email` = #{email} | |||
| </if> | |||
| <if test=" null != isAdmin "> | |||
| and `is_admin` = #{isAdmin} | |||
| and m.`is_admin` = #{isAdmin} | |||
| </if> | |||
| <if test=" null != mark "> | |||
| and m.`mark` = #{mark} | |||
| </if> | |||
| <if test=" null != isDel "> | |||
| and `is_del` = #{isDel} | |||
| and m.`is_del` = #{isDel} | |||
| </if> | |||
| <if test=" null != brand "> | |||
| and `brand` = #{brand} | |||
| and m.`brand` = #{brand} | |||
| </if> | |||
| <if test=" null != creditLocked "> | |||
| and `credit_locked` = #{creditLocked} | |||
| and m.`credit_locked` = #{creditLocked} | |||
| </if> | |||
| <if test=" null != rentShopType "> | |||
| and id not in( | |||
| and m.id not in( | |||
| select merchant_id from wx_rent_contract where rent_shop_type=1 | |||
| <if test=" null != tenantId and '' != tenantId"> | |||
| and `tenant_id` = #{tenantId} | |||
| @@ -153,14 +158,14 @@ | |||
| </if> | |||
| <if test=" null != ids "> | |||
| and id in | |||
| and m.id in | |||
| <foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")"> | |||
| #{idItem} | |||
| </foreach> | |||
| </if> | |||
| <if test="(null != floorForRule and '' != floorForRule) or (null != businessForRule and '' != businessForRule)"> | |||
| and id in( | |||
| and m.id in( | |||
| select ms.merchant_id from (select merchant_id,shop_id from wx_merchant_shop where is_del=0) ms | |||
| inner join wx_merchant m on ms.merchant_id = m.id | |||
| inner join wx_shop s on s.id=ms.shop_id | |||
| @@ -195,6 +200,29 @@ | |||
| from wx_merchant m | |||
| <include refid="dynamicWhereConditions"/> | |||
| </select> | |||
| <select id="findFollowList" parameterType="com.iformall.domain.po.WxMerchant" resultMap="BaseResultMap"> | |||
| select | |||
| <include refid="allColumns"/> | |||
| form tt_user_follow uf | |||
| left join wx_merchant m on uf.merchern_id = m.id | |||
| where uf.is_del = 0 and uf.user_id = ${cUserId} | |||
| and m.is_del = 0 | |||
| <if test=" null != status "> | |||
| and m.`status` = #{status} | |||
| </if> | |||
| <if test=" null != isPublic "> | |||
| and m.`is_public` = #{isPublic} | |||
| </if> | |||
| <if test=" null != name and ''!=name "> | |||
| and m.`name` like concat('%', #{name},'%') | |||
| </if> | |||
| <if test=" null != businessTypes "> | |||
| and JSON_CONTAINS(m.business_types,JSON_OBJECT('id', #{businessTypes})) | |||
| </if> | |||
| order by uf.create_date desc | |||
| </select> | |||
| <select id="findListVo" parameterType="com.iformall.domain.po.WxMerchant" resultMap="BaseResultMap"> | |||
| select | |||
| @@ -231,7 +259,7 @@ | |||
| <select id="getMerchantByEncode" parameterType="String" resultMap="BaseResultMap"> | |||
| select | |||
| <include refid="allColumns"/> | |||
| from wx_merchant where encode = #{encode} | |||
| from wx_merchant m where m.encode = #{encode} | |||
| </select> | |||
| <sql id="dataRule"> | |||
| @@ -328,6 +356,9 @@ | |||
| <if test=" null != isAdmin "> | |||
| and m.`is_admin` = #{isAdmin} | |||
| </if> | |||
| <if test=" null != mark "> | |||
| and m.`mark` = #{mark} | |||
| </if> | |||
| <if test=" null != isDel "> | |||
| and m.`is_del` = #{isDel} | |||
| </if> | |||
| @@ -657,4 +688,11 @@ | |||
| update wx_merchant set cash_out_count = 0 where id = #{id} | |||
| </update> | |||
| <update id="recordedAmount" parameterType="com.iformall.domain.po.WxMerchant"> | |||
| update wx_merchant set | |||
| entry_amount = ifnull(entry_amount,0)+#{entryAmount}, | |||
| cash_out_number = ifnull(cash_out_number,0)+#{cashOutNumber} | |||
| where id = #{id} | |||
| </update> | |||
| </mapper> | |||
| @@ -11,6 +11,8 @@ | |||
| <result column="api_key" jdbcType="VARCHAR" property="apiKey"/> | |||
| <result column="merchant_api_key" jdbcType="VARCHAR" property="merchantApiKey"/> | |||
| <result column="notify_url" jdbcType="VARCHAR" property="notifyUrl"/> | |||
| <result column="notify_token" jdbcType="VARCHAR" property="notifyToken"/> | |||
| <result column="cert_path" jdbcType="VARCHAR" property="certPath"/> | |||
| <result column="merchant_cert_path" jdbcType="VARCHAR" property="merchantCertPath"/> | |||
| <result column="type" jdbcType="INTEGER" property="type"/> | |||
| @@ -27,7 +29,7 @@ | |||
| </resultMap> | |||
| <sql id="allColumns"> | |||
| `id`,`tenant_id`,`parent_tenant_id`,`mch_id`,`sub_mch_id`,`sub_app_id`,`api_key`,`merchant_api_key`,`notify_url`,`cert_path`, | |||
| `id`,`tenant_id`,`parent_tenant_id`,`mch_id`,`sub_mch_id`,`sub_app_id`,`api_key`,`merchant_api_key`,`notify_url`,`notify_token`,`cert_path`, | |||
| `merchant_cert_path`,`type`,`share`,`rate`,`real_rate`, | |||
| `service_id`,`pay_score_notify_url`,`api_v3_key`,`cert_serial_no`,`private_key_path`,`private_cert_path` | |||
| </sql> | |||
| @@ -50,6 +50,12 @@ | |||
| <if test=" null != onOff "> | |||
| and `on_off` = #{onOff} | |||
| </if> | |||
| <if test=" null != types "> | |||
| and `type` in | |||
| <foreach collection="types" index="index" item="item" open="(" separator="," close=")"> | |||
| #{item} | |||
| </foreach> | |||
| </if> | |||
| <if test=" null != ids "> | |||
| and id in | |||
| <foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")"> | |||
| @@ -71,7 +77,6 @@ | |||
| <include refid="allColumns"/> | |||
| from wx_template_msg | |||
| <include refid="dynamicWhereConditions"/> | |||
| and `type` > 3 and `type` < 100 | |||
| </select> | |||
| @@ -29,7 +29,10 @@ | |||
| <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/> | |||
| <result column="merchant_id" jdbcType="BIGINT" property="merchantId"/> | |||
| <result column="merchant_name" jdbcType="VARCHAR" property="merchantName" /> | |||
| <result column="c_user_id" jdbcType="BIGINT" property="cUserId"/> | |||
| <result column="c_user_nick_name" jdbcType="VARCHAR" property="cUserNickName" /> | |||
| <result column="c_user_phone" jdbcType="VARCHAR" property="cUserPhone" /> | |||
| <result column="earn_points" jdbcType="TINYINT" property="earnPoints"/> | |||
| <result column="increased_points" jdbcType="INTEGER" property="increasedPoints"/> | |||
| @@ -48,7 +51,8 @@ | |||
| `id`, `tenant_id`, `parent_tenant_id`, `source_app_id`, `source_type`,`notice_id`, `notice_create_time`, `notice_event_type`, | |||
| `summary`,`shop_name`, `shop_number`, `user_phone`, `user_number`, | |||
| `time_end`, `amount`, `pay_amount`, `transaction_id`, `create_time`, `update_time`, | |||
| `merchant_id`, `c_user_id`, `earn_points`, `increased_points`, `points_update_time`, | |||
| `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, | |||
| `earn_points`, `increased_points`, `points_update_time`, | |||
| `is_refund`, `order_status`, `refund_id`, `refund_amount` | |||
| </sql> | |||
| @@ -108,10 +112,18 @@ | |||
| <if test=" null != merchantId "> | |||
| and `merchant_id` = #{merchantId} | |||
| </if> | |||
| <if test=" null != merchantName and ''!=merchantName"> | |||
| and `merchant_name` like concat('%', #{merchantName},'%') | |||
| </if> | |||
| <if test=" null != cUserId "> | |||
| and `c_user_id` = #{cUserId} | |||
| </if> | |||
| <if test=" null != cUserNickName and ''!=cUserNickName"> | |||
| and `c_user_nick_name` like concat('%', #{cUserNickName},'%') | |||
| </if> | |||
| <if test=" null != cUserPhone and ''!=cUserPhone"> | |||
| and `c_user_phone` like concat('%', #{cUserPhone},'%') | |||
| </if> | |||
| <if test=" null != earnPoints "> | |||
| and `earn_points` = #{earnPoints} | |||
| @@ -187,12 +199,12 @@ | |||
| INSERT INTO wx_third_party_orders ( | |||
| `id`, `tenant_id`, `parent_tenant_id`,`source_app_id`, `source_type`, `notice_id`, `notice_create_time`, `notice_event_type`, | |||
| `summary`, `shop_name`, `shop_number`, `user_phone`, `user_number`,`time_end`, `amount`, `pay_amount`, `transaction_id`, `create_time`, `update_time`, | |||
| `merchant_id`, `c_user_id`, `earn_points`, `is_refund` | |||
| `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, `earn_points`, `is_refund` | |||
| ) | |||
| VALUES( | |||
| #{id},#{tenantId},#{parentTenantId},#{sourceAppId},#{sourceType},#{noticeId},#{noticeCreateTime},#{noticeEventType}, | |||
| #{summary},#{shopName},#{shopNumber},#{userPhone},#{userNumber},#{timeEnd},#{amount},#{payAmount},#{transactionId},#{createTime},#{updateTime}, | |||
| #{merchantId},#{cUserId},0,0 | |||
| #{merchantId},#{merchantName},#{cUserId},#{cUserNickName},#{cUserPhone},0,0 | |||
| ); | |||
| </insert> | |||
| @@ -207,12 +219,12 @@ | |||
| INSERT INTO wx_third_party_orders ( | |||
| `id`, `tenant_id`, `parent_tenant_id`,`source_app_id`, `source_type`, `notice_id`, `notice_create_time`, `notice_event_type`, | |||
| `summary`,`shop_name`, `shop_number`, `user_phone`, `user_number`, `time_end`, `amount`,`pay_amount`, `transaction_id`, `create_time`, `update_time`, | |||
| `merchant_id`, `c_user_id`, `earn_points`, `is_refund`, `refund_id`, `refund_amount` | |||
| `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, `earn_points`, `is_refund`, `refund_id`, `refund_amount` | |||
| ) | |||
| VALUES( | |||
| #{id},#{tenantId},#{parentTenantId},#{sourceAppId},#{sourceType},#{noticeId},#{noticeCreateTime},#{noticeEventType}, | |||
| #{summary},#{shopName},#{shopNumber},#{userPhone},#{userNumber},#{timeEnd},#{amount},#{payAmount},#{transactionId},#{createTime},#{updateTime}, | |||
| #{merchantId},#{cUserId},0,1,#{refundId},#{refundAmount} | |||
| #{merchantId},#{merchantName},#{cUserId},#{cUserNickName},#{cUserPhone},0,1,#{refundId},#{refundAmount} | |||
| ); | |||
| </insert> | |||
| @@ -12,6 +12,7 @@ import com.iformall.domain.po.base.BaseEntity; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.domain.po.msg.WxMsg; | |||
| import com.iformall.enums.EnumSendWay; | |||
| import com.iformall.enums.EnumTemplateType; | |||
| import com.iformall.service.WxMsgService; | |||
| import com.iformall.service.WxTemplateMsgService; | |||
| import io.swagger.annotations.ApiImplicitParam; | |||
| @@ -71,6 +72,29 @@ public class WxMsgController extends BaseController { | |||
| logger.debug("[" + getIpAddr() + "] WxMsgController::list"); | |||
| if (null == wxTemplateMsg) wxTemplateMsg = new WxTemplateMsg(); | |||
| wxTemplateMsg.updateTenantInfo(getTenantInfo()); | |||
| List<Integer> types = new ArrayList<>(); | |||
| types.add(EnumTemplateType.ACTIVITY_REMIND.getCode()); | |||
| types.add(EnumTemplateType.LIVE_REMIND.getCode()); | |||
| wxTemplateMsg.setTypes(types); | |||
| final PageInfo<WxTemplateMsg> page = wxTemplateMsgService.listAsPageForMiniApp(wxTemplateMsg, pageNum, pageSize); | |||
| return new ResultData(page); | |||
| } | |||
| @ApiOperation("模板分页列表接口") | |||
| @GetMapping("templateListV1") | |||
| @ApiImplicitParams({ | |||
| @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), | |||
| @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) | |||
| @SystemControllerLog(description = "moban-列表") | |||
| public ResultData templateListV1(@ModelAttribute WxTemplateMsg wxTemplateMsg, Integer pageNum, Integer pageSize) { | |||
| logger.debug("[" + getIpAddr() + "] WxMsgController::list"); | |||
| if (null == wxTemplateMsg) wxTemplateMsg = new WxTemplateMsg(); | |||
| wxTemplateMsg.updateTenantInfo(getTenantInfo()); | |||
| List<Integer> types = new ArrayList<>(); | |||
| types.add(EnumTemplateType.ACTIVITY_REMIND.getCode()); | |||
| types.add(EnumTemplateType.LIVE_REMIND.getCode()); | |||
| types.add(EnumTemplateType.CREDIT_UPD_REMIND.getCode()); | |||
| wxTemplateMsg.setTypes(types); | |||
| final PageInfo<WxTemplateMsg> page = wxTemplateMsgService.listAsPageForMiniApp(wxTemplateMsg, pageNum, pageSize); | |||
| return new ResultData(page); | |||
| } | |||
| @@ -7,6 +7,7 @@ import com.iformall.common.ResultData; | |||
| import com.iformall.controller.base.BaseController; | |||
| import com.iformall.domain.po.WxBusiness; | |||
| import com.iformall.domain.po.WxMerchant; | |||
| import com.iformall.domain.po.base.BaseEntity; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.domain.po.tt.TtCoupon; | |||
| import com.iformall.domain.po.tt.TtVideoLibrary; | |||
| @@ -74,6 +75,13 @@ public class TtCouponController extends BaseController { | |||
| // }else{ | |||
| // record.setType(EnumTtCouponType.COUPON_COLUMN.getCode()); | |||
| // } | |||
| if(StringUtils.isNotBlank(record.getSortColumn())){ | |||
| String coryColumn = "c."+record.getSortColumns(); | |||
| record.setSortColumns(coryColumn); | |||
| record.setSortColumn(null); | |||
| }else{ | |||
| record.setSortColumns(BaseEntity.SortField.CUpdateDate_DESC); | |||
| } | |||
| return new ResultData(ttCouponService.listAsPage(record, pageNum, pageSize)); | |||
| } | |||
| @@ -51,6 +51,7 @@ public class TtOrderController extends BaseController { | |||
| if (order == null){ | |||
| order = new TtOrder(); | |||
| } | |||
| order.updateTenantInfo(getTenantInfo()); | |||
| return new ResultData(ttOrderService.listAsPage(order, pageNum, pageSize)); | |||
| } | |||
| @@ -0,0 +1,96 @@ | |||
| package com.iformall.callback; | |||
| import com.alibaba.fastjson.JSONObject; | |||
| import com.iformall.controller.BaseController; | |||
| import com.iformall.domain.po.WxAppinfo; | |||
| import com.iformall.domain.po.WxPayAccount; | |||
| import com.iformall.douyin.pay.DouYinPayHelper; | |||
| import com.iformall.interceptor.BodyReaderHttpServletRequestWrapper; | |||
| import com.iformall.service.WxAppinfoService; | |||
| import com.iformall.service.WxPayAccountService; | |||
| import com.iformall.service.tt.TtOrderService; | |||
| import org.slf4j.Logger; | |||
| import org.slf4j.LoggerFactory; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.web.bind.annotation.*; | |||
| import javax.servlet.http.HttpServletRequest; | |||
| import java.util.HashMap; | |||
| import java.util.Map; | |||
| @RestController | |||
| @RequestMapping("/callback") | |||
| public class TtOrderCallbackController extends BaseController { | |||
| private final Logger logger = LoggerFactory.getLogger(this.getClass()); | |||
| @Autowired | |||
| private TtOrderService ttOrderService; | |||
| @Autowired | |||
| private WxAppinfoService appinfoService; | |||
| @Autowired | |||
| private WxPayAccountService payAccountService; | |||
| /** | |||
| * timestamp number Unix 时间戳,10 位,整型数 | |||
| * nonce string 随机数 | |||
| * msg string 订单信息的 json 字符串 | |||
| * type string 回调类型标记,支付成功回调为"payment" | |||
| * msg_signature String 签名 | |||
| * | |||
| * appid string 小程序 id | |||
| * cp_orderno string 开发者传入订单号 | |||
| * way string way 字段中标识了支付渠道:2-支付宝,1-微信,3-银行卡 | |||
| * cp_extra string 预下单时开发者传入字段 | |||
| * | |||
| * @return 支付通知 | |||
| */ | |||
| @PostMapping(value = "/orderPay") | |||
| @ResponseBody | |||
| public Map<String,Object> createOrder( HttpServletRequest request){ | |||
| Map<String,Object> resultMap = new HashMap<>(); | |||
| String body = ((BodyReaderHttpServletRequestWrapper) request).getBody(); | |||
| try { | |||
| Map<String, Object> parameterMap = JSONObject.parseObject(body, Map.class); | |||
| String timestamp = (String) parameterMap.get("timestamp"); | |||
| String nonce = (String) parameterMap.get("nonce"); | |||
| // {"appid":"tt9da4eb19029c2bb301","cp_orderno":"557490321114062848","cp_extra":"","way":"2","channel_no":"2021052622001418391405536769","channel_gateway_no":"12105260162116189897","payment_order_no":"2021052622001418391405536769","out_channel_order_no":"","total_amount":100} | |||
| String msg = (String) parameterMap.get("msg"); | |||
| String type = (String) parameterMap.get("type"); | |||
| String msgSignature = (String) parameterMap.get("msg_signature"); | |||
| if("payment".equals(type)){ | |||
| Map<String, Object> pMap = JSONObject.parseObject(msg, Map.class); | |||
| String appid = (String) pMap.get("appid"); | |||
| String cp_orderno = (String) pMap.get("cp_orderno");//开发者传入订单号 | |||
| String way = (String) pMap.get("way");//2-支付宝,1-微信 | |||
| WxAppinfo appinfo = appinfoService.getByAppId(appid); | |||
| WxPayAccount payAccount = payAccountService.getById(appinfo.getPayId()); | |||
| Map<String,Object> paramMap = new HashMap<>(); | |||
| paramMap.put("token",payAccount.getNotifyToken()); | |||
| paramMap.put("timestamp",timestamp); | |||
| paramMap.put("nonce",nonce); | |||
| paramMap.put("msg",msg); | |||
| String sign = DouYinPayHelper.getTTBackSign(paramMap, "SHA1"); | |||
| if(msgSignature.equalsIgnoreCase(sign)){ | |||
| ttOrderService.updateOrderStatus(Long.valueOf(cp_orderno),appinfo,payAccount); | |||
| resultMap.put("err_no",0); | |||
| resultMap.put("err_tips","success"); | |||
| } | |||
| } | |||
| return resultMap; | |||
| } catch (Exception e){ | |||
| e.printStackTrace(); | |||
| resultMap.put("err_tips","error"); | |||
| return resultMap; | |||
| } | |||
| } | |||
| } | |||
| @@ -3,17 +3,21 @@ package com.iformall.controller; | |||
| import com.iformall.common.ErrorCode; | |||
| import com.iformall.common.ResultData; | |||
| import com.iformall.domain.po.WxMerchant; | |||
| import com.iformall.domain.po.base.BaseEntity; | |||
| import com.iformall.domain.po.tt.TtCoupon; | |||
| import com.iformall.enums.EnumTtCouponStatus; | |||
| import com.iformall.enums.EnumYesOrNo; | |||
| import com.iformall.exception.MallinkException; | |||
| import com.iformall.service.WxMerchantService; | |||
| import com.iformall.service.tt.TtCouponService; | |||
| import com.iformall.service.tt.TtOrderService; | |||
| import com.iformall.video.VideoFactory; | |||
| import com.iformall.video.entity.VideUploadResult; | |||
| import io.swagger.annotations.Api; | |||
| import io.swagger.annotations.ApiImplicitParam; | |||
| import io.swagger.annotations.ApiImplicitParams; | |||
| import io.swagger.annotations.ApiOperation; | |||
| import org.apache.commons.lang3.StringUtils; | |||
| import org.slf4j.Logger; | |||
| import org.slf4j.LoggerFactory; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| @@ -32,6 +36,9 @@ public class TtCouponController extends BaseController { | |||
| @Autowired | |||
| private WxMerchantService wxMerchantService; | |||
| @Autowired | |||
| private TtOrderService ttOrderService; | |||
| @Autowired | |||
| private VideoFactory videoFactory; | |||
| @@ -47,6 +54,13 @@ public class TtCouponController extends BaseController { | |||
| logger.debug("[" + getIpAddr() + "] TtCouponController::list"); | |||
| if (record == null) record = new TtCoupon(); | |||
| record.setStatus(EnumTtCouponStatus.TTCOUPON_STATUS_SHELFING.getCode()); | |||
| if(StringUtils.isNotBlank(record.getSortColumn())){ | |||
| String coryColumn = "c."+record.getSortColumns(); | |||
| record.setSortColumns(coryColumn); | |||
| record.setSortColumn(null); | |||
| }else{ | |||
| record.setSortColumns(BaseEntity.SortField.CUpdateDate_DESC); | |||
| } | |||
| return new ResultData(ttCouponService.listAsPage(record, pageNum, pageSize)); | |||
| } | |||
| @@ -58,8 +72,25 @@ public class TtCouponController extends BaseController { | |||
| if (id == null) { | |||
| return new ResultData(ResultData.ERROR, "缺少id"); | |||
| } | |||
| TtCoupon detail = ttCouponService.detail(id); | |||
| if(detail == null){ | |||
| return new ResultData(); | |||
| } | |||
| if(detail.getIsPayment().equals(EnumYesOrNo.YES.getCode())){ | |||
| try { | |||
| if(ttOrderService.isByMember(getMemberId(),id)){ | |||
| detail.setView(true); | |||
| }else{ | |||
| detail.setView(false); | |||
| } | |||
| } catch (MallinkException e) { | |||
| detail.setView(false); | |||
| } | |||
| }else{ | |||
| detail.setView(true); | |||
| } | |||
| ttCouponService.addSeeCount(id); | |||
| return new ResultData(ttCouponService.detail(id)); | |||
| return new ResultData(detail); | |||
| } | |||
| @GetMapping(value = "/videoDetial") | |||
| @@ -122,74 +153,30 @@ public class TtCouponController extends BaseController { | |||
| return new ResultData(); | |||
| } | |||
| @ApiOperation("取消收藏") | |||
| @GetMapping("/cancelCollect") | |||
| @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) | |||
| public ResultData cancelCollect(@RequestParam Long id) { | |||
| logger.debug("[" + getIpAddr() + "] TtCouponController::collectCoupon"); | |||
| if (id == null) { | |||
| return new ResultData(ResultData.ERROR, "缺少id"); | |||
| } | |||
| Long memberId; | |||
| try { | |||
| memberId = getMemberId(); | |||
| } catch (MallinkException e) { | |||
| return new ResultData(e.getErrorCode(), e.getMessage()); | |||
| } | |||
| ttCouponService.cancelCollect(memberId,id); | |||
| return new ResultData(); | |||
| } | |||
| @ApiOperation("是否关注") | |||
| @GetMapping("/isfollow") | |||
| @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) | |||
| public ResultData isfollow(@RequestParam Long id) { | |||
| logger.debug("[" + getIpAddr() + "] TtCouponController::isfollow"); | |||
| if (id == null) { | |||
| return new ResultData(ResultData.ERROR, "缺少id"); | |||
| } | |||
| Long memberId; | |||
| try { | |||
| memberId = getMemberId(); | |||
| } catch (MallinkException e) { | |||
| return new ResultData(e.getErrorCode(), e.getMessage()); | |||
| } | |||
| int count = ttCouponService.getfollow(memberId,id); | |||
| if(count > 0){ | |||
| return new ResultData(true); | |||
| }else{ | |||
| return new ResultData(false); | |||
| } | |||
| } | |||
| @ApiOperation("关注") | |||
| @GetMapping("/followMerchant") | |||
| @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) | |||
| public ResultData followMerchant(@RequestParam Long id) { | |||
| logger.debug("[" + getIpAddr() + "] TtCouponController::followMerchant"); | |||
| if (id == null) { | |||
| return new ResultData(ResultData.ERROR, "缺少id"); | |||
| } | |||
| WxMerchant byId = wxMerchantService.getById(id); | |||
| if(byId == null){ | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_ERROR,"找不到数据"); | |||
| } | |||
| @ApiOperation("分页收藏列表接口") | |||
| @GetMapping("collectList") | |||
| @ApiImplicitParams({ | |||
| @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), | |||
| @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) | |||
| public ResultData collectList(@ModelAttribute TtCoupon record, Integer pageNum, Integer pageSize) { | |||
| logger.debug("[" + getIpAddr() + "] TtCouponController::collectList"); | |||
| if (record == null) record = new TtCoupon(); | |||
| Long memberId; | |||
| try { | |||
| memberId = getMemberId(); | |||
| } catch (MallinkException e) { | |||
| return new ResultData(e.getErrorCode(), e.getMessage()); | |||
| } | |||
| ttCouponService.followMerchant(getTenantInfo(),memberId,byId.getId()); | |||
| return new ResultData(); | |||
| record.setCUserId(memberId); | |||
| record.setStatus(EnumTtCouponStatus.TTCOUPON_STATUS_SHELFING.getCode()); | |||
| return new ResultData(ttCouponService.collectListAsPage(record, pageNum, pageSize)); | |||
| } | |||
| @ApiOperation("取消关注") | |||
| @GetMapping("/cancelFollow") | |||
| @ApiOperation("取消收藏") | |||
| @GetMapping("/cancelCollect") | |||
| @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) | |||
| public ResultData cancelFollow(@RequestParam Long id) { | |||
| logger.debug("[" + getIpAddr() + "] TtCouponController::cancelFollow"); | |||
| public ResultData cancelCollect(@RequestParam Long id) { | |||
| logger.debug("[" + getIpAddr() + "] TtCouponController::collectCoupon"); | |||
| if (id == null) { | |||
| return new ResultData(ResultData.ERROR, "缺少id"); | |||
| } | |||
| @@ -199,7 +186,7 @@ public class TtCouponController extends BaseController { | |||
| } catch (MallinkException e) { | |||
| return new ResultData(e.getErrorCode(), e.getMessage()); | |||
| } | |||
| ttCouponService.cancelFollow(memberId,id); | |||
| ttCouponService.cancelCollect(memberId,id); | |||
| return new ResultData(); | |||
| } | |||
| @@ -1,69 +0,0 @@ | |||
| package com.iformall.controller; | |||
| import com.iformall.utils.sign.SignUtils; | |||
| import org.slf4j.Logger; | |||
| import org.slf4j.LoggerFactory; | |||
| import org.springframework.web.bind.annotation.*; | |||
| import javax.servlet.http.HttpServletRequest; | |||
| import java.util.HashMap; | |||
| import java.util.Map; | |||
| @RestController | |||
| @RequestMapping("/callback") | |||
| public class TtOrderCallbackController extends BaseController { | |||
| private final Logger logger = LoggerFactory.getLogger(this.getClass()); | |||
| private final String token = "ttZhiBoTang"; | |||
| /** | |||
| * timestamp number Unix 时间戳,10 位,整型数 | |||
| * nonce string 随机数 | |||
| * msg string 订单信息的 json 字符串 | |||
| * type string 回调类型标记,支付成功回调为"payment" | |||
| * msg_signature String 签名 | |||
| * | |||
| * appid string 小程序 id | |||
| * cp_orderno string 开发者传入订单号 | |||
| * way string way 字段中标识了支付渠道:2-支付宝,1-微信 | |||
| * cp_extra string 预下单时开发者传入字段 | |||
| * | |||
| * @return 支付通知 | |||
| */ | |||
| @PostMapping(value = "/orderPay") | |||
| @ResponseBody | |||
| public Map<String,Object> createOrder( HttpServletRequest request){ | |||
| Map<String,Object> resultMap = new HashMap<>(); | |||
| String timestamp = request.getParameter("timestamp"); | |||
| String nonce = request.getParameter("nonce"); | |||
| String msg = request.getParameter("msg"); | |||
| String type = request.getParameter("type"); | |||
| String msgSignature = request.getParameter("msg_signature"); | |||
| logger.info("timestamp:"+timestamp+",nonce:"+nonce+",msg:"+msg+",type:"+type+",msgSignature:"+msgSignature); | |||
| Map<String,Object> paramMap = new HashMap<>(); | |||
| paramMap.put("token",token); | |||
| paramMap.put("timestamp",timestamp); | |||
| paramMap.put("nonce",nonce); | |||
| paramMap.put("msg",msg); | |||
| String sha = SignUtils.getSign(null, paramMap, "SHA"); | |||
| logger.info("sha----"+sha); | |||
| if(msgSignature.equals(sha)){ | |||
| logger.info("true"); | |||
| } | |||
| try { | |||
| // resultMap.put("err_no",0); | |||
| // resultMap.put("err_tips","success"); | |||
| return resultMap; | |||
| } catch (Exception e){ | |||
| e.printStackTrace(); | |||
| return resultMap; | |||
| } | |||
| } | |||
| } | |||
| @@ -35,6 +35,9 @@ public class TtOrderController extends BaseController { | |||
| @Autowired | |||
| private WxAppinfoService wxAppinfoService; | |||
| @Autowired | |||
| private WxPayAccountService payAccountService; | |||
| @ApiOperation("分页订单列表接口") | |||
| @GetMapping("list") | |||
| @@ -54,7 +57,7 @@ public class TtOrderController extends BaseController { | |||
| return new ResultData(e.getErrorCode(), e.getMessage()); | |||
| } | |||
| order.setCUserId(memberId); | |||
| return new ResultData(ttOrderService.listAsPage(order, pageNum, pageSize)); | |||
| return new ResultData(ttOrderService.listCAsPage(order, pageNum, pageSize)); | |||
| } | |||
| @ApiOperation(value = "下订单", notes = "{\"couponChannelId\":\"String\",\"couponId\":\"String\",\"press\":\"String\",\"orderGroupId\":\"String\",\"formId\":\"String\"}") | |||
| @@ -77,7 +80,7 @@ public class TtOrderController extends BaseController { | |||
| } catch (MallinkException e) { | |||
| return new ResultData(e.getErrorCode(), e.getMessage()); | |||
| } | |||
| return ttOrderService.saveOrder(couponId,memberId,EnumPayWay.PAY_WAY_TT,getTenantInfo()); | |||
| return ttOrderService.saveOrder(couponId,memberId,EnumPayWay.PAY_WAY_TT); | |||
| } | |||
| @@ -140,13 +143,14 @@ public class TtOrderController extends BaseController { | |||
| /** | |||
| * tt支付 | |||
| * @param paramMap | |||
| * @param request | |||
| * @param | |||
| * @return | |||
| * @throws Exception | |||
| */ | |||
| //@ApiOperation(value = "发起小程序支付订单", notes = "{\"orderId\":\"string\"}") | |||
| @RequestMapping(value = "/createPay", method = RequestMethod.POST) | |||
| public ResultData _create(@RequestBody Map<String, String> paramMap, HttpServletRequest request) throws Exception { | |||
| @ApiOperation(value = "发起小程序支付订单", notes = "{\"orderId\":\"string\"}") | |||
| // @RequestMapping(value = "/createPay", method = RequestMethod.POST) | |||
| @PostMapping("createPay") | |||
| public ResultData _create(@RequestBody Map<String, String> paramMap){ | |||
| logger.info("/api/pay/create" + paramMap.toString()); | |||
| String orderIdStr = paramMap.get("orderId"); | |||
| if (StringUtils.isBlank(orderIdStr)) { | |||
| @@ -213,12 +217,16 @@ public class TtOrderController extends BaseController { | |||
| if (cAppInfo == null) { | |||
| return new ResultData(ErrorCode.APP_ID_NOT_ENABLE); | |||
| } | |||
| WxPayAccount payAccout = payAccountService.getById(cAppInfo.getId()); | |||
| if (payAccout == null) { | |||
| return new ResultData(ErrorCode.APP_ID_NOT_ENABLE); | |||
| } | |||
| if(code.intValue() == 0){ | |||
| return ttOrderService.updateOrderStatus(getTenantInfo(),orderId,memberId,cAppInfo); | |||
| return ttOrderService.updateOrderStatus(orderId,cAppInfo,payAccout); | |||
| }else{ | |||
| return new ResultData(); | |||
| } | |||
| } | |||
| } | |||
| @@ -3,6 +3,7 @@ package com.iformall.controller; | |||
| import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult; | |||
| import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo; | |||
| import cn.binarywang.wx.miniapp.bean.WxMaUserInfo; | |||
| import cn.binarywang.wx.miniapp.util.crypt.WxMaCryptUtils; | |||
| import com.alibaba.fastjson.JSONObject; | |||
| import com.iformall.annotation.AuthIgnore; | |||
| import com.iformall.annotation.TenantIgnore; | |||
| @@ -256,6 +257,8 @@ public class TtUserGrantController extends BaseController { | |||
| String session_key = user.getSessionKey(); | |||
| try { | |||
| // 解密用户信息 | |||
| // String decrypt = WxMaCryptUtils.decrypt(session_key, encryptedData, iv); | |||
| // logger.info("解密信息"+decrypt); | |||
| WxMaUserInfo userInfo = ttMaService.getUserService().getUserInfo(session_key, encryptedData, iv); | |||
| if (userInfo != null) { | |||
| logger.debug(userInfo.toString()); | |||
| @@ -5,9 +5,11 @@ import com.iformall.common.ResultData; | |||
| import com.iformall.domain.dto.WxMerchantDto; | |||
| import com.iformall.domain.po.WxMerchant; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.domain.po.tt.TtCoupon; | |||
| import com.iformall.domain.vo.WxMerchantVo; | |||
| import com.iformall.enums.EnumMerchantPublic; | |||
| import com.iformall.enums.EnumMerchantStatus; | |||
| import com.iformall.enums.EnumTtCouponStatus; | |||
| import com.iformall.exception.MallinkException; | |||
| import com.iformall.service.WxMerchantService; | |||
| import com.iformall.utils.HashUtil; | |||
| @@ -41,33 +43,119 @@ public class WxMerchantController extends BaseController { | |||
| public ResultData list(@ModelAttribute WxMerchantDto wxMerchantDto, Integer pageNum, Integer pageSize) { | |||
| logger.debug("[" + getIpAddr() + "] WxMerchantController::list"); | |||
| if (null == wxMerchantDto) wxMerchantDto = new WxMerchantDto(); | |||
| wxMerchantDto.updateTenantInfo(getTenantInfo()); | |||
| // wxMerchantDto.updateTenantInfo(getTenantInfo()); | |||
| wxMerchantDto.setMerchantStatus(EnumMerchantStatus.VALID.getCode()); | |||
| wxMerchantDto.setIsPublic(EnumMerchantPublic.PUBLIC.getCode()); | |||
| return new ResultData(wxMerchantService.listAsPageCVo(wxMerchantDto, pageNum, pageSize)); | |||
| } | |||
| @ApiOperation("分页列表接口") | |||
| @GetMapping("listV1") | |||
| @ApiImplicitParams({ | |||
| @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), | |||
| @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) | |||
| public ResultData listV1(@ModelAttribute WxMerchant merchant, Integer pageNum, Integer pageSize) { | |||
| logger.debug("[" + getIpAddr() + "] WxMerchantController::list"); | |||
| if (null == merchant) merchant = new WxMerchant(); | |||
| // merchant.updateTenantInfo(getTenantInfo()); | |||
| merchant.setStatus(EnumMerchantStatus.VALID.getCode()); | |||
| merchant.setIsPublic(EnumMerchantPublic.PUBLIC.getCode()); | |||
| return new ResultData(wxMerchantService.listAsPage(merchant, pageNum, pageSize)); | |||
| } | |||
| @ApiOperation("根据code查询接口") | |||
| @GetMapping("/findByCode") | |||
| @GetMapping("/findById") | |||
| @ApiImplicitParam(name = "merchantCode", value = "merchantCode", dataType = "String", paramType = "query", required = true) | |||
| public ResultData findByCode(String merchantCode) { | |||
| logger.debug("[" + getIpAddr() + "] WxMerchantController::findByCode"); | |||
| if(merchantCode == null) { | |||
| public ResultData findById(Long id) { | |||
| logger.debug("[" + getIpAddr() + "] WxMerchantController::findById"); | |||
| if(id == null) { | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | |||
| } | |||
| String codeMD5 = HashUtil.DecodeByMD5(merchantCode); | |||
| if(StringUtils.isBlank(codeMD5)) { | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | |||
| WxMerchant wxMerchant = wxMerchantService.selectById(id); | |||
| return new ResultData(wxMerchant); | |||
| } | |||
| @ApiOperation("是否关注") | |||
| @GetMapping("/isfollow") | |||
| @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) | |||
| public ResultData isfollow(@RequestParam Long id) { | |||
| logger.debug("[" + getIpAddr() + "] WxMerchantController::isfollow"); | |||
| if (id == null) { | |||
| return new ResultData(ResultData.ERROR, "缺少id"); | |||
| } | |||
| HashMap<String, String> params = new HashMap<String, String>(); | |||
| TenantEntity tenantEntity = getTenantInfo(); | |||
| params.put("tenantId", tenantEntity.getTenantId()); | |||
| if (StringUtils.isNotBlank(tenantEntity.getParentTenantId())) { | |||
| params.put("parentTenantId", tenantEntity.getParentTenantId()); | |||
| Long memberId; | |||
| try { | |||
| memberId = getMemberId(); | |||
| } catch (MallinkException e) { | |||
| return new ResultData(e.getErrorCode(), e.getMessage()); | |||
| } | |||
| params.put("merchantCode", codeMD5); | |||
| WxMerchantVo wxMerchant = wxMerchantService.getMerchantInfo(params); | |||
| return new ResultData(wxMerchant); | |||
| int count = wxMerchantService.getfollow(memberId,id); | |||
| if(count > 0){ | |||
| return new ResultData(true); | |||
| }else{ | |||
| return new ResultData(false); | |||
| } | |||
| } | |||
| @ApiOperation("关注") | |||
| @GetMapping("/followMerchant") | |||
| @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) | |||
| public ResultData followMerchant(@RequestParam Long id) { | |||
| logger.debug("[" + getIpAddr() + "] WxMerchantController::followMerchant"); | |||
| if (id == null) { | |||
| return new ResultData(ResultData.ERROR, "缺少id"); | |||
| } | |||
| WxMerchant byId = wxMerchantService.getById(id); | |||
| if(byId == null){ | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_ERROR,"找不到数据"); | |||
| } | |||
| Long memberId; | |||
| try { | |||
| memberId = getMemberId(); | |||
| } catch (MallinkException e) { | |||
| return new ResultData(e.getErrorCode(), e.getMessage()); | |||
| } | |||
| wxMerchantService.followMerchant(getTenantInfo(),memberId,byId.getId()); | |||
| return new ResultData(); | |||
| } | |||
| @ApiOperation("分页关注列表接口") | |||
| @GetMapping("collectList") | |||
| @ApiImplicitParams({ | |||
| @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), | |||
| @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) | |||
| public ResultData followList(@ModelAttribute WxMerchant record, Integer pageNum, Integer pageSize) { | |||
| logger.debug("[" + getIpAddr() + "] WxMerchantController::followList"); | |||
| if (record == null) record = new WxMerchant(); | |||
| Long memberId; | |||
| try { | |||
| memberId = getMemberId(); | |||
| } catch (MallinkException e) { | |||
| return new ResultData(e.getErrorCode(), e.getMessage()); | |||
| } | |||
| record.setCUserId(memberId); | |||
| record.setStatus(EnumMerchantStatus.VALID.getCode()); | |||
| record.setIsPublic(EnumMerchantPublic.PUBLIC.getCode()); | |||
| return new ResultData(wxMerchantService.followListAsPage(record, pageNum, pageSize)); | |||
| } | |||
| @ApiOperation("取消关注") | |||
| @GetMapping("/cancelFollow") | |||
| @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) | |||
| public ResultData cancelFollow(@RequestParam Long id) { | |||
| logger.debug("[" + getIpAddr() + "] TtCouponController::cancelFollow"); | |||
| if (id == null) { | |||
| return new ResultData(ResultData.ERROR, "缺少id"); | |||
| } | |||
| Long memberId; | |||
| try { | |||
| memberId = getMemberId(); | |||
| } catch (MallinkException e) { | |||
| return new ResultData(e.getErrorCode(), e.getMessage()); | |||
| } | |||
| wxMerchantService.cancelFollow(memberId,id); | |||
| return new ResultData(); | |||
| } | |||
| @@ -0,0 +1,85 @@ | |||
| package com.iformall.schedule; | |||
| import com.iformall.domain.po.WxAppinfo; | |||
| import com.iformall.domain.po.WxPayAccount; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.enums.*; | |||
| import com.iformall.service.WxAppinfoService; | |||
| import com.iformall.service.WxPayAccountService; | |||
| import com.iformall.service.tt.TtOrderService; | |||
| import com.iformall.utils.Constant; | |||
| import com.iformall.utils.DateUtils; | |||
| import org.slf4j.Logger; | |||
| import org.slf4j.LoggerFactory; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.scheduling.annotation.Scheduled; | |||
| import org.springframework.stereotype.Component; | |||
| import java.util.Date; | |||
| import java.util.List; | |||
| @Component | |||
| public class TtOrderExpiringSchedule { | |||
| private final Logger logger = LoggerFactory.getLogger(this.getClass()); | |||
| @Autowired | |||
| private WxAppinfoService wxAppinfoService; | |||
| @Autowired | |||
| private WxPayAccountService payAccountService; | |||
| @Autowired | |||
| private TtOrderService ttOrderService; | |||
| private TenantEntity getTenantInfo() { | |||
| TenantEntity tenantEntity = new TenantEntity() ; | |||
| tenantEntity.setTenantId("1"); | |||
| return tenantEntity; | |||
| } | |||
| @Scheduled(cron = "0 */10 * * * *?") // 每10分钟检查一次 | |||
| public void orderExpireSchedule() { | |||
| Date now = new Date(); | |||
| Date expireDate = new Date(now.getTime() - Constant.PRESS_TIME_OUT ); | |||
| List<Long> idList = ttOrderService.findExpireIdList(expireDate); | |||
| if(idList != null && idList.size() > 0){ | |||
| WxAppinfo cAppInfo = wxAppinfoService.getCAppInfo(getTenantInfo(), EnumPayWay.PAY_WAY_TT); | |||
| if(cAppInfo == null){ | |||
| return; | |||
| } | |||
| WxPayAccount payAccout = payAccountService.getById(cAppInfo.getId()); | |||
| if(payAccout == null){ | |||
| return; | |||
| } | |||
| for (Long orderId:idList) { | |||
| try { | |||
| ttOrderService.updateOrderStatus(orderId,cAppInfo,payAccout); | |||
| } catch (Exception e) { | |||
| e.printStackTrace(); | |||
| } | |||
| } | |||
| } | |||
| } | |||
| @Scheduled(cron = "0 0 4 * * ?") //每天四点入账 | |||
| public void orderRecordedSchedule() { | |||
| Date dateZero = DateUtils.getDateZero(new Date()); | |||
| List<Long> idList = ttOrderService.findRecordedIdList(dateZero); | |||
| if(idList != null && idList.size() > 0){ | |||
| for (Long orderId:idList) { | |||
| try { | |||
| ttOrderService.recordedAmount(orderId); | |||
| } catch (Exception e) { | |||
| e.printStackTrace(); | |||
| } | |||
| } | |||
| } | |||
| } | |||
| } | |||