zhs 3 年之前
父節點
當前提交
ef04b8c744

+ 2 - 0
src/main/java/com/supplier/mapper/HomePageMapper.java

@@ -17,4 +17,6 @@ public interface HomePageMapper {
     List<Map<String, Object>> getThisYearClinch(HomePageIndex homePageIndex);
 
     List<Map<String, Object>> getHeadMap();
+
+    Map<String, Object> getMessageRemid(String code);
 }

+ 1 - 0
src/main/java/com/supplier/service/impl/HomePageServiceImpl.java

@@ -38,6 +38,7 @@ public class HomePageServiceImpl implements HomePageService {
             map.put("offer", homePageMapper.getHeadData(homePageIndex)); //报价单
             map.put("income", homePageMapper.getHeadIncome(homePageIndex)); //收入
             map.put("user", personalMapper.getPresonalMessage(homePageIndex.getCode())); //用户信息
+            map.put("messageRemid", homePageMapper.getMessageRemid(homePageIndex.getCode())); //用户信息
             map.put("map", homePageMapper.getHeadMap());
             map.put("thisYearOffer", mapList); //本年报价单统计
             map.put("msg", "200");

+ 61 - 0
src/main/resources/config/mapping/HomePageMapper.xml

@@ -134,4 +134,65 @@
         GROUP BY
             destination
     </select>
+    <!-- 查询消息提醒 -->
+    <select id="getMessageRemid" resultType="Map">
+        SELECT
+            (
+                SELECT COUNT ( * ) AS COUNT
+        FROM
+            bus_private_ordering AS b
+            JOIN ( SELECT code, uuid FROM bus_private_ordering WHERE uuid NOT IN ( SELECT demand_uuid FROM bus_private_ordering_type WHERE code = #{code} AND order_type != 0 ) ) AS c ON b.uuid = c.uuid
+            JOIN ( SELECT code, uuid FROM bus_private_ordering WHERE uuid NOT IN ( SELECT demand_uuid FROM bus_private_ordering_type WHERE order_type = 9 ) ) AS a ON b.uuid = a.uuid
+            JOIN ( SELECT code, uuid FROM bus_private_ordering WHERE uuid NOT IN ( SELECT demand_uuid FROM bus_private_ordering_type WHERE order_type = 10 ) ) AS d ON b.uuid = d.uuid
+        WHERE
+            b.uuid NOT IN ( SELECT ordering_uuid FROM bus_ignore_supplier WHERE code = #{code} )
+          AND b.supplier_code = '000'
+           OR b.supplier_code = #{code}
+            ) AS demandCount,
+            (
+        SELECT COUNT
+            ( * ) AS COUNT
+        FROM
+            bus_private_ordering AS b
+            JOIN ( SELECT code, demand_uuid FROM bus_private_ordering_type WHERE code = #{code} AND order_type = '1' ) AS c ON b.uuid = c.demand_uuid
+        WHERE
+            uuid NOT IN ( SELECT ordering_uuid FROM bus_ignore_supplier WHERE code = #{code} )
+            ) AS alreadyOffer,
+            (
+        SELECT COUNT
+            ( * ) AS COUNT
+        FROM
+            bus_private_ordering AS b
+            JOIN (
+            SELECT
+            code,
+            demand_uuid
+            FROM
+            bus_private_ordering_type
+            WHERE
+            code = #{code}
+            AND ( order_type = '2' OR order_type = '3' OR order_type = '4' OR order_type = '5' OR order_type = '12' )
+            ) AS c ON b.uuid = c.demand_uuid
+        WHERE
+            uuid NOT IN ( SELECT ordering_uuid FROM bus_ignore_supplier WHERE code = #{code} )
+            ) AS hasBeenPaid,
+            (
+        SELECT COUNT
+            ( * ) AS COUNT
+        FROM
+            bus_private_ordering AS b
+            JOIN ( SELECT code, demand_uuid FROM bus_private_ordering_type WHERE code = #{code} AND order_type = '5' ) AS c ON b.uuid = c.demand_uuid
+        WHERE
+            uuid NOT IN ( SELECT ordering_uuid FROM bus_ignore_supplier WHERE code = #{code} )
+            ) AS clinch,
+            (
+        SELECT COUNT
+            ( * )
+        FROM
+            bus_refund a
+            JOIN ( SELECT code, uuid FROM bus_supplier_release WHERE code = #{code} ) b ON a.release_uuid = b.uuid
+        WHERE
+            a.refund_state = '0'
+            ) AS refund
+    </select>
 </mapper>

+ 1 - 1
src/main/resources/config/mapping/privateOrderMapper.xml

@@ -95,7 +95,7 @@
         COUNT( * ) AS COUNT
         FROM
         bus_private_ordering AS b
-        JOIN ( SELECT code,demand_uuid FROM bus_private_ordering_type WHERE code = #{code} and (order_type = '2' or order_type = '3' or order_type = '4' or order_type = '5')) as c on b.uuid = c.demand_uuid
+        JOIN ( SELECT code,demand_uuid FROM bus_private_ordering_type WHERE code = #{code} and (order_type = '2' or order_type = '3' or order_type = '4' or order_type = '5' or order_type = '12')) as c on b.uuid = c.demand_uuid
         WHERE
         uuid NOT IN (SELECT ordering_uuid FROM bus_ignore_supplier WHERE code = #{code})
         <if test="startTime != null and startTime !=''">

+ 0 - 1
src/main/resources/static/css/homeIndex.css

@@ -149,7 +149,6 @@ html,body{
     height: 38px;
     background: #EEEEEE;
     border-radius: 19px;
-    cursor: pointer;
     line-height: 38px;
     padding-left: 48px;
     margin-right: 73px;

+ 19 - 12
src/main/resources/static/js/demandForSingle/offer/function.js

@@ -11,7 +11,6 @@ function getPrivateOrder(){
         success: (data) => {
             if(data.msg == "200"){
                 if(data.data != null){
-                    console.log(data)
                     $(".destination_end").html(data.data.origin + " - " + data.data.destination);
                     $(".start_end_time").html(data.data.startTime + " — " + data.data.endTime);
                     $(".people_number").html(data.data.peopleNum);
@@ -275,12 +274,12 @@ function submitAdd(){
     layer.load(3);
     var priceAll = $(".all_price input[name=priceAll]").val(); //总价
     var titleName = $("input[name=offerName]").val();
-    // var playDay = dateDiffVal($(".start_end_time").html().split(" — ")[0], $(".start_end_time").html().split(" — ")[0]);
-    // if((playDay + 1) < $(".timeline").find("li").length){
-    //     layer.msg("设定天数超出客户游玩天数", {icon: 2, time: 1000});
-    //     layer.closeAll("loading");
-    //     return false;
-    // }
+    var playDay = dateDiffVal($(".start_end_time").html().split(" — ")[0], $(".start_end_time").html().split(" — ")[0]);
+    if((playDay + 1) < $(".timeline").find("li").length){
+        layer.msg("设定天数超出客户游玩天数", {icon: 2, time: 1000});
+        layer.closeAll("loading");
+        return false;
+    }
     if(titleName == null || titleName == ""){
         layer.msg(paramReturn("请输入报价单名称", parent.type), {icon: 2, time: 1000});
         layer.closeAll("loading");
@@ -318,11 +317,16 @@ function submitAdd(){
         dataType: "json",
         success: (data) => {
             if(data.msg == "200"){
-                layer.msg("发布成功", {icon: 1});
+                layer.msg(paramReturn("发布成功", parent.type), {icon: 1}, function (){
+                    parent.$(".check_div").click();
+                });
                 getData();
                 sendPrivateText();//报价之后给用户发一条信息
             } else if(data.msg == "500"){
-                layer.msg(data.errMsg, {icon: 2});
+                layer.msg(data.errMsg, {icon: 2}, function(){
+                    buyPermissions();
+                    getByNumber();
+                });
             }
             layer.closeAll("loading");
         },
@@ -689,7 +693,7 @@ delteDate = function (obj) {
 function theValues(){
     let map = {};
     var releaseDay = new Array();//天信息数组
-    var releasePlay = new Array();//游玩信息数组
+    var releasePlay = new Array();//游玩信息数组在·
     var priceAll = $(".all_price input[name=priceAll]").val(); //总价
     var titleName = $("input[name=offerName]").val();
     var priceDetail = $("input[name=priceDetail]").val();
@@ -1005,7 +1009,7 @@ function registerUser(){
 //计算手续费
 function getPriceAll(obj){
     let val = $(obj).val();
-    $(".percentage_fee_price").html("平台手续费比例为:"+ unitPrice +"%,本单手续费为:"+ (val * unitPrice) +"¥,本单实际收入为:"+ (val - (val * unitPrice)) +"¥");
+    $(".percentage_fee_price").html("平台手续费比例为:"+ proportion +"%,本单手续费为:"+ (val * proportion) +"¥,本单实际收入为:"+ (val - (val * unitPrice)) +"¥");
 }
 //查询报价单单价
 function getByNumber(){
@@ -1017,7 +1021,10 @@ function getByNumber(){
         headers: {"token": localStorage.getItem("token")},
         dataType: "json",
         success: (data) => {
-            unitPrice = data.data.percentage_fee;
+            proportion = data.data.percentage_fee;
+            unitPrice = data.data.power_unit;
+            topUpNum();//次数渲染 余额渲染
+            eachNumberAmout(); //次数余额
             $(".percentage_fee_price").html("平台手续费比例为:"+ data.data.percentage_fee +"%,本单手续费为:"+ (0 * data.data.percentage_fee) +"¥,本单实际收入为:"+ (0 - (0 * data.data.percentage_fee)) +"¥")
             layer.closeAll("loading");
         },

+ 13 - 1
src/main/resources/static/js/index/function.js

@@ -7,9 +7,10 @@ function loadIndex(){
         headers: {"token": localStorage.getItem("token")},
         success: (data) => {
             if(data.msg == "200"){
-                eleDrawing(data);
+                eleDrawing(data);//头部渲染
                 echartsLoad(data.thisYearOffer);//报价单
                 chinaMapLoad(data);//地图
+                messageLoad(data.messageRemid);//消息提醒
                 loadUser();//个人信息初始化
             } else {
                 layer.alert(data.errMsg, {icon: 2});
@@ -43,6 +44,16 @@ function eleDrawing(data){
     //报价单权限余额
     $(".offer_num_div .balance_of_fount").find("p").html(data.user.offerNum); //报价单权限余额
 }
+//消息提醒
+function messageLoad(data){
+    $(".message_bottom_div .message_val").eq(0).find("span").html(data.demandCount);//需求订单
+    $(".message_bottom_div .message_val").eq(1).find("span").html(data.alreadyOffer);//已报价
+    $(".message_bottom_div .message_val").eq(2).find("span").html(data.hasBeenPaid);//已付费
+    $(".message_bottom_div .message_val").eq(3).find("span").html(data.clinch);//成交订单
+    $(".message_bottom_div .message_val").eq(4).find("span").html(data.alreadyOffer);//报价单权限占用
+    $(".message_bottom_div .message_val").eq(6).find("span").html(data.hasBeenPaid + data.alreadyOffer);//报价单权限使用
+    $(".message_bottom_div .message_val").eq(7).find("span").html(data.refund);//退款申请
+}
 //报价单统计图表
 function echartsLoad(data){
     let myChart = echarts.init(document.getElementById('columnar_chart'));
@@ -201,6 +212,7 @@ function loadUser(){
                 $(".name_div_val").find("div").html(data.data.name);
                 $(".account_div .blance_content").find("p").html(data.data.balanceOf);
                 $(".permissions_div .blance_content").find("p").html(data.data.offerNum);
+                $(".message_bottom_div .message_val").eq(5).find("span").html(data.data.offerNum);//报价单权限剩余
             }
             layer.closeAll("loading");
         },

+ 3 - 1
src/main/resources/static/js/personal/even.js

@@ -1,4 +1,6 @@
 var $ = null;
 var form = null;
 var layer = null;
-var unitPrice = 0; //单价
+var unitPrice = 0; //单价
+
+var proportion = 0;//比例

+ 1 - 1
src/main/resources/static/js/personal/index.js

@@ -32,7 +32,7 @@ layui.use(["layer", "form", "laydate", 'laypage'], function() {
                         parent.layer.msg("修改成功", {icon: 1});
                         // parent.conn.updateCurrentUserNick($("input[name=nameVal]").val())
                         parent.conn.updateOwnUserInfo({nickname: $("input[name=nameVal]").val()});
-                        parent.$(".user_font").html($("input[name=nameVal]").val());
+                        parent.$(".user_font").html("Hi," + $("input[name=nameVal]").val());
                         load();
                     } else if(data.msg == "300"){
                         layer.closeAll("loading");

+ 3 - 1
src/main/resources/static/js/release/index/function.js

@@ -324,7 +324,9 @@ function submitAdd(){
         dataType: "json",
         success: (data) => {
             if(data.msg == "200"){
-                layer.msg(paramReturn("发布成功", parent.type), {icon: 1});
+                layer.msg(paramReturn("发布成功", parent.type), {icon: 1}, function (){
+                    parent.$(".check_div").click();
+                });
                 getData();
             }
             layer.closeAll("loading");

+ 1 - 1
src/main/resources/static/json/kor.json

@@ -184,5 +184,5 @@
   "人数不能为空": "사람 수가 비어 있어서는 안 된다",
   "起始地不能为空": "처음부터 텅 비워서는 안 된다",
   "目的地不能为空": "목적지가 비어 있으면 안 됩니다",
-  "交通信息": "교통 정보"
+  "酒店名称": "호텔명"
 }

+ 3 - 2
src/main/resources/static/json/zh.json

@@ -94,7 +94,7 @@
   "nicheng": "昵称",
   "shouji": "手机",
   "zhanghuyue": "账户余额",
-  "tixian": "提",
+  "tixian": "提",
   "chongzhijine": "充值金额",
   "baojiadanquanxianyue": "报价单权限余额",
   "goumaiquanxian": "购买权限",
@@ -191,5 +191,6 @@
   "目的地不能为空": "目的地不能为空",
   "qiehuanwenjian": "切换文件",
   "quedingshangchuan": "确定上传",
-  "交通信息": "交通信息"
+  "交通信息": "交通信息",
+  "酒店名称": "酒店名称"
 }

+ 90 - 0
src/main/resources/templates/demandForSingle/offer.html

@@ -4,6 +4,7 @@
     <meta charset="UTF-8">
     <title>提供报价</title>
     <link rel="stylesheet" href="/layui/css/layui.css">
+    <link rel="stylesheet" href="/css/personal/index.css">
     <script src="/layui/layui.js"></script>
     <script src="/js/jquery.js"></script>
     <script src="/js/common.js"></script>
@@ -15,8 +16,10 @@
     <script src="/js/clipboard.min.js"></script>
     <script src="/js/webIm/initWeb.js"></script>
     <script src="/js/huanxin.js"></script>
+    <script src="/js/qrcode.js"></script>
     <script src="/js/demandForSingle/offer/even.js" type="text/javascript"></script>
     <script src="/js/demandForSingle/offer/index.js" type="text/javascript"></script>
+    <script src="/js/personal/function.js"></script>
     <script src="/js/demandForSingle/offer/function.js" type="text/javascript"></script>
     <script src="/js/translationVal.js"></script>
     <script type="text/javascript">
@@ -346,5 +349,92 @@
         </div>
     </div>
 </div>
+
+<!-- 购买报价单次数 -->
+<div class="quotation_number">
+    <div class="balance_of_show">
+        <div class="balance_of_font" data-locale="zhanghuyue">账户余额</div>
+        <div class="balance_of_val">0.00</div>
+        <div class="cumulative_num quotation_num" data-locale="baojiadandanjia">报价单单价</div>
+    </div>
+    <!-- 自定义金额 -->
+    <div class="custom_amount">
+        <span data-locale="zaixianchongzhi">在线充值</span>
+        <div class="layui-form-item">
+            <div class="layui-input-block">
+                <input type="text" onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}" onafterpaste="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}"
+                       name="offerNum" data-locale="zidingyiquanxiancishushuru" lay-verify="title" autocomplete="off" placeholder="自定义权限次数输入" class="layui-input">
+            </div>
+        </div>
+    </div>
+    <!-- 选择金额 -->
+    <div class="select_amount">
+        <div class="select_amount_val select_number_val select_amount_val_click" value="2" onclick="selectAmout(this)">
+            <div class="number_of_div">
+                <span>2</span>
+                <span class="small_font_size" data-locale="ci">次</span>
+            </div>
+            <div class="amount_number_val">
+                <span>¥10</span>
+            </div>
+        </div>
+        <div class="select_amount_val select_number_val" value="6" onclick="selectAmout(this)">
+            <div class="number_of_div">
+                <span>6</span>
+                <span class="small_font_size" data-locale="ci">次</span>
+            </div>
+            <div class="amount_number_val">
+                <span>¥10</span>
+            </div>
+        </div>
+        <div class="select_amount_val select_number_val" value="8" onclick="selectAmout(this)">
+            <div class="number_of_div">
+                <span>8</span>
+                <span class="small_font_size" data-locale="ci">次</span>
+            </div>
+            <div class="amount_number_val">
+                <span>¥10</span>
+            </div>
+        </div>
+        <div class="select_amount_val select_number_val" value="10" onclick="selectAmout(this)">
+            <div class="number_of_div">
+                <span>10</span>
+                <span class="small_font_size" data-locale="ci">次</span>
+            </div>
+            <div class="amount_number_val">
+                <span>¥10</span>
+            </div>
+        </div>
+        <div class="select_amount_val select_number_val" value="12" onclick="selectAmout(this)">
+            <div class="number_of_div">
+                <span>12</span>
+                <span class="small_font_size" data-locale="ci">次</span>
+            </div>
+            <div class="amount_number_val">
+                <span>¥10</span>
+            </div>
+        </div>
+    </div>
+    <!-- 选择支付方式 -->
+    <div class="mode_of_payment">
+        <div class="pay_div_mode wx_pay select_pay_click" onclick="payType(this)">
+            <img src="/images/personal/yuezhifu.png"/>
+            <span data-locale="yuezhifu">余额支付</span>
+            <div><i class="layui-icon">&#xe605;</i></div>
+        </div>
+        <div class="pay_div_mode wx_pay" onclick="payType(this)">
+            <img src="/images/personal/weixinzhifu.png"/>
+            <span data-locale="weixinzhifu">微信支付</span>
+            <div></div>
+        </div>
+    </div>
+    <!-- 微信支付二维码 -->
+    <div style="float: left; width: 100%;">
+        <div id="qrcode_ok"></div>
+    </div>
+    <div class="button_top_up">
+        <div class="top-up-button blance_button" data-locale="lijichongzhi" onclick="balanceOfOk()">立即充值</div>
+    </div>
+</div>
 </body>
 </html>

+ 8 - 8
src/main/resources/templates/home/index.html

@@ -92,14 +92,14 @@
         <div class="bottom_div_message">
             <div class="message_font" data-locale="xaoxitixing">消息提醒</div>
             <div class="message_bottom_div">
-                <div class="message_val"><p>待签合同数:</p><span>3</span></div>
-                <div class="message_val"><p>待签合同数:</p><span>3</span></div>
-                <div class="message_val"><p>待签合同数:</p><span>3</span></div>
-                <div class="message_val" style="margin-right: 0;"><p>待签合同数:</p><span>3</span></div>
-                <div class="message_val"><p>待签合同数:</p><span>3</span></div>
-                <div class="message_val"><p>待签合同数:</p><span>3</span></div>
-                <div class="message_val"><p>待签合同数:</p><span>3</span></div>
-                <div class="message_val" style="margin-right: 0;"><p>待签合同数:</p><span>3</span></div>
+                <div class="message_val"><p>需求订单:</p><span>0</span></div>
+                <div class="message_val"><p>已报价:</p><span>0</span></div>
+                <div class="message_val"><p>已付费:</p><span>0</span></div>
+                <div class="message_val" style="margin-right: 0;"><p>成交订单:</p><span>0</span></div>
+                <div class="message_val"><p>报价权限占用:</p><span>0</span></div>
+                <div class="message_val"><p>报价权限剩余:</p><span>0</span></div>
+                <div class="message_val"><p>报价权限使用:</p><span>0</span></div>
+                <div class="message_val" style="margin-right: 0;"><p>退款申请:</p><span>0</span></div>
             </div>
         </div>
     </div>

+ 1 - 1
src/main/resources/templates/personal/index.html

@@ -69,7 +69,7 @@
                         </div>
                     </div>
                     <div class="account_button">
-                        <div class="button_account" data-locale="zhanghuyue">提现</div>
+                        <div class="button_account" data-locale="tixian">提现</div>
                         <div class="button_account" data-locale="chongzhijine" onclick="topUp(this)">充值</div>
                     </div>
                 </div>