wangsheng
2022-03-22 ee15dec5d91adbd1bdf15b26915b79751c17e481
web/web/GwProduct.aspx
New file
@@ -0,0 +1,479 @@
<%@ Page Language="C#"  masterpagefile="~/Main.master"  AutoEventWireup="true" CodeFile="GwProduct.aspx.cs" Inherits="_GwProduct" %>
<asp:Content runat="server" ID="Content1" ContentPlaceHolderID="head">
    <script type="text/javascript" language="javascript">
    $(document).ready(function() {
        //$(document).on("click", "[data-toggle='popover']", function () {
        //    $("[data-toggle='popover']").popover();
        //})
        var pagination = new Pagination();
        pagination.setPageIndex(1);
        pagination.setPageSize(50);
        function loadPageList() {
            var name = $("#Name").val();
            var classes = $("#Classes").val();
            $.ajax({
                url: "GwProduct.ashx",
                type: "POST",
                data: { action: "list", name: name, classes: classes, pageIndex: pagination.getPageIndex(), pageSize: pagination.getPageSize() },
                success: function(result) {
                    if (result.OK) {
                        $("#productTable tbody").html(result.Message.Table);
                        pagination.setRecordCount(result.Message.TotalCount);
                        $("#pagination").html(pagination.getHtml());
                        $("[data-toggle='popover']").popover();
                    } else {
                        mytek.alert(result.Message, result.OK);
                    }
                }
            });
        }
        $(document).on("click", ".action-modal-add", function() {
            $("#productDialog .modal-title").text("添加产品或产品分类");
            $("#productDialog #action").val("add");
            $("#productDialog #id").val("").attr("readonly", false);
            $("#productDialog #name").val("");
            $("#productDialog #icon").val("");
            $("#productDialog #instructions").val("");
            $("#productDialog #classes").val("");
            $("#productDialog #parentId").val("");
            //$("#productDialog #path").val("");
            $("#productDialog #isDefault").val("");
            $("#productDialog #isDnable").val(1);
            $("#productDialog #sort").val(1);
            $("#productDialog #routerType").val(1);
            $("#productDialog #cmOpId").val("");
            $("#productDialog #cuOpId").val("");
            $("#productDialog #ctOpId").val("");
            $("#productDialog #cmGroupid").val("");
            $("#productDialog #cuGroupid").val("");
            $("#productDialog #ctGroupid").val("");
            $("#productDialog #cmExtParams").val("");
            $("#productDialog #cuExtParams").val("");
            $("#productDialog #ctExtParams").val("");
            $("#productDialog #price").val(0.00);
            $("#productDialog #givingNum").val(0);
            $("#productDialog #remark").val("");
            $("#productDialog").modal("show");
        });
        $("#productForm").ajaxForm({
            success: function(r) {
                if (r.OK) {
                    mytek.alert(r.Message, r.OK, function() {
                        $("#productDialog").modal("hide");
                        loadPageList();
                    });
                } else {
                    mytek.alert(r.Message, r.OK);
                }
            }
        });
        //选择图标下拉框
        $("#icon").on("change", function () {
            console.log("icon:" + $(this).val());
            if ($(this).val() != "") {
                document.getElementById('showImg').src = "../static/images/productIcon/" + $(this).val();
            }
        });
        $("#icon").trigger("change");
        //选择类别下拉框,控制相关输入项显示
        $("#classes").on("change", function () {
            $(".classes-span").hide();
            $(".classes-span-" + $(this).val()).show();
        });
        $("#classes").trigger("change");
        //选择路由类型下拉框,控制相关输入项显示
        $("#RouterType").on("change", function () {
            $(".router-type-span").hide();
            $(".router-type-span-" + $(this).val()).show();
        });
        $("#RouterType").trigger("change");
        $(document).on("click", ".action-modal-edit", function() {
            var id = $(this).data("id");
            $("#productDialog .modal-title").text("编辑产品或产品分类");
            $("#productDialog #id").val(id).attr("readonly", true);
            $.get("gwProduct.ashx", { "action": "get", id: id }, function(r) {
                if (r.OK) {
                    $("#productDialog #action").val("update");
                    $("#productDialog #id").val(r.Message.Id).attr("readonly", false);
                    $("#productDialog #name").val(r.Message.Name);
                    $("#productDialog #classes").val(r.Message.Classes);
                    $("#productDialog #parentId").val(r.Message.ParentId);
                    //$("#productDialog #path").val(r.Message.Path);
                    $("#productDialog #isDnable").val(r.Message.IsDnable);
                    $("#productDialog #remark").val(r.Message.Remark);
                    //产品
                    if (r.Message.Classes == 1) {
                        $("#productDialog #icon").val(r.Message.Icon);
                        $("#productDialog #instructions").val(r.Message.Instructions);
                        $("#productDialog #isDefault").val(r.Message.IsDefault);
                        $("#productDialog #sort").val(r.Message.Sort);
                        $("#productDialog #routerType").val(r.Message.RouterType);
                        $("#productDialog #price").val(r.Message.Price/1000);   //元条换算单位为厘条
                        $("#productDialog #givingNum").val(r.Message.GivingNum);
                        if (r.Message.RouterType == 1) {
                            $("#productDialog #cmOpId").val(r.Message.CmOpId);
                            $("#productDialog #cuOpId").val(r.Message.CuOpId);
                            $("#productDialog #ctOpId").val(r.Message.CtOpId);
                            $("#productDialog #cmExtParams").val(r.Message.CmExtParams);
                            $("#productDialog #cuExtParams").val(r.Message.CuExtParams);
                            $("#productDialog #ctExtParams").val(r.Message.CtExtParams);
                        }
                        else {
                            $("#productDialog #cmGroupid").val(r.Message.CmGroupid);
                            $("#productDialog #cuGroupid").val(r.Message.CuGroupid);
                            $("#productDialog #ctGroupid").val(r.Message.CtGroupid);
                        }
                    }
                    //产品分类
                    else {
                    }
                    //设置类别
                    $("#classes").trigger("change");
                    //设置图标
                    $("#icon").trigger("change");
                    $("#productDialog").modal("show");
                }
                else {
                    mytek.alert(r.Message, r.OK);
                }
            }, "json");
        });
        $(document).on("click", ".action-update-status", function () {
            //data的属性参数不能含有大写字母。
            var id = $(this).data("id");
            var isEnable = $(this).data("is_enable");
            $.post("gwProduct.ashx", { "action": "updateStatus", id: id, isEnable: isEnable }, function (r) {
                mytek.alert(r.Message, r.OK, function () {
                    loadPageList();
                });
            });
        });
        $(document).on("click", ".action-delete", function() {
            var id = $(this).data("id");
            mytek.confirm("是否需要删除该信息?", "数据删除后将无法恢复,请谨慎操作!", function(b) {
                if (b) {
                    $.post("gwProduct.ashx", { "action": "delete", id: id }, function(result) {
                        mytek.alert(result.Message, result.OK, function() {
                            loadPageList();
                        });
                    },
                    "json");
                }
            });
        });
        $(document).on("click", ".action-btn-GwProductQuery", function() {
            pagination.setPageIndex(1);
            loadPageList();
        });
        $(document).on("click", "a[data-index]", function() {
            pagination.setPageIndex($(this).attr("data-index"));
            loadPageList();
        });
        //进入页面时执行查询
        loadPageList();
    });
    </script>
 </asp:Content>
<asp:Content runat="server" ID="Content2" ContentPlaceHolderID="title">产品或产品分类管理</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="content" runat="Server">
    <form name="queryForm" method="get" action="GwProduct.aspx" id="queryForm" class="form-inline"
        id="gwProductTable">
        <div class="m-b">
            <div class="form-group">
                <div class="input-group">
                    <span class="input-group-addon">产品名称</span>
                    <input type="text" name="Name" id="Name" class="form-control" />
                </div>
            </div>
            <div class="form-group">
                <div class="input-group">
                    <select name="Classes" id="Classes" class="form-control">
                        <option value="-1">--请选择类别--</option>
                        <option value="0">产品分类</option>
                        <option value="1">产品</option>
                    </select>
                </div>
            </div>
            <div class="form-group">
                <div class="input-group">
                    <input type="button" value="查询" class="btn btn-primary action-btn-GwProductQuery" />&nbsp;&nbsp;&nbsp;
                     <input class=" btn btn-warning action-modal-add" value="添加产品" type="button" />
                </div>
            </div>
        </div>
        <table class="table table-striped table-bordered table-hover" id="productTable">
            <thead>
                <tr class="header">
                    <th>图标
                    </th>
                    <th>名称
                    </th>
                    <th>使用说明
                    </th>
                    <th>类别
                    </th>
                    <th>通道
                    </th>
                    <th>父级产品分类ID
                    </th>
                    <th>是否默认
                    </th>
                    <th>是否启用
                    </th>
                    <th>排序
                    </th>
                    <th>赠送条数
                    </th>
                    <th>参考单价
                    </th>
                    <th>创建时间
                    </th>
                    <th class="text-right">操作
                    </th>
                </tr>
            </thead>
            <tbody>
            </tbody>
        </table>
    </form>
    <div id="pagination">
    </div>
    <div class="footBar">
    </div>
    <div class="modal inmodal fade" id="productDialog" tabindex="-1" role="dialog" aria-hidden="true">
        <div class="modal-dialog modal-lg">
            <form class="form-horizontal" id="productForm" name="productForm" method="post" action="gwProduct.ashx">
                <div class="modal-content ">
                    <div class="modal-header">
                        <input type="hidden" class="form-control" name="action" id="action" value="update" />
                        <input type="hidden" class="form-control" name="id" id="id" value="" />
                        <button type="button" class="close" data-dismiss="modal">
                            <span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
                        <h4 class="modal-title">编辑产品资料</h4>
                    </div>
                    <div class="modal-body">
                        <div class="form-group">
                            <label class="col-sm-2 control-label">
                                类别</label>
                            <div class="col-sm-4 ">
                                <select id="classes" name="classes" class="form-control">
                                    <option value="-1">--请选择类别--</option>
                                    <option value="0" >产品分类</option>
                                    <option value="1" selected>产品</option>
                                </select>
                            </div>
                        </div>
                        <div class="form-group">
                            <label class="col-sm-2 control-label">
                                父级分类ID</label>
                            <div class="col-sm-4 ">
                                <select name="parentId" id="parentId">
                                    <%=GetProductClassOptions("0")%>
                                </select>
                            </div>
                        </div>
                        <div class="form-group classes-span classes-span-1 ">
                            <label class="col-sm-2 control-label">
                                图标</label>
                            <div class="col-sm-4 ">
                                <div><img id="showImg" name="showImg" src=""></div>
                                <select id="icon" name="icon" class="form-control" >
                                    <option value="">--请选择图标--</option>
                                    <option value="marketingSMS-32.png" >marketingSMS-32.png</option>
                                    <option value="noticeSMS-32.png" >noticeSMS-32.png</option>
                                    <option value="VerificationCodeSMS-32.png" >VerificationCodeSMS-32.png</option>
                                </select>
                            </div>
                                <span class="help-block m-b-none">类别为产品时,产品的图标标识。
                                </span>
                        </div>
                        <div class="form-group">
                            <label class="col-sm-2 control-label">
                                名称</label>
                            <div class="col-sm-4 ">
                                <input type="text" class="form-control" name="name" id="name" value="" />
                            </div>
                        </div>
                        <div class="form-group classes-span classes-span-1">
                            <label class="col-sm-2 control-label">
                                使用说明</label>
                            <div class="col-sm-10">
                                <input type="text" class="form-control" name="instructions" id="instructions" value=""/>
                            </div>
                        </div>
                        <!--
                        <div class="form-group">
                            <label class="col-sm-2 control-label">
                                产品路径</label>
                            <div class="col-sm-4  ">
                                <input type="text" class="form-control" name="path" id="path" value="" />
                            </div>
                        </div>
                        -->
                        <div class="form-group classes-span classes-span-1">
                            <label class="col-sm-2 control-label">
                                推广方式</label>
                            <div class="col-sm-4 ">
                                <select id="isDefault" name="isDefault" class="form-control">
                                    <option value="0" >个性客户</option>
                                    <option value="1" >系统默认</option>
                                </select>
                            </div>
                            <span class="help-block m-b-none">个性化客户是指特殊推送给客户;系统默认是指系统默认可推送所有客户。</span>
                        </div>
                        <div class="form-group">
                            <label class="col-sm-2 control-label">
                                是否启用</label>
                            <div class="col-sm-4 ">
                                <select id="isEnable" name="isEnable" class="form-control">
                                    <option value="0" >停用</option>
                                    <option value="1" selected>启用</option>
                                </select>
                            </div>
                        </div>
                        <div class="form-group classes-span classes-span-1">
                            <label class="col-sm-2 control-label">
                                排序</label>
                            <div class="col-sm-4">
                                <div class="input-group">
                                    <input type="text" class="form-control" name="sort" id="sort" value=""
                                        maxlength="5" onkeyup="value=value.replace(/[^\d]/g,'')" onpaste="value=value.replace(/[^\d]/g,'')"
                                        oncontextmenu="return false" />
                                </div>
                            </div>
                        </div>
                        <div class="form-group classes-span classes-span-1">
                            <label class="col-sm-2 control-label">
                                通道路由</label>
                            <div class="col-sm-10">
                                 <select name="RouterType" id="RouterType">
                                    <option value="1" >指定通道路由</option>
                                    <option value="3" >通道组路由模式</option>
                                </select>
                            <div class="router-type-span router-type-span-1">
                                <div style="padding: 5px">
                                    移动:<select name="cmOpId" id="cmOpId">
                                         <%=GetOpOptions(0)%>
                                    </select>&nbsp;&nbsp; 扩展参数:<input type="text" name="cmExtParams" id="cmExtParams" maxlength="600"
                                        value="" style="width: 50%;" placeholder="移动扩展参数" />
                                </div>
                                <div style="padding: 5px">
                                    联通:<select name="cuOpId" id="cuOpId">
                                         <%=GetOpOptions(0)%>
                                     </select>&nbsp;&nbsp; 扩展参数:<input type="text" name="cuExtParams" id="cuExtParams" maxlength="600"
                                        value="" style="width: 50%;" placeholder="联通扩展参数" />
                                </div>
                                <div style="padding: 5px">
                                    电信:<select name="ctOpId" id="ctOpId">
                                           <%=GetOpOptions(0)%>
                                    </select>&nbsp;&nbsp; 扩展参数:<input type="text" name="ctExtParams" id="ctExtParams" maxlength="600"
                                        value="" style="width: 50%;" placeholder="电信扩展参数" />
                                </div>
                                <span class="help-block m-b-none">CMPP2.0,CMPP3.0协议支持扩展参数有:SERVICEID(服务代码/业务代码(最长10位)),FEECODE(费用代码(最长6位)),FEETYPE(费用类型),FEEUSERTYPE,FEETERMINALID(计费号码)
                                    SGIP支持扩展参数有:SERVICETYPE(业务代码(最长10位)),CHARGENUMBER(计费号码(最长21位)),FEEVALUE(收费值(最长6位)),GIVENVALUE,NODEID(节点(最长6位)),CONNTIMEOUT(连接超时)
                                    SMGP支持扩展参数有:SERVICEID(服务代码/业务代码(最长10位)),FIXEDFEE(包月费/封顶费(最长6位)),FEECODE(费用代码/资费代码(最大6位));</span>
                            </div>
                            <div class="router-type-span router-type-span-3">
                                <div style="padding: 5px">
                                    <label class="control-label ">
                                        移动通道组</label>
                                    <select name="cmGroupid" id="cmGroupid">
                                     <%=GetOpGroupOptions(0) %>
                                     </select></div>
                                <div style="padding: 5px">
                                    <label class="control-label ">
                                        联通通道组</label>
                                    <select name="cuGroupid" id="cuGroupid">
                                     <%=GetOpGroupOptions(0)%>
                                        </select></div>
                                <div style="padding: 5px">
                                    <label class="control-label">
                                        电信通道组</label>
                                    <select name="ctGroupid" id="ctGroupid">
                                    <%=GetOpGroupOptions(0)%>
                                     </select></div>
                            </div>
                            </div>
                        </div>
                        <div class="form-group classes-span classes-span-1">
                            <label class="col-sm-2 control-label">
                                参考单价</label>
                            <div class="col-sm-4">
                                <div class="input-group">
                                    <input type="text" class="form-control" name="price" id="price" value="" maxlength="5"
                                        onkeyup="value=value.replace(/[^\d\.]/g,'')" onpaste="value=value.replace(/[^\d\.]/g,'')"
                                        oncontextmenu="return false" /><span class="input-group-addon">元/条 </span>
                                </div>
                            </div>
                        </div>
                        <div class="form-group classes-span classes-span-1">
                            <label class="col-sm-2 control-label">
                                默认赠送条数</label>
                            <div class="col-sm-4">
                                <div class="input-group">
                                    <input type="text" class="form-control" name="givingNum" id="givingNum" value="" maxlength="5"
                                        onkeyup="value=value.replace(/[^\d\.]/g,'')" onpaste="value=value.replace(/[^\d\.]/g,'')"
                                        oncontextmenu="return false" /><span class="input-group-addon">条 </span>
                                </div>
                            </div>
                        </div>
                        <div class="form-group">
                            <label class="col-sm-2 control-label">
                                备注</label>
                            <div class="col-sm-10 input-group m-b">
                                <input type="text" class="form-control" name="remark" id="remark" value="" />
                            </div>
                        </div>
                    </div>
                    <div class="modal-footer">
                        <button class="btn btn-default" data-dismiss="modal" aria-hidden="true">
                            取消</button>&nbsp;&nbsp;
                    <button class="btn btn-primary">
                        保存</button>
                    </div>
                </div>
            </form>
        </div>
    </div>
    <!-- footBar -->
    <div id="mask" class="mask">
        <span></span>
        <img src="img/spinning-circles.svg" alt="载入中..." />
    </div>
  </asp:Content>