UpgradeController.php 63 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085
  1. <?php
  2. namespace console\controllers;
  3. use biz\goods\services\GoodsCategoryService;
  4. use biz\goods\services\GoodsService;
  5. use biz\goods\services\GoodsStyleService;
  6. use biz\merchant\services\MerchantCapitalService;
  7. use biz\merchant\services\MerchantExtendService;
  8. use biz\order\services\OrderGoodsService;
  9. use biz\order\services\OrderService;
  10. use biz\stat\services\StatIncomeMonthService;
  11. use biz\stat\services\StatIncomeSourceMonthService;
  12. use biz\stat\services\StatOrderMonthService;
  13. use biz\stat\services\StatOrderService;
  14. use biz\user\services\UserAssetService;
  15. use biz\user\services\UserCapitalService;
  16. use biz\user\services\UserGrowthService;
  17. use biz\user\services\UserService;
  18. use common\components\dirUtil;
  19. use common\components\util;
  20. use common\services\xhMerchantService;
  21. use common\services\xhWxMenuService;
  22. use Yii;
  23. use yii\console\Controller;
  24. class UpgradeController extends Controller
  25. {
  26. //正式环境 shish
  27. //yii upgrade/init 2
  28. //不管是否线上都可以这样执行,我们要仿最终上线的状态
  29. public function actionInit($num = 0)
  30. {
  31. if (getenv('YII_ENV') == 'dev') {
  32. util::stop('开发环境不允许再初始化');
  33. }
  34. //更新积分 shish 2019.11.22
  35. $sql = "ALTER TABLE xhUserAsset ADD growth INT NOT NULL DEFAULT 0 COMMENT '成长值' AFTER `point`;";
  36. $sql .= "UPDATE `xhUserAsset` SET `growth`=`integral`;";
  37. Yii::$app->db->createCommand($sql)->execute();
  38. //shish 2019.11.23
  39. $sql = "DROP TABLE IF EXISTS xhAuth;
  40. CREATE TABLE xhAuth(
  41. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  42. endId TINYINT NOT NULL DEFAULT 0 COMMENT '业务端,零售1',
  43. parentId INT NOT NULL DEFAULT 0 COMMENT '权限父id',
  44. authName VARCHAR(30) NOT NULL DEFAULT '' COMMENT '权限名称',
  45. front_url VARCHAR(30) NOT NULL DEFAULT '' COMMENT '前端路由',
  46. back_url VARCHAR(30) NOT NULL DEFAULT '' COMMENT '后端路由',
  47. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  48. )COMMENT='各业务端的权限';
  49. DROP TABLE IF EXISTS xhSetAuth;
  50. CREATE TABLE xhSetAuth(
  51. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  52. setId TINYINT NOT NULL DEFAULT 0 COMMENT '套餐id',
  53. endId TINYINT NOT NULL DEFAULT 0 COMMENT '业务端id',
  54. auth VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '权限',
  55. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  56. )COMMENT='套餐在各业务端的权限';
  57. CREATE TABLE xhAdminRoleAuth(
  58. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  59. roleId INT NOT NULL DEFAULT 0 COMMENT '角色id',
  60. auth VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '权限',
  61. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  62. )COMMENT='员工角色权限';";
  63. Yii::$app->db->createCommand($sql)->execute();
  64. $sql = "ALTER TABLE xhAdminRoleAuth ADD endId TINYINT NOT NULL DEFAULT 0 COMMENT '业务端id' AFTER roleId;
  65. ALTER TABLE xhMerchant ADD setId TINYINT NOT NULL DEFAULT 0 COMMENT '套餐id' AFTER `wxRefreshToken`;
  66. ALTER TABLE xhMerchant ADD setDeadline INT NOT NULL DEFAULT 0 COMMENT '套餐到期时间' AFTER `setId`;
  67. ALTER TABLE xhAuth CHANGE front_url frontUrl VARCHAR(30) NOT NULL DEFAULT '' COMMENT '前端路由';
  68. ALTER TABLE xhAuth CHANGE back_url backUrl VARCHAR(30) NOT NULL DEFAULT '' COMMENT '后端路由';
  69. ALTER TABLE xhAdminRole CHANGE authority auth VARCHAR(500) NOT NULL DEFAULT '' COMMENT '权限id列表,存在*表示有所有权限';";
  70. Yii::$app->db->createCommand($sql)->execute();
  71. //!!!!!!!!!!注意第一家全部订单已经完成,并将全部订单置为已完成
  72. $sql = "ALTER TABLE xhOrder MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '订单状态 0待付款 1待配送 2配送中 3待通知 4已取消 5已完成';";
  73. $sql .= "update xhOrder set `status`=5;";
  74. $sql .= "DROP TABLE IF EXISTS xhCategoryRelate;
  75. ALTER TABLE xhCategory ADD merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id' AFTER parentId;
  76. DROP TABLE IF EXISTS xhGoodsUsage;
  77. DROP TABLE IF EXISTS xhUsage;
  78. DROP TABLE IF EXISTS xhUsageRelation;
  79. DROP TABLE IF EXISTS xhStatIncomeUsage;
  80. DROP TABLE IF EXISTS xhStatIncomeUsageMonth;
  81. ALTER TABLE xhOrder ADD refund TINYINT NOT NULL DEFAULT 0 COMMENT '1已退款 0正常订单,没有退款' AFTER luckyNum;
  82. RENAME TABLE xhGoodsPrice TO xhGoodsStyle;
  83. ALTER TABLE xhGoodsStyle COMMENT '商品款式';
  84. ALTER TABLE xhGoodsStyle ADD goodsId INT NOT NULL DEFAULT 0 COMMENT '商品id' AFTER `id`;
  85. DROP TABLE IF EXISTS `xhGoodsUsage`;
  86. ALTER TABLE xhOrder ADD INDEX merchant(merchantId,`status`);
  87. ALTER TABLE xhOrder ADD INDEX userId(userId,`status`);
  88. ALTER TABLE xhUserAsset ADD inviteNum INT NOT NULL DEFAULT 0 COMMENT '邀请新人数量' AFTER `discount`;
  89. ALTER TABLE xhAdmin MODIFY `password` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '密码';
  90. ALTER TABLE xhAdmin MODIFY `confirmPassword` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '确认密码';
  91. ALTER TABLE `xhUser` ADD INDEX mobile(merchantId,`mobile`);
  92. ALTER TABLE xhUserAsset DROP COLUMN `point`;
  93. ALTER TABLE xhUserAsset MODIFY `integral` INT NOT NULL DEFAULT 0 COMMENT '积分';
  94. ALTER TABLE xhUser MODIFY birthday DATE NOT NULL DEFAULT '0000-00-00' COMMENT '生日';
  95. ALTER TABLE xhUserAsset DROP COLUMN `uniqueQrCode`;
  96. ALTER TABLE xhUserAsset DROP COLUMN `uniqueCode`;
  97. ALTER TABLE xhMerchantExtend ADD gradeSwitch TINYINT NOT NULL DEFAULT 1 COMMENT '会员等级修改开关 0不可再修改 1可修改' AFTER gradeList;
  98. DROP TABLE IF EXISTS `xhUserOldData`;
  99. DROP TABLE IF EXISTS xhUsage;
  100. CREATE TABLE `xhUsage` (
  101. `id` INT(11) NOT NULL,
  102. `usageName` VARCHAR(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '用途名称',
  103. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  104. ) COMMENT='商品用途';
  105. INSERT INTO `xhUsage` (`id`, `usageName`, `addTime`) VALUES
  106. (1, '送爱人/恋人', 1567955291),
  107. (2, '开业', 1567955291),
  108. (3, '婚庆', 1567955291),
  109. (4, '家养', 1567955291),
  110. (5, '生日', 1568038612),
  111. (6, '会议', 1568038612),
  112. (7, '送母亲', 1568038612),
  113. (8, '送老师', 1568038612),
  114. (9, '其它', 1568038612);
  115. DROP TABLE IF EXISTS xhAd;
  116. CREATE TABLE IF NOT EXISTS xhAd(
  117. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  118. `adName` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '广告名称',
  119. `merchantId` INT NOT NULL DEFAULT 0 COMMENT '商家id',
  120. `type` TINYINT NOT NULL DEFAULT 0 COMMENT '广告类型 0商城首页轮播图 1门店轮播图',
  121. `style` TINYINT NOT NULL DEFAULT 0 COMMENT '0 url 1商品id',
  122. `url` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '链接',
  123. `goodsId` INT NOT NULL DEFAULT 0 COMMENT '商品id',
  124. `startTime` INT NOT NULL DEFAULT 0 COMMENT '开始时间',
  125. `endTime` INT NOT NULL DEFAULT 0 COMMENT '结束时间,方便查询,永不过期 使用值4102416000即2100-01-01 00:00:00',
  126. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  127. )COMMENT='广告管理';
  128. ALTER TABLE xhAd ADD INDEX `merchantId`(`merchantId`,`endTime`);
  129. DROP TABLE IF EXISTS `xhCategoryRelate`;
  130. ALTER TABLE xhCategory ADD indexShow TINYINT NOT NULL DEFAULT 0 COMMENT '首页上显示 0不显示 1显示' AFTER categoryName;
  131. ALTER TABLE xhCategory ADD menuShow TINYINT NOT NULL DEFAULT 0 COMMENT '菜单显示 0不显示 1显示' AFTER `indexShow`;
  132. ALTER TABLE xhCategory ADD INDEX indexShow(merchantId,indexShow);
  133. ALTER TABLE xhCategory ADD INDEX menuShow(merchantId,menuShow);
  134. ALTER TABLE xhAd ADD adImg VARCHAR(800) NOT NULL DEFAULT '' COMMENT '广告图' AFTER adName;
  135. ALTER TABLE xhAd MODIFY endTime INT NOT NULL DEFAULT 0 COMMENT '结束时间;方便查询,永不过期情况,使用 开始值0 结束值4102416000即2100-01-01 00:00:00';
  136. ALTER TABLE xhGoodsCategory MODIFY `cId` INT NOT NULL DEFAULT 0 COMMENT '分类id';
  137. ALTER TABLE xhGoods DROP COLUMN `categoryId`;
  138. ALTER TABLE xhGoodsCategory ADD INDEX merchantId(merchantId);
  139. ALTER TABLE xhCategory DROP COLUMN `indexShow`;
  140. ALTER TABLE xhCategory DROP COLUMN `menuShow`;
  141. ALTER TABLE xhCategory ADD `status` TINYINT NOT NULL DEFAULT 0 COMMENT '状态 0停用1启用';
  142. ALTER TABLE xhCategory DROP INDEX `indexShow`;
  143. ALTER TABLE xhCategory DROP INDEX `menuShow`;
  144. ALTER TABLE xhCategory ADD INDEX merchantId(merchantId,`status`);
  145. ALTER TABLE xhGoodsCategory DROP INDEX merchantId;
  146. ALTER TABLE xhGoodsCategory ADD INDEX merchantId(merchantId,cId);
  147. ALTER TABLE xhGoods DROP COLUMN `cover`;
  148. ALTER TABLE xhGoods ADD sendType TINYINT NOT NULL DEFAULT 0 COMMENT '配送方式 0需要配送 1到店自提' AFTER sendArea;
  149. ALTER TABLE xhGoods ADD freightType TINYINT NOT NULL DEFAULT 0 COMMENT '运费计算方式,0按距离计算 1免运费' AFTER sendType;
  150. DROP TABLE IF EXISTS `xhCouponModel`;
  151. DROP TABLE IF EXISTS `xhCouponReward`;
  152. DROP TABLE IF EXISTS `xhCouponRight`;
  153. ALTER TABLE xhCoupon DROP COLUMN `type`;
  154. ALTER TABLE xhCoupon DROP COLUMN `property`;
  155. ALTER TABLE xhCoupon DROP COLUMN `fitType`;
  156. ALTER TABLE xhCoupon DROP COLUMN `rightId`;
  157. ALTER TABLE xhCoupon DROP COLUMN `modelId`;
  158. ALTER TABLE xhCoupon DROP COLUMN `reward`;
  159. ALTER TABLE xhCoupon DROP COLUMN `urlQrCode`;
  160. ALTER TABLE xhCoupon CHANGE howToGet getType TINYINT NOT NULL DEFAULT 0 COMMENT '获得优惠券的方式';
  161. ALTER TABLE xhCoupon DROP COLUMN `targetId`;
  162. ALTER TABLE xhCoupon MODIFY deadline INT NOT NULL DEFAULT 0 COMMENT '过期时间;值4102416000表示永不过期,即2100-01-01 00:00:00';
  163. ALTER TABLE xhCoupon ADD INDEX userId(userId,`status`);
  164. ALTER TABLE xhCoupon ADD INDEX merchantId(merchantId,`status`);";
  165. Yii::$app->db->createCommand($sql)->execute();
  166. $sql = "ALTER TABLE xhGoods CHANGE `style` `goodsStyle` TINYINT NOT NULL DEFAULT 0 COMMENT '商品款式 0单款式 1多款式';
  167. ALTER TABLE xhGoodsStyle CHANGE `order` `inTurn` INT NOT NULL DEFAULT 0 COMMENT '排序';
  168. ALTER TABLE xhGoodsStyle DROP COLUMN `softDel`;
  169. UPDATE xhUserAsset SET `discount`=1;
  170. ALTER TABLE xhUserAsset MODIFY discount FLOAT(3,2) NOT NULL DEFAULT 1.00 COMMENT '折扣';
  171. ALTER TABLE xhCoupon CHANGE `meetAmount` `miniCost` INT NOT NULL DEFAULT 0 COMMENT '最低消费金额,0表示任何情况下可用';
  172. ALTER TABLE xhShop CHANGE `businessName` `shopName` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '门店名称';
  173. ALTER TABLE xhShop CHANGE `branchName` `merchantName` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '商家名称';
  174. ALTER TABLE xhShop DROP COLUMN `poiId`;
  175. ALTER TABLE xhMerchantExtend ADD `freight` CHAR(10) NOT NULL DEFAULT '5_2' COMMENT '运费计算方式 5公里内免运费,超过每增加一公里+2' AFTER `alipayAccountName`;
  176. ALTER TABLE xhMerchantExtend DROP COLUMN `giveCoupon`;
  177. ALTER TABLE xhMerchantExtend DROP COLUMN `giveCouponPrice`;
  178. ALTER TABLE xhMerchantExtend DROP COLUMN `couponMeetPrice`;
  179. ALTER TABLE xhMerchantExtend DROP COLUMN `couponValidity`;
  180. ALTER TABLE xhMerchantExtend ADD newCouponSwitch TINYINT NOT NULL DEFAULT 1 COMMENT '新人送优惠券 0未开启 1开启' AFTER `freight`;
  181. ALTER TABLE xhMerchantExtend ADD newCouponAmount DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '新人优惠券金额' AFTER `newCouponSwitch`;
  182. ALTER TABLE xhMerchantExtend ADD newCouponMiniCost DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '新人优惠券最低消费金额' AFTER `newCouponAmount`;
  183. ALTER TABLE xhMerchantExtend ADD newCouponValidTime INT NOT NULL DEFAULT 0 COMMENT '新人优惠券有效期,时长为秒,0永不过期' AFTER `newCouponMiniCost`;
  184. ALTER TABLE xhGoods DROP COLUMN `isCharge`;
  185. ALTER TABLE xhGoods DROP COLUMN `sendArea`;
  186. ALTER TABLE xhGoods CHANGE `sendType` needSend TINYINT NOT NULL DEFAULT 0 COMMENT '是否要配送 0免配送 1需要配送';
  187. ALTER TABLE xhOrder CHANGE `needSend` `sendType` TINYINT NOT NULL DEFAULT 0 COMMENT '配送方式 0免配送 1自己送 2别人送';
  188. ALTER TABLE xhOrder MODIFY reachPeriod TINYINT NOT NULL DEFAULT 0 COMMENT '0上午1下午2晚上';
  189. ALTER TABLE xhOrder DROP COLUMN `blessing`;
  190. ALTER TABLE xhOrder ADD cardInfo VARCHAR(500) NOT NULL DEFAULT '' COMMENT '贺卡内容' AFTER `needCard`;
  191. ALTER TABLE xhOrder MODIFY `payWay` TINYINT NOT NULL DEFAULT 0 COMMENT '支付方式 0微信 1支付宝 2余额';
  192. ALTER TABLE xhOrderGoods CHANGE `multipleTitle` `goodsStyleName` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '款式名称';
  193. ALTER TABLE xhOrderGoods CHANGE `multiPriceId` `goodsStyleId` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '款式id';
  194. ALTER TABLE xhCoupon MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '状态 0未使用 1使用 2过期';
  195. ALTER TABLE xhOrder DROP COLUMN `luckyNum`;
  196. ALTER TABLE xhOrder DROP COLUMN `uniCode`;
  197. ALTER TABLE xhOrder DROP COLUMN `useType`;
  198. ALTER TABLE xhOrder MODIFY `payStatus` TINYINT NOT NULL DEFAULT 0 COMMENT '0待付款 1已付款';
  199. RENAME TABLE xhUserIntegral TO xhUserGrowth;
  200. ALTER TABLE xhUserGrowth CHANGE `integral` `growth` INT NOT NULL DEFAULT 0 COMMENT '当前成长值';
  201. ALTER TABLE xhUserGrowth MODIFY `num` INT NOT NULL DEFAULT 0 COMMENT '增加或减少的成长值';
  202. ALTER TABLE xhOrder DROP COLUMN `payStyle`;
  203. ALTER TABLE xhGoods MODIFY `status` TINYINT NOT NULL DEFAULT 1 COMMENT '商品状态 0下架 1正常';
  204. ALTER TABLE xhGoods DROP COLUMN `delStatus`;
  205. ALTER TABLE xhGoodsCategory ADD INDEX `gId`(`gId`);
  206. ALTER TABLE xhGoods ADD autoRise TINYINT NOT NULL DEFAULT 1 COMMENT '自动涨价 0不需要 1需要' AFTER `goodsStyle`;
  207. ALTER TABLE `xhGoodsStyle` CHANGE `title` `styleName` VARCHAR(30) NOT NULL DEFAULT '' COMMENT '款式名称';
  208. ALTER TABLE xhAd ADD `status` TINYINT NOT NULL DEFAULT 0 COMMENT '启用状态 0 未启用 1 启用' AFTER `adName`;
  209. ALTER TABLE xhAd ADD `inTurn` INT NOT NULL DEFAULT 0 COMMENT '排序' AFTER `status`;
  210. ALTER TABLE xhAd ADD `viewTimes` INT NOT NULL DEFAULT 0 COMMENT '点击次数' AFTER `adImg`;
  211. ALTER TABLE `xhAd` CHANGE `startTime` `startTime` DATETIME NULL COMMENT '开始时间', CHANGE `endTime` `endTime` DATETIME NULL COMMENT '结束时间';
  212. ALTER TABLE xhAd ADD `forever` TINYINT NOT NULL DEFAULT 0 COMMENT '永久有效:0 未启用 1 永久有效' AFTER `goodsId`;
  213. DROP TABLE IF EXISTS xhPic;
  214. CREATE TABLE IF NOT EXISTS xhPic(
  215. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  216. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  217. img VARCHAR(500) NOT NULL DEFAULT '' COMMENT '图片地址',
  218. price DECIMAL(9,2) NOT NULL DEFAULT 0.00 COMMENT '价格',
  219. `name` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '商品名称',
  220. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  221. )COMMENT='图库;商品图库';
  222. DROP TABLE IF EXISTS xhPicCategory;
  223. CREATE TABLE IF NOT EXISTS xhPicCategory(
  224. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  225. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  226. pictureId INT NOT NULL DEFAULT 0 COMMENT '图片id',
  227. categoryId INT NOT NULL DEFAULT 0 COMMENT '分类id'
  228. )COMMENT='商品图与分类关系';
  229. ALTER TABLE xhPic ADD inTurn INT NOT NULL DEFAULT 0 COMMENT '排序' AFTER `name`;
  230. ALTER TABLE xhPicCategory ADD inTurn INT NOT NULL DEFAULT 0 COMMENT '排序' AFTER categoryId;
  231. ALTER TABLE xhPicCategory CHANGE pictureId picId INT NOT NULL DEFAULT 0 COMMENT '图片id';
  232. ALTER TABLE xhGoodsCategory ADD `status` TINYINT NOT NULL DEFAULT 1 COMMENT '上下架状态 0下架 1正常' AFTER `merchantId`;
  233. ALTER TABLE xhCategory ADD goodsNum INT NOT NULL DEFAULT 0 COMMENT '商品数' AFTER `cover`;
  234. ALTER TABLE xhCategory ADD sold INT NOT NULL DEFAULT 0 COMMENT '销量' AFTER `goodsNum`;
  235. ALTER TABLE xhCategory CHANGE cover `img` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '分类图片';";
  236. Yii::$app->db->createCommand($sql)->execute();
  237. //商品设置 员工 角色
  238. $sql = "ALTER TABLE xhGoodsSetting DROP COLUMN `startRiseTime`;
  239. ALTER TABLE xhGoodsSetting DROP COLUMN `endRiseTime`;
  240. ALTER TABLE xhGoodsSetting CHANGE `goodSIntroduce` `goodsIntroduce` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '商品说明';
  241. ALTER TABLE xhGoodsSetting DROP COLUMN `createTime`;
  242. ALTER TABLE xhGoodsSetting DROP COLUMN `updateTime`;
  243. ALTER TABLE xhMerchantExtend DROP COLUMN `createTime`;
  244. ALTER TABLE xhMerchantExtend DROP COLUMN `updateTime`;
  245. ALTER TABLE xhGoodsSetting ADD riseSwitch TINYINT NOT NULL DEFAULT 1 COMMENT '自动涨价开关 1开启 0关闭' AFTER `merchantId`;
  246. ALTER TABLE xhAdmin DROP COLUMN `openId`;
  247. ALTER TABLE xhAdmin DROP COLUMN `unionId`;
  248. ALTER TABLE xhAdmin DROP COLUMN `subscribe`;
  249. ALTER TABLE xhAdmin DROP COLUMN `wxQrCode`;
  250. ALTER TABLE xhAdmin MODIFY `status` TINYINT NOT NULL DEFAULT 1 COMMENT '状态 0停用 1正常';
  251. ALTER TABLE xhAdmin ADD merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id' AFTER `roleId`;
  252. DROP TABLE IF EXISTS `xhAdminToMerchant`;
  253. ALTER TABLE xhAdmin ADD userId INT NOT NULL DEFAULT 0 COMMENT '员工关联的userId' AFTER merchantId;
  254. ALTER TABLE xhAdmin ADD `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间' AFTER `status`;
  255. ALTER TABLE xhAdmin DROP COLUMN `createTime`;
  256. ALTER TABLE xhAdmin DROP COLUMN `updateTime`;
  257. ALTER TABLE xhAdmin DROP COLUMN `province`;
  258. ALTER TABLE xhAdmin DROP COLUMN `city`;
  259. ALTER TABLE xhAdmin DROP COLUMN `dist`;
  260. ALTER TABLE xhAdmin DROP COLUMN `address`;
  261. ALTER TABLE xhAdmin DROP COLUMN `addLong`;
  262. ALTER TABLE xhAdmin DROP COLUMN `addLat`;
  263. ALTER TABLE xhAdmin DROP COLUMN `addPrecision`;
  264. ALTER TABLE xhAdmin ADD incomeNotice TINYINT NOT NULL DEFAULT 0 COMMENT '收入通知 0不需要 1需要' AFTER `currentShopId`;
  265. ALTER TABLE xhAdminRole ADD `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间' AFTER `merchantId`;
  266. ALTER TABLE xhAdminRole DROP COLUMN `createTime`;
  267. ALTER TABLE xhAdminRole DROP COLUMN `updateTime`;
  268. ALTER TABLE xhAdmin DROP COLUMN `avatar`;
  269. ALTER TABLE xhAdmin ADD loginTime INT NOT NULL DEFAULT 0 COMMENT '最后登陆时间' AFTER `status`;
  270. ALTER TABLE xhAdmin ADD `super` TINYINT NOT NULL DEFAULT 0 COMMENT '是否超级管理员 0不是 1是,超级员工不可删除' AFTER `sex`;
  271. ALTER TABLE xhAdminRole ADD `num` INT NOT NULL DEFAULT 0 COMMENT '成员数' AFTER `merchantId`;
  272. CREATE TABLE xhAdminLog(
  273. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  274. `ip` BIGINT NOT NULL DEFAULT 0 COMMENT 'ip地址',
  275. `merchantId` INT NOT NULL DEFAULT 0 COMMENT '商家id',
  276. `content` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '操作内容',
  277. adminId INT NOT NULL DEFAULT 0 COMMENT '员工id;管理员id',
  278. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  279. )COMMENT='员工操作日志';";
  280. Yii::$app->db->createCommand($sql)->execute();
  281. $sql = "ALTER TABLE xhCoupon MODIFY getType TINYINT NOT NULL DEFAULT 0 COMMENT '获取方式,0新人领券 1邀请领券';
  282. DROP TABLE IF EXISTS `xhCouponAsset`;
  283. CREATE TABLE IF NOT EXISTS `xhCouponAsset`(
  284. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  285. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  286. totalNum INT NOT NULL DEFAULT 0 COMMENT '优惠券总数',
  287. unUseNum INT NOT NULL DEFAULT 0 COMMENT '未使用数',
  288. useNum INT NOT NULL DEFAULT 0 COMMENT '已使用数',
  289. invalidNum INT NOT NULL DEFAULT 0 COMMENT '失效数',
  290. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  291. )COMMENT='优惠券资产与设置';
  292. DROP TABLE IF EXISTS `xhInvite`;
  293. CREATE TABLE IF NOT EXISTS `xhInvite`(
  294. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  295. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  296. `userName` varchar(50) NOT NULL DEFAULT '' COMMENT '邀请人的昵称',
  297. mobile VARCHAR(20) NOT NULL DEFAULT '' COMMENT '邀请人手机号',
  298. userId INT NOT NULL DEFAULT 0 COMMENT '受邀人',
  299. introUserId INT NOT NULL DEFAULT 0 COMMENT '介绍人',
  300. couponId INT NOT NULL DEFAULT 0 COMMENT '优惠券id',
  301. prize VARCHAR(50) NOT NULL DEFAULT '' COMMENT '介绍人的奖励',
  302. `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0待下单 1待兑奖 2已完成',
  303. orderTime INT NOT NULL DEFAULT 0 COMMENT '下单时间',
  304. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  305. )COMMENT='邀请有礼记录';
  306. DROP TABLE IF EXISTS xhInviteAsset;
  307. CREATE TABLE IF NOT EXISTS `xhInviteAsset`(
  308. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  309. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  310. switch TINYINT NOT NULL DEFAULT 1 COMMENT '是否开启邀请有礼 0关闭 1开启。默认开启',
  311. amount INT NOT NULL DEFAULT 0 COMMENT '新人领券金额',
  312. miniCost INT NOT NULL DEFAULT 0 COMMENT '最低消费',
  313. duration SMALLINT NOT NULL DEFAULT 0 COMMENT '有效时长,天数',
  314. prize VARCHAR(50) NOT NULL DEFAULT '' COMMENT '介绍人的奖励',
  315. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  316. )COMMENT='商家邀请有礼设置';
  317. DROP TABLE IF EXISTS `xhInviteStat`;
  318. CREATE TABLE IF NOT EXISTS `xhInviteStat`(
  319. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  320. userId INT NOT NULL DEFAULT 0 COMMENT '',
  321. inviteNum INT NOT NULL DEFAULT 0 COMMENT '邀请数',
  322. orderNum INT NOT NULL DEFAULT 0 COMMENT '下单数',
  323. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  324. )COMMENT='邀请统计';
  325. ALTER TABLE xhOrder ADD `grade` TINYINT NOT NULL DEFAULT 0 COMMENT '整体评分' AFTER `printStatus`;
  326. ALTER TABLE xhOrder ADD `gradeService` TINYINT NOT NULL DEFAULT 0 COMMENT '服务态度评分' AFTER `grade`;
  327. ALTER TABLE xhOrder ADD `gradeQuality` TINYINT NOT NULL DEFAULT 0 COMMENT '鲜花品质评分' AFTER `gradeService`;
  328. ALTER TABLE xhOrder ADD `gradeSend` TINYINT NOT NULL DEFAULT 0 COMMENT '配送服务评分' AFTER `gradeQuality`;
  329. ALTER TABLE xhOrder ADD `evaluate` VARCHAR(800) NOT NULL DEFAULT '' COMMENT '评语' AFTER `gradeSend`;";
  330. Yii::$app->db->createCommand($sql)->execute();
  331. $sql = "update xhMerchantExtend set gradeList='1_2000_0.9I2_5000_0.88I3_10000_0.85I4_20000_0.8';
  332. DROP TABLE IF EXISTS `xhAgentLevel`;
  333. CREATE TABLE IF NOT EXISTS xhAgentLevel(
  334. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  335. `name` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '代理名称',
  336. `commission` INT NOT NULL DEFAULT 0 COMMENT '佣金',
  337. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  338. )COMMENT='代理等级';
  339. DROP TABLE IF EXISTS `xhApply`;
  340. CREATE TABLE IF NOT EXISTS `xhApply`(
  341. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  342. `name` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '花店名称',
  343. `mobile` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '手机号',
  344. `userId` INT NOT NULL DEFAULT 0 COMMENT '花卉宝用户id',
  345. `oldId` INT NOT NULL DEFAULT 0 COMMENT '老花店id;介绍人',
  346. `fee` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '付费金额',
  347. `income` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '介绍费',
  348. `newId` INT NOT NULL DEFAULT 0 COMMENT '新花店id,0表示还没有审核通过',
  349. `longitude` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '花店经度',
  350. `latitude` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '花店纬度',
  351. `province` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '省',
  352. `city` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '市',
  353. `dist` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '区县',
  354. `address` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '详细街道地址',
  355. `floor` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '楼号门牌号',
  356. `fullAddress` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '地图中获取完整地址',
  357. `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0审核中 1试用中 2已付费 3已失效',
  358. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  359. )COMMENT='申请试用';
  360. ALTER TABLE xhWxScene MODIFY `type` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '场景类型 0刮刮卡 1邀请有礼领券';
  361. ALTER TABLE xhShop ADD `openTime` VARCHAR(30) NOT NULL DEFAULT '' COMMENT '营业时间' AFTER `telephone`;
  362. ALTER TABLE `xhAd` DROP INDEX `merchantId`;
  363. ALTER TABLE `xhAd` ADD INDEX `merchantId`(`merchantId`,`type`);
  364. ALTER TABLE `xhAd` ADD INDEX `multiple`(`merchantId`,`type`,`status`,`startTime`,`endTime`);
  365. DELETE FROM `xhAd`;
  366. ALTER TABLE `xhAd` MODIFY `startTime` INT NOT NULL DEFAULT 0 COMMENT '开始时间';
  367. ALTER TABLE `xhAd` MODIFY `endTime` INT NOT NULL DEFAULT 0 COMMENT '结束时间;方便查询,永不过期情况,使用 开始值0 结束值4102416000即2100-01-01 00:00:00';
  368. ALTER TABLE `xhAd` DROP COLUMN `forever`;
  369. ALTER TABLE xhShop MODIFY shopAddress VARCHAR(200) NOT NULL DEFAULT '' COMMENT '街道地址';
  370. ALTER TABLE xhShop ADD shopFullAddress VARCHAR(500) NOT NULL DEFAULT '' COMMENT '完整地址' AFTER shopAddress;
  371. ALTER TABLE xhShop DROP COLUMN `status`;
  372. DROP TABLE IF EXISTS `xhOrderSend`;
  373. CREATE TABLE IF NOT EXISTS `xhOrderSend`(
  374. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  375. `orderId` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '订单号',
  376. `actionId` TINYINT NOT NULL DEFAULT 0 COMMENT '动作id',
  377. `option` TINYINT NOT NULL DEFAULT 0 COMMENT '动作的选项',
  378. finishTime INT NOT NULL DEFAULT 0 COMMENT '完成时间',
  379. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  380. )COMMENT='发货管理';
  381. ALTER TABLE xhOrderSend ADD inTurn INT NOT NULL DEFAULT 0 COMMENT '排序' AFTER `finishTime`;
  382. ALTER TABLE xhOrderSend MODIFY `orderId` CHAR(32) NOT NULL DEFAULT '' COMMENT '订单号';
  383. ALTER TABLE xhOrderGoods MODIFY `orderId` CHAR(32) NOT NULL DEFAULT '' COMMENT '订单号';
  384. ALTER TABLE xhOrder MODIFY `id` CHAR(32) NOT NULL DEFAULT '' COMMENT '订单号';";
  385. Yii::$app->db->createCommand($sql)->execute();
  386. $sql = "ALTER TABLE xhOrder ADD totalFlow TINYINT NOT NULL DEFAULT 5 COMMENT '总流程数' AFTER `evaluate`;
  387. ALTER TABLE xhOrder ADD currentFlow TINYINT NOT NULL DEFAULT 0 COMMENT '当前流程数' AFTER `totalFlow`;
  388. UPDATE xhOrder SET totalFlow=5,currentFlow=5;
  389. ALTER TABLE `xhOrder` DROP PRIMARY KEY;
  390. ALTER TABLE `xhOrder` DROP INDEX `id`;
  391. ALTER TABLE `xhOrder` CHANGE `id` `orderSn` CHAR(32) NOT NULL DEFAULT '' COMMENT '订单编号';
  392. ALTER TABLE `xhOrder` ADD `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增id' FIRST;
  393. ALTER TABLE `xhOrder` AUTO_INCREMENT=213800;
  394. UPDATE `xhOrder` SET id=id+213800;
  395. DELETE FROM `xhOrderSend`;
  396. ALTER TABLE `xhOrderSend` MODIFY `orderId` INT NOT NULL DEFAULT 0 COMMENT '订单id';
  397. ALTER TABLE xhCoupon MODIFY `orderId` INT NOT NULL DEFAULT 0 COMMENT '优惠券使用的订单id';
  398. ALTER TABLE xhCoupon CHANGE `getType` `source` TINYINT NOT NULL DEFAULT 0 COMMENT '来源 0新人领券 1邀请有礼领取';
  399. ALTER TABLE xhCoupon ADD sourceId INT NOT NULL DEFAULT 0 COMMENT '来源目标id' AFTER `source`;
  400. ALTER TABLE xhInvite ADD introMobile VARCHAR(15) NOT NULL DEFAULT '' COMMENT '介绍人手机;邀请人手机' AFTER `introUserId`;
  401. ALTER TABLE `xhCoupon` DROP COLUMN `introUserId`;
  402. ALTER TABLE xhInvite ADD introUserName VARCHAR(30) NOT NULL DEFAULT '' COMMENT '邀请人昵称' AFTER `userId`;
  403. RENAME TABLE xhGuaGua TO xhGgk;
  404. RENAME TABLE xhGuaGuaAttend TO xhGgkAttend;
  405. RENAME TABLE xhGuaGuaPrize TO xhGgkPrize;
  406. RENAME TABLE xhGuaGuaWin TO xhGgkWin;
  407. ALTER TABLE xhOrder CHANGE `modPriceStatus` `modPrice` TINYINT NOT NULL DEFAULT 1 COMMENT '0不能修改价格 1可以修改';
  408. ALTER TABLE xhOrder DROP COLUMN `getCouponQrCode`;
  409. ALTER TABLE xhOrder MODIFY `orderSn` CHAR(40) NOT NULL DEFAULT '' COMMENT '订单编号';
  410. ALTER TABLE xhOrder MODIFY `receiveAddress` VARCHAR(300) NOT NULL DEFAULT '' COMMENT '收货地址 详细街道地址';
  411. ALTER TABLE xhOrder MODIFY `receiveFullAddress` VARCHAR(400) NOT NULL DEFAULT '' COMMENT '完整收货地址';
  412. ALTER TABLE xhOrder MODIFY `receiveFloor` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '收货地址 楼号门牌号' AFTER `receiveAddress`;
  413. ALTER TABLE xhOrder MODIFY `sendType` TINYINT NOT NULL DEFAULT 0 COMMENT '配送方式 0免配送 1自己送 2别人送,快递送';
  414. ALTER TABLE xhOrder ADD `sendSide` TINYINT NOT NULL DEFAULT 0 COMMENT '配送方 0没有 1达达' AFTER `sendType`;
  415. ALTER TABLE xhOrder MODIFY `sendStatus` TINYINT NOT NULL DEFAULT 0 COMMENT '配送状态:0未发货,待接单 1已发货,已接单 2已送达' AFTER `sendSide`;";
  416. Yii::$app->db->createCommand($sql)->execute();
  417. $sql = "ALTER TABLE xhOrder ADD `reachDate` DATE DEFAULT NULL COMMENT '客户要求送到的日期' AFTER `sendDistance`;
  418. ALTER TABLE xhOrder DROP COLUMN `reachTime`;
  419. ALTER TABLE xhOrder MODIFY `reachPeriod` TINYINT NOT NULL DEFAULT 0 COMMENT '客户要求送到的时段:0上午1下午2晚上';
  420. ALTER TABLE xhOrder ADD sendTip DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '运费里增加的小费' AFTER `sendCost`;
  421. ALTER TABLE xhOrder MODIFY currentFlow TINYINT NOT NULL DEFAULT 0 COMMENT '完成流程数;当前流程数';
  422. drop table if exists `xhStatIncomeUsage`;
  423. CREATE TABLE if not exists `xhStatIncomeUsage` (
  424. `id` int(11) NOT NULL auto_increment primary key,
  425. `merchantId` int(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  426. `shopId` int not null default 0 comment '门店id,0表示商家所有门店',
  427. `time` int(11) NOT NULL DEFAULT '0' COMMENT '时间',
  428. `usageId` tinyint(4) NOT NULL DEFAULT '0' COMMENT '用途id;UsageRelation id',
  429. `amount` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '收入金额',
  430. `weixin` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '微信收入',
  431. `alipay` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '支付宝收入',
  432. `balancePay` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '余额付款收入',
  433. `cash` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '现金收入',
  434. `totalAmount` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '总收入金额',
  435. `addTime` int(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  436. ) COMMENT='按用途统计每天收入';
  437. drop table if exists `xhStatIncomeUsageMonth`;
  438. CREATE TABLE if not exists `xhStatIncomeUsageMonth` (
  439. `id` int(11) NOT NULL auto_increment primary key,
  440. `year` smallint(6) NOT NULL DEFAULT '0' COMMENT '年',
  441. `month` tinyint(4) NOT NULL DEFAULT '1' COMMENT '月份',
  442. `usageId` tinyint(4) NOT NULL DEFAULT '0' COMMENT '用途id',
  443. `amount` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '收入金额',
  444. `weixin` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '微信收入',
  445. `alipay` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '支付宝收入',
  446. `balancePay` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '余额付款收入',
  447. `cash` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '现金收入',
  448. `merchantId` int(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  449. `shopId` int not null default 0 comment '门店id,0表示商家所有门店',
  450. `addTime` int(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT '添加时间'
  451. ) COMMENT='按用途统计每月收入';
  452. ALTER TABLE `xhMerchantCapital` MODIFY shopId INT NOT NULL DEFAULT 0 COMMENT '0表示商家所有门店';
  453. ALTER TABLE `xhOrder` ADD `classify` TINYINT NOT NULL DEFAULT 0 COMMENT '是否归类 0未归类 1已归类' AFTER `usageId`;
  454. ALTER TABLE xhUsage ADD `inTurn` INT NOT NULL DEFAULT 0 COMMENT '排序' AFTER `usageName`;
  455. ALTER TABLE `xhInvite` ADD amount DECIMAL(9,2) NOT NULL DEFAULT 0.00 COMMENT '下单金额' AFTER `couponId`;
  456. ALTER TABLE `xhInvite` ADD giveTime INT NOT NULL DEFAULT 0 COMMENT '兑奖时间' AFTER `orderTime`;";
  457. Yii::$app->db->createCommand($sql)->execute();
  458. $sql = "DROP TABLE IF EXISTS `xhCouponAsset`;
  459. CREATE TABLE IF NOT EXISTS `xhCouponAsset`(
  460. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  461. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  462. `switch` TINYINT(4) NOT NULL DEFAULT '1' COMMENT '是否开启邀请有礼 0关闭 1开启。默认开启',
  463. `amount` INT(11) NOT NULL DEFAULT '0' COMMENT '新人领券金额',
  464. `miniCost` INT(11) NOT NULL DEFAULT '0' COMMENT '最低消费',
  465. `duration` SMALLINT(6) NOT NULL DEFAULT '0' COMMENT '有效时长,天数',
  466. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  467. )COMMENT='新人优惠券资产';
  468. ALTER TABLE `xhWxMenu` MODIFY `replyType` TINYINT NOT NULL DEFAULT 0 COMMENT '回复给粉丝的类型 0跳转链接 1文字 2单图文';
  469. ALTER TABLE `xhWxMenu` DROP COLUMN `targetId`;
  470. ALTER TABLE `xhWxMenu` ADD targetId INT NOT NULL DEFAULT 0 COMMENT '常用链接的目标id,活动目标id' AFTER `hasSonMenu`;
  471. CREATE TABLE `xhUserRemark`(
  472. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  473. userId INT NOT NULL DEFAULT 0 COMMENT '用户id',
  474. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  475. remark VARCHAR(200) NOT NULL DEFAULT '' COMMENT '备注',
  476. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  477. )COMMENT='用户备注';
  478. ALTER TABLE `xhUserRemark` ADD INDEX `userId`(`userId`);
  479. RENAME TABLE xhUserRemark TO xhMerchantRemark;
  480. RENAME TABLE `xhStatOrderByDay` TO `xhStatOrder`;
  481. RENAME TABLE `xhStatOrderSourceByDay` TO `xhStatOrderSource`;
  482. RENAME TABLE `xhStatUserByDay` TO `xhStatUser`;
  483. RENAME TABLE `xhStatViewByDay` TO `xhStatView`;
  484. RENAME TABLE `xhStatViewSourceByDay` TO `xhStatViewSource`;
  485. RENAME TABLE `xhStatVisitByDay` TO `xhStatVisit`;
  486. RENAME TABLE `xhStatOutDay` TO `xhStatOut`;
  487. RENAME TABLE `xhStatInDay` TO `xhStatIn`;
  488. RENAME TABLE `xhStatDealByDay` TO `xhStatDeal`;
  489. DROP TABLE IF EXISTS `xhStatDeal`;
  490. DROP TABLE IF EXISTS `xhStatView`;
  491. DROP TABLE IF EXISTS `xhStatViewSource`;
  492. DROP TABLE IF EXISTS `xhStatVisit`;
  493. RENAME TABLE `xhVisitByDay` TO `xhStatVisit`;
  494. RENAME TABLE `xhVisitByMonth` TO `xhStatVisitMonth`;
  495. DROP TABLE IF EXISTS `xhMerchantOutCapital`;
  496. DROP TABLE IF EXISTS `xhMerchantInCapital`;
  497. DROP TABLE IF EXISTS `xhStatOrder`;
  498. RENAME TABLE `xhOrderDayNum` TO `xhStatOrder`;
  499. RENAME TABLE `xhOrderMonthNum` TO `xhStatOrderMonth`;
  500. RENAME TABLE `xhLuckyDrawActivity` TO `xhDraw`;
  501. RENAME TABLE `xhLuckyDrawAward` TO `xhDrawPrize`;
  502. RENAME TABLE `xhLuckyDrawAwardCustomer` TO `xhDrawWin`;
  503. RENAME TABLE `xhLuckyDrawAwardParticipant` TO `xhDrawRecord`;
  504. RENAME TABLE `xhDrawCash` TO `xhWithdraw`;
  505. RENAME TABLE `xhActive` TO `xhAct`;
  506. RENAME TABLE `xhActiveOrder` TO `xhActOrder`;
  507. RENAME TABLE `xhActiveTicketClass` TO `xhActTicket`;";
  508. Yii::$app->db->createCommand($sql)->execute();
  509. $sql = "ALTER TABLE `xhMerchantAsset` MODIFY `totalOrder` INT NOT NULL DEFAULT 0 COMMENT '订单数;已付款订单数';
  510. ALTER TABLE `xhMerchantAsset` ADD cancelOrder INT NOT NULL DEFAULT 0 COMMENT '已取消订单数' AFTER `totalOrder`;
  511. ALTER TABLE `xhMerchantAsset` ADD unNoticeOrder INT NOT NULL DEFAULT 0 COMMENT '待通知订单数' AFTER `totalOrder`;
  512. ALTER TABLE `xhMerchantAsset` ADD sendingOrder INT NOT NULL DEFAULT 0 COMMENT '配送中订单数' AFTER `totalOrder`;
  513. ALTER TABLE `xhMerchantAsset` ADD unSendOrder INT NOT NULL DEFAULT 0 COMMENT '待配送订单数' AFTER `totalOrder`;
  514. ALTER TABLE `xhMerchantAsset` ADD unPayOrder INT NOT NULL DEFAULT 0 COMMENT '待付款订单数' AFTER `totalOrder`;
  515. ALTER TABLE `xhMerchantAsset` ADD finishOrder INT NOT NULL DEFAULT 0 COMMENT '完成订单数' AFTER `totalOrder`;
  516. ALTER TABLE `xhMerchantAsset` CHANGE `remainMsgNum` `remainSmsNum` INT NOT NULL DEFAULT 0 COMMENT '剩余短信数';
  517. ALTER TABLE `xhMerchantAsset` MODIFY `totalUser` INT NOT NULL DEFAULT 0 COMMENT '总用户;总客户数';
  518. ALTER TABLE `xhMerchantAsset` ADD unClassifyOrder INT NOT NULL DEFAULT 0 COMMENT '待归类订单' AFTER `totalOrder`;
  519. ALTER TABLE `xhMerchantAsset` MODIFY `totalOrder` INT NOT NULL DEFAULT 0 COMMENT '订单总数,包括所有的';
  520. ALTER TABLE `xhMerchantAsset` ADD `payOrder` INT NOT NULL DEFAULT 0 COMMENT '付款订单数' AFTER `totalOrder`;
  521. ALTER TABLE `xhMerchant` ADD `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间' AFTER `status`;
  522. ALTER TABLE `xhAdmin` ADD `avatar` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '头像' AFTER `adminName`;";
  523. Yii::$app->db->createCommand($sql)->execute();
  524. $sql = "ALTER TABLE `xhMerchant` MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '商家状态 0待审 1审核通过,取消冻结,正常 2审核未通过 3冻结 4过期';
  525. ALTER TABLE `xhMerchantExtend` ADD miniVersion INT NOT NULL DEFAULT 0 COMMENT '小程序当前版本' AFTER `miniRefreshToken`;
  526. DROP TABLE IF EXISTS `xhMiniUpgrade`;
  527. CREATE TABLE `xhMiniUpgrade`(
  528. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  529. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  530. `version` INT NOT NULL DEFAULT 0 COMMENT '提交版本号',
  531. `submitTime` INT NOT NULL DEFAULT 0 COMMENT '提交时间',
  532. `checkTime` INT NOT NULL DEFAULT 0 COMMENT '审核时间',
  533. `checkReturn` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '审核结果返回的信息',
  534. `remark` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '备注',
  535. `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0待审核 1审核通过 2审核未通过',
  536. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  537. )COMMENT='小程序升级记录';
  538. DROP TABLE IF EXISTS `xhApplyOrder`;
  539. RENAME TABLE `xhOpenRenewOrder` TO `xhRenewAccount`;
  540. ALTER TABLE `xhApply` ADD remark VARCHAR(500) NOT NULL DEFAULT '' COMMENT '审核时添加的备注' AFTER `fullAddress`;
  541. ALTER TABLE `xhApply` MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0审核中 1审核通过、试用中 2审核未通过 3已付费 4试用到期失效';
  542. ALTER TABLE `xhMiniUpgrade` MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0待审核 1审核通过,待上线 2审核未通过 3已上线';
  543. ALTER TABLE `xhMiniUpgrade` ADD `onTime` INT NOT NULL DEFAULT 0 COMMENT '上线时间' AFTER `version`;
  544. ALTER TABLE `xhMiniUpgrade` MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0待审核 1待上线 2已上线 3审核未通过';
  545. RENAME TABLE `xhRenewAccount` TO `xhRenew`;
  546. ALTER TABLE `xhRenew` DROP COLUMN `dealStatus`;
  547. ALTER TABLE `xhRenew` MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0 待付款 1已付款';
  548. ALTER TABLE `xhRenew` DROP COLUMN `orderStyle`;
  549. ALTER TABLE `xhRenew` ADD setId SMALLINT NOT NULL DEFAULT 0 COMMENT '套餐id' AFTER `remark`;
  550. ALTER TABLE xhMerchantAsset DROP `totalWeixinFans`;
  551. ALTER TABLE xhMerchantAsset CHANGE `unClassifyOrder` `unClassOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '待归类订单';
  552. ALTER TABLE xhMerchantAsset CHANGE `totalUseRecharge` `usedRecharge` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '余额消费数;充值金额消耗数';
  553. DROP TABLE IF EXISTS `xhRetailAsset`;
  554. CREATE TABLE IF NOT EXISTS `xhRetailAsset` (
  555. `id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  556. `totalVisit` INT(11) NOT NULL DEFAULT '0' COMMENT '总访问量',
  557. `totalUser` INT(11) NOT NULL DEFAULT '0' COMMENT '总用户;总客户数',
  558. `totalMember` INT(11) NOT NULL DEFAULT '0' COMMENT '总会员',
  559. `totalFans` INT(11) NOT NULL DEFAULT '0' COMMENT '总粉丝',
  560. `totalIntegral` INT(11) NOT NULL DEFAULT '0' COMMENT '总积分',
  561. `totalGoods` INT(11) NOT NULL DEFAULT '0' COMMENT '总计商品数量',
  562. `totalRecharge` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '累计给用户充值金额',
  563. `usedRecharge` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '余额消费数;充值金额消耗数',
  564. `totalOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '订单总数,包括所有的',
  565. `payOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '付款订单数',
  566. `unClassOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '待归类订单',
  567. `finishOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '完成订单数',
  568. `unPayOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '待付款订单数',
  569. `unSendOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '待配送订单数',
  570. `sendingOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '配送中订单数',
  571. `unNoticeOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '待通知订单数',
  572. `cancelOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '已取消订单数',
  573. `totalIncome` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '累计收入',
  574. `totalExpend` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '累计消费',
  575. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  576. ) COMMENT='平台零售业资产';";
  577. Yii::$app->db->createCommand($sql)->execute();
  578. $sql = "ALTER TABLE `xhRetailAsset` ADD onGoods INT NOT NULL DEFAULT 0 COMMENT '上架商品数' AFTER `totalGoods`;
  579. ALTER TABLE `xhRetailAsset` ADD offGoods INT NOT NULL DEFAULT 0 COMMENT '下架商品数' AFTER `totalGoods`;
  580. ALTER TABLE `xhMerchantAsset` ADD onGoods INT NOT NULL DEFAULT 0 COMMENT '上架商品数' AFTER `totalGoods`;
  581. ALTER TABLE `xhMerchantAsset` ADD offGoods INT NOT NULL DEFAULT 0 COMMENT '下架商品数' AFTER `totalGoods`;
  582. drop table if exists `xhFest`;
  583. CREATE TABLE if not exists `xhFest` (
  584. `id` int(11) NOT NULL AUTO_INCREMENT,
  585. `name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '节日名称',
  586. `month` tinyint(4) NOT NULL DEFAULT '1' COMMENT '月份',
  587. `day` tinyint(4) NOT NULL DEFAULT '1' COMMENT '日期',
  588. `inTurn` int(11) NOT NULL DEFAULT '0' COMMENT '排序',
  589. PRIMARY KEY (`id`)
  590. ) COMMENT='节日';
  591. drop table if exists `xhFestRise`;
  592. CREATE TABLE `xhFestRise` (
  593. `id` int(11) NOT NULL AUTO_INCREMENT,
  594. `merchantId` int(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  595. `festId` int(11) NOT NULL DEFAULT '0' COMMENT '节日',
  596. PRIMARY KEY (`id`)
  597. ) COMMENT='涨价节日';
  598. ALTER TABLE `xhSetMeal` ADD num INT NOT NULL DEFAULT 0 COMMENT '花店数量' AFTER `price`;
  599. ALTER TABLE `xhSetMeal` DROP COLUMN `manageStyle`;";
  600. Yii::$app->db->createCommand($sql)->execute();
  601. $sql = "ALTER TABLE `xhApply` ADD UNIQUE INDEX `mobile`(`mobile`);
  602. ALTER TABLE `xhRenew` ADD `orderSn` CHAR(30) NOT NULL DEFAULT '' COMMENT '订单编号' AFTER `id`;
  603. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `roleId`;
  604. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `province`;
  605. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `city`;
  606. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `dist`;
  607. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `address`;
  608. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `latitude`;
  609. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `longitude`;
  610. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `precision`;
  611. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `openId`;
  612. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `merchantId`;
  613. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `userId`;
  614. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `wxOpenId`;
  615. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `unionId`;
  616. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `subscribe`;
  617. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `createTime`;
  618. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `updateTime`;
  619. ALTER TABLE `xhWxOpenAdmin` ADD `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间' AFTER `status`;
  620. ALTER TABLE `xhWxOpenAdmin` MODIFY `status` TINYINT NOT NULL DEFAULT 1 COMMENT '状态 0冻结 1正常';
  621. ALTER TABLE `xhRenew` DROP COLUMN `payStyle`;
  622. ALTER TABLE `xhRenew` MODIFY `merchantId` INT NOT NULL DEFAULT 0 COMMENT '续费的商家';
  623. ALTER TABLE xhRenew MODIFY `payWay` TINYINT NOT NULL DEFAULT 0 COMMENT '支付方式 0微信 1支付宝 2余额';
  624. DROP TABLE IF EXISTS `xhRenew`;
  625. CREATE TABLE IF NOT EXISTS `xhRenew` (
  626. `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增id',
  627. `orderSn` CHAR(30) NOT NULL DEFAULT '' COMMENT '订单编号',
  628. `payWay` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '支付方式 0微信 1支付宝 2余额',
  629. `payCode` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '支付返回号',
  630. `prePrice` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '应付款,原价,未修改价格,打折前',
  631. `actPrice` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '实际付款,实价,修改后价格,打折后',
  632. `userId` INT(11) NOT NULL DEFAULT '0' COMMENT '用户id',
  633. `alipayId` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '支付宝用户id',
  634. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '续费的商家',
  635. `remark` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '备注',
  636. `setId` SMALLINT(6) NOT NULL DEFAULT '0' COMMENT '套餐id',
  637. `beforeDeadline` INT(11) NOT NULL DEFAULT '0' COMMENT '之前到期时间',
  638. `deadline` INT(11) NOT NULL DEFAULT '0' COMMENT '续费后到期时间',
  639. `status` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '0 待付款 1已付款',
  640. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间,时间戳格式'
  641. ) COMMENT='开通续费订单';
  642. ALTER TABLE `xhCouponAsset` ADD `totalNum` INT NOT NULL DEFAULT 0 COMMENT '全部优惠券数' AFTER `duration`;
  643. ALTER TABLE `xhCouponAsset` ADD `unUseNum` INT NOT NULL DEFAULT 0 COMMENT '待使用数' AFTER `totalNum`;
  644. ALTER TABLE `xhCouponAsset` ADD `useNum` INT NOT NULL DEFAULT 0 COMMENT '已使用数' AFTER `unUseNum`;
  645. ALTER TABLE `xhCouponAsset` ADD `invalidNum` INT NOT NULL DEFAULT 0 COMMENT '已失效数' AFTER `useNum`;
  646. ALTER TABLE `xhOrder` MODIFY `sourceType` TINYINT NOT NULL DEFAULT 0 COMMENT '订单来源,0商城 1门店 2微信朋友圈 3美团';";
  647. Yii::$app->db->createCommand($sql)->execute();
  648. $sql = "ALTER TABLE `xhAdmin` ADD platUserId INT NOT NULL DEFAULT 0 COMMENT '管理员对应的花卉宝id' AFTER `userId`;
  649. ALTER TABLE `xhAdmin` ADD openId VARCHAR(100) NOT NULL DEFAULT '' COMMENT '管理员对应商家公众号openId' AFTER `userId`;
  650. ALTER TABLE `xhAdmin` DROP COLUMN `openId`;
  651. ALTER TABLE `xhAdmin` ADD `delStatus` TINYINT NOT NULL DEFAULT 0 COMMENT '软删除标识 0未删除 1已删除' AFTER `super`;
  652. ALTER TABLE `xhAdmin` CHANGE `incomeNotice` `remind` TINYINT NOT NULL DEFAULT 0 COMMENT '动态提醒 0不需要 1需要';
  653. ALTER TABLE `xhAdmin` ADD remark VARCHAR(500) NOT NULL DEFAULT '' COMMENT '员工备注' AFTER `remind`;
  654. ALTER TABLE `xhApply` MODIFY `userId` INT NOT NULL DEFAULT 0 COMMENT '邀请花店的用户id,没有邀请花店,刚是平台花卉宝的用户';
  655. DROP TABLE IF EXISTS `xhAgentAsset`;
  656. CREATE TABLE IF NOT EXISTS `xhAgentAsset`(
  657. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  658. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  659. inviteNum INT NOT NULL DEFAULT 0 COMMENT '邀请花店数',
  660. payNum INT NOT NULL DEFAULT 0 COMMENT '付费花店数',
  661. income DECIMAL(9,2) NOT NULL DEFAULT 0.00 COMMENT '累计收益',
  662. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  663. )COMMENT='我的代理资产';
  664. ALTER TABLE `xhRecharge` DROP PRIMARY KEY;
  665. ALTER TABLE `xhRecharge` CHANGE `id` `sn` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '编号';
  666. ALTER TABLE `xhRecharge` ADD id INT NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST;
  667. ALTER TABLE `xhRecharge` AUTO_INCREMENT=135736;
  668. UPDATE `xhRecharge` SET id=id+135736;
  669. ALTER TABLE `xhRecharge` DROP COLUMN `createTime`;
  670. ALTER TABLE `xhRecharge` DROP COLUMN `updateTime`;";
  671. Yii::$app->db->createCommand($sql)->execute();
  672. $sql = "ALTER TABLE `xhUserAsset` MODIFY `memberLevel` SMALLINT NOT NULL DEFAULT -1 COMMENT '会员等级 -1普通用户 0普通会员,登记了手机号 1 一级会员';
  673. ALTER TABLE `xhUserAsset` CHANGE `memberLevel` `member` SMALLINT NOT NULL DEFAULT -1 COMMENT '会员等级 -1普通用户 0普通会员,登记了手机号 1 一级会员';
  674. ALTER TABLE `xhUserAsset` DROP COLUMN `isMember`;
  675. ALTER TABLE `xhUser` DROP COLUMN `isMember`;
  676. ALTER TABLE `xhUser` ADD `member` SMALLINT NOT NULL DEFAULT -1 COMMENT '会员等级 -1普通用户 0普通会员,登记了手机号 1 一级会员' AFTER `source`;
  677. ALTER TABLE `xhGoods` ADD delStatus TINYINT NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1删除' AFTER `riseAmount`;
  678. ALTER TABLE `xhGoodsCategory` ADD delStatus TINYINT NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除' AFTER `merchantId`;
  679. DROP TABLE IF EXISTS `xhStatIn`;
  680. DROP TABLE IF EXISTS `xhStatInMonth`;
  681. ALTER TABLE `xhStatIncomeCategoryMonth` ADD `time` INT NOT NULL DEFAULT 0 COMMENT '月份' AFTER `id`;
  682. ALTER TABLE `xhStatIncomeMonth` ADD `time` INT NOT NULL DEFAULT 0 COMMENT '月份' AFTER `id`;
  683. ALTER TABLE `xhStatIncomeSourceMonth` ADD `time` INT NOT NULL DEFAULT 0 COMMENT '月份' AFTER `id`;
  684. ALTER TABLE `xhStatIncomeUsageMonth` ADD `time` INT NOT NULL DEFAULT 0 COMMENT '月份' AFTER `id`;
  685. ALTER TABLE `xhStatOrderMonth` ADD `time` INT NOT NULL DEFAULT 0 COMMENT '月份' AFTER `id`;
  686. ALTER TABLE `xhStatOutMonth` ADD `time` INT NOT NULL DEFAULT 0 COMMENT '月份' AFTER `id`;
  687. ALTER TABLE `xhStatVisitMonth` ADD `time` INT NOT NULL DEFAULT 0 COMMENT '月份' AFTER `id`;
  688. DROP TABLE IF EXISTS `xhStatOrderSource`;
  689. CREATE TABLE `xhStatUserMonth` (
  690. `id` INT(11) NOT NULL AUTO_INCREMENT,
  691. `time` INT(11) NOT NULL DEFAULT '0' COMMENT '月份',
  692. `riseFansNum` INT(11) NOT NULL DEFAULT '0' COMMENT '增减粉丝数,负数表示减',
  693. `totalFansNum` INT(11) NOT NULL DEFAULT '0' COMMENT '当前粉丝总数',
  694. `riseMemberNum` INT(11) NOT NULL DEFAULT '0' COMMENT '增加会员数',
  695. `totalMemberNum` INT(11) NOT NULL DEFAULT '0' COMMENT '当前会员总数',
  696. `riseUserNum` INT(11) NOT NULL DEFAULT '0' COMMENT '访客数',
  697. `totalUserNum` INT(11) NOT NULL DEFAULT '0' COMMENT '当前访客总数',
  698. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  699. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间',
  700. PRIMARY KEY (`id`)
  701. ) COMMENT='客户月度统计';
  702. RENAME TABLE `xhWxOpenAdmin` TO `xhStaff`;
  703. ALTER TABLE `xhMerchantCapital` MODIFY `capitalType` TINYINT NOT NULL DEFAULT 0 COMMENT '流水类型';
  704. ALTER TABLE `xhMerchantCapital` MODIFY `payWay` TINYINT NOT NULL DEFAULT 0 COMMENT '付款方式;支付方式';
  705. ALTER TABLE `xhMerchantCapital` MODIFY `sourceType` TINYINT NOT NULL DEFAULT 0 COMMENT '来源';
  706. ALTER TABLE `xhMerchantCapital` MODIFY `io` TINYINT NOT NULL DEFAULT 0 COMMENT '收支类型 0支出 1收入';";
  707. Yii::$app->db->createCommand($sql)->execute();
  708. $sql = "ALTER TABLE `xhMerchant` ADD `deadline` INT NOT NULL DEFAULT 0 COMMENT '帐号过期时间' AFTER `status`;UPDATE `xhMerchant` SET `deadline`=1607589778;";
  709. Yii::$app->db->createCommand($sql)->execute();
  710. //导入省市区
  711. $root = dirUtil::getRootDir();
  712. $sql = file_get_contents($root . '/region.sql');
  713. Yii::$app->db->createCommand($sql)->execute();
  714. //将订单商品表的订单id换成自增id
  715. $orderGoods = OrderGoodsService::getAllByCondition([], null, '*');
  716. if (!empty($orderGoods)) {
  717. $ids = array_column($orderGoods, 'orderId');
  718. $orderList = OrderService::getAllByCondition(['orderSn' => ['in', $ids]], null, '*', 'orderSn');
  719. foreach ($orderList as $orderSn => $val) {
  720. $id = $val['id'];
  721. OrderGoodsService::updateByCondition(['orderId' => $orderSn], ['orderId' => $id]);
  722. }
  723. }
  724. $sql = "alter table `xhOrderGoods` modify orderId int not null default 0 comment '订单id';";
  725. Yii::$app->db->createCommand($sql)->execute();
  726. //商品多款式同步
  727. $goodsList = GoodsService::getAllByCondition([], null, '*');
  728. if (!empty($goodsList)) {
  729. foreach ($goodsList as $goods) {
  730. $multiPrice = $goods['multiPrice'];
  731. if (!empty($multiPrice)) {
  732. $currentIds = explode(',', trim($multiPrice));
  733. if (!empty($currentIds)) {
  734. $currentIds = array_filter(array_unique($currentIds));
  735. $goodsId = $goods['id'];
  736. foreach ($currentIds as $currentId) {
  737. GoodsStyleService::updateByCondition(['id' => $currentId], ['goodsId' => $goodsId]);
  738. }
  739. }
  740. }
  741. }
  742. }
  743. $sql = "ALTER TABLE xhGoods DROP COLUMN `multiPrice`;";
  744. Yii::$app->db->createCommand($sql)->execute();
  745. //商家流水
  746. $mCapital = MerchantCapitalService::getAllByCondition([], null, '*');
  747. if (!empty($mCapital)) {
  748. foreach ($mCapital as $capital) {
  749. $relateId = $capital['relateId'];
  750. $id = $capital['id'];
  751. if (!empty($relateId)) {
  752. $order = OrderService::getByCondition(['orderSn' => $relateId]);
  753. if (!empty($order)) {
  754. $orderId = $order['id'];
  755. MerchantCapitalService::updateById($id, ['relateId' => $orderId]);
  756. } else {
  757. MerchantCapitalService::updateById($id, ['relateId' => 0]);
  758. }
  759. } else {
  760. MerchantCapitalService::updateById($id, ['relateId' => 0]);
  761. }
  762. }
  763. }
  764. $sql = "ALTER TABLE `xhMerchantCapital` MODIFY `relateId` INT NOT NULL DEFAULT 0 COMMENT '关联id;订单id';";
  765. Yii::$app->db->createCommand($sql)->execute();
  766. //客户流水
  767. $uCapital = UserCapitalService::getAllByCondition([], null, '*');
  768. if (!empty($uCapital)) {
  769. foreach ($uCapital as $capital) {
  770. $relateId = $capital['relateId'];
  771. $id = $capital['id'];
  772. if (!empty($relateId)) {
  773. $order = OrderService::getByCondition(['orderSn' => $relateId]);
  774. if (!empty($order)) {
  775. $orderId = $order['id'];
  776. UserCapitalService::updateById($id, ['relateId' => $orderId]);
  777. } else {
  778. UserCapitalService::updateById($id, ['relateId' => 0]);
  779. }
  780. } else {
  781. UserCapitalService::updateById($id, ['relateId' => 0]);
  782. }
  783. }
  784. }
  785. $sql = "ALTER TABLE `xhUserCapital` MODIFY `relateId` INT NOT NULL DEFAULT 0 COMMENT '关联id;订单id';";
  786. Yii::$app->db->createCommand($sql)->execute();
  787. //客户成长值
  788. $userGrowth = UserGrowthService::getAllByCondition([], null, '*');
  789. if (!empty($userGrowth)) {
  790. foreach ($userGrowth as $relateId => $growth) {
  791. $relateId = $growth['relateId'];
  792. $id = $growth['id'];
  793. if (!empty($relateId)) {
  794. $order = OrderService::getByCondition(['orderSn' => $relateId]);
  795. if (!empty($order)) {
  796. $orderId = $order['id'];
  797. UserGrowthService::updateById($id, ['relateId' => $orderId]);
  798. } else {
  799. UserGrowthService::updateById($id, ['relateId' => 0]);
  800. }
  801. } else {
  802. UserGrowthService::updateById($id, ['relateId' => 0]);
  803. }
  804. }
  805. }
  806. $sql = "ALTER TABLE `xhUserGrowth` MODIFY `relateId` INT NOT NULL DEFAULT 0 COMMENT '关联id';ALTER TABLE `xhAdminRoleAuth` ADD merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id' AFTER `endId`;";
  807. Yii::$app->db->createCommand($sql)->execute();
  808. $sql = "DROP TABLE IF EXISTS `xhInformAdmin`;
  809. CREATE TABLE `xhInformAdmin` (
  810. `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  811. `userId` INT(11) NOT NULL DEFAULT '0' COMMENT '管理员userId',
  812. `adminId` INT(11) NOT NULL DEFAULT '0' COMMENT '管理员Id',
  813. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  814. `noticeType` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '类型',
  815. `content` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '内容',
  816. `noticeWay` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '通知方式 0微信1短信',
  817. `status` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '状态 0没有成功 1成功',
  818. `sourceType` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '来源类型',
  819. `sourceId` INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT '来源id',
  820. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间',
  821. PRIMARY KEY (`id`)
  822. ) COMMENT='店员消息通知记录';
  823. DROP TABLE IF EXISTS `xhInformUser`;
  824. CREATE TABLE `xhInformUser` (
  825. `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  826. `userId` INT(11) NOT NULL DEFAULT '0' COMMENT '客户id',
  827. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  828. `noticeType` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '类型',
  829. `content` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '内容',
  830. `noticeWay` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '通知方式 0微信1短信',
  831. `status` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '状态 0没有成功 1成功',
  832. `sourceType` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '来源类型',
  833. `sourceId` INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT '来源id',
  834. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间',
  835. PRIMARY KEY (`id`)
  836. ) COMMENT='客户消息通知记录';";
  837. Yii::$app->db->createCommand($sql)->execute();
  838. //省市区表字段变更
  839. $sql = "ALTER TABLE `xhDistrict` CHANGE `shortName` `name` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '简称';";
  840. Yii::$app->db->createCommand($sql)->execute();
  841. $sql = "DROP TABLE IF EXISTS `xhStatView`;
  842. CREATE TABLE `xhStatView` (
  843. `id` INT(11) NOT NULL AUTO_INCREMENT,
  844. `time` INT(11) NOT NULL DEFAULT '0' COMMENT '时间戳',
  845. `riseNum` INT(11) NOT NULL DEFAULT '0' COMMENT '增加数量',
  846. `totalNum` INT(11) NOT NULL DEFAULT '0' COMMENT '总数量',
  847. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  848. `addTime` INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT '添加时间',
  849. PRIMARY KEY (`id`),
  850. UNIQUE KEY `num` (`merchantId`,`time`)
  851. ) COMMENT='每天增加访问次数,非访问ip数';
  852. DROP TABLE IF EXISTS `xhStatViewMonth`;
  853. CREATE TABLE `xhStatViewMonth` (
  854. `id` INT(11) NOT NULL AUTO_INCREMENT,
  855. `time` INT(11) NOT NULL DEFAULT '0' COMMENT '月份',
  856. `riseNum` INT(11) NOT NULL DEFAULT '0' COMMENT '增加数量',
  857. `totalNum` INT(11) NOT NULL DEFAULT '0' COMMENT '总数量',
  858. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  859. `addTime` INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT '添加时间',
  860. PRIMARY KEY (`id`),
  861. UNIQUE KEY `num` (`merchantId`,`time`)
  862. ) COMMENT='每月增加访问次数,非访问ip数';";
  863. Yii::$app->db->createCommand($sql)->execute();
  864. //统计相关
  865. //xhStatIncomeMonth
  866. $list = StatIncomeMonthService::getAllByCondition([], null, '*');
  867. if (!empty($list)) {
  868. foreach ($list as $val) {
  869. $year = $val['year'];
  870. $month = $val['month'];
  871. $date = date("Ym", strtotime($year . '-' . $month . '-' . '1'));
  872. $id = $val['id'];
  873. StatIncomeMonthService::updateById($id, ['time' => $date]);
  874. }
  875. }
  876. //xhStatIncomeSourceMonth
  877. $list = StatIncomeSourceMonthService::getAllByCondition([], null, '*');
  878. if (!empty($list)) {
  879. foreach ($list as $val) {
  880. $year = $val['year'];
  881. $month = $val['month'];
  882. $date = date("Ym", strtotime($year . '-' . $month . '-' . '1'));
  883. $id = $val['id'];
  884. StatIncomeSourceMonthService::updateById($id, ['time' => $date]);
  885. }
  886. }
  887. //xhStatOrder
  888. $list = StatOrderService::getAllByCondition([], null, '*');
  889. if (!empty($list)) {
  890. foreach ($list as $val) {
  891. $id = $val['id'];
  892. $date = date("Ymd", $val['time']);
  893. StatOrderService::updateById($id, ['time' => $date]);
  894. }
  895. }
  896. //xhStatOrderMonth
  897. $list = StatOrderMonthService::getAllByCondition([], null, '*');
  898. if (!empty($list)) {
  899. foreach ($list as $val) {
  900. $year = $val['year'];
  901. $month = $val['month'];
  902. $date = date("Ym", strtotime($year . '-' . $month . '-' . '1'));
  903. $id = $val['id'];
  904. StatOrderMonthService::updateById($id, ['time' => $date]);
  905. }
  906. }
  907. $sql = "ALTER TABLE `xhMerchantAsset` ADD totalView INT NOT NULL DEFAULT 0 COMMENT '累计访问次数' AFTER `totalVisit`;ALTER TABLE `xhMerchantAsset` MODIFY `totalVisit` INT NOT NULL DEFAULT 0 COMMENT '累计访客数';";
  908. Yii::$app->db->createCommand($sql)->execute();
  909. //删除收入来源数据统计的键名
  910. $sql = "ALTER TABLE `xhStatIncomeSourceMonth` DROP INDEX `income`;";
  911. Yii::$app->db->createCommand($sql)->execute();
  912. //继续执行
  913. $this->actionInit2();
  914. }
  915. public function actionInit2()
  916. {
  917. //更新管理员
  918. $sql = 'update `xhAdmin` set password="' . password_hash('123456', PASSWORD_BCRYPT) . '",confirmPassword="' . password_hash('123456', PASSWORD_BCRYPT) . '";update `xhAdmin` set merchantId=12358,platUserId=12543212 where id=1;update `xhAdmin` set merchantId=12359,platUserId=12540901 where id=3;update `xhAdmin` set merchantId=12360 where id=4;update `xhAdmin` set merchantId=12361,platUserId=12540861 where id=5;update `xhStaff` set `password`="' . password_hash('123456', PASSWORD_BCRYPT) . '"';
  919. Yii::$app->db->createCommand($sql)->execute();
  920. //生产环境才要做的操作
  921. if (getenv('YII_ENV') == 'production') {
  922. $password = password_hash('glhs610000', PASSWORD_BCRYPT);
  923. $confirmPassword = password_hash('454588', PASSWORD_BCRYPT);
  924. $sql = "update `xhAdmin` set password='{$password}',confirmPassowrd='{$confirmPassword}' where id=1";
  925. Yii::$app->db->createCommand($sql)->execute();
  926. //国兰老客户导入
  927. $oldUserList = Yii::$app->db2->createCommand('select * from xhUserOldData where `status`=0')->queryAll();
  928. if (!empty($oldUserList)) {
  929. foreach ($oldUserList as $user) {
  930. $mobile = $user['mobile'];
  931. $exists = UserService::getByCondition(['mobile' => $mobile, 'merchantId' => 12358]);
  932. if (!empty($exists)) {
  933. echo "老客户:'.$mobile.'已经导入过了。\n";
  934. continue;
  935. }
  936. $user['realName'] = $user['userName'];
  937. $user['growth'] = $user['integral'];
  938. $insertUser = UserService::addUser($user);
  939. $id = $user['id'];
  940. Yii::$app->db2->createCommand("update xhUserOldData set `status`=1 where id={$id}")->execute();
  941. echo "老客户导入生成userId:" . $insertUser['id'] . "\n";
  942. }
  943. }
  944. //更新国兰的菜单分类
  945. $sql = "truncate `xhCategory`;insert into `xhCategory`(`id`,`parentId`,`merchantId`,`categoryName`,`description`,`img`,`goodsNum`,`sold`,`inTurn`,`status`) values (1,0,12358,'花束','唯美花束','',0,0,15,1),(2,0,12358,'花盒','时尚花盒','',0,0,14,1),(3,0,12358,'开业花篮','开业花篮','',0,0,0,1),(4,0,12358,'婚礼用花','婚礼用花','',0,0,0,1),(5,0,12358,'会议用花','会议用花','',0,0,0,1),(9,0,12358,'蝴蝶兰专区','蝴蝶兰','',0,0,4,1),(87,0,12358,'花篮','时尚礼篮','',0,0,4,1),(88,0,12358,'植物-微景观','植物-微景观','',0,0,4,1);";
  946. Yii::$app->db->createCommand($sql)->execute();
  947. //更新国兰分类与商品对应关系
  948. Yii::$app->db->createCommand("truncate `xhGoodsCategory`;")->execute();
  949. $goodsCategory = Yii::$app->db2->createCommand('select * from `xhGoodsCategory` where `merchantId`=12358')->queryAll();
  950. if (!empty($goodsCategory)) {
  951. foreach ($goodsCategory as $val) {
  952. $cId = $val['cId'];
  953. $gId = $val['gId'];
  954. $inTurn = $val['inTurn'];
  955. $merchantId = $val['merchantId'];
  956. GoodsCategoryService::add(['gId' => $gId, 'cId' => $cId, 'inTurn' => $inTurn, 'status' => 1, 'merchantId' => $merchantId]);
  957. echo $cId . ' ' . $gId . "\n";
  958. }
  959. }
  960. $goodsUsage = Yii::$app->db2->createCommand('select * from `xhGoodsUsage` where `merchantId`=12358')->queryAll();
  961. if (!empty($goodsUsage)) {
  962. foreach ($goodsUsage as $val) {
  963. $usageId = $val['usageId'];
  964. $goodsId = $val['goodsId'];
  965. $inTurn = $val['inTurn'];
  966. $merchantId = $val['merchantId'];
  967. GoodsCategoryService::add(['gId' => $goodsId, 'cId' => $usageId, 'inTurn' => $inTurn, 'status' => 1, 'merchantId' => $merchantId]);
  968. echo $usageId . ' ' . $goodsId . "\n";
  969. }
  970. }
  971. //会员打折和会员等级要同步,要先导老客户 shish 2020.1.12
  972. $merchantList = MerchantExtendService::getAllByCondition([], null, '*', 'merchantId');
  973. $userAssetList = UserAssetService::getAllByCondition([], null, '*');
  974. if (!empty($userAssetList)) {
  975. foreach ($userAssetList as $asset) {
  976. $id = $asset['userId'];
  977. $merchantId = $asset['merchantId'];
  978. $growth = $asset['growth'];
  979. $currentMember = $asset['member'];
  980. UserService::updateById($id, ['member' => $currentMember]);
  981. if (!empty($merchantId) && isset($merchantList[$merchantId])) {
  982. $extend = $merchantList[$merchantId];
  983. if (!empty($extend)) {
  984. $gradeList = MerchantExtendService::getGradeList($extend);
  985. $member = null;
  986. foreach ($gradeList as $grade) {
  987. if ($grade['growth'] < $growth) {
  988. $member = $grade['level'];
  989. continue;
  990. }
  991. }
  992. if (!empty($member)) {
  993. UserAssetService::updateByUserId($id, ['member' => $member]);
  994. UserService::updateById($id, ['member' => $member]);
  995. echo '客户id:' . $id . '会员等级:' . $member . "已更新\n";
  996. }
  997. }
  998. }
  999. }
  1000. }
  1001. //会员头像是否正确一致
  1002. $this->actionSyncAvatar();
  1003. }
  1004. $sql = "ALTER TABLE xhGoods ADD `briefContent` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '简单内容介绍,移动端添加商品' AFTER `content`;";
  1005. Yii::$app->db->createCommand($sql)->execute();
  1006. //各个环境开放平台的更新
  1007. $env = getenv("YII_ENV");
  1008. //花美灵
  1009. if ($env == 'dev') {
  1010. $sql = "delete from `xhMerchant`;delete from `xhWxOpen`;";
  1011. $sql .= "insert into `xhWxOpen`(`id`,`appId`,`openName`,`appSecret`,`merchantId`,`adminId`,`token`,`verifyTicket`,`verifyTicketTime`,`componentAccessToken`,`componentAccessTokenTime`,`aesKey`,`preAuthCode`,`preAuthCodeTime`,`createTime`,`updateTime`) values (1,'wxe4428cfe08fc74d6','花美灵','cdbcb1ea6bf2249b269c542c870bd96d',0,0,'XH11464773308','ticket@@@mUTfkCa6p-W5fIB_YvWDiSzUvsCVJNN6fELjsHnZ07Nvz5hfRMyfHzmjn3ZPK9Gi5aqY2_H7ruxnX2cdYdjRIg','2020-01-09 21:04:50','29_RQZoasQKtSPVa754Inhu3aKiAfou3KYGJT5SGtqWy74cHoL3aEfPt0xTR6JMuULyDN4-25fBDTE-VS_jtalbq6WTbb5d7B-K4dUSS3zDbKykNtctzFnBBnDzkbGRXcw2b8OS8JY_HHblIlFZTVLcAGAGIY','2020-01-09 21:36:26','Gm2BIikJaExAbiyafGoJGFbEsECb4mDEnyEYgl9WXW5','preauthcode@@@IJXez4FxmgNRLow1rmxhAxM2eaKQYY6g1ocsK8Koe4v9mx7mr07arTNZTLxe2Sf2','2019-12-19 16:13:58','2019-04-17 14:49:19','2020-01-09 12:54:50');";
  1012. Yii::$app->db->createCommand($sql)->execute();
  1013. }
  1014. //花掌柜助手
  1015. if ($env == 'test') {
  1016. $sql = "delete from `xhMerchant`;delete from `xhWxOpen`;";
  1017. $sql .= "insert into `xhWxOpen`(`id`,`appId`,`openName`,`appSecret`,`merchantId`,`adminId`,`token`,`verifyTicket`,`verifyTicketTime`,`componentAccessToken`,`componentAccessTokenTime`,`aesKey`,`preAuthCode`,`preAuthCodeTime`,`createTime`,`updateTime`) values (1,'wx364800c320a0cf53','花掌柜助手','6a83bfa98f3ff5e66b1a85a19c54ebdb',0,0,'wt11464773309','ticket@@@mUTfkCa6p-W5fIB_YvWDiSzUvsCVJNN6fELjsHnZ07Nvz5hfRMyfHzmjn3ZPK9Gi5aqY2_H7ruxnX2cdYdjRIg','2020-01-09 21:04:50','29_RQZoasQKtSPVa754Inhu3aKiAfou3KYGJT5SGtqWy74cHoL3aEfPt0xTR6JMuULyDN4-25fBDTE-VS_jtalbq6WTbb5d7B-K4dUSS3zDbKykNtctzFnBBnDzkbGRXcw2b8OS8JY_HHblIlFZTVLcAGAGIY','2020-01-09 21:36:26','Gm2BIikJaExAbiyafGoJGFbEsECb4mDEnyEYgl9WXW5','preauthcode@@@IJXez4FxmgNRLow1rmxhAxM2eaKQYY6g1ocsK8Koe4v9mx7mr07arTNZTLxe2Sf2','2019-12-19 16:13:58','2019-04-17 14:49:19','2020-01-09 12:54:50');";
  1018. Yii::$app->db->createCommand($sql)->execute();
  1019. }
  1020. }
  1021. //重新拉取并保存国兰客户的头像和图片 shish 2020.1.12
  1022. public function actionSyncAvatar()
  1023. {
  1024. UserService::syncAvatar(12358);
  1025. }
  1026. //可以重复初始化的一些东西 shish 2020.1.21
  1027. public function actionRepeatInit($id)
  1028. {
  1029. //初始化微信菜单
  1030. $merchant = xhMerchantService::getById($id);
  1031. xhWxMenuService::applyInit($merchant);
  1032. }
  1033. }