DuGuYang há 3 anos atrás
pai
commit
75babe6dec

+ 35 - 7
Areas/Admin/Controllers/MainServer/PosMerchantInfoListController.cs

@@ -177,7 +177,7 @@ namespace MySystem.Areas.Admin.Controllers
 
             Dictionary<string, string> Fields = new Dictionary<string, string>();
 
-            decimal ReturnAmounts = 0.00M;
+            Fields.Add("KqMerNo", "1"); //商户编号
             string condition = " and Status>-1 and StandardStatus=-2";
             //身份证号
             if (!string.IsNullOrEmpty(MerIdcardNo))
@@ -201,7 +201,7 @@ namespace MySystem.Areas.Admin.Controllers
             //机具号
             if (!string.IsNullOrEmpty(PosSn))
             {
-                condition += " and KqSnNo=" + PosSn;
+                condition += " and KqSnNo='" + PosSn + "'";
             }
             Dictionary<string, object> obj = new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).IndexData("PosMerchantInfo", Fields, "Id desc", "0", page, limit, condition);
             List<Dictionary<string, object>> diclist = obj["data"] as List<Dictionary<string, object>>;
@@ -261,13 +261,20 @@ namespace MySystem.Areas.Admin.Controllers
 
                 var KqSnNo = dic["KqSnNo"].ToString();
                 var pos = db.PosMachinesTwo.FirstOrDefault(m => m.PosSn == KqSnNo) ?? new PosMachinesTwo();
+
                 //实际押金
-                string SeoKeyword = pos.SeoKeyword.ToString();
-                if (SeoKeyword.Length > 3)
+                string SeoKeyword = "0";
+                if (!string.IsNullOrEmpty(pos.SeoKeyword))
                 {
-                    SeoKeyword = (decimal.Parse(SeoKeyword) / 100).ToString();
+                    if (pos.SeoKeyword.Length > 3)
+                    {
+                        SeoKeyword = (decimal.Parse(pos.SeoKeyword) / 100).ToString();
+                    }
+                    else
+                    {
+                        SeoKeyword = pos.SeoKeyword;
+                    }
                 }
-                ReturnAmounts += decimal.Parse(SeoKeyword);
                 dic["SeoKeyword"] = SeoKeyword;
 
                 //设置押金
@@ -279,12 +286,33 @@ namespace MySystem.Areas.Admin.Controllers
                 dic["PrizeParams"] = PrizeParams;
             }
             Dictionary<string, object> other = new Dictionary<string, object>();
+            decimal ReturnAmounts = 0.00M;
             decimal ReturnAmount = 0.00M;
             DataTable dt = OtherMySqlConn.dtable("SELECT SUM(Remark) FROM PosMerchantInfo WHERE 1=1" + condition);
             if (dt.Rows.Count > 0)
             {
                 ReturnAmount = decimal.Parse(function.CheckNum(dt.Rows[0][0].ToString()));
             }
+            DataTable dts = OtherMySqlConn.dtable("SELECT KqSnNo FROM PosMerchantInfo WHERE 1=1" + condition);
+            if (dt.Rows.Count > 0)
+            {
+                foreach (DataRow item in dts.Rows)
+                {
+                    string KqSnNo = item["KqSnNo"].ToString();
+                    var pos = db.PosMachinesTwo.FirstOrDefault(m => m.PosSn == KqSnNo) ?? new PosMachinesTwo();
+                    if (!string.IsNullOrEmpty(pos.SeoKeyword))
+                    {
+                        if (pos.SeoKeyword.Length > 3)
+                        {
+                            ReturnAmounts += decimal.Parse(pos.SeoKeyword) / 100;
+                        }
+                        else
+                        {
+                            ReturnAmounts += decimal.Parse(pos.SeoKeyword);
+                        }
+                    }
+                }
+            }
             other.Add("ReturnAmount", ReturnAmount.ToString("f2"));
             other.Add("ReturnAmounts", ReturnAmounts.ToString("f2"));
             obj.Add("other", other);
@@ -779,7 +807,7 @@ namespace MySystem.Areas.Admin.Controllers
             {
                 JsonData dr = list[i];
                 string KqMerNo = dr[0].ToString(); // 商户编号
-                string Amount = dr[0].ToString(); // 已退金额
+                string Amount = dr[1].ToString(); // 已退金额
                 var posMerchantInfo = db.PosMerchantInfo.FirstOrDefault(m => m.KqMerNo == KqMerNo) ?? new PosMerchantInfo();
                 posMerchantInfo.StandardStatus = -2;
                 posMerchantInfo.Remark = Amount;

+ 69 - 0
Areas/Admin/Controllers/MainServer/SysToolsController.cs

@@ -4749,5 +4749,74 @@ namespace MySystem.Areas.Admin.Controllers
         #endregion
 
 
+        #region 查询商户达标明细
+
+        public IActionResult SeeMerchantTradeDetail(string right)
+        {
+            ViewBag.RightInfo = RightInfo;
+            ViewBag.right = right;
+
+            return View();
+        }
+
+        [HttpPost]
+        public string SeeMerchantTradeDetailDo(string PosSn)
+        {
+            if (string.IsNullOrEmpty(PosSn))
+            {
+                return "请输入机具SN";
+            }
+            var result = "";
+            var pos = db.PosMachinesTwo.FirstOrDefault(m => m.PosSn == PosSn) ?? new PosMachinesTwo();
+            if (pos.Id > 0)
+            {
+                var mer = db.PosMerchantInfo.FirstOrDefault(m => m.Id == pos.BindMerchantId) ?? new PosMerchantInfo();
+                if (mer.Id > 0)
+                {
+                    var IsOk = "";//是否达标
+                    var timeInfo = "";
+                    if (mer.StandardMonths == 10)
+                    {
+                        IsOk = "已达标";
+                    }
+                    else
+                    {
+                        IsOk = "未达标";
+                    }
+                    result += IsOk + "\n";
+                    result += "开机时间:" + DateTime.Parse(pos.BindingTime.ToString()).ToString("yyyy-MM-dd hh:mm:sss") + "\n";
+                    result += "激活时间:" + DateTime.Parse(pos.ActivationTime.ToString()).ToString("yyyy-MM-dd hh:mm:sss") + "\n";
+                    result += "商户姓名" + mer.MerRealName + "\n";
+                    result += "明细:\n";
+                    for (int i = 0; i < 10; i++)
+                    {
+                        var time = DateTime.Parse(pos.ActivationTime.ToString()).AddMonths(i + 1).ToString("yyyyMM");//达标计算开始时间
+                        timeInfo += "," + time;
+                    }
+                    timeInfo = timeInfo + ",";
+                    var merTradeInfo = db.PosMerchantTradeSummay.Where(m => m.MerchantId == mer.Id && timeInfo.Contains("," + m.TradeMonth + ",")).ToList();
+                    string[] month = timeInfo.TrimStart(',').TrimEnd(',').Split(',');
+                    foreach (var item in month)
+                    {
+                        var tradeAmount = merTradeInfo.Where(m => m.TradeMonth == item).Sum(m => m.TradeAmount);
+                        result += item + "交易额:" + tradeAmount + "\n";
+                    }
+                }
+                else
+                {
+                    return "未找到机具" + PosSn + "所对应的商户";
+                }
+            }
+            else
+            {
+                return "未找到机具" + PosSn;
+            }
+
+            return result;
+        }
+
+        #endregion
+
+
     }
 }

+ 229 - 0
Areas/Admin/Views/MainServer/SysTools/SeeMerchantTradeDetail.cshtml

@@ -0,0 +1,229 @@
+@{
+    string RightInfo = ViewBag.RightInfo as string;
+    string right = ViewBag.right as string;
+    
+}
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8">
+    <title>查询商户达标明细</title>
+    <meta name="renderer" content="webkit">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <link rel="stylesheet" href="/layuiadmin/layui/css/layui.css" media="all">
+    <script src="/admin/js/jquery-1.10.1.min.js"></script>
+    <script src="/admin/js/LAreaData2.js"></script>
+</head>
+<body>
+
+    <div class="layui-form" lay-filter="layuiadmin-form-useradmin" id="layuiadmin-form-useradmin">
+        <form class="layui-form" id="confirmFrm">
+            <div class="layui-card">
+                <div class="layui-card-body">
+                    <div class="layui-tab" lay-filter="mytabbar">
+                        <ul class="layui-tab-title">
+                            <li class="layui-this" lay-id="1">基本信息</li>
+                        </ul>
+                        <div class="layui-tab-content mt20">
+                            <div class="layui-tab-item layui-show">
+                                <div class="layui-form-item">
+                                    <label class="layui-form-label">机具SN</label>
+                                    <div class="layui-input-inline">
+                                        <input class="layui-input" type="text" id="PosSn"
+                                            name="PosSn" maxlength="50" lay-verify="required|"
+                                            autocomplete="off" placeholder="请输入机具SN">
+                                    </div>
+                                </div>
+                            </div>
+
+                        </div>
+                    </div>
+                    <div class="layui-form-item ml10">
+                        <div class="layui-input-block">
+                            <button type="button" class="layui-btn" onclick="save()">查询</button>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </form>
+    </div>
+
+    <script src="/layuiadmin/layui/layui.js"></script>
+    <script src="/other/oss/upload-min@(MySystem.OssHelper.Instance.OssStatus ? "-oss" : "").js?r=@DateTime.Now.ToString("yyyyMMddHHmmss")"></script>
+    <script src="/other/mybjq/kindeditor-min.js"></script>
+    <script src="/other/mybjq/lang/zh_CN.js"></script>
+    <script>
+        function save() {
+            var index = layer.load(1, {
+                shade: [0.5, '#000']
+            });
+            var userdata = $("#confirmFrm").serialize();
+            $.ajax({
+                type: "POST",
+                url: "/Admin/SysTools/SeeMerchantTradeDetailDo?r=" + Math.random(1),
+                data: userdata,
+                dataType: "text",
+                success: function (data) {
+                    layer.close(index);
+                    layer.alert(data.replace(/\n/g, '<br />'), {area:['500px','550px']});
+                }
+            });
+        }
+        
+                    
+        //编辑器
+        KindEditor.ready(function (K) {
+            
+        });
+
+        var ids = "";
+        function getChildren(obj) {
+            $.each(obj, function (index, value) {
+                var id = obj[index].id;
+                ids += id + ",";
+                var children = obj[index].children;
+                if (children) {
+                    getChildren(children);
+                }
+            });
+        }
+
+        function AreasProvinceInit(tagId, areasVal, form) {
+            for (var i = 0; i < provs_data.length; i++) {
+                var sel = "";
+                if (areasVal.indexOf(provs_data[i].text) > -1) {
+                    sel = " selected=selected";
+                }
+                $("#" + tagId + "Province").append('<option value="' + provs_data[i].value + '"' + sel + '>' + provs_data[i].text + '</option>');
+            }
+            form.render();
+        }
+
+        function AreasProvinceSelected(tagId, areasVal, form, value) {
+            $("#" + tagId + "City").html('<option value="">市</option>');
+            var list = citys_data[value];
+            for (var i = 0; i < list.length; i++) {
+                var sel = "";
+                if (areasVal.indexOf(list[i].text) > -1) {
+                    sel = " selected=selected";
+                }
+                $("#" + tagId + "City").append('<option value="' + list[i].value + '"' + sel + '>' + list[i].text + '</option>');
+            }
+            $("#" + tagId + "Area").html('<option value="">县/区</option>');
+            form.render();
+            $("#" + tagId + "").val($("#" + tagId + "Province option:selected").text() + "," + $("#" + tagId + "City option:selected").text() + "," + $("#" + tagId + "Area option:selected").text());
+        }
+
+        function AreasCitySelected(tagId, areasVal, form, value) {
+            $("#" + tagId + "Area").html('<option value="">县/区</option>');
+            var list = dists_data[value];
+            for (var i = 0; i < list.length; i++) {
+                var sel = "";
+                if (areasVal.indexOf(list[i].text) > -1) {
+                    sel = " selected=selected";
+                }
+                $("#" + tagId + "Area").append('<option value="' + list[i].value + '"' + sel + '>' + list[i].text + '</option>');
+            }
+            form.render();
+            $("#" + tagId + "").val($("#" + tagId + "Province option:selected").text() + "," + $("#" + tagId + "City option:selected").text() + "," + $("#" + tagId + "Area option:selected").text());
+        }
+
+        function AreasAreaSelected(tagId, form) {
+            form.render();
+            $("#" + tagId + "").val($("#" + tagId + "Province option:selected").text() + "," + $("#" + tagId + "City option:selected").text() + "," + $("#" + tagId + "Area option:selected").text());
+        }
+        function movePrev(obj, tagId) {
+            $(obj).parent().prev().insertAfter($(obj).parent());
+            checkPics(tagId);
+        }
+        function moveNext(obj, tagId) {
+            $(obj).parent().next().insertBefore($(obj).parent());
+            checkPics(tagId);
+        }
+        function deletePic(obj, tagId) {
+            $(obj).parent().remove();
+            checkPics(tagId);
+        }
+        function checkPics(tagId) {
+            var pics = "";
+            var texts = "";
+            $("#" + tagId + "Image div img").each(function (i) {
+                pics += $(this).attr("src").replace(osshost, '') + "|";
+            });
+            $("#" + tagId + "Image div input").each(function (i) {
+                texts += $(this).val() + "|";
+            });
+            if (pics == "") {
+                $("#" + tagId).val("");
+            } else {
+                pics = pics.substring(0, pics.length - 1);
+                texts = texts.substring(0, pics.length - 1);
+                $("#" + tagId).val(pics + "#cut#" + texts);
+            }
+        }
+        function checkBox(tagId) {
+            var text = "";
+            $("input[type=checkbox][name=" + tagId + "List]:checked").each(function (i) {
+                text += $(this).val() + ",";
+            });
+            $("#" + tagId).val(text);
+        }
+        function showBigPic(picpath) {
+            parent.layer.open({
+                type: 1,
+                title: false,
+                closeBtn: 0,
+                shadeClose: true,
+                area: ['auto', 'auto'],
+                content: '<img src="' + picpath + '" style="max-width:800px; max-height:800px;" />'
+            });
+        }
+
+        
+        var tree;
+        var element;
+        var upload;
+        layui.config({
+            base: '/layuiadmin/' //静态资源所在路径
+        }).extend({
+            index: 'lib/index' //主入口模块
+        }).use(['index', 'form', 'upload', 'layedit', 'laydate', 'element', 'croppers', 'transfer', 'tree', 'util'], function () {
+            var $ = layui.$
+                , form = layui.form
+                , layer = layui.layer
+                , layedit = layui.layedit
+                , laydate = layui.laydate
+                , croppers = layui.croppers
+                , transfer = layui.transfer
+                , util = layui.util;
+            tree = layui.tree;
+            element = layui.element;
+            upload = layui.upload;
+        
+            //Hash地址的定位
+            var layid = location.hash.replace(/^#test=/, '');
+            element.tabChange('test', layid);
+            element.on('tab(test)', function (elem) {
+                location.hash = 'test=' + $(this).attr('lay-id');
+            });
+    
+            //日期
+            
+
+            //上传文件
+            
+
+            //穿梭框
+            
+
+            //TreeView,比如权限管理
+            
+
+            //省市区
+            
+        })
+
+    </script>
+</body>
+</html>