mkstoreticketdiscount.html 46 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>门店优惠券活动</title>
  5. #parse("sys/header.html")
  6. </head>
  7. <script src="//unpkg.com/iview/dist/locale/en-US.js"></script>
  8. <style>
  9. .col-sm-3 {
  10. width: 25%;
  11. float: left;
  12. }
  13. .goods-item {
  14. position: relative;
  15. width: 200px;
  16. height: 76px;
  17. border-radius: 4px;
  18. border: 1px solid #e0e0e0;
  19. padding: 10px;
  20. margin-bottom: 10px;
  21. cursor: pointer;
  22. margin-right: 10px;
  23. }
  24. .clearfix {
  25. zoom: 1;
  26. }
  27. .goods-img {
  28. position: relative;
  29. width: 30%;
  30. height: 100%;
  31. border-radius: 4px;
  32. overflow: hidden;
  33. margin-right: 10px;
  34. }
  35. .fl {
  36. float: left;
  37. }
  38. .goods-info {
  39. width: 55%;
  40. }
  41. .goods-mask {
  42. position: absolute;
  43. background-color: #000;
  44. opacity: .5;
  45. width: 100%;
  46. height: 100%;
  47. top: 0;
  48. left: 0;
  49. border-radius: 4px;
  50. display: none;
  51. }
  52. .goods-img>.goods-img-wrapper {
  53. width: 100%;
  54. height: 100%;
  55. }
  56. .goods-img>.bg-model {
  57. position: absolute;
  58. display: none;
  59. top: 0;
  60. left: 0;
  61. width: 100%;
  62. height: 100%;
  63. }
  64. .goods-img>.bg-model>.bg-model-model {
  65. position: absolute;
  66. top: 0;
  67. left: 0;
  68. width: 100%;
  69. height: 100%;
  70. background-color: #000;
  71. opacity: .5;
  72. }
  73. .goods-info>div.goods-intro {
  74. display: inline-block;
  75. width: 90px;
  76. max-height: 40px;
  77. overflow: hidden;
  78. text-overflow: ellipsis;
  79. display: -webkit-box;
  80. -webkit-box-orient: vertical;
  81. -webkit-line-clamp: 2;
  82. line-height: 18px;
  83. }
  84. .goods-info>.goods-price {
  85. position: absolute;
  86. bottom: 12px;
  87. }
  88. .goods-item.select {
  89. border: 1px solid #2589ff;
  90. }
  91. .goods-img>.bg-model>img {
  92. position: absolute;
  93. top: 0;
  94. left: 0;
  95. width: 100%;
  96. z-index: 10;
  97. }
  98. .tick-color-g{
  99. border:3px #206602 solid;
  100. border-radius: 5px;
  101. }
  102. .tick-color-r{
  103. border:3px #990033 solid;
  104. border-radius: 5px;
  105. }
  106. </style>
  107. <body>
  108. <div id="rrapp" v-cloak>
  109. <Card v-show="!showViewList">
  110. <p slot="title">优惠券</p>
  111. <Row :gutter="16">
  112. <div class="search-group">
  113. <i-col span="4">
  114. <i-input v-model="q.name" @on-enter="query" placeholder="名称"/>
  115. </i-col>
  116. <i-button @click="query">查询</i-button>
  117. <i-button @click="reloadSearch">重置</i-button>
  118. </div>
  119. <div class="buttons-group">
  120. #if($shiro.hasPermission("mkstoreticketdiscount:save"))
  121. <i-button type="info" @click="add"><i class="fa fa-plus"></i>&nbsp;新增</i-button>
  122. #end
  123. <!--#if($shiro.hasPermission("mkstoreticketdiscount:update"))
  124. <i-button type="warning" @click="update"><i class="fa fa-pencil-square-o"></i>&nbsp;修改</i-button>
  125. #end-->
  126. #if($shiro.hasPermission("mkstoreticketdiscount:delete"))
  127. <i-button type="error" @click="del"><i class="fa fa-trash-o"></i>&nbsp;删除</i-button>
  128. #end
  129. <a href="${rc.contextPath}/mk/mkcenter.html">
  130. <i-button type="warning" ><i class="fa"></i>&nbsp;返回营销中心页</i-button>
  131. </a>
  132. </div>
  133. </Row>
  134. <table id="jqGrid"></table>
  135. <div id="jqGridPager"></div>
  136. </Card>
  137. <Card v-show="!showList">
  138. <!--<p slot="title">{{title}}</p>-->
  139. <i-form ref="formValidate" :model="mkStoreTicketDiscount" :rules="ruleValidate" :label-width="140">
  140. <Tabs value="name1" @on-click="tabsClick">
  141. <!--@on-click="tabsClick"-->
  142. <Tab-Pane label="基本属性" name="name1">
  143. <!--<Form-item label="活动id" prop="storeTopicId">-->
  144. <!--<i-input v-model="mkStoreTicketDiscount.storeTopicId" placeholder="活动id"/>-->
  145. <!--</Form-item>-->
  146. <Form-item label="优惠券标题" prop="name">
  147. <i-input v-model="mkStoreTicketDiscount.name" placeholder="优惠券标题" style="width: 400px" v-show="!isOperatorShow"></i-input>
  148. <i-input v-model="mkStoreTicketDiscount.name" placeholder="优惠券标题" style="width: 400px" v-show="isOperatorShow" disabled></i-input>
  149. </Form-item>
  150. <Form-item label="优惠券副标题" prop="tickDiscSubTitle">
  151. <i-input v-model="mkStoreTicketDiscount.tickDiscSubTitle" placeholder="优惠券副标题" style="width: 400px" v-show="!isOperatorShow"></i-input>
  152. <i-input v-model="mkStoreTicketDiscount.tickDiscSubTitle" placeholder="优惠券副标题" style="width: 400px" v-show="isOperatorShow" disabled></i-input>
  153. </Form-item>
  154. <Form-item label="生效时间" prop="effectTimeType" >
  155. <Radio-group v-model="mkStoreTicketDiscount.effectTimeType" @on-change="changeEffectTimeType" v-show="!isOperatorShow">
  156. <Radio label="00">
  157. <span>固定时间</span>
  158. </Radio>
  159. <!-- TODO req_hidden_20200610 <Radio label="01">
  160. <span>领取后生效</span>
  161. </Radio>-->
  162. </Radio-group>
  163. <Radio-group v-model="mkStoreTicketDiscount.effectTimeType" @on-change="changeEffectTimeType" v-show="isOperatorShow">
  164. <Radio label="00" disabled>
  165. <span>固定时间</span>
  166. </Radio>
  167. <!-- TODO req_hidden_20200610<Radio label="01" disabled>
  168. <span>领取后生效</span>
  169. </Radio>-->
  170. </Radio-group>
  171. </Form-item>
  172. <Form-item label="固定开始时间" prop="fixBegTime" v-show="isEffectTimeType00">
  173. <!--<i-input v-model="mkStoreTicketDiscount.fixBegTime" placeholder="固定开始时间,yyyy-MM-dd" style="width: 400px;"/>-->
  174. <Date-picker format="yyyy-MM-dd" v-model="mkStoreTicketDiscount.fixBegTime" placeholder="固定开始时间"
  175. style="width: 400px;" v-show="!isOperatorShow"></Date-picker>
  176. <Date-picker format="yyyy-MM-dd" v-model="mkStoreTicketDiscount.fixBegTime" placeholder="固定开始时间"
  177. style="width: 400px;" v-show="isOperatorShow" disabled></Date-picker>
  178. </Form-item>
  179. <Form-item label="固定结束时间" prop="fixEndTime" v-show="isEffectTimeType00">
  180. <!--<i-input v-model="mkStoreTicketDiscount.fixEndTime" placeholder="固定结束时间,yyyy-MM-dd" style="width: 400px;"/>-->
  181. <Date-picker format="yyyy-MM-dd" v-model="mkStoreTicketDiscount.fixEndTime" placeholder="固定结束时间"
  182. style="width: 400px;"/>
  183. </Form-item>
  184. <Form-item label="领券以后" prop="postponeNum" v-show="isEffectTimeType01">
  185. <i-input v-model="mkStoreTicketDiscount.postponeNum" placeholder="领券延期生效天数(天)" style="width: 400px;" v-show="!isOperatorShow"><span slot="append">天</span></i-input>
  186. <i-input v-model="mkStoreTicketDiscount.postponeNum" placeholder="领券延期生效天数(天)" style="width: 400px;" v-show="isOperatorShow" disabled><span slot="append">天</span></i-input>
  187. </Form-item>
  188. <Form-item label="有效天数" prop="validDayNum" v-show="isEffectTimeType01">
  189. <i-input v-model="mkStoreTicketDiscount.validDayNum" placeholder="领券使用有效天数(天)" style="width: 400px;" v-show="!isOperatorShow"><span slot="append">天</span></i-input>
  190. <i-input v-model="mkStoreTicketDiscount.validDayNum" placeholder="领券使用有效天数(天)" style="width: 400px;" v-show="isOperatorShow" disabled><span slot="append">天</span></i-input>
  191. </Form-item>
  192. <Form-item label="优惠类型" prop="tickDiscType">
  193. <Radio-group v-model="mkStoreTicketDiscount.tickDiscType" @on-change="chanTick" v-show="!isOperatorShow">
  194. <Radio label="00">
  195. <span>代金券</span>
  196. </Radio>
  197. <Radio label="01">
  198. <span>折扣券</span>
  199. </Radio>
  200. <!--<Radio label="02">-->
  201. <!--<span>兑换券</span>-->
  202. <!--</Radio>-->
  203. </Radio-group>
  204. <Radio-group v-model="mkStoreTicketDiscount.tickDiscType" @on-change="chanTick" v-show="isOperatorShow">
  205. <Radio label="00" disabled>
  206. <span>代金券</span>
  207. </Radio>
  208. <Radio label="01" disabled>
  209. <span>折扣券</span>
  210. </Radio>
  211. <!--<Radio label="02" disabled>-->
  212. <!--<span>兑换券</span>-->
  213. <!--</Radio>-->
  214. </Radio-group>
  215. </Form-item>
  216. <Form-item label="代金券减免金额" prop="voucherMoney" v-show="isVoucher">
  217. <i-input v-model="mkStoreTicketDiscount.voucherMoney" placeholder="代金券减免金额(元)" style="width: 400px;" v-show="!isOperatorShow"><span slot="append">元</span></i-input>
  218. <i-input v-model="mkStoreTicketDiscount.voucherMoney" placeholder="代金券减免金额(元)" style="width: 400px;" v-show="isOperatorShow" disabled><span slot="append">元</span></i-input>
  219. </Form-item>
  220. <Form-item label="代金券使用条件" prop="voucherCond" v-show="isVoucher">
  221. <i-input v-model="mkStoreTicketDiscount.voucherCond" placeholder="代金券使用条件(元),消费金额满多少使用" style="width: 400px;" v-show="!isOperatorShow"><span slot="append">元</span></i-input>
  222. <i-input v-model="mkStoreTicketDiscount.voucherCond" placeholder="代金券使用条件(元),消费金额满多少使用" style="width: 400px;" v-show="isOperatorShow" disabled><span slot="append">元</span></i-input>
  223. </Form-item>
  224. <Form-item label="折扣券折扣" prop="discRatio" v-show="isDisc">
  225. <i-input v-model="mkStoreTicketDiscount.discRatio" placeholder="折扣券折扣(折),1-9.9之间的数字,精确到小数点后1位" style="width: 400px;" v-show="!isOperatorShow"><span slot="append">折</span></i-input>
  226. <i-input v-model="mkStoreTicketDiscount.discRatio" placeholder="折扣券折扣(折),1-9.9之间的数字,精确到小数点后1位" style="width: 400px;" v-show="isOperatorShow" disabled><span slot="append">折</span></i-input>
  227. </Form-item>
  228. <Form-item label="折扣券使用条件" prop="discCond" v-show="isDisc">
  229. <i-input v-model="mkStoreTicketDiscount.discCond" placeholder="折扣券使用条件(元),消费金额满多少使用" style="width: 400px;" v-show="!isOperatorShow"><span slot="append">元</span></i-input>
  230. <i-input v-model="mkStoreTicketDiscount.discCond" placeholder="折扣券使用条件(元),消费金额满多少使用" style="width: 400px;" v-show="isOperatorShow" disabled><span slot="append">元</span></i-input>
  231. </Form-item>
  232. <Form-item label="兑换券使用条件" prop="exchCond" v-show="isExch">
  233. <i-input v-model="mkStoreTicketDiscount.exchCond" placeholder="兑换券使用条件(元),消费金额满多少使用" style="width: 400px;" v-show="!isOperatorShow"><span slot="append">元</span></i-input>
  234. <i-input v-model="mkStoreTicketDiscount.exchCond" placeholder="兑换券使用条件(元),消费金额满多少使用" style="width: 400px;" v-show="isOperatorShow" disabled><span slot="append">元</span></i-input>
  235. </Form-item>
  236. <Form-item label="库存" prop="ticketNum">
  237. <i-input v-model="mkStoreTicketDiscount.ticketNum" placeholder="库存" style="width: 400px" v-show="!isOperatorShow"></i-input>
  238. <i-input v-model="mkStoreTicketDiscount.ticketNum" placeholder="库存" style="width: 400px" v-show="isOperatorShow" disabled></i-input>
  239. </Form-item>
  240. </Tab-Pane>
  241. <Tab-Pane label="发放使用" name="name2">
  242. <Form-item label="所属三方商户" prop="thirdMerchSn">
  243. <i-select v-model="mkStoreTicketDiscount.thirdMerchSn" placeholder="所属三方商户" style="width: 268px;" @on-change="changeStore" v-show="!isOperatorShow" label-in-value>
  244. <i-option v-for="thirdMerchant in thirdMerchantBizList" :value="thirdMerchant.thirdMerchSn" :key="thirdMerchant.thirdMerchSn">{{thirdMerchant.thirdPartyMerchName}}</i-option>
  245. </i-select>
  246. <i-select v-model="mkStoreTicketDiscount.thirdMerchSn" placeholder="所属三方商户" style="width: 268px;" @on-change="changeStore" v-show="isOperatorShow" disabled label-in-value>
  247. <i-option v-for="thirdMerchant in thirdMerchantBizList" :value="thirdMerchant.thirdMerchSn" :key="thirdMerchant.thirdMerchSn">{{thirdMerchant.thirdPartyMerchName}}</i-option>
  248. </i-select>
  249. </Form-item>
  250. <Form-item label="所属门店" prop="storeId">
  251. <i-select v-model="mkStoreTicketDiscount.storeId" placeholder="所属门店" style="width: 268px;" label-in-value @on-change="changeGoods" v-show="!isOperatorShow">
  252. <i-option v-for="store in storeList" :value="store.id" :key="store.id">{{store.storeName}}
  253. </i-option>
  254. </i-select>
  255. <i-select v-model="mkStoreTicketDiscount.storeId" placeholder="所属门店" style="width: 268px;" label-in-value @on-change="changeGoods" v-show="isOperatorShow" disabled>
  256. <i-option v-for="store in storeList" :value="store.id" :key="store.id">{{store.storeName}}
  257. </i-option>
  258. </i-select>
  259. </Form-item>
  260. <Form-item label="货品业务类型" prop="goodsBizType" >
  261. <i-select v-model="mkStoreTicketDiscount.goodsBizType" placeholder="货品业务类型"
  262. label-in-value style="width: 268px;" @on-change="changeGoodsBizType" v-show="!isOperatorShow">
  263. <i-option v-for="macro in macros" :value="macro.value" :key="macro.id">{{macro.name}}
  264. </i-option>
  265. </i-select>
  266. <i-select v-model="mkStoreTicketDiscount.goodsBizType" placeholder="货品业务类型"
  267. label-in-value style="width: 268px;" @on-change="changeGoodsBizType" v-show="isOperatorShow" disabled>
  268. <i-option v-for="macro in macros" :value="macro.value" :key="macro.id">{{macro.name}}
  269. </i-option>
  270. </i-select>
  271. <div style="float: right;margin-right: 730px;">
  272. <span style="margin-left: 25px;color: red;font-size: 12px;">* 货品业务类型必填,不同业务类型会生成不同订单,订单不能同时使用一个优惠券,会影响清关</span>
  273. </div>
  274. </Form-item>
  275. <Form-item label="适用商品" prop="applyType">
  276. <Radio-group v-model="mkStoreTicketDiscount.applyType" id="applyType" @on-change="changeApplyType">
  277. <!-- TODO req_hidden_20200610<Radio label="00">
  278. <span>全部商品参与</span>
  279. </Radio>-->
  280. <Radio label="01">
  281. <span>指定商品参与</span>
  282. </Radio>
  283. <!-- TODO req_hidden_20200610 <Radio label="02">
  284. <span>指定商品不参与</span>
  285. </Radio>-->
  286. </Radio-group>
  287. </Form-item>
  288. <Form-item label="" v-show="isApplyType">
  289. <div style="width: 980px;border: 1px solid rgb(243, 243, 243);height: 170px;background: rgb(243, 243, 243);border-radius: 10px;" v-show="checkGoodsTotalCount>0">
  290. <div style="margin-top: 12px;margin-left: 10px;height: 120px;">
  291. <div v-for="item in checkGoodsDataList" :item="item" style=" width: 300px; float: left;border: 1px silver solid; margin: 8px;border-radius: 6px;">
  292. <span style="margin-top: 7px;width: 150px;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-box-orient: vertical;
  293. -webkit-line-clamp: 2;line-height: 20px;max-height: 20px;float: left;margin-left: 4px;">{{item.goodsName}}</span><span>¥{{item.retailPrice}}</span>
  294. <span style="float: right;margin-right: 10px;"><a @click="delCheckGoods(item.discGoodTempId,item.goodsId)">删除</a></span>
  295. </div>
  296. </div>
  297. <div style="text-align: right;">
  298. <Page :total="checkGoodsTotalCount" :current="checkGoodsCurrentPage" :page-size="checkGoodsLimit" @on-change="loadCheckGoodsDataByPage" @on-page-size-change='handleCheckGoodsPageSize'>
  299. </Page>
  300. </div>
  301. </div>
  302. <div style="width: 100%">
  303. <i-button @click="checkGoods" type="primary">选择商品</i-button>
  304. </div>
  305. <Modal title="选择商品" v-model="value3" @on-ok="ok" @on-cancel="cancel" :mask-closable="false" width="900px" :styles="{top: '20px'}">
  306. <div class="search-group">
  307. <i-col span="4">
  308. <i-input v-model="g.goodsName" @on-enter="query" placeholder="名称"/>
  309. </i-col>
  310. <i-button @click="reloadGoodsByStore">查询</i-button>
  311. <i-button @click="reloadGoodsSearch">重置</i-button>
  312. </div>
  313. <div style="margin-top: 10px; height: 400px">
  314. <div v-for="item in goodsList" :item="item" style="padding-left:5px;padding-right:5px;width: 100%" v-show="goodsList.length>0">
  315. <div v-show="item.isCheck==0" class="col-sm-3 goods-item clearfix" name="noCheck" @click="selectThisGoods(item)" :id="item.goodsId">
  316. <div class="goods-img fl">
  317. <img :src="item.listPicUrl" style="background-repeat: no-repeat;
  318. background-position: center center; background-size: cover;" class="goods-img-wrapper">
  319. <div class="bg-model" :id="item.id" style="display: none;">
  320. <div class="bg-model-model"></div>
  321. <img src="${rc.contextPath}/statics/img/selected.png" alt="" style="width: 30px;height: 30px;
  322. margin-left: 10px;margin-top: 10px;">
  323. </div>
  324. </div>
  325. <div class="goods-info fl">
  326. <div class="goods-intro ng-binding" :title="item.goodsName">
  327. <span package-logic="app-goods-management-addGoods#div-selectGoodsType">
  328. <!--<div ng-show="item.goodsActivityList.length>3" class="actSign ng-hide" popover="该商品参加了以下活动:"
  329. popover-placement="right-bottom" popover-trigger="mouseenter"
  330. popover-append-to-body="true" style="border-radius:4px;">
  331. </div>-->
  332. </span> {{item.goodsName}}
  333. </div>
  334. <p class="goods-price ng-binding">¥ {{item.retailPrice==null?0:item.retailPrice}}</p>
  335. </div>
  336. <div class="goods-mask">
  337. <p style="text-align:center;color: #FFFFFF;">不支持参加此活动</p>
  338. </div>
  339. </div>
  340. <div v-show="item.isCheck==1" class="col-sm-3 goods-item clearfix select" name="noCheck" @click="selectThisGoods(item)" :id="item.goodsId">
  341. <div class="goods-img fl">
  342. <img :src="item.listPicUrl" style="background-repeat: no-repeat;
  343. background-position: center center; background-size: cover;" class="goods-img-wrapper">
  344. <div class="bg-model" :id="item.id" style="display: block;">
  345. <div class="bg-model-model"></div>
  346. <img src="${rc.contextPath}/statics/img/selected.png" alt="" style="width: 30px;height: 30px;
  347. margin-left: 10px;margin-top: 10px;">
  348. </div>
  349. </div>
  350. <div class="goods-info fl">
  351. <div class="goods-intro ng-binding" :title="item.goodsName">
  352. <span package-logic="app-goods-management-addGoods#div-selectGoodsType">
  353. <!--<div ng-show="item.goodsActivityList.length>3" class="actSign ng-hide" popover="该商品参加了以下活动:"
  354. popover-placement="right-bottom" popover-trigger="mouseenter"
  355. popover-append-to-body="true" style="border-radius:4px;">
  356. </div>-->
  357. </span> {{item.goodsName}}
  358. </div>
  359. <p class="goods-price ng-binding">¥ {{item.retailPrice==null?0:item.retailPrice}}</p>
  360. </div>
  361. <div class="goods-mask">
  362. <p style="text-align:center;color: #FFFFFF;">不支持参加此活动</p>
  363. </div>
  364. </div>
  365. </div>
  366. <!--<table id="jqGoodsGrid"></table>-->
  367. <!--<div id="jqGoodsGridPager"></div>-->
  368. </div>
  369. <div style="text-align: right;">
  370. <Page :total="totalCount" :current="currentPage" :page-size="limit" class="page" show-total
  371. placement="top" @on-change="loadGoodsDataByPage" @on-page-size-change='handlePageSize'>
  372. </Page>
  373. </div>
  374. </Modal>
  375. </Form-item>
  376. <Form-item label="领取入口" prop="getEnter">
  377. <Checkbox-group v-model="mkStoreTicketDiscount.getEnter">
  378. <Checkbox label="1"><span>商品详情页/购物车等商城页面</span></Checkbox>
  379. </Checkbox-group>
  380. <!--<i-input v-model="mkStoreTicketDiscount.getEnter" placeholder="领取入口,格式:1,2,...,n,【get_enter,1:商品详情页/购物车等商城页面】"/>-->
  381. </Form-item>
  382. <!-- TODO req_hidden_20200610 <Form-item label="能否分享领取" prop="canShareGet">
  383. <Checkbox-group v-model="mkStoreTicketDiscount.canShareGet">
  384. <Checkbox label="0"><span>用户可以分享链接领取(小程序暂不支持分享)</span></Checkbox>
  385. </Checkbox-group>
  386. &lt;!&ndash;<i-input v-model="mkStoreTicketDiscount.canShareGet" placeholder="能否分享领取,【can_share_get,0:能,1:否】"/>&ndash;&gt;
  387. </Form-item>-->
  388. <Form-item label="每人限领数(张)" prop="limitNum">
  389. <i-input v-model="mkStoreTicketDiscount.limitNum" placeholder="每人限领数(张),每个用户领券上限,如不填则默认为1" style="width: 400px"/>
  390. </Form-item>
  391. </Tab-Pane>
  392. <Tab-Pane label="券面信息" name="name3" >
  393. <Row>
  394. <i-col span="16">
  395. <Form-item label="活动图片url(小图)" prop="advImgUrl">
  396. <i-input v-model="mkStoreTicketDiscount.advImgUrl" placeholder="活动图片url(小图)" readonly/>
  397. </Form-item>
  398. </i-col>
  399. <i-col span="3">
  400. <Form-item :label-width="1">
  401. <Upload style="width: 300px;" action="../sys/oss/upload" :format="['jpg','jpeg','png']"
  402. max-size="100"
  403. :on-success="handleSuccessAdvImgUrl" :on-format-error="handleFormatError"
  404. :show-upload-list="false"
  405. :on-exceeded-size="handleMaxSize">
  406. <i-button icon="ios-cloud-upload-outline">上传图片</i-button>
  407. </Upload>
  408. </Form-item>
  409. </i-col>
  410. <i-col span="4">
  411. <Form-item :label-width="1">
  412. <i-button icon="eye" @click="eyeImageAdvImgUrl">预览图片</i-button>
  413. </Form-item>
  414. </i-col>
  415. </Row>
  416. <Row>
  417. <i-col span="16" style="margin-top: -30px;">
  418. <span style="margin-left: 100px;color: red;font-size: 12px;">* 尺寸建议410*110像素以内,大小100K以下</span>
  419. </i-col>
  420. </Row>
  421. <Row>
  422. <i-col span="16">
  423. <Form-item label="门店logo图url" prop="storeLogoUrl">
  424. <i-input v-model="mkStoreTicketDiscount.storeLogoUrl" placeholder="门店logo图url" readonly/>
  425. </Form-item>
  426. </i-col>
  427. <i-col span="3">
  428. <Form-item :label-width="1">
  429. <Upload style="width: 300px;" action="../sys/oss/upload" :format="['jpg','jpeg','png']"
  430. max-size="100"
  431. :on-success="handleSuccessStoreLogoUrl" :on-format-error="handleFormatError"
  432. :show-upload-list="false"
  433. :on-exceeded-size="handleMaxSize">
  434. <i-button icon="ios-cloud-upload-outline">上传图片</i-button>
  435. </Upload>
  436. </Form-item>
  437. </i-col>
  438. <i-col span="4">
  439. <Form-item :label-width="1">
  440. <i-button icon="eye" @click="eyeImageStoreLogoUrl">预览图片</i-button>
  441. </Form-item>
  442. </i-col>
  443. </Row>
  444. <Row>
  445. <i-col span="16" style="margin-top: -30px;">
  446. <span style="margin-left: 140px;color: red;font-size: 12px;">* 尺寸建议410*110像素以内,大小100K以下</span>
  447. </i-col>
  448. </Row>
  449. <Form-item label="图片是否展示在广告栏" prop="isStoreShow">
  450. <Radio-group v-model="mkStoreTicketDiscount.isStoreShow">
  451. <Radio label="0">
  452. <span>否</span>
  453. </Radio>
  454. <Radio label="1">
  455. <span>是</span>
  456. </Radio>
  457. </Radio-group>
  458. </Form-item>
  459. <!--<Form-item label="门店名称,默认填写商户门店名称" prop="storeName">-->
  460. <!--<i-input v-model="mkStoreTicketDiscount.storeName" placeholder="门店名称,默认填写商户门店名称"/>-->
  461. <!--</Form-item>-->
  462. <Form-item label="券面颜色" prop="ticketColor">
  463. <!--<i-input v-model="mkStoreTicketDiscount.ticketColor" placeholder="券面颜色,如:#ababab" @on-change="changeStore" label-in-value/>-->
  464. <div>
  465. <div style="width: 30px;height: 30px;background-color: #00CC00;float: left;margin-right: 10px;cursor: pointer;" name="noCheck" id="00CC00" @click="getColor('00CC00','g')"></div>
  466. <div style="width: 30px;height: 30px;background-color: #009900;float: left;margin-right: 10px;cursor: pointer;" name="noCheck" id="009900" @click="getColor('009900','g')"></div>
  467. <div style="width: 30px;height: 30px;background-color: #66CCCC;float: left;margin-right: 10px;cursor: pointer;" name="noCheck" id="66CCCC" @click="getColor('66CCCC','g')"></div>
  468. <div style="width: 30px;height: 30px;background-color: #009999;float: left;margin-right: 10px;cursor: pointer;" name="noCheck" id="009999" @click="getColor('009999','g')"></div>
  469. <div style="width: 30px;height: 30px;background-color: #FF9966;float: left;margin-right: 10px;cursor: pointer;" name="noCheck" id="FF9966" @click="getColor('FF9966','r')"></div>
  470. <div style="width: 30px;height: 30px;background-color: #FF0066;float: left;margin-right: 10px;cursor: pointer;" name="noCheck" id="FF0066" @click="getColor('FF0066','r')"></div>
  471. <div style="width: 30px;height: 30px;background-color: #CC00FF;float: left;margin-right: 10px;cursor: pointer;" name="noCheck" id="CC00FF" @click="getColor('CC00FF','r')"></div>
  472. <div style="width: 30px;height: 30px;background-color: #CC0000;float: left;margin-right: 10px;cursor: pointer;" name="noCheck" id="CC0000" @click="getColor('CC0000','r')"></div>
  473. </div>
  474. </Form-item>
  475. <Form-item label="操作说明" prop="optDecl">
  476. <i-input v-model="mkStoreTicketDiscount.optDecl" placeholder="操作说明" style="width: 400px"/>
  477. </Form-item>
  478. <Form-item label="优惠说明" prop="discDecl">
  479. <i-input type="textarea" :rows="3" v-model="mkStoreTicketDiscount.discDecl" placeholder="满*元,减*元,全部商品可用" style="width: 400px" v-show="!isOperatorShow"></i-input>
  480. <i-input type="textarea" :rows="3" v-model="mkStoreTicketDiscount.discDecl" placeholder="满*元,减*元,全部商品可用" style="width: 400px" v-show="isOperatorShow" disabled></i-input>
  481. </Form-item>
  482. <Form-item label="使用须知" prop="useNoti">
  483. <i-input type="textarea" :rows="3" v-model="mkStoreTicketDiscount.useNoti" placeholder="每人限领*张,不可转赠好友,仅限商城下单使用" style="width: 400px" v-show="!isOperatorShow"></i-input>
  484. <i-input type="textarea" :rows="3" v-model="mkStoreTicketDiscount.useNoti" placeholder="每人限领*张,不可转赠好友,仅限商城下单使用" style="width: 400px" v-show="isOperatorShow" disabled></i-input>
  485. </Form-item>
  486. <Form-item label="客服电话" prop="svrTel">
  487. <i-input v-model="mkStoreTicketDiscount.svrTel" placeholder="客服电话" style="width: 400px" v-show="!isOperatorShow"><span slot="append">手机或固话</span></i-input>
  488. <i-input v-model="mkStoreTicketDiscount.svrTel" placeholder="客服电话" style="width: 400px" v-show="isOperatorShow" disabled><span slot="append">手机或固话</span></i-input>
  489. </Form-item>
  490. <Form-item label="是否有效" prop="isValid">
  491. <Radio-group v-model="mkStoreTicketDiscount.isValid">
  492. <Radio label="0">
  493. <span>有效</span>
  494. </Radio>
  495. <Radio label="1">
  496. <span>无效</span>
  497. </Radio>
  498. </Radio-group>
  499. </Form-item>
  500. <!--<Form-item label="备注" prop="note">-->
  501. <!--<i-input v-model="mkStoreTicketDiscount.note" placeholder="备注"/>-->
  502. <!--</Form-item>-->
  503. <!--<Form-item label="创建人编号" prop="createrSn">
  504. <i-input v-model="mkStoreTicketDiscount.createrSn" placeholder="创建人编号"/>
  505. </Form-item>
  506. <Form-item label="创建时间" prop="createTime">
  507. <i-input v-model="mkStoreTicketDiscount.createTime" placeholder="创建时间"/>
  508. </Form-item>
  509. <Form-item label="修改人编号" prop="moderSn">
  510. <i-input v-model="mkStoreTicketDiscount.moderSn" placeholder="修改人编号"/>
  511. </Form-item>
  512. <Form-item label="修改时间" prop="modTime">
  513. <i-input v-model="mkStoreTicketDiscount.modTime" placeholder="修改时间"/>
  514. </Form-item>
  515. <Form-item label="时间戳" prop="tstm">
  516. <i-input v-model="mkStoreTicketDiscount.tstm" placeholder="时间戳"/>
  517. </Form-item>
  518. <Form-item label="发放方式 0:按订单发放 1:按用户发放(通用优惠券,用户点击领取) 2:商品转发送券 3:按商品发放 4:新用户注册 5:线下发放 6评价好评红包(固定或随机红包) 7包邮(不入会员优惠券表)" prop="sendType">
  519. <i-input v-model="mkStoreTicketDiscount.sendType" placeholder="发放方式 0:按订单发放 1:按用户发放(通用优惠券,用户点击领取) 2:商品转发送券 3:按商品发放 4:新用户注册 5:线下发放 6评价好评红包(固定或随机红包) 7包邮(不入会员优惠券表)"/>
  520. </Form-item>-->
  521. </Tab-Pane>
  522. </Tabs>
  523. </i-form>
  524. <div style="padding-left: 20px">
  525. <i-button type="primary" @click="handleSubmit('formValidate')">提交</i-button>
  526. <i-button type="warning" @click="reloadBack" style="margin-left: 8px"/>返回</i-button>
  527. <!--<i-button type="ghost" @click="handleReset('formValidate')" style="margin-left: 8px">重置</i-button>-->
  528. </div>
  529. </Card>
  530. <Card v-show="!showInfoList">
  531. <p slot="title">{{title}}</p>
  532. <i-form :model="mkStoreTicketDiscount" :label-width="120">
  533. <Tabs value="name1">
  534. <Tab-Pane label="基本属性" name="name1">
  535. <Form-item label="所属门店">
  536. {{mkStoreTicketDiscount.storeName==null?'未设置': mkStoreTicketDiscount.storeName}}
  537. </Form-item>
  538. <Form-item label="业务类型">
  539. {{mkStoreTicketDiscount.goodsBizType==null?'未设置': ''}}{{mkStoreTicketDiscount.goodsBizType=='00'?'保税备货': ''}}{{mkStoreTicketDiscount.goodsBizType=='02'?'保税展示补货': ''}}{{mkStoreTicketDiscount.goodsBizType=='10'?'保税展示跨境': ''}}{{mkStoreTicketDiscount.goodsBizType=='11'?'普通商品': ''}}
  540. </Form-item>
  541. <Form-item label="优惠券标题">
  542. {{mkStoreTicketDiscount.name==null?'未设置': mkStoreTicketDiscount.name}}
  543. </Form-item>
  544. <Form-item label="优惠券副标题">
  545. {{mkStoreTicketDiscount.tickDiscSubTitle==null?'未设置': mkStoreTicketDiscount.tickDiscSubTitle}}
  546. </Form-item>
  547. <Form-item label="生效时间">
  548. {{mkStoreTicketDiscount.inValidTime==null?'未设置': mkStoreTicketDiscount.inValidTime}}
  549. </Form-item>
  550. <Form-item label="优惠类型">
  551. {{mkStoreTicketDiscount.tickDiscType==null?'未设置': ''}}{{mkStoreTicketDiscount.tickDiscType=='00'?'代金券': ''}}{{mkStoreTicketDiscount.tickDiscType=='01'?'折扣券': ''}}{{mkStoreTicketDiscount.tickDiscType=='02'?'兑换券': ''}}
  552. </Form-item>
  553. <Form-item label="代金券减免金额" v-show="isVoucher">
  554. {{mkStoreTicketDiscount.voucherMoney==null?'未设置': mkStoreTicketDiscount.voucherMoney}}
  555. </Form-item>
  556. <Form-item label="代金券使用条件" v-show="isVoucher">
  557. {{mkStoreTicketDiscount.voucherCond==null?'未设置': mkStoreTicketDiscount.voucherCond}}
  558. </Form-item>
  559. <Form-item label="折扣券折扣" v-show="isDisc">
  560. {{mkStoreTicketDiscount.discRatio==null?'未设置': mkStoreTicketDiscount.discRatio}}
  561. </Form-item>
  562. <Form-item label="折扣券使用条件" v-show="isDisc">
  563. {{mkStoreTicketDiscount.discCond==null?'未设置': mkStoreTicketDiscount.discCond}}
  564. </Form-item>
  565. <Form-item label="兑换券使用条件" v-show="isExch">
  566. {{mkStoreTicketDiscount.exchCond==null?'未设置': mkStoreTicketDiscount.exchCond}}
  567. </Form-item>
  568. <Form-item label="库存">
  569. {{mkStoreTicketDiscount.ticketNum==null?'未设置': mkStoreTicketDiscount.ticketNum}}
  570. </Form-item>
  571. </Tab-Pane>
  572. <Tab-Pane label="发放使用" name="name2">
  573. <Form-item label="适用商品">
  574. {{mkStoreTicketDiscount.applyType==null?'未设置': ''}}{{mkStoreTicketDiscount.applyType=='00'?'全部商品参与': ''}}{{mkStoreTicketDiscount.applyType=='01'?'指定商品参与': ''}}{{mkStoreTicketDiscount.applyType=='02'?'指定商品不参与': ''}}
  575. </Form-item>
  576. <Form-item label="" v-show="isApplyType">
  577. <div style="width: 980px;border: 1px solid rgb(243, 243, 243);height: 210px;background: rgb(243, 243, 243);border-radius: 10px;" v-show="checkGoodsDataList.length>0">
  578. <div style="margin-top: 12px;margin-left: 10px;height: 150px;">
  579. <div v-for="item in checkGoodsDataList" :item="item" style=" width: 300px; float: left;border: 1px silver solid; margin: 8px;border-radius: 6px;">
  580. <span style="margin-top: 7px;width: 150px;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-box-orient: vertical;
  581. -webkit-line-clamp: 2;line-height: 20px;max-height: 20px;float: left;margin-left: 4px;">{{item.goodsName}}</span><span>¥{{item.retailPrice}}</span>
  582. <span style="float: right;margin-right: 10px;"><a @click="delCheckGoods(item.discGoodTempId,item.goodsId)" v-show="showInfoList">删除</a></span>
  583. </div>
  584. </div>
  585. <div style="text-align: right;">
  586. <Page :total="checkGoodsTotalCount" :current="checkGoodsCurrentPage" :page-size="checkGoodsLimit" @on-change="loadCheckGoodsDataByPage" @on-page-size-change='handleCheckGoodsPageSize'>
  587. </Page>
  588. </div>
  589. </div>
  590. </Form-item>
  591. <Form-item label="领取入口">
  592. {{mkStoreTicketDiscount.getEnter==null?'未设置':''}}{{mkStoreTicketDiscount.getEnter=='1'?'商品详情页/购物车等商城页面':''}}
  593. </Form-item>
  594. <Form-item label="能否分享领取">
  595. {{mkStoreTicketDiscount.canShareGet==null?'未设置':''}}{{mkStoreTicketDiscount.canShareGet=='0'?'用户可以分享链接领取(小程序暂不支持分享)':''}}
  596. </Form-item>
  597. <Form-item label="每人限领数(张)">
  598. {{mkStoreTicketDiscount.limitNum==null?'未设置': mkStoreTicketDiscount.limitNum}}
  599. </Form-item>
  600. </Tab-Pane>
  601. <Tab-Pane label="券面信息" name="name3">
  602. <Form-item label="活动图片url(小图)">
  603. <img :src="mkStoreTicketDiscount.advImgUrl" style="width: 60px;height: 60px;"/>
  604. </Form-item>
  605. <Form-item label="门店logo图url">
  606. <img :src="mkStoreTicketDiscount.storeLogoUrl" style="width: 60px;height: 60px;"/>
  607. </Form-item>
  608. <Form-item label="券面颜色">
  609. <div>
  610. <div style="width: 30px;height: 30px;background-color: #00CC00;float: left;margin-right: 10px;cursor: pointer;" name="check" id="ticketColorId"></div>
  611. </div>
  612. </Form-item>
  613. <Form-item label="操作说明">
  614. {{mkStoreTicketDiscount.optDecl}}
  615. </Form-item>
  616. <Form-item label="优惠说明">
  617. {{mkStoreTicketDiscount.discDecl}}
  618. </Form-item>
  619. <Form-item label="使用须知">
  620. {{mkStoreTicketDiscount.useNoti}}
  621. </Form-item>
  622. <Form-item label="客服电话">
  623. {{mkStoreTicketDiscount.svrTel==null?'未设置':mkStoreTicketDiscount.svrTel}}
  624. </Form-item>
  625. <Form-item label="是否有效">
  626. {{mkStoreTicketDiscount.isValid=='0'?'有效':'无效'}}
  627. </Form-item>
  628. </Tab-Pane>
  629. </Tabs>
  630. </i-form>
  631. <div style="padding-left: 20px">
  632. <i-button type="warning" @click="reloadInfoBack" style="margin-left: 8px"/>返回</i-button>
  633. </div>
  634. </Card>
  635. <Card v-show="!showOrderList" style="width: 1680px;">
  636. <p slot="title">{{title}}</p>
  637. <Row :gutter="16">
  638. <div class="search-group">
  639. <i-col span="4">
  640. <i-select v-model="c.isUsed" placeholder="使用状态">
  641. <i-option value="0">未使用</i-option>
  642. <i-option value="1">已使用</i-option>
  643. </i-select>
  644. </i-col>
  645. <i-button @click="queryOrder">查询</i-button>
  646. <i-button @click="reloadOrderSearch">重置</i-button>
  647. </div>
  648. <div class="buttons-group">
  649. #if($shiro.hasPermission("usercoupon:delete"))
  650. <i-button type="error" @click="del"><i class="fa fa-trash-o"></i>&nbsp;批量作废</i-button>
  651. #end
  652. </div>
  653. </Row>
  654. <i-button type="warning" @click="reload" style="margin-left: 8px"/>返回</i-button>
  655. <table id="jqGridOrder"></table>
  656. <div id="jqGridPagerOrder"></div>
  657. </Card>
  658. </div>
  659. <div id="qrcode" style="display: none;padding: 10px;">
  660. <div id="qrcodeCanvas" style="margin: 20px 0 0 55px"></div>
  661. </div>
  662. <div id="qrcImg" style="display:none">
  663. <img class="qrcImg align-center" height="300px" width="300px" src="">
  664. </div>
  665. <script src="${rc.contextPath}/js/mk/mkstoreticketdiscount.js?_${date.systemTime}"></script>
  666. </body>
  667. </html>