quick-launch.vue 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303
  1. <template>
  2. <div class="home-container">
  3. <el-card class="home-container__card">
  4. <div class="title">
  5. <span>
  6. 快速发起
  7. </span>
  8. </div>
  9. <div class="content" v-if="sysType == 3">
  10. <div class="content-icon" @click="inPage('cg')">
  11. <i class="tradingIcon icon-purchase" style="color:#75CD28"></i>
  12. <span>采购</span>
  13. </div>
  14. <div class="content-icon" @click="inPage('xs')">
  15. <i class="tradingIcon icon-sales" style="color:#409EFF"></i>
  16. <span>销售</span>
  17. </div>
  18. <div class="content-icon" @click="inPage('sh')">
  19. <i class="tradingIcon icon-receipt" style="color:#921939"></i>
  20. <span>收货</span>
  21. </div>
  22. <div class="content-icon" @click="inPage('fh')">
  23. <i class="tradingIcon icon-ship" style="color:#143056"></i>
  24. <span>发货</span>
  25. </div>
  26. <div class="content-icon" @click="inPage('sqfk')">
  27. <i class="tradingIcon icon-apply" style="color:#BE3216"></i>
  28. <span>付费申请</span>
  29. </div>
  30. <div class="content-icon" @click="inPage('ff')">
  31. <i class="tradingIcon icon-pay" style="color:#7E8270"></i>
  32. <span>付费</span>
  33. </div>
  34. <div class="content-icon" @click="inPage('sf')">
  35. <i class="tradingIcon icon-charge" style="color:#4D6016"></i>
  36. <span>收费</span>
  37. </div>
  38. </div>
  39. <div class="content" v-if="sysType == 5">
  40. <div class="content-icon" @click="inPage('zy')">
  41. <i class="tradingIcon icon-pay" style="color:#57927a"></i>
  42. <span>主营业务</span>
  43. </div>
  44. <div class="content-icon" @click="inPage('yf')">
  45. <i class="tradingIcon icon-pay" style="color:#576892"></i>
  46. <span>业绩分析</span>
  47. </div>
  48. <div class="content-icon" @click="inPage('tj')">
  49. <i class="tradingIcon icon-pay" style="color:#57927a"></i>
  50. <span>统计列表</span>
  51. </div>
  52. <div class="content-icon" @click="inPage('fw')">
  53. <i class="tradingIcon icon-pay" style="color:#576892"></i>
  54. <span>服务项目</span>
  55. </div>
  56. <div class="content-icon" @click="inPage('sp')">
  57. <i class="tradingIcon icon-pay" style="color:#57927a"></i>
  58. <span>商品信息</span>
  59. </div>
  60. <div class="content-icon" @click="inPage('fy')">
  61. <i class="tradingIcon icon-pay" style="color:#576892"></i>
  62. <span>费用详情</span>
  63. </div>
  64. </div>
  65. <div class="content" v-if="sysType == 4 || sysType == 2">
  66. <div class="content-icon" @click="inPage('bj')" v-if="sysType == 4">
  67. <i class="tradingIcon icon-sales" style="color:#606266"></i>
  68. <span>报价</span>
  69. </div>
  70. <div class="content-icon" @click="inPage('xs')">
  71. <i class="tradingIcon icon-sales" style="color:#409EFF"></i>
  72. <span>销售</span>
  73. </div>
  74. <div class="content-icon" @click="inPage('cg')">
  75. <i class="tradingIcon icon-purchase" style="color:#75CD28"></i>
  76. <span>采购</span>
  77. </div>
  78. <div class="content-icon" @click="inPage('fh')">
  79. <i class="tradingIcon icon-ship" style="color:#143056"></i>
  80. <span v-if="sysType == 4">发货</span>
  81. <span v-if="sysType == 2">客户收货</span>
  82. </div>
  83. <div class="content-icon" @click="inPage('sh')">
  84. <i class="tradingIcon icon-receipt" style="color:#921939"></i>
  85. <span v-if="sysType == 4">收货</span>
  86. <span v-if="sysType == 2">工厂发货</span>
  87. </div>
  88. <div class="content-icon" @click="inPage('sqfk')">
  89. <i class="tradingIcon icon-apply" style="color:#BE3216"></i>
  90. <span>付费申请</span>
  91. </div>
  92. <div class="content-icon" @click="inPage('sf')">
  93. <i class="tradingIcon icon-charge" style="color:#4D6016"></i>
  94. <span>收费</span>
  95. </div>
  96. <div class="content-icon" @click="inPage('ff')">
  97. <i class="tradingIcon icon-pay" style="color:#7E8270"></i>
  98. <span>付费</span>
  99. </div>
  100. <div class="content-icon" @click="inPage('smart')" v-if="sysType == 2">
  101. <div style="width: 36px;height: 37px;border-radius: 10px;background-color: #0771e3;text-align: center;">
  102. <i class="el-icon-basketball" style="color:#FFFFFF;font-size: 26px;line-height: 37px;"></i>
  103. </div>
  104. <span>智慧大屏</span>
  105. </div>
  106. </div>
  107. <div class="content" v-if="sysType == 6">
  108. <div class="content-icon" @click="inPage('cg')">
  109. <i class="tradingIcon icon-purchase" style="color:#75CD28"></i>
  110. <span>采购</span>
  111. </div>
  112. <div class="content-icon" @click="inPage('xs')">
  113. <i class="tradingIcon icon-sales" style="color:#409EFF"></i>
  114. <span>销售</span>
  115. </div>
  116. </div>
  117. </el-card>
  118. </div>
  119. </template>
  120. <script>
  121. import { getToken } from "@/util/auth";
  122. export default {
  123. name: "basicContainer",
  124. data() {
  125. return {
  126. largeScreenToken: '',
  127. };
  128. },
  129. props: {
  130. sysType: Number
  131. },
  132. created() {
  133. if (this.sysType == 2) {
  134. this.getWorkDicts('large_screen').then(res => {
  135. this.largeScreenToken = res.data.data[0].dictKey;
  136. })
  137. }
  138. },
  139. methods: {
  140. inPage(type) {
  141. //出口
  142. if (this.sysType == 4) {
  143. switch (type) {
  144. case "bj":
  145. this.$router.push("/exportTrade/customerInquiry/index");
  146. break;
  147. case "xs":
  148. this.$router.push("/exportTrade/salesContract/index");
  149. break;
  150. case "cg":
  151. this.$router.push("/exportTrade/purchaseContract/index");
  152. break;
  153. case "fh":
  154. this.$router.push("/exportTrade/invoice/index");
  155. break;
  156. case "sh":
  157. this.$router.push("/exportTrade/receipt/index");
  158. break;
  159. case "sqfk":
  160. this.$router.push("/financialManagement/paymentRequest/index");
  161. break;
  162. case "sf":
  163. this.$router.push(
  164. "/financialManagement/receiptSettle/receiptSettle"
  165. );
  166. break;
  167. case "ff":
  168. this.$router.push(
  169. "/financialManagement/paymentSettle/paymentSettle"
  170. );
  171. break;
  172. }
  173. } else if (this.sysType == 2) {
  174. switch (type) {
  175. case "xs":
  176. this.$router.push("/businessManagement/salesOrder/index");
  177. break;
  178. case "cg":
  179. this.$router.push("/businessManagement/purchaseOrder/index");
  180. break;
  181. case "fh":
  182. this.$router.push("/businessManagement/deliveryNotice/index");
  183. break;
  184. case "sh":
  185. this.$router.push("/businessManagement/receipt/index");
  186. break;
  187. case "sqfk":
  188. this.$router.push("/financialManagement/paymentRequest/index");
  189. break;
  190. case "sf":
  191. this.$router.push(
  192. "/financialManagement/receiptSettle/receiptSettle"
  193. );
  194. break;
  195. case "ff":
  196. this.$router.push(
  197. "/financialManagement/paymentSettle/paymentSettle"
  198. );
  199. break;
  200. case "smart":
  201. console.log(this.largeScreenToken)
  202. window.open( 'http://119.3.74.195:9527/view/'+ this.largeScreenToken +'?token=' + getToken())
  203. break;
  204. }
  205. } else if (this.sysType == 3) {
  206. switch (type) {
  207. case "xs":
  208. this.$router.push("/salesManagement/salesContract/index");
  209. break;
  210. case "cg":
  211. this.$router.push("/purchase/contract/index");
  212. break;
  213. case "fh":
  214. this.$router.push("/importTrade/invoice/index");
  215. break;
  216. case "sh":
  217. this.$router.push("/importTrade/receipt/index");
  218. break;
  219. case "sqfk":
  220. this.$router.push("/financialManagement/paymentRequest/index");
  221. break;
  222. case "sf":
  223. this.$router.push(
  224. "/financialManagement/receiptSettle/receiptSettle"
  225. );
  226. break;
  227. case "ff":
  228. this.$router.push(
  229. "/financialManagement/paymentSettle/paymentSettle"
  230. );
  231. break;
  232. }
  233. } else if (this.sysType == 5) {
  234. switch (type) {
  235. case "zy":
  236. this.$router.push("/workManagement/main-items/list");
  237. break;
  238. case "yf":
  239. this.$router.push("/workManagement/performanceAnalysis/index");
  240. break;
  241. case "tj":
  242. this.$router.push("/workManagement/receipt/statisticalList");
  243. break;
  244. case "fw":
  245. this.$router.push("/workManagement/service-items/project");
  246. break;
  247. case "sp":
  248. this.$router.push("/basicData/commodityType/index");
  249. break;
  250. case "fy":
  251. this.$router.push("/basicData/basicFeesDesc/index");
  252. break;
  253. }
  254. } else if (this.sysType == 6) {
  255. switch (type) {
  256. case "xs":
  257. this.$router.push("/dealer/sales/index");
  258. break;
  259. case "cg":
  260. this.$router.push("/dealer/purchase/index");
  261. break;
  262. }
  263. }
  264. }
  265. }
  266. };
  267. </script>
  268. <style lang="scss" scoped>
  269. .home-container {
  270. padding: 5px;
  271. box-sizing: border-box;
  272. height: 100%;
  273. ::v-deep .el-card__body {
  274. padding: 10px 15px;
  275. font-size: 14px;
  276. }
  277. &__card {
  278. width: 100%;
  279. height: 100%;
  280. }
  281. .title {
  282. display: flex;
  283. justify-content: space-between;
  284. }
  285. }
  286. .tradingIcon {
  287. font-size: 36px;
  288. }
  289. .content {
  290. display: flex;
  291. &-icon {
  292. display: flex;
  293. flex-direction: column;
  294. align-items: center;
  295. margin: 1.5vh 1vw 0vh 1vw;
  296. span {
  297. margin-top: 0.2vh;
  298. }
  299. }
  300. }
  301. </style>