UpgradeController.php 89 KB

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