model('iso'); $itemsObj = app::get('taoguaniostockorder')->model('iso_items'); $iostock_data = $batch_data = array(); $iso_detail = $isoObj->dump(array('iso_id'=>$iso_id,'type_id'=>$this->_typeId),'*'); if ($data['items']){ $iso_items_detail = $data['items']; } $supplier_id = $data['supplier_id'] ? $data['supplier_id'] : $iso_detail['supplier_id']; if ($supplier_id && !$data['supplier_name']){ $supplierObj = app::get('purchase')->model("supplier"); $supplier = $supplierObj->dump($supplier_id,'name'); $data['supplier_name'] = $supplier['name']; } $operator = kernel::single('desktop_user')->get_name(); $operator = $operator=='' ? 'system' : $operator; $oper = $iso_detail['oper']== '' ? $data['operator'] : $iso_detail['oper']; $create_time = $data['operate_time'] == '' ? $iso_detail['create_time']: $data['operate_time']; if ($iso_items_detail){ foreach ($iso_items_detail as $k=>$v){ $data['branch_id'] = $data['branch_id'] ? $data['branch_id'] : $iso_detail['branch_id']; $branch_id = $v['branch_id'] ? $v['branch_id'] : $data['branch_id']; $memo = $v['memo'] ? $v['memo'] : $data['memo']; $tmp = array( 'branch_id' => $branch_id, 'original_bn' => $data['original_bn']!='' ? $data['original_bn'] : $iso_detail['iso_bn'], 'original_id' => $data['original_id']!='' ? $data['original_id'] : $iso_id, 'original_item_id' => $v['iso_items_id'], 'supplier_id' => $supplier_id, 'supplier_name' => $data['supplier_name'], 'bn' => $v['bn'], 'iostock_price' => $v['price']!='' ? $v['price']: '0', 'nums' => $v['nums'], 'cost_tax' => $iso_detail['cost_tax'], 'oper' => $oper, 'create_time' => $create_time, 'operator' => $operator, 'memo' => $memo, 'bill_type' => $iso_detail['bill_type'], 'business_bn' => $iso_detail['business_bn'], ); $iostock_data[] = $tmp; if(!in_array($this->_typeId,array('10'))){#采购退货出库 $tmp['original_id'] = $iso_id; $tmp['original_bn'] = $iso_detail['iso_bn']; } $batch_data[] = $tmp; } $this->dealBatch($batch_data, ['returned_purchase','iso'], '-'); } return $iostock_data; } /** * 创建 * @param mixed $params 参数 * @param mixed $data 数据 * @param mixed $msg msg * @return mixed 返回值 */ public function create($params, &$data, &$msg=null){ $result = parent::create($params, $data, $msg); if(in_array($this->_typeId,array('10','7','700'))){ $io = '0'; kernel::single('console_iostockorder')->do_iostock_refunds($params['iso_id'],$io,$other_msg); } return $result; } }