コード例 #1
0
ファイル: lead_model.php プロジェクト: aslijiasheng/jasongo
 /**
  * 线索转化成功之后修改线索转化的标示
  * $id 是线索的id编号
  * $res 修改之后的结果
  */
 public function lead_success($id)
 {
     $data["Lead_int04"] = 1001;
     $data["last_transfer_date"] = "to_date('" . dataReduce8("Y-m-d H:i:s", date('Y-m-d H:i:s')) . "','yyyy-mm-dd hh24:mi:ss')";
     foreach ($data as $k => $v) {
         if ($k == "last_transfer_date") {
             $this->db->set($k, $v, false);
         } else {
             $this->db->set($k, $v);
         }
     }
     $this->db->where('lead_id', $id);
     $res = $this->db->update('tc_lead');
     return $res;
 }
コード例 #2
0
 /**
  * @param $data 插入明细的数据
  * @param $module  插入对象
  * @param int $OrgID
  * @param $UserID
  * @return mixed 插入成功或者失败信息
  */
 public function detail_add($data, $module, $OrgID = 1, $UserID)
 {
     $this->load->model('admin/nextid', 'nextid');
     $time = date("Y-m-d H:i:s");
     $type_id = $data[$module . 'Type'];
     $object_attr = $this->attr->object_attr($OrgID, $module);
     //查出对象对应属性信息
     $tbl_name = $this->GetAllTbl($OrgID, $module);
     foreach ($tbl_name as $k => $v) {
         $insert[$v] = array();
     }
     $obj_data = $this->obj->NameGetObj($OrgID, $module);
     $main_tbl = $obj_data['MAIN_TABLE'];
     $pk = $obj_data['KEY_ATTR_FLD'];
     $IDformat = $this->nextid->NewFormatID($type_id, $obj_data, $OrgID);
     if (!empty($IDformat['FORMAT'])) {
         $FormatID = $this->nextid->NewID('LEAD_USERID_' . $type_id . '_' . date('Ymd'), $OrgID);
         $strarr = array('{YYYY}' => date('Y'), '{MM}' => date('m'), '{DD}' => date('d'), '{0000}' => str_pad($FormatID, 4, "0", STR_PAD_LEFT));
         $lead_userid = strtr($IDformat['FORMAT'], $strarr);
         $data[$IDformat['ATTR_NAME']] = $lead_userid;
     }
     $nextid = $this->nextid->NewID($main_tbl, $OrgID);
     $userdata = $this->user->SelectOne($OrgID, $UserID);
     // foreach ($ndata as $k => $v) {
     //     if ($object_attr[$k]['is_must'] && empty($data[$k])) {
     //         $res['res'] = "fail";
     //         $res['error_code'] = "201";
     //         $res['msg'] = "缺少\"" . $k . "\"参数,保存失败!";
     //         echo "\"" . $object_attr[$k]['label'] . "\"未填,保存失败!";
     //         return $res;
     //     }
     // }
     $ndata = $this->transform($data, $module, $OrgID);
     if ($ndata == false || empty($ndata)) {
         $res['res'] = 'fail';
         $res['msg'] = '保存失败!';
         return $res;
     }
     foreach ($ndata as $k => $v) {
         if (empty($v)) {
             continue;
         }
         $insert[$object_attr[$k]['tbl_name']][$k] = $v;
     }
     //$this->db->trans_start();
     foreach ($insert as $k => $v) {
         if (!empty($v)) {
             foreach ($v as $kk => $vv) {
                 switch ($object_attr[$kk]['attr_type']) {
                     case 4:
                         if ($object_attr[$kk]['is_ref_obj']) {
                             $this->db->set($object_attr[$object_attr[$kk]['referred_by']]['fld_name'], $vv);
                         } else {
                             $this->db->set($object_attr[$kk]['fld_name'], $vv);
                         }
                         break;
                     case 6:
                         //blob单独处理
                         break;
                     case 1:
                     case 2:
                     case 3:
                     case 11:
                     case 12:
                     case 13:
                     case 18:
                     case 19:
                     case 20:
                         // if(!is_numeric($vv)){
                         //     $res['res'] = "fail";
                         //     $res['error_code'] = "204";
                         //     $res['msg'] = "\"".$kk."\"必须是数值!";
                         //     return $res;
                         // }
                         $this->db->set($object_attr[$kk]['fld_name'], $vv, false);
                         break;
                     case 15:
                         if (!empty($vv)) {
                             //$vv = dataReduce8('Y-m-d', $vv);
                             $this->db->set($object_attr[$kk]['fld_name'], "to_date('" . $vv . "','yyyy-mm-dd hh24:mi:ss')", false);
                         }
                         break;
                     case 16:
                         if (!empty($vv)) {
                             $vv = dataReduce8('Y-m-d H:i:s', $vv);
                             $this->db->set($object_attr[$kk]['fld_name'], "to_date('" . $vv . "','yyyy-mm-dd hh24:mi:ss')", false);
                         }
                         break;
                     default:
                         $this->db->set($object_attr[$kk]['fld_name'], $vv);
                         break;
                 }
             }
         }
         $this->db->set($pk, $nextid);
         $this->db->set('org_id', $OrgID, false);
         $this->db->insert($k);
     }
     // $this->db->trans_complete();
     // if ($this->db->trans_status() === FALSE){
     //     return false;
     // }else{
     $res['res'] = 'suc';
     $res['id'] = $nextid;
     $res['msg'] = '保存成功!';
     return $res;
     // }
 }
コード例 #3
0
ファイル: api.php プロジェクト: aslijiasheng/jasongo
 public function del($OrgID, $Objdata, $data, $UserID)
 {
     extract($Objdata, EXTR_OVERWRITE);
     if (!isset($data[$KEY_ATTR_NAME])) {
         return api_error('202', "ID必须存在");
     } elseif (empty($data[$KEY_ATTR_NAME])) {
         return api_error('203', "ID不能为空");
     } else {
         $id = $data[$OBJ_NAME . ".ID"];
     }
     $d_data['DELETED_USER_ID'] = $UserID;
     $d_data['IS_DELETED'] = '1';
     $d_data['DELETED_TIME'] = "to_date('" . dataReduce8("Y-m-d H:i:s", date('Y-m-d H:i:s')) . "','yyyy-mm-dd hh24:mi:ss')";
     $pwhere = $this->objects->premissionList($Objdata, $OrgID, $d_data['DELETED_USER_ID'], "delete");
     if ($this->objects->_del($id, $OBJ_TYPE, $d_data, $pwhere)) {
         return $this->api_succ();
     } else {
         return $this->api_error('200', "");
     }
     //echo 111;
 }
コード例 #4
0
 /**
  * Opportunity_model::opportunity_module_add()
  * 新增商机阶段方法
  * @param mixed $next_id
  * @param mixed $module
  * @param integer $org_id
  * @return void
  */
 public function opportunity_module_add($next_id, $module, $org_id = 1)
 {
     $fld = "owner_user_id,optnty_type,to_char(START_DATE,'yyyy-mm-dd') START_DATE";
     $oppor_data = $this->selectOne($next_id, $fld);
     $optnty_type = $oppor_data['OPTNTY_TYPE'];
     //取出模型ID
     $start_date = $oppor_data['START_DATE'];
     //取出主商机的销售时间
     $optnty_tbl_where = array("type_id" => $optnty_type, "org_id" => $org_id, "obj_id" => 0);
     /**
      * 取模阶段 select * from tc_opportunity_stage where org_id = 1 and obj_id = 0 and type_id = 2056;
      */
     $oppor_stage_data = $this->selectWhere($optnty_tbl_where);
     unset($optnty_tbl_where);
     $stage_path = array();
     //流程判断
     //循环阶段模型数据
     foreach ($oppor_stage_data as $key => $value) {
         $stage_next_id = $this->nextid->NewID("tc_opportunity_stage");
         //获取自增的ID值
         $stage_id = $value['STAGE_ID'];
         //备用
         if ($stage_next_id > 0) {
             //判断获取的数据是否成功
             if ($key == 0) {
                 //回写给主表
                 $data['OPTNTY_STAGE'] = $stage_next_id;
                 $this->update($data, $next_id);
             }
             $stage_path[$value['STAGE_ID']] = $stage_next_id;
             $value['STAGE_ID'] = $stage_next_id;
             //自增ID值从NEXTID模型文件中取出的
             $value['OBJ_ID'] = $next_id;
             //传递过来的自增ID值
             $value['TYPE_ID'] = 0;
             $this->doinsert($value);
             //更新数据后插入阶段表
             if (!empty($start_date)) {
                 //插入商机阶段时间
                 $this->db->set('PLAN_START_TIME', "to_date('" . $start_date . "','yyyy-mm-dd')", false);
                 $start_date = date_add_sub($start_date);
                 $this->db->set('PLAN_END_TIME', "to_date('" . $start_date . "','yyyy-mm-dd')", false);
                 if ($key == 0) {
                     $this->db->set('START_TIME', "to_date('" . dataReduce8('Y-m-d H:i:s', date('Y-m-d H:i:s')) . "','yyyy-mm-dd hh24:mi:ss')", false);
                 }
                 $w = array("STAGE_ID" => $stage_next_id);
                 $this->db->where($w);
                 $this->db->update('tc_opportunity_stage');
                 //插入商机阶段时间
             }
             //取模 国际化阶段 插入 select * from tc_opportunity_stage_lang where stage_id = 2899;
             $tbl_where = array("stage_id" => $stage_id);
             $stage_data = $this->selectWhere($tbl_where, "tc_opportunity_stage_lang");
             //获取出针对stage_id得到的国际化字段信息
             if (!empty($stage_data)) {
                 foreach ($stage_data as $k => $v) {
                     //循环插入
                     $v['STAGE_ID'] = $stage_next_id;
                     //上一步插入后的自增ID值
                     $this->doinsert($v, "tc_opportunity_stage_lang");
                 }
             }
             unset($tbl_where);
             $uinsert = array('org_id' => $org_id, 'user_id' => $oppor_data['OWNER_USER_ID'], 'optnty_id' => $next_id, 'stage_id' => $stage_id, 'is_self' => 1);
             $this->db->insert('rel_opportunity_stage_user', $uinsert);
         }
     }
     //循环阶段模型数据 结束
     /**
      * 取模流程 select * from tc_stage_path  where obj_id = 0 and type_id = 2056;
      */
     $optnty_tbl_where = array("obj_id" => 0, "type_id" => $optnty_type, "org_id" => $org_id);
     $stage_path_data = $this->selectWhere($optnty_tbl_where, "tc_stage_path");
     //获取模型数据 关于阶段流程的
     unset($optnty_tbl_where);
     foreach ($stage_path_data as $key => $value) {
         $stage_path_next_id = $this->nextid->NewID("tc_stage_path");
         //获取自增的ID值
         $path_id = $value['PATH_ID'];
         //备用
         if ($stage_path_next_id > 0) {
             //判断获取的数据是否成功
             $value['PATH_ID'] = $stage_path_next_id;
             //自增ID值从NEXTID模型文件中取出的
             $value['OBJ_ID'] = $next_id;
             //传递过来的自增ID值
             $value['OLD_STAGE'] = $stage_path[$value['OLD_STAGE']];
             //开始阶段
             $value['NEW_STAGE'] = $stage_path[$value['NEW_STAGE']];
             //结束阶段
             $value['TYPE_ID'] = 0;
             $this->doinsert($value, "tc_stage_path");
             //更新数据后插入阶段流程表
             $tbl_where = array("path_id" => $path_id);
             $stage_path_action_data = $this->selectWhere($tbl_where, "tc_stage_path_action");
             //获取出针对$path_id得到的相关行动信息
             if (!empty($stage_path_action_data)) {
                 foreach ($stage_path_action_data as $k => $v) {
                     //循环插入
                     $v['PATH_ID'] = $stage_path_next_id;
                     //上一步插入后的自增ID值
                     $this->doinsert($v, "tc_stage_path_action");
                 }
             }
             unset($tbl_where);
         }
     }
 }