| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561 |
- <%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
- <%@include file="/context/mytags.jsp"%>
- <!DOCTYPE html>
- <html>
- <head>
- <title>班次表</title>
- <t:base type="jquery,easyui,tools,DatePicker"></t:base>
- <script src="plug-in/layer/layer.js"></script>
- <script>
-
- </script>
- <script type="text/javascript">
- //编写自定义JS代码
- </script>
- <!-- 添加编辑跳转页面白色背景填充CSS -->
- <style type="text/css">
- .fixed-h{
- float:left;
- width:100%;
- height:940px;
- background:#ffffff;
- }
- </style>
- </head>
- <body>
- <t:formvalid formid="formobj" dialog="false" tipSweep="true" usePlugin="password" layout="table" action="arrangeDutyController.do?doAdd" tiptype="1" callback="callback">
- <input id="id" name="id" type="hidden" value="${arrangeDutyPage.id }"/>
-
- <!-- <table style="width:100%;height:100%;" cellpadding="0" cellspacing="1" class="formtable"> -->
- <div class="fixed-h">
- <table style="width: 100%;" cellpadding="0" cellspacing="1" class="formtable">
- <tr>
- <td align="right">
- <label class="Validform_label">
- <span color="red" class="requiredIcon">*</span>班次名称:
- </label>
- </td>
- <td class="value">
- <input id="dutyName" name="dutyName" type="text" style="width: 150px" class="inputxt" maxlength="15" datatype="*1-15" errormsg="班次名称最多15文字" placeholder="请输入班次名称" ignore="checked"/>
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">班次名称</label>
- </td>
- </tr>
- <tr>
- <td align="right">
- <label class="Validform_label">
- <span color="red" class="requiredIcon">*</span>项目名称:
- </label>
- </td>
- <td class="value">
- <input type="text" id="departname" name="departname" readonly="readonly" class="inputxt" datatype="*" style="width: 150px" placeholder="请选择项目名称" onclick="openDepartmentSelect()">
- <input id="pid" name=pid type="hidden" value="">
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">项目名称</label>
- <a href="#" class="easyui-linkbutton" plain="true" icon="icon-select" id="departSearch" onclick="openDepartmentSelect()">选择</a>
- <a href="#" class="easyui-linkbutton" plain="true" icon="icon-clean" id="departRedo" onclick="callbackClean()">清空</a>
-
- </td>
- </tr>
- <%-- <tr>
- <td align="right">
- <label class="Validform_label">
- <span color="red" class="requiredIcon">*</span>项目岗位:
- </label>
- </td>
- <td class="value">
- <t:dictSelect field="pjtpostDetailId" type="list" dictTable="t_bus_project_post_detail" dictField="id" dictText="ptj_post_name" defaultVal="${arrangeDutyPage.pjtpostDetailId}" hasLabel="false" title="项目岗位" datatype="*"></t:dictSelect>
- <t:dictSelect field="pjtpostDetailId" type="list" dictTable="t_bus_project_post_detail" dictField="id" dictText="ptj_post_name" defaultVal="${arrangeDutyPage.pjtpostDetailId}" hasLabel="false" title="项目岗位" datatype="*"></t:dictSelect>
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">项目岗位</label>
- </td>
-
- </tr> --%>
- <tr id="tr_bancileixing">
- <td align="right">
- <label class="Validform_label">
- <span color="red" class="requiredIcon">*</span>班次类型:
- </label>
- </td>
- <td class="value">
- <t:dictSelect extendJson="{onchange:'checkField(this.value)'}" field="dutyType" type="list" typeGroupCode="dutyType" datatype="*" defaultVal="${arrangeDutyPage.dutyType}" hasLabel="false" title="班次类型"></t:dictSelect>
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">班次类型</label>
- </td>
- </tr>
- <tr id="tr_zhengchangshangbanshijian">
- <td align="right">
- <label class="Validform_label">
- 正常上班时间:
- </label>
- </td>
- <td class="value">
- <input id="normalworkStime" name="normalworkStime" type="text" style="width: 150px" class="Wdate" onclick="WdatePicker({dateFmt:'HH:mm',isShowOthers:false})" placeholder="HH:MM"/>
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">正常上班时间</label>
-
- <!-- <input id="spunchMinute" name="spunchMinute" type="text" style="width: 50px" class="inputxt" maxlength="2" datatype="n1-2" errormsg="分钟前开始打卡最多2位数字" placeholder="" ignore="checked"/> 分钟前开始打卡 -->
- <input id="spunchMinute" name="spunchMinute" type="text" style="width: 50px" class="inputxt" maxlength="2" errormsg="分钟前开始打卡最多2位数字" placeholder="" ignore="checked"/> 分钟前开始打卡
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">分钟前开始打卡</label>
- </td>
-
- </tr>
- <tr id="tr_zhengchangxiabanshijian">
- <td align="right">
- <label class="Validform_label">
- 正常下班时间:
- </label>
- </td>
- <td class="value">
- <input id="normalworkEtime" name="normalworkEtime" type="text" style="width: 150px" class="Wdate" onclick="WdatePicker({dateFmt:'HH:mm',isShowOthers:false})" placeholder="HH:MM"/>
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">正常下班时间</label>
-
- <input id="epunchMinute" name="epunchMinute" type="text" style="width: 50px" class="inputxt" maxlength="2" errormsg="分钟后结束打卡最多2位数字" placeholder="" ignore="checked"/> 分钟后结束打卡
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">分钟后结束打卡</label>
- </td>
- </tr>
- <tr id="tr_zonggongshi">
- <td align="right">
- <label class="Validform_label">
- <span color="red" class="requiredIcon">*</span>总工时:
- </label>
- </td>
- <td class="value">
- <!-- <input id="datumWorkhours" name="datumWorkhours" type="text" style="width: 150px" class="inputxt" maxlength="4" datatype="/^\d{1,2}(\.\d{1})?$/" errormsg="总工时为一位小数" placeholder="请输入总工时" ignore="checked" /> 小时(最小单位0.5小时) -->
- <input id="datumWorkhours" name="datumWorkhours" type="text" style="width: 150px" class="inputxt" maxlength="4" errormsg="总工时为一位小数" placeholder="请输入总工时" ignore="checked" /> 小时(最小单位0.5小时)
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">总工时</label>
- </td>
- </tr>
- <tr id="tr_bancigongshi">
- <td align="right">
- <label class="Validform_label">
- 班次工时:
- </label>
- </td>
- <td class="value">
- <input id="shiftWorkhours" name="shiftWorkhours" type="text" style="width: 150px" class="inputxt" maxlength="4" errormsg="班次工时为一位小数" placeholder="请输入班次工时" ignore="checked" /> 小时(最小单位0.5小时)
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">班次工时</label>
- </td>
- </tr>
- <tr id="tr_zhibanshijian">
- <td align="right">
- <label class="Validform_label">
- 值班时间:
- </label>
- </td>
- <td class="value">
- <input id="ondutyStime" name="ondutyStime" type="text" style="width: 150px" class="Wdate" onclick="WdatePicker({dateFmt:'HH:mm',isShowOthers:false})" placeholder="HH:MM"/>
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">值班开始时间</label>
- ~
- <input id="ondutyEtime" name="ondutyEtime" type="text" style="width: 150px" class="Wdate" onclick="WdatePicker({dateFmt:'HH:mm',isShowOthers:false})" placeholder="HH:MM"/>
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">值班结束时间</label>
- </td>
- </tr>
- <tr id="tr_chaoshijianbanshijian">
- <td align="right">
- <label class="Validform_label">
- 加班时间:
- </label>
- </td>
- <td class="value">
- <input id="timeOutOvertimeStime" name="timeOutOvertimeStime" type="text" style="width: 150px" class="Wdate" onclick="WdatePicker({dateFmt:'HH:mm',isShowOthers:false})" placeholder="HH:MM"/>
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">加班开始时间</label>
- ~
- <input id="timeOutOvertimeEtime" name="timeOutOvertimeEtime" type="text" style="width: 150px" class="Wdate" onclick="WdatePicker({dateFmt:'HH:mm',isShowOthers:false})" placeholder="HH:MM"/>
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">加班结束时间</label>
- </td>
- </tr>
- <tr id="tr_chaoshijianbanshichang">
- <td align="right">
- <label class="Validform_label">
- 加班时长:
- </label>
- </td>
- <td class="value">
- <input id="timeOutOvertimeHours" name="timeOutOvertimeHours" type="text" style="width: 150px" class="inputxt" maxlength="4" placeholder="请输入加班时长" datatype="/^\d{1,2}(\.\d{1})?$/" ignore="ignore" /> 小时(最小单位0.5小时)
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">加班时长</label>
- </td>
- </tr>
- <tr>
- </tr>
- <tr id="tr_bancicanbu">
- <td align="right">
- <label class="Validform_label">
- 餐补:
- </label>
- </td>
- <td class="value">
- <%-- <input id="dutyMealid" name="dutyMealid" type="hidden" value='${arrangeDutyPage.dutyMealid}'/>
- <input id="subsidyName" name="subsidyName" type="text" style="width: 150px;" class="inputxt" value="" datatype="*" readonly="readonly" />
- <t:choose hiddenName="dutyMealid" hiddenid="id" url="arrangeDutyController.do?dutyMealTable" name="mealsSubsidyList" icon="icon-search" title="选择班次餐补" textname="subsidyName" isclear="true" isInit="true"></t:choose>
- <span class="Validform_checktip"></span> --%>
- <input id="dutyMealid" name="dutyMealid" type="hidden" value='${arrangeDutyPage.dutyMealid}'/>
- <input id="subsidyName" name="subsidyName" type="text" style="width: 150px;" class="inputxt" value="" readonly="readonly" placeholder="选择班次餐补" onclick="openSubsidyNameSelect()"/>
- <%-- <t:choose hiddenName="dutyMealid" hiddenid="id" url="arrangeDutyController.do?dutyMealTable" name="mealsSubsidyList" icon="icon-search" title="选择班次餐补" textname="subsidyName" isclear="true" isInit="true"></t:choose> --%>
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">班次餐补</label>
- <a href="#" class="easyui-linkbutton" plain="true" icon="icon-select" id="departSearch" onclick="openSubsidyNameSelect()">选择</a>
- <a href="#" class="easyui-linkbutton" plain="true" icon="icon-clean" id="departRedo" onclick="callbackCleanSubsidyName()">清空</a>
- </td>
-
- </tr>
- <tr>
- <td align="right">
- <label class="Validform_label">
- 备注:
- </label>
- </td>
- <td class="value">
- <textarea style="width:600px;height: 120px;" class="inputxt" rows="6" id="remark" maxlength="200" name="remark" ignore="ignore" placeholder="请输入备注信息(最多输入文字数200)"></textarea>
- <span class="Validform_checktip"></span>
- <label class="Validform_label" style="display: none;">备注</label>
- </td>
- </tr>
-
- <tr>
- <td height="50px" align="center" colspan="2">
- <!-- <a style="margin-left:80px" href="#" class="easyui-linkbutton l-btn" plain="true" iconcls="icon-le-back" onclick="backHome()">返回</a>
- <div style="display:none"><input type="submit" id ="btnsub" value=""/></div>
- <a href="#" class="easyui-linkbutton l-btn" iconcls="icon-le-ok" onclick="btn_ok()">提交</a> -->
- <div style="display:none"><input type="submit" id ="btnsub" value=""/></div>
- <a href="#" class="easyui-linkbutton l-btn l-btn-plain" iconcls="icon-save" onclick="btn_ok()">确定</a>
- <a href="#" class="easyui-linkbutton" plain="true" icon="icon-return" onclick="backHome()">取消</a>
- </td>
- </tr>
- </table>
- <div>
- </t:formvalid>
- </body>
- <script src = "webpage/cn/com/lzt/arrangeduty/arrangeDuty.js"></script>
- <script src = "webpage/cn/com/lzt/arrangeduty/commonMethod.js"></script>
-
- <script type="text/javascript">
-
- $(function(){
- $(".Wdate").attr("readonly","readonly");
- });
-
-
- //编写自定义JS代码
- function checkField(field){
- if("zhiban"==field){
- // $("#datumWorkhours").attr("disabled","true");
- $("#datumWorkhours").val("");
- $("#tr_zhengchangshangbanshijian").hide();
- $("#tr_zhengchangxiabanshijian").hide();
- $("#tr_zonggongshi").hide();
- $("#tr_bancigongshi").hide();
- $("#tr_zhibanshijian").show();
- $("#tr_chaoshijianbanshijian").hide();
- $("#tr_chaoshijianbanshichang").hide();
- $("#tr_bancicanbu").show();
- }else if("jiaban"==field){
- $("#tr_zhengchangshangbanshijian").hide();
- $("#tr_zhengchangxiabanshijian").hide();
- $("#tr_zonggongshi").show();
- $("#tr_bancigongshi").hide();
- $("#tr_zhibanshijian").hide();
- $("#tr_chaoshijianbanshijian").show();
- $("#tr_chaoshijianbanshichang").show();
- $("#tr_bancicanbu").show();
- }else if("yeban11.5"==field){
- $("#tr_zhengchangshangbanshijian").show();
- $("#tr_zhengchangxiabanshijian").show();
- $("#tr_zonggongshi").show();
- $("#tr_bancigongshi").hide();
- $("#tr_zhibanshijian").hide();
- $("#tr_chaoshijianbanshijian").hide();
- $("#tr_chaoshijianbanshichang").hide();
- $("#tr_bancicanbu").show();
- }else{
- //$("#datumWorkhours").removeAttr("style");//要变成Enable,JQuery只能这么写
- $("#tr_zhengchangshangbanshijian").show();
- $("#tr_zhengchangxiabanshijian").show();
- $("#tr_zonggongshi").show();
- $("#tr_bancigongshi").show();
- $("#tr_zhibanshijian").show();
- $("#tr_chaoshijianbanshijian").show();
- $("#tr_chaoshijianbanshichang").show();
- $("#tr_bancicanbu").show();
- }
- }
- //选择项目名称,列表================
- function openDepartmentSelect() {
- //$.dialog.setting.zIndex = getzIndex();
- var orgIds = $("#pid").val();
- $.dialog({
- content: 'url:dialogDealController.do?projectDepartTablePart&ids='+orgIds, zIndex: getzIndex(), title: '项目名称列表', lock: true, width: '600px', height: '350px', opacity: 0.4, button: [
- {name: '<t:mutiLang langKey="common.confirm"/>', callback: function (){
- var iframe = this.iframe.contentWindow;
- if(iframe.getReason().length>0){
- var strData=eval(iframe.getReason());
- var pid="";
- for(var key in strData[0]){
- if(key=="strPId"){
- $("#pid").val(strData[0][key]);
- pid=strData[0][key];
- }else if(key=="strDepartName"){
- $("#departname").val(strData[0][key]);
- }
- }
- if(pid.length==0){
- layer.alert("请选择项目名称");
- return false;
- }
- }
- }, focus: true},
- {name: '<t:mutiLang langKey="common.cancel"/>', callback: function (){}}
-
- ]}).zindex();
- }
- function callbackClean(){
- $('#departname').val('');
- $('#pid').val('');
- }
- //选择项目名称列表================
-
- //选择班次餐补================
- function openSubsidyNameSelect() {
- var orgIds = $("#dutyMealid").val();var dutyTypeOption=$("select[name='dutyType']");
- var dutyType=dutyTypeOption.val();//班次类型
- $.dialog({content: 'url:arrangeDutyController.do?dutyMealTable&ids='+orgIds+'&dutyType='+dutyType, zIndex: getzIndex(), title: '班次餐补列表', lock: true, width: '600px', height: '350px', opacity: 0.4, button: [
- {name: '<t:mutiLang langKey="common.confirm"/>', callback: function(){
- var iframe = this.iframe.contentWindow;
- if(iframe.getReason().length>0){
- var strData=eval(iframe.getReason());
- var dutyMealid="";
- for(var key in strData[0]){
- if(key=="strMealsSubsidyid"){
- $("#dutyMealid").val(strData[0][key]);
- dutyMealid=strData[0][key];
- }else if(key=="strMealsSubsidyName"){
- $("#subsidyName").val(strData[0][key]);
- }
- }
-
- if(dutyMealid.length==0){
- layer.alert("请选择班次餐补");
- return false;
- }
- }
- }, focus: true},
- {name: '<t:mutiLang langKey="common.cancel"/>', callback: function (){}}
- ]}).zindex();
- }
-
-
- function callbackCleanSubsidyName(){
- $('#dutyMealid').val('');
- $('#subsidyName').val('');
- }
- //选择班次餐补================
- //自定义保存按钮
- function btn_ok(){
- var dutyName=$("#dutyName").val();//班次名称
- var normalworkStime=$("#normalworkStime").val();//正常上班时间
- var normalworkEtime=$("#normalworkEtime").val();//正常下班时间
- var spunchMinute=$("#spunchMinute").val();//分钟前开始打卡
- var epunchMinute=$("#epunchMinute").val();//分钟后结束打卡
- var datumWorkhours=$("#datumWorkhours").val();//总工时
- var shiftWorkhours=$("#shiftWorkhours").val();//班次工时
- var ondutyStime=$("#ondutyStime").val();//值班开始时间
- var ondutyEtime=$("#ondutyEtime").val();//值班结束时间
- var timeOutOvertimeStime=$("#timeOutOvertimeStime").val();//加班开始时间
- var timeOutOvertimeEtime=$("#timeOutOvertimeEtime").val();////加班结束时间
- var timeOutOvertimeHours=$("#timeOutOvertimeHours").val();//加班时间
-
- if(dutyName!=null&&dutyName.length>0){
- if(dutyName.indexOf(",")!=-1){
- layer.alert("班次名称不允许有逗号");
- return false;
- }
- }
-
- if(datumWorkhours.length>0){
- if(dealInputF(datumWorkhours)==false){
- layer.alert("请正确输入总工时");
- return false;
- }
-
- if(dealInputMInValue(datumWorkhours)==false){
- layer.alert("请正确输入总工时");
- return false;
- }
- }
-
- var dutyTypeOption=$("select[name='dutyType']");
- // var dutyType=dutyTypeOption.find("option:selected").text();
- var dutyType=dutyTypeOption.val();//班次类型
- if(dutyType=='changban8h'||dutyType=='riban11h'||dutyType=='yeban11.5'){
-
- if(normalworkStime.length==0){
- layer.alert("请输入正常上班时间");
- return false;
- }
- if(normalworkEtime.length==0){
- layer.alert("请输入正常下班时间");
- return false;
- }
- if(spunchMinute.length==0){
- layer.alert("请输入几分钟前开始打卡");
- return false;
- }
- if(epunchMinute.length==0){
- layer.alert("请输入几分钟后结束打卡");
- return false;
- }
- if(datumWorkhours.length==0){
- layer.alert("请输入总工时");
- return false;
- }
-
- }else if(dutyType=="zhiban"){
- if(ondutyStime.length==0){
- layer.alert("请输入值班开始时间");
- return false;
- }
- if(ondutyEtime.length==0){
- layer.alert("请输入值班结束时间");
- return false;
- }
- }else if(dutyType=="jiaban"){
- if(timeOutOvertimeStime.length==0){
- layer.alert("请输入加班开始时间");
- return false;
- }
- if(timeOutOvertimeEtime.length==0){
- layer.alert("请输入加班结束时间");
- return false;
- }
- }
-
- if(spunchMinute.length>0){
- if(dealInputT(spunchMinute)==false){
- layer.alert("请正确输入几分钟前开始打卡");
- return false;
- }
- }
-
- if(epunchMinute.length>0){
- if(dealInputT(epunchMinute)==false){
- layer.alert("请正确输入几分钟后结束打卡");
- return false;
- }
- }
-
-
-
- if(shiftWorkhours.length>0){
- if(dealInputF(shiftWorkhours)==false){
- layer.alert("请正确输入班次工时");
- return false;
- }
-
- if(dealInputMInValue(shiftWorkhours)==false){
- layer.alert("请正确输入班次工时");
- return false;
- }
- }
-
- if(timeOutOvertimeHours.length>0){
- if(dealInputF(timeOutOvertimeHours)==false){
- layer.alert("请正确输入加班时长");
- return false;
- }
-
- if(dealInputMInValue(timeOutOvertimeHours)==false){
- layer.alert("请正确输入加班时长");
- return false;
- }
- }
- var flag = $("#formobj").Validform().check(true);
- var pid=$("#pid").val();//项目名称
- //alert('ok');
- //if(flag){
- //异步验证班次名称重复
- $.ajax({
- url : "arrangeDutyController.do?ajaxCheckShiftName",
- type : 'post',
- data : {
- dutyName : dutyName,
- pid : pid,
- },
- cache : false,
- success : function(data) {
- var d = data; // ------ $.parseJSON(data);
- if(!d.success){
- layer.alert(d.msg);
- return false;
- }else{
- $("#btnsub").click();
- }
- }
- });
- //}
-
- }
- function callback(data){
-
-
- if(data.success){
- layer.alert(data.msg, function(index){
- window.location.href="arrangeDutyController.do?list";
- layer.close(index);
- });
- }
- else{
- layer.alert(data.msg);
- }
- }
- //返回按钮
- function backHome(){
- window.location.href="arrangeDutyController.do?list";
- }
- //根据项目名称查询项目岗位设定中的名称
- /* $(function(){
- var pjtpostDetailIdOption=$("select[name='pjtpostDetailId']");
- pjtpostDetailIdOption.empty();
- pjtpostDetailIdOption.prepend("<option value='' selected='selected'>---请选择--- </option>"); //为Select插入一个Option(第一个位置)
- pjtpostDetailIdOption.click(function(){
- var myPId=$('#pid').val();
- if(myPId==""){
- layer.alert("请选择项目名称");
- }else{
-
- }
- });
-
- }) */
- //处理周一到周日选中
- /* $(function(){
- var pjtpostDetailIdOption=$("select[name='runway']");
- pjtpostDetailIdOption.change(function(){
- var runway=pjtpostDetailIdOption.val();
-
- if(runway!="CRB_zuowuxiuer"){
- $(".checkOne").each(function(){
- if($(this).prop("checked")){
- $(this).attr("checked", false);
- }
- });
- }
- });
-
- }); */
- </script>
|