product.vue 46 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593
  1. <template>
  2. <div class="user-content" >
  3. <div class="provider" id="provider-wrapper">
  4. <div class="search-content" style="border-bottom: 1px solid #f5f5f5;padding-bottom: 0.25rem">
  5. <input type="text" placeholder="请输入您要查找的品牌或型号" v-model="seekKeyword" @keyup.13="searchSeek">
  6. <span @click="searchSeek" >
  7. <i class="iconfont icon-sousuo"></i>
  8. </span>
  9. </div>
  10. <div v-bind:key="index" v-for="(item, index) in GetEnterpriseListData" class="providerList">
  11. <div v-if="providerType !== 'onLine'">
  12. <div class="top">
  13. <div class="icon" :class="item.standard ? 'standed' : 'istanded'"></div>
  14. <div class="text">
  15. {{item.pcmpcode}}
  16. </div>
  17. <img v-if="item.addProductPerson" class="person-flag" src="/images/mobile/product/mine_icon.png" alt="">
  18. </div>
  19. <div class="content">
  20. <div class="fl" :class="providerType === 'enterprise' ? 'fullWidth': ''">
  21. <div class="linetext">品牌:{{item.pbranden}}</div>
  22. <div class="linetext">物料名称(类目):
  23. <template v-if="!item.kind">
  24. {{item.kinden || '-'}}
  25. </template>
  26. <template v-else>
  27. {{item.kind || '-'}}
  28. </template>
  29. </div>
  30. <div class="linetext">规格:{{item.spec}}</div>
  31. <div class="linetext">单位:PCS</div>
  32. </div>
  33. <div class="fr" v-if="providerType !== 'enterprise'" :class="providerType == 'enterprise' && item.batchCount > 0 ? '' : 'addtop'" >
  34. <!--<div class="look" >查看产品</div>-->
  35. <!--<div class="add" >加入个人产品</div>-->
  36. <div class="delete" v-if="providerType == 'person'" @click="deleteProvider(item.id, index)">删除</div>
  37. </div>
  38. </div>
  39. <!--v-if="item.batchCount && providerType == 'enterprise'"-->
  40. <!--v-if="providerType == 'enterprise'"-->
  41. <div class="clearfix" v-if="providerType === 'enterprise'">
  42. <div class="pull-right add" v-if="providerType === 'enterprise'" @click="addProtoperson(item)" :class="{noadd: item.addProductPerson}">加入个人产品</div>
  43. <div class="pull-right look" @click="lookProductitem(item.id, item)" v-if="item.batchCount">查看产品</div>
  44. <div class="pull-right look" @click="toAddpro(item)" v-else>编辑上架</div>
  45. <div class="pull-right look" v-if="providerType === 'enterprise'" @click="updateMateriel(item)">编辑物料</div>
  46. </div>
  47. </div>
  48. <div v-else>
  49. <div class="top top2">
  50. <div class="icon" :class="item.standard ? 'standed' : 'istanded'"></div>
  51. <div class="text">
  52. {{item.code}}
  53. </div>
  54. <!-- <div class="pms">
  55. {{item.storeid === '33069557578d44e69bd91ad12d28a8d4' ? '寄售' : '自营'}}
  56. </div>-->
  57. <img class="store-type" v-if="item.storeid === '33069557578d44e69bd91ad12d28a8d4'" src="/images/mobile/product/consignment.png" alt="">
  58. <img class="store-type" src="/images/mobile/product/self.png" alt="" v-else >
  59. </div>
  60. <div class="middle">
  61. <div class="list" style="height: 0.46rem;">
  62. <div class="fl">
  63. <div class="name">品牌:</div>
  64. <div class="text">{{item.brandNameEn}}</div>
  65. </div>
  66. <div class="fr">
  67. <div class="button" @click="update(item)">编辑</div>
  68. <div class="button" @click="offProduct(item, index)">下架</div>
  69. </div>
  70. </div>
  71. <div class="list">
  72. <div class="fl">
  73. <div class="name">物料名称(类目):</div>
  74. <div class="text">{{item.kindNameCn || '-'}}</div>
  75. </div>
  76. <div class="fr">
  77. <div class="textinfo" v-if="item.breakUp">可拆卖</div>
  78. </div>
  79. </div>
  80. <div class="list">
  81. <div class="fl">
  82. <div class="name">规格:</div>
  83. <div class="text">{{item.spec || '-'}}</div>
  84. </div>
  85. <div class="fr">
  86. <div class="name">交期(天):</div>
  87. <div class="text" v-if="item.b2cMaxDelivery && (item.b2cMaxDelivery != item.b2cMinDelivery)" v-text="item.b2cMinDelivery + '-'+ item.b2cMaxDelivery"></div>
  88. <div class="text" v-if="item.b2cMaxDelivery && (item.b2cMaxDelivery == item.b2cMinDelivery)" v-text="item.b2cMinDelivery"></div>
  89. </div>
  90. </div>
  91. <div class="list">
  92. <div class="fl">
  93. <div class="name">最小包装数:</div>
  94. <div class="text">{{item.minPackQty}}</div>
  95. </div>
  96. <div class="fr">
  97. <div class="name">库存:</div>
  98. <div class="text">{{item.reserve}}</div>
  99. </div>
  100. </div>
  101. <div class="list">
  102. <div class="fl">
  103. <div class="name">包装方式:</div>
  104. <div class="text">{{item.packaging || '无包装信息'}}</div>
  105. </div>
  106. <div class="fr">
  107. <div class="name">最小起订量:</div>
  108. <div class="text" style="color: #f31919">{{item.minBuyQty}}</div>
  109. </div>
  110. </div>
  111. <div class="list">
  112. <div class="name">生产日期:</div>
  113. <div class="text" :title="item.produceDate">{{item.produceDate || '-'}}</div>
  114. </div>
  115. <div class="list">
  116. <div class="name left">价格梯度:</div>
  117. <div class="table left">
  118. <ul>
  119. <li class="title">
  120. <div>分段数量/PCS</div>
  121. <div>分段单价</div>
  122. </li>
  123. <li v-for="price in item.prices">
  124. <div>{{price.start}}+</div>
  125. <div v-if="item.currencyName == 'RMB'">¥{{price.rMBPrice}}</div>
  126. <div v-else>${{price.rMBPrice}}</div>
  127. </li>
  128. </ul>
  129. </div>
  130. </div>
  131. </div>
  132. <!--<div class="labelinfo">
  133. <div class="labelicon">标签</div>
  134. <div class="labeltext">{{item.tag}}</div>
  135. </div>-->
  136. <div class="label-text">{{item.tag || '暂无标签信息'}}</div>
  137. </div>
  138. </div>
  139. </div>
  140. <!-- 企业产品库 查看信息 -->
  141. <div class="deleteKuang" v-show="showMoreinfn" @touchmove="preventTouchMove($event)">
  142. <div class="Kuang">
  143. <div class="title">产品信息<i @click="closeMoreinfo()" class="icon-guanbi iconfont"></i></div>
  144. <div class="overflow-hidden" ref="mobileModalBox" style="max-height: 9.3rem">
  145. <div class="content">
  146. <div class="infob">
  147. <div class="info"><div class="name">品牌:</div><div>{{cnmpBand}}</div></div>
  148. <div class="info"><div class="name">物料名称(类目):</div><div>{{cnmpType || '-'}}</div></div>
  149. <div class="info"><div class="name">型号:</div><div>{{cnmpCode}}</div></div>
  150. </div>
  151. <div class="content_sq" v-bind:key="item.id" v-for="(item, index) in vendorlist" >
  152. <div class="labelBg">
  153. <div class="labelinfo" style="margin-left: -0.1rem">
  154. <div class="labelicon" style="vertical-align:top;margin-top: 0.09rem">标签</div>
  155. <div class="labeltext">{{item.tag}}</div>
  156. </div>
  157. <div class="middle">
  158. <div class="list" style="height: auto">
  159. <div class="fl">
  160. <div class="name">
  161. <div class="pms">
  162. {{item.storeid === '33069557578d44e69bd91ad12d28a8d4' ? '寄售' : '自营'}}
  163. </div>
  164. </div>
  165. </div>
  166. <div class="fr">
  167. <div class="textinfo" v-if="item.breakUp">可拆卖</div>
  168. </div>
  169. </div>
  170. <div class="list list-long" style="height: auto">
  171. <div class="fl">
  172. <div class="name">规格:</div>
  173. <div class="text">{{item.spec || '-'}}</div>
  174. </div>
  175. </div>
  176. <div class="list" style="height: auto">
  177. <div class="fl">
  178. <div class="name">最小包装数:</div>
  179. <div class="text">{{item.minPackQty}}</div>
  180. </div>
  181. <div class="fr">
  182. <div class="name">交期(天):</div>
  183. <div class="text" v-if="item.b2cMaxDelivery && (item.b2cMaxDelivery != item.b2cMinDelivery)" v-text="item.b2cMinDelivery + '-'+ item.b2cMaxDelivery"></div>
  184. <div class="text" v-if="item.b2cMaxDelivery && (item.b2cMaxDelivery == item.b2cMinDelivery)" v-text="item.b2cMinDelivery"></div>
  185. </div>
  186. </div>
  187. <div class="list" style="height: auto">
  188. <div class="fl">
  189. <div class="name">包装方式:</div>
  190. <div class="text">{{item.packaging || '无包装信息'}}</div>
  191. </div>
  192. <div class="fr">
  193. <div class="name">库存:</div>
  194. <div class="text">{{item.reserve}}</div>
  195. </div>
  196. </div>
  197. <div class="list" style="height: auto">
  198. <div class="fl">
  199. <div class="name">生产日期:</div>
  200. <div class="text" :title="item.produceDate">{{item.produceDate || '-'}}</div>
  201. </div>
  202. <div class="fr">
  203. <div class="name">最小起订量:</div>
  204. <div class="text" style="color: #f31919">{{item.minBuyQty}}</div>
  205. </div>
  206. </div>
  207. <div class="list" style="height: auto">
  208. <div class="name left">价格梯度:</div>
  209. <div class="table left">
  210. <ul>
  211. <li class="title">
  212. <div>分段数量/PCS</div>
  213. <div>分段单价</div>
  214. </li>
  215. <li v-for="price in item.prices">
  216. <div>{{price.start}}+</div>
  217. <div v-if="item.currencyName == 'RMB'">¥{{price.rMBPrice}}</div>
  218. <div v-else>${{price.rMBPrice}}</div>
  219. </li>
  220. </ul>
  221. </div>
  222. </div>
  223. </div>
  224. </div>
  225. </div>
  226. </div>
  227. </div>
  228. </div>
  229. </div>
  230. <div class="deleteKuang" v-show="showDelete">
  231. <div class="kuangContent">
  232. <div class="title">删除信息</div>
  233. <div class="titleinfo">是否删除该产品</div>
  234. <!--<div class="info" v-show="isUploadpro">*存在已上架信息</div>-->
  235. <div class="K_btn">
  236. <div class="cancelBtn" @click="cancelFn()">取消</div>
  237. <div class="answerBtn" @click="deleteFn()">确定</div>
  238. </div>
  239. </div>
  240. </div>
  241. <div class="deleteKuang" v-show="showoffshelf">
  242. <div class="kuangContent">
  243. <div class="title">系统信息</div>
  244. <div class="titleinfo">是否下架该产品?</div>
  245. <!--<div class="info" v-show="isUploadpro">*存在已上架信息</div>-->
  246. <div class="K_btn">
  247. <div class="cancelBtn" @click="cancelFn()">取消</div>
  248. <div class="answerBtn" @click="offshelfFn()">确定</div>
  249. </div>
  250. </div>
  251. </div>
  252. <div class="none-state" v-show="StateNone">
  253. <img src="/images/mobile/@2x/search-empty.png">
  254. <p>暂无数据</p>
  255. <nuxt-link to="/">返回首页</nuxt-link>
  256. </div>
  257. <remind-box :title="collectResult" :timeoutCount="timeoutCount"></remind-box>
  258. <pull-up :fixId="'provider-wrapper'" :searchMore="isSearchSearchingMore" :allPage="EnterprisePage" :page="seekPage" @pullUpAction="getMoreSearch"></pull-up>
  259. <!-- 在售产品编辑框 -->
  260. <!-- 编辑物料 -->
  261. <div class="update-materiel" v-if="showMateriel">
  262. <div class="mobile-nav">
  263. <div class="mobile-header mobile-center-header">
  264. <a @click="showMateriel = false"><i class="iconfont icon-fanhui"></i></a>
  265. <p>编辑物料</p>
  266. <p class="en-name">
  267. <img :src="`/images/mobile/center/${user.data.enterprise && user.data.enterprise.uu ? 'en' : 'self'}.png`" alt="">{{currentEnName}}
  268. </p>
  269. </div>
  270. </div>
  271. <div class="update-materiel-wrapper">
  272. <div class="clearfix">
  273. <div class="update-materiel-wrapper-image pull-left">
  274. <upload :url="regieUrl" @uploadAction="onUpload" :NopassThree="false" :maxSize="'20'" :imgStyle="imgStyle"></upload>
  275. <span>点击上传</span>
  276. </div>
  277. <div class="uploadImgBtn pull-left">上传图片</div>
  278. <span class="uploadImgInfo pull-left">图片上传须知</span>
  279. </div>
  280. <div class="update-materiel-wrapper-list clearfix">
  281. <div class="name pull-left"><a class="red">*</a>品牌:</div>
  282. <div class="input pull-left clearfix">
  283. <input type="text" placeholder="请输入品牌"/>
  284. <i class="iconfont icon-guanbi1"></i>
  285. </div>
  286. </div>
  287. <div class="update-materiel-wrapper-list clearfix">
  288. <div class="name pull-left"><a class="red">*</a>物料名称(类目):</div>
  289. <div class="input pull-left clearfix" style="width: 4.09rem">
  290. <input type="text" placeholder="请输入物料名称(类目)"/>
  291. <i class="iconfont icon-guanbi1"></i>
  292. </div>
  293. </div>
  294. <div class="update-materiel-wrapper-list clearfix">
  295. <div class="name pull-left"><a class="red">*</a>型号:</div>
  296. <div class="input pull-left clearfix">
  297. <input type="text" placeholder="请输入型号"/>
  298. <i class="iconfont icon-guanbi1"></i>
  299. </div>
  300. </div>
  301. <div class="update-materiel-wrapper-list clearfix">
  302. <div class="name pull-left"><a class="red" style="opacity: 0">*</a>规格:</div>
  303. <div class="input pull-left clearfix">
  304. <input type="text" placeholder="请输入规格"/>
  305. <i class="iconfont icon-guanbi1"></i>
  306. </div>
  307. </div>
  308. <div class="update-materiel-wrapper-controll clearfix">
  309. <div class="pull-left">保存</div>
  310. <div class="pull-right">取消</div>
  311. </div>
  312. </div>
  313. </div>
  314. </div>
  315. </template>
  316. <script>
  317. import { RemindBox, PullUp } from '~components/mobile/common'
  318. import Upload from '~components/common/upload/upload.vue'
  319. export default {
  320. layout: 'mobile',
  321. middleware: 'authenticated',
  322. name: 'mobileProduct',
  323. data() {
  324. return {
  325. GetEnterpriseListData: [],
  326. seekPage: 1,
  327. providerType: this.$route.query.providerType,
  328. showMoreinfn: false,
  329. showDelete: false,
  330. isSearchSearchingMore: false,
  331. seekKeyword: '',
  332. collectResult: '',
  333. timeoutCount: 0,
  334. EnterprisePage: 1,
  335. chooseItem: {},
  336. vendorlist: [], // 查看更多信息
  337. showoffshelf: false,
  338. showMateriel: true,
  339. regieUrl: '',
  340. imgStyle: 'width: 1.1rem;height:1.1rem'
  341. }
  342. },
  343. methods: {
  344. toAddpro(list) {
  345. let item = {
  346. brandNameEn: list.pbranden,
  347. kindNameCn: list.kinden || list.kind,
  348. code: list.pcmpcode,
  349. spec: list.spec,
  350. prices: [{
  351. end: '',
  352. rMBNTPrice: '',
  353. rMBPrice: '',
  354. start: '1'
  355. }],
  356. minBuyQty: 1,
  357. minPackQty: 1,
  358. productid: list.id,
  359. prodNum: list.prodNum,
  360. currencyName: this.$store.state.option.storeStatus.data.enType === 'MAINLAND' ? 'RMB' : 'USD',
  361. breakUp: false
  362. }
  363. this.$store.commit('product/brand/GET_ONSALE_DETAILS_SUCCESS', item)
  364. localStorage.setItem('ProductListItem', JSON.stringify(item))
  365. this.$router.push(`/mobile/center/vendor/productdetails?formurl=productlist&return=goBack`)
  366. },
  367. update(item) {
  368. this.$store.commit('product/brand/GET_ONSALE_DETAILS_SUCCESS', item)
  369. this.$router.push('/mobile/center/vendor/productdetails')
  370. localStorage.setItem('ProductListItem', JSON.stringify(item))
  371. },
  372. offProduct(item) {
  373. this.showoffshelf = true
  374. this.shelfItem = item
  375. },
  376. offshelfFn() {
  377. let item = this.shelfItem
  378. this.$http.put(`/trade/goods/provider/off/shelf?batchCodes=${item.batchCode}`).then(res => {
  379. if (res.data.success) {
  380. this.timeoutCount++
  381. this.collectResult = '下架成功'
  382. this.showoffshelf = false
  383. this.seekPage = 1
  384. this.GetEnterpriseListData.splice(0, this.GetEnterpriseListData.length)
  385. this.GetEnterpriseListData = null
  386. this.GetEnterpriseListData = []
  387. this.reloadData()
  388. } else {
  389. this.timeoutCount++
  390. this.collectResult = res.data.message
  391. }
  392. }, err => {
  393. this.timeoutCount++
  394. this.collectResult = err.response.data
  395. })
  396. },
  397. onUpload() {},
  398. // scroll: function () {
  399. // let scrolled = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop
  400. // if (Math.ceil(scrolled + window.screen.availHeight) >= document.body.scrollHeight && !this.isSearchSearchingMore && this.seekPage < this.EnterprisePage) {
  401. // this.getMoreSearch()
  402. // }
  403. // },
  404. searchSeek: function () {
  405. this.GetEnterpriseListData.splice(0, this.GetEnterpriseListData.length)
  406. this.GetEnterpriseListData = null
  407. this.GetEnterpriseListData = []
  408. this.seekPage = 1
  409. this.reloadData()
  410. },
  411. reloadData: function () {
  412. this.getResourceProvidor()
  413. },
  414. // blur: function() {
  415. // setTimeout(() => {
  416. // this.$store.dispatch('mobile/SetInputGetFocus', false)
  417. // }, 300)
  418. // },
  419. // inputGetFocus: function() {
  420. // setTimeout(() => {
  421. // this.$store.dispatch('mobile/SetInputGetFocus', true)
  422. // }, 300)
  423. // },
  424. getMoreSearch: function () {
  425. this.seekPage++
  426. this.isSearchSearchingMore = true
  427. this.reloadData()
  428. },
  429. // 获取当前企业产品库
  430. GetEnterpriseList: function() {
  431. let params = {
  432. _status: 'all',
  433. count: 20,
  434. isStandard: true,
  435. keyword: this.seekKeyword || '',
  436. page: this.seekPage,
  437. sorting: { id: 'DESC' },
  438. type: 'all'
  439. }
  440. return this.$http.get('/trade/products', { params })
  441. },
  442. // 获取当前个人产品库
  443. GetPersonList: function(cb) {
  444. let params = {
  445. _status: 'all',
  446. count: 20,
  447. isStandard: true,
  448. keyword: this.seekKeyword || '',
  449. page: this.seekPage,
  450. sorting: { id: 'DESC' },
  451. type: 'all'
  452. }
  453. return this.$http.get('/trade/products/person', { params })
  454. },
  455. // 获取当前在售产品
  456. GetOnlineList: function() {
  457. let params = {
  458. count: 10,
  459. keyword: this.seekKeyword || '',
  460. page: this.seekPage,
  461. sorting: { 'createdDate': 'DESC' },
  462. status: '601-602'
  463. }
  464. return this.$http.get('/trade/goods/store/status', { params })
  465. },
  466. // 产品管理切换
  467. switchprovide: function(type) {
  468. this.providerType = type
  469. this.seekPage = 1
  470. this.GetEnterpriseListData.splice(0, this.GetEnterpriseListData.length)
  471. this.GetEnterpriseListData = null
  472. this.GetEnterpriseListData = []
  473. this.getResourceProvidor()
  474. },
  475. // 删除个人产品库
  476. deleteProvider: function(id, index) {
  477. this.showDelete = true
  478. this.deleteId = id
  479. // this.deleteItemIndex = index
  480. // this.$http.get(`/trade/goods/${id}/deleteMessage`).then(response => {
  481. // this.isUploadpro = response.data.code
  482. // })
  483. },
  484. deleteFn: function() {
  485. this.$http.delete(`/trade/products/${this.deleteId}?isPerson=1`).then(response => {
  486. this.showDelete = false
  487. this.collectResult = '删除成功'
  488. this.timeoutCount++
  489. this.seekPage = 1
  490. this.GetEnterpriseListData.splice(0, this.GetEnterpriseListData.length)
  491. this.isChange2 = true
  492. this.reloadData()
  493. // this.GetEnterpriseListData.splice(this.deleteItemIndex, 1)
  494. }, () => {
  495. this.showDelete = false
  496. this.collectResult = '删除失败'
  497. this.timeoutCount++
  498. })
  499. },
  500. cancelFn: function() {
  501. this.showDelete = false
  502. this.showoffshelf = false
  503. },
  504. // 获取相对应的信息
  505. getResourceProvidor: function() {
  506. if (this.providerType === 'enterprise') {
  507. this.GetEnterpriseList().then(res => {
  508. this.GetEnterpriseListData = this.GetEnterpriseListData.concat(res.data.content)
  509. this.EnterprisePage = res.data.totalPages
  510. this.isSearchSearchingMore = false
  511. })
  512. } else if (this.providerType === 'person') {
  513. this.GetPersonList().then(res => {
  514. this.GetEnterpriseListData = this.GetEnterpriseListData.concat(res.data.content)
  515. this.EnterprisePage = res.data.totalPages
  516. this.isSearchSearchingMore = false
  517. })
  518. } else if (this.providerType === 'onLine') {
  519. this.GetOnlineList().then(res => {
  520. this.GetEnterpriseListData = this.GetEnterpriseListData.concat(res.data.content)
  521. this.EnterprisePage = res.data.totalPages
  522. this.isSearchSearchingMore = false
  523. })
  524. }
  525. },
  526. // 查看企业产品库更多信息
  527. lookProductitem: function(id, item) {
  528. this.chooseItem = item
  529. this.$store.commit('product/component/REQUEST_NOWPRODUCTINFO_SUCCESS', item)
  530. localStorage.setItem('productInfoItem', JSON.stringify(item))
  531. this.$router.push(`/mobile/center/vendor/productList?uuid=${id}`)
  532. // this.$http.get(`/trade/products/goods/productid/${id}`).then(res => {
  533. // this._initscroll()
  534. // this.showMoreinfn = true
  535. // this.vendorlist = res.data
  536. // })
  537. },
  538. closeMoreinfo: function() {
  539. this.showMoreinfn = false
  540. },
  541. // 编辑物料
  542. updateMateriel(item) {
  543. this.showMateriel = true
  544. },
  545. addProtoperson: function(item) {
  546. if (item.addProductPerson) {
  547. this.collectResult = '已在个人产品库'
  548. this.timeoutCount++
  549. return false
  550. }
  551. this.$http.post('/trade/products/person', [item.id])
  552. .then(response => {
  553. this.collectResult = '绑定成功'
  554. this.timeoutCount++
  555. this.seekPage = 1
  556. this.GetEnterpriseListData.splice(0, this.GetEnterpriseListData.length)
  557. this.GetEnterpriseListData = null
  558. this.GetEnterpriseListData = []
  559. this.reloadData()
  560. }, () => {
  561. this.collectResult = '绑定失败'
  562. this.timeoutCount++
  563. })
  564. }
  565. },
  566. computed: {
  567. // 是否展示空数据
  568. StateNone() {
  569. return this.GetEnterpriseListData.length === 0 && this.EnterprisePage === 0
  570. },
  571. cnmpCode() { // 型号
  572. if (this.chooseItem.pcmpcode) {
  573. return this.chooseItem.pcmpcode
  574. }
  575. return '-'
  576. },
  577. cnmpType() { // 物料名称
  578. return this.chooseItem.kind || this.chooseItem.kinden || '-'
  579. },
  580. cnmpBand() { // 品牌
  581. if (this.chooseItem.pbranden) {
  582. return this.chooseItem.pbranden
  583. }
  584. return '-'
  585. },
  586. cnmpSpec() { // 规格
  587. if (this.chooseItem.spec) {
  588. return this.chooseItem.spec
  589. }
  590. return '-'
  591. },
  592. shopuuid() {
  593. return this.$store.state.option.storeStatus.data
  594. }
  595. },
  596. mounted: function () {
  597. this.$nextTick(() => {
  598. // window.addEventListener('scroll', this.scroll, false)
  599. this._initscroll()
  600. })
  601. },
  602. created() {
  603. this.getResourceProvidor()
  604. },
  605. components: {
  606. RemindBox,
  607. PullUp,
  608. Upload
  609. }
  610. }
  611. </script>
  612. <style scoped lang="scss">
  613. @mixin overFlowHidden {
  614. overflow: hidden;
  615. text-overflow: ellipsis;
  616. white-space: nowrap;
  617. }
  618. @mixin lineHeight($value) {
  619. height: $value;
  620. line-height: $value;
  621. }
  622. .user-content{
  623. position: absolute;
  624. width: 100%;
  625. height: 100%;
  626. .provider {
  627. margin: 1.26rem 0 0.98rem 0;
  628. height: calc(100vh - 1.26rem - 0.98rem);
  629. overflow-y: auto;
  630. }
  631. .sa-pub {
  632. display: inline-block;
  633. width: 1.41rem;
  634. height: .47rem;
  635. line-height: .47rem;
  636. text-align: center;
  637. color: #fff;
  638. background: #3f84f6;
  639. border-radius: .14rem;
  640. }
  641. .none-state{
  642. text-align: center;
  643. padding:1.5rem 0;
  644. background: #fff;
  645. margin-top:.1rem;
  646. width:100%;
  647. img{
  648. margin:0 auto;
  649. width: 4.08rem;
  650. height: 2.62rem;
  651. }
  652. p {
  653. font-size: .32rem;
  654. color: #999;
  655. margin: 1.19rem 0 0 0;
  656. }
  657. a {
  658. display: block;
  659. font-size: .28rem;
  660. color: #fff;
  661. width: 1.88rem;
  662. height: .54rem;
  663. line-height: .54rem;
  664. background: #418bf6;
  665. margin: .7rem auto 0;
  666. border-radius: .05rem;
  667. }
  668. }
  669. .user-name{
  670. height: 1.8rem;
  671. padding: .28rem 0 .28rem .34rem;
  672. background: #fff;
  673. width: 100%;
  674. position: relative;
  675. img{
  676. display: inline-block;
  677. width: 1.25rem;
  678. height: 1.25rem;
  679. border: 1px solid #c5dbfc;
  680. border-radius: .05rem;
  681. vertical-align: middle;
  682. }
  683. .user-info {
  684. margin-left:.25rem;
  685. display: inline-block;
  686. vertical-align: middle;
  687. position: relative;
  688. p{
  689. font-size:.3rem;
  690. margin:0;
  691. display: block;
  692. overflow: hidden;
  693. text-overflow: ellipsis;
  694. white-space: nowrap;
  695. max-width: 3.92rem;
  696. &:nth-child(2) {
  697. position: relative;
  698. margin-top: .2rem;
  699. padding-right: .7rem;
  700. overflow: unset;
  701. max-width: unset;
  702. .en-name {
  703. overflow: hidden;
  704. text-overflow: ellipsis;
  705. white-space: nowrap;
  706. max-width: 3.22rem;
  707. display: inline-block;
  708. }
  709. a {
  710. position: absolute;
  711. right: 0;
  712. }
  713. .exit {
  714. right: -.8rem;
  715. }
  716. .vir {
  717. position: absolute;
  718. right: -.14rem;
  719. }
  720. }
  721. }
  722. .en-list {
  723. position: absolute;
  724. max-width: 5rem;
  725. max-height: 3rem;
  726. overflow-y: auto;
  727. border-radius: .05rem;
  728. background: rgba(0, 0, 0, .6);
  729. z-index: 10;
  730. .menu-item {
  731. height: .6rem;
  732. line-height: .6rem;
  733. font-size: .3rem;
  734. padding: 0 .2rem;
  735. overflow: hidden;
  736. white-space: nowrap;
  737. text-overflow: ellipsis;
  738. &:active, &:focus, &:hover {
  739. background: #7d7d7d;
  740. }
  741. a {
  742. color: #fff;
  743. }
  744. }
  745. }
  746. }
  747. > a {
  748. font-size: .24rem;
  749. position: absolute;
  750. top: .45rem;
  751. right: .1rem;
  752. color: #3f84f6;
  753. border: 1px solid #3f84f6;
  754. border-radius: .2rem;
  755. padding: .06rem .12rem;
  756. }
  757. }
  758. .shop-list {
  759. background:#fff;
  760. border-bottom: .1rem solid #dfe2e4;
  761. padding: .14rem 0 .14rem 0;
  762. h3{
  763. font-size: .32rem;
  764. line-height: .4rem;
  765. margin: 0 0 0 .27rem;
  766. overflow: hidden;
  767. text-overflow: ellipsis;
  768. white-space: nowrap;
  769. padding-top: .1rem;
  770. position: relative;
  771. top: .1rem;
  772. }
  773. .list-item{
  774. width:6.77rem;
  775. margin-left:.39rem;
  776. .item-img{
  777. width:2.4rem;
  778. vertical-align: middle;
  779. display: inline-block;
  780. img{
  781. &:nth-child(2) {
  782. width:2.4rem;
  783. height:1.69rem;
  784. border: 1px solid #eee;
  785. }
  786. &:nth-child(1) {
  787. position:absolute;
  788. width:.65rem;
  789. height:.33rem;
  790. }
  791. }
  792. }
  793. .list-item-phone{
  794. width:3.95rem;
  795. padding:.18rem 0;
  796. position:relative;
  797. display: inline-block;
  798. vertical-align: middle;
  799. margin-left: .26rem;
  800. p{
  801. font-size:.28rem;
  802. line-height: .67rem;
  803. margin:0;
  804. overflow: hidden;
  805. text-overflow: ellipsis;
  806. white-space: nowrap;
  807. width: 3.2rem;
  808. }
  809. i{
  810. display:block;
  811. position:absolute;
  812. top: -.06rem;
  813. right: -.18rem;
  814. font-size:.5rem;
  815. color:#ff7800;
  816. width: .6rem;
  817. height: .6rem;
  818. text-align: center;
  819. line-height: .6rem;
  820. }
  821. }
  822. }
  823. &:active {
  824. background: #e1e1e1;
  825. }
  826. }
  827. .detail-brand{
  828. background: #fff;
  829. width:100%;
  830. min-height:1.5rem;
  831. padding:.2rem 0;
  832. border-bottom: .1rem solid #dfe2e4;
  833. &:nth-child(1) {
  834. margin-top:.1rem;
  835. }
  836. .brand-item{
  837. width:7rem;
  838. margin:0 auto;
  839. border-radius:.1rem;
  840. background: #fff;
  841. padding:.2rem;
  842. position:relative;
  843. &:active{
  844. background: #e1e1e1;
  845. }
  846. p{
  847. font-size:.28rem;
  848. line-height:.4rem;
  849. color:#333;
  850. margin:0;
  851. }
  852. i{
  853. display:block;
  854. position:absolute;
  855. top:.2rem;
  856. right:.4rem;
  857. font-size:.5rem;
  858. color:#ff7800;
  859. width: .6rem;
  860. height: .6rem;
  861. line-height: .6rem;
  862. text-align: center;
  863. }
  864. .sa-pub {
  865. position: absolute;
  866. right: 0;
  867. bottom: .2rem;
  868. }
  869. }
  870. div.active{
  871. background: #d4d;
  872. }
  873. }
  874. .collect-list-type {
  875. background: #fff;
  876. border-bottom: 1px solid #acacac;
  877. p {
  878. font-size: .32rem;
  879. margin: 0 0 0 .13rem;
  880. width: .92rem;
  881. text-align: center;
  882. line-height: .5rem;
  883. border-bottom: .06rem solid #418bf6;
  884. }
  885. }
  886. ul.switch-list {
  887. .noshop {
  888. width: 50%;
  889. }
  890. li {
  891. display: inline-block;
  892. width: 2.5rem;
  893. height: .63rem;
  894. line-height: .63rem;
  895. text-align: center;
  896. font-size: .28rem;
  897. color: #666;
  898. background: #fff;
  899. border: 1px solid #b4b4b4;
  900. border-right: none;
  901. &.active {
  902. background: #0067e7;
  903. border: 1px solid #0067e7;
  904. color: #fff;
  905. }
  906. &:first-child {
  907. border-left: none;
  908. }
  909. &:last-child {
  910. border-right: none;
  911. }
  912. }
  913. &.vendor-switch {
  914. li {
  915. width: 50%;
  916. }
  917. }
  918. }
  919. .seek {
  920. .seek-type {
  921. margin-top: .15rem;
  922. li {
  923. font-size: .28rem;
  924. color: #666;
  925. display: inline-block;
  926. width: 50%;
  927. text-align: center;
  928. div {
  929. border-bottom: 1px solid #c1c4c9;
  930. margin: 0 auto;
  931. height: .46rem;
  932. line-height: .46rem;
  933. }
  934. &.active {
  935. color: #3f84f6;
  936. div {
  937. border-color: #3f84f6;
  938. }
  939. }
  940. }
  941. }
  942. }
  943. .search-content {
  944. text-align: center;
  945. padding: .25rem 0 0 0;
  946. input {
  947. border: 1px solid #376ff3;
  948. }
  949. span {
  950. height: .46rem;
  951. line-height: .46rem;
  952. }
  953. }
  954. .seek-area {
  955. height: 1.26rem;
  956. line-height: 1.26rem;
  957. border-top: .19rem solid #f6f5f5;
  958. border-bottom: .19rem solid #f6f5f5;
  959. overflow: hidden;
  960. /*padding: .32rem 0;*/
  961. img {
  962. height: .78rem;
  963. margin-right: .2rem;
  964. vertical-align: top;
  965. margin-top: .1rem;
  966. }
  967. .sa-title {
  968. font-size: .38rem;
  969. color: #3f84f6;
  970. line-height: .32rem;
  971. vertical-align: top;
  972. margin-top: .1rem;
  973. span {
  974. color: #494949;
  975. }
  976. .sa-text {
  977. font-size: .26rem;
  978. color: #999;
  979. }
  980. }
  981. .sa-pub {
  982. margin-left: .86rem;
  983. vertical-align: top;
  984. margin-top: .23rem;
  985. }
  986. }
  987. }
  988. .providerList {
  989. border-top: .31rem solid #f1f3f7;
  990. .top {
  991. position: relative;
  992. &.top2 {
  993. .text {
  994. width: 5.4rem;
  995. }
  996. .pms {
  997. color: #f57710;
  998. border: 1px solid #f57710;
  999. border-radius: 0.4rem;
  1000. background: #fff;
  1001. font-size: 0.24rem;
  1002. height: 0.4rem;
  1003. line-height: 0.4rem;
  1004. width: 0.8rem;
  1005. text-align: center;
  1006. float: right;
  1007. margin-top: 0.25rem;
  1008. }
  1009. .store-type {
  1010. width: .77rem;
  1011. height: .77rem;
  1012. position: absolute;
  1013. right: 0;
  1014. top: 0;
  1015. }
  1016. }
  1017. .icon {
  1018. width: 0.6rem;
  1019. height: 0.36rem;
  1020. line-height: 0.36rem;
  1021. margin-top: 0.27rem;
  1022. float: left;
  1023. background-size: 100%;
  1024. background-repeat: no-repeat;
  1025. margin-right: 0.12rem;
  1026. text-align: center;
  1027. &.istanded{
  1028. background-image: url('/images/mobile/@2x/istanded.png')
  1029. }
  1030. &.standed{
  1031. background-image: url('/images/mobile/@2x/standed.png')
  1032. }
  1033. }
  1034. .person-flag {
  1035. width: .75rem;
  1036. position: absolute;
  1037. right: 0;
  1038. }
  1039. .text {
  1040. float: left;
  1041. width: 6.3rem;
  1042. overflow: hidden;
  1043. text-overflow: ellipsis;
  1044. white-space: nowrap;
  1045. }
  1046. padding: 0 0.24rem;
  1047. /*background: #f5f9fd;*/
  1048. border-bottom: 1px solid #d3d3d3;
  1049. height: 0.9rem;
  1050. line-height: 0.9rem;
  1051. color: #0067e7;
  1052. font-size: 0.3rem;
  1053. &::after{
  1054. clear: both;
  1055. display: block;
  1056. content: ' ';
  1057. visibility: hidden;
  1058. zoom: 1;
  1059. }
  1060. }
  1061. .content {
  1062. padding: 0.24rem 0.24rem;
  1063. background: #fff;
  1064. .linetext {
  1065. margin-bottom: 0.24rem;
  1066. overflow: hidden;
  1067. text-overflow: ellipsis;
  1068. white-space: nowrap;
  1069. &:nth-last-of-type(1){
  1070. margin-bottom: 0rem;
  1071. }
  1072. }
  1073. .fl {
  1074. float: left;
  1075. border-right: 1px dashed #e0e0e4;
  1076. width: 4.68rem;
  1077. &.fullWidth {
  1078. width: 100%;
  1079. border: 0;
  1080. float: left
  1081. }
  1082. }
  1083. .fr {
  1084. float: right;
  1085. margin: 0.18rem 0.24rem;
  1086. margin-right: 0rem;
  1087. font-size: 0.3rem;
  1088. &.addtop {
  1089. margin-top: 0.6rem;
  1090. .add {
  1091. background: #0067e7;
  1092. color: #fff;
  1093. &.noadd{
  1094. background: #cccbcb;
  1095. color: #fff;
  1096. border:1px solid #cccbcb;
  1097. }
  1098. }
  1099. }
  1100. div {
  1101. width: 2.1rem;
  1102. height: 0.6rem;
  1103. text-align: center;
  1104. line-height: 0.6rem;
  1105. border-radius: 3px;
  1106. &.delete{
  1107. background: #fff;
  1108. color: #f70415;
  1109. border: 1px solid #f70415;
  1110. }
  1111. }
  1112. div:nth-child(1){
  1113. margin-bottom: 0.26rem
  1114. }
  1115. }
  1116. &::after{
  1117. clear: both;
  1118. display: block;
  1119. content: ' ';
  1120. visibility: hidden;
  1121. zoom: 1;
  1122. }
  1123. }
  1124. div.clearfix {
  1125. padding: 0.2rem 0;
  1126. margin: 0 0.2rem;
  1127. border-top: 1px solid #d3d3d3;
  1128. div {
  1129. width: 2.1rem;
  1130. height: 0.6rem;
  1131. text-align: center;
  1132. line-height: 0.6rem;
  1133. border-radius: 3px;
  1134. margin-right: 0.2rem;
  1135. &.look {
  1136. color: #008bf7;
  1137. border: 1px solid #008bf7;
  1138. }
  1139. &.add {
  1140. background: #fff;
  1141. color: #f57710;
  1142. border: 1px solid #f57710;
  1143. }
  1144. &.noadd{
  1145. background: #cccbcb;
  1146. color: #fff;
  1147. border:1px solid #cccbcb;
  1148. }
  1149. }
  1150. }
  1151. }
  1152. .middle {
  1153. padding: 0.24rem 0.24rem 0px;
  1154. background: #fff;
  1155. .pms {
  1156. color: #f57710;
  1157. border: 1px solid #f57710;
  1158. border-radius: 0.4rem;
  1159. background: #fff;
  1160. font-size: 0.24rem;
  1161. height: 0.4rem;
  1162. line-height: 0.4rem;
  1163. width: 0.8rem;
  1164. text-align: center;
  1165. }
  1166. .list {
  1167. /*height: 0.46rem;*/
  1168. .left {
  1169. float: left;
  1170. overflow: hidden;
  1171. text-overflow: ellipsis;
  1172. white-space: nowrap;
  1173. }
  1174. .textinfo {
  1175. color: #0067e7;
  1176. font-size: 0.3rem;
  1177. }
  1178. .button {
  1179. font-size: 0.26rem;
  1180. color: #fff;
  1181. width: 0.92rem;
  1182. text-align: center;
  1183. border-radius: 5px;
  1184. /*border:1px solid #1a58dd;*/
  1185. background: #1a58dd;
  1186. display: inline-block;
  1187. margin-right: 0.2rem;
  1188. line-height: 0.33rem;
  1189. height: 0.37rem;
  1190. }
  1191. margin-bottom: 0.18rem;
  1192. &::after{
  1193. clear: both;
  1194. display: block;
  1195. content: ' ';
  1196. visibility: hidden;
  1197. zoom: 1;
  1198. }
  1199. .fl {
  1200. width: 4.3rem;
  1201. float: left;
  1202. overflow: hidden;
  1203. text-overflow: ellipsis;
  1204. white-space: nowrap;
  1205. }
  1206. .fr {
  1207. text-align: left;
  1208. width: 2.6rem;
  1209. overflow: hidden;
  1210. text-overflow: ellipsis;
  1211. white-space: nowrap;
  1212. }
  1213. &.list-long {
  1214. .fl {
  1215. width: 100% !important;
  1216. }
  1217. }
  1218. .name {
  1219. color: #666;
  1220. font-size: 0.3rem;
  1221. display: inline-block;
  1222. }
  1223. .text {
  1224. display: inline-block;
  1225. color: #333;
  1226. font-size: 0.3rem
  1227. }
  1228. .table {
  1229. width: 5.5rem;
  1230. margin-bottom: 0;
  1231. margin-top: 0;
  1232. li {
  1233. height: 0.43rem;
  1234. line-height: 0.43rem;
  1235. border-left: .01rem solid #c5c5c5;
  1236. font-size: .28rem;
  1237. &::after {
  1238. clear: both;
  1239. display: block;
  1240. content: ' ';
  1241. visibility: hidden;
  1242. zoom: 1;
  1243. }
  1244. div {
  1245. text-align: center;
  1246. width: 50%;
  1247. float: left;
  1248. border-right: .01rem solid #c5c5c5;
  1249. border-bottom: .01rem solid #c5c5c5;
  1250. }
  1251. &:nth-child(odd) {
  1252. background: #ddd;
  1253. color: #666;
  1254. font-size: 0.28rem;
  1255. }
  1256. &:nth-child(even) {
  1257. background: #fcfcfc;
  1258. color: #666;
  1259. font-size: 0.28rem;
  1260. }
  1261. &:nth-last-of-type(1){
  1262. color: #f31919;
  1263. }
  1264. &.title {
  1265. font-size: 0.28rem;
  1266. color: #333;
  1267. }
  1268. }
  1269. }
  1270. }
  1271. }
  1272. .labelinfo {
  1273. padding: 0 .24rem;
  1274. background: #e6e6e6;
  1275. height: 0.6rem;
  1276. line-height: 0.6rem;
  1277. width: 100%;
  1278. color: #666;
  1279. font-size: 0.26rem;
  1280. overflow: hidden;
  1281. text-overflow: ellipsis;
  1282. white-space: nowrap;
  1283. .labelicon {
  1284. background-image: url('/images/mobile/@2x/label_icon.png');
  1285. background-repeat: no-repeat;
  1286. width: 0.61rem;
  1287. height: 0.38rem;
  1288. line-height: 0.38rem;
  1289. background-size: 100%;
  1290. color: #fff;
  1291. margin-right: 0.1rem;
  1292. display: inline-block;
  1293. font-size: 0.22rem;
  1294. text-align: center;
  1295. /*vertical-align: middle;*/
  1296. }
  1297. .labeltext{
  1298. display: inline-block;
  1299. /*vertical-align: middle;*/
  1300. }
  1301. }
  1302. .label-text {
  1303. padding: .09rem .21rem;
  1304. border-radius: .22rem;
  1305. background: #ddd;
  1306. font-size: .26rem;
  1307. color: #666;
  1308. display: inline-block;
  1309. margin-left: .22rem;
  1310. margin-bottom: .25rem;
  1311. }
  1312. .deleteKuang {
  1313. position: fixed;
  1314. background: rgba(0, 0, 0, 0.5);
  1315. top: 0;
  1316. left: 0;
  1317. right: 0;
  1318. bottom: 0;
  1319. z-index: 9999;
  1320. .kuangContent {
  1321. border-radius: 5px;
  1322. background: #fff;
  1323. width: 5rem;
  1324. position: absolute;
  1325. left: 50%;
  1326. top: 50%;
  1327. transform: translate3d(-50%, -50%, 0);
  1328. overflow: hidden;
  1329. .titleinfo {
  1330. font-size: .3rem;
  1331. color: #666;
  1332. text-align: center;
  1333. margin-top: 0.5rem;
  1334. margin-bottom: 0.1rem;
  1335. }
  1336. .title {
  1337. background: #5078cb;
  1338. height: .7rem;
  1339. line-height: .7rem;
  1340. font-size: .3rem;
  1341. color: #fff;
  1342. text-align: center;
  1343. }
  1344. .info {
  1345. color: #f00;
  1346. text-align: center;
  1347. }
  1348. .K_btn {
  1349. margin-top: 0.4rem;
  1350. line-height: 0.7rem;
  1351. height: 0.7rem;
  1352. &::after {
  1353. clear: both;
  1354. display: block;
  1355. content: ' ';
  1356. visibility: hidden;
  1357. zoom: 1;
  1358. }
  1359. div {
  1360. float: left;
  1361. width: 50%;
  1362. font-size: 0.3rem;
  1363. text-align: center;
  1364. &.cancelBtn {
  1365. background: #b4b5b9;
  1366. color: #333;
  1367. }
  1368. &.answerBtn {
  1369. background: #5078cb;
  1370. color: #fff;
  1371. }
  1372. }
  1373. }
  1374. }
  1375. i {
  1376. font-size: .6rem;
  1377. position: absolute;
  1378. right: -0.3rem;
  1379. top: -0.35rem;
  1380. color: #fff;
  1381. &::after {
  1382. position: absolute;
  1383. top: -0.1rem;
  1384. left: -0.1rem;
  1385. right: -0.1rem;
  1386. bottom: -0.1rem;
  1387. content: ' '
  1388. }
  1389. }
  1390. .title {
  1391. background: #3f84f6;
  1392. height: 0.7rem;
  1393. line-height: 0.7rem;
  1394. color: #fff;
  1395. text-align: center;
  1396. font-size: 0.3rem;
  1397. position: relative;
  1398. }
  1399. .Kuang {
  1400. max-height: 10rem;
  1401. width: 6.7rem;
  1402. position: absolute;
  1403. left: 50%;
  1404. top: 50%;
  1405. transform: translate3d(-50%, -50%, 0);
  1406. background: #ececec;
  1407. border-radius: 5px;
  1408. }
  1409. .content {
  1410. .infob {
  1411. background: #e3edfd;
  1412. padding: 0.2rem;
  1413. .info {
  1414. color: #333;
  1415. font-size: 0.3rem;
  1416. overflow: hidden;
  1417. text-overflow: ellipsis;
  1418. white-space: nowrap;
  1419. margin-bottom: 0.18rem;
  1420. .name {
  1421. color: #666;
  1422. }
  1423. div {
  1424. display: inline-block;
  1425. }
  1426. }
  1427. }
  1428. .content_sq {
  1429. width: 6.4rem;
  1430. margin: 0.1rem auto;
  1431. background: #fff;
  1432. padding: 0.2rem 0;
  1433. .list {
  1434. margin-bottom: 0.18rem;
  1435. }
  1436. .fl {
  1437. width: 3.2rem;
  1438. }
  1439. .table {
  1440. width: 4.2rem;
  1441. margin-top: -0.1rem;
  1442. }
  1443. .labelinfo {
  1444. background-image: url('/images/mobile/@2x/labelTop.png');
  1445. background-repeat: no-repeat;
  1446. width: 6.29rem;
  1447. height: 0.64rem;
  1448. line-height: 0.64rem;
  1449. background-size: 100%;
  1450. margin-top: 0rem;
  1451. margin-right: 0rem;
  1452. background-color: rgba(0, 0, 0, 0);
  1453. color: #666;
  1454. }
  1455. }
  1456. }
  1457. }
  1458. .update-materiel {
  1459. position: fixed;
  1460. z-index: 99;
  1461. background: #f1f3f6;
  1462. top: 0;
  1463. left: 0;
  1464. bottom: 0;
  1465. right: 0;
  1466. .mobile-header{
  1467. position: fixed;
  1468. top: 0;
  1469. z-index: 10;
  1470. width:100%;
  1471. height: 1.26rem;
  1472. line-height: 1.26rem;
  1473. /*border-bottom:.01rem solid #ccc;*/
  1474. background: #3e82f5;
  1475. padding:0 .2rem 0 .1rem;
  1476. color:#fff;
  1477. }
  1478. .mobile-header p{
  1479. overflow: hidden;
  1480. text-overflow: ellipsis;
  1481. white-space: nowrap;
  1482. font-size:.36rem;
  1483. text-align: center;
  1484. width: 6rem;
  1485. padding-left: 1rem;
  1486. }
  1487. .mobile-center-header p.en-name {
  1488. font-size: .3rem;
  1489. }
  1490. .mobile-header a{
  1491. font-size:.28rem;
  1492. color:#fff;
  1493. position: absolute;
  1494. }
  1495. .mobile-header a i{
  1496. font-size: .48rem;
  1497. margin-right: -.1rem;
  1498. }
  1499. .update-materiel-wrapper {
  1500. border: 1px solid #dcdcdc;
  1501. border-radius: 0.07rem;
  1502. background: #fff;
  1503. margin: 1.46rem 0.2rem 0;
  1504. position: relative;
  1505. padding-bottom: 0.4rem;
  1506. .update-materiel-wrapper-image {
  1507. width: 2.28rem;
  1508. height: 2.28rem;
  1509. border: 1px solid #dcdcdc;
  1510. border-radius: 0.07rem;
  1511. position: relative;
  1512. margin: 0.27rem 0 0 0.55rem;
  1513. text-align: center;
  1514. span {
  1515. color: #b2b2b2;
  1516. font-size: 0.28rem;
  1517. }
  1518. }
  1519. .uploadImgBtn {
  1520. color: #fff;
  1521. font-size: .28rem;
  1522. width: 1.51rem;
  1523. @include lineHeight(0.47rem);
  1524. border-radius: 0.07rem;
  1525. background: #f9b209;
  1526. text-align: center;
  1527. margin:2rem 0.1rem 0;
  1528. }
  1529. .uploadImgInfo {
  1530. color: #3f84f6;
  1531. font-size: 0.24rem;
  1532. margin-top: 2.15rem;
  1533. }
  1534. .update-materiel-wrapper-list {
  1535. margin-left:0.28rem;
  1536. margin-top: 0.3rem;
  1537. line-height: 0.5rem;
  1538. .red {color: #ea0f42}
  1539. .name {color: #666;}
  1540. .input {
  1541. width:5.4rem;
  1542. line-height: 0.5rem;
  1543. height: 0.5rem;border: 1px solid #dcdcdc;
  1544. input {
  1545. text-indent: 5px;
  1546. border: 0;
  1547. border-radius: 0.07rem;
  1548. line-height: 0.44rem;
  1549. height: 0.44rem;
  1550. width: 90%;
  1551. font-size:0.28rem;
  1552. float: left;
  1553. color: #333;
  1554. }
  1555. i {
  1556. font-size: 0.16rem;
  1557. vertical-align: top;
  1558. color: #666;
  1559. float: right;
  1560. }
  1561. }
  1562. }
  1563. .update-materiel-wrapper-controll {
  1564. margin: 0.4rem 0.2rem 0;
  1565. div {
  1566. width: 48%;
  1567. background: #b5b5b5;
  1568. font-size: 0.3rem;
  1569. color: #fafbfc;
  1570. text-align: center;
  1571. @include lineHeight(0.62rem);
  1572. border-radius: 0.07rem;
  1573. &:first-child {
  1574. background: #3f84f6;
  1575. }
  1576. }
  1577. }
  1578. }
  1579. }
  1580. </style>