From 4351e71d782741143a98f86f6648acd16689165f Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 27 May 2022 19:48:02 +0800
Subject: [PATCH] Merge branch 'developer' into hive2.0

---
 zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/yypb-form.html |  138 ++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 127 insertions(+), 11 deletions(-)

diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/yypb-form.html b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/yypb-form.html
index c8421ac..5723d51 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/yypb-form.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/yypb-form.html
@@ -19,7 +19,7 @@
 <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">
@@ -48,7 +48,8 @@
                             </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">
@@ -100,20 +101,31 @@
                             </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;">
@@ -152,6 +164,10 @@
                                         <td>
                                             <el-input v-model="item.extract"></el-input>
                                         </td>
+                                        <td>
+                                            <el-button size="mini" type="danger"
+                                                    @click="handleDelete(index)">删除</el-button>
+                                        </td>
 
                                     </tr>
 
@@ -185,6 +201,7 @@
 </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>
@@ -200,6 +217,8 @@
             },
             //美疗师分配列表
             serviceItems: [],
+            // 删除的服务单明细
+            deleteItems : [],
             //美疗师
             beauty: [],
             pls: [],
@@ -248,7 +267,7 @@
 
                         //处理空对象和时间
                         let projService = data.mapInfo.projService;
-
+                        console.log(projService);
                         let serviceItems = projService.serviceItems;
 
                         //转换床位时间格式
@@ -323,6 +342,7 @@
                         endTime: endTime,
                         staffId: beStates.staffId,
                         extract: beStates.extract,
+                        excTime : beStates.projInfo.timeLength,
                         id: beStates.id,
                     });
 
@@ -331,12 +351,14 @@
 
                 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,
@@ -433,12 +455,12 @@
                 });
             }
             ,
-            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;
                 }
@@ -465,8 +487,102 @@
                 });
 
 
-            }
-            ,
+            },
+            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();
+                        }
+                    });
+                }
+
+            },
 
 
         },

--
Gitblit v1.9.1