index.vue 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793
  1. <template>
  2. <div class="m-container">
  3. <h2>
  4. <div class="squrt"></div>
  5. 人力资源表
  6. </h2>
  7. <div class="m-core">
  8. <div
  9. class="newBand"
  10. v-permission="'employeeInfo/insert'"
  11. @click="openTypes('create')"
  12. >
  13. 添加
  14. </div>
  15. <!-- 搜索标题 -->
  16. <saveform
  17. :inline="true"
  18. ref="searchForm"
  19. class="searchForm"
  20. :model.sync="searchForm"
  21. >
  22. <el-form-item prop="userNameOrIdOrMobile">
  23. <el-input
  24. placeholder="姓名手机号"
  25. v-model.trim="searchForm.userNameOrIdOrMobile"
  26. clearable
  27. ></el-input>
  28. </el-form-item>
  29. <el-form-item prop="sourceFrom">
  30. <el-select
  31. v-model.trim="searchForm.sourceFrom"
  32. clearable
  33. filterable
  34. placeholder="请选择信息来源"
  35. >
  36. <el-option label="BOSS" value="BOSS"></el-option>
  37. <el-option label="转介绍" value="转介绍"></el-option>
  38. </el-select>
  39. </el-form-item>
  40. <el-form-item prop="status">
  41. <el-select
  42. v-model.trim="searchForm.status"
  43. clearable
  44. filterable
  45. placeholder="请选择人员状态"
  46. >
  47. <el-option label="未录用" value="NOT_EMPLOYED"></el-option>
  48. <el-option label="面试中" value="INTERVIEWING"></el-option>
  49. <el-option label="储备" value="RESERVE"></el-option>
  50. <el-option label="兼职" value="PART_TIME"></el-option>
  51. <el-option label="全职" value="FULL_TIME"></el-option>
  52. <el-option label="离职" value="DIMISSION"></el-option>
  53. </el-select>
  54. </el-form-item>
  55. <el-form-item prop="position">
  56. <el-select
  57. v-model.trim="searchForm.position"
  58. clearable
  59. filterable
  60. placeholder="请选择职位"
  61. >
  62. <el-option label="指导老师" value="ADVISER"></el-option>
  63. <el-option label="乐团主管" value="ACADEMIC"></el-option>
  64. <el-option label="乐队指导" value="TEACHING"></el-option>
  65. </el-select>
  66. </el-form-item>
  67. <el-form-item prop="organId">
  68. <el-select
  69. v-model.trim="searchForm.organId"
  70. placeholder="请选择分部"
  71. clearable
  72. filterable
  73. >
  74. <el-option
  75. v-for="(item, index) in organList"
  76. :key="index"
  77. :value="item.id"
  78. :label="item.name"
  79. >
  80. </el-option>
  81. </el-select>
  82. </el-form-item>
  83. <el-form-item prop="subjectId" :label-width="formLabelWidth">
  84. <el-select
  85. v-model.trim="searchForm.subjectId"
  86. clearable
  87. filterable
  88. placeholder="请选择声部"
  89. >
  90. <el-option
  91. v-for="(item, index) in subjectList"
  92. :key="index"
  93. :value="item.id"
  94. :label="item.name"
  95. >
  96. </el-option>
  97. </el-select>
  98. </el-form-item>
  99. <el-form-item prop="dates" :label-width="formLabelWidth">
  100. <el-date-picker
  101. v-model="searchForm.dates"
  102. type="daterange"
  103. style="width: 405px"
  104. range-separator="至"
  105. start-placeholder="更新开始日期"
  106. end-placeholder="更新结束日期"
  107. >
  108. </el-date-picker>
  109. </el-form-item>
  110. <el-form-item prop="operator">
  111. <el-input
  112. placeholder="归属管理HR"
  113. v-model.trim="searchForm.operator"
  114. clearable
  115. ></el-input>
  116. </el-form-item>
  117. <el-form-item>
  118. <el-button @click="search" type="danger">搜索</el-button>
  119. <el-button
  120. @click="onReSet"
  121. type="primary"
  122. style="background-color: #409eff; border-color: #409eff"
  123. >重置</el-button
  124. >
  125. </el-form-item>
  126. </saveform>
  127. <div class="tableWrap">
  128. <el-table
  129. :data="tableList"
  130. :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
  131. >
  132. <el-table-column
  133. width="120px"
  134. align="center"
  135. prop="id"
  136. label="编号"
  137. ></el-table-column>
  138. <el-table-column align="center" prop="realName" label="姓名">
  139. <template slot-scope="scope">
  140. <el-tooltip
  141. class="item"
  142. effect="dark"
  143. :content="scope.row.realName"
  144. placement="top"
  145. >
  146. <copy-text>{{ scope.row.realName }}</copy-text>
  147. </el-tooltip>
  148. </template>
  149. </el-table-column>
  150. <el-table-column align="center" prop="mobileNo" label="手机号">
  151. <template slot-scope="scope">
  152. <div>
  153. <copy-text>{{ scope.row.mobileNo }}</copy-text>
  154. </div>
  155. </template>
  156. </el-table-column>
  157. <el-table-column
  158. align="center"
  159. prop="wechatNo"
  160. label="微信"
  161. ></el-table-column>
  162. <el-table-column align="center" label="学历信息">
  163. <template slot-scope="scope">
  164. <el-button @click="openEducation(scope.row)" type="text"
  165. >查看学历</el-button
  166. >
  167. </template>
  168. </el-table-column>
  169. <el-table-column
  170. align="center"
  171. prop="subjectName"
  172. label="声部"
  173. width="200px"
  174. >
  175. <template slot-scope="scope">
  176. <el-tooltip
  177. class="item"
  178. effect="dark"
  179. :content="scope.row.subjectName"
  180. placement="top"
  181. >
  182. <span>{{ scope.row.subjectName }}</span>
  183. </el-tooltip>
  184. </template>
  185. </el-table-column>
  186. <el-table-column
  187. align="center"
  188. prop="liveCity"
  189. label="所在城市"
  190. ></el-table-column>
  191. <el-table-column
  192. align="center"
  193. prop="intentionCity"
  194. label="工作意向"
  195. width="100px"
  196. >
  197. <template slot-scope="scope">
  198. <el-tooltip
  199. class="item"
  200. effect="dark"
  201. :content="scope.row.intentionCity"
  202. placement="top"
  203. >
  204. <span>{{ scope.row.intentionCity }}</span>
  205. </el-tooltip>
  206. </template>
  207. </el-table-column>
  208. <el-table-column
  209. align="center"
  210. prop="assessmentResult"
  211. label="评估结果"
  212. width="200px"
  213. >
  214. <template slot-scope="scope">
  215. <el-tooltip
  216. class="item"
  217. effect="dark"
  218. :content="scope.row.assessmentResult"
  219. placement="top"
  220. >
  221. <span>{{ scope.row.assessmentResult }}</span>
  222. </el-tooltip>
  223. </template>
  224. </el-table-column>
  225. <el-table-column
  226. align="center"
  227. prop="otherComment"
  228. label="其它综合情况"
  229. width="200px"
  230. >
  231. <template slot-scope="scope">
  232. <el-tooltip
  233. class="item"
  234. effect="dark"
  235. :content="scope.row.otherComment"
  236. placement="top"
  237. >
  238. <span>{{ scope.row.otherComment }}</span>
  239. </el-tooltip>
  240. </template>
  241. </el-table-column>
  242. <el-table-column
  243. align="center"
  244. prop="sourceFrom"
  245. label="信息来源"
  246. ></el-table-column>
  247. <el-table-column
  248. align="center"
  249. prop="entryDate"
  250. label="入职时间"
  251. width="150px"
  252. >
  253. <template slot-scope="scope">
  254. {{ scope.row.entryDate | dayjsFormat }}
  255. </template>
  256. </el-table-column>
  257. <el-table-column align="center" prop="position" label="职位">
  258. <template slot-scope="scope">
  259. {{ scope.row.position | jobType }}
  260. </template>
  261. </el-table-column>
  262. <el-table-column
  263. align="center"
  264. prop="organName"
  265. label="分部"
  266. ></el-table-column>
  267. <el-table-column
  268. align="center"
  269. prop="isProbationPeriod"
  270. label="是否试用期"
  271. >
  272. <template slot-scope="scope">
  273. {{
  274. typeof scope.row.isProbationPeriod === "boolean"
  275. ? scope.row.isProbationPeriod
  276. ? "是"
  277. : "否"
  278. : ""
  279. }}
  280. </template>
  281. </el-table-column>
  282. <el-table-column align="center" prop="status" label="人员状态">
  283. <template slot-scope="scope">
  284. {{ scope.row.status | hrStatus }}
  285. </template>
  286. </el-table-column>
  287. <el-table-column
  288. align="center"
  289. prop="idCard"
  290. label="证件号码"
  291. width="200px"
  292. ></el-table-column>
  293. <el-table-column align="center" prop="age" label="年龄">
  294. <template slot-scope="scope">
  295. {{ scope.row.age > 0 ? scope.row.age : "" }}
  296. </template>
  297. </el-table-column>
  298. <el-table-column align="center" prop="gender" label="性别">
  299. <template slot-scope="scope">
  300. {{
  301. typeof scope.row.gender === "boolean"
  302. ? scope.row.gender
  303. ? "男"
  304. : "女"
  305. : ""
  306. }}
  307. </template>
  308. </el-table-column>
  309. <el-table-column
  310. align="center"
  311. prop="bankCardNo"
  312. label="银行卡号"
  313. width="200px"
  314. ></el-table-column>
  315. <el-table-column
  316. align="center"
  317. prop="bankAddress"
  318. label="开户行"
  319. width="200px"
  320. ></el-table-column>
  321. <el-table-column
  322. align="center"
  323. prop="emergencyContactName"
  324. label="紧急联系人"
  325. ></el-table-column>
  326. <el-table-column
  327. align="center"
  328. prop="emergencyContactRelation"
  329. label="紧急联系人关系"
  330. ></el-table-column>
  331. <el-table-column
  332. align="center"
  333. prop="emergencyContactPhone"
  334. label="紧急联系人电话"
  335. ></el-table-column>
  336. <el-table-column
  337. align="center"
  338. prop="updateTime"
  339. label="最后一次操作时间时间"
  340. width="160px"
  341. ></el-table-column>
  342. <el-table-column
  343. align="center"
  344. prop="operatorName"
  345. label="归属管理HR"
  346. >
  347. <template slot-scope="scope">
  348. <div>
  349. <copy-text>{{ scope.row.operatorName }}</copy-text>
  350. </div>
  351. </template>
  352. </el-table-column>
  353. <el-table-column
  354. align="center"
  355. prop="resignationDate"
  356. label="离职时间"
  357. width="150px"
  358. >
  359. <template slot-scope="scope">
  360. {{ scope.row.resignationDate | dayjsFormat }}
  361. </template>
  362. </el-table-column>
  363. <el-table-column align="center" label="操作" fixed="right">
  364. <template slot-scope="scope">
  365. <el-button
  366. v-permission="'employeeInfo/update'"
  367. @click="openTypes('update', scope.row)"
  368. type="text"
  369. >修改</el-button
  370. >
  371. </template>
  372. </el-table-column>
  373. </el-table>
  374. <pagination
  375. :total.sync="pageInfo.total"
  376. :page.sync="pageInfo.page"
  377. :limit.sync="pageInfo.limit"
  378. :page-sizes="pageInfo.page_size"
  379. sync
  380. @pagination="getList"
  381. />
  382. </div>
  383. </div>
  384. <el-dialog
  385. :title="formTitle[formActionTitle]"
  386. :visible.sync="typeStatus"
  387. destroy-on-close
  388. :close-on-click-modal="false"
  389. @close="onFormClose('ruleForm')"
  390. width="1050px"
  391. >
  392. <hrform
  393. :detail.sync="rowDetail"
  394. v-if="typeStatus"
  395. :organList="organList"
  396. :subjectList="subjectList"
  397. :close="onFormClose"
  398. :getList="getList"
  399. />
  400. </el-dialog>
  401. <el-dialog
  402. title="查看学历信息"
  403. :visible.sync="educationVisible"
  404. destroy-on-close
  405. :close-on-click-modal="false"
  406. @close="educationVisible = false"
  407. width="600px"
  408. >
  409. <el-table
  410. :data="educationList"
  411. :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
  412. >
  413. <el-table-column
  414. align="center"
  415. prop="level"
  416. label="学历"
  417. ></el-table-column>
  418. <el-table-column
  419. align="center"
  420. prop="school"
  421. label="毕业学校"
  422. ></el-table-column>
  423. <el-table-column align="center" prop="year" label="毕业时间">
  424. <template slot-scope="scope">
  425. {{ scope.row.year | dayjsFormat }}
  426. </template>
  427. </el-table-column>
  428. </el-table>
  429. </el-dialog>
  430. </div>
  431. </template>
  432. <script>
  433. import pagination from "@/components/Pagination/index";
  434. import saveform from "@/components/save-form";
  435. import dayjs from "dayjs";
  436. import hrform from "./form";
  437. // import store from '@/store'
  438. import {
  439. helpCenterCatalogList,
  440. employeeInfo,
  441. helpCenterContentModify,
  442. helpCenterContentDelete,
  443. } from "@/api/appTenant";
  444. import { getEmployeeOrgan, getSubject } from "@/api/buildTeam";
  445. import { subjectListTree } from "@/api/specialSetting";
  446. export const getTimes = (times, keys = []) => {
  447. if (times && times.length) {
  448. return {
  449. [keys[0] || "start"]: dayjs(times[0]).format("YYYY-MM-DD"),
  450. [keys[1] || "start"]: dayjs(times[1]).format("YYYY-MM-DD"),
  451. };
  452. }
  453. return {};
  454. };
  455. const initSearch = {
  456. organId: "",
  457. jobNature: "",
  458. position: "",
  459. subjectId: "",
  460. userNameOrIdOrMobile: "",
  461. operator: "",
  462. dates: [],
  463. };
  464. export default {
  465. components: { pagination, hrform, saveform },
  466. name: "helpCategory",
  467. data() {
  468. return {
  469. searchForm: {
  470. ...initSearch,
  471. },
  472. educationVisible: false,
  473. treeList: [],
  474. tableList: [],
  475. educationList: [],
  476. formActionTitle: "create",
  477. formTitle: {
  478. create: "添加人员",
  479. update: "修改人员",
  480. },
  481. typeStatus: false, // 添加教学点
  482. formLabelWidth: "100px",
  483. form: {
  484. title: null, // 标题
  485. content: null, // 内容
  486. catalogId: null, // 分类编号
  487. },
  488. rules: {
  489. title: [{ required: true, message: "请输入标题", trigger: "blur" }],
  490. content: [{ required: true, message: "请输入内容", trigger: "blur" }],
  491. catalogId: [
  492. { required: true, message: "请输入选择分类", trigger: "blur" },
  493. ],
  494. // subjectIds: [{ required: true, message: "请选择声部组合", trigger: "change" }]
  495. },
  496. pageInfo: {
  497. // 分页规则
  498. limit: 10, // 限制显示条数
  499. page: 1, // 当前页
  500. total: 0, // 总条数
  501. page_size: [10, 20, 40, 50], // 选择限制显示条数
  502. },
  503. rowDetail: null,
  504. tempTreeList: [],
  505. organList: [],
  506. subjectList: [],
  507. };
  508. },
  509. activated() {
  510. this.getList();
  511. this.getSubjectList();
  512. //
  513. },
  514. mounted() {
  515. this.getList();
  516. this.getSubjectList();
  517. this.getTreeList();
  518. },
  519. computed: {
  520. subjectListObj() {
  521. const data = {};
  522. for (let i = 0; i < this.subjectList.length; i++) {
  523. const item = this.subjectList[i];
  524. data[item.id] = item.name;
  525. }
  526. return data;
  527. },
  528. organListObj() {
  529. const data = {};
  530. for (let i = 0; i < this.organList.length; i++) {
  531. const item = this.organList[i];
  532. data[item.id] = item.name;
  533. }
  534. return data;
  535. },
  536. },
  537. mounted() {
  538. this.getList();
  539. // this.getTreeList()
  540. getEmployeeOrgan().then((res) => {
  541. if (res.code == 200) {
  542. this.organList = res.data;
  543. }
  544. });
  545. this.getSubjectList();
  546. },
  547. methods: {
  548. getSubjectList() {
  549. getSubject({
  550. delFlag: 0,
  551. tenantId: 1,
  552. }).then((res) => {
  553. let result = res.data;
  554. if (res.code == 200) {
  555. // let tempArray = []
  556. // result.rows.forEach((item, index) => {
  557. // let subject = []
  558. // item.subjects.forEach(s => {
  559. // subject.push({
  560. // value: s.id,
  561. // label: s.name
  562. // })
  563. // })
  564. // tempArray[index] = {
  565. // label: item.name,
  566. // options: subject
  567. // }
  568. // })
  569. this.subjectList = result;
  570. }
  571. });
  572. },
  573. openEducation(row) {
  574. try {
  575. this.educationList = row.educationalBackground
  576. ? JSON.parse(row.educationalBackground)
  577. : [];
  578. this.educationVisible = true;
  579. } catch (error) {
  580. this.$message.error("数据解析失败");
  581. }
  582. },
  583. onTypeDelOpeation(row) {
  584. this.$confirm("您是否删除该内容?", "提示", {
  585. confirmButtonText: "确定",
  586. cancelButtonText: "取消",
  587. type: "warning",
  588. })
  589. .then(() => {
  590. helpCenterContentDelete({ id: row.id }).then((res) => {
  591. this.messageTips("删除", res);
  592. });
  593. })
  594. .catch(() => {});
  595. },
  596. search() {
  597. this.$refs.searchForm.validate((valid) => {
  598. this.pageInfo = {
  599. ...this.pageInfo,
  600. page: 1,
  601. };
  602. this.getList();
  603. });
  604. },
  605. onReSet() {
  606. this.pageInfo = {
  607. ...this.pageInfo,
  608. page: 1,
  609. };
  610. this.$refs.searchForm.resetFields();
  611. this.getList();
  612. },
  613. onTypeSubmit(formName) {
  614. // 添加数据
  615. this.$refs[formName].validate((valid) => {
  616. if (valid) {
  617. if (this.formActionTitle == "create") {
  618. let params = {
  619. title: this.form.title, // 标题
  620. content: this.form.content, // 内容
  621. catalogId: this.form.catalogId[this.form.catalogId.length - 1], // 分类编号
  622. };
  623. helpCenterContentModify(params).then((res) => {
  624. this.messageTips("添加", res);
  625. });
  626. } else if (this.formActionTitle == "update") {
  627. let params = {
  628. id: this.form.id,
  629. title: this.form.title, // 标题
  630. content: this.form.content, // 内容
  631. catalogId: this.form.catalogId[this.form.catalogId.length - 1], // 分类编号
  632. };
  633. helpCenterContentModify(params).then((res) => {
  634. this.messageTips("修改", res);
  635. });
  636. }
  637. } else {
  638. return false;
  639. }
  640. });
  641. },
  642. messageTips(title, res) {
  643. if (res.code == 200) {
  644. this.$message.success(title + "成功");
  645. this.typeStatus = false;
  646. this.getList();
  647. } else {
  648. this.$message.error(res.msg);
  649. }
  650. },
  651. getList() {
  652. const { dates, ...rest } = this.searchForm;
  653. console.log(dates);
  654. let params = {
  655. ...rest,
  656. ...getTimes(dates, ["startDate", "endDate"]),
  657. page: this.pageInfo.page,
  658. rows: this.pageInfo.limit,
  659. };
  660. employeeInfo(params).then((res) => {
  661. let result = res.data;
  662. if (res.code == 200) {
  663. this.tableList = result.rows;
  664. this.pageInfo.total = result.total;
  665. }
  666. });
  667. },
  668. getTreeList() {
  669. helpCenterCatalogList({
  670. parentId: 0,
  671. }).then((res) => {
  672. let result = res.data;
  673. if (res.code == 200) {
  674. this.treeList = this.setTableData(result);
  675. }
  676. });
  677. },
  678. setTableData(result) {
  679. let list = [];
  680. list = result.map((res) => {
  681. let tempList = {};
  682. tempList = {
  683. value: res.id,
  684. label: res.text,
  685. parentId: res.parentId,
  686. };
  687. if (res.children && res.children.length > 0) {
  688. tempList.children = this.setTableData(res.children);
  689. }
  690. return tempList;
  691. });
  692. return list;
  693. },
  694. openTypes(type, row) {
  695. this.rowDetail = { ...row };
  696. this.typeStatus = true;
  697. this.formActionTitle = type;
  698. if (type == "update") {
  699. // 修改的时候赋值
  700. this.form = {
  701. id: row.id,
  702. title: row.title, // 标题
  703. content: row.content, // 内容
  704. catalogId: this.getAllIds(row), // 分类编号
  705. };
  706. }
  707. },
  708. onToUrl() {
  709. this.$router.push("/insideSetting/helpCategory");
  710. },
  711. getAllIds(row) {
  712. let idAndParent = []; // idAndParent保存 Tree所有节点的id和parentId
  713. this.getIdAndParent(this.treeList, idAndParent);
  714. let parentIds = []; // 用于保存选中节点的父节点及父节点的父节点
  715. this.getId(row.catalogId, parentIds, idAndParent);
  716. return parentIds.reverse(); //反转数组
  717. },
  718. getIdAndParent(tree, idAndParentIds) {
  719. // idAndParentIds用来保存所有节点的id,parentId
  720. // 对原有的数据结构进行遍历,拿出所有节点的id,parentId到一个一维数组中。
  721. tree.forEach((item) => {
  722. let mid = {
  723. id: item.value,
  724. parentId: item.parentId,
  725. };
  726. idAndParentIds.push(mid);
  727. if (item.children) {
  728. this.getIdAndParent(item.children, idAndParentIds);
  729. }
  730. });
  731. },
  732. getId(id, parentIds, idAndParent) {
  733. idAndParent.forEach((item) => {
  734. if (item.id == id) {
  735. parentIds.push(id);
  736. if (item.parentId != -1) {
  737. this.getId(item.parentId, parentIds, idAndParent);
  738. }
  739. }
  740. });
  741. },
  742. onFormClose(formName) {
  743. this.rowDetail = null;
  744. this.typeStatus = false;
  745. // 关闭弹窗重置验证
  746. this.form = {
  747. title: null, // 标题
  748. content: null, // 内容
  749. catalogId: [], // 分类编号
  750. };
  751. // this.$refs.cascader.handleClear()
  752. // this.$refs[formName].resetFields();
  753. },
  754. },
  755. };
  756. </script>
  757. <style lang="scss" scoped>
  758. .el-button--primary {
  759. background: #14928a;
  760. border-color: #14928a;
  761. color: #fff;
  762. &:hover,
  763. &:active,
  764. &:focus {
  765. background: #14928a;
  766. border-color: #14928a;
  767. color: #fff;
  768. }
  769. }
  770. /deep/.el-date-editor.el-input {
  771. width: 100% !important;
  772. }
  773. /deep/.el-select {
  774. width: 100% !important;
  775. }
  776. /deep/.el-table .cell {
  777. display: -webkit-box;
  778. overflow: hidden;
  779. max-height: 45px;
  780. text-overflow: ellipsis;
  781. -webkit-line-clamp: 3;
  782. -webkit-box-orient: vertical;
  783. }
  784. /deep/.el-dialog__body {
  785. padding: 10px 20px;
  786. }
  787. .newBand {
  788. display: inline-block;
  789. }
  790. </style>