ClassTime.vue 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789
  1. <template>
  2. <div class="context">
  3. <div class="panel">
  4. <h5>教练课时</h5>
  5. <div class="panel-body">
  6. <div class="panel_control">
  7. <el-row :gutter="20">
  8. <el-col :span="5">
  9. <em>店面:</em>
  10. <el-select v-model="panel.shopId">
  11. <el-option
  12. v-for="item in panel.options"
  13. :key="item.value"
  14. :label="item.label"
  15. :value="item.value"
  16. >
  17. </el-option>
  18. </el-select>
  19. </el-col>
  20. <el-col :span="5">
  21. <em>课程:</em>
  22. <el-select v-model="panel.classId">
  23. <el-option
  24. v-for="item in panel.classOptions"
  25. :key="item.value"
  26. :label="item.label"
  27. :value="item.value"
  28. >
  29. </el-option>
  30. </el-select>
  31. </el-col>
  32. <el-col :span="7">
  33. <em>时间:</em>
  34. <el-date-picker
  35. v-model="panel.timeScope"
  36. type="daterange"
  37. range-separator="至"
  38. start-placeholder="开始日期"
  39. end-placeholder="结束日期"
  40. >
  41. </el-date-picker>
  42. </el-col>
  43. <el-col :span="5">
  44. <em>教练:</em>
  45. <el-input v-model="panel.teacherName" placeholder="请输入教练"></el-input>
  46. <!-- <el-select v-model="panel.teacherName">-->
  47. <!-- <el-option-->
  48. <!-- v-for="item in panel.TeacherOptions"-->
  49. <!-- :key="item.Id"-->
  50. <!-- :label="item.Name"-->
  51. <!-- :value="item.Name"-->
  52. <!-- >-->
  53. <!-- </el-option>-->
  54. <!-- </el-select>-->
  55. </el-col>
  56. <el-col :span="1">
  57. <el-button
  58. size=""
  59. type="primary"
  60. @click="query"
  61. plain
  62. :disabled="serachBtnStatus"
  63. >查询
  64. </el-button>
  65. </el-col>
  66. </el-row>
  67. </div>
  68. </div>
  69. </div>
  70. <div class="table">
  71. <el-table
  72. :data="tableData"
  73. border
  74. is-horizontal-resize
  75. :default-sort="{ prop: 'date', order: 'descending' }"
  76. element-loading-background="rgba(0, 0, 0, 0.8)"
  77. class=""
  78. @selection-change="handleSelectionChange"
  79. @current-change="clickChange"
  80. show-summary
  81. :summary-method="getSummaries"
  82. >
  83. >
  84. <el-table-column label="序号" type="index" width="50" align="center">
  85. <template scope="scope">
  86. <span>{{ start + scope.$index + 1 }}</span>
  87. </template>
  88. </el-table-column>
  89. <el-table-column
  90. prop="ShopName"
  91. label="店面"
  92. sortable
  93. ></el-table-column>
  94. <el-table-column prop="TeacherName" label="教练" sortable>
  95. <template scope="scope">
  96. <span v-if="scope.row.TeacherName == ''">未知</span>
  97. <span v-if="scope.row.TeacherName != ''">{{
  98. scope.row.TeacherName
  99. }}</span>
  100. </template>
  101. </el-table-column>
  102. <el-table-column prop="ClassName" label="课程" sortable>
  103. <template slot-scope="scope">
  104. <span
  105. class="lessonSpan"
  106. :style="{ background: scope.row.ClassColor }"
  107. >{{ scope.row.ClassName }}</span
  108. >
  109. </template>
  110. </el-table-column>
  111. <el-table-column
  112. prop="CurrentDate"
  113. label="上课日期"
  114. width="120px"
  115. sortable
  116. ></el-table-column>
  117. <el-table-column
  118. prop="WeekDay"
  119. width="60px"
  120. label="星期"
  121. ></el-table-column>
  122. <el-table-column
  123. prop="BeginStr"
  124. label="开始"
  125. sortable
  126. ></el-table-column>
  127. <el-table-column prop="EndStr" label="结束" sortable></el-table-column>
  128. <el-table-column
  129. prop="ConsumeHour"
  130. label="课时"
  131. sortable
  132. ></el-table-column>
  133. <el-table-column
  134. prop="UserNum"
  135. label="实际上课人"
  136. sortable
  137. ></el-table-column>
  138. <el-table-column
  139. prop="SumConsumeHour"
  140. label="消耗课时"
  141. sortable
  142. ></el-table-column>
  143. </el-table>
  144. <br/>
  145. <el-pagination
  146. background
  147. :total="pageination.total"
  148. :page-size="pageination.pageItem"
  149. @current-change="pageChange"
  150. ></el-pagination>
  151. </div>
  152. </div>
  153. </template>
  154. <script>
  155. import Global from "../Global.js";
  156. import {
  157. ShopAdd,
  158. ShopDetailQuery,
  159. ShopEdit,
  160. ShopListQuery,
  161. ShopStatusEdit,
  162. TeacherConsumeQuery,
  163. testTable,
  164. testSelect,
  165. ShopManagerListQuery, ClassSimpleQuery
  166. } from "../api/getApiRes";
  167. let qs = require("qs");
  168. export default {
  169. data() {
  170. return {
  171. dialogVisible: false,
  172. dialogTitle: "新增店面",
  173. start: 0,
  174. draw: 1,
  175. // panel 配置项目
  176. panel: {
  177. shopName: "",
  178. classId: "",
  179. contacts: "",
  180. phone: "",
  181. userCode: "",
  182. tel: "",
  183. teacherName: "",
  184. shopId: "",
  185. shopList: 0,
  186. options: [],
  187. draw: 1,
  188. start: 0,
  189. recordsTotal: 0,
  190. tableData: [],
  191. allTableData: [],
  192. limit: "10",
  193. multipleSort: false,
  194. loading: false,
  195. fileList: [],
  196. TeacherOptions: [],
  197. multipleSelection: [],
  198. classOptions: [],
  199. detectedmac: "",
  200. time1: globalBt(),
  201. timeScope: globalBt2(7),
  202. },
  203. multipleSelection: [],
  204. pageination: {
  205. pageItem: 100,
  206. pageoptions: pageOptions(),
  207. total: 100,
  208. pageIndex: 1,
  209. },
  210. form: {
  211. shopName: "",
  212. addr: "",
  213. name: "",
  214. contacts: "",
  215. phone: "",
  216. userCode: "",
  217. shopId: "",
  218. btnState: 0,
  219. maxOrderLim: 0,
  220. maxCancelOrderLim: 0,
  221. isBcPunish: "0",
  222. },
  223. shops: [],
  224. tableData: [],
  225. tableRadio: [],
  226. serachBtnStatus: false,
  227. };
  228. },
  229. mounted() {
  230. this.getShopListSelect();
  231. this.teacherSelect();
  232. this.panelSelect();
  233. this.getTableQuery();
  234. },
  235. watch: {
  236. $route(to) {
  237. if (to.name == "shopManage") {
  238. this.getTableQuery();
  239. }
  240. },
  241. },
  242. methods: {
  243. panelSelect() {
  244. let that = this;
  245. let param = {
  246. token: localStorage.token,
  247. };
  248. let postdata = qs.stringify(param);
  249. ClassSimpleQuery(postdata).then(res => {
  250. // ClassListQuery(postdata).then(res => {
  251. let json = res;
  252. if (json.Code == 0) {
  253. if (json.Rs == null) return false;
  254. that.panel.classOptions = turnClassResToOption(json.Rs);
  255. that.panel.classOptions.unshift({value: '', label: '全部'})
  256. } else {
  257. that.$message.error(json.Memo + ' 错误码:' + json.Code);
  258. }
  259. })
  260. },
  261. teacherSelect() {
  262. let that = this;
  263. let param = {
  264. token: localStorage.token,
  265. start: 1,
  266. tableMax: 999,
  267. };
  268. let postdata = qs.stringify(param);
  269. ShopManagerListQuery(postdata).then((res) => {
  270. let json = res;
  271. if (json.Code == 0) {
  272. that.panel.TeacherOptions = json.Rs;
  273. that.panel.TeacherOptions.unshift({Id: "0", Name: "未知"});
  274. that.panel.TeacherOptions.unshift({Id: "", Name: "全部"});
  275. } else {
  276. that.$message.error(json.Memo + " 错误码:" + json.Code);
  277. }
  278. });
  279. },
  280. // 获取店面列表
  281. getShopListSelect() {
  282. let that = this;
  283. let param = {
  284. token: localStorage.token,
  285. };
  286. let postdata = qs.stringify(param);
  287. ShopListQuery(postdata).then((res) => {
  288. let json = res;
  289. if (json.Code == 0) {
  290. if (json.Rs == "") {
  291. that.$message.error(
  292. "当前没有可选的店铺,请先在店面管理中添加店铺!"
  293. );
  294. return false;
  295. }
  296. that.panel.options = turnShopResToOption(json.Rs);
  297. that.panel.options.unshift({value: "", label: "全部"});
  298. } else {
  299. that.$message.error(json.Memo + " 错误码:" + json.Code);
  300. }
  301. });
  302. },
  303. clickChange(item) {
  304. this.tableRadio = item;
  305. },
  306. // 新增 确认提交
  307. confirmAdmin() {
  308. let that = this;
  309. // checkNum
  310. if (!that.form.shopName) {
  311. this.$message.error("错了哦,店面名称不能为空");
  312. return false;
  313. }
  314. if (that.form.shopName.length > 18) {
  315. this.$message.error("错了哦,姓名字数超过18个字");
  316. return false;
  317. }
  318. if (!that.form.addr) {
  319. this.$message.error("错了哦,位置不能为空");
  320. return false;
  321. }
  322. if (that.form.addr.length > 38) {
  323. this.$message.error("错了哦,位置字数超过38个字");
  324. return false;
  325. }
  326. if (!that.form.contacts) {
  327. this.$message.error("错了哦,负责人不能为空");
  328. return false;
  329. }
  330. if (that.form.contacts.length > 8) {
  331. this.$message.error("错了哦,负责人字数超过8个字");
  332. return false;
  333. }
  334. if (!that.form.phone) {
  335. this.$message.error("错了哦,联系电话不能为空");
  336. return false;
  337. }
  338. if (!that.form.maxOrderLim) {
  339. this.$message.error("错了哦,用户预约限制时间不能为空");
  340. return false;
  341. }
  342. if (that.form.maxOrderLim < 0) {
  343. this.$message.error("错了哦,用户预约限制时间不能为负数");
  344. return false;
  345. }
  346. if (!that.form.maxCancelOrderLim) {
  347. this.$message.error("错了哦,用户取消预约限制不能为空");
  348. return false;
  349. }
  350. if (that.form.maxCancelOrderLim < 0) {
  351. this.$message.error("错了哦,用户取消预约限制不能为负数");
  352. return false;
  353. }
  354. // if (!globalCheckPhone(that.form.phone)) {
  355. // this.$message.error('错了哦,联系电话格式不正确');
  356. // return false
  357. // }
  358. let param = {
  359. token: localStorage.token,
  360. shopName: that.form.shopName,
  361. addr: that.form.addr,
  362. contacts: that.form.contacts,
  363. phone: that.form.phone,
  364. shopid: that.form.shopid,
  365. maxOrderLim: that.form.maxOrderLim,
  366. maxCancelOrderLim: that.form.maxCancelOrderLim,
  367. isBcPunish: that.form.isBcPunish,
  368. };
  369. let postdata = qs.stringify(param);
  370. ShopAdd(postdata).then((res) => {
  371. let json = res;
  372. if (json.Code == 0) {
  373. // 关闭弹窗
  374. that.dialogVisible = false;
  375. // 重载列表
  376. that.getTableQuery();
  377. that.$message({
  378. showClose: true,
  379. message: "店面添加成功!",
  380. type: "success",
  381. });
  382. } else {
  383. that.$message.error(json.Memo + " 错误码:" + json.Code);
  384. }
  385. });
  386. },
  387. // 修改
  388. confirmEdite() {
  389. let that = this;
  390. // checkNum
  391. if (!that.form.shopName) {
  392. this.$message.error("错了哦,店面名称不能为空");
  393. return false;
  394. }
  395. if (that.form.shopName.length > 18) {
  396. this.$message.error("错了哦,姓名字数超过18个字");
  397. return false;
  398. }
  399. if (!that.form.addr) {
  400. this.$message.error("错了哦,位置不能为空");
  401. return false;
  402. }
  403. if (that.form.addr.length > 38) {
  404. this.$message.error("错了哦,位置字数超过38个字");
  405. return false;
  406. }
  407. if (!that.form.contacts) {
  408. this.$message.error("错了哦,负责人不能为空");
  409. return false;
  410. }
  411. if (that.form.contacts.length > 8) {
  412. this.$message.error("错了哦,负责人字数超过8个字");
  413. return false;
  414. }
  415. if (!that.form.phone) {
  416. this.$message.error("错了哦,联系电话不能为空");
  417. return false;
  418. }
  419. if (!that.form.maxOrderLim) {
  420. this.$message.error("错了哦,用户预约限制时间不能为空");
  421. return false;
  422. }
  423. if (that.form.maxOrderLim < 0) {
  424. this.$message.error("错了哦,用户预约限制时间不能为负数");
  425. return false;
  426. }
  427. if (!that.form.maxCancelOrderLim) {
  428. this.$message.error("错了哦,用户取消预约限制不能为空");
  429. return false;
  430. }
  431. if (that.form.maxCancelOrderLim < 0) {
  432. this.$message.error("错了哦,用户取消预约限制不能为负数");
  433. return false;
  434. }
  435. // if (!globalCheckPhone(that.form.phone)) {
  436. // this.$message.error('错了哦,联系电话格式不正确');
  437. // return false
  438. // }
  439. let param = {
  440. token: localStorage.token,
  441. shopName: that.form.shopName,
  442. addr: that.form.addr,
  443. contacts: that.form.contacts,
  444. phone: that.form.phone,
  445. shopId: that.form.shopId,
  446. maxOrderLim: that.form.maxOrderLim,
  447. maxCancelOrderLim: that.form.maxCancelOrderLim,
  448. isBcPunish: that.form.isBcPunish,
  449. };
  450. let postdata = qs.stringify(param);
  451. ShopEdit(postdata).then((res) => {
  452. let json = res;
  453. if (json.Code == 0) {
  454. // 关闭弹窗
  455. that.dialogVisible = false;
  456. // 重载列表
  457. that.getTableQuery();
  458. that.$message({
  459. showClose: true,
  460. message: "店面编辑成功!",
  461. type: "success",
  462. });
  463. } else {
  464. that.$message.error(json.Memo + " 错误码:" + json.Code);
  465. }
  466. });
  467. },
  468. // 删除
  469. delList() {
  470. let that = this;
  471. if (this.tableRadio.length == 0) {
  472. this.$message.error("请先选中一条记录");
  473. return false;
  474. }
  475. let ShopID = this.tableRadio.ShopID;
  476. let param = {
  477. token: localStorage.token,
  478. shopId: ShopID,
  479. status: 9, //0禁用1启用9删除
  480. };
  481. let postdata = qs.stringify(param);
  482. this.$confirm("此操作将永久删除该店面, 是否继续?", "提示", {
  483. confirmButtonText: "确定",
  484. cancelButtonText: "取消",
  485. type: "warning",
  486. })
  487. .then(() => {
  488. ShopStatusEdit(postdata).then((res) => {
  489. let json = res;
  490. if (json.Code == 0) {
  491. that.$message({
  492. showClose: true,
  493. message: "选中的店面已删除!",
  494. type: "success",
  495. });
  496. // 重载列表
  497. that.getTableQuery();
  498. } else {
  499. that.$message.error(json.Memo + " 错误码:" + json.Code);
  500. }
  501. });
  502. })
  503. .catch(() => {
  504. this.$message({
  505. type: "info",
  506. message: "已取消删除",
  507. });
  508. });
  509. },
  510. clearForm() {
  511. // clear
  512. this.form.shopName = "";
  513. this.form.addr = "";
  514. this.form.name = "";
  515. this.form.userCode = "";
  516. this.form.shopId = "";
  517. this.form.phone = "";
  518. this.form.contacts = "";
  519. },
  520. // 新增店面
  521. addAdmin() {
  522. this.clearForm();
  523. this.dialogVisible = true;
  524. this.dialogTitle = "新增店面";
  525. this.form.btnState = 0; //新增
  526. },
  527. // 编辑店面
  528. editList() {
  529. let that = this;
  530. // checkNum
  531. this.clearForm();
  532. this.form.btnState = 1; //编辑
  533. if (this.tableRadio.length == 0) {
  534. this.$message.error("请先选中一条记录");
  535. return false;
  536. }
  537. let row = this.tableRadio;
  538. this.form.shopId = row.ShopID;
  539. this.form.shopName = row.ShopName;
  540. this.form.addr = row.Addr;
  541. this.form.contacts = row.Contacts;
  542. this.form.phone = row.Phone;
  543. this.form.maxOrderLim = row.MaxOrderLim;
  544. this.form.maxCancelOrderLim = row.MaxCancelOrderLim;
  545. this.form.isBcPunish = row.IsBcPunish.toString();
  546. this.dialogVisible = true;
  547. this.dialogTitle = "编辑店面";
  548. },
  549. handleSelectionChange(val) {
  550. this.multipleSelection = val;
  551. },
  552. // 查询按钮
  553. query() {
  554. // 按钮倒计时
  555. let that = this;
  556. that.serachBtnStatus = true;
  557. let totalTime = 2;
  558. let clock = window.setInterval(() => {
  559. totalTime--;
  560. if (totalTime < 0) {
  561. totalTime = 2;
  562. that.serachBtnStatus = false;
  563. }
  564. }, 1000);
  565. this.getTableQuery();
  566. this.$message.success("查询完毕");
  567. },
  568. // 页面数据查询
  569. getTableQuery() {
  570. let that = this;
  571. that.loading = true;
  572. let teacherName = '';
  573. if (this.panel.teacherName == '全部') {
  574. teacherName = '';
  575. } else {
  576. teacherName = this.panel.teacherName;
  577. }
  578. // 查询检测设备。上级区域id,区域id必传。regionid传0,查询supregionid对应所有子区域的检测设备。 如果supregionid,regionid都传0,默认查询企业ID下所有检测设备
  579. let param = {
  580. token: localStorage.token,
  581. shopId: this.panel.shopId, //
  582. classId: this.panel.classId, //
  583. name: teacherName, //
  584. bt: nonTfmtDatetoLength(that.panel.timeScope[0], 10) + " 00:00:00",
  585. et: nonTfmtDatetoLength(that.panel.timeScope[1], 10) + " 23:59:59",
  586. start: 1, //
  587. tableMax: 9999, //
  588. };
  589. let postdata = qs.stringify(param);
  590. TeacherConsumeQuery(postdata).then((res) => {
  591. let json = res;
  592. if (json.Code == 0) {
  593. that.loading = false;
  594. if (json.Rs) {
  595. that.allTableData = json.Rs;
  596. that.recordsTotal = json.Rs.length;
  597. } else {
  598. that.allTableData = [];
  599. that.recordsTotal = 0;
  600. }
  601. // 设置分页数据
  602. that.setPaginations();
  603. } else {
  604. that.$message.error(json.Memo + " 错误码:" + json.Code);
  605. }
  606. });
  607. },
  608. // 设置分页数据
  609. setPaginations() {
  610. // 分页属性
  611. let that = this;
  612. that.pageination.total = that.recordsTotal;
  613. // 默认分页
  614. that.tableData = that.allTableData.filter((item, index) => {
  615. return index < that.pageination.pageItem;
  616. });
  617. },
  618. // 每页显示数量
  619. handleSizeChange() {
  620. let that = this;
  621. that.tableData = that.allTableData.filter((item, index) => {
  622. return index < that.pageination.pageItem;
  623. });
  624. that.draw = that.pageination.pageItem;
  625. that.getTableQuery();
  626. },
  627. // 翻页
  628. pageChange(pageIndex) {
  629. let that = this;
  630. // 获取当前页
  631. let index = that.pageination.pageItem * (pageIndex - 1);
  632. // 数据总数
  633. let nums = that.pageination.pageItem * pageIndex;
  634. // 容器
  635. let tables = [];
  636. for (var i = index; i < nums; i++) {
  637. if (that.allTableData[i]) {
  638. tables.push(that.allTableData[i]);
  639. }
  640. this.tableData = tables;
  641. }
  642. that.start = index * that.draw;
  643. // that.getTableQuery();
  644. },
  645. // 自动排序
  646. sortChange(params) {
  647. console.log(params);
  648. },
  649. // 过滤时间
  650. filterFmtDate(value, row, column) {
  651. let that = this;
  652. return nonTfmtDate(column, 11);
  653. },
  654. // 过滤金额
  655. filterMoney(value, row, column) {
  656. let that = this;
  657. return parseFloat(column).toFixed(2);
  658. },
  659. getSummaries(param) {
  660. const {columns, data} = param;
  661. const sums = [];
  662. columns.forEach((column, index) => {
  663. if (index === 0) {
  664. sums[index] = '合计';
  665. return;
  666. }
  667. const values = data.map(item => Number(item[column.property]));
  668. if (!values.every(value => isNaN(value)) && index != 0 && index != 1 && index != 2 && index != 4 && index != 5) {
  669. sums[index] = values.reduce((prev, curr) => {
  670. const value = Number(curr);
  671. if (!isNaN(value)) {
  672. return prev + curr;
  673. } else {
  674. return prev;
  675. }
  676. }, 0);
  677. sums[index] += '';
  678. sums[index] = parseInt(sums[index]);
  679. } else {
  680. sums[index] = '';
  681. }
  682. });
  683. return sums;
  684. }
  685. },
  686. };
  687. </script>
  688. <style scoped>
  689. @import "../assets/css/panel.css";
  690. .context {
  691. /* height: 770px; */
  692. overflow-y: scroll;
  693. display: block;
  694. margin: 0 auto;
  695. background-color: #fff !important;
  696. padding: 30px;
  697. padding-bottom: 60px;
  698. }
  699. .panel-body {
  700. padding: 20px;
  701. background: #f0f2f5;
  702. }
  703. .change {
  704. width: 100%;
  705. overflow: hidden;
  706. display: block;
  707. margin: 0 auto;
  708. padding-top: 10px;
  709. padding-bottom: 10px;
  710. }
  711. .change button {
  712. float: left;
  713. }
  714. .change button.pull-right {
  715. float: right;
  716. }
  717. .dialogTitle {
  718. width: 100%;
  719. overflow: hidden;
  720. display: block;
  721. margin: 0 auto;
  722. color: #000000;
  723. font-size: 18px;
  724. text-align: center;
  725. }
  726. .dialogTitle em {
  727. float: none;
  728. font-style: normal;
  729. color: #3799ff;
  730. margin: 0;
  731. }
  732. /deep/ .el-transfer-panel__item .el-checkbox__input {
  733. left: 40px;
  734. }
  735. .dialogFooter {
  736. width: 90%;
  737. overflow: hidden;
  738. display: block;
  739. margin: 0 auto;
  740. margin-top: 10px;
  741. }
  742. .dialogFooter button {
  743. float: right;
  744. margin-left: 10px;
  745. }
  746. .panel /deep/ .el-date-editor .el-range-separator {
  747. line-height: 22px;
  748. }
  749. .el-input {
  750. width: 70%;
  751. }
  752. .panel .panel_control em {
  753. line-height: 35px;
  754. }
  755. /*ipad only*/
  756. @media only screen and (max-width: 1366px) {
  757. .panel /deep/ .el-date-editor--daterange {
  758. width: 100%;
  759. }
  760. .el-input {
  761. width: 100%;
  762. }
  763. }
  764. </style>