| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470 |
- <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
- <%@include file="/context/mytags.jsp"%>
- <t:base type="jquery,easyui,tools,DatePicker"></t:base>
- <!-- 排班审核详细页 -->
- <style>
- .divYearMonth{
- /* width: 119px; */
- /* height: 13px; */
- /* font-family: MicrosoftYaHei; */
- font-size: 13px;
- font-weight: bold;
- /* line-height: 2.77; */
- /* text-align: left; */
- color: #323232;
- }
- </style>
- <div class="easyui-layout" fit="true">
- <div region="center" style="padding:0px;border:0px;overflow: auto;">
- <input id="tempTime" name="tempTime" type="hidden" value="${yearmonth}"/>
- <input id="calendaridStr" name="calendaridStr" type="hidden" value="${calendaridStr}"/>
- <input id="specialCalendar" name="specialCalendar" type="hidden" value="${specialCalendar}"/>
- <input id="projarrangegeneralId" name="projarrangegeneralId" type="hidden" value="${projarrangegeneralId}"/>
-
- <t:datagrid name="projarrangeDetailList" checkbox="false" fitColumns="false" title="项目排班详细" actionUrl="projarrangeDetailController.do?datagrid&yearmonth=${yearmonth}&pid=${pid}" pagination="false" idField="id" fit="true" queryMode="group">
- <t:dgCol title="主键" field="id" hidden="true" queryMode="single" width="120"></t:dgCol>
- <t:dgCol title="项目排班总揽表ID" field="projarrangeGeneralid" hidden="true" query="false" width="120"></t:dgCol>
- <t:dgCol title="项目id" field="pid" hidden="true" query="false" width="120"></t:dgCol>
- <t:dgCol title="月度" field="yearmonth" hidden="true" queryMode="single" width="120"></t:dgCol>
- <t:dgCol title="项目岗位" field="pjtPostId" frozenColumn="true" dictionary="t_bus_project_post_detail,id,ptj_post_name, and delete_flag = '0' and pid='${pid}' " width="120"></t:dgCol>
- <t:dgCol title="员工姓名" field="userid" frozenColumn="true" queryMode="single" dictionary="t_s_base_user,id,realname" width="120"></t:dgCol>
- <!-- 遍历动态列,将动态列添加至此 -->
- <c:forEach items="${titlelist}" var="temp">
- <t:dgCol title="${temp.title}" width="120" field="${temp.field}" extendParams="editor:'combobox'" dictionary="t_bus_arrange_duty,id,duty_name, and delete_flag <> 1 and status = '0'"></t:dgCol>
- </c:forEach>
- <t:dgCol title="上班天数(日)" field="workingDays" style="text-align: right;" extendParams="editor:'numberbox'" queryMode="single" width="120"></t:dgCol>
- <t:dgCol title="超时加班(小时)" field="timeOutOvertimeHours" style="text-align: right;" extendParams="editor:'numberbox'" queryMode="single" width="120"></t:dgCol>
- <t:dgCol title="国定加班(小时)" field="countryOvertimeHours" style="text-align: right;" extendParams="editor:'numberbox'" queryMode="single" width="120"></t:dgCol>
- <t:dgCol title="值班天数(日)" field="ondutyDays" style="text-align: right;" queryMode="single" extendParams="editor:'numberbox'" width="120"></t:dgCol>
- <t:dgCol title="备注" field="remark" queryMode="single" extendParams="editor:'text'" width="120"></t:dgCol>
- <t:dgCol title="创建人名称" field="createName" hidden="true" queryMode="single" width="120"></t:dgCol>
- <t:dgCol title="创建人登录名称" field="createBy" hidden="true" queryMode="single" width="120"></t:dgCol>
- <t:dgCol title="创建日期" field="createDate" formatter="yyyy-MM-dd hh:mm:ss" hidden="true" queryMode="single" width="120"></t:dgCol>
- <t:dgCol title="更新人名称" field="updateName" hidden="true" queryMode="single" width="120"></t:dgCol>
- <t:dgCol title="更新人登录名称" field="updateBy" hidden="true" queryMode="single" width="120"></t:dgCol>
- <t:dgCol title="更新日期" field="updateDate" formatter="yyyy-MM-dd hh:mm:ss" hidden="true" queryMode="single" width="120"></t:dgCol>
- <t:dgCol title="所属部门" field="sysOrgCode" hidden="true" queryMode="single" width="120"></t:dgCol>
- <t:dgCol title="所属公司" field="sysCompanyCode" hidden="true" queryMode="single" width="120"></t:dgCol>
- <%-- <t:dgCol title="操作" field="opt"></t:dgCol> --%>
- <%-- <t:dgDelOpt title="删除" url="projarrangeDetailController.do?doDel&id={id}" urlclass="ace_button" urlfont="fa-trash-o"/>
- <t:dgToolBar title="录入" icon="icon-add" operationCode="add" url="projarrangeDetailController.do?goAdd" funname="add"></t:dgToolBar>
- <t:dgToolBar title="修改" icon="icon-edit" operationCode="edit" url="projarrangeDetailController.do?goUpdate" funname="update"></t:dgToolBar>
- <t:dgToolBar title="批量删除" icon="icon-remove" operationCode="remove" url="projarrangeDetailController.do?doBatchDel" funname="deleteALLSelect"></t:dgToolBar>
- <t:dgToolBar title="查看" icon="icon-search" url="projarrangeDetailController.do?goUpdate" funname="detail"></t:dgToolBar>
- <t:dgToolBar title="导入" icon="icon-putout" operationCode="put" funname="ImportXls"></t:dgToolBar>
- <t:dgToolBar title="导出" icon="icon-put" operationCode="put" funname="ExportXls"></t:dgToolBar>
- <t:dgToolBar title="模板下载" icon="icon-putout" operationCode="putout" funname="ExportXlsByT"></t:dgToolBar> --%>
- <%-- <t:dgToolBar operationCode="edit" title="修改" icon="icon-edit" operationCode="edit" funname="editRow"></t:dgToolBar>
- <t:dgToolBar operationCode="undo" title="取消编辑" icon="icon-undo" funname="reject"></t:dgToolBar>
- <t:dgToolBar operationCode="save" title="保存" icon="icon-save" url="projarrangeDetailController.do?saveRows" funname="saveData"></t:dgToolBar>
- <t:dgToolBar operationCode="putout" title="上报" icon="icon-putout" operationCode="putout" funname="putout"></t:dgToolBar> --%>
- <%-- <t:dgToolBar title="刷新" float="right" icon="icon-search" url="" funname="refresh"></t:dgToolBar> --%>
- <t:dgToolBar title="导出" icon="icon-put" operationCode="put" funname="ExportXls"></t:dgToolBar>
- </t:datagrid>
-
-
- <script>
- $(function() {
- var datagrid = $("#projarrangeDetailListtb");
- // datagrid.prepend($("#yearmonth1 div[name='yearmonth2']").html());
- datagrid.children(".datagrid-toolbar").before($("#yearmonth1 div[name='yearmonth2']").html());
- $("#yearmonth1").html('');
-
- datagrid.children(".datagrid-toolbar").children("span:first").attr("style","float:left;margin-bottom:4px;");
- });
- </script>
- <div id="yearmonth1" style="display: none;">
- <div name="yearmonth2">
- <div name="yearmonth" style="margin:23px 0 18px 0;">
- <!-- <span style="float: left;"> -->
- <label class="divYearMonth">排班月度:<span> ${yearmonth} </span></label>
- <label class="divYearMonth">项目名称:<span> ${departname} </span></label>
- <input id="yearmonth" type="hidden" value="${yearmonth}">
- <input id="pid" type="hidden" value="${pid}">
- <!-- </span> -->
- <span style="float: right;">
- <a href="#" class="easyui-linkbutton" plain="true" icon="icon-confirm" id="" onclick="enableConfirm()">确认</a>
- <a href="#" class="easyui-linkbutton l-btn l-btn-plain" iconcls="icon-refresh" plain="true" onclick="refresh()">刷新</a>
- <a href="#" class="easyui-linkbutton" plain="true" icon="icon-return" id="departRedo" onclick="callbackProjArrangeGeneralList()">返回</a>
- </span
- </div>
- </div>
- </div>
- </div>
- </div>
- <script src = "webpage/cn/com/lzt/projarrangedetail/projarrangeDetailList.js"></script>
- <script type="text/javascript">
-
-
- //导入
- function ImportXls() {
- openuploadwin('Excel导入', 'projarrangeDetailController.do?upload', "projarrangeDetailList");
- }
- //导出
- function ExportXls() {
- var pid=$("#pid").val();
- var yearmonth=$("#yearmonth").val();
- console.log(pid);
- console.log(yearmonth);
- JeecgExcelExport("projarrangeDetailController.do?exportXls&pid="+pid+"&yearmonth="+yearmonth ,"projarrangeDetailList");
- }
- //模板下载
- function ExportXlsByT() {
- JeecgExcelExport("projarrangeDetailController.do?exportXlsByT","projarrangeDetailList");
- }
- //新增
- function add(title,url,id){
- window.location.href=url
- }
- //修改
- function update(title,url, id){
- updateNotCreateWin("修改",url, "projarrangeDetailList",false);
- }
- //查看
- function view(title,url, id){
- viewNotCreateWin("查看",url, "projarrangeDetailList",false)
- }
-
- $(function(){
-
- var specialCalendar=$("#specialCalendar").val();
- var specialCalendarArr=eval(specialCalendar);
- var datagrid = $(".datagrid-view2").children("div").children("div");
- //$("td[field='postid']").css({"color":"red"})
-
- datagrid.children("table").find("td").each(function(){
- //arr[$(this).index()] = $(this).val();
- //获取filed值;
- var field=($(this)[0].attributes)[0].value;
- //获取td值;
- var tdVal=$(this).text();
-
- for(var key in specialCalendarArr[0]){
- if(field==key){
- if(parseInt(specialCalendarArr[0][key])>5){
- //给列赋颜色
- $("td[field='"+field+"']").css({"background":"#d65653"});
- $("td[field='"+field+"']").children("div").css({"color":"#ffffff"});
- }else{
- //给列赋颜色
- $("td[field='"+field+"']").css({"background":"#5187c9"});
- $("td[field='"+field+"']").children("div").css({"color":"#ffffff"});
- }
- }
- }
- })
- })
-
- function getYearMonth(){
- var myDate = new Date();
- //获取当前年
- var year=myDate.getFullYear();
- //获取当前月
- var month=myDate.getMonth()+1;
- //获取当前日
- //var date=myDate.getDate();
- return year+"-"+month;
- }
-
- //选择排班月度
- function yearmonthChange(){
- var yearmonth=$(this).val();
- $("#tempTime").val(yearmonth);
- var pid=$("#pid").val();
- if(pid.length==0){
- return false;
- }
- var dateNumber=yearmonth.split("-");
-
- window.location.href="projarrangeDetailController.do?list&year="+dateNumber[0]+"&month="+dateNumber[1]+"&pid="+pid;
- }
-
- //部门选择==========
- function openDepartmentSelect() {
- //$.dialog.setting.zIndex = getzIndex();
- var orgIds = $("#pid").val();
- $.dialog({content: 'url:departController.do?departSelect&orgIds='+orgIds, zIndex: getzIndex(), title: '所属部门列表', lock: true, width: '400px', height: '350px', opacity: 0.4, button: [
- {name: '<t:mutiLang langKey="common.confirm"/>', callback: callbackDepartmentSelect, focus: true},
- {name: '<t:mutiLang langKey="common.cancel"/>', callback: function (){}}
- ]}).zindex();
- }
-
- function callbackDepartmentSelect() {
- var iframe = this.iframe.contentWindow;
- var treeObj = iframe.$.fn.zTree.getZTreeObj("departSelect");
- var nodes = treeObj.getCheckedNodes(true);
- if(nodes.length>0){
- var ids='',names='';
- for(i=0;i<nodes.length;i++){
- var node = nodes[i];
- ids += node.id+',';
- names += node.name+',';
- }
- $('#departname').val(names);
- $('#departname').blur();
- $('#pid').val(ids);
-
- var tempTime=$("#tempTime").val();
- //根据项目名称查询数据
- if(ids!=""&&tempTime!=""){
- var myPId=$('#pid').val();
- var dateNumber=tempTime.split("-");
- window.location.href="projarrangeDetailController.do?list&year="+dateNumber[0]+"&month="+dateNumber[1]+"&pid="+myPId;
- }else{
-
- }
-
- }
- }
- //清空
- function callbackClean(){//projarrangeDetailList
- //$('#projarrangeDetailListtb').datagrid('loadData', { total: 0, rows: [] });
- $('#departname').val('');
- $('#pid').val('');
-
- //获得所有行数据并删除
- var rowsAll = $("#projarrangeDetailList").datagrid('getData').rows;
- if (rowsAll.length>0) {
- for (var i = rowsAll.length - 1; i >= 0; i--) {
- var index = $('#projarrangeDetailList').datagrid('getRowIndex', rowsAll[i]);
- $('#projarrangeDetailList').datagrid('deleteRow', index);
- }
- }
-
-
-
-
- }
- //部门选择==========
-
-
- //编辑行
- function editRow(title,addurl,gname){
- var rows=$('#'+gname).datagrid("getChecked");
- if(rows.length==0){
- layer.alert("请选择条目");
- return false;
- }
- for(var i=0;i<rows.length;i++){
- var index= $('#'+gname).datagrid('getRowIndex', rows[i]);
- $('#'+gname).datagrid('beginEdit', index);
- }
- }
-
- //结束编辑
- function endEdit(gname){
- var editIndex = $('#'+gname).datagrid('getRows').length-1;
- for(var i=0;i<=editIndex;i++){
- if($('#'+gname).datagrid('validateRow', i))
- $('#'+gname).datagrid('endEdit', i);
- else
- return false;
- }
- return true;
- }
-
- //取消编辑
- function reject(title,addurl,gname){
- var pid = $('#pid').val();
- if(pid.length==0){
- return false;
- }
- $('#'+gname).datagrid('clearChecked');
- $('#'+gname).datagrid('rejectChanges');
- }
-
- function putout(){
- //排班月度
- var yearmonth=$("#yearmonth").val();
- //项目id
- var pid=$("#pid").val();
-
- //日历id
- var calendaridStr=$("#calendaridStr").val();
- //排班状态1已上报
- var arrangeDutyStatus="1";
-
- //获得所有行数据并删除
- var rows = $("#projarrangeDetailList").datagrid('getData').rows;
- if (rows.length>0) {
- var strmap="[";
- for(var i=0;i<rows.length;i++){
- strmap+="{";
- for(var d in rows[i]){
- //result["projectPostUserMiniDaoDtoList["+i+"]."+d]=rows[i][d];
- /* if(strmap.length==2){
- strmap+='"'+d+'":"'+rows[i][d]+'"';
- }else{
- strmap+=',"'+d+'":"'+rows[i][d]+'"';
- } */
- strmap+='"'+d+'":"'+rows[i][d]+'",';
- }
- //strmap+="}";
- if(i!=rows.length-1){
- strmap+="},";
- }else{
- strmap+="}";
- }
- }
- strmap+="]";
-
- //console.log(strmap);
- $.ajax({
- url:"projarrangeDetailController.do?saveRows",
- type:"post",
- data: {"strmap":strmap,
- "calendaridStr":calendaridStr,
- "yearmonth":yearmonth,
- "pid":pid,
- "arrangeDutyStatus":arrangeDutyStatus},
- cache : false,
- success:function(data){
- var d = data; // ------ $.parseJSON(data);
- if(d.success){
- tip(d.msg);
- reloadTable();
- }else{
- layer.alert(d.msg);
- }
- }
- });
-
-
-
-
- }else{
- layer.alert("没有需要上报的数据!");
- return false;
- }
-
-
-
-
-
-
- }
-
-
- //保存数据
- function saveData(title,addurl,gname){
- if(!endEdit(gname))
- return false;
- var rows=$('#'+gname).datagrid("getChanges","inserted");
- var uprows=$('#'+gname).datagrid("getChanges","updated");
- rows=rows.concat(uprows);
- if(rows.length<=0){
- layer.alert("没有需要保存的数据!")
- return false;
- }
-
- //排班月度
- var yearmonth=$("#yearmonth").val();
- //项目id
- var pid=$("#pid").val();
-
- //日历id
- var calendaridStr=$("#calendaridStr").val();
- //排班状态0未上报
- var arrangeDutyStatus="0";
-
- //console.log(calendaridStr);
- var strmap="[";
- for(var i=0;i<rows.length;i++){
- strmap+="{";
- for(var d in rows[i]){
- //result["projectPostUserMiniDaoDtoList["+i+"]."+d]=rows[i][d];
- /* if(strmap.length==2){
- strmap+='"'+d+'":"'+rows[i][d]+'"';
- }else{
- strmap+=',"'+d+'":"'+rows[i][d]+'"';
- } */
- strmap+='"'+d+'":"'+rows[i][d]+'",';
- }
- //strmap+="}";
- if(i!=rows.length-1){
- strmap+="},";
- }else{
- strmap+="}";
- }
- }
- strmap+="]";
- //console.log(strmap);
- //return false;
-
-
- $.ajax({
- url:"projarrangeDetailController.do?saveRows",
- type:"post",
- data: {"strmap":strmap,
- "calendaridStr":calendaridStr,
- "yearmonth":yearmonth,
- "pid":pid,
- "arrangeDutyStatus":arrangeDutyStatus},
- cache : false,
- success:function(data){
- var d = data; // ------ $.parseJSON(data);
-
- if(d.success){
- tip(d.msg);
- reloadTable();
- }else{
- layer.alert(d.msg);
- }
- }
- })
- }
-
- //刷新表格数据
- function refresh(){
-
- //$(".pagination-load").click();
- $("#projarrangeDetailList").datagrid('reload');
- }
-
- //返回排班审核按钮
- function callbackProjArrangeGeneralList(){
- window.location.href="projArrangeGeneralController.do?list";
- }
-
-
- //数据确认
- function enableConfirm(){
- var projarrangegeneralId=$("#projarrangegeneralId").val();
- var id=projarrangegeneralId.substring(0,projarrangegeneralId.length-1);
- var arrangeDutyStatus=projarrangegeneralId.substring(projarrangegeneralId.length-1,projarrangegeneralId.length);
- if(arrangeDutyStatus==2){
- layer.alert("数据已确认");
- return false;
- }
- $.messager.confirm("确认", "确定要确认这条数据?", function (r) {
- $.ajax({
- url : "projArrangeGeneralController.do?enableConfirm",
- type : 'post',
- data : {
- id : id
- },
- cache : false,
- success : function(data) {
- var d = data; // ------ $.parseJSON(data);
- if (d.success) {
- var msg = d.msg;
- layer.alert(msg);
- callbackProjArrangeGeneralList();
- }
- }
- });
- });
-
-
- }
-
-
-
- </script>
|