Selaa lähdekoodia

计量支付在线审批
计量支付网页端审批页面功能完毕
接口修改完毕
审批页面其他信息现实未完成

NoNZero 9 vuotta sitten
vanhempi
commit
4d2aabb3b4

+ 4 - 2
protected/class/measureauditact.php

@@ -145,15 +145,16 @@ class MeasureauditAct {
         return $this->__measureaudit->update(array('where' => 'pmid=? and numpname=? and times=?', 'param' => array($tenderid, $phaseno, $times)));
     }
 
-    public function setCheckno($maid, $auditcontent = NULL) {
+    public function setCheckno($maid, $auditcontent = NULL,$isonline=0) {
         $this->__measureaudit->mastatus = 'checkno';
         $this->__measureaudit->audittime = time();
+        $this->__measureaudit->onlineaudit = $isonline;
         if (isset($auditcontent) && $auditcontent)
             $this->__measureaudit->auditcontent = $auditcontent;
         return $this->__measureaudit->update(array('where' => 'maid=?', 'param' => array($maid)));
     }
 
-    public function setStatusTo($maid, $status = 3, $auditcontent = '') {
+    public function setStatusTo($maid, $status = 3, $auditcontent = '',$isonline=0) {
         if ($status == 3) {
             $this->__measureaudit->mastatus = 'checked';
         }
@@ -164,6 +165,7 @@ class MeasureauditAct {
             $this->__measureaudit->auditcontent = $auditcontent;
         }
         $this->__measureaudit->audittime = time();
+        $this->__measureaudit->onlineaudit = $isonline;
         return $this->__measureaudit->update(array('where' => 'maid=?', 'param' => array($maid)));
     }
 

+ 6 - 0
protected/class/numofperact.php

@@ -231,6 +231,12 @@ class NumofperAct {
 //	return $this->__numofperact->getOne(array('select' => 'stopnowtotal, currdone', 'where' => 'pmid = ? and currstatus!=\'checkno\'', 'orderby' => 'numpname', 'desc' => 'numpname', 'param' => array($pmid), 'asArray' => TRUE));
     }
 
+    //标段下最新一期
+    public function getLastNew2($pmid) {
+        return $this->__numofperact->getOne(array('where' => 'pmid = ?', 'groupby' => 'pmid, numpname', 'desc' => 'numpname', 'param' => array($pmid), 'asArray' => TRUE));
+//	return $this->__numofperact->getOne(array('select' => 'stopnowtotal, currdone', 'where' => 'pmid = ? and currstatus!=\'checkno\'', 'orderby' => 'numpname', 'desc' => 'numpname', 'param' => array($pmid), 'asArray' => TRUE));
+    }
+
     //更新数据
     public function updateNumofper($tenderid, $phaseno, $itemArray, $times = 0) {
         if (!is_array($itemArray)) {

+ 6 - 0
protected/controller/ClientController.php

@@ -336,6 +336,12 @@ class ClientController extends DooController
                     $uinfoArray[$key]['uid'] = $value['auditoruid'];
                     $uinfoArray[$key]['avatar'] = $this->auth->getAvatar($value['auditoruid']);
                     $uinfoArray[$key]['CheckerMemo'] = $value['auditcontent'];
+                    $uinfoArray[$key]['onlineaudit'] = $value['onlineaudit'];
+                    if($value['audittime']>0){
+                        $uinfoArray[$key]['audittime'] = date('Y-m-d',$value['audittime']);
+                    }else{
+                        $uinfoArray[$key]['audittime'] = 0;
+                    }
                 }
             } else {
                 echo json_encode(array('status' => FALSE, 'msg' => '用户列表不存在'), JSON_UNESCAPED_UNICODE);

+ 81 - 1
protected/controller/RProjectController.php

@@ -267,7 +267,87 @@ class RProjectController extends DooController
 
     public function proReport()
     {
-
+        $lastRowArray = $this->numofperact->getLastNew2($this->params['pmid']);
+        $auditUserArray = $this->measureauditact->getAllAudit($lastRowArray['pmid'],$lastRowArray['numpname'],$lastRowArray['times']);
+        $auditArray = $this->measureauditact->getLastNewRowInfo($lastRowArray['pmid'], $lastRowArray['numpname'], $this->auth->getUid());
+        if($_POST['act'] == 'p'){
+            if ($this->measureauditact->setStatusTo($auditArray['maid'], 3, $_POST['content'],1)) {
+                $countAudit = count($auditUserArray);
+                if ($auditArray['last'] == '1') {
+                    $this->measureauditact->setStatusTo($auditUserArray[0]['maid'], 3);
+                    $this->numofperact->updateAuditStatus($lastRowArray['pmid'], $lastRowArray['numpname'], 'checked', $lastRowArray['times']);
+                    echo json_encode(array('status' => 1), JSON_UNESCAPED_UNICODE);
+                    die();
+                } else {
+                    if (($countAudit == 2) && ($auditUserArray[0]['last'] == 1) && ($auditUserArray[1]['maid'] == $auditArray['maid'])) {
+                        $this->measureauditact->updateMastatus($auditUserArray[0]['maid']);
+                        $this->numofperact->updateAuditStatus($lastRowArray['pmid'], $lastRowArray['numpname'], 'checking', $lastRowArray['times']);
+                        echo json_encode(array('status' => 1), JSON_UNESCAPED_UNICODE);
+                        die();
+                    }
+                    if (($countAudit > 2)) {
+                        foreach ($auditUserArray as $k => $v) {
+                            if ($v['maid'] == $auditArray['maid']) {
+                                if ($k == ($countAudit - 1)) {//如果是最后一个
+                                    $this->measureauditact->updateMastatus($auditUserArray[0]['maid']);
+                                } else {
+                                    $this->measureauditact->updateMastatus($auditUserArray[$k + 1]['maid']);
+                                }
+                                $this->numofperact->updateAuditStatus($lastRowArray['pmid'], $lastRowArray['numpname'], 'checking', $lastRowArray['times']);
+                                echo json_encode(array('status' => 1), JSON_UNESCAPED_UNICODE);
+                                die();
+                            }
+                        }
+                    }
+                }
+            }
+        }
+        if($_POST['act'] == 'np'){
+            $this->measureauditact->setCheckno($auditArray['maid'], $_POST['content'],1);
+            $this->numofperact->updateAuditStatus($lastRowArray['pmid'], $lastRowArray['numpname'], 'checkno', $lastRowArray['times']);
+            echo json_encode(array('status' => 1), JSON_UNESCAPED_UNICODE);
+            die();
+        }
+        $this->data['pmid'] = $lastRowArray['pmid'];
+        $this->data['numpname'] = $lastRowArray['numpname'];
+        $this->data['times'] = $lastRowArray['times'];
+        $this->data['pid'] = $this->params['pid'];
+        foreach($auditUserArray as $key => $value){
+            if($value['auditoruid']==$this->auth->getUid()){
+                $this->data['mastatus'] = $value['mastatus'];
+                $this->data['maid'] = $value['maid'];
+            }
+            if($value['mastatus']=='uncheck'){
+                $statuStr = '';
+                $statucolorStr = '';
+                $classStr = '';
+                $icoStr = '';
+            }
+            if($value['mastatus']=='checking'){
+                $statuStr = '<h4 class="colOrange">审核中</h4>';
+                $statucolorStr = 'colOrange';
+                $classStr = 'wait';
+                $icoStr = 'k';
+            }
+            if($value['mastatus']=='checked'){
+                $statuStr = '<h4 class="colGreen">审批完成('.date('Y-m-d',$value['audittime']).')</h4>';
+                    $statucolorStr = 'colGreen';
+                $classStr = 'pass';
+                $icoStr = 'd';
+            }
+            if($value['mastatus']=='checkno'){
+                $statuStr = '<h4 class="colRed">审批不通过('.date('Y-m-d',$value['audittime']).')</h4>';
+                $statucolorStr = 'colRed';
+                $classStr = 'notpass';
+                $icoStr = 'e';
+            }
+            $auditUserArray[$key]['statuStr'] = $statuStr;
+            $auditUserArray[$key]['statucolorStr'] = $statucolorStr;
+            $auditUserArray[$key]['classStr'] = $classStr;
+            $auditUserArray[$key]['icoStr'] = $icoStr;
+            $auditUserArray[$key]['name'] = $this->profile->getProWithUid($value['auditoruid'])['name'];
+        }
+        $this->data['auditArray'] = $auditUserArray;
         $this->render('r-project-section-report', $this->data, TRUE);
     }
 }

+ 2 - 1
protected/model/measureaudit.php

@@ -21,9 +21,10 @@ class MeasureAudit extends DooModel {
     public $audittime;
     public $auditcontent;
     public $intime;
+    public $onlineaudit;
     public $_table = 'jl_measure_audit';
     public $_primarykey = 'maid';
-    public $_fields = array('maid', 'pid', 'creatoruid', 'auditoruid', 'mpid', 'pmid', 'stid', 'numpname', 'times', 'mastatus', 'last', 'audittime', 'auditcontent', 'intime');
+    public $_fields = array('maid', 'pid', 'creatoruid', 'auditoruid', 'mpid', 'pmid', 'stid', 'numpname', 'times', 'mastatus', 'last', 'audittime', 'auditcontent', 'intime','onlineaudit');
 
     public function __construct() {
         parent::setupModel(__CLASS__);

+ 41 - 41
protected/view/r-project-section-report.html

@@ -92,21 +92,31 @@
       <!--审批操作栏-->
       <div class="bottomToolsbar">
         <div class="avatarBar clearfix">
+          <!-- if {{mastatus}}!='checking' -->
+          <!-- if {{mastatus}}=='uncheck' -->
           <div class="fR">
             <h4 class="colGray">待审</h4>
           </div>
+          <!-- endif -->
+          <!-- if {{mastatus}}=='checked' -->
           <div class="fR">
             <h4 class="colGreen">审批通过</h4>
           </div>
+          <!-- endif -->
+          <!-- if {{mastatus}}=='checkno' -->
           <div class="fR">
             <h4 class="colRed">审批不通过</h4>
           </div>
+          <!-- endif -->
+          <!-- endif -->
+          <!-- if {{mastatus}}=='checking' -->
           <div class="fR">
               <div class="btn-group dropup">
                 <a class="btn btn-success" data-toggle="modal" href="#reportPass"><span aria-hidden="true" data-icon="d"></span>&nbsp;审批通过</a>
               </div>
               <a type="button" class="btn btn-danger" data-toggle="modal" href="#reportNopass"><span aria-hidden="true" data-icon="e"></span>&nbsp;审批不通过</a>
           </div>
+          <!-- endif -->
           <ul class="avatar clearfix">
             <li class="name">我</li>
           </ul>
@@ -114,52 +124,21 @@
       </div>
       <!--审批操作栏-->
       <!--审批列表-->
+           <!-- loop auditArray -->
       <div class="reportList">
         <div class="avatarBar clearfix">
           <div class="fR">
-            <h4 class="colGreen">审批完成(2015-02-02)</h4>
+            {{auditArray' value.statuStr}}
           </div>
           <ul class="avatar clearfix">
             <li class="num">1</li>
-            <li title="审批通过" class="pass"><span data-icon="d" aria-hidden="true"></span><img src="{{rootUrl}}global/images/avtra.png"></li>
-            <li class="name colGreen">王三</li>
-            <li class="con"><p>审批意见审批意见审批意见审批意见审批意见,萨大声的,审批意见审批意见审批意见审批意见审批意见,萨大声的审批意见审批意见审批意见审批意见审批意见,萨大声的</p></li>
-          </ul>
-        </div>
-      </div>
-      <div class="reportList">
-        <div class="avatarBar clearfix">
-          <div class="fR">
-            <h4 class="colOrange">审批中</h4>
-          </div>
-          <ul class="avatar clearfix">
-            <li class="num">2</li>
-            <li title="审批中" class="wait"><span data-icon="k" aria-hidden="true"></span><img src="{{rootUrl}}global/images/avtra.png"></li>
-            <li class="name colOrange">张三(我)</li>
-          </ul>
-        </div>
-      </div>
-      <div class="reportList">
-        <div class="avatarBar clearfix">
-          <ul class="avatar clearfix">
-            <li class="num">3</li>
-            <li title="" class=""><img src="{{rootUrl}}global/images/avtra.png"></li>
-            <li class="name">李雷</li>
-          </ul>
-        </div>
-      </div>
-      <div class="reportList">
-        <div class="avatarBar clearfix">
-          <div class="fR">
-            <h4 class="colRed">审批不通过(2015-02-02)</h4>
-          </div>
-          <ul class="avatar clearfix">
-            <li class="num">3</li>
-            <li title="审批不通过" class="notpass"><span data-icon="e" aria-hidden="true"></span><img src="{{rootUrl}}global/images/avtra.png"></li>
-            <li class="name colRed">王五</li>
+            <li title="审批通过" class="{{auditArray' value.classStr}}"><span data-icon="{{auditArray' value.icoStr}}" aria-hidden="true"></span><img src="{{rootUrl}}global/images/avtra.png"></li>
+            <li class="name {{auditArray' value.statucolorStr}}">{{auditArray' value.name}}</li>
+            <li class="con"><p>{{auditArray' value.auditcontent}}</p></li>
           </ul>
         </div>
       </div>
+           <!-- endloop -->
       <!--审批列表-->
     </div>
 
@@ -176,13 +155,13 @@
         
       <div class="form">
         <form>
-        <textarea class="form-control" rows="3" placeholder="填写审批通过的意见" style="width:510px"></textarea>
+        <textarea  name="content" id="content" class="form-control" rows="3" placeholder="填写审批通过的意见" style="width:510px"></textarea>
         </form>
       </div>
       </div>
       <div class="modal-footer">
         <button class="btn" data-dismiss="modal" aria-hidden="true">关闭</button>
-        <button class="btn btn-success">确认审批通过</button>
+        <button class="btn btn-success auditclass" act="p" maid="{{maid}}" pmid="{{pmid}}" numpname="{{numpname}}" times="{{times}}"  id="pass">确认审批通过</button>
       </div>
     </div>
     <!-- 审批通过 -->  
@@ -196,15 +175,36 @@
         
       <div class="form">
         <form>
-        <textarea class="form-control" rows="3" placeholder="填写审批不通过的意见" style="width:510px"></textarea>
+        <textarea name="content" id="content" class="form-control" rows="3" placeholder="填写审批不通过的意见" style="width:510px"></textarea>
         </form>
       </div>
       </div>
       <div class="modal-footer">
         <button class="btn" data-dismiss="modal" aria-hidden="true">关闭</button>
-        <button class="btn btn-danger">确认审批不通过</button>
+        <button class="btn btn-danger auditclass" act="np" maid="{{maid}}" pmid="{{pmid}}" numpname="{{numpname}}" times="{{times}}">确认审批不通过</button>
       </div>
     </div>
     <!-- 审批不通过 -->      
 <script type="text/javascript">autoFlashHeight();</script>
+<script type="text/javascript">
+  $(document).ready(function(){
+    $(".auditclass").click(function (){
+        var pmid = $(this).attr('pmid');
+        var numpname = $(this).attr('numpname');
+        var times = $(this).attr('times');
+        var content = $(this).parent().parent().find("textarea").val();
+        var act = $(this).attr('act');
+        $.ajax({
+            type:"POST",
+            dataType:"json",
+            cache:false,
+            data:{"act":act,"pmid":pmid,"numpname":numpname,"times":times,"content":content},
+            url:"/rproject/{{pid}}/section/{{pmid}}/report",
+            success: function(data){
+                console.log(data);
+            }
+        });
+    });
+  })
+</script>
 </body>