layui asp.net core razor集大成应用

浪淘沙1年前前端75
@page
@model xxtsoft.Web.Entry.Pages.sysadmins.kh.kh_pjbModel
@{
    Layout = "_LayoutAdmin";
    ViewData["Title"] = "考核评分";
}

<div class="layui-fluid">
    <div class="layui-panel layui-padding-3">
        <blockquote class="layui-elem-quote" id="pjtj">
        </blockquote>
        <table id="xxt-tbl" lay-filter="xxt-tbl"></table>

        <script type="text/html" id="ID-table-mb">
            {{= d.mb}}


        </script>
        <script type="text/html" id="ID-table-xjd">
            {{= d.xjd}}
        </script>
        <script type="text/html" id="ID-table-gzjy">
            {{= d.gzjy}}
        </script>

        <script type="text/html" id="ID-table-opr">
             {{# if(d.pj!='目标未上报,无法评定') { }}

                {{# if(d.pd!='') { }}
                    {{# if(d.pd=='好') { }}
                         <input type="radio" name="pd_{{= d.id}}_{{= d.khid}}" value="好" title="好" checked="checked">
                    {{# } else { }}
                         <input type="radio" name="pd_{{= d.id}}_{{= d.khid}}" value="好" title="好" >
                    {{# } }}

                    {{# if(d.pd=='较好') { }}
                         <input type="radio" name="pd_{{= d.id}}_{{= d.khid}}" value="较好" title="较好" checked="checked">
                    {{# } else { }}
                         <input type="radio" name="pd_{{= d.id}}_{{= d.khid}}" value="较好" title="较好" >
                    {{# } }}

                    {{# if(d.pd=='一般') { }}
                         <input type="radio" name="pd_{{= d.id}}_{{= d.khid}}" value="一般" title="一般" checked="checked">
                    {{# } else { }}
                         <input type="radio" name="pd_{{= d.id}}_{{= d.khid}}" value="一般" title="一般" >
                    {{# } }}

                     {{# if(d.pd=='较差') { }}
                         <input type="radio" name="pd_{{= d.id}}_{{= d.khid}}" value="较差" title="较差" checked="checked">
                     {{# } else { }}
                         <input type="radio" name="pd_{{= d.id}}_{{= d.khid}}" value="较差" title="较差" >
                     {{# } }}

                 {{# } else { }}
                    <input type="radio" name="pd_{{= d.id}}_{{= d.khid}}" value="好" title="好" >
                    <input type="radio" name="pd_{{= d.id}}_{{= d.khid}}" value="较好" title="较好" checked="checked">
                    <input type="radio" name="pd_{{= d.id}}_{{= d.khid}}" value="一般" title="一般" >
                    <input type="radio" name="pd_{{= d.id}}_{{= d.khid}}" value="较差" title="较差">
                  {{# } }}
            {{# } else { }}
              -
            {{# } }}
        </script>
        <div id="demo-laypage-limits"></div>
        <script type="text/html" id="xxt-pagebar">
            <div class="layui-btn-container  list-bottom-btn">
               <button class="layui-btn layui-btn-sm layui-btn-danger @Model.js" lay-event="batchdel">@Model.btn</button>
            </div>
        </script>



    </div>
</div>

<script>
    layui.config({
        base: '/layui/' // 静态资源所在路径
    }).extend({
        index: 'lib/index' //主入口模块
    }).use(function () {

        var table = layui.table;
        var layer = layui.layer;
        var $ = layui.jquery;
        var laydate = layui.laydate;
        laydate.render({
            elem: '#cdt',
            // type: 'datetime',
            // fullPanel: true // 2.8+
        });



        //读取评价提示
        $.ajax({
            url: '/api/kh_Pjb/ReadPjTj/@Model.loginSid',
            type: "Get",
            contentType: 'application/json', // 设置请求头中的 Content-Type 为 application/json
            success: function (response) {
                var data = response.data;

                if (response.statusCode == 200) {

                    $("#pjtj").html(data);
                }

            }
        });


        var mobile = layui.device().mobile;//手机模式

        table.render({
            elem: '#xxt-tbl'
            , lineStyle: 'height: 70px;'
            , height: mobile ? 550 : 700
            , url: '/api/kh_Pjb/GetTeaPjList/@Model.loginSid' //数据接口
            , method: 'POST'
            , page: false // 开启分页
            , even: true
            , response: {
                statusCode: 200 // 重新规定成功的状态码为 200,table 组件默认为 0
            }
            , parseData: function (res) { //res 即为原始返回的数据

                var code = res.statusCode;
                var count = res.totaldata;
                var data = res.data;

                // console.log(data);

                if (data == "无数据") {
                    alert('无数据'); location.href = '../desk/';
                    return;
                }
                //JSON.stringify(res)
                return {
                    "code": res.statusCode, //解析接口状态
                    "msg": '', //解析提示文本
                    "count": count, //解析数据长度
                    "data": data //解析数据列表

                };
            }
            , loading: true
            , pagebar: '#xxt-pagebar'// 分页栏模板
            , cols: [[ //表头
                 { field: 'index', title: '序号', width: 60,  type: 'numbers',fixed: 'left' }
                ,{ field: 'gh', title: '工号', width: 80,  fixed: 'left' }
                , { field: 'truename', title: '姓名', width: 80, fixed: 'left' }
                , { field: 'bm', title: '部门', width: 150 }
                , { field: 'zw', title: '职务', width: 150 }
                , { field: 'mb', title: '本阶段目标完成', width: 350, templet: '#ID-table-mb' }
                , { field: 'xjd', title: '下阶段工作计划', width: 350, templet: '#ID-table-xjd' }
                , { field: 'gzjy', title: '意见建议', width: 350 , templet: '#ID-table-gzjy'}
                , {
                    field: 'pj', title: '评定情况', width: 150, fixed: 'right',
                    templet: function (d) {
                        if (d.pj === '已评定') {
                            return '<a class="layui-btn layui-btn-xs layui-bg-blue" lay-event="pd">已评定</a>';
                        }
                        else if (d.pj === '待评定') {
                            return '<a class="layui-btn layui-btn-xs layui-bg-orange" lay-event="pd">待评定</a>';
                        }
                        else if (d.pj === '目标未上报,无法评定') {
                            return '阶段目标完成情况<br>未填写,无法评定';
                        }

                    }

                }
                , { field: 'pd', title: '评定', width: 230, fixed: 'right', templet: '#ID-table-opr' }
            ]]
            , done: function (res, curr, count) {
                // 渲染完成后更新 URL
                var url = new URL(window.location);
                url.searchParams.set('pageindex', curr);
                window.history.pushState({}, '', url);
            }
        });


        //触发单元格工具事件
        table.on('tool(xxt-tbl)', function (obj) { // 双击 toolDouble
            var data = obj.data;
            var id = data.id;
            var khid = data.khid;

            switch (obj.event) {

                case 'pd':
                    layer.open({
                        type: 2,
                        title: '评定',
                        content: 'kh_pd?fst=' + @Request.Query["fst"]+'&teaid=' + id + '&khid=' + khid,
                        shadeClose: true,
                        area: mobile ? ['95%', '80%'] : ['80%', '80%'],
                        maxmin: true, //开启最大化最小化按钮
                    });
                    break;

                    };

                });

                    // 底部分页栏事件
                 table.on('pagebar(xxt-tbl)', function (obj) {
                        var eventValue = obj.event; // 获得按钮 lay-event 值
                        switch (eventValue) {
                            case 'batchdel':
                                layer.confirm('确认提交本页所有评定吗', function (index) {
                                    //获取页面上所有 radio 的选中值
                                    var radios = document.querySelectorAll('input[type="radio"]:checked');
                                     radios.forEach(function(radio) {
                                         // console.log(radio.value); // 打印每个选中的 radio 的值
                                         // console.log(radio.name);
                                         var _name = radio.name.split("_");
                                         var teaid=_name[1];
                                         var khid =_name[2];
                                         var pj=radio.value;
                                         // console.log(teaid);
                                         // console.log(khid);
                                         // console.log(pj);
                                         $.ajax({
                                            url: '/api/kh_Pjb/SavePjb/'+teaid+'/'+khid+'/@Model.loginSid',
                                            async: false,
                                            type: "POST",
                                            data: {pj:pj}
                                           });
                                      });                                                           
                                layer.close(index);
                                location.reload();
                               });
                              break;
                        };
                    });

            });

</script>

image.png

相关文章

layui 省市区三级联动

layui 省市区三级联动

 <div class="layui-form-item">      <label&nb...

Layui卡片式 新完整页面

<div class="layui-fluid">     <blockquote class=&q...

layui postgresql 时间绑定格式化,去除2025-11-30T00:00:00

  "bmks":  layui.util.toDateString(data[0].bmks,"yyyy-MM-dd ...

js 获取数组的值

js 获取数组的值

一、如图,获取responseItems的值二、js获取 var responseItems=JSON.parse(res.data.retBody).responseItems;...

layui form提交时,弹出确认框

layui form提交时,弹出确认框

<div class="container yx-form">     <form c...

layui 同时调用多个数据

<div class="layui-col-md6">     <div class="l...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。