UpgradeController.php 95 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552
  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\weixin\classes\WxBaseClass;
  23. use biz\weixin\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. }
  1283. //数据迁移 shish 2020.1.12
  1284. //./yii upgrade/sync
  1285. public function actionSync()
  1286. {
  1287. $list = MerchantService::getAllByCondition(['id>' => 0], null, '*');
  1288. if (!empty($list)) {
  1289. foreach ($list as $key => $merchant) {
  1290. //更新商家的logo和二维码
  1291. $id = $merchant['id'];
  1292. $this->actionUpdateImg($id);
  1293. }
  1294. }
  1295. //国兰老客户导入
  1296. $oldUserList = Yii::$app->db2->createCommand('select * from xhUserOldData where `status`=0')->queryAll();
  1297. if (!empty($oldUserList)) {
  1298. foreach ($oldUserList as $user) {
  1299. $mobile = $user['mobile'];
  1300. $exists = UserService::getByCondition(['mobile' => $mobile, 'merchantId' => 12358]);
  1301. if (!empty($exists)) {
  1302. echo "老客户:'.$mobile.'已经导入过了。\n";
  1303. continue;
  1304. }
  1305. $user['realName'] = $user['userName'];
  1306. $user['growth'] = $user['integral'];
  1307. $insertUser = UserService::addUser($user);
  1308. $id = $user['id'];
  1309. Yii::$app->db2->createCommand("update xhUserOldData set `status`=1 where id={$id}")->execute();
  1310. echo "老客户导入生成userId:" . $insertUser['id'] . "\n";
  1311. }
  1312. }
  1313. $sql = "DROP TABLE IF EXISTS `xhUserOldData`;";
  1314. Yii::$app->db2->createCommand($sql)->execute();
  1315. //更新国兰的菜单分类
  1316. $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);";
  1317. Yii::$app->db->createCommand($sql)->execute();
  1318. //更新国兰分类与商品对应关系
  1319. Yii::$app->db->createCommand("truncate `xhGoodsCategory`;")->execute();
  1320. $goodsCategory = Yii::$app->db2->createCommand('select * from `xhGoodsCategory` where `merchantId`=12358')->queryAll();
  1321. if (!empty($goodsCategory)) {
  1322. foreach ($goodsCategory as $val) {
  1323. $cId = $val['cId'];
  1324. $gId = $val['gId'];
  1325. $inTurn = $val['inTurn'];
  1326. $merchantId = $val['merchantId'];
  1327. GoodsCategoryService::add(['gId' => $gId, 'cId' => $cId, 'inTurn' => $inTurn, 'status' => 1, 'merchantId' => $merchantId]);
  1328. echo $cId . ' ' . $gId . "\n";
  1329. }
  1330. }
  1331. $goodsUsage = Yii::$app->db2->createCommand('select * from `xhGoodsUsage` where `merchantId`=12358')->queryAll();
  1332. if (!empty($goodsUsage)) {
  1333. foreach ($goodsUsage as $val) {
  1334. $usageId = $val['usageId'];
  1335. $goodsId = $val['goodsId'];
  1336. $inTurn = $val['inTurn'];
  1337. $merchantId = $val['merchantId'];
  1338. GoodsCategoryService::add(['gId' => $goodsId, 'cId' => $usageId, 'inTurn' => $inTurn, 'status' => 1, 'merchantId' => $merchantId]);
  1339. echo $usageId . ' ' . $goodsId . "\n";
  1340. }
  1341. }
  1342. //会员打折和会员等级要同步,要先导老客户 shish 2020.1.12
  1343. $merchantList = MerchantExtendService::getAllByCondition([], null, '*', 'merchantId');
  1344. $userAssetList = UserAssetService::getAllByCondition([], null, '*');
  1345. if (!empty($userAssetList)) {
  1346. foreach ($userAssetList as $asset) {
  1347. $id = $asset['userId'];
  1348. $merchantId = $asset['merchantId'];
  1349. $growth = $asset['growth'];
  1350. $currentMember = $asset['member'];
  1351. UserService::updateById($id, ['member' => $currentMember]);
  1352. if (!empty($merchantId) && isset($merchantList[$merchantId])) {
  1353. $extend = $merchantList[$merchantId];
  1354. if (!empty($extend)) {
  1355. $gradeList = MerchantExtendService::getGradeList($extend);
  1356. $member = null;
  1357. foreach ($gradeList as $grade) {
  1358. if ($grade['growth'] < $growth) {
  1359. $member = $grade['level'];
  1360. continue;
  1361. }
  1362. }
  1363. if (!empty($member)) {
  1364. UserAssetService::updateByUserId($id, ['member' => $member]);
  1365. UserService::updateById($id, ['member' => $member]);
  1366. echo '客户id:' . $id . '会员等级:' . $member . "已更新\n";
  1367. }
  1368. }
  1369. }
  1370. }
  1371. }
  1372. //头像丢失了更新头像
  1373. UserService::syncAvatar(12358);
  1374. $goodsList = GoodsService::getAllByCondition([], null, '*');
  1375. if (!empty($goodsList)) {
  1376. foreach ($goodsList as $goods) {
  1377. $id = $goods['id'];
  1378. $currentGoodsName = $goods['goodsName'];
  1379. GoodsCategoryService::updateByCondition(['gId' => $id], ['goodsName' => $currentGoodsName]);
  1380. }
  1381. }
  1382. }
  1383. //微信菜单初始化或重置,可以重复执行 shish 2020.3.5
  1384. // ./yii upgrade/menu-init 12358
  1385. public function actionMenuInit($id)
  1386. {
  1387. $merchant = xhMerchantService::getById($id);
  1388. xhWxMenuService::applyInit($merchant);
  1389. }
  1390. //测试生成头像有没问题
  1391. public function actionAddAvatar($id)
  1392. {
  1393. UserService::deleteByCondition(['merchantId' => $id]);
  1394. UserService::syncWxAllUser($id);
  1395. }
  1396. //更新头像 shish 2020.3.10
  1397. public function actionUpdateAvatar($id)
  1398. {
  1399. UserService::syncAvatar($id);
  1400. }
  1401. //更新公众号的头像和二维码 shish 2020.3.11
  1402. public function actionUpdateImg($id)
  1403. {
  1404. $merchant = MerchantService::getMerchantById($id);
  1405. $appId = $merchant['wxAppId'];
  1406. $respond = wxUtil::getAuthorizerInfo($appId);
  1407. $update = [];
  1408. if (isset($respond['authorizer_info']['head_img']) && !empty($respond['authorizer_info']['head_img'])) {
  1409. $imgUrl = $respond['authorizer_info']['head_img'];
  1410. $returnImg = WxBaseClass::saveLogo($imgUrl, $id);
  1411. $update['logo'] = $returnImg;
  1412. }
  1413. if (isset($respond['authorizer_info']['qrcode_url']) && !empty($respond['authorizer_info']['qrcode_url'])) {
  1414. $qrCodeUrl = $respond['authorizer_info']['qrcode_url'];
  1415. $returnImg = WxBaseClass::saveQrCode($qrCodeUrl, $id);
  1416. $update['wxQrCodeUrl'] = $returnImg;
  1417. }
  1418. if (!empty($update)) {
  1419. MerchantClass::updateById($id, $update);
  1420. }
  1421. }
  1422. //补充操作
  1423. public function actionBc()
  1424. {
  1425. //修改总后台员工登陆密码
  1426. StaffService::updateById(1, ['password' => password_hash('123456', PASSWORD_BCRYPT)]);
  1427. }
  1428. }