Browse Source

台账优化

wufeng 2 years ago
parent
commit
766c80ff3d

+ 26 - 0
app/admin/controller/After.php

@@ -1181,4 +1181,30 @@ class After extends Base
 
     }
 
+
+    /**
+     * @todo 售后功能新写的接口,暂存
+     * //根据审核完成的售后申请单,创建新的销售单和采购单
+     * public function newCreateAfter(){
+     *
+     * $param = $this->request->only(['token','returnCode'],'post','trim');
+     *
+     * $val = Validate::rule(['token'=>'require','returnCode|售后申请单编号'=>'require']);
+     *
+     * if(!$val->check($param)) return error_show(1005,$val->getError());
+     *
+     * //查询售后申请单详情
+     * $info = Db::name('order_return')
+     * ->where('returnCode',$param['returnCode'])
+     * ->where('is_del',0)
+     * ->find();
+     *
+     * if(empty($info)) return error_show(1005,'该售后申请单不存在');
+     *
+     * if($info['status']!=5) return error_show(1005,'该售后申请单尚未审核完成');
+     *
+     * }
+     *
+     **/
+
 }

+ 21 - 0
app/admin/controller/Consult.php

@@ -595,6 +595,27 @@ class Consult extends Base
                     Db::rollback();
                     return error_show(1004,'咨询单结束时间更新失败');
                 }
+
+
+                //维护台账记录
+                $insert_standing_book_data=[
+                    'standBookNo'=>makeNo('IO'),
+                    'infoNo'=>$innew,
+                    'addtime' => date('Y-m-d H:i:s'),
+                    'updatetime' => date('Y-m-d H:i:s')
+                ];
+
+                $temp_project = Db::name('consult_order')->field('id,projectNo,khNo,companyNo')->where(['zxNo'=>$zxinfo['zxNo'], 'is_del'=>0])->find();
+
+                if(!empty($temp_project)){
+                    $insert_standing_book_data['projectNo']=$temp_project['projectNo'];
+                    $insert_standing_book_data['companyNo']=$temp_project['companyNo'];
+                    $insert_standing_book_data['customer_code']=$temp_project['khNo'];
+                }
+
+                Db::name('standing_book')->insert($insert_standing_book_data);
+
+
                 Db::commit();
                 return app_show(0,"咨询新建成功",["infoNo"=>$innew]);
             }

+ 16 - 1
app/admin/controller/Purchin.php

@@ -255,7 +255,22 @@ class Purchin extends Base
                 $order = ["order_code"=>$cgdNo,"status"=>$cgdinfo['status'],"action_remark"=>'',"action_type"=>"edit"];
 
                 //维护台账信息
-                Db::name('standing_book')->where('cgdNo', $cgdNo)->update(['wsm_in_code' => $wsm_in_code, 'updatetime' => date('Y-m-d H:i:s')]);
+                $rs = Db::name('standing_book')
+                    ->where('cgdNo', $cgdNo)
+                    ->order('wsm_in_code')
+                    ->find();
+
+                if(!empty($rs)){
+                    if($rs['wsm_in_code']=='')  Db::name('standing_book')->where('id', $rs['id'])->update(['wsm_in_code' => $wsm_in_code, 'updatetime' => date('Y-m-d H:i:s')]);
+                    else {
+                        unset($rs['id']);
+                        $rs['updatetime']=date('Y-m-d H:i:s');
+                        $rs['wsm_in_code']=$wsm_in_code;
+                        $rs['standBookNo']=makeNo('IO');
+                        Db::name('standing_book')->insert($rs);
+                    }
+
+                }
 
                 if($status==1){
                             Db::commit();

+ 13 - 3
app/admin/controller/Sale.php

@@ -1211,7 +1211,7 @@ class Sale extends Base
                 return error_show(1004,"未找到方案信息");
             }
             $feedid = array_column($feedbackid,"feedback_id");
-            foreach ($planinfo as $value){
+            foreach ($planinfo as $key=>$value){
                 $good=[];
                 $feedback = Db::name("project_feedback")->where(["id"=>$value['feedback_id'],"projectNo"=>$plan['projectNo'],
                     "is_del"=>0])->find();
@@ -1285,8 +1285,18 @@ class Sale extends Base
                     return error_show(1002, "项目订单生成失败");
                 }
 
-                //处理台账
-                Db::name('standing_book')->where('projectNo',$plan['projectNo'])->update($standing_book_data);
+                //处理台账(一个项目会生成多个销售订单,第一个更新,其余的新增)
+                if ($key == 0) Db::name('standing_book')->where('projectNo', $plan['projectNo'])->update($standing_book_data);
+                else {
+                    $temp = Db::name('standing_book')->where('projectNo', $plan['projectNo'])->find();
+                    if (!empty($temp)) {
+                        unset($temp['id']);
+                        $temp = array_merge($temp, $standing_book_data);
+                        $temp['standBookNo'] = makeNo('IO');
+                        Db::name('standing_book')->insert($temp);
+                    }
+                }
+
             }
             $old_plan_status = $plan['status'];
             $plan['status']=2;