cqpCow 2 jaren geleden
bovenliggende
commit
9b777f0386

+ 158 - 5
.idea/workspace.xml

@@ -1,10 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="ChangeListManager">
-    <list default="true" id="b5852db3-28ab-419d-82cf-b6c0f6b99397" name="变更" comment="">
+    <list default="true" id="b5852db3-28ab-419d-82cf-b6c0f6b99397" name="变更" comment="fyy">
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/Http/Controllers/Api/TechnologyController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Api/TechnologyController.php" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/Service/TechnologyService.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Service/TechnologyService.php" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/Http/Controllers/Api/FyyOrderController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Api/FyyOrderController.php" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/Service/FyyOrderService.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Service/FyyOrderService.php" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/Service/FyySqlServerService.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Service/FyySqlServerService.php" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/routes/api.php" beforeDir="false" afterPath="$PROJECT_DIR$/routes/api.php" afterDir="false" />
     </list>
     <option name="SHOW_DIALOG" value="false" />
@@ -17,8 +18,21 @@
     <execution />
   </component>
   <component name="Git.Settings">
+    <option name="RECENT_BRANCH_BY_REPOSITORY">
+      <map>
+        <entry key="$PROJECT_DIR$" value="master" />
+      </map>
+    </option>
     <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
   </component>
+  <component name="GitSEFilterConfiguration">
+    <file-type-list>
+      <filtered-out-file-type name="LOCAL_BRANCH" />
+      <filtered-out-file-type name="REMOTE_BRANCH" />
+      <filtered-out-file-type name="TAG" />
+      <filtered-out-file-type name="COMMIT_BY_MESSAGE" />
+    </file-type-list>
+  </component>
   <component name="PhpWorkspaceProjectConfiguration">
     <include_path>
       <path value="$PROJECT_DIR$/vendor/symfony/polyfill-ctype" />
@@ -124,7 +138,7 @@
     <property name="RunOnceActivity.OpenProjectViewOnStart" value="true" />
     <property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
     <property name="WebServerToolWindowFactoryState" value="false" />
-    <property name="last_opened_file_path" value="$PROJECT_DIR$/app/Model" />
+    <property name="last_opened_file_path" value="$PROJECT_DIR$" />
     <property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
     <property name="nodejs_npm_path_reset_for_default_project" value="true" />
     <property name="nodejs_package_manager_path" value="npm" />
@@ -132,9 +146,9 @@
   </component>
   <component name="RecentsManager">
     <key name="CopyFile.RECENT_KEYS">
+      <recent name="D:\phpstudy_pro\WWW\jf_admin2.0\app\Http\Controllers\Api" />
       <recent name="D:\phpstudy_pro\WWW\jf_admin2.0\app\Model" />
       <recent name="D:\phpstudy_pro\WWW\jf_admin2.0\app\Service" />
-      <recent name="D:\phpstudy_pro\WWW\jf_admin2.0\app\Http\Controllers\Api" />
     </key>
   </component>
   <component name="RunManager">
@@ -158,12 +172,123 @@
       <workItem from="1686021203384" duration="14595000" />
       <workItem from="1686099374239" duration="19779000" />
       <workItem from="1686185795830" duration="871000" />
+      <workItem from="1689295780705" duration="24032000" />
+      <workItem from="1689556098917" duration="6752000" />
+      <workItem from="1689641978733" duration="1873000" />
+      <workItem from="1689728531740" duration="5283000" />
+      <workItem from="1689837620108" duration="2910000" />
+      <workItem from="1689902257272" duration="2250000" />
+      <workItem from="1690035782838" duration="103000" />
+      <workItem from="1690077617133" duration="2033000" />
+      <workItem from="1690177920127" duration="10062000" />
+      <workItem from="1690247765342" duration="7116000" />
+      <workItem from="1690366710827" duration="615000" />
+      <workItem from="1690438112349" duration="1922000" />
+      <workItem from="1690521339535" duration="8403000" />
+      <workItem from="1690599347262" duration="1259000" />
+      <workItem from="1690603154164" duration="261000" />
+      <workItem from="1690605045643" duration="87000" />
+      <workItem from="1690625873796" duration="19000" />
+      <workItem from="1690720108633" duration="4211000" />
+      <workItem from="1690765520010" duration="19174000" />
+      <workItem from="1690852371561" duration="9800000" />
+      <workItem from="1690938513232" duration="8893000" />
+      <workItem from="1691023846625" duration="6703000" />
+      <workItem from="1691110525530" duration="2375000" />
+      <workItem from="1691382914683" duration="297000" />
+      <workItem from="1691489537588" duration="6041000" />
+      <workItem from="1691542453161" duration="8574000" />
+    </task>
+    <task id="LOCAL-00001" summary="jf2.0">
+      <created>1689228284141</created>
+      <option name="number" value="00001" />
+      <option name="presentableId" value="LOCAL-00001" />
+      <option name="project" value="LOCAL" />
+      <updated>1689228284141</updated>
+    </task>
+    <task id="LOCAL-00002" summary="fyy">
+      <created>1689316707927</created>
+      <option name="number" value="00002" />
+      <option name="presentableId" value="LOCAL-00002" />
+      <option name="project" value="LOCAL" />
+      <updated>1689316707927</updated>
+    </task>
+    <task id="LOCAL-00003" summary="fyy">
+      <created>1689732347737</created>
+      <option name="number" value="00003" />
+      <option name="presentableId" value="LOCAL-00003" />
+      <option name="project" value="LOCAL" />
+      <updated>1689732347737</updated>
+    </task>
+    <task id="LOCAL-00004" summary="fyy">
+      <created>1690248269830</created>
+      <option name="number" value="00004" />
+      <option name="presentableId" value="LOCAL-00004" />
+      <option name="project" value="LOCAL" />
+      <updated>1690248269831</updated>
+    </task>
+    <task id="LOCAL-00005" summary="fyy">
+      <created>1690249897762</created>
+      <option name="number" value="00005" />
+      <option name="presentableId" value="LOCAL-00005" />
+      <option name="project" value="LOCAL" />
+      <updated>1690249897762</updated>
+    </task>
+    <task id="LOCAL-00006" summary="fyy 测试接口">
+      <created>1690530139470</created>
+      <option name="number" value="00006" />
+      <option name="presentableId" value="LOCAL-00006" />
+      <option name="project" value="LOCAL" />
+      <updated>1690530139470</updated>
+    </task>
+    <task id="LOCAL-00007" summary="fyy 测试数据">
+      <created>1690532867480</created>
+      <option name="number" value="00007" />
+      <option name="presentableId" value="LOCAL-00007" />
+      <option name="project" value="LOCAL" />
+      <updated>1690532867480</updated>
+    </task>
+    <task id="LOCAL-00008" summary="fyy">
+      <created>1690953748966</created>
+      <option name="number" value="00008" />
+      <option name="presentableId" value="LOCAL-00008" />
+      <option name="project" value="LOCAL" />
+      <updated>1690953748966</updated>
+    </task>
+    <task id="LOCAL-00009" summary="fyy">
+      <created>1691042581507</created>
+      <option name="number" value="00009" />
+      <option name="presentableId" value="LOCAL-00009" />
+      <option name="project" value="LOCAL" />
+      <updated>1691042581507</updated>
+    </task>
+    <task id="LOCAL-00010" summary="fyy">
+      <created>1691489715976</created>
+      <option name="number" value="00010" />
+      <option name="presentableId" value="LOCAL-00010" />
+      <option name="project" value="LOCAL" />
+      <updated>1691489715976</updated>
     </task>
+    <task id="LOCAL-00011" summary="fyy">
+      <created>1691495150166</created>
+      <option name="number" value="00011" />
+      <option name="presentableId" value="LOCAL-00011" />
+      <option name="project" value="LOCAL" />
+      <updated>1691495150166</updated>
+    </task>
+    <option name="localTasksCounter" value="12" />
     <servers />
   </component>
   <component name="TypeScriptGeneratedFilesManager">
     <option name="version" value="3" />
   </component>
+  <component name="VcsManagerConfiguration">
+    <MESSAGE value="jf2.0" />
+    <MESSAGE value="fyy 测试接口" />
+    <MESSAGE value="fyy 测试数据" />
+    <MESSAGE value="fyy" />
+    <option name="LAST_COMMIT_MESSAGE" value="fyy" />
+  </component>
   <component name="XDebuggerManager">
     <breakpoint-manager>
       <breakpoints>
@@ -185,6 +310,34 @@
           </properties>
           <option name="timeStamp" value="3" />
         </line-breakpoint>
+        <line-breakpoint enabled="true" type="php-line-method">
+          <url>file://$PROJECT_DIR$/app/Http/Controllers/Api/TestController.php</url>
+          <line>111</line>
+          <properties>
+            <option name="className" value="\App\Http\Controllers\Api\TestController" />
+            <option name="methodName" value="output_value_month1" />
+          </properties>
+          <option name="timeStamp" value="5" />
+        </line-breakpoint>
+        <line-breakpoint enabled="true" type="php-line-method">
+          <url>file://$PROJECT_DIR$/app/Service/FyyOrderService.php</url>
+          <line>98</line>
+          <properties>
+            <option name="className" value="\App\Service\FyyOrderService" />
+            <option name="methodName" value="orderList" />
+          </properties>
+          <option name="timeStamp" value="7" />
+        </line-breakpoint>
+        <line-breakpoint enabled="true" type="php">
+          <url>file://$PROJECT_DIR$/routes/api.php</url>
+          <line>21</line>
+          <option name="timeStamp" value="4" />
+        </line-breakpoint>
+        <line-breakpoint enabled="true" type="php">
+          <url>file://$PROJECT_DIR$/app/Service/FyySqlServerService.php</url>
+          <line>326</line>
+          <option name="timeStamp" value="6" />
+        </line-breakpoint>
       </breakpoints>
     </breakpoint-manager>
   </component>

+ 13 - 0
app/Http/Controllers/Api/FyyOrderController.php

@@ -25,6 +25,19 @@ class FyyOrderController extends BaseController
         dump('ok');die;
     }
 
+    public function fyySaveOutOrder(Request $request)
+    {
+        $service = new FyyOrderService();
+        $userData = $request->userData->toArray();
+        list($status,$data) = $service->fyySaveOutOrder($request->all());
+
+        if($status){
+            return $this->json_return(200,'',$data);
+        }else{
+            return $this->json_return(201,$data);
+        }
+    }
+
     public function add(Request $request)
     {
         $service = new FyyOrderService();

+ 11 - 0
app/Service/FyyOrderService.php

@@ -199,4 +199,15 @@ class FyyOrderService extends Service
 
         return [true,''];
     }
+
+    public function fyySaveOutOrder($data){
+        if(empty($data['order_number'])) return [false,'销售订单号不能为空!'];
+
+        //销售出库单生成
+        $sqlServerModel = new FyySqlServerService();
+        list($status,$return) = $sqlServerModel->U8Rdrecord32Save($data);
+        if(! $status) return [false, $return];
+
+        return [true,''];
+    }
 }

+ 107 - 1
app/Service/FyySqlServerService.php

@@ -333,7 +333,7 @@ class FyySqlServerService extends Service
                 "sPassword"=> ""
             ],
             "data"=>[
-                "ccode"=>$msg,
+                "ccode"=>'',
                 "ddate"=>date("Y-m-d"),
                 "cmaker"=>"董晓磊",
                 "dnmaketime"=> date("Y-m-d"),
@@ -352,6 +352,86 @@ class FyySqlServerService extends Service
         return [$return['flag'], $return['msg']];
     }
 
+    //销售出库单保存接口给以及审核
+    public function U8Rdrecord32Save($data,$bredvouch = 0){
+        if(! empty($this->error)) return [false,$this->error];
+        date_default_timezone_set("PRC");
+
+        $return = $this->getDataFromDispatchList($data);
+        if(empty($return)) return [false,'根据销售订单号:'. $data['order_number'] . '未找到发货单数据!'];
+
+        $main = $return[0];
+        if($bredvouch){
+            $cmemo = '备注一';
+        }else{
+            $cmemo = '销售单号:'.$main['out_order'];
+        }
+
+        //数据
+        $bodys = [];
+        foreach ($return as $value){
+            $bodys[] = [
+                "idlsid"=>$value['idlsid'],
+                "cdlcode"=>"",
+                "dlrowno"=>"",
+                "cbdlcode"=>"",
+                "cinvcode"=>$value['cinvcode'],
+                "cposition"=>$value['cposition'],
+                "cbatch"=>$value['cbatch'],
+                "iquantity"=>$value['iquantity'],
+                "inum"=>$value['inum'],
+                "iinvexchrate"=>$value['iinvexchrate'],
+                "iunitcost"=>"",
+                "iprice"=>"",
+                "cbmemo"=>"",
+            ];
+        }
+        $post = [
+            "password"=>"cloud@123456",
+            "entity"=>"U8Rdrecord32Save",
+            "login"=>[
+                "sAccID"=> "(default)@001",
+                "sDate"=> date("Y-m-d"),
+                "sServer"=> '127.0.0.1',
+                "sUserID"=> "董晓磊",
+                "sSerial"=> "",
+                "sPassword"=> ""
+            ],
+            "data"=>[
+                "ccode"=>'',
+                "ddate"=>date("Y-m-d"),
+                "cmaker"=>"董晓磊",
+                "dnmaketime"=> date("Y-m-d"),
+                "IsExamine"=>true,
+                "bredvouch"=> $bredvouch,
+                "cwhcode"=>"02",
+                "cdepcode"=>"06",
+                "crdcode"=>"102",
+                "cmemo"=> $cmemo,
+                "cdefine10" => $main['customer_name'], //客户名称
+                "bodys"=>$bodys
+            ]
+        ];
+
+        $return = $this->post_helper($this->url,json_encode($post), ['Content-Type:application/json']);
+        return [$return['flag'], $return['msg']];
+    }
+
+    public function getDataFromDispatchList($data){
+        $message = $this->db->table('DispatchList as a')
+            ->leftJoin('DispatchLists as b','b.DLID','a.DLID')
+            ->where('a.cSOcode',$data['order_number'])
+            ->select('a.cDefine10 as customer_name','a.cSOCode as out_order','b.iDLsID as idlsid','b.cInvCode as cinvcode','b.cPosition as cposition','b.cBatch as cbatch','b.iQuantity as iquantity','b.iNum as inum','b.iInvExchRate as iinvexchrate')
+            ->get()->toArray();
+        if(! empty($message)){
+            foreach ($message as $key => $value){
+                $message[$key] = (array)$value;
+            }
+        }
+
+        return $message;
+    }
+
     //产成品入库单单据号
     public function createOrderNumberAboutSCRK(){
         date_default_timezone_set("PRC");
@@ -378,6 +458,32 @@ class FyySqlServerService extends Service
         return [true,$ccode];
     }
 
+    //销售出库单单据号
+    public function createOrderNumberAboutXC(){
+        date_default_timezone_set("PRC");
+
+        $current_month = date('m'); // 获取当前月份
+        $date1 = date('y') . $current_month  ; // 格式 "2307"
+        $date2 = date('Y') . $current_month; // 格式 "202307"
+
+        $record = $this->db->table('VoucherHistory')
+            ->where('CardNumber','0303')
+            ->whereRaw("(cSeed = '{$date1}' or cSeed = '{$date2}')")
+            ->select('cNumber')
+            ->first();
+        $record = (array)$record;
+        if(empty($record)) return [false,'未找到销售出库单当月流水号信息!'];
+
+        $tmp = $record['cNumber'] + 1;
+        if(strlen($tmp) > 4) return [false,'销售出库单当月流水号超过四位数!'];
+
+        $number = str_pad($tmp,4,'0',STR_PAD_LEFT);
+        $number = $tmp . $number;
+        $ccode = "XC" . $date2 . $number;
+
+        return [true,$ccode];
+    }
+
     public function post_helper($url, $data,$header = [],$timeout = 60){
         $ch = curl_init();
         curl_setopt($ch, CURLOPT_URL, $url);

+ 1 - 0
routes/api.php

@@ -23,6 +23,7 @@ Route::any('getHeaderWord', 'Api\HeaderWordController@getHeaderWord');
 Route::any('getHeaderSetting', 'Api\HeaderWordController@getHeaderSettings');
 Route::any('deviceList', 'Api\Device\DeviceController@deviceList');
 Route::any('fyy_set','Api\FyyOrderController@setFyy');
+Route::any('fyySaveOutOrder','Api\FyyOrderController@fyySaveOutOrder');
 
 //测试接口
 Route::any('job', 'Api\JobController@processDataJobAdd');