index.vue 10.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310
  1. <template>
  2. <div class="merchants">
  3. <common-banner :img="bgImg" :height="718">
  4. <div class="content-wrap">
  5. <div class="content w1200">
  6. <div class="left title">招商加盟体系</div>
  7. <div class="right form">
  8. <div class="submit-area">
  9. <div class="label">加盟申请</div>
  10. <div class="phone-num">
  11. <img
  12. src="http://res.training.luojigou.vip/FmUjRlN7yn8o8HkXV21yOAJt-2C0?imageView2/0/q/50|imageslim"
  13. alt=""
  14. >
  15. <div class="num">400-6807300</div>
  16. </div>
  17. <div class="form">
  18. <el-form :model="form" :rules="rules" ref="ruleForm">
  19. <el-form-item prop="name">
  20. <el-input placeholder="姓名" v-model="form.name"></el-input>
  21. </el-form-item>
  22. <el-form-item prop="phone">
  23. <el-input placeholder="手机号" v-model="form.phone"></el-input>
  24. </el-form-item>
  25. <el-form-item prop="email">
  26. <el-input placeholder="邮箱地址" v-model="form.email"></el-input>
  27. </el-form-item>
  28. <el-form-item prop="city">
  29. <el-input placeholder="加盟城市" v-model="form.city"></el-input>
  30. </el-form-item>
  31. <el-form-item prop="project">
  32. <el-select placeholder="合作项目" v-model="form.project">
  33. <el-option
  34. v-for="(item, index) in projectList"
  35. :key="index"
  36. :label="item.title"
  37. :value="item.title">
  38. </el-option>
  39. </el-select>
  40. </el-form-item>
  41. <div class="submit" @click="handleSubmit('ruleForm')">提交申请</div>
  42. </el-form>
  43. <!-- <img class="cp" src="http://res.training.luojigou.vip/Fk2Fz3gN8jDHAHiQaOBJI3KZSyHx?imageView2/0/q/50|imageslim" alt=""> -->
  44. </div>
  45. </div>
  46. </div>
  47. </div>
  48. </div>
  49. </common-banner>
  50. <!-- <div class="header">
  51. <img :src="bgImg" alt="" srcset="">
  52. </div> -->
  53. <div class="list-wrap w1200">
  54. <div class="item" v-for="(item, index) in merchantsList" :key="index">
  55. <div class="item-left">
  56. <img :src="item.imgUrl" alt="" srcset="">
  57. </div>
  58. <div class="item-right">
  59. <div class="title">{{ item.title }}</div>
  60. <div class="desc">{{ item.desc }}</div>
  61. </div>
  62. </div>
  63. </div>
  64. </div>
  65. </template>
  66. <script>
  67. import axios from "axios";
  68. import CommonBanner from '@/components/common/banner';
  69. export default {
  70. data() {
  71. return {
  72. form: {},
  73. bgImg: require('@/assets/images/merchants/bg.png'),
  74. projectList: [
  75. {
  76. id: 1,
  77. title: '逻辑狗·探索小镇'
  78. },
  79. {
  80. id: 2,
  81. title: '逻辑狗专柜'
  82. },
  83. {
  84. id: 3,
  85. title: '逻辑狗思维体验Plus'
  86. },
  87. {
  88. id: 4,
  89. title: '逻辑狗思维体验Home'
  90. },
  91. {
  92. id: 5,
  93. title: '逻辑狗体验中心'
  94. }
  95. ],
  96. merchantsList: [
  97. {
  98. imgUrl: require('@/assets/images/merchants/merchants_img_01.png'),
  99. title: '逻辑狗专柜',
  100. desc: '逻辑狗·探索小镇是襄阳市首家专注于儿童优质思维能力养成的游戏式体验中心。为2.5—8岁儿童提供具有国际品质的全球同频思维训练课程服务。通过多种思维游戏体验帮助孩子获得卓越的思维能力,养成优秀的思维习惯,成就未来幸福人生。'
  101. },
  102. {
  103. imgUrl: require('@/assets/images/merchants/merchants_img_02.png'),
  104. title: '逻辑狗思维体验Plus',
  105. desc: '逻辑狗专柜是襄阳市首家专注于儿童优质思维能力养成的游戏式体验中心。为2.5—8岁儿童提供具有国际品质的全球同频思维训练课程服务。通过多种思维游戏体验帮助孩子获得卓越的思维能力,养成优秀的思维习惯,成就未来幸福人生。'
  106. },
  107. {
  108. imgUrl: require('@/assets/images/merchants/merchants_img_03.png'),
  109. title: '逻辑狗思维体验Home',
  110. desc: '逻辑狗专柜是襄阳市首家专注于儿童优质思维能力养成的游戏式体验中心。为2.5—8岁儿童提供具有国际品质的全球同频思维训练课程服务。通过多种思维游戏体验帮助孩子获得卓越的思维能力,养成优秀的思维习惯,成就未来幸福人生。',
  111. },
  112. {
  113. imgUrl: require('@/assets/images/merchants/merchants_img_04.png'),
  114. title: '逻辑狗·探索小镇',
  115. desc: '逻辑狗专柜是襄阳市首家专注于儿童优质思维能力养成的游戏式体验中心。为2.5—8岁儿童提供具有国际品质的全球同频思维训练课程服务。通过多种思维游戏体验帮助孩子获得卓越的思维能力,养成优秀的思维习惯,成就未来幸福人生。',
  116. }
  117. ],
  118. rules: {
  119. name: [{ required: true, message: "请输入姓名", trigger: "blur" }],
  120. phone: [
  121. { required: true, message: "请输入手机号", trigger: "blur" },
  122. {
  123. pattern: /^1[345789]\d{9}$/,
  124. message: "请输入正确手机号",
  125. trigger: "blur",
  126. },
  127. ],
  128. email: [
  129. { required: true, message: "请输入邮箱地址", trigger: "blur" },
  130. {
  131. type: "email",
  132. message: "请输入正确的邮箱地址",
  133. trigger: ["blur", "change"],
  134. },
  135. ],
  136. city: [{ required: true, message: "请输入加盟城市", trigger: "blur" }],
  137. },
  138. }
  139. },
  140. components: {
  141. CommonBanner
  142. },
  143. methods: {
  144. async handleSubmit(formName) {
  145. this.$refs[formName].validate(async (valid) => {
  146. if (valid) {
  147. const { data } = await axios.post(`${this.$store.state.wordpressAPI}/official-api/joinIn`,{
  148. ...this.form
  149. });
  150. if(data.status == 200 ) {
  151. this.$notify({
  152. title: '成功',
  153. message: '提交成功',
  154. type: 'success'
  155. });
  156. this.$refs[formName].resetFields();
  157. } else {
  158. this.$notify({
  159. title: '失败',
  160. message: '提交失败',
  161. type: 'info'
  162. });
  163. }
  164. // this.$message.success('提交成功');
  165. } else {
  166. console.log('err');
  167. return false;
  168. }
  169. });
  170. },
  171. }
  172. }
  173. </script>
  174. <style lang="scss">
  175. .merchants {
  176. .list-wrap {
  177. margin-top: 100px;
  178. .item {
  179. display: flex;
  180. margin-bottom: 60px;
  181. &:hover {
  182. background: #FFFFFF;
  183. box-shadow: 20px 20px 25px 0px rgba(211, 229, 255, 0.33);
  184. }
  185. .item-left {
  186. margin-right: 100px;
  187. width: 511px;
  188. height: 363px;
  189. img {
  190. height: 100%;
  191. object-fit: cover;
  192. }
  193. }
  194. .item-right {
  195. margin-right: 38px;
  196. .title {
  197. font-size: 30px;
  198. font-family: PingFangSC-Semibold, PingFang SC;
  199. font-weight: 600;
  200. color: #333333;
  201. line-height: 42px;
  202. margin-top: 34px;
  203. }
  204. .desc {
  205. font-size: 14px;
  206. font-family: PingFangSC-Regular, PingFang SC;
  207. font-weight: 400;
  208. color: #666666;
  209. line-height: 28px;
  210. margin-top: 47px;
  211. }
  212. }
  213. }
  214. }
  215. .content-wrap {
  216. margin-top: 94px;
  217. width: 100%;
  218. position: absolute;
  219. z-index: 10;
  220. // top: 50%;
  221. // transform: translateY(-50%);
  222. .content {
  223. display: flex;
  224. justify-content: space-between;
  225. align-items: center;
  226. }
  227. .title {
  228. width: 396px;
  229. height: 92px;
  230. font-size: 66px;
  231. font-family: PingFangSC-Medium, PingFang SC;
  232. font-weight: 500;
  233. color: #FFFFFF;
  234. line-height: 92px;
  235. }
  236. .submit-area {
  237. background: #FFFFFF;
  238. border-radius: 20px;
  239. padding: 32px 38px 32px;
  240. .label {
  241. font-size: 14px;
  242. font-family: PingFangSC-Regular, sans-serif;
  243. font-weight: 400;
  244. color: rgba(91, 95, 93, 1);
  245. margin-bottom: 7px;
  246. }
  247. .phone-num {
  248. display: flex;
  249. align-items: center;
  250. img {
  251. width: 22px;
  252. height: 22px;
  253. display: block;
  254. margin-right: 15px;
  255. }
  256. .num {
  257. font-size: 26px;
  258. font-family: PingFangSC-Medium, sans-serif;
  259. font-weight: bold;
  260. color: rgba(0, 0, 0, 1);
  261. }
  262. }
  263. .form {
  264. margin-top: 20px;
  265. display: flex;
  266. flex-direction: column;
  267. justify-content: space-between;
  268. align-items: center;
  269. .el-input {
  270. width: 250px;
  271. height: 44px;
  272. }
  273. .el-form-item__error {
  274. color: #cd2026;
  275. // left: 124px;
  276. }
  277. .el-form-item {
  278. &.is-error {
  279. .el-input__inner {
  280. border-color: #dcdfe6;
  281. }
  282. }
  283. }
  284. .submit {
  285. margin: 0 auto;
  286. text-align: center;
  287. font-size: 14px;
  288. color: #fff;
  289. width: 148px;
  290. height: 40px;
  291. line-height: 40px;
  292. background: linear-gradient(180deg, #4482FE 0%, #004DE7 100%);
  293. box-shadow: 0px 7px 14px 0px rgba(136, 176, 254, 0.79);
  294. border-radius: 32px;
  295. }
  296. img {
  297. width: 176px;
  298. height: 55px;
  299. }
  300. }
  301. }
  302. }
  303. }
  304. </style>