From baeb25b20d147adbcb8ea6c398eb0bbc9a2f92bb Mon Sep 17 00:00:00 2001 From: yangfeng <wanwan926_4@163.com> Date: 星期二, 05 三月 2024 18:52:19 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.5.5:10010/r/silk/silk-web --- src/views/productManage/silkRegisterForm/addPage.vue | 779 ++++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 553 insertions(+), 226 deletions(-) diff --git a/src/views/productManage/silkRegisterForm/addPage.vue b/src/views/productManage/silkRegisterForm/addPage.vue index ee435f4..10f1fad 100644 --- a/src/views/productManage/silkRegisterForm/addPage.vue +++ b/src/views/productManage/silkRegisterForm/addPage.vue @@ -1,53 +1,220 @@ <template> <div class="custom-manage"> - <div class="tab-view"> - <el-tabs v-model="activeName" @tab-click="tabsClick"> - <el-tab-pane label="绾ゅ害鐧昏琛�" name="first"></el-tab-pane> - <el-tab-pane label="绾ゅ害妫�楠岃〃" name="second"></el-tab-pane> - </el-tabs> - </div> - - <div class="filter"> - <div class="filter-card"> - <CommonSearch - :show-add="false" - :show-download="false" - :amount-view="false" - :show-action-btn="false" - placeholder="璇疯緭鍏ュ叧閿瘝" - @searchClick="onFilterSearch" - > - <template slot="leftButton"> - <el-button size="small" type="primary" @click="cancelClick">鏀惧純</el-button> - <el-button size="small" type="primary" @click="saveClick">淇濆瓨</el-button> - </template> - </CommonSearch> + <div class="tab-view"> + <el-tabs v-model="activeName" @tab-click="tabsClick"> + <el-tab-pane label="绾ゅ害鐧昏琛�" name="first"></el-tab-pane> + <el-tab-pane label="绾ゅ害妫�楠岃〃" name="second"></el-tab-pane> + </el-tabs> </div> - </div> - - <div class="body"> - <div class="body-card"> - <div class="list-view"> - <TableCommonView - ref="tableListRef" - v-loading="loading" - :table-list="tableList" - @selTableCol="selTableCol" - > - </TableCommonView> - </div> - <div class="btn-pager"> - <PagerView class="page" :pager-options="pagerOptions" v-on="pagerEvents" /> - </div> + + <div class="filter"> + <div class="filter-card"> + <CommonSearch :show-add="false" :show-download="false" :amount-view="false" :show-action-btn="false" + placeholder="璇疯緭鍏ュ叧閿瘝" @searchClick="onFilterSearch"> + <template slot="leftButton"> + <el-button size="small" type="primary" @click="cancelClick">鏀惧純</el-button> + <el-button size="small" type="primary" @click="saveClick">淇濆瓨</el-button> + </template> + </CommonSearch> + </div> </div> - </div> + + <div class="body" v-if="activeName == 'first'"> + <div class="body-l"> + <el-form ref="form" class="form-box" :model="form" :rules="rules" label-position="left" label-width="70px"> + <el-form-item label="缂栧彿" prop="clientName" class="form-item"> + <el-input v-model="form.clientName" placeholder="璇疯緭鍏�"> + </el-input> + </el-form-item> + <el-form-item label="钀戒笣鏃堕棿" prop="signTime" class="form-item"> + <el-date-picker v-model="form.signTime" value-format="yyyy-MM-dd" type="date" placeholder="閫夋嫨鏃ユ湡" + style="width:100%"> + </el-date-picker> + </el-form-item> + <el-form-item label="搴勫彛" prop="deliverType" class="form-item"> + <el-select v-model="form.deliverType" placeholder="璇烽�夋嫨"> + <el-option v-for="item in deliveryTypeList" :key="item.id" :label="item.name" :value="item.id"> + </el-option> + </el-select> + </el-form-item> + <el-form-item label="杞﹂棿" prop="deliverType" class="form-item"> + <el-select v-model="form.deliverType" placeholder="璇烽�夋嫨"> + <el-option v-for="item in deliveryTypeList" :key="item.id" :label="item.name" :value="item.id"> + </el-option> + </el-select> + </el-form-item> + <el-form-item label="瑙勬牸" prop="deliverType" class="form-item"> + <el-select v-model="form.deliverType" placeholder="璇烽�夋嫨"> + <el-option v-for="item in deliveryTypeList" :key="item.id" :label="item.name" :value="item.id"> + </el-option> + </el-select> + </el-form-item> + <el-form-item label="缁勫埆" prop="deliverType" class="form-item"> + <el-select v-model="form.deliverType" placeholder="璇烽�夋嫨" style="width: 100%"> + <el-option v-for="item in deliveryTypeList" :key="item.id" :label="item.name" :value="item.id"> + </el-option> + </el-select> + </el-form-item> + <el-form-item label="鍥炴暟" prop="amount" class="form-item"> + <el-row> + <el-col :span="11"> + <el-input v-model.number="form.amount" placeholder="璇疯緭鍏�" show-word-limit + style="width: 100%"></el-input> + </el-col> + <el-col :span="2" style="margin:0 auto;text-align:center;">-</el-col> + <el-col :span="11"> + <el-input v-model.number="form.amount" placeholder="璇疯緭鍏�" show-word-limit + style="width: 100%"></el-input> + </el-col> + </el-row> + </el-form-item> + <el-form-item label="杞﹀彿" prop="clientName" class="form-item"> + <el-input v-model="form.clientName" placeholder="璇疯緭鍏�"> + </el-input> + </el-form-item> + </el-form> + <div class="list-view"> + <TableCommonView ref="tableListRef" :colOpenShow="false" v-loading="loading" :table-list="tableList" + @selTableCol="selTableCol"> + </TableCommonView> + </div> + </div> + <div class="body-r"> + 绾ゅ害锛� + <p>19.00</p> + </div> + </div> + <div class="body-two body" v-if="activeName == 'second'"> + <div class="body-two-t">绾ゅ害妫�楠岃〃</div> + <el-form ref="form" class="form-box" :model="form" :rules="rules" label-position="right" label-width="60px"> + <div class="form-box-t"> + <el-form-item label="缂栧彿" prop="clientName" class="form-item"> + 1234546677 + </el-form-item> + <el-form-item label="杞﹂棿" prop="deliverType" class="form-item"> + <el-select v-model="form.deliverType" placeholder="璇烽�夋嫨"> + <el-option v-for="item in deliveryTypeList" :key="item.id" :label="item.name" :value="item.id"> + </el-option> + </el-select> + </el-form-item> + <el-form-item label="缁勫埆" prop="deliverType" class="form-item"> + <el-select v-model="form.deliverType" placeholder="璇烽�夋嫨" style="width: 100%"> + <el-option v-for="item in deliveryTypeList" :key="item.id" :label="item.name" :value="item.id"> + </el-option> + </el-select> + </el-form-item> + <el-form-item label="鍥炴暟" prop="amount" class="form-item"> + <el-input v-model.number="form.amount" placeholder="璇疯緭鍏�" show-word-limit + style="width: 100%"></el-input> + </el-form-item> + <el-form-item label="瑙勬牸" prop="clientName" class="form-item"> + <el-input v-model="form.clientName" placeholder="璇疯緭鍏�"> + </el-input> + </el-form-item> + <el-form-item label="鏃ユ湡" prop="signTime" class="form-item"> + <el-date-picker v-model="form.signTime" value-format="yyyy-MM-dd" type="date" placeholder="閫夋嫨鏃ユ湡" + style="width:100%"> + </el-date-picker> + </el-form-item> + </div> + <div class="list-view"> + <el-table ref="multipleTable" :data="tableTwoList.tableInfomation" tooltip-effect="dark" + style="width: 100%"> + <el-table-column label="杞﹀彿" prop="templateName" width="100"> + </el-table-column> + <el-table-column label="涓嬪樊绾ゅ害" prop="name" width="100" align="center"> + <template v-for="(item, i) in tableTwoList.lower"> + <el-table-column align="center" :key="i" :prop="item.prop" :label="item.label" + :width="item.width" :min-width="item.min" show-overflow-tooltip + :sortable="item.sortable"> + </el-table-column> + </template> + </el-table-column> + <el-table-column label="鐩殑绾ゅ害" prop="name" width="100" align="center"> + <template v-for="(item, i) in tableTwoList.objective"> + <el-table-column align="center" :key="i" :prop="item.prop" :label="item.label" + :width="item.width" :min-width="item.min" show-overflow-tooltip + :sortable="item.sortable"> + </el-table-column> + </template> + </el-table-column> + <el-table-column label="涓婂樊绾ゅ害" prop="name" width="100" align="center"> + <template v-for="(item, i) in tableTwoList.upper"> + <el-table-column align="center" :key="i" :prop="item.prop" :label="item.label" + :width="item.width" :min-width="item.min" show-overflow-tooltip + :sortable="item.sortable"> + </el-table-column> + </template> + </el-table-column> + <el-table-column prop="valueRange" label="鍋忓樊" width="120"> + </el-table-column> + <el-table-column prop="unit" label="鎬诲樊" show-overflow-tooltip> + </el-table-column> + <el-table-column prop="valueRange" label="閲庣氦" width="120"> + </el-table-column> + <el-table-column prop="unit" label="澶ч噹" show-overflow-tooltip> + </el-table-column> + <el-table-column prop="valueRange" label="鐗归噹" width="120"> + </el-table-column> + <el-table-column prop="unit" label="绛夌骇" show-overflow-tooltip> + </el-table-column> + <el-table-column prop="valueRange" label="II搴�" width="120"> + </el-table-column> + <el-table-column prop="unit" label="娓呮磥" show-overflow-tooltip> + </el-table-column> + <el-table-column prop="valueRange" label="娲佸噣" width="120"> + </el-table-column> + <el-table-column prop="unit" label="澶囨敞" show-overflow-tooltip> + </el-table-column> + </el-table> + </div> + <div class="form-box-b"> + <el-form-item label="骞冲潎绾ゅ害" prop="clientName" class="form-item-two" label-width="100px"> + 1234546677 + </el-form-item> + <el-form-item label="鍏噺绾ゅ害" prop="deliverType" class="form-item" label-width="100px"> + <el-input v-model="form.clientName" placeholder="璇疯緭鍏�"> + </el-input> + </el-form-item> + <el-form-item label="鍋忓樊" prop="clientName" class="form-item-two"> + 0.98 + </el-form-item> + <el-form-item label="鎬诲樊" prop="clientName" class="form-item-two"> + 0.98 + </el-form-item> + <el-form-item label="杞︾粍绛夌骇" prop="deliverType" class="form-item-two" label-width="100px"> + 4A + </el-form-item> + <el-form-item label="II搴�" prop="amount" class="form-item"> + <el-input v-model="form.clientName" placeholder="璇疯緭鍏�"> + </el-input> + </el-form-item> + <el-form-item label="娓呮磥" prop="clientName" class="form-item"> + <el-input v-model="form.clientName" placeholder="璇疯緭鍏�"> + </el-input> + </el-form-item> + <el-form-item label="娲佸噣" prop="signTime" class="form-item"> + <el-input v-model="form.clientName" placeholder="璇疯緭鍏�"> + </el-input> + </el-form-item> + <el-form-item label="搴勫彛宸ヨ壓鍗曠紪鍙�" prop="signTime" class="form-item" label-width="110px"> + <el-input v-model="form.clientName" placeholder="璇疯緭鍏�"> + </el-input> + </el-form-item> + <el-form-item label="妫�楠屽憳" prop="signTime" class="form-item"> + <el-input v-model="form.clientName" placeholder="璇疯緭鍏�"> + </el-input> + </el-form-item> + </div> + </el-form> + </div> </div> - </template> +</template> - <script> - import { getFollowRecordList } from "@/api/productManage/silkRegisterForm.js" - import pageMixin from "@/components/makepager/pager/mixin/pageMixin" - export default { +<script> +import { getFollowRecordList } from "@/api/productManage/silkRegisterForm.js" +import pageMixin from "@/components/makepager/pager/mixin/pageMixin" +export default { name: "silkRegisterAddPage", props: {}, mixins: [pageMixin], @@ -55,206 +222,366 @@ }, computed: {}, data() { - return { - tableList: {}, - loading: false, - activeName: "first", - searchOptions: [], - search_map: {}, - is_public:true, - tableColumn:[ - { label: "杞﹀彿", prop: "name", min: 100, default:true}, // 瀹㈡埛鍚嶇О - { label: "绾ゅ害鍊�", prop: "member_name", default:true }, // 閿�鍞礋璐d汉 - { label: "鏁伴噺", prop: "client_level" , default:true}, // 閲嶈绾у埆 - { label: "绾ゅ害鍚堣", prop: "next_visit_time", min: 90, default:true }, // 涓嬫鍥炶鏃ユ湡 - ], - showCol:['杞﹀彿','绾ゅ害鍊�','鏁伴噺','绾ゅ害鍚堣'] - } + return { + tableList: {}, + loading: false, + activeName: "first", + searchOptions: [], + search_map: {}, + is_public: true, + tableColumn: [ + { label: "杞﹀彿", prop: "name", min: 100, default: true }, // 瀹㈡埛鍚嶇О + { label: "绾ゅ害鍊�", prop: "member_name", default: true }, // 閿�鍞礋璐d汉 + { label: "鏁伴噺", prop: "client_level", default: true }, // 閲嶈绾у埆 + { label: "绾ゅ害鍚堣", prop: "next_visit_time", min: 90, default: true }, // 涓嬫鍥炶鏃ユ湡 + ], + showCol: ['杞﹀彿', '绾ゅ害鍊�', '鏁伴噺', '绾ゅ害鍚堣'], + deliveryTypeList: [], + form: {}, + rules: { + clientName: [ + { required: true, message: "璇烽�夋嫨瀹㈡埛鍚嶇О", trigger: "change" }, + ], + }, + tableTwoList: { + tableInfomation: [], + lower: [ + { label: "14", prop: "name", min: 100, default: true }, + { label: "14.5", prop: "member_name", default: true }, + { label: "15", prop: "client_level", default: true }, + { label: "15.5", prop: "next_visit_time", min: 90, default: true }, + { label: "16", prop: "name", min: 100, default: true }, + { label: "16.5", prop: "member_name", default: true }, + { label: "17", prop: "client_level", default: true }, + { label: "17.5", prop: "next_visit_time", min: 90, default: true }, + { label: "18", prop: "client_level", default: true }, + { label: "18.5", prop: "next_visit_time", min: 90, default: true }, + ], + objective: [ + { label: "19", prop: "name", min: 100, default: true }, + { label: "19.5", prop: "member_name", default: true }, + { label: "20", prop: "client_level", default: true }, + { label: "20.5", prop: "next_visit_time", min: 90, default: true }, + { label: "21", prop: "name", min: 100, default: true }, + ], + upper: [ + { label: "21.5", prop: "name", min: 100, default: true }, + { label: "22", prop: "member_name", default: true }, + { label: "22.5", prop: "next_visit_time", min: 90, default: true }, + { label: "23", prop: "name", min: 100, default: true }, + { label: "23.5", prop: "member_name", default: true }, + { label: "24", prop: "client_level", default: true }, + { label: "24.5", prop: "next_visit_time", min: 90, default: true }, + { label: "25", prop: "client_level", default: true }, + { label: "25.5", prop: "next_visit_time", min: 90, default: true }, + { label: "26", prop: "client_level", default: true }, + { label: "26.5", prop: "next_visit_time", min: 90, default: true }, + ], + }, + } }, created() { - this.setTable() - this.search_map = { - is_public: this.is_public - } - this.getData() + let query = this.$route.query; + if (query) { + this.activeName = query.activeName ? query.activeName : "first"; + } + this.setTable() + this.search_map = { + is_public: this.is_public + } + this.getData() }, methods: { - setTable() { - this.tableList = { - selectIndex: true, - tableInfomation: [], - allcol: [], - showcol: this.showCol, - tableColumn:this.setColumnVisible(this.showCol) - } - this.tableList.allcol = this.tableList.tableColumn.filter(ele=>!ele.default).map(ele=>ele.label); - this.searchOptions = [] - for (let i = 0; i < this.tableList.tableColumn.length; i++) { - const label = this.tableList.tableColumn[i].label - const value = this.tableList.tableColumn[i].prop - this.searchOptions.push({ value: value, label: label }) - } - }, - setColumnVisible(showCol){ - return this.tableColumn.map(ele=>{ - return { - ...ele, - isShowColumn:showCol.includes(ele.label) - } - }) - }, - selTableCol(val) { - this.showcol = val; - this.tableList.tableColumn = this.setColumnVisible(val); - }, - // 璇锋眰鏁版嵁 - async getData() { - this.loading = true - await getFollowRecordList({ - search_map: this.search_map, - page: this.pagerOptions.currPage, - pageSize: this.pagerOptions.pageSize - }) - .then((res) => { - console.log(res) - if (res.code === 200) { - if (res.data.list && res.data.list.length > 0) { - const list = res.data.list.map((item) => { - let contact_name = "" - let contact_phone = "" - let contact_id = 0 - let contact_wechat = "" - let contact_email = "" - let position = "" - if (item.contacts.length !== 0) { - for (let i = 0; i < item.contacts.length; i++) { - if (item.contacts[i].is_first) { - contact_name = item.contacts[i].name - contact_phone = item.contacts[i].phone - contact_id = item.contacts[i].id - contact_wechat = item.contacts[i].wechat - contact_email = item.contacts[i].email - position = item.contacts[i].position - } - } - } - return { - ...item, - contact_name: contact_name, - contact_phone: contact_phone, - client_level: item.client_level.name, - client_status: item.client_status.name, - contact_id: contact_id, - member_name: item.member.username, - contact_wechat: contact_wechat, - contact_email: contact_email, - position: position - } - }) - this.tableList.tableInfomation = list || [] - this.pagerOptions.totalCount = res.data.count - } else { - this.tableList.tableInfomation = [] - } - } else { - this.tableList.tableInfomation = [] + setTable() { + this.tableList = { + selectIndex: false, + headerColor: 'red', + tableInfomation: [], + allcol: [], + showcol: this.showCol, + tableColumn: this.setColumnVisible(this.showCol) } - this.loading = false - }) - .catch((err) => { - console.log(err) - this.tableList.tableInfomation = [] - this.loading = false - }) - }, - tabsClick(tab) { - console.log(tab.name) - if (tab.name === "first") { - this.is_public = true - } else { - this.is_public = false - } - this.search_map = { - is_public: this.is_public - } - this.pagerOptions.currPage = 1 - this.getData() - }, - // 鎼滅储 - onFilterSearch(searchText){ - this.search_map = { - is_public: this.is_public, - name: searchText - } - this.pagerOptions.currPage = 1 - this.getData() - }, - // 鏀惧純 - cancelClick() { - - }, - saveClick(){ + this.tableList.allcol = this.tableList.tableColumn.filter(ele => !ele.default).map(ele => ele.label); + this.searchOptions = [] + for (let i = 0; i < this.tableList.tableColumn.length; i++) { + const label = this.tableList.tableColumn[i].label + const value = this.tableList.tableColumn[i].prop + this.searchOptions.push({ value: value, label: label }) + } + }, + setColumnVisible(showCol) { + return this.tableColumn.map(ele => { + return { + ...ele, + isShowColumn: showCol.includes(ele.label) + } + }) + }, + selTableCol(val) { + this.showcol = val; + this.tableList.tableColumn = this.setColumnVisible(val); + }, + // 璇锋眰鏁版嵁 + async getData() { + this.loading = true + await getFollowRecordList({ + search_map: this.search_map, + page: this.pagerOptions.currPage, + pageSize: this.pagerOptions.pageSize + }) + .then((res) => { + console.log(res) + if (res.code === 200) { + if (res.data.list && res.data.list.length > 0) { + const list = res.data.list.map((item) => { + let contact_name = "" + let contact_phone = "" + let contact_id = 0 + let contact_wechat = "" + let contact_email = "" + let position = "" + if (item.contacts.length !== 0) { + for (let i = 0; i < item.contacts.length; i++) { + if (item.contacts[i].is_first) { + contact_name = item.contacts[i].name + contact_phone = item.contacts[i].phone + contact_id = item.contacts[i].id + contact_wechat = item.contacts[i].wechat + contact_email = item.contacts[i].email + position = item.contacts[i].position + } + } + } + return { + ...item, + contact_name: contact_name, + contact_phone: contact_phone, + client_level: item.client_level.name, + client_status: item.client_status.name, + contact_id: contact_id, + member_name: item.member.username, + contact_wechat: contact_wechat, + contact_email: contact_email, + position: position + } + }) + this.tableList.tableInfomation = list || [] + this.tableTwoList.tableInfomation = [] + this.pagerOptions.totalCount = res.data.count + } else { + this.tableList.tableInfomation = [] + } + } else { + this.tableList.tableInfomation = [] + this.tableTwoList.tableInfomation = [] + } + this.loading = false + }) + .catch((err) => { + console.log(err) + this.tableList.tableInfomation = [] + this.loading = false + }) + }, + tabsClick(tab) { + console.log(tab.name) + if (tab.name === "first") { + this.is_public = true + } else { + this.is_public = false + } + this.search_map = { + is_public: this.is_public + } + this.pagerOptions.currPage = 1 + this.getData() + }, + // 鎼滅储 + onFilterSearch(searchText) { + this.search_map = { + is_public: this.is_public, + name: searchText + } + this.pagerOptions.currPage = 1 + this.getData() + }, + // 鏀惧純 + cancelClick() { - }, - + }, + saveClick() { + + }, + } - } - </script> +} +</script> <!-- Add "scoped" attribute to limit CSS to this component only --> - <style lang="scss" scoped> - ::v-deep { +<style lang="scss" scoped> +::v-deep { .el-tabs--top .el-tabs__item.is-top:nth-child(2) { - padding-left: 25px; + padding-left: 25px; } + .el-tabs__item { - padding: 0 25px; - height: 45px; + padding: 0 25px; + height: 45px; } - } - - .custom-manage{ +} + +.custom-manage { height: 100%; overflow: hidden; - .filter{ - height: 80px; - display: flex; - align-items: center; - padding: 0 20px 0 20px; - &-card{ + + .filter { height: 80px; display: flex; align-items: center; - box-sizing: border-box; - padding: 10px 20px; - flex: 1; - border-radius: 12px; - background-color: #fff; - } - } - .body{ - box-sizing: border-box; - padding: 10px 20px; - border-radius: 12px; - height: calc(100% - 139px); - .body-card { - background-color: #fff; - border-radius: 12px; - height: 100%; - overflow: hidden; - } - .list-view { - height: calc(100% - 60px); - overflow: hidden; - } - .btn-pager { - display: flex; - margin-top: 10px; - .page { - margin-left: auto; + padding: 0 20px 0 20px; + + &-card { + height: 80px; + display: flex; + align-items: center; + box-sizing: border-box; + padding: 10px 20px; + flex: 1; + border-radius: 12px; + background-color: #fff; } - } } - } - </style> + + .body { + box-sizing: border-box; + padding: 10px 10px; + border-radius: 12px; + height: calc(100% - 139px - 10px); + width: calc(100% - 20px); + margin: 0 auto; + margin-top: 10px; + overflow: hidden; + background: #fff; + + .body-l { + background-color: #fff; + border-radius: 12px; + height: calc(100% - 180px - 20px); + width: calc(100% - 420px); + float: left; + overflow: hidden; + padding: 10px 10px; + + .form-box { + width: 100%; + height: 100%; + overflow: hidden; + } + + .form-box { + width: 100%; + height: 180px; + overflow: hidden; + + .form-item { + width: calc(33% - 10px); + margin-right: 15px; + float: left; + + &:nth-of-type(3n) { + margin-right: 0; + } + } + } + + .list-view { + height: calc(100% - 0px); + overflow: hidden; + } + } + + .body-r { + background-color: #67a0ff; + color: #333; + font-size: 28px; + height: calc(100% - 40px); + width: 340px; + float: right; + padding: 20px 10px; + + p { + font-size: 32px; + color: #fff; + } + } + + .btn-pager { + display: flex; + margin-top: 10px; + + .page { + margin-left: auto; + } + } + } + + .body-two { + .body-two-t { + text-align: center; + width: 100%; + font-size: 16px; + line-height: 30px; + font-weight: bold; + margin-bottom: 10px; + } + + .form-box { + width: 100%; + height: calc(100% - 40px); + overflow: hidden; + } + + .form-box-t { + width: 100%; + height: 60px; + overflow: hidden; + + .form-item { + width: calc(16% - 5px); + margin-right: 10px; + float: left; + + &:nth-of-type(6n) { + margin-right: 0; + } + } + } + + .list-view { + max-height: calc(100% - 90px - 10px); + overflow: hidden; + } + .form-box-b { + width: 100%; + height: 60px; + margin-top:10px; + overflow: hidden; + .form-item-two{ + width:160px; + float:left; + } + + .form-item { + width: calc(10% - 5px); + margin-right: 10px; + float: left; + + &:nth-of-type(10n) { + margin-right: 0; + } + } + } + } +} +</style> \ No newline at end of file -- Gitblit v1.8.0