UpgradeController.php 75 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261
  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\message\services\TMessageService;
  9. use biz\order\services\OrderGoodsService;
  10. use biz\order\services\OrderService;
  11. use biz\stat\services\StatIncomeMonthService;
  12. use biz\stat\services\StatIncomeSourceMonthService;
  13. use biz\stat\services\StatOrderMonthService;
  14. use biz\stat\services\StatOrderService;
  15. use biz\user\services\UserAssetService;
  16. use biz\user\services\UserCapitalService;
  17. use biz\user\services\UserGrowthService;
  18. use biz\user\services\UserService;
  19. use biz\weixin\services\WxMenuService;
  20. use common\components\dirUtil;
  21. use common\components\util;
  22. use common\services\xhMerchantService;
  23. use common\services\xhWxMenuService;
  24. use Yii;
  25. use yii\console\Controller;
  26. class UpgradeController extends Controller
  27. {
  28. //执行脚本方式
  29. // ./yii upgrade/init
  30. public function actionInit()
  31. {
  32. if (getenv('YII_ENV') == 'dev') {
  33. util::stop('开发环境不允许初始化');
  34. }
  35. //更新积分 shish 2019.11.22
  36. $sql = "ALTER TABLE xhUserAsset ADD growth INT NOT NULL DEFAULT 0 COMMENT '成长值' AFTER `point`;";
  37. $sql .= "UPDATE `xhUserAsset` SET `growth`=`integral`;";
  38. Yii::$app->db->createCommand($sql)->execute();
  39. //shish 2019.11.23
  40. $sql = "DROP TABLE IF EXISTS xhAuth;
  41. CREATE TABLE xhAuth(
  42. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  43. endId TINYINT NOT NULL DEFAULT 0 COMMENT '业务端,零售1',
  44. parentId INT NOT NULL DEFAULT 0 COMMENT '权限父id',
  45. authName VARCHAR(30) NOT NULL DEFAULT '' COMMENT '权限名称',
  46. front_url VARCHAR(30) NOT NULL DEFAULT '' COMMENT '前端路由',
  47. back_url VARCHAR(30) NOT NULL DEFAULT '' COMMENT '后端路由',
  48. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  49. )COMMENT='各业务端的权限';
  50. DROP TABLE IF EXISTS xhSetAuth;
  51. CREATE TABLE xhSetAuth(
  52. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  53. setId TINYINT NOT NULL DEFAULT 0 COMMENT '套餐id',
  54. endId TINYINT NOT NULL DEFAULT 0 COMMENT '业务端id',
  55. auth VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '权限',
  56. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  57. )COMMENT='套餐在各业务端的权限';
  58. CREATE TABLE xhAdminRoleAuth(
  59. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  60. roleId INT NOT NULL DEFAULT 0 COMMENT '角色id',
  61. auth VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '权限',
  62. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  63. )COMMENT='员工角色权限';";
  64. Yii::$app->db->createCommand($sql)->execute();
  65. $sql = "ALTER TABLE xhAdminRoleAuth ADD endId TINYINT NOT NULL DEFAULT 0 COMMENT '业务端id' AFTER roleId;
  66. ALTER TABLE xhMerchant ADD setId TINYINT NOT NULL DEFAULT 0 COMMENT '套餐id' AFTER `wxRefreshToken`;
  67. ALTER TABLE xhMerchant ADD setDeadline INT NOT NULL DEFAULT 0 COMMENT '套餐到期时间' AFTER `setId`;
  68. ALTER TABLE xhAuth CHANGE front_url frontUrl VARCHAR(30) NOT NULL DEFAULT '' COMMENT '前端路由';
  69. ALTER TABLE xhAuth CHANGE back_url backUrl VARCHAR(30) NOT NULL DEFAULT '' COMMENT '后端路由';
  70. ALTER TABLE xhAdminRole CHANGE authority auth VARCHAR(500) NOT NULL DEFAULT '' COMMENT '权限id列表,存在*表示有所有权限';";
  71. Yii::$app->db->createCommand($sql)->execute();
  72. //注意国兰花尚的全部订单已经完成,并将全部订单置为已完成
  73. $sql = "ALTER TABLE xhOrder MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '订单状态 0待付款 1待配送 2配送中 3待通知 4已取消 5已完成';";
  74. $sql .= "update xhOrder set `status`=5;";
  75. $sql .= "DROP TABLE IF EXISTS xhCategoryRelate;
  76. ALTER TABLE xhCategory ADD merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id' AFTER parentId;
  77. DROP TABLE IF EXISTS xhGoodsUsage;
  78. DROP TABLE IF EXISTS xhUsage;
  79. DROP TABLE IF EXISTS xhUsageRelation;
  80. DROP TABLE IF EXISTS xhStatIncomeUsage;
  81. DROP TABLE IF EXISTS xhStatIncomeUsageMonth;
  82. ALTER TABLE xhOrder ADD refund TINYINT NOT NULL DEFAULT 0 COMMENT '1已退款 0正常订单,没有退款' AFTER luckyNum;
  83. RENAME TABLE xhGoodsPrice TO xhGoodsStyle;
  84. ALTER TABLE xhGoodsStyle COMMENT '商品款式';
  85. ALTER TABLE xhGoodsStyle ADD goodsId INT NOT NULL DEFAULT 0 COMMENT '商品id' AFTER `id`;
  86. DROP TABLE IF EXISTS `xhGoodsUsage`;
  87. ALTER TABLE xhOrder ADD INDEX merchant(merchantId,`status`);
  88. ALTER TABLE xhOrder ADD INDEX userId(userId,`status`);
  89. ALTER TABLE xhUserAsset ADD inviteNum INT NOT NULL DEFAULT 0 COMMENT '邀请新人数量' AFTER `discount`;
  90. ALTER TABLE xhAdmin MODIFY `password` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '密码';
  91. ALTER TABLE xhAdmin MODIFY `confirmPassword` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '确认密码';
  92. ALTER TABLE `xhUser` ADD INDEX mobile(merchantId,`mobile`);
  93. ALTER TABLE xhUserAsset DROP COLUMN `point`;
  94. ALTER TABLE xhUserAsset MODIFY `integral` INT NOT NULL DEFAULT 0 COMMENT '积分';
  95. ALTER TABLE xhUser MODIFY birthday DATE NOT NULL DEFAULT '0000-00-00' COMMENT '生日';
  96. ALTER TABLE xhUserAsset DROP COLUMN `uniqueQrCode`;
  97. ALTER TABLE xhUserAsset DROP COLUMN `uniqueCode`;
  98. ALTER TABLE xhMerchantExtend ADD gradeSwitch TINYINT NOT NULL DEFAULT 1 COMMENT '会员等级修改开关 0不可再修改 1可修改' AFTER gradeList;
  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. $sql = "ALTER TABLE xhGoods ADD `briefContent` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '简单内容介绍,移动端添加商品' AFTER `content`;";
  913. Yii::$app->db->createCommand($sql)->execute();
  914. //各个环境开放平台的更新
  915. $env = getenv("YII_ENV");
  916. $sql = "ALTER TABLE `xhAdminRole` AUTO_INCREMENT=683;
  917. INSERT INTO xhAdminRole VALUES(683,'店长',12358,1,0,'*'),(684,'店长',12359,1,0,'*'),(685,'店长',12360,1,0,'*'),(686,'店长',12361,1,0,'*');";
  918. Yii::$app->db->createCommand($sql)->execute();
  919. $sql = "UPDATE xhMerchant SET `setId`=1;";
  920. Yii::$app->db->createCommand($sql)->execute();
  921. $sql = "ALTER TABLE `xhAdmin` AUTO_INCREMENT=18532;
  922. UPDATE `xhAdmin` SET id=18531,merchantId=12361,roleId=686 WHERE id=5;
  923. UPDATE `xhAdmin` SET id=18530,merchantId=12360,roleId=685 WHERE id=4;
  924. UPDATE `xhAdmin` SET id=18529,merchantId=12359,roleId=684 WHERE id=3;
  925. UPDATE `xhAdmin` SET id=18528,merchantId=12358,roleId=683 WHERE id=1;";
  926. Yii::$app->db->createCommand($sql)->execute();
  927. //优惠券的资产信息
  928. $time = time();
  929. $sql = "insert into xhCouponAsset value(null,12358,1,30,280,7,0,0,0,0,{$time}),(null,12359,1,30,280,7,0,0,0,0,{$time}),(null,12360,1,30,280,7,0,0,0,0,{$time}),(null,12361,1,30,280,7,0,0,0,0,{$time})";
  930. Yii::$app->db->createCommand($sql)->execute();
  931. $sql = "update xhMerchant set adminId=18528 where id=12358;update xhMerchant set adminId=18529 where id=12359;update xhMerchant set adminId=18530 where id=12360;update xhMerchant set adminId=18531 where id=12361;";
  932. Yii::$app->db->createCommand($sql)->execute();
  933. $password = password_hash('123456', PASSWORD_BCRYPT);
  934. $confirmPassword = password_hash('123456', PASSWORD_BCRYPT);
  935. $sql = "update `xhAdmin` set password='{$password}',confirmPassword='{$confirmPassword}' where id=18528";
  936. Yii::$app->db->createCommand($sql)->execute();
  937. $password = password_hash('123456', PASSWORD_BCRYPT);
  938. $confirmPassword = password_hash('123456', PASSWORD_BCRYPT);
  939. $sql = "update `xhAdmin` set password='{$password}',confirmPassword='{$confirmPassword}' where id=18529";
  940. Yii::$app->db->createCommand($sql)->execute();
  941. //花美灵开放平台
  942. if ($env == 'dev') {
  943. $sql = "update `xhWxOpen` set appId='wxe4428cfe08fc74d6',openName='花美灵',appSecret='cdbcb1ea6bf2249b269c542c870bd96d',merchantId=12359,adminId=18529,token='XH11464773308',verifyTicket='ticket@@@mUTfkCa6p-W5fIB_YvWDiSzUvsCVJNN6fELjsHnZ07Nvz5hfRMyfHzmjn3ZPK9Gi5aqY2_H7ruxnX2cdYdjRIg',verifyTicketTime='2020-01-09 21:04:50',componentAccessToken='29_RQZoasQKtSPVa754Inhu3aKiAfou3KYGJT5SGtqWy74cHoL3aEfPt0xTR6JMuULyDN4-25fBDTE-VS_jtalbq6WTbb5d7B-K4dUSS3zDbKykNtctzFnBBnDzkbGRXcw2b8OS8JY_HHblIlFZTVLcAGAGIY',componentAccessTokenTime='2020-01-09 21:36:26',aesKey='Gm2BIikJaExAbiyafGoJGFbEsECb4mDEnyEYgl9WXW5',preAuthCode='preauthcode@@@IJXez4FxmgNRLow1rmxhAxM2eaKQYY6g1ocsK8Koe4v9mx7mr07arTNZTLxe2Sf2',preAuthCodeTime='2019-12-19 16:13:58',createTime='2019-04-17 14:49:19',updateTime='2020-03-05 15:00:00' where id=1;";
  944. Yii::$app->db->createCommand($sql)->execute();
  945. }
  946. //花掌柜开放平台
  947. if ($env == 'test') {
  948. $sql = "update `xhWxOpen` set appId='wx364800c320a0cf53',openName='花掌柜助手',appSecret='6a83bfa98f3ff5e66b1a85a19c54ebdb',merchantId=12359,adminId=18529,token='wt11464773309',verifyTicket='ticket@@@mUTfkCa6p-W5fIB_YvWDiSzUvsCVJNN6fELjsHnZ07Nvz5hfRMyfHzmjn3ZPK9Gi5aqY2_H7ruxnX2cdYdjRIg',verifyTicketTime='2020-01-09 21:04:50',componentAccessToken='29_RQZoasQKtSPVa754Inhu3aKiAfou3KYGJT5SGtqWy74cHoL3aEfPt0xTR6JMuULyDN4-25fBDTE-VS_jtalbq6WTbb5d7B-K4dUSS3zDbKykNtctzFnBBnDzkbGRXcw2b8OS8JY_HHblIlFZTVLcAGAGIY',componentAccessTokenTime='2020-01-09 21:36:26',aesKey='Gm2BIikJaExAbiyafGoJGFbEsECb4mDEnyEYgl9WXW5',preAuthCode='preauthcode@@@IJXez4FxmgNRLow1rmxhAxM2eaKQYY6g1ocsK8Koe4v9mx7mr07arTNZTLxe2Sf2',preAuthCodeTime='2019-12-19 16:13:58',createTime='2019-04-17 14:49:19',updateTime='2020-03-05 15:00:00' where id=1;";
  949. Yii::$app->db->createCommand($sql)->execute();
  950. }
  951. //客户的省市区延长字段,有外国英文名称的比较长
  952. $sql = "ALTER TABLE `xhUser` MODIFY `province` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '省';
  953. ALTER TABLE `xhUser` MODIFY `city` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '市';
  954. ALTER TABLE `xhUser` MODIFY `dist` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '区';
  955. ALTER TABLE `xhUser` MODIFY `address` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '详细地址';
  956. ALTER TABLE `xhTMessage` MODIFY `createTime` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '创建时间';
  957. ALTER TABLE `xhTMessage` ADD `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间' AFTER `templateId`;";
  958. Yii::$app->db->createCommand($sql)->execute();
  959. //申请信息修改
  960. $sql = "ALTER TABLE `xhApply` MODIFY `userId` INT NOT NULL DEFAULT 0 COMMENT '平台userId';
  961. ALTER TABLE `xhApply` CHANGE `oldId` introMerchantId INT NOT NULL DEFAULT 0 COMMENT '花店介绍人';
  962. ALTER TABLE `xhApply` CHANGE `newId` merchantId INT NOT NULL DEFAULT 0 COMMENT '新花店id;0表示还没审核通过';";
  963. Yii::$app->db->createCommand($sql)->execute();
  964. //门店省市区地址字段变更
  965. $sql = "ALTER TABLE `xhShop` CHANGE `shopLat` `lat` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '纬度';
  966. ALTER TABLE `xhShop` CHANGE `shopLong` `long` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '经度';
  967. ALTER TABLE `xhShop` CHANGE `shopProvince` `province` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '省';
  968. ALTER TABLE `xhShop` CHANGE `shopCity` `city` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '市';
  969. ALTER TABLE `xhShop` CHANGE `shopDist` `dist` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '区县';
  970. ALTER TABLE `xhShop` CHANGE `shopAddress` `address` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '街道地址';
  971. ALTER TABLE `xhShop` ADD `floor` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '楼号门牌号' AFTER `address`;
  972. ALTER TABLE `xhShop` CHANGE `shopFullAddress` `fullAddress` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '完整地址';
  973. ALTER TABLE `xhApply` CHANGE `longitude` `long` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '经度';
  974. ALTER TABLE `xhApply` CHANGE `latitude` `lat` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '纬度';";
  975. Yii::$app->db->createCommand($sql)->execute();
  976. $sql = "ALTER TABLE `xhMerchant` DROP INDEX `merchantName`;";
  977. Yii::$app->db->createCommand($sql)->execute();
  978. $sql = "ALTER TABLE `xhAd` MODIFY `endTime` BIGINT NOT NULL DEFAULT 0 COMMENT '结束时间;值4102416000(2100-01-01 00:00:00)表示永不过期情况';
  979. ALTER TABLE `xhAd` MODIFY `startTime` BIGINT NOT NULL DEFAULT 0 COMMENT '开始时间';";
  980. Yii::$app->db->createCommand($sql)->execute();
  981. //支付相关配置修改
  982. $sql = "ALTER TABLE `xhMerchantExtend` ADD wxPayInit TINYINT NOT NULL DEFAULT 0 COMMENT '0微信支付未配置 1配置' AFTER `miniVersion`;
  983. ALTER TABLE `xhMerchantExtend` ADD alipayInit TINYINT NOT NULL DEFAULT 0 COMMENT '0支付宝支付未配置 1配置' AFTER `wxPayKey`;
  984. ALTER TABLE `xhMerchantExtend` MODIFY `alipayKey` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '商户密钥';
  985. ALTER TABLE `xhMerchantExtend` ADD alipayPublicKey VARCHAR(500) NOT NULL DEFAULT '' COMMENT '支付宝公钥' AFTER `alipayKey`;";
  986. Yii::$app->db->createCommand($sql)->execute();
  987. //收款二维码和申请会员小程序码
  988. $sql = "ALTER TABLE `xhMerchantExtend` ADD `applyMemberCode` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '申请会员小程序码' AFTER `alipayAccountName`;
  989. ALTER TABLE `xhShop` ADD `gatheringCode` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '收款的二维码' AFTER `introduction`;";
  990. Yii::$app->db->createCommand($sql)->execute();
  991. //门店与来源
  992. $sql = "ALTER TABLE `xhOrder` MODIFY `sourceType` TINYINT NOT NULL DEFAULT 0 COMMENT '来源 0微信 1支付宝 2小程序 3朋友圈 4美团';
  993. ALTER TABLE `xhOrder` ADD `store` TINYINT NOT NULL DEFAULT 0 COMMENT '门店订单 0不是 1是' AFTER `sourceType`;
  994. ALTER TABLE `xhUser` CHANGE `source` `sourceType` TINYINT NOT NULL DEFAULT 0 COMMENT '来源 0微信 1支付宝 2小程序 3朋友圈 4美团';
  995. ALTER TABLE `xhUser` ADD `store` TINYINT NOT NULL DEFAULT 0 COMMENT '门店订单 0不是 1是' AFTER `sourceType`;";
  996. Yii::$app->db->createCommand($sql)->execute();
  997. //商品图片变长
  998. $sql = "ALTER TABLE `xhGoodsStyle` MODIFY `picture` VARCHAR(800) NOT NULL DEFAULT '' COMMENT '图片相对路径';";
  999. Yii::$app->db->createCommand($sql)->execute();
  1000. $sql = "ALTER TABLE `xhWxOpen` ADD smsNum INT NOT NULL DEFAULT 0 COMMENT '短信剩余总条数' AFTER `preAuthCodeTime`;UPDATE `xhWxOpen` SET smsNum=18500;";
  1001. Yii::$app->db->createCommand($sql)->execute();
  1002. $sql = "ALTER TABLE `xhShop` ADD `applyMemberCode` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '注册会员码' AFTER `gatheringCode`;
  1003. ALTER TABLE `xhShop` ADD `totalIncome` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '累计收入' AFTER `applyMemberCode`;";
  1004. Yii::$app->db->createCommand($sql)->execute();
  1005. //门店相关修改
  1006. $sql = "ALTER TABLE `xhShop` ADD `avatar` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '门店照片;门店头像' AFTER `id`;
  1007. ALTER TABLE `xhShop` ADD `status` TINYINT NOT NULL DEFAULT 1 COMMENT '门店状态 0停用 1正常' AFTER `totalIncome`;
  1008. ALTER TABLE `xhShop` ADD `delStatus` TINYINT NOT NULL DEFAULT 0 COMMENT '删除状态 0没有删除 1已删除' AFTER `totalIncome`;
  1009. ALTER TABLE `xhShop` ADD `default` TINYINT NOT NULL DEFAULT 0 COMMENT '默认门店 0不是 1是,默认门店不能删除' AFTER `totalIncome`;";
  1010. Yii::$app->db->createCommand($sql)->execute();
  1011. $sql = "ALTER TABLE `xhWxOpen` ADD smsRemindTime INT NOT NULL DEFAULT 0 COMMENT '平台短信不足提醒时间' AFTER `smsNum`;";
  1012. Yii::$app->db->createCommand($sql)->execute();
  1013. $sql = "UPDATE `xhUser` SET mobile='' WHERE mobile=0;";
  1014. Yii::$app->db->createCommand($sql)->execute();
  1015. $sql = "ALTER TABLE `xhCategory` ADD `delStatus` TINYINT NOT NULL DEFAULT 0 COMMENT '删除状态 0未删除 1已删除' AFTER `inTurn`;
  1016. ALTER TABLE `xhCategory` DROP INDEX `merchantId`;
  1017. ALTER TABLE `xhCategory` ADD INDEX `merchant`(`merchantId`,`delStatus`);";
  1018. Yii::$app->db->createCommand($sql)->execute();
  1019. $sql = "ALTER TABLE `xhMerchantExtend` ADD miniAuth TINYINT NOT NULL DEFAULT 0 COMMENT '小程序授权 0未授权 1授权' AFTER `payment`;
  1020. ALTER TABLE `xhMerchantExtend` ADD wxAuth TINYINT NOT NULL DEFAULT 0 COMMENT '公众号授权 0未授权 1授权' AFTER `miniVersion`;
  1021. ALTER TABLE `xhMerchantExtend` ADD openAppId VARCHAR(100) NOT NULL DEFAULT '' COMMENT '开放平台帐号' AFTER `wxPayKey`;
  1022. ALTER TABLE `xhMerchantExtend` ADD openAppBind TINYINT NOT NULL DEFAULT 0 COMMENT '绑定开放平台 0没有创建 1公众号已绑 2小程序已绑 3公众号和小程序都已绑' AFTER `wxPayKey`;";
  1023. Yii::$app->db->createCommand($sql)->execute();
  1024. //花美灵开放平台的公众号和第一个公众号
  1025. if ($env == 'dev') {
  1026. $sql = "update xhMerchant set merchantName='花美灵' where id=12359;update xhShop set shopName='花美灵',merchantName='花美灵',`status`=1 where merchantId=12359;
  1027. update xhMerchant set merchantName='中花卉' where id=12358;update xhShop set shopName='中花卉',merchantName='中花卉' where merchantId=12358;";
  1028. Yii::$app->db->createCommand($sql)->execute();
  1029. }
  1030. //花掌柜开放平台的公众号和第一个公众号
  1031. if ($env == 'test') {
  1032. $sql = "update xhMerchant set merchantName='花掌柜' where id=12359;update xhShop set shopName='花掌柜',merchantName='花掌柜',`status`=1 where merchantId=12359;
  1033. update xhMerchant set merchantName='花店宝' where id=12358;update xhShop set shopName='花店宝',merchantName='花店宝' where merchantId=12358;";
  1034. Yii::$app->db->createCommand($sql)->execute();
  1035. }
  1036. //清除没有用网站标题
  1037. $sql = "update xhMerchantExtend set webTitle='',webKeyword='',webDescription='';";
  1038. Yii::$app->db->createCommand($sql)->execute();
  1039. $sql = "update xhAdmin set addTime=1583375880;update xhAdminRole set addTime=1583375880;";
  1040. Yii::$app->db->createCommand($sql)->execute();
  1041. $sql = "update xhShop set openTime='08:00-22:00',telephone='15280215347',lat='30.03974',`long`='120.88564',province='浙江省',city='绍兴市',address='浙江省绍兴市上虞区华维路68号' where id in(15682,15683);";
  1042. Yii::$app->db->createCommand($sql)->execute($sql);
  1043. $sql = "update xhShop set openTime='08:00-22:00',telephone='18030142050',lat='24.46886',`long`='118.10708',province='福建省',city='厦门市',address='福建省厦门市思明区后埭溪路128-5号' where id in(15681,15680);update xhShop set telephone='15280215347' where id=15681;";
  1044. Yii::$app->db->createCommand($sql)->execute($sql);
  1045. $sql = "UPDATE xhMerchant SET wxAppId='',openAppId='' WHERE id IN(12359,12358);UPDATE xhMerchantExtend SET wxAppId='',openAppId='',wxAuth=0,miniAuth=0,init=0 WHERE merchantId IN(12359,12358);";
  1046. Yii::$app->db->createCommand($sql)->execute($sql);
  1047. //更换开发环境小程序的miniAppId、miniAppSecret
  1048. if ($env == 'dev') {
  1049. $sql = "UPDATE xhMerchant SET miniAppId='wxe41bd5816affd0ba',miniAppSecret='ad634457979bc6eb1fb0bc7f4f58d885' WHERE id=12358;UPDATE xhMerchantExtend SET miniAppId='wxe41bd5816affd0ba',wxPayInit=0,wxPayMerchantId='',wxPayKey='' WHERE merchantId=12358;";
  1050. Yii::$app->db->createCommand($sql)->execute($sql);
  1051. $sql = "UPDATE xhMerchant SET miniAppId='wxe4675bab299a52f7',miniAppSecret='12f90039b1245ba6abf2e4184462fb30' WHERE id=12359;UPDATE xhMerchantExtend SET miniAppId='wxe4675bab299a52f7',wxPayInit=0,wxPayMerchantId='',wxPayKey='' WHERE merchantId=12359;";
  1052. Yii::$app->db->createCommand($sql)->execute($sql);
  1053. }
  1054. //更换测试环境小程序的miniAppId、miniAppSecret
  1055. if ($env == 'test') {
  1056. $sql = "UPDATE xhMerchant SET miniAppId='wx36ca6b1d6e9ca2a4',miniAppSecret='b8227c6264785a233e67293f13b1b7b3' WHERE id=12358;UPDATE xhMerchantExtend SET miniAppId='wx36ca6b1d6e9ca2a4',wxPayInit=0,wxPayMerchantId='',wxPayKey='' WHERE merchantId=12358;";
  1057. Yii::$app->db->createCommand($sql)->execute($sql);
  1058. $sql = "UPDATE xhMerchant SET miniAppId='wx21b7c3ef12082099',miniAppSecret='fd21ef3ebbc70e89d5c3a5a3c013edb6' WHERE id=12359;UPDATE xhMerchantExtend SET miniAppId='wx21b7c3ef12082099',wxPayInit=0,wxPayMerchantId='',wxPayKey='' WHERE merchantId=12359;";
  1059. Yii::$app->db->createCommand($sql)->execute($sql);
  1060. }
  1061. //设置过期时间
  1062. $sql = "update xhMerchant set setDeadline=1583648639";
  1063. Yii::$app->db->createCommand($sql)->execute($sql);
  1064. //如果是开发环境,将用户、订单、微信菜单全部清除
  1065. if ($env == 'dev') {
  1066. TMessageService::deleteByCondition(['merchantId' => 12358]);
  1067. UserService::deleteByCondition(['merchantId' => 12358]);
  1068. WxMenuService::deleteByCondition(['merchantId' => 12358]);
  1069. OrderService::deleteByCondition(['merchantId' => 12358]);
  1070. TMessageService::deleteByCondition(['merchantId' => 12359]);
  1071. UserService::deleteByCondition(['merchantId' => 12359]);
  1072. WxMenuService::deleteByCondition(['merchantId' => 12359]);
  1073. OrderService::deleteByCondition(['merchantId' => 12359]);
  1074. }
  1075. if ($env == 'test') {
  1076. TMessageService::deleteByCondition(['merchantId' => 12358]);
  1077. UserService::deleteByCondition(['merchantId' => 12358]);
  1078. WxMenuService::deleteByCondition(['merchantId' => 12358]);
  1079. OrderService::deleteByCondition(['merchantId' => 12358]);
  1080. TMessageService::deleteByCondition(['merchantId' => 12359]);
  1081. UserService::deleteByCondition(['merchantId' => 12359]);
  1082. WxMenuService::deleteByCondition(['merchantId' => 12359]);
  1083. OrderService::deleteByCondition(['merchantId' => 12359]);
  1084. }
  1085. //用户删除概念的提出
  1086. $sql = "ALTER TABLE xhUser ADD `delStatus` TINYINT NOT NULL DEFAULT 0 COMMENT '删除状态 0未删除 1已删除' AFTER `addPrecision`;
  1087. UPDATE xhUser SET delStatus=1 WHERE merchantId=0;";
  1088. Yii::$app->db->createCommand($sql)->execute($sql);
  1089. }
  1090. //数据迁移 shish 2020.1.12
  1091. //./yii upgrade/sync
  1092. public function actionSync()
  1093. {
  1094. //国兰老客户导入
  1095. $oldUserList = Yii::$app->db2->createCommand('select * from xhUserOldData where `status`=0')->queryAll();
  1096. if (!empty($oldUserList)) {
  1097. foreach ($oldUserList as $user) {
  1098. $mobile = $user['mobile'];
  1099. $exists = UserService::getByCondition(['mobile' => $mobile, 'merchantId' => 12358]);
  1100. if (!empty($exists)) {
  1101. echo "老客户:'.$mobile.'已经导入过了。\n";
  1102. continue;
  1103. }
  1104. $user['realName'] = $user['userName'];
  1105. $user['growth'] = $user['integral'];
  1106. $insertUser = UserService::addUser($user);
  1107. $id = $user['id'];
  1108. Yii::$app->db2->createCommand("update xhUserOldData set `status`=1 where id={$id}")->execute();
  1109. echo "老客户导入生成userId:" . $insertUser['id'] . "\n";
  1110. }
  1111. }
  1112. $sql = "DROP TABLE IF EXISTS `xhUserOldData`;";
  1113. Yii::$app->db2->createCommand($sql)->execute();
  1114. //更新国兰的菜单分类
  1115. $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);";
  1116. Yii::$app->db->createCommand($sql)->execute();
  1117. //更新国兰分类与商品对应关系
  1118. Yii::$app->db->createCommand("truncate `xhGoodsCategory`;")->execute();
  1119. $goodsCategory = Yii::$app->db2->createCommand('select * from `xhGoodsCategory` where `merchantId`=12358')->queryAll();
  1120. if (!empty($goodsCategory)) {
  1121. foreach ($goodsCategory as $val) {
  1122. $cId = $val['cId'];
  1123. $gId = $val['gId'];
  1124. $inTurn = $val['inTurn'];
  1125. $merchantId = $val['merchantId'];
  1126. GoodsCategoryService::add(['gId' => $gId, 'cId' => $cId, 'inTurn' => $inTurn, 'status' => 1, 'merchantId' => $merchantId]);
  1127. echo $cId . ' ' . $gId . "\n";
  1128. }
  1129. }
  1130. $goodsUsage = Yii::$app->db2->createCommand('select * from `xhGoodsUsage` where `merchantId`=12358')->queryAll();
  1131. if (!empty($goodsUsage)) {
  1132. foreach ($goodsUsage as $val) {
  1133. $usageId = $val['usageId'];
  1134. $goodsId = $val['goodsId'];
  1135. $inTurn = $val['inTurn'];
  1136. $merchantId = $val['merchantId'];
  1137. GoodsCategoryService::add(['gId' => $goodsId, 'cId' => $usageId, 'inTurn' => $inTurn, 'status' => 1, 'merchantId' => $merchantId]);
  1138. echo $usageId . ' ' . $goodsId . "\n";
  1139. }
  1140. }
  1141. //会员打折和会员等级要同步,要先导老客户 shish 2020.1.12
  1142. $merchantList = MerchantExtendService::getAllByCondition([], null, '*', 'merchantId');
  1143. $userAssetList = UserAssetService::getAllByCondition([], null, '*');
  1144. if (!empty($userAssetList)) {
  1145. foreach ($userAssetList as $asset) {
  1146. $id = $asset['userId'];
  1147. $merchantId = $asset['merchantId'];
  1148. $growth = $asset['growth'];
  1149. $currentMember = $asset['member'];
  1150. UserService::updateById($id, ['member' => $currentMember]);
  1151. if (!empty($merchantId) && isset($merchantList[$merchantId])) {
  1152. $extend = $merchantList[$merchantId];
  1153. if (!empty($extend)) {
  1154. $gradeList = MerchantExtendService::getGradeList($extend);
  1155. $member = null;
  1156. foreach ($gradeList as $grade) {
  1157. if ($grade['growth'] < $growth) {
  1158. $member = $grade['level'];
  1159. continue;
  1160. }
  1161. }
  1162. if (!empty($member)) {
  1163. UserAssetService::updateByUserId($id, ['member' => $member]);
  1164. UserService::updateById($id, ['member' => $member]);
  1165. echo '客户id:' . $id . '会员等级:' . $member . "已更新\n";
  1166. }
  1167. }
  1168. }
  1169. }
  1170. }
  1171. //更新头像
  1172. UserService::syncAvatar(12358);
  1173. }
  1174. //微信菜单初始化或重置,可以重复执行 shish 2020.3.5
  1175. // ./yii upgrade/menu-init 12358
  1176. public function actionMenuInit($id)
  1177. {
  1178. $merchant = xhMerchantService::getById($id);
  1179. xhWxMenuService::applyInit($merchant);
  1180. }
  1181. }