From 274fceda8d8ae15eead0fc6490f4d1680d9ab3c5 Mon Sep 17 00:00:00 2001
From: jyy <jyy>
Date: Sat, 17 Jul 2021 16:45:27 +0800
Subject: [PATCH] Merge branch 'score_shop' into api_score_meger
---
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/cz-form.html | 2
zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java | 22 +
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/vip.html | 4
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/yypb-form.html | 2
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/cz-form-bak.html | 2
zq-erp/src/main/resources/templates/views/admin/hive-erp/order/orderXq-form.html | 2
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form-bak2.html | 2
zq-erp/src/main/java/com/matrix/system/hive/action/VipInfoController.java | 4
zq-erp/src/main/resources/templates/views/admin/hive/printTemplates/taiyan.html | 219 ++++++++++++++++
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java | 3
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form-bak.html | 2
zq-erp/src/main/resources/templates/views/admin/hive/vip/tc-form.html | 10
zq-erp/src/main/resources/templates/views/admin/hive/printTemplates/meidu.html | 201 +++++++++++++++
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/bj-form.html | 2
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form.html | 2
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/order-form.html | 2
zq-erp/src/main/resources/templates/views/admin/hive/vip/vipInfo-form.html | 13 +
zq-erp/src/main/resources/mybatis/mapper/common/SysUsersDao.xml | 14
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/print-order.html | 215 ----------------
19 files changed, 489 insertions(+), 234 deletions(-)
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java b/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
index 0ca6a5a..4e5e2cd 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
@@ -13,6 +13,7 @@
import com.matrix.core.tools.excl.ExcelUtil;
import com.matrix.core.tools.excl.ExcelVersion;
import com.matrix.system.common.bean.SysUsers;
+import com.matrix.system.common.dao.SysCompanyDao;
import com.matrix.system.common.tools.ResponseHeadUtil;
import com.matrix.system.constance.Dictionary;
import com.matrix.system.hive.bean.*;
@@ -30,6 +31,7 @@
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.servlet.ModelAndView;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@@ -217,6 +219,26 @@
return showList(sysOrder, pageVo);
}
+ @Resource
+ SysCompanyDao companyDao;
+
+ /**
+ * 收款
+ */
+ @RequestMapping(value = "/printOrder")
+ public @ResponseBody
+ ModelAndView printOrder(SysOrder order) throws GlobleException {
+ ModelAndView mv = new ModelAndView("admin/hive/beautySalon/print-order");
+ SysUsers user=(SysUsers)WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY);
+ String comRegisterCode = companyDao.selectById(user.getCompanyId()).getComRegisterCode();
+ if(StringUtils.isNotBlank(comRegisterCode)){
+ mv.addObject("page",comRegisterCode);
+ }else {
+ mv.addObject("page","taiyan");
+ }
+ return mv;
+ }
+
/**
* 收款
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/action/VipInfoController.java b/zq-erp/src/main/java/com/matrix/system/hive/action/VipInfoController.java
index acfe1fd..3aefd94 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/action/VipInfoController.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/action/VipInfoController.java
@@ -293,7 +293,9 @@
} else {
vipInfo.setVipState(Dictionary.VIP_STATE_HY);
SysUsers users = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
- vipInfo.setShopId(users.getShopId());
+ if(vipInfo.getShopId()==null){
+ vipInfo.setShopId(users.getShopId());
+ }
return add(vipInfoService, vipInfo, "会员信息");
}
}
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
index a2e5b5e..adf9bcf 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
@@ -1392,7 +1392,8 @@
private boolean isGiftMoneyPay(SysOrder order) {
BusParameterSettings giftiIsfree = busParameterSettingsDao.selectCompanyParamByCode(AppConstance.SHOP_MANAGE_GIFTISFREE, order.getCompanyId());
if(giftiIsfree.getParamValue().equals("是")){
- return order.getFlows().stream().allMatch(item -> SysOrderFlow.IS_GIFT_Y.equals(item.getIsGift()));
+ return order.getFlows().stream().allMatch(item -> SysOrderFlow.IS_GIFT_Y.equals(item.getIsGift())
+ && item.getAmount().doubleValue() >0D);
}else{
return false;
}
diff --git a/zq-erp/src/main/resources/mybatis/mapper/common/SysUsersDao.xml b/zq-erp/src/main/resources/mybatis/mapper/common/SysUsersDao.xml
index df93edb..0daf98d 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/common/SysUsersDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/common/SysUsersDao.xml
@@ -496,19 +496,19 @@
</update>
<!-- 批量删除 -->
- <delete id="deleteByIds" parameterType="java.util.List">
- delete from sys_users where su_id in
+ <update id="deleteByIds" parameterType="java.util.List">
+ update sys_users set su_valid='N' where su_id in
<foreach collection="list" index="index" item="item" open="("
separator="," close=")">
#{item}
</foreach>
- </delete>
+ </update>
<!-- 根据id删除 -->
- <delete id="deleteById" parameterType="Long">
- DELETE FROM sys_users
- where su_id=#{suId}
- </delete>
+ <update id="deleteById" parameterType="Long">
+ update sys_users set su_valid='N'
+ where su_id=#{suId}
+ </update>
<!-- 根据对象删除 -->
<delete id="deleteByModel" parameterType="Long">
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/orderXq-form.html b/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/orderXq-form.html
index 185869e..021105c 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/orderXq-form.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/orderXq-form.html
@@ -976,7 +976,7 @@
title: "打印订单",
area: ['250px', '550px'],
maxmin: true,
- content: [basePath + '/admin/redirect/hive/beautySalon/print-order?id=' + id]
+ content: [basePath + '/admin/order/printOrder?id=' + id]
});
},
handleClick() {
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/bj-form.html b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/bj-form.html
index b39313f..8265278 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/bj-form.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/bj-form.html
@@ -238,7 +238,7 @@
title: "打印订单",
area: ['250px', '550px'],
maxmin: true,
- content: [basePath + '/admin/redirect/hive/beautySalon/print-order?id=' + this.order.id],
+ content: [basePath + '/admin/order/printOrder?id=' + this.order.id],
cancel: function (index, layero) {
_this.closeFram();
}
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/cz-form-bak.html b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/cz-form-bak.html
index 5c0925d..8f3bf53 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/cz-form-bak.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/cz-form-bak.html
@@ -185,7 +185,7 @@
title: "打印订单",
area: ['250px', '550px'],
maxmin: true,
- content: [basePath + '/admin/redirect/hive/beautySalon/print-order?id=' + loj.getResult().mapInfo.orderId],
+ content: [basePath + '/admin/order/printOrder?id=' + loj.getResult().mapInfo.orderId],
cancel: function (index, layer) {
if (parent.app) {
parent.app.vipInfoFn();
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/cz-form.html b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/cz-form.html
index d30d303..962a224 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/cz-form.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/cz-form.html
@@ -352,7 +352,7 @@
title: "打印订单",
area: ['250px', '550px'],
maxmin: true,
- content: [basePath + '/admin/redirect/hive/beautySalon/print-order?id=' + this.order.id],
+ content: [basePath + '/admin/order/printOrder?id=' + this.order.id],
cancel: function (index, layero) {
_this.closeFram();
}
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/order-form.html b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/order-form.html
index 6483229..35fe872 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/order-form.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/order-form.html
@@ -1350,7 +1350,7 @@
title: "打印订单",
area: ['250px', '550px'],
maxmin: true,
- content: [basePath + '/admin/redirect/hive/beautySalon/print-order?id=' + this.order.id],
+ content: [basePath + '/admin/order/printOrder?id=' + this.order.id],
cancel: function (index, layero) {
_this.closeFram();
}
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form-bak.html b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form-bak.html
index 69a0a76..17a9a67 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form-bak.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form-bak.html
@@ -131,7 +131,7 @@
title: "打印订单",
area: ['250px', '550px'],
maxmin: true,
- content: [basePath + '/admin/redirect/hive/beautySalon/print-order?id=' + id]
+ content: [basePath + '/admin/order/printOrder?id=' + id]
});
};
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form-bak2.html b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form-bak2.html
index 1797130..864c76f 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form-bak2.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form-bak2.html
@@ -161,7 +161,7 @@
title: "打印订单",
area: ['250px', '550px'],
maxmin: true,
- content: [basePath + '/admin/redirect/hive/beautySalon/print-order?id=' + id]
+ content: [basePath + '/admin/order/printOrder?id=' + id]
});
};
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form.html b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form.html
index e5069f4..5ace9ce 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form.html
@@ -996,7 +996,7 @@
title: "打印订单",
area: ['250px', '550px'],
maxmin: true,
- content: [basePath + '/admin/redirect/hive/beautySalon/print-order?id=' + id]
+ content: [basePath + '/admin/order/printOrder?id=' + id]
});
},
handleClick() {
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/print-order.html b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/print-order.html
index c5284e5..82fd01c 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/print-order.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/print-order.html
@@ -1,219 +1,6 @@
<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org" xmlns:matrix="http://www.w3.org/1999/xhtml">
-<head>
- <meta charset="utf-8">
- <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
- <meta name="renderer" content="webkit|ie-comp|ie-stand">
- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
- <meta name="viewport"
- content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
- <meta http-equiv="Cache-Control" content="no-siteapp" />
- <LINK rel="Bookmark" href="../images/favicon.ico">
- <!-- 本框架基本脚本和样式 -->
- <script type="text/javascript"
- th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script>
- <script type="text/javascript"
- th:src="@{/js/systools/MBase.js}"></script>
- <style>
- .btn{
- position: fixed;
- bottom: 10px;
- left: 45%;
- }
+ <div th:include="'admin/hive/printTemplates/'+${page}::html" ></div>
- </style>
-</head>
-<body>
-<div class="ibox-content" id="app">
- <div id="print" style="width: 220px; ">
- <h1 style="text-align: center;font-size: 18px;margin: 20px auto;">
- {{order.shopName}}
- </h1>
- <table style="width: 100%; font-size:12px;line-height: 20px;">
-
- <tr>
- <td colspan="2">
- <b>订单号</b>:<span>{{order.orderNo}}</span>
- </td>
- </tr>
- <tr>
- <td colspan="2" >
- <b>客户</b>:<span>{{order.vipName}}</span>
- </td>
- </tr>
- <tr>
- <td colspan="2" >
- <b>消费日期</b>:<span>{{order.orderTime |format}}</span>
- </td>
- </tr>
- <tr>
- <td colspan="2">
- <b>电话</b>:<span>{{order.vipPhone| formatPhone }}</span>
- </td>
- </tr>
- </table>
- <p>-----------------------------------</p>
- <table style="width: 80%;font-size:12px;margin-top: 20px;text-align: left">
-
- <tr>
- <th style="text-align: left;" colspan="4">产品</th>
- </tr>
- <tr>
- <th style="">数量</th>
- <th style="">单价</th>
- <th style="">小计</th>
- </tr>
- <template v-for="item in order.items">
- <tr >
- <td style="text-align: left;" colspan="4" >{{item.shoppingGoods.name }}</td>
- </tr>
- <tr >
- <td>{{item.count }}</td>
- <td>{{item.zkPrice }}</td>
- <td>{{(item.zkPrice * item.count).toFixed(1) }}</td>
- </tr>
- </template>
- <tr>
- <td>
- <b>总计:</b>
- </td>
- <td>
-
- </td>
- <td>
- <span >{{order.zkTotal}}</span>
- </td>
- </tr>
- </table>
- <p>-----------------------------------</p>
- <table style="width: 100%;font-size: 10px;line-height: 30px;">
- <tr >
- <td>
- <b >储值卡余额:</b><span >{{totalMoney}}</span>
- </td>
- </tr>
-
- <tr>
- <td>
- <b>实收金额:</b><span >{{order.zkTotal-order.arrears}}</span>
- </td>
- </tr>
- <tr>
- <td>
- <b>收银人:</b><span>{{order.staffName}}</span>
- </td>
- </tr>
- <tr>
- <td>
- <b>客户签名:</b>
- </td>
- </tr>
-
-
- </table>
-
- <div style="width: 100%;text-align: center;margin: 30px auto;margin-bottom: 10px">
- <br>
- *****************<br>
- 谢谢惠顾<br>
- *****************<br>
- <br>
- </div>
- <div style="width: 100%;">
- 地址:{{shopInfo.shopAddr}}<br>
- 电话:{{shopInfo.shopTel}}<br>
- <br>
- <br>
- </div>
- <div style="width: 100%;" >
- <div style="text-align: center;">
-
- <img style="width: 100%;" :src="shopInfo.qrcode" /><br>
- 更多精彩请访问小程序<br>
- </div>
- <br>
- <br>
- </div>
-
-
- </div>
- <a href="javascript:;" onclick="print()" class="btn btn-success radius">打印</a>
-</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/AjaxProxyVue.js}"></script>
-<script type="text/javascript" th:src="@{/js/plugin/vue.js}"></script>
-<script type="text/javascript" th:src="@{/js/plugin/LodopFuncs.js}"></script>
-<script type="text/javascript" th:src="@{/plugin/element-ui/index.js}"></script>
-<script type="text/javascript">
-
-
- var id = $.query.get("id");
- var app = new Vue({
- el: '#app',
- data: {
- order:{
- vipInfo:{},
- serviceItems:[]
- },
- moneyCar:{},
- totalMoney:0
-
- },
- created: function () {
-
- this.loadInfo();
- },
-
- mounted: function () {
-
- },
-
- methods: {
- loadInfo(){
- var _this=this;
- AjaxProxy.requst({
- app: _this,
- url: basePath + '/admin/order/getShopOrder?id='+id,
- callback: function (data) {
- _this.order=data.mapInfo.order;
- _this.moneyCar=data.mapInfo.moneyCar;
- _this.shopInfo=data.mapInfo.shopInfo;
- _this.totalMoney=data.mapInfo.totalMoney;
- setTimeout(print,1000) ;
- }
- });
- },
- },
-
- filters:
- {
- format: function (value) {
- if (!value) return '';
- return MTools.formatDate(value, 'yyyy-MM-dd')
- } ,
- formatPhone: function (value) {
- if (!value) return '';
- return value.substr(0,3) + "****" + value.substr(value.length-4,value.length+1)
- } ,
- },
-
-
- },
- );
-
-
- var LODOP;
-
- function print() {
- LODOP = getLodop();
- LODOP.PRINT_INIT("HIVE打印任务");
- LODOP.ADD_PRINT_HTM(0, 0, "100%", "100%", document.getElementById("print").innerHTML);
- LODOP.SET_PRINT_MODE("FULL_HEIGHT_FOR_OVERFLOW", true);
- LODOP.PREVIEW();
- }
-
-</script>
-</body>
</html>
\ No newline at end of file
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/vip.html b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/vip.html
index 9e7c66c..c2b4cda 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/vip.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/vip.html
@@ -300,8 +300,8 @@
</el-table-column>
<el-table-column label="操作" fixed="right" width="160">
<template slot-scope="scope">
- <el-button matrix:btn="vipInfo-youxiao" v-if="scope.row.status!='有效' && scope.row.taocanId == null" type="text" size="small" @click="tabProjValid(scope.$index, scope.row)">有效</el-button>
- <el-button matrix:btn="vipInfo-wuxiao" v-if="scope.row.status!='无效' && scope.row.taocanId == null" type="text" size="small" @click="tabProjInvalid(scope.$index, scope.row)">无效</el-button>
+ <el-button matrix:btn="vipInfo-youxiao" v-if="scope.row.status!='有效'" type="text" size="small" @click="tabProjValid(scope.$index, scope.row)">有效</el-button>
+ <el-button matrix:btn="vipInfo-wuxiao" v-if="scope.row.status!='无效'" type="text" size="small" @click="tabProjInvalid(scope.$index, scope.row)">无效</el-button>
<el-button matrix:btn="vipInfo-dongjie" v-if="scope.row.status!='冻结' && scope.row.taocanId == null" type="text" size="small" @click="tabProjCold(scope.$index, scope.row)">冻结</el-button>
<el-button matrix:btn="vipInfo-cardEdit" v-if="scope.row.taocanId == null" type="text" size="small" @click="tabProjEdit(scope.$index, scope.row)">编辑</el-button>
<el-button type="text" v-if="scope.row.orderId != null" @click="openOrder(scope.$index, scope.row)" size="small">订单</el-button>
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 241700e..ab2f950 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
@@ -113,6 +113,7 @@
<tr>
<th>项目名称</th>
<th>次数</th>
+ <th>划扣金额</th>
<th width="100px">服务时长(分钟)</th>
<th>服务时间</th>
<th width="300px">美疗师</th>
@@ -122,6 +123,7 @@
<tr v-for="(item,index) in projService.serviceItems">
<td>{{item.projInfo.name}}</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>
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/printTemplates/meidu.html b/zq-erp/src/main/resources/templates/views/admin/hive/printTemplates/meidu.html
new file mode 100644
index 0000000..22c1c0a
--- /dev/null
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/printTemplates/meidu.html
@@ -0,0 +1,201 @@
+<!DOCTYPE HTML>
+<html xmlns:th="http://www.thymeleaf.org" xmlns:matrix="http://www.w3.org/1999/xhtml">
+<head>
+ <meta charset="utf-8">
+ <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
+ <meta name="renderer" content="webkit|ie-comp|ie-stand">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+ <meta name="viewport"
+ content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+ <meta http-equiv="Cache-Control" content="no-siteapp" />
+ <LINK rel="Bookmark" href="../images/favicon.ico">
+ <!-- 本框架基本脚本和样式 -->
+ <script type="text/javascript"
+ th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script>
+ <script type="text/javascript"
+ th:src="@{/js/systools/MBase.js}"></script>
+ <style>
+
+ .btn{
+ position: fixed;
+ bottom: 10px;
+ left: 45%;
+ }
+
+ </style>
+</head>
+<body>
+<div class="ibox-content" id="app">
+
+
+ <div id="print" style="width: 220px; ">
+ <h1 style="text-align: center;font-size: 18px;margin: 20px auto;">
+ {{order.shopName}}
+ </h1>
+ <table style="width: 100%; font-size:12px;line-height: 20px;">
+
+ <tr>
+ <td colspan="2">
+ <b>订单号</b>:<span>{{order.orderNo}}</span>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2" >
+ <b>客户</b>:<span>{{order.vipName}}</span>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2" >
+ <b>消费日期</b>:<span>{{order.orderTime |format}}</span>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2">
+ <b>电话</b>:<span>{{order.vipPhone| formatPhone }}</span>
+ </td>
+ </tr>
+ </table>
+ <p>--------------------------------</p>
+ <table style="width: 80%;font-size:12px;margin-top: 20px;text-align: left">
+
+ <tr>
+ <th style="text-align: left;" colspan="4">产品</th>
+ </tr>
+ <tr>
+ <th style="">数量</th>
+ <th style="">单价</th>
+ <th style="">小计</th>
+ </tr>
+ <template v-for="item in order.items">
+ <tr >
+ <td style="text-align: left;" colspan="4" >{{item.shoppingGoods.name }}</td>
+ </tr>
+ <tr >
+ <td>{{item.count }}</td>
+ <td>{{item.zkPrice }}</td>
+ <td>{{(item.zkPrice * item.count).toFixed(1) }}</td>
+ </tr>
+ </template>
+ <tr>
+ <td>
+ <b>总计:</b>
+ </td>
+ <td>
+
+ </td>
+ <td>
+ <span >{{order.zkTotal}}</span>
+ </td>
+ </tr>
+ </table>
+ <p>--------------------------------</p>
+ <table style="width: 100%;font-size: 10px;line-height: 30px;">
+ <tr >
+ <td>
+ <b >储值卡余额:</b><span >{{totalMoney}}</span>
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <b>实收金额:</b><span >{{order.zkTotal-order.arrears}}</span>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <b>收银人:</b><span th:utext="${session.userInfo.suName}" ></span>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <b>客户签名:</b>
+ </td>
+ </tr>
+
+
+ </table>
+ <div style="width: 100%;">
+ 地址:{{shopInfo.shopAddr}}<br>
+ 电话:{{shopInfo.shopTel}}<br>
+ </div>
+ </div>
+ <a href="javascript:;" onclick="print()" class="btn btn-success radius">打印</a>
+</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/AjaxProxyVue.js}"></script>
+<script type="text/javascript" th:src="@{/js/plugin/vue.js}"></script>
+<script type="text/javascript" th:src="@{/js/plugin/LodopFuncs.js}"></script>
+<script type="text/javascript" th:src="@{/plugin/element-ui/index.js}"></script>
+<script type="text/javascript">
+
+
+ var id = $.query.get("id");
+ var app = new Vue({
+ el: '#app',
+ data: {
+ order:{
+ vipInfo:{},
+ serviceItems:[]
+ },
+ moneyCar:{},
+ totalMoney:0,
+ shopInfo:{}
+
+ },
+ created: function () {
+
+ this.loadInfo();
+ },
+
+ mounted: function () {
+
+ },
+
+ methods: {
+ loadInfo(){
+ var _this=this;
+ AjaxProxy.requst({
+ app: _this,
+ url: basePath + '/admin/order/getShopOrder?id='+id,
+ callback: function (data) {
+ _this.order=data.mapInfo.order;
+ _this.moneyCar=data.mapInfo.moneyCar;
+ _this.shopInfo=data.mapInfo.shopInfo;
+ _this.totalMoney=data.mapInfo.totalMoney;
+ setTimeout(print,1000) ;
+ }
+ });
+ },
+ },
+
+ filters:
+ {
+ format: function (value) {
+ if (!value) return '';
+ return MTools.formatDate(value, 'yyyy-MM-dd')
+ } ,
+ formatPhone: function (value) {
+ if (!value) return '';
+ return value.substr(0,3) + "****" + value.substr(value.length-4,value.length+1)
+ } ,
+ },
+
+
+ },
+ );
+
+
+ var LODOP;
+
+ function print() {
+ LODOP = getLodop();
+ LODOP.PRINT_INIT("HIVE打印任务");
+ LODOP.ADD_PRINT_HTM(0, 0, "100%", "100%", document.getElementById("print").innerHTML);
+ LODOP.SET_PRINT_MODE("FULL_HEIGHT_FOR_OVERFLOW", true);
+ LODOP.PREVIEW();
+ }
+
+</script>
+</body>
+</html>
\ No newline at end of file
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/printTemplates/taiyan.html b/zq-erp/src/main/resources/templates/views/admin/hive/printTemplates/taiyan.html
new file mode 100644
index 0000000..f53a04d
--- /dev/null
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/printTemplates/taiyan.html
@@ -0,0 +1,219 @@
+<!DOCTYPE HTML>
+<html xmlns:th="http://www.thymeleaf.org" xmlns:matrix="http://www.w3.org/1999/xhtml">
+<head>
+ <meta charset="utf-8">
+ <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
+ <meta name="renderer" content="webkit|ie-comp|ie-stand">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+ <meta name="viewport"
+ content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+ <meta http-equiv="Cache-Control" content="no-siteapp" />
+ <LINK rel="Bookmark" href="../images/favicon.ico">
+ <!-- 本框架基本脚本和样式 -->
+ <script type="text/javascript"
+ th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script>
+ <script type="text/javascript"
+ th:src="@{/js/systools/MBase.js}"></script>
+ <style>
+
+ .btn{
+ position: fixed;
+ bottom: 10px;
+ left: 45%;
+ }
+
+ </style>
+</head>
+<body>
+<div class="ibox-content" id="app">
+
+ <div id="print" style="width: 220px; ">
+ <h1 style="text-align: center;font-size: 18px;margin: 20px auto;">
+ {{order.shopName}}
+ </h1>
+ <table style="width: 100%; font-size:12px;line-height: 20px;">
+
+ <tr>
+ <td colspan="2">
+ <b>订单号</b>:<span>{{order.orderNo}}</span>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2" >
+ <b>客户</b>:<span>{{order.vipName}}</span>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2" >
+ <b>消费日期</b>:<span>{{order.orderTime |format}}</span>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2">
+ <b>电话</b>:<span>{{order.vipPhone| formatPhone }}</span>
+ </td>
+ </tr>
+ </table>
+ <p>-----------------------------------</p>
+ <table style="width: 80%;font-size:12px;margin-top: 20px;text-align: left">
+
+ <tr>
+ <th style="text-align: left;" colspan="4">产品</th>
+ </tr>
+ <tr>
+ <th style="">数量</th>
+ <th style="">单价</th>
+ <th style="">小计</th>
+ </tr>
+ <template v-for="item in order.items">
+ <tr >
+ <td style="text-align: left;" colspan="4" >{{item.shoppingGoods.name }}</td>
+ </tr>
+ <tr >
+ <td>{{item.count }}</td>
+ <td>{{item.zkPrice }}</td>
+ <td>{{(item.zkPrice * item.count).toFixed(1) }}</td>
+ </tr>
+ </template>
+ <tr>
+ <td>
+ <b>总计:</b>
+ </td>
+ <td>
+
+ </td>
+ <td>
+ <span >{{order.zkTotal}}</span>
+ </td>
+ </tr>
+ </table>
+ <p>-----------------------------------</p>
+ <table style="width: 100%;font-size: 10px;line-height: 30px;">
+ <tr >
+ <td>
+ <b >储值卡余额:</b><span >{{totalMoney}}</span>
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <b>实收金额:</b><span >{{order.zkTotal-order.arrears}}</span>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <b>收银人:</b><span>{{order.staffName}}</span>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <b>客户签名:</b>
+ </td>
+ </tr>
+
+
+ </table>
+
+ <div style="width: 100%;text-align: center;margin: 30px auto;margin-bottom: 10px">
+ <br>
+ *****************<br>
+ 谢谢惠顾<br>
+ *****************<br>
+ <br>
+ </div>
+ <div style="width: 100%;">
+ 地址:{{shopInfo.shopAddr}}<br>
+ 电话:{{shopInfo.shopTel}}<br>
+ <br>
+ <br>
+ </div>
+ <div style="width: 100%;" >
+ <div style="text-align: center;">
+
+ <img style="width: 100%;" :src="shopInfo.qrcode" /><br>
+ 更多精彩请访问小程序<br>
+ </div>
+ <br>
+ <br>
+ </div>
+ </div>
+ <a href="javascript:;" onclick="print()" class="btn btn-success radius">打印</a>
+</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/AjaxProxyVue.js}"></script>
+<script type="text/javascript" th:src="@{/js/plugin/vue.js}"></script>
+<script type="text/javascript" th:src="@{/js/plugin/LodopFuncs.js}"></script>
+<script type="text/javascript" th:src="@{/plugin/element-ui/index.js}"></script>
+<script type="text/javascript">
+
+
+ var id = $.query.get("id");
+ var app = new Vue({
+ el: '#app',
+ data: {
+ order:{
+ vipInfo:{},
+ serviceItems:[]
+ },
+ moneyCar:{},
+ totalMoney:0,
+ shopInfo:{}
+
+ },
+ created: function () {
+
+ this.loadInfo();
+ },
+
+ mounted: function () {
+
+ },
+
+ methods: {
+ loadInfo(){
+ var _this=this;
+ AjaxProxy.requst({
+ app: _this,
+ url: basePath + '/admin/order/getShopOrder?id='+id,
+ callback: function (data) {
+ _this.order=data.mapInfo.order;
+ _this.moneyCar=data.mapInfo.moneyCar;
+ _this.shopInfo=data.mapInfo.shopInfo;
+ _this.totalMoney=data.mapInfo.totalMoney;
+ setTimeout(print,1000) ;
+ }
+ });
+ },
+ },
+
+ filters:
+ {
+ format: function (value) {
+ if (!value) return '';
+ return MTools.formatDate(value, 'yyyy-MM-dd')
+ } ,
+ formatPhone: function (value) {
+ if (!value) return '';
+ return value.substr(0,3) + "****" + value.substr(value.length-4,value.length+1)
+ } ,
+ },
+
+
+ },
+ );
+
+
+ var LODOP;
+
+ function print() {
+ LODOP = getLodop();
+ LODOP.PRINT_INIT("HIVE打印任务");
+ LODOP.ADD_PRINT_HTM(0, 0, "100%", "100%", document.getElementById("print").innerHTML);
+ LODOP.SET_PRINT_MODE("FULL_HEIGHT_FOR_OVERFLOW", true);
+ LODOP.PREVIEW();
+ }
+
+</script>
+</body>
+</html>
\ No newline at end of file
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/vip/tc-form.html b/zq-erp/src/main/resources/templates/views/admin/hive/vip/tc-form.html
index e1c84b4..a59a80f 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/vip/tc-form.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/vip/tc-form.html
@@ -25,7 +25,15 @@
<label class="col-sm-2 control-label">套餐余额<span class="text-danger">*</span></label>
<div class="col-sm-4">
<input type="text" class="form-control" name="balance"
- th:value="${obj.balance}" datatype="*1-20" nullmsg="项目余次不能为空">
+ th:value="${obj.balance}" datatype="*1-20" nullmsg="套餐余额不能为空">
+ <div class="Validform_checktip"></div>
+ </div>
+ </div>
+ <div class="form-group">
+ <label class="col-sm-2 control-label">套餐余次<span class="text-danger">*</span></label>
+ <div class="col-sm-4">
+ <input type="text" class="form-control" name="surplusCount"
+ th:value="${obj.surplusCount}" datatype="*1-20" nullmsg="套餐余次不能为空">
<div class="Validform_checktip"></div>
</div>
</div>
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/vip/vipInfo-form.html b/zq-erp/src/main/resources/templates/views/admin/hive/vip/vipInfo-form.html
index c6e1c38..4d6314b 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/vip/vipInfo-form.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/vip/vipInfo-form.html
@@ -220,6 +220,19 @@
<div class="form-group">
+ <label class="col-sm-2 control-label">所属门店<span
+ class="text-danger">*</span></label>
+ <div class="col-sm-4">
+ <select class="form-control autoFull" dataType="*"
+ nullmsg="所属门店不能为空" th:data-url="@{/hiveErp/shopInfo/findShopByRole}"
+ data-value="id" data-filed="shopName"
+ th:data-def="${obj?.shopId}"
+ name="shopId">
+ <option value=''>--选择所属门店--</option>
+ </select>
+ <div class="Validform_checktip"></div>
+ </div>
+
<label class="col-sm-2 control-label">资金密码</label>
<div class="col-sm-4">
<input autocomplete="off" type="input" class="form-control" name="passWord"
--
Gitblit v1.9.1