UpgradeController.php 93 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575
  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\classes\MerchantClass;
  7. use biz\merchant\services\MerchantCapitalService;
  8. use biz\merchant\services\MerchantExtendService;
  9. use biz\merchant\services\MerchantService;
  10. use biz\message\services\TMessageService;
  11. use biz\order\services\OrderGoodsService;
  12. use biz\order\services\OrderService;
  13. use biz\saas\services\StaffService;
  14. use biz\stat\services\StatIncomeMonthService;
  15. use biz\stat\services\StatIncomeSourceMonthService;
  16. use biz\stat\services\StatOrderMonthService;
  17. use biz\stat\services\StatOrderService;
  18. use biz\user\services\UserAssetService;
  19. use biz\user\services\UserCapitalService;
  20. use biz\user\services\UserGrowthService;
  21. use biz\user\services\UserService;
  22. use biz\wx\classes\WxBaseClass;
  23. use biz\wx\services\WxMenuService;
  24. use common\components\dirUtil;
  25. use common\components\util;
  26. use common\components\wxUtil;
  27. use common\services\xhMerchantService;
  28. use common\services\xhWxMenuService;
  29. use Yii;
  30. use yii\console\Controller;
  31. class UpgradeController extends Controller
  32. {
  33. //执行脚本方式
  34. // ./yii upgrade/init
  35. public function actionInit()
  36. {
  37. if (getenv('YII_ENV') == 'dev') {
  38. //util::stop('开发环境不允许初始化');
  39. }
  40. //更新积分 shish 2019.11.22
  41. $sql = "ALTER TABLE xhUserAsset ADD growth INT NOT NULL DEFAULT 0 COMMENT '成长值' AFTER `point`;";
  42. $sql .= "UPDATE `xhUserAsset` SET `growth`=`integral`;";
  43. Yii::$app->db->createCommand($sql)->execute();
  44. //shish 2019.11.23
  45. $sql = "DROP TABLE IF EXISTS xhAuth;
  46. CREATE TABLE xhAuth(
  47. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  48. endId TINYINT NOT NULL DEFAULT 0 COMMENT '业务端,零售1',
  49. parentId INT NOT NULL DEFAULT 0 COMMENT '权限父id',
  50. authName VARCHAR(30) NOT NULL DEFAULT '' COMMENT '权限名称',
  51. front_url VARCHAR(30) NOT NULL DEFAULT '' COMMENT '前端路由',
  52. back_url VARCHAR(30) NOT NULL DEFAULT '' COMMENT '后端路由',
  53. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  54. )COMMENT='各业务端的权限';
  55. DROP TABLE IF EXISTS xhSetAuth;
  56. CREATE TABLE xhSetAuth(
  57. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  58. setId TINYINT NOT NULL DEFAULT 0 COMMENT '套餐id',
  59. endId TINYINT 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. CREATE TABLE xhAdminRoleAuth(
  64. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  65. roleId INT NOT NULL DEFAULT 0 COMMENT '角色id',
  66. auth VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '权限',
  67. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  68. )COMMENT='员工角色权限';";
  69. Yii::$app->db->createCommand($sql)->execute();
  70. $sql = "ALTER TABLE xhAdminRoleAuth ADD endId TINYINT NOT NULL DEFAULT 0 COMMENT '业务端id' AFTER roleId;
  71. ALTER TABLE xhMerchant ADD setId TINYINT NOT NULL DEFAULT 0 COMMENT '套餐id' AFTER `wxRefreshToken`;
  72. ALTER TABLE xhMerchant ADD setDeadline INT NOT NULL DEFAULT 0 COMMENT '套餐到期时间' AFTER `setId`;
  73. ALTER TABLE xhAuth CHANGE front_url frontUrl VARCHAR(30) NOT NULL DEFAULT '' COMMENT '前端路由';
  74. ALTER TABLE xhAuth CHANGE back_url backUrl VARCHAR(30) NOT NULL DEFAULT '' COMMENT '后端路由';
  75. ALTER TABLE xhAdminRole CHANGE authority auth VARCHAR(500) NOT NULL DEFAULT '' COMMENT '权限id列表,存在*表示有所有权限';";
  76. Yii::$app->db->createCommand($sql)->execute();
  77. //注意国兰花尚的全部订单已经完成,并将全部订单置为已完成
  78. $sql = "ALTER TABLE xhOrder MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '订单状态 0待付款 1待配送 2配送中 3待通知 4已取消 5已完成';";
  79. $sql .= "update xhOrder set `status`=5;";
  80. $sql .= "DROP TABLE IF EXISTS xhCategoryRelate;
  81. ALTER TABLE xhCategory ADD merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id' AFTER parentId;
  82. DROP TABLE IF EXISTS xhGoodsUsage;
  83. DROP TABLE IF EXISTS xhUsage;
  84. DROP TABLE IF EXISTS xhUsageRelation;
  85. DROP TABLE IF EXISTS xhStatIncomeUsage;
  86. DROP TABLE IF EXISTS xhStatIncomeUsageMonth;
  87. ALTER TABLE xhOrder ADD refund TINYINT NOT NULL DEFAULT 0 COMMENT '1已退款 0正常订单,没有退款' AFTER luckyNum;
  88. RENAME TABLE xhGoodsPrice TO xhGoodsStyle;
  89. ALTER TABLE xhGoodsStyle COMMENT '商品款式';
  90. ALTER TABLE xhGoodsStyle ADD goodsId INT NOT NULL DEFAULT 0 COMMENT '商品id' AFTER `id`;
  91. DROP TABLE IF EXISTS `xhGoodsUsage`;
  92. ALTER TABLE xhOrder ADD INDEX merchant(merchantId,`status`);
  93. ALTER TABLE xhOrder ADD INDEX userId(userId,`status`);
  94. ALTER TABLE xhUserAsset ADD inviteNum INT NOT NULL DEFAULT 0 COMMENT '邀请新人数量' AFTER `discount`;
  95. ALTER TABLE xhAdmin MODIFY `password` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '密码';
  96. ALTER TABLE xhAdmin MODIFY `confirmPassword` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '确认密码';
  97. ALTER TABLE `xhUser` ADD INDEX mobile(merchantId,`mobile`);
  98. ALTER TABLE xhUserAsset DROP COLUMN `point`;
  99. ALTER TABLE xhUserAsset MODIFY `integral` INT NOT NULL DEFAULT 0 COMMENT '积分';
  100. ALTER TABLE xhUser MODIFY birthday DATE NOT NULL DEFAULT '0000-00-00' COMMENT '生日';
  101. ALTER TABLE xhUserAsset DROP COLUMN `uniqueQrCode`;
  102. ALTER TABLE xhUserAsset DROP COLUMN `uniqueCode`;
  103. ALTER TABLE xhMerchantExtend ADD gradeSwitch TINYINT NOT NULL DEFAULT 1 COMMENT '会员等级修改开关 0不可再修改 1可修改' AFTER gradeList;
  104. DROP TABLE IF EXISTS xhUsage;
  105. CREATE TABLE `xhUsage` (
  106. `id` INT(11) NOT NULL,
  107. `usageName` VARCHAR(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '用途名称',
  108. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  109. ) COMMENT='商品用途';
  110. INSERT INTO `xhUsage` (`id`, `usageName`, `addTime`) VALUES
  111. (1, '送爱人/恋人', 1567955291),
  112. (2, '开业', 1567955291),
  113. (3, '婚庆', 1567955291),
  114. (4, '家养', 1567955291),
  115. (5, '生日', 1568038612),
  116. (6, '会议', 1568038612),
  117. (7, '送母亲', 1568038612),
  118. (8, '送老师', 1568038612),
  119. (9, '其它', 1568038612);
  120. DROP TABLE IF EXISTS xhAd;
  121. CREATE TABLE IF NOT EXISTS xhAd(
  122. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  123. `adName` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '广告名称',
  124. `merchantId` INT NOT NULL DEFAULT 0 COMMENT '商家id',
  125. `type` TINYINT NOT NULL DEFAULT 0 COMMENT '广告类型 0商城首页轮播图 1门店轮播图',
  126. `style` TINYINT NOT NULL DEFAULT 0 COMMENT '0 url 1商品id',
  127. `url` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '链接',
  128. `goodsId` INT NOT NULL DEFAULT 0 COMMENT '商品id',
  129. `startTime` INT NOT NULL DEFAULT 0 COMMENT '开始时间',
  130. `endTime` INT NOT NULL DEFAULT 0 COMMENT '结束时间,方便查询,永不过期 使用值4102416000即2100-01-01 00:00:00',
  131. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  132. )COMMENT='广告管理';
  133. ALTER TABLE xhAd ADD INDEX `merchantId`(`merchantId`,`endTime`);
  134. DROP TABLE IF EXISTS `xhCategoryRelate`;
  135. ALTER TABLE xhCategory ADD indexShow TINYINT NOT NULL DEFAULT 0 COMMENT '首页上显示 0不显示 1显示' AFTER categoryName;
  136. ALTER TABLE xhCategory ADD menuShow TINYINT NOT NULL DEFAULT 0 COMMENT '菜单显示 0不显示 1显示' AFTER `indexShow`;
  137. ALTER TABLE xhCategory ADD INDEX indexShow(merchantId,indexShow);
  138. ALTER TABLE xhCategory ADD INDEX menuShow(merchantId,menuShow);
  139. ALTER TABLE xhAd ADD adImg VARCHAR(800) NOT NULL DEFAULT '' COMMENT '广告图' AFTER adName;
  140. ALTER TABLE xhAd MODIFY endTime INT NOT NULL DEFAULT 0 COMMENT '结束时间;方便查询,永不过期情况,使用 开始值0 结束值4102416000即2100-01-01 00:00:00';
  141. ALTER TABLE xhGoodsCategory MODIFY `cId` INT NOT NULL DEFAULT 0 COMMENT '分类id';
  142. ALTER TABLE xhGoods DROP COLUMN `categoryId`;
  143. ALTER TABLE xhGoodsCategory ADD INDEX merchantId(merchantId);
  144. ALTER TABLE xhCategory DROP COLUMN `indexShow`;
  145. ALTER TABLE xhCategory DROP COLUMN `menuShow`;
  146. ALTER TABLE xhCategory ADD `status` TINYINT NOT NULL DEFAULT 0 COMMENT '状态 0停用1启用';
  147. ALTER TABLE xhCategory DROP INDEX `indexShow`;
  148. ALTER TABLE xhCategory DROP INDEX `menuShow`;
  149. ALTER TABLE xhCategory ADD INDEX merchantId(merchantId,`status`);
  150. ALTER TABLE xhGoodsCategory DROP INDEX merchantId;
  151. ALTER TABLE xhGoodsCategory ADD INDEX merchantId(merchantId,cId);
  152. ALTER TABLE xhGoods DROP COLUMN `cover`;
  153. ALTER TABLE xhGoods ADD sendType TINYINT NOT NULL DEFAULT 0 COMMENT '配送方式 0需要配送 1到店自提' AFTER sendArea;
  154. ALTER TABLE xhGoods ADD freightType TINYINT NOT NULL DEFAULT 0 COMMENT '运费计算方式,0按距离计算 1免运费' AFTER sendType;
  155. DROP TABLE IF EXISTS `xhCouponModel`;
  156. DROP TABLE IF EXISTS `xhCouponReward`;
  157. DROP TABLE IF EXISTS `xhCouponRight`;
  158. ALTER TABLE xhCoupon DROP COLUMN `type`;
  159. ALTER TABLE xhCoupon DROP COLUMN `property`;
  160. ALTER TABLE xhCoupon DROP COLUMN `fitType`;
  161. ALTER TABLE xhCoupon DROP COLUMN `rightId`;
  162. ALTER TABLE xhCoupon DROP COLUMN `modelId`;
  163. ALTER TABLE xhCoupon DROP COLUMN `reward`;
  164. ALTER TABLE xhCoupon DROP COLUMN `urlQrCode`;
  165. ALTER TABLE xhCoupon CHANGE howToGet getType TINYINT NOT NULL DEFAULT 0 COMMENT '获得优惠券的方式';
  166. ALTER TABLE xhCoupon DROP COLUMN `targetId`;
  167. ALTER TABLE xhCoupon MODIFY deadline INT NOT NULL DEFAULT 0 COMMENT '过期时间;值4102416000表示永不过期,即2100-01-01 00:00:00';
  168. ALTER TABLE xhCoupon ADD INDEX userId(userId,`status`);
  169. ALTER TABLE xhCoupon ADD INDEX merchantId(merchantId,`status`);";
  170. Yii::$app->db->createCommand($sql)->execute();
  171. $sql = "ALTER TABLE xhGoods CHANGE `style` `goodsStyle` TINYINT NOT NULL DEFAULT 0 COMMENT '商品款式 0单款式 1多款式';
  172. ALTER TABLE xhGoodsStyle CHANGE `order` `inTurn` INT NOT NULL DEFAULT 0 COMMENT '排序';
  173. ALTER TABLE xhGoodsStyle DROP COLUMN `softDel`;
  174. UPDATE xhUserAsset SET `discount`=1;
  175. ALTER TABLE xhUserAsset MODIFY discount FLOAT(3,2) NOT NULL DEFAULT 1.00 COMMENT '折扣';
  176. ALTER TABLE xhCoupon CHANGE `meetAmount` `miniCost` INT NOT NULL DEFAULT 0 COMMENT '最低消费金额,0表示任何情况下可用';
  177. ALTER TABLE xhShop CHANGE `businessName` `shopName` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '门店名称';
  178. ALTER TABLE xhShop CHANGE `branchName` `merchantName` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '商家名称';
  179. ALTER TABLE xhShop DROP COLUMN `poiId`;
  180. ALTER TABLE xhMerchantExtend ADD `freight` CHAR(10) NOT NULL DEFAULT '5_2' COMMENT '运费计算方式 5公里内免运费,超过每增加一公里+2' AFTER `alipayAccountName`;
  181. ALTER TABLE xhMerchantExtend DROP COLUMN `giveCoupon`;
  182. ALTER TABLE xhMerchantExtend DROP COLUMN `giveCouponPrice`;
  183. ALTER TABLE xhMerchantExtend DROP COLUMN `couponMeetPrice`;
  184. ALTER TABLE xhMerchantExtend DROP COLUMN `couponValidity`;
  185. ALTER TABLE xhMerchantExtend ADD newCouponSwitch TINYINT NOT NULL DEFAULT 1 COMMENT '新人送优惠券 0未开启 1开启' AFTER `freight`;
  186. ALTER TABLE xhMerchantExtend ADD newCouponAmount DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '新人优惠券金额' AFTER `newCouponSwitch`;
  187. ALTER TABLE xhMerchantExtend ADD newCouponMiniCost DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '新人优惠券最低消费金额' AFTER `newCouponAmount`;
  188. ALTER TABLE xhMerchantExtend ADD newCouponValidTime INT NOT NULL DEFAULT 0 COMMENT '新人优惠券有效期,时长为秒,0永不过期' AFTER `newCouponMiniCost`;
  189. ALTER TABLE xhGoods DROP COLUMN `isCharge`;
  190. ALTER TABLE xhGoods DROP COLUMN `sendArea`;
  191. ALTER TABLE xhGoods CHANGE `sendType` needSend TINYINT NOT NULL DEFAULT 0 COMMENT '是否要配送 0免配送 1需要配送';
  192. ALTER TABLE xhOrder CHANGE `needSend` `sendType` TINYINT NOT NULL DEFAULT 0 COMMENT '配送方式 0免配送 1自己送 2别人送';
  193. ALTER TABLE xhOrder MODIFY reachPeriod TINYINT NOT NULL DEFAULT 0 COMMENT '0上午1下午2晚上';
  194. ALTER TABLE xhOrder DROP COLUMN `blessing`;
  195. ALTER TABLE xhOrder ADD cardInfo VARCHAR(500) NOT NULL DEFAULT '' COMMENT '贺卡内容' AFTER `needCard`;
  196. ALTER TABLE xhOrder MODIFY `payWay` TINYINT NOT NULL DEFAULT 0 COMMENT '支付方式 0微信 1支付宝 2余额';
  197. ALTER TABLE xhOrderGoods CHANGE `multipleTitle` `goodsStyleName` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '款式名称';
  198. ALTER TABLE xhOrderGoods CHANGE `multiPriceId` `goodsStyleId` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '款式id';
  199. ALTER TABLE xhCoupon MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '状态 0未使用 1使用 2过期';
  200. ALTER TABLE xhOrder DROP COLUMN `luckyNum`;
  201. ALTER TABLE xhOrder DROP COLUMN `uniCode`;
  202. ALTER TABLE xhOrder DROP COLUMN `useType`;
  203. ALTER TABLE xhOrder MODIFY `payStatus` TINYINT NOT NULL DEFAULT 0 COMMENT '0待付款 1已付款';
  204. RENAME TABLE xhUserIntegral TO xhUserGrowth;
  205. ALTER TABLE xhUserGrowth CHANGE `integral` `growth` INT NOT NULL DEFAULT 0 COMMENT '当前成长值';
  206. ALTER TABLE xhUserGrowth MODIFY `num` INT NOT NULL DEFAULT 0 COMMENT '增加或减少的成长值';
  207. ALTER TABLE xhOrder DROP COLUMN `payStyle`;
  208. ALTER TABLE xhGoods MODIFY `status` TINYINT NOT NULL DEFAULT 1 COMMENT '商品状态 0下架 1正常';
  209. ALTER TABLE xhGoods DROP COLUMN `delStatus`;
  210. ALTER TABLE xhGoodsCategory ADD INDEX `gId`(`gId`);
  211. ALTER TABLE xhGoods ADD autoRise TINYINT NOT NULL DEFAULT 1 COMMENT '自动涨价 0不需要 1需要' AFTER `goodsStyle`;
  212. ALTER TABLE `xhGoodsStyle` CHANGE `title` `styleName` VARCHAR(30) NOT NULL DEFAULT '' COMMENT '款式名称';
  213. ALTER TABLE xhAd ADD `status` TINYINT NOT NULL DEFAULT 0 COMMENT '启用状态 0 未启用 1 启用' AFTER `adName`;
  214. ALTER TABLE xhAd ADD `inTurn` INT NOT NULL DEFAULT 0 COMMENT '排序' AFTER `status`;
  215. ALTER TABLE xhAd ADD `viewTimes` INT NOT NULL DEFAULT 0 COMMENT '点击次数' AFTER `adImg`;
  216. ALTER TABLE `xhAd` CHANGE `startTime` `startTime` DATETIME NULL COMMENT '开始时间', CHANGE `endTime` `endTime` DATETIME NULL COMMENT '结束时间';
  217. ALTER TABLE xhAd ADD `forever` TINYINT NOT NULL DEFAULT 0 COMMENT '永久有效:0 未启用 1 永久有效' AFTER `goodsId`;
  218. DROP TABLE IF EXISTS xhPic;
  219. CREATE TABLE IF NOT EXISTS xhPic(
  220. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  221. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  222. img VARCHAR(500) NOT NULL DEFAULT '' COMMENT '图片地址',
  223. price DECIMAL(9,2) NOT NULL DEFAULT 0.00 COMMENT '价格',
  224. `name` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '商品名称',
  225. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  226. )COMMENT='图库;商品图库';
  227. DROP TABLE IF EXISTS xhPicCategory;
  228. CREATE TABLE IF NOT EXISTS xhPicCategory(
  229. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  230. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  231. pictureId INT NOT NULL DEFAULT 0 COMMENT '图片id',
  232. categoryId INT NOT NULL DEFAULT 0 COMMENT '分类id'
  233. )COMMENT='商品图与分类关系';
  234. ALTER TABLE xhPic ADD inTurn INT NOT NULL DEFAULT 0 COMMENT '排序' AFTER `name`;
  235. ALTER TABLE xhPicCategory ADD inTurn INT NOT NULL DEFAULT 0 COMMENT '排序' AFTER categoryId;
  236. ALTER TABLE xhPicCategory CHANGE pictureId picId INT NOT NULL DEFAULT 0 COMMENT '图片id';
  237. ALTER TABLE xhGoodsCategory ADD `status` TINYINT NOT NULL DEFAULT 1 COMMENT '上下架状态 0下架 1正常' AFTER `merchantId`;
  238. ALTER TABLE xhCategory ADD goodsNum INT NOT NULL DEFAULT 0 COMMENT '商品数' AFTER `cover`;
  239. ALTER TABLE xhCategory ADD sold INT NOT NULL DEFAULT 0 COMMENT '销量' AFTER `goodsNum`;
  240. ALTER TABLE xhCategory CHANGE cover `img` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '分类图片';";
  241. Yii::$app->db->createCommand($sql)->execute();
  242. //商品设置 员工 角色
  243. $sql = "ALTER TABLE xhGoodsSetting DROP COLUMN `startRiseTime`;
  244. ALTER TABLE xhGoodsSetting DROP COLUMN `endRiseTime`;
  245. ALTER TABLE xhGoodsSetting CHANGE `goodSIntroduce` `goodsIntroduce` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '商品说明';
  246. ALTER TABLE xhGoodsSetting DROP COLUMN `createTime`;
  247. ALTER TABLE xhGoodsSetting DROP COLUMN `updateTime`;
  248. ALTER TABLE xhMerchantExtend DROP COLUMN `createTime`;
  249. ALTER TABLE xhMerchantExtend DROP COLUMN `updateTime`;
  250. ALTER TABLE xhGoodsSetting ADD riseSwitch TINYINT NOT NULL DEFAULT 1 COMMENT '自动涨价开关 1开启 0关闭' AFTER `merchantId`;
  251. ALTER TABLE xhAdmin DROP COLUMN `openId`;
  252. ALTER TABLE xhAdmin DROP COLUMN `unionId`;
  253. ALTER TABLE xhAdmin DROP COLUMN `subscribe`;
  254. ALTER TABLE xhAdmin DROP COLUMN `wxQrCode`;
  255. ALTER TABLE xhAdmin MODIFY `status` TINYINT NOT NULL DEFAULT 1 COMMENT '状态 0停用 1正常';
  256. ALTER TABLE xhAdmin ADD merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id' AFTER `roleId`;
  257. DROP TABLE IF EXISTS `xhAdminToMerchant`;
  258. ALTER TABLE xhAdmin ADD userId INT NOT NULL DEFAULT 0 COMMENT '员工关联的userId' AFTER merchantId;
  259. ALTER TABLE xhAdmin ADD `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间' AFTER `status`;
  260. ALTER TABLE xhAdmin DROP COLUMN `createTime`;
  261. ALTER TABLE xhAdmin DROP COLUMN `updateTime`;
  262. ALTER TABLE xhAdmin DROP COLUMN `province`;
  263. ALTER TABLE xhAdmin DROP COLUMN `city`;
  264. ALTER TABLE xhAdmin DROP COLUMN `dist`;
  265. ALTER TABLE xhAdmin DROP COLUMN `address`;
  266. ALTER TABLE xhAdmin DROP COLUMN `addLong`;
  267. ALTER TABLE xhAdmin DROP COLUMN `addLat`;
  268. ALTER TABLE xhAdmin DROP COLUMN `addPrecision`;
  269. ALTER TABLE xhAdmin ADD incomeNotice TINYINT NOT NULL DEFAULT 0 COMMENT '收入通知 0不需要 1需要' AFTER `currentShopId`;
  270. ALTER TABLE xhAdminRole ADD `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间' AFTER `merchantId`;
  271. ALTER TABLE xhAdminRole DROP COLUMN `createTime`;
  272. ALTER TABLE xhAdminRole DROP COLUMN `updateTime`;
  273. ALTER TABLE xhAdmin DROP COLUMN `avatar`;
  274. ALTER TABLE xhAdmin ADD loginTime INT NOT NULL DEFAULT 0 COMMENT '最后登陆时间' AFTER `status`;
  275. ALTER TABLE xhAdmin ADD `super` TINYINT NOT NULL DEFAULT 0 COMMENT '是否超级管理员 0不是 1是,超级员工不可删除' AFTER `sex`;
  276. ALTER TABLE xhAdminRole ADD `num` INT NOT NULL DEFAULT 0 COMMENT '成员数' AFTER `merchantId`;
  277. CREATE TABLE xhAdminLog(
  278. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  279. `ip` BIGINT NOT NULL DEFAULT 0 COMMENT 'ip地址',
  280. `merchantId` INT NOT NULL DEFAULT 0 COMMENT '商家id',
  281. `content` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '操作内容',
  282. adminId INT NOT NULL DEFAULT 0 COMMENT '员工id;管理员id',
  283. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  284. )COMMENT='员工操作日志';";
  285. Yii::$app->db->createCommand($sql)->execute();
  286. $sql = "ALTER TABLE xhCoupon MODIFY getType TINYINT NOT NULL DEFAULT 0 COMMENT '获取方式,0新人领券 1邀请领券';
  287. DROP TABLE IF EXISTS `xhCouponAsset`;
  288. CREATE TABLE IF NOT EXISTS `xhCouponAsset`(
  289. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  290. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  291. totalNum INT NOT NULL DEFAULT 0 COMMENT '优惠券总数',
  292. unUseNum INT NOT NULL DEFAULT 0 COMMENT '未使用数',
  293. useNum INT NOT NULL DEFAULT 0 COMMENT '已使用数',
  294. invalidNum INT NOT NULL DEFAULT 0 COMMENT '失效数',
  295. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  296. )COMMENT='优惠券资产与设置';
  297. DROP TABLE IF EXISTS `xhInvite`;
  298. CREATE TABLE IF NOT EXISTS `xhInvite`(
  299. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  300. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  301. `userName` varchar(50) NOT NULL DEFAULT '' COMMENT '邀请人的昵称',
  302. mobile VARCHAR(20) NOT NULL DEFAULT '' COMMENT '邀请人手机号',
  303. userId INT NOT NULL DEFAULT 0 COMMENT '受邀人',
  304. introUserId INT NOT NULL DEFAULT 0 COMMENT '介绍人',
  305. couponId INT NOT NULL DEFAULT 0 COMMENT '优惠券id',
  306. prize VARCHAR(50) NOT NULL DEFAULT '' COMMENT '介绍人的奖励',
  307. `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0待下单 1待兑奖 2已完成',
  308. orderTime INT NOT NULL DEFAULT 0 COMMENT '下单时间',
  309. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  310. )COMMENT='邀请有礼记录';
  311. DROP TABLE IF EXISTS xhInviteAsset;
  312. CREATE TABLE IF NOT EXISTS `xhInviteAsset`(
  313. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  314. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  315. switch TINYINT NOT NULL DEFAULT 1 COMMENT '是否开启邀请有礼 0关闭 1开启。默认开启',
  316. amount INT NOT NULL DEFAULT 0 COMMENT '新人领券金额',
  317. miniCost INT NOT NULL DEFAULT 0 COMMENT '最低消费',
  318. duration SMALLINT NOT NULL DEFAULT 0 COMMENT '有效时长,天数',
  319. prize VARCHAR(50) NOT NULL DEFAULT '' COMMENT '介绍人的奖励',
  320. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  321. )COMMENT='商家邀请有礼设置';
  322. DROP TABLE IF EXISTS `xhInviteStat`;
  323. CREATE TABLE IF NOT EXISTS `xhInviteStat`(
  324. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  325. userId INT NOT NULL DEFAULT 0 COMMENT '',
  326. inviteNum INT NOT NULL DEFAULT 0 COMMENT '邀请数',
  327. orderNum INT NOT NULL DEFAULT 0 COMMENT '下单数',
  328. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  329. )COMMENT='邀请统计';
  330. ALTER TABLE xhOrder ADD `grade` TINYINT NOT NULL DEFAULT 0 COMMENT '整体评分' AFTER `printStatus`;
  331. ALTER TABLE xhOrder ADD `gradeService` TINYINT NOT NULL DEFAULT 0 COMMENT '服务态度评分' AFTER `grade`;
  332. ALTER TABLE xhOrder ADD `gradeQuality` TINYINT NOT NULL DEFAULT 0 COMMENT '鲜花品质评分' AFTER `gradeService`;
  333. ALTER TABLE xhOrder ADD `gradeSend` TINYINT NOT NULL DEFAULT 0 COMMENT '配送服务评分' AFTER `gradeQuality`;
  334. ALTER TABLE xhOrder ADD `evaluate` VARCHAR(800) NOT NULL DEFAULT '' COMMENT '评语' AFTER `gradeSend`;";
  335. Yii::$app->db->createCommand($sql)->execute();
  336. $sql = "update xhMerchantExtend set gradeList='1_2000_0.9I2_5000_0.88I3_10000_0.85I4_20000_0.8';
  337. DROP TABLE IF EXISTS `xhAgentLevel`;
  338. CREATE TABLE IF NOT EXISTS xhAgentLevel(
  339. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  340. `name` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '代理名称',
  341. `commission` INT NOT NULL DEFAULT 0 COMMENT '佣金',
  342. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  343. )COMMENT='代理等级';
  344. DROP TABLE IF EXISTS `xhApply`;
  345. CREATE TABLE IF NOT EXISTS `xhApply`(
  346. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  347. `name` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '花店名称',
  348. `mobile` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '手机号',
  349. `userId` INT NOT NULL DEFAULT 0 COMMENT '花卉宝用户id',
  350. `oldId` INT NOT NULL DEFAULT 0 COMMENT '老花店id;介绍人',
  351. `fee` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '付费金额',
  352. `income` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '介绍费',
  353. `newId` INT NOT NULL DEFAULT 0 COMMENT '新花店id,0表示还没有审核通过',
  354. `longitude` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '花店经度',
  355. `latitude` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '花店纬度',
  356. `province` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '省',
  357. `city` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '市',
  358. `dist` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '区县',
  359. `address` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '详细街道地址',
  360. `floor` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '楼号门牌号',
  361. `fullAddress` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '地图中获取完整地址',
  362. `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0审核中 1试用中 2已付费 3已失效',
  363. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  364. )COMMENT='申请试用';
  365. ALTER TABLE xhWxScene MODIFY `type` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '场景类型 0刮刮卡 1邀请有礼领券';
  366. ALTER TABLE xhShop ADD `openTime` VARCHAR(30) NOT NULL DEFAULT '' COMMENT '营业时间' AFTER `telephone`;
  367. ALTER TABLE `xhAd` DROP INDEX `merchantId`;
  368. ALTER TABLE `xhAd` ADD INDEX `merchantId`(`merchantId`,`type`);
  369. ALTER TABLE `xhAd` ADD INDEX `multiple`(`merchantId`,`type`,`status`,`startTime`,`endTime`);
  370. DELETE FROM `xhAd`;
  371. ALTER TABLE `xhAd` MODIFY `startTime` INT NOT NULL DEFAULT 0 COMMENT '开始时间';
  372. ALTER TABLE `xhAd` MODIFY `endTime` INT NOT NULL DEFAULT 0 COMMENT '结束时间;方便查询,永不过期情况,使用 开始值0 结束值4102416000即2100-01-01 00:00:00';
  373. ALTER TABLE `xhAd` DROP COLUMN `forever`;
  374. ALTER TABLE xhShop MODIFY shopAddress VARCHAR(200) NOT NULL DEFAULT '' COMMENT '街道地址';
  375. ALTER TABLE xhShop ADD shopFullAddress VARCHAR(500) NOT NULL DEFAULT '' COMMENT '完整地址' AFTER shopAddress;
  376. ALTER TABLE xhShop DROP COLUMN `status`;
  377. DROP TABLE IF EXISTS `xhOrderSend`;
  378. CREATE TABLE IF NOT EXISTS `xhOrderSend`(
  379. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  380. `orderId` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '订单号',
  381. `actionId` TINYINT NOT NULL DEFAULT 0 COMMENT '动作id',
  382. `option` TINYINT NOT NULL DEFAULT 0 COMMENT '动作的选项',
  383. finishTime INT NOT NULL DEFAULT 0 COMMENT '完成时间',
  384. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  385. )COMMENT='发货管理';
  386. ALTER TABLE xhOrderSend ADD inTurn INT NOT NULL DEFAULT 0 COMMENT '排序' AFTER `finishTime`;
  387. ALTER TABLE xhOrderSend MODIFY `orderId` CHAR(32) NOT NULL DEFAULT '' COMMENT '订单号';
  388. ALTER TABLE xhOrderGoods MODIFY `orderId` CHAR(32) NOT NULL DEFAULT '' COMMENT '订单号';
  389. ALTER TABLE xhOrder MODIFY `id` CHAR(32) NOT NULL DEFAULT '' COMMENT '订单号';";
  390. Yii::$app->db->createCommand($sql)->execute();
  391. $sql = "ALTER TABLE xhOrder ADD totalFlow TINYINT NOT NULL DEFAULT 5 COMMENT '总流程数' AFTER `evaluate`;
  392. ALTER TABLE xhOrder ADD currentFlow TINYINT NOT NULL DEFAULT 0 COMMENT '当前流程数' AFTER `totalFlow`;
  393. UPDATE xhOrder SET totalFlow=5,currentFlow=5;
  394. ALTER TABLE `xhOrder` DROP PRIMARY KEY;
  395. ALTER TABLE `xhOrder` DROP INDEX `id`;
  396. ALTER TABLE `xhOrder` CHANGE `id` `orderSn` CHAR(32) NOT NULL DEFAULT '' COMMENT '订单编号';
  397. ALTER TABLE `xhOrder` ADD `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增id' FIRST;
  398. ALTER TABLE `xhOrder` AUTO_INCREMENT=213800;
  399. UPDATE `xhOrder` SET id=id+213800;
  400. DELETE FROM `xhOrderSend`;
  401. ALTER TABLE `xhOrderSend` MODIFY `orderId` INT NOT NULL DEFAULT 0 COMMENT '订单id';
  402. ALTER TABLE xhCoupon MODIFY `orderId` INT NOT NULL DEFAULT 0 COMMENT '优惠券使用的订单id';
  403. ALTER TABLE xhCoupon CHANGE `getType` `source` TINYINT NOT NULL DEFAULT 0 COMMENT '来源 0新人领券 1邀请有礼领取';
  404. ALTER TABLE xhCoupon ADD sourceId INT NOT NULL DEFAULT 0 COMMENT '来源目标id' AFTER `source`;
  405. ALTER TABLE xhInvite ADD introMobile VARCHAR(15) NOT NULL DEFAULT '' COMMENT '介绍人手机;邀请人手机' AFTER `introUserId`;
  406. ALTER TABLE `xhCoupon` DROP COLUMN `introUserId`;
  407. ALTER TABLE xhInvite ADD introUserName VARCHAR(30) NOT NULL DEFAULT '' COMMENT '邀请人昵称' AFTER `userId`;
  408. RENAME TABLE xhGuaGua TO xhGgk;
  409. RENAME TABLE xhGuaGuaAttend TO xhGgkAttend;
  410. RENAME TABLE xhGuaGuaPrize TO xhGgkPrize;
  411. RENAME TABLE xhGuaGuaWin TO xhGgkWin;
  412. ALTER TABLE xhOrder CHANGE `modPriceStatus` `modPrice` TINYINT NOT NULL DEFAULT 1 COMMENT '0不能修改价格 1可以修改';
  413. ALTER TABLE xhOrder DROP COLUMN `getCouponQrCode`;
  414. ALTER TABLE xhOrder MODIFY `orderSn` CHAR(40) NOT NULL DEFAULT '' COMMENT '订单编号';
  415. ALTER TABLE xhOrder MODIFY `receiveAddress` VARCHAR(300) NOT NULL DEFAULT '' COMMENT '收货地址 详细街道地址';
  416. ALTER TABLE xhOrder MODIFY `receiveFullAddress` VARCHAR(400) NOT NULL DEFAULT '' COMMENT '完整收货地址';
  417. ALTER TABLE xhOrder MODIFY `receiveFloor` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '收货地址 楼号门牌号' AFTER `receiveAddress`;
  418. ALTER TABLE xhOrder MODIFY `sendType` TINYINT NOT NULL DEFAULT 0 COMMENT '配送方式 0免配送 1自己送 2别人送,快递送';
  419. ALTER TABLE xhOrder ADD `sendSide` TINYINT NOT NULL DEFAULT 0 COMMENT '配送方 0没有 1达达' AFTER `sendType`;
  420. ALTER TABLE xhOrder MODIFY `sendStatus` TINYINT NOT NULL DEFAULT 0 COMMENT '配送状态:0未发货,待接单 1已发货,已接单 2已送达' AFTER `sendSide`;";
  421. Yii::$app->db->createCommand($sql)->execute();
  422. $sql = "ALTER TABLE xhOrder ADD `reachDate` DATE DEFAULT NULL COMMENT '客户要求送到的日期' AFTER `sendDistance`;
  423. ALTER TABLE xhOrder DROP COLUMN `reachTime`;
  424. ALTER TABLE xhOrder MODIFY `reachPeriod` TINYINT NOT NULL DEFAULT 0 COMMENT '客户要求送到的时段:0上午1下午2晚上';
  425. ALTER TABLE xhOrder ADD sendTip DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '运费里增加的小费' AFTER `sendCost`;
  426. ALTER TABLE xhOrder MODIFY currentFlow TINYINT NOT NULL DEFAULT 0 COMMENT '完成流程数;当前流程数';
  427. drop table if exists `xhStatIncomeUsage`;
  428. CREATE TABLE if not exists `xhStatIncomeUsage` (
  429. `id` int(11) NOT NULL auto_increment primary key,
  430. `merchantId` int(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  431. `shopId` int not null default 0 comment '门店id,0表示商家所有门店',
  432. `time` int(11) NOT NULL DEFAULT '0' COMMENT '时间',
  433. `usageId` tinyint(4) NOT NULL DEFAULT '0' COMMENT '用途id;UsageRelation id',
  434. `amount` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '收入金额',
  435. `weixin` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '微信收入',
  436. `alipay` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '支付宝收入',
  437. `balancePay` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '余额付款收入',
  438. `cash` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '现金收入',
  439. `totalAmount` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '总收入金额',
  440. `addTime` int(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  441. ) COMMENT='按用途统计每天收入';
  442. drop table if exists `xhStatIncomeUsageMonth`;
  443. CREATE TABLE if not exists `xhStatIncomeUsageMonth` (
  444. `id` int(11) NOT NULL auto_increment primary key,
  445. `year` smallint(6) NOT NULL DEFAULT '0' COMMENT '年',
  446. `month` tinyint(4) NOT NULL DEFAULT '1' COMMENT '月份',
  447. `usageId` tinyint(4) NOT NULL DEFAULT '0' COMMENT '用途id',
  448. `amount` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '收入金额',
  449. `weixin` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '微信收入',
  450. `alipay` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '支付宝收入',
  451. `balancePay` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '余额付款收入',
  452. `cash` decimal(9,2) NOT NULL DEFAULT '0.00' COMMENT '现金收入',
  453. `merchantId` int(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  454. `shopId` int not null default 0 comment '门店id,0表示商家所有门店',
  455. `addTime` int(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT '添加时间'
  456. ) COMMENT='按用途统计每月收入';
  457. ALTER TABLE `xhMerchantCapital` MODIFY shopId INT NOT NULL DEFAULT 0 COMMENT '0表示商家所有门店';
  458. ALTER TABLE `xhOrder` ADD `classify` TINYINT NOT NULL DEFAULT 0 COMMENT '是否归类 0未归类 1已归类' AFTER `usageId`;
  459. ALTER TABLE xhUsage ADD `inTurn` INT NOT NULL DEFAULT 0 COMMENT '排序' AFTER `usageName`;
  460. ALTER TABLE `xhInvite` ADD amount DECIMAL(9,2) NOT NULL DEFAULT 0.00 COMMENT '下单金额' AFTER `couponId`;
  461. ALTER TABLE `xhInvite` ADD giveTime INT NOT NULL DEFAULT 0 COMMENT '兑奖时间' AFTER `orderTime`;";
  462. Yii::$app->db->createCommand($sql)->execute();
  463. $sql = "DROP TABLE IF EXISTS `xhCouponAsset`;
  464. CREATE TABLE IF NOT EXISTS `xhCouponAsset`(
  465. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  466. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  467. `switch` TINYINT(4) NOT NULL DEFAULT '1' COMMENT '是否开启邀请有礼 0关闭 1开启。默认开启',
  468. `amount` INT(11) NOT NULL DEFAULT '0' COMMENT '新人领券金额',
  469. `miniCost` INT(11) NOT NULL DEFAULT '0' COMMENT '最低消费',
  470. `duration` SMALLINT(6) NOT NULL DEFAULT '0' COMMENT '有效时长,天数',
  471. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  472. )COMMENT='新人优惠券资产';
  473. ALTER TABLE `xhWxMenu` MODIFY `replyType` TINYINT NOT NULL DEFAULT 0 COMMENT '回复给粉丝的类型 0跳转链接 1文字 2单图文';
  474. ALTER TABLE `xhWxMenu` DROP COLUMN `targetId`;
  475. ALTER TABLE `xhWxMenu` ADD targetId INT NOT NULL DEFAULT 0 COMMENT '常用链接的目标id,活动目标id' AFTER `hasSonMenu`;
  476. CREATE TABLE `xhUserRemark`(
  477. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  478. userId INT NOT NULL DEFAULT 0 COMMENT '用户id',
  479. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  480. remark VARCHAR(200) NOT NULL DEFAULT '' COMMENT '备注',
  481. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  482. )COMMENT='用户备注';
  483. ALTER TABLE `xhUserRemark` ADD INDEX `userId`(`userId`);
  484. RENAME TABLE xhUserRemark TO xhMerchantRemark;
  485. RENAME TABLE `xhStatOrderByDay` TO `xhStatOrder`;
  486. RENAME TABLE `xhStatOrderSourceByDay` TO `xhStatOrderSource`;
  487. RENAME TABLE `xhStatUserByDay` TO `xhStatUser`;
  488. RENAME TABLE `xhStatViewByDay` TO `xhStatView`;
  489. RENAME TABLE `xhStatViewSourceByDay` TO `xhStatViewSource`;
  490. RENAME TABLE `xhStatVisitByDay` TO `xhStatVisit`;
  491. RENAME TABLE `xhStatOutDay` TO `xhStatOut`;
  492. RENAME TABLE `xhStatInDay` TO `xhStatIn`;
  493. RENAME TABLE `xhStatDealByDay` TO `xhStatDeal`;
  494. DROP TABLE IF EXISTS `xhStatDeal`;
  495. DROP TABLE IF EXISTS `xhStatView`;
  496. DROP TABLE IF EXISTS `xhStatViewSource`;
  497. DROP TABLE IF EXISTS `xhStatVisit`;
  498. RENAME TABLE `xhVisitByDay` TO `xhStatVisit`;
  499. RENAME TABLE `xhVisitByMonth` TO `xhStatVisitMonth`;
  500. DROP TABLE IF EXISTS `xhMerchantOutCapital`;
  501. DROP TABLE IF EXISTS `xhMerchantInCapital`;
  502. DROP TABLE IF EXISTS `xhStatOrder`;
  503. RENAME TABLE `xhOrderDayNum` TO `xhStatOrder`;
  504. RENAME TABLE `xhOrderMonthNum` TO `xhStatOrderMonth`;
  505. RENAME TABLE `xhLuckyDrawActivity` TO `xhDraw`;
  506. RENAME TABLE `xhLuckyDrawAward` TO `xhDrawPrize`;
  507. RENAME TABLE `xhLuckyDrawAwardCustomer` TO `xhDrawWin`;
  508. RENAME TABLE `xhLuckyDrawAwardParticipant` TO `xhDrawRecord`;
  509. RENAME TABLE `xhDrawCash` TO `xhWithdraw`;
  510. RENAME TABLE `xhActive` TO `xhAct`;
  511. RENAME TABLE `xhActiveOrder` TO `xhActOrder`;
  512. RENAME TABLE `xhActiveTicketClass` TO `xhActTicket`;";
  513. Yii::$app->db->createCommand($sql)->execute();
  514. $sql = "ALTER TABLE `xhMerchantAsset` MODIFY `totalOrder` INT NOT NULL DEFAULT 0 COMMENT '订单数;已付款订单数';
  515. ALTER TABLE `xhMerchantAsset` ADD cancelOrder INT NOT NULL DEFAULT 0 COMMENT '已取消订单数' AFTER `totalOrder`;
  516. ALTER TABLE `xhMerchantAsset` ADD unNoticeOrder INT NOT NULL DEFAULT 0 COMMENT '待通知订单数' AFTER `totalOrder`;
  517. ALTER TABLE `xhMerchantAsset` ADD sendingOrder INT NOT NULL DEFAULT 0 COMMENT '配送中订单数' AFTER `totalOrder`;
  518. ALTER TABLE `xhMerchantAsset` ADD unSendOrder INT NOT NULL DEFAULT 0 COMMENT '待配送订单数' AFTER `totalOrder`;
  519. ALTER TABLE `xhMerchantAsset` ADD unPayOrder INT NOT NULL DEFAULT 0 COMMENT '待付款订单数' AFTER `totalOrder`;
  520. ALTER TABLE `xhMerchantAsset` ADD finishOrder INT NOT NULL DEFAULT 0 COMMENT '完成订单数' AFTER `totalOrder`;
  521. ALTER TABLE `xhMerchantAsset` CHANGE `remainMsgNum` `remainSmsNum` INT NOT NULL DEFAULT 0 COMMENT '剩余短信数';
  522. ALTER TABLE `xhMerchantAsset` MODIFY `totalUser` INT NOT NULL DEFAULT 0 COMMENT '总用户;总客户数';
  523. ALTER TABLE `xhMerchantAsset` ADD unClassifyOrder INT NOT NULL DEFAULT 0 COMMENT '待归类订单' AFTER `totalOrder`;
  524. ALTER TABLE `xhMerchantAsset` MODIFY `totalOrder` INT NOT NULL DEFAULT 0 COMMENT '订单总数,包括所有的';
  525. ALTER TABLE `xhMerchantAsset` ADD `payOrder` INT NOT NULL DEFAULT 0 COMMENT '付款订单数' AFTER `totalOrder`;
  526. ALTER TABLE `xhMerchant` ADD `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间' AFTER `status`;
  527. ALTER TABLE `xhAdmin` ADD `avatar` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '头像' AFTER `adminName`;";
  528. Yii::$app->db->createCommand($sql)->execute();
  529. $sql = "ALTER TABLE `xhMerchant` MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '商家状态 0待审 1审核通过,取消冻结,正常 2审核未通过 3冻结 4过期';
  530. ALTER TABLE `xhMerchantExtend` ADD miniVersion INT NOT NULL DEFAULT 0 COMMENT '小程序当前版本' AFTER `miniRefreshToken`;
  531. DROP TABLE IF EXISTS `xhMiniUpgrade`;
  532. CREATE TABLE `xhMiniUpgrade`(
  533. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  534. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  535. `version` INT NOT NULL DEFAULT 0 COMMENT '提交版本号',
  536. `submitTime` INT NOT NULL DEFAULT 0 COMMENT '提交时间',
  537. `checkTime` INT NOT NULL DEFAULT 0 COMMENT '审核时间',
  538. `checkReturn` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '审核结果返回的信息',
  539. `remark` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '备注',
  540. `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0待审核 1审核通过 2审核未通过',
  541. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  542. )COMMENT='小程序升级记录';
  543. DROP TABLE IF EXISTS `xhApplyOrder`;
  544. RENAME TABLE `xhOpenRenewOrder` TO `xhRenewAccount`;
  545. ALTER TABLE `xhApply` ADD remark VARCHAR(500) NOT NULL DEFAULT '' COMMENT '审核时添加的备注' AFTER `fullAddress`;
  546. ALTER TABLE `xhApply` MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0审核中 1审核通过、试用中 2审核未通过 3已付费 4试用到期失效';
  547. ALTER TABLE `xhMiniUpgrade` MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0待审核 1审核通过,待上线 2审核未通过 3已上线';
  548. ALTER TABLE `xhMiniUpgrade` ADD `onTime` INT NOT NULL DEFAULT 0 COMMENT '上线时间' AFTER `version`;
  549. ALTER TABLE `xhMiniUpgrade` MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0待审核 1待上线 2已上线 3审核未通过';
  550. RENAME TABLE `xhRenewAccount` TO `xhRenew`;
  551. ALTER TABLE `xhRenew` DROP COLUMN `dealStatus`;
  552. ALTER TABLE `xhRenew` MODIFY `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0 待付款 1已付款';
  553. ALTER TABLE `xhRenew` DROP COLUMN `orderStyle`;
  554. ALTER TABLE `xhRenew` ADD setId SMALLINT NOT NULL DEFAULT 0 COMMENT '套餐id' AFTER `remark`;
  555. ALTER TABLE xhMerchantAsset DROP `totalWeixinFans`;
  556. ALTER TABLE xhMerchantAsset CHANGE `unClassifyOrder` `unClassOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '待归类订单';
  557. ALTER TABLE xhMerchantAsset CHANGE `totalUseRecharge` `usedRecharge` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '余额消费数;充值金额消耗数';
  558. DROP TABLE IF EXISTS `xhRetailAsset`;
  559. CREATE TABLE IF NOT EXISTS `xhRetailAsset` (
  560. `id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  561. `totalVisit` INT(11) NOT NULL DEFAULT '0' COMMENT '总访问量',
  562. `totalUser` INT(11) NOT NULL DEFAULT '0' COMMENT '总用户;总客户数',
  563. `totalMember` INT(11) NOT NULL DEFAULT '0' COMMENT '总会员',
  564. `totalFans` INT(11) NOT NULL DEFAULT '0' COMMENT '总粉丝',
  565. `totalIntegral` INT(11) NOT NULL DEFAULT '0' COMMENT '总积分',
  566. `totalGoods` INT(11) NOT NULL DEFAULT '0' COMMENT '总计商品数量',
  567. `totalRecharge` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '累计给用户充值金额',
  568. `usedRecharge` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '余额消费数;充值金额消耗数',
  569. `totalOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '订单总数,包括所有的',
  570. `payOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '付款订单数',
  571. `unClassOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '待归类订单',
  572. `finishOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '完成订单数',
  573. `unPayOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '待付款订单数',
  574. `unSendOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '待配送订单数',
  575. `sendingOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '配送中订单数',
  576. `unNoticeOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '待通知订单数',
  577. `cancelOrder` INT(11) NOT NULL DEFAULT '0' COMMENT '已取消订单数',
  578. `totalIncome` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '累计收入',
  579. `totalExpend` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '累计消费',
  580. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  581. ) COMMENT='平台零售业资产';";
  582. Yii::$app->db->createCommand($sql)->execute();
  583. $sql = "ALTER TABLE `xhRetailAsset` ADD onGoods INT NOT NULL DEFAULT 0 COMMENT '上架商品数' AFTER `totalGoods`;
  584. ALTER TABLE `xhRetailAsset` ADD offGoods INT NOT NULL DEFAULT 0 COMMENT '下架商品数' AFTER `totalGoods`;
  585. ALTER TABLE `xhMerchantAsset` ADD onGoods INT NOT NULL DEFAULT 0 COMMENT '上架商品数' AFTER `totalGoods`;
  586. ALTER TABLE `xhMerchantAsset` ADD offGoods INT NOT NULL DEFAULT 0 COMMENT '下架商品数' AFTER `totalGoods`;
  587. drop table if exists `xhFest`;
  588. CREATE TABLE if not exists `xhFest` (
  589. `id` int(11) NOT NULL AUTO_INCREMENT,
  590. `name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '节日名称',
  591. `month` tinyint(4) NOT NULL DEFAULT '1' COMMENT '月份',
  592. `day` tinyint(4) NOT NULL DEFAULT '1' COMMENT '日期',
  593. `inTurn` int(11) NOT NULL DEFAULT '0' COMMENT '排序',
  594. PRIMARY KEY (`id`)
  595. ) COMMENT='节日';
  596. drop table if exists `xhFestRise`;
  597. CREATE TABLE `xhFestRise` (
  598. `id` int(11) NOT NULL AUTO_INCREMENT,
  599. `merchantId` int(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  600. `festId` int(11) NOT NULL DEFAULT '0' COMMENT '节日',
  601. PRIMARY KEY (`id`)
  602. ) COMMENT='涨价节日';
  603. ALTER TABLE `xhSetMeal` ADD num INT NOT NULL DEFAULT 0 COMMENT '花店数量' AFTER `price`;
  604. ALTER TABLE `xhSetMeal` DROP COLUMN `manageStyle`;";
  605. Yii::$app->db->createCommand($sql)->execute();
  606. $sql = "ALTER TABLE `xhApply` ADD UNIQUE INDEX `mobile`(`mobile`);
  607. ALTER TABLE `xhRenew` ADD `orderSn` CHAR(30) NOT NULL DEFAULT '' COMMENT '订单编号' AFTER `id`;
  608. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `roleId`;
  609. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `province`;
  610. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `city`;
  611. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `dist`;
  612. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `address`;
  613. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `latitude`;
  614. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `longitude`;
  615. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `precision`;
  616. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `openId`;
  617. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `merchantId`;
  618. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `userId`;
  619. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `wxOpenId`;
  620. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `unionId`;
  621. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `subscribe`;
  622. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `createTime`;
  623. ALTER TABLE `xhWxOpenAdmin` DROP COLUMN `updateTime`;
  624. ALTER TABLE `xhWxOpenAdmin` ADD `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间' AFTER `status`;
  625. ALTER TABLE `xhWxOpenAdmin` MODIFY `status` TINYINT NOT NULL DEFAULT 1 COMMENT '状态 0冻结 1正常';
  626. ALTER TABLE `xhRenew` DROP COLUMN `payStyle`;
  627. ALTER TABLE `xhRenew` MODIFY `merchantId` INT NOT NULL DEFAULT 0 COMMENT '续费的商家';
  628. ALTER TABLE xhRenew MODIFY `payWay` TINYINT NOT NULL DEFAULT 0 COMMENT '支付方式 0微信 1支付宝 2余额';
  629. DROP TABLE IF EXISTS `xhRenew`;
  630. CREATE TABLE IF NOT EXISTS `xhRenew` (
  631. `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增id',
  632. `orderSn` CHAR(30) NOT NULL DEFAULT '' COMMENT '订单编号',
  633. `payWay` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '支付方式 0微信 1支付宝 2余额',
  634. `payCode` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '支付返回号',
  635. `prePrice` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '应付款,原价,未修改价格,打折前',
  636. `actPrice` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '实际付款,实价,修改后价格,打折后',
  637. `userId` INT(11) NOT NULL DEFAULT '0' COMMENT '用户id',
  638. `alipayId` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '支付宝用户id',
  639. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '续费的商家',
  640. `remark` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '备注',
  641. `setId` SMALLINT(6) NOT NULL DEFAULT '0' COMMENT '套餐id',
  642. `beforeDeadline` INT(11) NOT NULL DEFAULT '0' COMMENT '之前到期时间',
  643. `deadline` INT(11) NOT NULL DEFAULT '0' COMMENT '续费后到期时间',
  644. `status` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '0 待付款 1已付款',
  645. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间,时间戳格式'
  646. ) COMMENT='开通续费订单';
  647. ALTER TABLE `xhCouponAsset` ADD `totalNum` INT NOT NULL DEFAULT 0 COMMENT '全部优惠券数' AFTER `duration`;
  648. ALTER TABLE `xhCouponAsset` ADD `unUseNum` INT NOT NULL DEFAULT 0 COMMENT '待使用数' AFTER `totalNum`;
  649. ALTER TABLE `xhCouponAsset` ADD `useNum` INT NOT NULL DEFAULT 0 COMMENT '已使用数' AFTER `unUseNum`;
  650. ALTER TABLE `xhCouponAsset` ADD `invalidNum` INT NOT NULL DEFAULT 0 COMMENT '已失效数' AFTER `useNum`;
  651. ALTER TABLE `xhOrder` MODIFY `sourceType` TINYINT NOT NULL DEFAULT 0 COMMENT '订单来源,0商城 1门店 2微信朋友圈 3美团';";
  652. Yii::$app->db->createCommand($sql)->execute();
  653. $sql = "ALTER TABLE `xhAdmin` ADD platUserId INT NOT NULL DEFAULT 0 COMMENT '管理员对应的花卉宝id' AFTER `userId`;
  654. ALTER TABLE `xhAdmin` ADD openId VARCHAR(100) NOT NULL DEFAULT '' COMMENT '管理员对应商家公众号openId' AFTER `userId`;
  655. ALTER TABLE `xhAdmin` DROP COLUMN `openId`;
  656. ALTER TABLE `xhAdmin` ADD `delStatus` TINYINT NOT NULL DEFAULT 0 COMMENT '软删除标识 0未删除 1已删除' AFTER `super`;
  657. ALTER TABLE `xhAdmin` CHANGE `incomeNotice` `remind` TINYINT NOT NULL DEFAULT 0 COMMENT '动态提醒 0不需要 1需要';
  658. ALTER TABLE `xhAdmin` ADD remark VARCHAR(500) NOT NULL DEFAULT '' COMMENT '员工备注' AFTER `remind`;
  659. ALTER TABLE `xhApply` MODIFY `userId` INT NOT NULL DEFAULT 0 COMMENT '邀请花店的用户id,没有邀请花店,刚是平台花卉宝的用户';
  660. DROP TABLE IF EXISTS `xhAgentAsset`;
  661. CREATE TABLE IF NOT EXISTS `xhAgentAsset`(
  662. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  663. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  664. inviteNum INT NOT NULL DEFAULT 0 COMMENT '邀请花店数',
  665. payNum INT NOT NULL DEFAULT 0 COMMENT '付费花店数',
  666. income DECIMAL(9,2) NOT NULL DEFAULT 0.00 COMMENT '累计收益',
  667. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  668. )COMMENT='我的代理资产';
  669. ALTER TABLE `xhRecharge` DROP PRIMARY KEY;
  670. ALTER TABLE `xhRecharge` CHANGE `id` `sn` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '编号';
  671. ALTER TABLE `xhRecharge` ADD id INT NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST;
  672. truncate `xhRecharge`;
  673. ALTER TABLE `xhRecharge` AUTO_INCREMENT=135790;
  674. ALTER TABLE `xhRecharge` DROP COLUMN `createTime`;
  675. ALTER TABLE `xhRecharge` DROP COLUMN `updateTime`;";
  676. Yii::$app->db->createCommand($sql)->execute();
  677. $sql = "ALTER TABLE `xhUserAsset` MODIFY `memberLevel` SMALLINT NOT NULL DEFAULT -1 COMMENT '会员等级 -1普通用户 0普通会员,登记了手机号 1 一级会员';
  678. ALTER TABLE `xhUserAsset` CHANGE `memberLevel` `member` SMALLINT NOT NULL DEFAULT -1 COMMENT '会员等级 -1普通用户 0普通会员,登记了手机号 1 一级会员';
  679. ALTER TABLE `xhUserAsset` DROP COLUMN `isMember`;
  680. ALTER TABLE `xhUser` DROP COLUMN `isMember`;
  681. ALTER TABLE `xhUser` ADD `member` SMALLINT NOT NULL DEFAULT -1 COMMENT '会员等级 -1普通用户 0普通会员,登记了手机号 1 一级会员' AFTER `source`;
  682. ALTER TABLE `xhGoods` ADD delStatus TINYINT NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1删除' AFTER `riseAmount`;
  683. ALTER TABLE `xhGoodsCategory` ADD delStatus TINYINT NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除' AFTER `merchantId`;
  684. DROP TABLE IF EXISTS `xhStatIn`;
  685. DROP TABLE IF EXISTS `xhStatInMonth`;
  686. ALTER TABLE `xhStatIncomeCategoryMonth` ADD `time` INT NOT NULL DEFAULT 0 COMMENT '月份' AFTER `id`;
  687. ALTER TABLE `xhStatIncomeMonth` ADD `time` INT NOT NULL DEFAULT 0 COMMENT '月份' AFTER `id`;
  688. ALTER TABLE `xhStatIncomeSourceMonth` ADD `time` INT NOT NULL DEFAULT 0 COMMENT '月份' AFTER `id`;
  689. ALTER TABLE `xhStatIncomeUsageMonth` ADD `time` INT NOT NULL DEFAULT 0 COMMENT '月份' AFTER `id`;
  690. ALTER TABLE `xhStatOrderMonth` ADD `time` INT NOT NULL DEFAULT 0 COMMENT '月份' AFTER `id`;
  691. ALTER TABLE `xhStatOutMonth` ADD `time` INT NOT NULL DEFAULT 0 COMMENT '月份' AFTER `id`;
  692. ALTER TABLE `xhStatVisitMonth` ADD `time` INT NOT NULL DEFAULT 0 COMMENT '月份' AFTER `id`;
  693. DROP TABLE IF EXISTS `xhStatOrderSource`;
  694. CREATE TABLE `xhStatUserMonth` (
  695. `id` INT(11) NOT NULL AUTO_INCREMENT,
  696. `time` INT(11) NOT NULL DEFAULT '0' COMMENT '月份',
  697. `riseFansNum` INT(11) NOT NULL DEFAULT '0' COMMENT '增减粉丝数,负数表示减',
  698. `totalFansNum` INT(11) NOT NULL DEFAULT '0' COMMENT '当前粉丝总数',
  699. `riseMemberNum` INT(11) NOT NULL DEFAULT '0' COMMENT '增加会员数',
  700. `totalMemberNum` INT(11) NOT NULL DEFAULT '0' COMMENT '当前会员总数',
  701. `riseUserNum` INT(11) NOT NULL DEFAULT '0' COMMENT '访客数',
  702. `totalUserNum` INT(11) NOT NULL DEFAULT '0' COMMENT '当前访客总数',
  703. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  704. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间',
  705. PRIMARY KEY (`id`)
  706. ) COMMENT='客户月度统计';
  707. RENAME TABLE `xhWxOpenAdmin` TO `xhStaff`;
  708. ALTER TABLE `xhMerchantCapital` MODIFY `capitalType` TINYINT NOT NULL DEFAULT 0 COMMENT '流水类型';
  709. ALTER TABLE `xhMerchantCapital` MODIFY `payWay` TINYINT NOT NULL DEFAULT 0 COMMENT '付款方式;支付方式';
  710. ALTER TABLE `xhMerchantCapital` MODIFY `sourceType` TINYINT NOT NULL DEFAULT 0 COMMENT '来源';
  711. ALTER TABLE `xhMerchantCapital` MODIFY `io` TINYINT NOT NULL DEFAULT 0 COMMENT '收支类型 0支出 1收入';";
  712. Yii::$app->db->createCommand($sql)->execute();
  713. $sql = "ALTER TABLE `xhMerchant` ADD `deadline` INT NOT NULL DEFAULT 0 COMMENT '帐号过期时间' AFTER `status`;UPDATE `xhMerchant` SET `deadline`=1607589778;";
  714. Yii::$app->db->createCommand($sql)->execute();
  715. //导入省市区
  716. $root = dirUtil::getRootDir();
  717. $sql = file_get_contents($root . '/region.sql');
  718. Yii::$app->db->createCommand($sql)->execute();
  719. //将订单商品表的订单id换成自增id
  720. $orderGoods = OrderGoodsService::getAllByCondition([], null, '*');
  721. if (!empty($orderGoods)) {
  722. $ids = array_column($orderGoods, 'orderId');
  723. $orderList = OrderService::getAllByCondition(['orderSn' => ['in', $ids]], null, '*', 'orderSn');
  724. foreach ($orderList as $orderSn => $val) {
  725. $id = $val['id'];
  726. OrderGoodsService::updateByCondition(['orderId' => $orderSn], ['orderId' => $id]);
  727. }
  728. }
  729. $sql = "alter table `xhOrderGoods` modify orderId int not null default 0 comment '订单id';";
  730. Yii::$app->db->createCommand($sql)->execute();
  731. //商品多款式同步
  732. $goodsList = GoodsService::getAllByCondition([], null, '*');
  733. if (!empty($goodsList)) {
  734. foreach ($goodsList as $goods) {
  735. $multiPrice = $goods['multiPrice'];
  736. if (!empty($multiPrice)) {
  737. $currentIds = explode(',', trim($multiPrice));
  738. if (!empty($currentIds)) {
  739. $currentIds = array_filter(array_unique($currentIds));
  740. $goodsId = $goods['id'];
  741. foreach ($currentIds as $currentId) {
  742. GoodsStyleService::updateByCondition(['id' => $currentId], ['goodsId' => $goodsId]);
  743. }
  744. }
  745. }
  746. }
  747. }
  748. $sql = "ALTER TABLE xhGoods DROP COLUMN `multiPrice`;";
  749. Yii::$app->db->createCommand($sql)->execute();
  750. //商家流水
  751. $mCapital = MerchantCapitalService::getAllByCondition([], null, '*');
  752. if (!empty($mCapital)) {
  753. foreach ($mCapital as $capital) {
  754. $relateId = $capital['relateId'];
  755. $id = $capital['id'];
  756. if (!empty($relateId)) {
  757. $order = OrderService::getByCondition(['orderSn' => $relateId]);
  758. if (!empty($order)) {
  759. $orderId = $order['id'];
  760. MerchantCapitalService::updateById($id, ['relateId' => $orderId]);
  761. } else {
  762. MerchantCapitalService::updateById($id, ['relateId' => 0]);
  763. }
  764. } else {
  765. MerchantCapitalService::updateById($id, ['relateId' => 0]);
  766. }
  767. }
  768. }
  769. $sql = "ALTER TABLE `xhMerchantCapital` MODIFY `relateId` INT NOT NULL DEFAULT 0 COMMENT '关联id;订单id';";
  770. Yii::$app->db->createCommand($sql)->execute();
  771. //客户流水
  772. $uCapital = UserCapitalService::getAllByCondition([], null, '*');
  773. if (!empty($uCapital)) {
  774. foreach ($uCapital as $capital) {
  775. $relateId = $capital['relateId'];
  776. $id = $capital['id'];
  777. if (!empty($relateId)) {
  778. $order = OrderService::getByCondition(['orderSn' => $relateId]);
  779. if (!empty($order)) {
  780. $orderId = $order['id'];
  781. UserCapitalService::updateById($id, ['relateId' => $orderId]);
  782. } else {
  783. UserCapitalService::updateById($id, ['relateId' => 0]);
  784. }
  785. } else {
  786. UserCapitalService::updateById($id, ['relateId' => 0]);
  787. }
  788. }
  789. }
  790. $sql = "ALTER TABLE `xhUserCapital` MODIFY `relateId` INT NOT NULL DEFAULT 0 COMMENT '关联id;订单id';";
  791. Yii::$app->db->createCommand($sql)->execute();
  792. //客户成长值
  793. $userGrowth = UserGrowthService::getAllByCondition([], null, '*');
  794. if (!empty($userGrowth)) {
  795. foreach ($userGrowth as $relateId => $growth) {
  796. $relateId = $growth['relateId'];
  797. $id = $growth['id'];
  798. if (!empty($relateId)) {
  799. $order = OrderService::getByCondition(['orderSn' => $relateId]);
  800. if (!empty($order)) {
  801. $orderId = $order['id'];
  802. UserGrowthService::updateById($id, ['relateId' => $orderId]);
  803. } else {
  804. UserGrowthService::updateById($id, ['relateId' => 0]);
  805. }
  806. } else {
  807. UserGrowthService::updateById($id, ['relateId' => 0]);
  808. }
  809. }
  810. }
  811. $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`;";
  812. Yii::$app->db->createCommand($sql)->execute();
  813. $sql = "DROP TABLE IF EXISTS `xhInformAdmin`;
  814. CREATE TABLE `xhInformAdmin` (
  815. `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  816. `userId` INT(11) NOT NULL DEFAULT '0' COMMENT '管理员userId',
  817. `adminId` INT(11) NOT NULL DEFAULT '0' COMMENT '管理员Id',
  818. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  819. `noticeType` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '类型',
  820. `content` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '内容',
  821. `noticeWay` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '通知方式 0微信1短信',
  822. `status` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '状态 0没有成功 1成功',
  823. `sourceType` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '来源类型',
  824. `sourceId` INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT '来源id',
  825. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间',
  826. PRIMARY KEY (`id`)
  827. ) COMMENT='店员消息通知记录';
  828. DROP TABLE IF EXISTS `xhInformUser`;
  829. CREATE TABLE `xhInformUser` (
  830. `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  831. `userId` INT(11) NOT NULL DEFAULT '0' COMMENT '客户id',
  832. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  833. `noticeType` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '类型',
  834. `content` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '内容',
  835. `noticeWay` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '通知方式 0微信1短信',
  836. `status` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '状态 0没有成功 1成功',
  837. `sourceType` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '来源类型',
  838. `sourceId` INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT '来源id',
  839. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间',
  840. PRIMARY KEY (`id`)
  841. ) COMMENT='客户消息通知记录';";
  842. Yii::$app->db->createCommand($sql)->execute();
  843. //省市区表字段变更
  844. $sql = "ALTER TABLE `xhDistrict` CHANGE `shortName` `name` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '简称';";
  845. Yii::$app->db->createCommand($sql)->execute();
  846. $sql = "DROP TABLE IF EXISTS `xhStatView`;
  847. CREATE TABLE `xhStatView` (
  848. `id` INT(11) NOT NULL AUTO_INCREMENT,
  849. `time` INT(11) NOT NULL DEFAULT '0' COMMENT '时间戳',
  850. `riseNum` INT(11) NOT NULL DEFAULT '0' COMMENT '增加数量',
  851. `totalNum` INT(11) NOT NULL DEFAULT '0' COMMENT '总数量',
  852. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  853. `addTime` INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT '添加时间',
  854. PRIMARY KEY (`id`),
  855. UNIQUE KEY `num` (`merchantId`,`time`)
  856. ) COMMENT='每天增加访问次数,非访问ip数';
  857. DROP TABLE IF EXISTS `xhStatViewMonth`;
  858. CREATE TABLE `xhStatViewMonth` (
  859. `id` INT(11) NOT NULL AUTO_INCREMENT,
  860. `time` INT(11) NOT NULL DEFAULT '0' COMMENT '月份',
  861. `riseNum` INT(11) NOT NULL DEFAULT '0' COMMENT '增加数量',
  862. `totalNum` INT(11) NOT NULL DEFAULT '0' COMMENT '总数量',
  863. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  864. `addTime` INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT '添加时间',
  865. PRIMARY KEY (`id`),
  866. UNIQUE KEY `num` (`merchantId`,`time`)
  867. ) COMMENT='每月增加访问次数,非访问ip数';";
  868. Yii::$app->db->createCommand($sql)->execute();
  869. //统计相关
  870. //xhStatIncomeMonth
  871. $list = StatIncomeMonthService::getAllByCondition([], null, '*');
  872. if (!empty($list)) {
  873. foreach ($list as $val) {
  874. $year = $val['year'];
  875. $month = $val['month'];
  876. $date = date("Ym", strtotime($year . '-' . $month . '-' . '1'));
  877. $id = $val['id'];
  878. StatIncomeMonthService::updateById($id, ['time' => $date]);
  879. }
  880. }
  881. //xhStatIncomeSourceMonth
  882. $list = StatIncomeSourceMonthService::getAllByCondition([], null, '*');
  883. if (!empty($list)) {
  884. foreach ($list as $val) {
  885. $year = $val['year'];
  886. $month = $val['month'];
  887. $date = date("Ym", strtotime($year . '-' . $month . '-' . '1'));
  888. $id = $val['id'];
  889. StatIncomeSourceMonthService::updateById($id, ['time' => $date]);
  890. }
  891. }
  892. //xhStatOrder
  893. $list = StatOrderService::getAllByCondition([], null, '*');
  894. if (!empty($list)) {
  895. foreach ($list as $val) {
  896. $id = $val['id'];
  897. $date = date("Ymd", $val['time']);
  898. StatOrderService::updateById($id, ['time' => $date]);
  899. }
  900. }
  901. //xhStatOrderMonth
  902. $list = StatOrderMonthService::getAllByCondition([], null, '*');
  903. if (!empty($list)) {
  904. foreach ($list as $val) {
  905. $year = $val['year'];
  906. $month = $val['month'];
  907. $date = date("Ym", strtotime($year . '-' . $month . '-' . '1'));
  908. $id = $val['id'];
  909. StatOrderMonthService::updateById($id, ['time' => $date]);
  910. }
  911. }
  912. $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 '累计访客数';";
  913. Yii::$app->db->createCommand($sql)->execute();
  914. //删除收入来源数据统计的键名
  915. $sql = "ALTER TABLE `xhStatIncomeSourceMonth` DROP INDEX `income`;";
  916. Yii::$app->db->createCommand($sql)->execute();
  917. $sql = "ALTER TABLE xhGoods ADD `briefContent` VARCHAR(1000) NOT NULL DEFAULT '' COMMENT '简单内容介绍,移动端添加商品' AFTER `content`;";
  918. Yii::$app->db->createCommand($sql)->execute();
  919. //各个环境开放平台的更新
  920. $env = getenv("YII_ENV");
  921. $sql = "ALTER TABLE `xhAdminRole` AUTO_INCREMENT=683;
  922. INSERT INTO xhAdminRole VALUES(683,'店长',12358,1,0,'*'),(684,'店长',12359,1,0,'*'),(685,'店长',12360,1,0,'*'),(686,'店长',12361,1,0,'*');";
  923. Yii::$app->db->createCommand($sql)->execute();
  924. $sql = "UPDATE xhMerchant SET `setId`=1;";
  925. Yii::$app->db->createCommand($sql)->execute();
  926. $sql = "ALTER TABLE `xhAdmin` AUTO_INCREMENT=18532;
  927. UPDATE `xhAdmin` SET id=18531,merchantId=12361,roleId=686 WHERE id=5;
  928. UPDATE `xhAdmin` SET id=18530,merchantId=12360,roleId=685 WHERE id=4;
  929. UPDATE `xhAdmin` SET id=18529,merchantId=12359,roleId=684 WHERE id=3;
  930. UPDATE `xhAdmin` SET id=18528,merchantId=12358,roleId=683 WHERE id=1;";
  931. Yii::$app->db->createCommand($sql)->execute();
  932. //优惠券的资产信息
  933. $time = time();
  934. $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})";
  935. Yii::$app->db->createCommand($sql)->execute();
  936. $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;";
  937. Yii::$app->db->createCommand($sql)->execute();
  938. $password = password_hash('123456', PASSWORD_BCRYPT);
  939. $confirmPassword = password_hash('123456', PASSWORD_BCRYPT);
  940. $sql = "update `xhAdmin` set password='{$password}',confirmPassword='{$confirmPassword}' where id=18528";
  941. Yii::$app->db->createCommand($sql)->execute();
  942. $password = password_hash('123456', PASSWORD_BCRYPT);
  943. $confirmPassword = password_hash('123456', PASSWORD_BCRYPT);
  944. $sql = "update `xhAdmin` set password='{$password}',confirmPassword='{$confirmPassword}' where id=18529";
  945. Yii::$app->db->createCommand($sql)->execute();
  946. //花美灵开放平台
  947. if ($env == 'dev') {
  948. $sql = "update `xhWxOpen` set appId='wxe4428cfe08fc74d6',openName='花美灵',appSecret='d87df5ef94f834f7dad186b85b663e34',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;";
  949. Yii::$app->db->createCommand($sql)->execute();
  950. }
  951. //花掌柜开放平台
  952. if ($env == 'test') {
  953. $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;";
  954. Yii::$app->db->createCommand($sql)->execute();
  955. }
  956. //客户的省市区延长字段,有外国英文名称的比较长
  957. $sql = "ALTER TABLE `xhUser` MODIFY `province` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '省';
  958. ALTER TABLE `xhUser` MODIFY `city` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '市';
  959. ALTER TABLE `xhUser` MODIFY `dist` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '区';
  960. ALTER TABLE `xhUser` MODIFY `address` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '详细地址';
  961. ALTER TABLE `xhTMessage` MODIFY `createTime` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '创建时间';
  962. ALTER TABLE `xhTMessage` ADD `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间' AFTER `templateId`;";
  963. Yii::$app->db->createCommand($sql)->execute();
  964. //申请信息修改
  965. $sql = "ALTER TABLE `xhApply` MODIFY `userId` INT NOT NULL DEFAULT 0 COMMENT '平台userId';
  966. ALTER TABLE `xhApply` CHANGE `oldId` introMerchantId INT NOT NULL DEFAULT 0 COMMENT '花店介绍人';
  967. ALTER TABLE `xhApply` CHANGE `newId` merchantId INT NOT NULL DEFAULT 0 COMMENT '新花店id;0表示还没审核通过';";
  968. Yii::$app->db->createCommand($sql)->execute();
  969. //门店省市区地址字段变更
  970. $sql = "ALTER TABLE `xhShop` CHANGE `shopLat` `lat` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '纬度';
  971. ALTER TABLE `xhShop` CHANGE `shopLong` `long` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '经度';
  972. ALTER TABLE `xhShop` CHANGE `shopProvince` `province` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '省';
  973. ALTER TABLE `xhShop` CHANGE `shopCity` `city` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '市';
  974. ALTER TABLE `xhShop` CHANGE `shopDist` `dist` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '区县';
  975. ALTER TABLE `xhShop` CHANGE `shopAddress` `address` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '街道地址';
  976. ALTER TABLE `xhShop` ADD `floor` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '楼号门牌号' AFTER `address`;
  977. ALTER TABLE `xhShop` CHANGE `shopFullAddress` `fullAddress` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '完整地址';
  978. ALTER TABLE `xhApply` CHANGE `longitude` `long` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '经度';
  979. ALTER TABLE `xhApply` CHANGE `latitude` `lat` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '纬度';";
  980. Yii::$app->db->createCommand($sql)->execute();
  981. $sql = "ALTER TABLE `xhMerchant` DROP INDEX `merchantName`;";
  982. Yii::$app->db->createCommand($sql)->execute();
  983. $sql = "ALTER TABLE `xhAd` MODIFY `endTime` BIGINT NOT NULL DEFAULT 0 COMMENT '结束时间;值4102416000(2100-01-01 00:00:00)表示永不过期情况';
  984. ALTER TABLE `xhAd` MODIFY `startTime` BIGINT NOT NULL DEFAULT 0 COMMENT '开始时间';";
  985. Yii::$app->db->createCommand($sql)->execute();
  986. //支付相关配置修改
  987. $sql = "ALTER TABLE `xhMerchantExtend` ADD wxPayInit TINYINT NOT NULL DEFAULT 0 COMMENT '0微信支付未配置 1配置' AFTER `miniVersion`;
  988. ALTER TABLE `xhMerchantExtend` ADD alipayInit TINYINT NOT NULL DEFAULT 0 COMMENT '0支付宝支付未配置 1配置' AFTER `wxPayKey`;
  989. ALTER TABLE `xhMerchantExtend` MODIFY `alipayKey` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '商户密钥';
  990. ALTER TABLE `xhMerchantExtend` ADD alipayPublicKey VARCHAR(500) NOT NULL DEFAULT '' COMMENT '支付宝公钥' AFTER `alipayKey`;";
  991. Yii::$app->db->createCommand($sql)->execute();
  992. //收款二维码和申请会员小程序码
  993. $sql = "ALTER TABLE `xhMerchantExtend` ADD `applyMemberCode` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '申请会员小程序码' AFTER `alipayAccountName`;
  994. ALTER TABLE `xhShop` ADD `gatheringCode` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '收款的二维码' AFTER `introduction`;";
  995. Yii::$app->db->createCommand($sql)->execute();
  996. //门店与来源
  997. $sql = "ALTER TABLE `xhOrder` MODIFY `sourceType` TINYINT NOT NULL DEFAULT 0 COMMENT '来源 0微信 1支付宝 2小程序 3朋友圈 4美团';
  998. ALTER TABLE `xhOrder` ADD `store` TINYINT NOT NULL DEFAULT 0 COMMENT '门店订单 0不是 1是' AFTER `sourceType`;
  999. ALTER TABLE `xhUser` CHANGE `source` `sourceType` TINYINT NOT NULL DEFAULT 0 COMMENT '来源 0微信 1支付宝 2小程序 3朋友圈 4美团';
  1000. ALTER TABLE `xhUser` ADD `store` TINYINT NOT NULL DEFAULT 0 COMMENT '门店订单 0不是 1是' AFTER `sourceType`;";
  1001. Yii::$app->db->createCommand($sql)->execute();
  1002. //商品图片变长
  1003. $sql = "ALTER TABLE `xhGoodsStyle` MODIFY `picture` VARCHAR(800) NOT NULL DEFAULT '' COMMENT '图片相对路径';";
  1004. Yii::$app->db->createCommand($sql)->execute();
  1005. $sql = "ALTER TABLE `xhWxOpen` ADD smsNum INT NOT NULL DEFAULT 0 COMMENT '短信剩余总条数' AFTER `preAuthCodeTime`;UPDATE `xhWxOpen` SET smsNum=18500;";
  1006. Yii::$app->db->createCommand($sql)->execute();
  1007. $sql = "ALTER TABLE `xhShop` ADD `applyMemberCode` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '注册会员码' AFTER `gatheringCode`;
  1008. ALTER TABLE `xhShop` ADD `totalIncome` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '累计收入' AFTER `applyMemberCode`;";
  1009. Yii::$app->db->createCommand($sql)->execute();
  1010. //门店相关修改
  1011. $sql = "ALTER TABLE `xhShop` ADD `avatar` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '门店照片;门店头像' AFTER `id`;
  1012. ALTER TABLE `xhShop` ADD `status` TINYINT NOT NULL DEFAULT 1 COMMENT '门店状态 0停用 1正常' AFTER `totalIncome`;
  1013. ALTER TABLE `xhShop` ADD `delStatus` TINYINT NOT NULL DEFAULT 0 COMMENT '删除状态 0没有删除 1已删除' AFTER `totalIncome`;
  1014. ALTER TABLE `xhShop` ADD `default` TINYINT NOT NULL DEFAULT 0 COMMENT '默认门店 0不是 1是,默认门店不能删除' AFTER `totalIncome`;";
  1015. Yii::$app->db->createCommand($sql)->execute();
  1016. $sql = "ALTER TABLE `xhWxOpen` ADD smsRemindTime INT NOT NULL DEFAULT 0 COMMENT '平台短信不足提醒时间' AFTER `smsNum`;";
  1017. Yii::$app->db->createCommand($sql)->execute();
  1018. $sql = "UPDATE `xhUser` SET mobile='' WHERE mobile=0;";
  1019. Yii::$app->db->createCommand($sql)->execute();
  1020. $sql = "ALTER TABLE `xhCategory` ADD `delStatus` TINYINT NOT NULL DEFAULT 0 COMMENT '删除状态 0未删除 1已删除' AFTER `inTurn`;
  1021. ALTER TABLE `xhCategory` DROP INDEX `merchantId`;
  1022. ALTER TABLE `xhCategory` ADD INDEX `merchant`(`merchantId`,`delStatus`);";
  1023. Yii::$app->db->createCommand($sql)->execute();
  1024. $sql = "ALTER TABLE `xhMerchantExtend` ADD miniAuth TINYINT NOT NULL DEFAULT 0 COMMENT '小程序授权 0未授权 1授权' AFTER `payment`;
  1025. ALTER TABLE `xhMerchantExtend` ADD wxAuth TINYINT NOT NULL DEFAULT 0 COMMENT '公众号授权 0未授权 1授权' AFTER `miniVersion`;
  1026. ALTER TABLE `xhMerchantExtend` ADD openAppId VARCHAR(100) NOT NULL DEFAULT '' COMMENT '开放平台帐号' AFTER `wxPayKey`;
  1027. ALTER TABLE `xhMerchantExtend` ADD openAppBind TINYINT NOT NULL DEFAULT 0 COMMENT '绑定开放平台 0没有创建 1公众号已绑 2小程序已绑 3公众号和小程序都已绑' AFTER `wxPayKey`;";
  1028. Yii::$app->db->createCommand($sql)->execute();
  1029. //花美灵开放平台的公众号和第一个公众号
  1030. if ($env == 'dev') {
  1031. $sql = "update xhMerchant set merchantName='花美灵' where id=12359;update xhShop set shopName='花美灵',merchantName='花美灵',`status`=1 where merchantId=12359;
  1032. update xhMerchant set merchantName='中花卉' where id=12358;update xhShop set shopName='中花卉',merchantName='中花卉' where merchantId=12358;";
  1033. Yii::$app->db->createCommand($sql)->execute();
  1034. }
  1035. //花掌柜开放平台的公众号和第一个公众号
  1036. if ($env == 'test') {
  1037. $sql = "update xhMerchant set merchantName='花掌柜' where id=12359;update xhShop set shopName='花掌柜',merchantName='花掌柜',`status`=1 where merchantId=12359;
  1038. update xhMerchant set merchantName='花店宝' where id=12358;update xhShop set shopName='花店宝',merchantName='花店宝' where merchantId=12358;";
  1039. Yii::$app->db->createCommand($sql)->execute();
  1040. }
  1041. //清除没有用网站标题
  1042. $sql = "update xhMerchantExtend set webTitle='',webKeyword='',webDescription='';";
  1043. Yii::$app->db->createCommand($sql)->execute();
  1044. $sql = "update xhAdmin set addTime=1583375880;update xhAdminRole set addTime=1583375880;";
  1045. Yii::$app->db->createCommand($sql)->execute();
  1046. $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);";
  1047. Yii::$app->db->createCommand($sql)->execute($sql);
  1048. $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;";
  1049. Yii::$app->db->createCommand($sql)->execute($sql);
  1050. $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);";
  1051. Yii::$app->db->createCommand($sql)->execute($sql);
  1052. //更换开发环境小程序的miniAppId、miniAppSecret
  1053. if ($env == 'dev') {
  1054. $sql = "UPDATE xhMerchant SET miniAppId='wxe41bd5816affd0ba',miniAppSecret='ad634457979bc6eb1fb0bc7f4f58d885' WHERE id=12358;UPDATE xhMerchantExtend SET miniAppId='wxe41bd5816affd0ba',wxPayInit=0,wxPayMerchantId='',wxPayKey='' WHERE merchantId=12358;";
  1055. Yii::$app->db->createCommand($sql)->execute($sql);
  1056. $sql = "UPDATE xhMerchant SET miniAppId='wxe4675bab299a52f7',miniAppSecret='12f90039b1245ba6abf2e4184462fb30' WHERE id=12359;UPDATE xhMerchantExtend SET miniAppId='wxe4675bab299a52f7',wxPayInit=0,wxPayMerchantId='',wxPayKey='' WHERE merchantId=12359;";
  1057. Yii::$app->db->createCommand($sql)->execute($sql);
  1058. }
  1059. //更换测试环境小程序的miniAppId、miniAppSecret
  1060. if ($env == 'test') {
  1061. $sql = "UPDATE xhMerchant SET miniAppId='wx36ca6b1d6e9ca2a4',miniAppSecret='b8227c6264785a233e67293f13b1b7b3' WHERE id=12358;UPDATE xhMerchantExtend SET miniAppId='wx36ca6b1d6e9ca2a4',wxPayInit=0,wxPayMerchantId='',wxPayKey='' WHERE merchantId=12358;";
  1062. Yii::$app->db->createCommand($sql)->execute($sql);
  1063. $sql = "UPDATE xhMerchant SET miniAppId='wx21b7c3ef12082099',miniAppSecret='fd21ef3ebbc70e89d5c3a5a3c013edb6' WHERE id=12359;UPDATE xhMerchantExtend SET miniAppId='wx21b7c3ef12082099',wxPayInit=0,wxPayMerchantId='',wxPayKey='' WHERE merchantId=12359;";
  1064. Yii::$app->db->createCommand($sql)->execute($sql);
  1065. }
  1066. //设置过期时间
  1067. $sql = "update xhMerchant set setDeadline=1583648639";
  1068. Yii::$app->db->createCommand($sql)->execute($sql);
  1069. //如果是开发环境,将用户、订单、微信菜单全部清除
  1070. if ($env == 'dev') {
  1071. TMessageService::deleteByCondition(['merchantId' => 12358]);
  1072. UserService::deleteByCondition(['merchantId' => 12358]);
  1073. WxMenuService::deleteByCondition(['merchantId' => 12358]);
  1074. OrderService::deleteByCondition(['merchantId' => 12358]);
  1075. TMessageService::deleteByCondition(['merchantId' => 12359]);
  1076. UserService::deleteByCondition(['merchantId' => 12359]);
  1077. WxMenuService::deleteByCondition(['merchantId' => 12359]);
  1078. OrderService::deleteByCondition(['merchantId' => 12359]);
  1079. }
  1080. if ($env == 'test') {
  1081. TMessageService::deleteByCondition(['merchantId' => 12358]);
  1082. UserService::deleteByCondition(['merchantId' => 12358]);
  1083. WxMenuService::deleteByCondition(['merchantId' => 12358]);
  1084. OrderService::deleteByCondition(['merchantId' => 12358]);
  1085. TMessageService::deleteByCondition(['merchantId' => 12359]);
  1086. UserService::deleteByCondition(['merchantId' => 12359]);
  1087. WxMenuService::deleteByCondition(['merchantId' => 12359]);
  1088. OrderService::deleteByCondition(['merchantId' => 12359]);
  1089. }
  1090. //用户删除概念的提出
  1091. $sql = "ALTER TABLE xhUser ADD `delStatus` TINYINT NOT NULL DEFAULT 0 COMMENT '删除状态 0未删除 1已删除' AFTER `addPrecision`;
  1092. UPDATE xhUser SET delStatus=1 WHERE merchantId=0;";
  1093. Yii::$app->db->createCommand($sql)->execute($sql);
  1094. //小程序
  1095. $sql = "CREATE TABLE `xhMiniProgram` (
  1096. `id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  1097. `appId` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '小程序appId',
  1098. `appSecret` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '小程序appSecret',
  1099. `merchantId` INT NOT NULL DEFAULT 0 COMMENT '商家id',
  1100. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  1101. ) ENGINE=INNODB AUTO_INCREMENT=12566 DEFAULT CHARSET=utf8 COMMENT='小程序';";
  1102. Yii::$app->db->createCommand($sql)->execute($sql);
  1103. $sql = "CREATE TABLE IF NOT EXISTS `xhMerchantInit`(
  1104. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  1105. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  1106. `memberCodeInit` TINYINT NOT NULL DEFAULT 0 COMMENT '会员注册码初始过 0 没有 1有',
  1107. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  1108. ) COMMENT='商家初始信息';";
  1109. Yii::$app->db->createCommand($sql)->execute($sql);
  1110. $sql = "CREATE TABLE xhUserUpgrade(
  1111. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  1112. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  1113. userId INT NOT NULL DEFAULT 0 COMMENT '客户id',
  1114. `type` TINYINT NOT NULL DEFAULT 0 COMMENT '升级类型 0管理员操作升级',
  1115. `member` SMALLINT NOT NULL DEFAULT 0 COMMENT '升级后等级',
  1116. `prevMember` SMALLINT NOT NULL DEFAULT 0 COMMENT '升级前等级',
  1117. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  1118. )COMMENT='客户升级';";
  1119. Yii::$app->db->createCommand($sql)->execute($sql);
  1120. $sql = "ALTER TABLE `xhUserUpgrade` ADD `gainType` TINYINT NOT NULL DEFAULT 0 COMMENT '获得方式 0管理员升级会员 1消费 2充值' AFTER `prevMember`;
  1121. ALTER TABLE `xhUserGrowth` ADD `gainType` TINYINT NOT NULL DEFAULT 0 COMMENT '获得方式 0管理员升级会员 1消费 2充值' AFTER `capitalType`;
  1122. ALTER TABLE `xhUserGrowth` DROP COLUMN `capitalType`;";
  1123. Yii::$app->db->createCommand($sql)->execute($sql);
  1124. $sql = "ALTER TABLE `xhOrder` MODIFY `discountType` TINYINT NOT NULL DEFAULT 0 COMMENT '优惠类型 0没有优惠 1使用优惠卷 2会员打折 3随机优惠';";
  1125. Yii::$app->db->createCommand($sql)->execute($sql);
  1126. //增加常规的节日 shish 2020.3.11
  1127. $sql = "INSERT INTO `xhFest`(`id`,`name`,`month`,`day`,`inTurn`) VALUES (1,'情人节',2,14,0),(2,'母亲节',5,10,0),(3,'教师节',9,10,0),(4,'七夕节',8,25,0),(5,'妇女节',3,8,0),(6,'女生节',3,7,0);";
  1128. Yii::$app->db->createCommand($sql)->execute($sql);
  1129. //将商家的logo清除掉
  1130. $sql = "UPDATE xhMerchant SET `logo`='';";
  1131. Yii::$app->db->createCommand($sql)->execute($sql);
  1132. $sql = "CREATE TABLE IF NOT EXISTS `xhWxAccount`(
  1133. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  1134. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  1135. `name` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '公众号名称',
  1136. `wxAppId` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '公众号的appId',
  1137. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  1138. )COMMENT='微信公众号';";
  1139. Yii::$app->db->createCommand($sql)->execute($sql);
  1140. $sql = "ALTER TABLE xhWxAccount ADD `logo` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '公众号logo' AFTER `id`;
  1141. ALTER TABLE xhMerchant MODIFY `logo` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '商家logo';";
  1142. Yii::$app->db->createCommand($sql)->execute($sql);
  1143. //公众号二维码
  1144. $sql = "ALTER TABLE `xhMerchant` CHANGE `wxQrcodeUrl` `wxQrCodeUrl` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '公众号二维码';";
  1145. Yii::$app->db->createCommand($sql)->execute($sql);
  1146. $sql = "ALTER TABLE `xhMerchantExtend` DROP COLUMN `mergeGatheringQrcodeUrl`;
  1147. ALTER TABLE `xhMerchantExtend` DROP COLUMN `mergeGatheringQrcodeUrlAlipay`;
  1148. ALTER TABLE `xhMerchantExtend` CHANGE `generalMerchant` wxPayApply TINYINT NOT NULL DEFAULT 0 COMMENT '0自己申请 1平台代为申请' AFTER `wxPayKey`;";
  1149. Yii::$app->db->createCommand($sql)->execute($sql);
  1150. //运费计算方式
  1151. $sql = "UPDATE `xhMerchantExtend` SET `freight`=2;
  1152. ALTER TABLE `xhMerchantExtend` MODIFY `freight` TINYINT NOT NULL DEFAULT 0 COMMENT '超过免运费距离每公里费用';
  1153. ALTER TABLE `xhMerchantExtend` ADD freeDistance TINYINT NOT NULL DEFAULT 0 COMMENT '免运费距离' AFTER `freight`;
  1154. UPDATE `xhMerchantExtend` SET `freeDistance`=5;";
  1155. Yii::$app->db->createCommand($sql)->execute($sql);
  1156. $sql = "ALTER TABLE `xhGoodsCategory` ADD `goodsName` VARCHAR(200) NOT NULL DEFAULT '' COMMENT '商品名称' AFTER `gId`;";
  1157. Yii::$app->db->createCommand($sql)->execute($sql);
  1158. //确认密码判断字段 shish 2020.3.12
  1159. $sql = "ALTER TABLE `xhUser` ADD hasPayPwd TINYINT NOT NULL DEFAULT 0 COMMENT '0 没有支付密码 1有' AFTER `payPassword`;";
  1160. Yii::$app->db->createCommand($sql)->execute($sql);
  1161. $sql = "ALTER TABLE `xhOrder` ADD inform TINYINT NOT NULL DEFAULT 0 COMMENT '通知 0待通知 1通知成功 2通知失败' AFTER `sendStatus`;";
  1162. Yii::$app->db->createCommand($sql)->execute($sql);
  1163. $sql = "ALTER TABLE `xhOrder` MODIFY `sendType` TINYINT NOT NULL DEFAULT 0 COMMENT '0未确认配送方式 1免配送 2自己送 3别人送;快递送';";
  1164. Yii::$app->db->createCommand($sql)->execute($sql);
  1165. $sql = "DROP TABLE IF EXISTS `xhStatOrderCount`;
  1166. CREATE TABLE `xhStatOrderCount` (
  1167. `id` INT(11) NOT NULL AUTO_INCREMENT,
  1168. `time` INT(11) NOT NULL DEFAULT '0' COMMENT '月份',
  1169. `riseNum` INT(11) NOT NULL DEFAULT '0' COMMENT '增加数量',
  1170. `totalNum` INT(11) NOT NULL DEFAULT '0' COMMENT '总数量',
  1171. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '商家id',
  1172. PRIMARY KEY (`id`),
  1173. KEY `merchant` (`merchantId`,`time`)
  1174. ) COMMENT='商家月订单量,包括未付款';";
  1175. Yii::$app->db->createCommand($sql)->execute($sql);
  1176. //第三方配送
  1177. $sql = "CREATE TABLE `xhOrderExpress`(
  1178. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  1179. orderId INT NOT NULL DEFAULT 0 COMMENT '订单id',
  1180. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  1181. `side` TINYINT NOT NULL DEFAULT 0 COMMENT '配送方',
  1182. distance DECIMAL(6,1) NOT NULL DEFAULT 0.0 COMMENT '距离',
  1183. `cost` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '运费',
  1184. `tip` DECIMAL(9,2) NOT NULL DEFAULT '0.00' COMMENT '小费',
  1185. `sendTime` INT NOT NULL DEFAULT 0 COMMENT '要求配送时间',
  1186. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  1187. )COMMENT='第三方配送信息';";
  1188. Yii::$app->db->createCommand($sql)->execute($sql);
  1189. $sql = "ALTER TABLE `xhOrderExpress` CHANGE `side` `sideId` TINYINT NOT NULL DEFAULT 0 COMMENT '配送方id';";
  1190. Yii::$app->db->createCommand($sql)->execute($sql);
  1191. $sql = "ALTER TABLE `xhOrder` ADD `deliver` TINYINT NOT NULL DEFAULT 0 COMMENT '0没有配送单 1有' AFTER `shopId`;";
  1192. Yii::$app->db->createCommand($sql)->execute($sql);
  1193. $sql = "ALTER TABLE `xhOrderExpress` ADD `status` TINYINT NOT NULL DEFAULT 0 COMMENT '0待接单 1已接单 2已完成 3已取消' AFTER `sendTime`;";
  1194. Yii::$app->db->createCommand($sql)->execute($sql);
  1195. $sql = "ALTER TABLE `xhOrder` ADD `hasDeliver` TINYINT NOT NULL DEFAULT 0 COMMENT '0未确认 1有手写配送单 2填电子单' AFTER `sendStatus`;";
  1196. Yii::$app->db->createCommand($sql)->execute($sql);
  1197. $sql = "ALTER TABLE `xhAdminRole` ADD `delStatus` TINYINT NOT NULL DEFAULT 0 COMMENT '删除状态 0未删除 1已删除' AFTER `addTime`;";
  1198. Yii::$app->db->createCommand($sql)->execute($sql);
  1199. $sql = "ALTER TABLE `xhMerchant` ADD `platform` TINYINT NOT NULL DEFAULT 0 COMMENT '0普遍商家1平台使用的商家' AFTER `deadline`;";
  1200. Yii::$app->db->createCommand($sql)->execute($sql);
  1201. $sql = "RENAME TABLE `xhWxAccount` TO `xhWxBase`;";
  1202. Yii::$app->db->createCommand($sql)->execute($sql);
  1203. $sql = "ALTER TABLE `xhAdmin` ADD `openId` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '微信openid' AFTER `remind`;
  1204. ALTER TABLE `xhAdmin` ADD `miniOpenId` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '小程序openid' AFTER `remind`;
  1205. ALTER TABLE `xhAdmin` ADD `unionId` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '微信平台唯一id' AFTER `remind`;
  1206. ALTER TABLE `xhAdmin` ADD `subscribe` TINYINT NOT NULL DEFAULT 0 COMMENT '关注平台 0未关注 1关注' AFTER `remind`;
  1207. ALTER TABLE `xhAdmin` ADD `hasSubscribe` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '是否关注过 0没有 1是的' AFTER `remind`;
  1208. ALTER TABLE `xhAdmin` ADD `subscribeTime` INT(11) NOT NULL DEFAULT '0' COMMENT '关注时间' AFTER `remind`;
  1209. DROP TABLE IF EXISTS `xhWxBase`;
  1210. CREATE TABLE IF NOT EXISTS `xhWxBase`(
  1211. `id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  1212. `name` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '公众号名称',
  1213. `logo` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '公众号logo',
  1214. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '商家id 0平台使用商家',
  1215. `wxAppId` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '公众号appid',
  1216. `wxAppSecret` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '公众号appsecret',
  1217. `wxUserName` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '微信原始名 gh_083d437a9941',
  1218. `wxAliasName` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '微信别名 hzgdzh',
  1219. `wxQrCodeUrl` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '公众号二维码',
  1220. `wxToken` VARCHAR(500) NOT NULL DEFAULT '' COMMENT 'token',
  1221. `wxJsApiTicket` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '微信分享jsapi_ticket',
  1222. `wxJsApiTicketExpire` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '微信分享jsapi_ticket过期时间点',
  1223. `wxAccessToken` VARCHAR(500) NOT NULL DEFAULT '' COMMENT 'wxAccessToken',
  1224. `wxAccessTokenTime` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT 'accesstoken过期时间',
  1225. `wxRefreshToken` VARCHAR(500) NOT NULL DEFAULT '' COMMENT 'wxAccessToken refresh token',
  1226. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  1227. )COMMENT='公众号基础信息';
  1228. ALTER TABLE `xhMerchant` DROP COLUMN `platform`;
  1229. ALTER TABLE `xhWxOpen` ADD wx_base_id INT NOT NULL DEFAULT 0 COMMENT '平台对应的公众号' AFTER `merchantId`;
  1230. CREATE TABLE IF NOT EXISTS `xhWxMiniBase`(
  1231. `id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  1232. `name` VARCHAR(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '名称',
  1233. `logo` VARCHAR(500) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT 'logo',
  1234. `merchantId` INT(11) NOT NULL DEFAULT '0' COMMENT '商家id 0平台型',
  1235. `miniAuth` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '授权状态 0未授权 1授权',
  1236. `miniAppId` VARCHAR(100) NOT NULL DEFAULT '' COMMENT 'appid',
  1237. `miniAccessToken` VARCHAR(500) NOT NULL DEFAULT '' COMMENT 'accesstoken',
  1238. `miniAccessTokenTime` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT 'accesstoken过期时间',
  1239. `miniRefreshToken` VARCHAR(500) NOT NULL DEFAULT '' COMMENT 'refresh token',
  1240. `miniVersion` INT(11) NOT NULL DEFAULT '0' COMMENT '当前版本',
  1241. `addTime` INT(11) NOT NULL DEFAULT '0' COMMENT '添加时间'
  1242. )COMMENT='小程序基础信息';
  1243. ALTER TABLE `xhWxOpen` ADD wx_mini_base_id INT NOT NULL DEFAULT 0 COMMENT '平台对应的小程序' AFTER `merchantId`;
  1244. ALTER TABLE `xhWxOpen` CHANGE `openName` `name` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '名称' AFTER `appSecret`;
  1245. ALTER TABLE `xhWxOpen` ADD appIdCreated VARCHAR(200) NOT NULL DEFAULT '' COMMENT '创建的平台帐号appId' AFTER `appId`;
  1246. ALTER TABLE `xhWxOpen` MODIFY `appId` VARCHAR(200) NOT NULL DEFAULT '' COMMENT '后台拿到的appId';";
  1247. Yii::$app->db->createCommand($sql)->execute($sql);
  1248. $sql = "ALTER TABLE `xhMerchant` ADD delStatus TINYINT NOT NULL DEFAULT 0 COMMENT '删除状态 0正常 1已删' AFTER `agentLevel`;";
  1249. Yii::$app->db->createCommand($sql)->execute($sql);
  1250. $sql = "ALTER TABLE `xhUser` MODIFY `store` TINYINT NOT NULL DEFAULT 0 COMMENT '客户首次接入到店 0不是 1是';
  1251. ALTER TABLE `xhAdmin` ADD `sourceType` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '来源 0微信 1支付宝 2小程序 3朋友圈 4美团' AFTER `merchantId`;";
  1252. Yii::$app->db->createCommand($sql)->execute($sql);
  1253. $sql = "CREATE TABLE `xhAdminRelate`(
  1254. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  1255. merchantId INT NOT NULL DEFAULT 0 COMMENT '商家id',
  1256. `shopId` INT(11) NOT NULL DEFAULT '0' COMMENT '门店id',
  1257. `roleId` INT(11) NOT NULL DEFAULT '0' COMMENT '角色id',
  1258. `addTime` INT NOT NULL DEFAULT 0 COMMENT '添加时间'
  1259. )COMMENT='员工关系';
  1260. ALTER TABLE `xhAdmin` DROP COLUMN `platUserId`;
  1261. ALTER TABLE `xhAdmin` DROP COLUMN `userId`;
  1262. ALTER TABLE `xhAdmin` DROP COLUMN `merchantId`;
  1263. ALTER TABLE `xhAdmin` DROP COLUMN `roleId`;
  1264. ALTER TABLE `xhAdmin` DROP COLUMN `defaultShopId`;
  1265. ALTER TABLE `xhAdmin` DROP COLUMN `currentShopId`;";
  1266. Yii::$app->db->createCommand($sql)->execute($sql);
  1267. //修改总后台员工登陆密码
  1268. StaffService::updateById(1, ['password' => password_hash('123456', PASSWORD_BCRYPT)]);
  1269. $sql = "ALTER TABLE `xhAdminRelate` ADD `adminId` INT NOT NULL DEFAULT 0 COMMENT '管理员id' AFTER `id`;";
  1270. Yii::$app->db->createCommand($sql)->execute($sql);
  1271. $sql = "ALTER TABLE `xhWxMiniBase` ADD `miniAppSecret` VARCHAR(100) NOT NULL DEFAULT '' COMMENT 'appSecret' AFTER `miniAppId`;";
  1272. Yii::$app->db->createCommand($sql)->execute($sql);
  1273. $sql = "ALTER TABLE `xhWxOpen` ADD `openAppBind` TINYINT NOT NULL DEFAULT 0 COMMENT '绑定平台状况 0没有创建 1公众号已绑 2小程序已绑 3公众号和小程序都已绑' AFTER `appIdCreated`;";
  1274. Yii::$app->db->createCommand($sql)->execute($sql);
  1275. $sql = "RENAME TABLE xhAdminRelate TO xhAdminShop;";
  1276. Yii::$app->db->createCommand($sql)->execute($sql);
  1277. $sql = "ALTER TABLE `xhAdminShop` ADD `default` TINYINT NOT NULL DEFAULT 0 COMMENT '默认管理的门店 1是 0否' AFTER `roleId`;";
  1278. Yii::$app->db->createCommand($sql)->execute($sql);
  1279. $sql = "ALTER TABLE `xhAdminShop` ADD `remind` TINYINT NOT NULL DEFAULT 0 COMMENT '动态提醒 0不需要 1需要' AFTER `shopId`;
  1280. ALTER TABLE `xhAdminShop` ADD `status` TINYINT NOT NULL DEFAULT 1 COMMENT '状态 0停用 1正常' AFTER `default`;";
  1281. Yii::$app->db->createCommand($sql)->execute($sql);
  1282. $sql = "ALTER TABLE `xhAdmin` ADD `nickname` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '昵称' AFTER `adminName`;";
  1283. Yii::$app->db->createCommand($sql)->execute($sql);
  1284. $sql = "ALTER TABLE `xhUser` ADD `nickname` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '昵称' AFTER `userName`;
  1285. UPDATE `xhUser` SET nickname=userName;";
  1286. Yii::$app->db->createCommand($sql)->execute($sql);
  1287. $sql = "ALTER TABLE `xhAdminShop` ADD `delStatus` TINYINT NOT NULL DEFAULT 0 COMMENT '删除状态 0正常 1已删除' AFTER `default`;ALTER TABLE `xhAdmin` DROP COLUMN `remind`;ALTER TABLE `xhAdmin` CHANGE `status` `accountStatus` TINYINT NOT NULL DEFAULT 1 COMMENT '帐号状态 0禁用 1正常';";
  1288. Yii::$app->db->createCommand($sql)->execute($sql);
  1289. $sql = "ALTER TABLE `xhStatIncome` ADD shopId INT NOT NULL DEFAULT 0 COMMENT '门店id' AFTER merchantId;
  1290. ALTER TABLE `xhStatIncomeCategory` ADD shopId INT NOT NULL DEFAULT 0 COMMENT '门店id' AFTER merchantId;
  1291. ALTER TABLE `xhStatIncomeCategoryMonth` ADD shopId INT NOT NULL DEFAULT 0 COMMENT '门店id' AFTER merchantId;
  1292. ALTER TABLE `xhStatIncomeMonth` ADD shopId INT NOT NULL DEFAULT 0 COMMENT '门店id' AFTER merchantId;
  1293. ALTER TABLE `xhStatIncomeSource` ADD shopId INT NOT NULL DEFAULT 0 COMMENT '门店id' AFTER merchantId;
  1294. ALTER TABLE `xhStatIncomeSourceMonth` ADD shopId INT NOT NULL DEFAULT 0 COMMENT '门店id' AFTER merchantId;
  1295. ALTER TABLE `xhStatOrder` ADD shopId INT NOT NULL DEFAULT 0 COMMENT '门店id' AFTER merchantId;
  1296. ALTER TABLE `xhStatOrderCount` ADD shopId INT NOT NULL DEFAULT 0 COMMENT '门店id' AFTER merchantId;
  1297. ALTER TABLE `xhStatOrderMonth` ADD shopId INT NOT NULL DEFAULT 0 COMMENT '门店id' AFTER merchantId;
  1298. ALTER TABLE `xhStatOut` ADD shopId INT NOT NULL DEFAULT 0 COMMENT '门店id' AFTER merchantId;
  1299. ALTER TABLE `xhStatOutMonth` ADD shopId INT NOT NULL DEFAULT 0 COMMENT '门店id' AFTER merchantId;";
  1300. Yii::$app->db->createCommand($sql)->execute($sql);
  1301. }
  1302. //数据迁移 shish 2020.1.12
  1303. //./yii upgrade/sync
  1304. public function actionSync()
  1305. {
  1306. $list = MerchantService::getAllByCondition(['id>' => 0], null, '*');
  1307. if (!empty($list)) {
  1308. foreach ($list as $key => $merchant) {
  1309. //更新商家的logo和二维码
  1310. $id = $merchant['id'];
  1311. $this->actionUpdateImg($id);
  1312. }
  1313. }
  1314. //国兰老客户导入
  1315. $oldUserList = Yii::$app->db2->createCommand('select * from xhUserOldData where `status`=0')->queryAll();
  1316. if (!empty($oldUserList)) {
  1317. foreach ($oldUserList as $user) {
  1318. $mobile = $user['mobile'];
  1319. $exists = UserService::getByCondition(['mobile' => $mobile, 'merchantId' => 12358]);
  1320. if (!empty($exists)) {
  1321. echo "老客户:'.$mobile.'已经导入过了。\n";
  1322. continue;
  1323. }
  1324. $user['realName'] = $user['userName'];
  1325. $user['growth'] = $user['integral'];
  1326. $insertUser = UserService::addUser($user);
  1327. $id = $user['id'];
  1328. Yii::$app->db2->createCommand("update xhUserOldData set `status`=1 where id={$id}")->execute();
  1329. echo "老客户导入生成userId:" . $insertUser['id'] . "\n";
  1330. }
  1331. }
  1332. $sql = "DROP TABLE IF EXISTS `xhUserOldData`;";
  1333. Yii::$app->db2->createCommand($sql)->execute();
  1334. //更新国兰的菜单分类
  1335. $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);";
  1336. Yii::$app->db->createCommand($sql)->execute();
  1337. //更新国兰分类与商品对应关系
  1338. Yii::$app->db->createCommand("truncate `xhGoodsCategory`;")->execute();
  1339. $goodsCategory = Yii::$app->db2->createCommand('select * from `xhGoodsCategory` where `merchantId`=12358')->queryAll();
  1340. if (!empty($goodsCategory)) {
  1341. foreach ($goodsCategory as $val) {
  1342. $cId = $val['cId'];
  1343. $gId = $val['gId'];
  1344. $inTurn = $val['inTurn'];
  1345. $merchantId = $val['merchantId'];
  1346. GoodsCategoryService::add(['gId' => $gId, 'cId' => $cId, 'inTurn' => $inTurn, 'status' => 1, 'merchantId' => $merchantId]);
  1347. echo $cId . ' ' . $gId . "\n";
  1348. }
  1349. }
  1350. $goodsUsage = Yii::$app->db2->createCommand('select * from `xhGoodsUsage` where `merchantId`=12358')->queryAll();
  1351. if (!empty($goodsUsage)) {
  1352. foreach ($goodsUsage as $val) {
  1353. $usageId = $val['usageId'];
  1354. $goodsId = $val['goodsId'];
  1355. $inTurn = $val['inTurn'];
  1356. $merchantId = $val['merchantId'];
  1357. GoodsCategoryService::add(['gId' => $goodsId, 'cId' => $usageId, 'inTurn' => $inTurn, 'status' => 1, 'merchantId' => $merchantId]);
  1358. echo $usageId . ' ' . $goodsId . "\n";
  1359. }
  1360. }
  1361. //会员打折和会员等级要同步,要先导老客户 shish 2020.1.12
  1362. $merchantList = MerchantExtendService::getAllByCondition([], null, '*', 'merchantId');
  1363. $userAssetList = UserAssetService::getAllByCondition([], null, '*');
  1364. if (!empty($userAssetList)) {
  1365. foreach ($userAssetList as $asset) {
  1366. $id = $asset['userId'];
  1367. $merchantId = $asset['merchantId'];
  1368. $growth = $asset['growth'];
  1369. $currentMember = $asset['member'];
  1370. UserService::updateById($id, ['member' => $currentMember]);
  1371. if (!empty($merchantId) && isset($merchantList[$merchantId])) {
  1372. $extend = $merchantList[$merchantId];
  1373. if (!empty($extend)) {
  1374. $gradeList = MerchantExtendService::getGradeList($extend);
  1375. $member = null;
  1376. foreach ($gradeList as $grade) {
  1377. if ($grade['growth'] < $growth) {
  1378. $member = $grade['level'];
  1379. continue;
  1380. }
  1381. }
  1382. if (!empty($member)) {
  1383. UserAssetService::updateByUserId($id, ['member' => $member]);
  1384. UserService::updateById($id, ['member' => $member]);
  1385. echo '客户id:' . $id . '会员等级:' . $member . "已更新\n";
  1386. }
  1387. }
  1388. }
  1389. }
  1390. }
  1391. //头像丢失了更新头像
  1392. UserService::syncAvatar(12358);
  1393. $goodsList = GoodsService::getAllByCondition([], null, '*');
  1394. if (!empty($goodsList)) {
  1395. foreach ($goodsList as $goods) {
  1396. $id = $goods['id'];
  1397. $currentGoodsName = $goods['goodsName'];
  1398. GoodsCategoryService::updateByCondition(['gId' => $id], ['goodsName' => $currentGoodsName]);
  1399. }
  1400. }
  1401. }
  1402. //微信菜单初始化或重置,可以重复执行 shish 2020.3.5
  1403. // ./yii upgrade/menu-init 12358
  1404. public function actionMenuInit($id)
  1405. {
  1406. $merchant = xhMerchantService::getById($id);
  1407. xhWxMenuService::applyInit($merchant);
  1408. }
  1409. //测试生成头像有没问题
  1410. public function actionAddAvatar($id)
  1411. {
  1412. UserService::deleteByCondition(['merchantId' => $id]);
  1413. UserService::syncWxAllUser($id);
  1414. }
  1415. //更新头像 shish 2020.3.10
  1416. public function actionUpdateAvatar($id)
  1417. {
  1418. UserService::syncAvatar($id);
  1419. }
  1420. //更新公众号的头像和二维码 shish 2020.3.11
  1421. public function actionUpdateImg($id)
  1422. {
  1423. $merchant = MerchantService::getMerchantById($id);
  1424. $appId = $merchant['wxAppId'];
  1425. $respond = wxUtil::getAuthorizerInfo($appId);
  1426. $update = [];
  1427. if (isset($respond['authorizer_info']['head_img']) && !empty($respond['authorizer_info']['head_img'])) {
  1428. $imgUrl = $respond['authorizer_info']['head_img'];
  1429. $returnImg = WxBaseClass::saveLogo($imgUrl, $id);
  1430. $update['logo'] = $returnImg;
  1431. }
  1432. if (isset($respond['authorizer_info']['qrcode_url']) && !empty($respond['authorizer_info']['qrcode_url'])) {
  1433. $qrCodeUrl = $respond['authorizer_info']['qrcode_url'];
  1434. $returnImg = WxBaseClass::saveQrCode($qrCodeUrl, $id);
  1435. $update['wxQrCodeUrl'] = $returnImg;
  1436. }
  1437. if (!empty($update)) {
  1438. MerchantClass::updateById($id, $update);
  1439. }
  1440. }
  1441. //补充操作
  1442. public function actionBc()
  1443. {
  1444. //修改总后台员工登陆密码
  1445. StaffService::updateById(1, ['password' => password_hash('123456', PASSWORD_BCRYPT)]);
  1446. }
  1447. }