|  |  |  | 
|---|
|  |  |  | <body> | 
|---|
|  |  |  | <div class="ibox-content" id="app" v-cloak> | 
|---|
|  |  |  | <form class="form-horizontal" id="dataform" | 
|---|
|  |  |  | onsubmit="javascripr:return false;"> | 
|---|
|  |  |  | onsubmit="javascript:return false;"> | 
|---|
|  |  |  | <input autocomplete="off"   type="hidden" v-model="projService.id"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <div class="form-group"> | 
|---|
|  |  |  | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <label class="col-md-1 control-label">服务时长</label> | 
|---|
|  |  |  | <div class="col-md-3"> | 
|---|
|  |  |  | <el-input @change="changeYyTime()" v-model="projService.totalTime"></el-input> | 
|---|
|  |  |  | <!--                                <el-input @change="changeYyTime()" v-model="projService.totalTime"></el-input>--> | 
|---|
|  |  |  | <label class="control-label">{{projService.totalTime}}</label> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="form-group"> | 
|---|
|  |  |  | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="form-group"> | 
|---|
|  |  |  | <label class="col-md-1 control-label"></label> | 
|---|
|  |  |  | <div class="col-md-11"> | 
|---|
|  |  |  | <el-button size="medium" type="primary" @click="addProjForm">新增项目</el-button> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="form-group"> | 
|---|
|  |  |  | <label class="col-md-1 control-label">服务设置</label> | 
|---|
|  |  |  | <div class="col-md-11"> | 
|---|
|  |  |  | <table class="table table-bordered"> | 
|---|
|  |  |  | <tr> | 
|---|
|  |  |  | <th>项目名称</th> | 
|---|
|  |  |  | <th width="50px">服务时长</th> | 
|---|
|  |  |  | <th>次数</th> | 
|---|
|  |  |  | <th>划扣金额</th> | 
|---|
|  |  |  | <th width="100px">服务时长(分钟)</th> | 
|---|
|  |  |  | <th>服务时间</th> | 
|---|
|  |  |  | <th width="300px">美疗师</th> | 
|---|
|  |  |  | <th style="width: 100px;">提成</th> | 
|---|
|  |  |  | <th>操作</th> | 
|---|
|  |  |  | </tr> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <tr v-for="(item,index) in projService.serviceItems"> | 
|---|
|  |  |  | <td>{{item.projInfo.name}}</td> | 
|---|
|  |  |  | <td>{{item.projInfo.timeLength}}(分钟)</td> | 
|---|
|  |  |  | <td>{{item.projInfo.name}}【{{item.projUse.source}}】</td> | 
|---|
|  |  |  | <td>{{item.count}}</td> | 
|---|
|  |  |  | <td>{{item.projUse.price * item.count}}</td> | 
|---|
|  |  |  | <td><el-input @change="changeTimeLength" v-model="item.projInfo.timeLength"></el-input></td> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <td> | 
|---|
|  |  |  | <div style="display: flex;"> | 
|---|
|  |  |  | 
|---|
|  |  |  | <td> | 
|---|
|  |  |  | <el-input v-model="item.extract"></el-input> | 
|---|
|  |  |  | </td> | 
|---|
|  |  |  | <td> | 
|---|
|  |  |  | <el-button size="mini" type="danger" | 
|---|
|  |  |  | @click="handleDelete(index)">删除</el-button> | 
|---|
|  |  |  | </td> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </tr> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <script type="text/javascript" th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script> | 
|---|
|  |  |  | <script type="text/javascript" th:src="@{/js/plugin/jquery.query.js}"></script> | 
|---|
|  |  |  | <script type="text/javascript" th:src="@{/js/systools/MJsBase.js}"></script> | 
|---|
|  |  |  | <script type="text/javascript" th:src="@{/plugin/bootstrap-3.3.5/js/bootstrap.min.js}"></script> | 
|---|
|  |  |  | <script type="text/javascript" th:src="@{/js/systools/AjaxProxyVue.js}"></script> | 
|---|
|  |  |  | <script type="text/javascript" th:src="@{/js/plugin/vue.js}"></script> | 
|---|
|  |  |  | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | //美疗师分配列表 | 
|---|
|  |  |  | serviceItems: [], | 
|---|
|  |  |  | // 删除的服务单明细 | 
|---|
|  |  |  | deleteItems : [], | 
|---|
|  |  |  | //美疗师 | 
|---|
|  |  |  | beauty: [], | 
|---|
|  |  |  | pls: [], | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //处理空对象和时间 | 
|---|
|  |  |  | let projService = data.mapInfo.projService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | console.log(projService); | 
|---|
|  |  |  | let serviceItems = projService.serviceItems; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //转换床位时间格式 | 
|---|
|  |  |  | 
|---|
|  |  |  | endTime: endTime, | 
|---|
|  |  |  | staffId: beStates.staffId, | 
|---|
|  |  |  | extract: beStates.extract, | 
|---|
|  |  |  | excTime : beStates.projInfo.timeLength, | 
|---|
|  |  |  | id: beStates.id, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | var params = { | 
|---|
|  |  |  | id: projService.id, | 
|---|
|  |  |  | state : projService.state, | 
|---|
|  |  |  | totalTime: projService.totalTime, | 
|---|
|  |  |  | remark: projService.remark, | 
|---|
|  |  |  | bedId: projService.bedId, | 
|---|
|  |  |  | devisionId: projService.devisionId, | 
|---|
|  |  |  | yyTime: projService.yyTime, | 
|---|
|  |  |  | serviceItems: serviceItems, | 
|---|
|  |  |  | deleteItems : _this.deleteItems, | 
|---|
|  |  |  | //床位时间 | 
|---|
|  |  |  | bedState: { | 
|---|
|  |  |  | startTime: startTime, | 
|---|
|  |  |  | 
|---|
|  |  |  | _this.closeFram(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | parent.myGrid.serchData(); | 
|---|
|  |  |  | if (parent.myGrid) { | 
|---|
|  |  |  | parent.myGrid.serchData(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (parent.app) { | 
|---|
|  |  |  | parent.app.serviceOrderQuery(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | , | 
|---|
|  |  |  | getFreedBeautyd: function (index) { | 
|---|
|  |  |  | getFreedBeautyd: function () { | 
|---|
|  |  |  | console.log("获取美疗师"); | 
|---|
|  |  |  | let _this = this; | 
|---|
|  |  |  | let projService = _this.projService; | 
|---|
|  |  |  | let beStates = projService.serviceItems[index]; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | let beStates = projService.serviceItems[0]; | 
|---|
|  |  |  | console.log(beStates); | 
|---|
|  |  |  | if (beStates == null ||  MTools.isBlank(beStates.beginTimeForm) ||    MTools.isBlank(beStates.endTimeForm )  ){ | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | , | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | changeTimeLength:function() { | 
|---|
|  |  |  | let _this = this; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | var totalTime = 0; | 
|---|
|  |  |  | _this.projService.serviceItems.forEach(item => { | 
|---|
|  |  |  | totalTime += parseInt(item.projInfo.timeLength); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | _this.projService.totalTime = totalTime; | 
|---|
|  |  |  | _this.changeYyTime(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | handleDelete : function(index) { | 
|---|
|  |  |  | let _this = this; | 
|---|
|  |  |  | var items = this.projService.serviceItems; | 
|---|
|  |  |  | if (items.length > 1) { | 
|---|
|  |  |  | let delItem = items.splice(index, 1); | 
|---|
|  |  |  | if (delItem[0].servicesId) { | 
|---|
|  |  |  | AjaxProxy.requst({ | 
|---|
|  |  |  | app: _this, | 
|---|
|  |  |  | url: basePath + "/admin/projService/delServiceOrderItems?id="+delItem[0].id, | 
|---|
|  |  |  | callback: function (data) { | 
|---|
|  |  |  | _this.$message({ | 
|---|
|  |  |  | message: data.info, | 
|---|
|  |  |  | type: 'success' | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$message({ | 
|---|
|  |  |  | message: '需保留一个项目', | 
|---|
|  |  |  | type: 'error' | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | addProjForm() { | 
|---|
|  |  |  | var vipId = this.projService.vipInfo.id; | 
|---|
|  |  |  | layer.full(layer.open({ | 
|---|
|  |  |  | type: 2, | 
|---|
|  |  |  | title: "添加项目", | 
|---|
|  |  |  | maxmin: true, | 
|---|
|  |  |  | area: [MUI.SIZE_L, '500px'], | 
|---|
|  |  |  | content: [basePath + '/admin/redirect/hive/beautySalon/yyServiceAddForm?id='+vipId] | 
|---|
|  |  |  | })); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | addProjItems(rows) { | 
|---|
|  |  |  | let _this = this; | 
|---|
|  |  |  | var serviceItems = this.projService.serviceItems; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | for (let i = 0; i < rows.length; i++) { | 
|---|
|  |  |  | let row = rows[i] | 
|---|
|  |  |  |  | 
|---|
|  |  |  | let flag = false; | 
|---|
|  |  |  | for (let j = 0; j < serviceItems.length; j++) { | 
|---|
|  |  |  | let item = serviceItems[j]; | 
|---|
|  |  |  | if (item.puseId == row.projUse.id) { | 
|---|
|  |  |  | flag = true; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (flag) { | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | let items = []; | 
|---|
|  |  |  | row.projUse.projInfo.name = row.name + "--" + row.projUse.projName; | 
|---|
|  |  |  | items.push({ | 
|---|
|  |  |  | puseId : row.projUse.id, | 
|---|
|  |  |  | count : row.count, | 
|---|
|  |  |  | projUse : row.projUse, | 
|---|
|  |  |  | projInfo : row.projUse.projInfo | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | let data = {}; | 
|---|
|  |  |  | data.id = _this.projService.id; | 
|---|
|  |  |  | data.state = _this.projService.state; | 
|---|
|  |  |  | data.serviceItems = items; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | AjaxProxy.requst({ | 
|---|
|  |  |  | app: _this, | 
|---|
|  |  |  | data : data, | 
|---|
|  |  |  | url: basePath + "/admin/projService/addService", | 
|---|
|  |  |  | callback: function (data) { | 
|---|
|  |  |  | _this.$message({ | 
|---|
|  |  |  | message: "添加成功", | 
|---|
|  |  |  | type: 'success' | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | _this.loadInfo(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }, | 
|---|