| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272 | <?phpnamespace app\api\controller;use app\common\controller\Api;use app\common\library\RsaUtil;use think\Db;include_once EXTEND_PATH.'icbc\DefaultIcbcClient.php';/** * 驾驶舱数据 */class Jiashicang extends Api{    // 无需登录的接口,*表示全部    protected $noNeedLogin = ['*'];    // 无需鉴权的接口,*表示全部    protected $noNeedRight = ['*'];    /**     * 政法委     * 链接数据库     */    public function test1()    {        $rs1 = Db::connect('database_jsc')->query('SHOW TABLE STATUS');        dump($rs1);        $rs2 = Db::connect('database_jsc')->query('SELECT DATABASE()');        dump($rs2);    }    /**     * 政法委     * 链接表     */    public function test11()    {        $fields = Db::connect('database_jsc')->query('SHOW FULL COLUMNS FROM dp_wccn');        dump($fields);        $list = Db::connect('database_jsc')->name('dp_wccn')->limit(1,10)->select();        dump($list);        /*$fields = Db::connect('database_jsc')->query('SHOW FULL COLUMNS FROM sys_dept');        dump($fields);        $list = Db::connect('database_jsc')->name('sys_dept')->limit(1,10)->select();        dump($list);*/    }    //政法委    //查询关键数据    public function zfw_data(){        //定义变量        $jzrs = 0; //居住人数        $fwts = 0; //房屋套数        $wgypzs = 0; //网格员配置数        $zxyjdy = 0; //最小应急单元        $wgsj = 0; //网格事件数        $bjl = 0; //办结率        //获取数据并过滤        $shequ_list = Db::connect('database_jsc')->name('dp_wccn')->select();        //dump($shequ_list);        if(!empty($shequ_list)){            //为空的都改为0            foreach($shequ_list as $k => $v){                foreach($v as $k1 => $v1){                    if(empty($v1)){                        $v1 = 0;                    }                    $v[$k1] = $v1;                }                $shequ_list[$k] = $v;            }            $jzrs = array_sum(array_column($shequ_list, 'jzrs'));            $fwts = array_sum(array_column($shequ_list, 'fwts'));            $wgypzs = array_sum(array_column($shequ_list, 'wgypzs'));            $zxyjdy = array_sum(array_column($shequ_list, 'zxyjdy'));            $wgsj = array_sum(array_column($shequ_list, 'wgsj'));            $bjs = array_sum(array_column($shequ_list, 'bjs'));            //$bjl = bcdiv(array_sum(array_column($shequ_list, 'bjl')),count($shequ_list),8); // 办结率总和 / 社区数量            $bjl = bcdiv($bjs,$wgsj,8);// 总办结数 / 总网格事件数        }        //已经校验过的数据,最终推出        dump((string)$jzrs);        dump((string)$fwts);        dump((string)$wgypzs);        dump((string)$zxyjdy);        dump((string)$wgsj);        dump((string)$bjl);        //分割线    }    //社区小程序 推送数据    private function shequ_data(){        $sqhds = Db::name('unishop_product')->whereNull('deletetime')->where('switch',1)->count();//社区活动数        $hdbms = Db::name('unishop_order')->whereNull('deletetime')->where('have_paid','gt',0)->where('status',1)->count();//活动报名数        $gonghang_data = Db::name('dp_gonghang')->where('id',1)->find();        $jkdars  = $gonghang_data['jkdars'];//健康档案人数        $whcss   = $gonghang_data['whcss'];//文化场所数        $smxykcs = $gonghang_data['smxykcs'];//市民学院课程数        $hdmyd   = $gonghang_data['hdmyd'];//活动满意度        $ddgz_djd   = $gonghang_data['ddgz_djd'];//订单跟踪(待接单)        $ddgz_fwz   = $gonghang_data['ddgz_fwz'];//订单跟踪(服务中)        $ddgz_wcpj  = $gonghang_data['ddgz_wcpj'];//订单跟踪(完成评价)        $mxbjds     = $gonghang_data['mxbjds'];//慢性病建档数        $result = [            'jkdars' => $jkdars,            'whcss' => $whcss,            'smxykcs' => $smxykcs,            'hdmyd' => $hdmyd,            'ddgzdjd' => $ddgz_djd,            'ddgzfwz' => $ddgz_fwz,            'ddgzwcpj' => $ddgz_wcpj,            'mxbjds' => $mxbjds,            'sqhds' => (string)$sqhds,            'hdbms' => (string)$hdbms,        ];        return $result;    }    /**     * 需要登录且需要验证有相应组的权限     */    public function test3()    {        $this->send_score(1, 1);    }    public function index(){        echo 140;    }    public function send(){        $data = $this->shequ_data();        $biz_content = [            'batchDate' => date('Ymd'),            'corpCode'  => 'icbc',            'dataType'  => '1',//1-幸福里;2-政法委            'data'      => json_encode($data),        ];        $public_key = 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwFgHD4kzEVPdOj03ctKM7KV+16bWZ5BMNgvEeuEQwfQYkRVwI9HFOGkwNTMn5hiJXHnlXYCX+zp5r6R52MY0O7BsTCLT7aHaxsANsvI9ABGx3OaTVlPB59M6GPbJh0uXvio0m1r/lTW3Z60RU6Q3oid/rNhP3CiNgg0W6O3AGqwIDAQAB';        $private_key = 'MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCR8/ZvKPAdZzsyvapySvztQm56s1N59ynKMOWpUbK4c5MNWMl+q3dvsp+UiSAx2TAeGkYfW3W6nO/3Y0hAZki99fmuzpPujEeHhs79HNwGZYQjN71Vck2JeflTq8jpL+9/up0Kz2nbwtZDMKTTEgbfNeO24gV1bmvD2kQ9j66RIyuXSDwQbVbQfl6LiqKoJm3rbtsbwX1Ytc0/Szslyor1VdPZWnHDMm3m78Hqu7X3vL6K7fAW/4FVbeKV7vWjvyiTQfETmuADqMdsqV5YeqUZWE/Dnzg+6JV/3L9nJ8f+/mPlh8k1h1oW035GrADKFKf1M2ujKKeHICnj7qKCdBeNAgMBAAECggEAHkh+U2YtHAy1Tbvox7ojbJ8iCTd4FJBiDV/D5zPaX0crtdM8S5oMOBLZ5ZnmIjGsODK/ZfY2ITg62huxfBs88J0+5zRZoV9d4BLqk74PMQyTNDN2h2omCGZUgzXbg/a8PMZdm0aZ8k0k4+AN8vWEk3+89c9Dzq/QkFyTWCqdz+Mp9NkcOjA255kj5/D1q9Zj0x9VcmKg3oTtrKL/dkspUxVaMKXcpo6J4AszC05tT3N0SNLhcq51I6B9QdbYsYCkP9whPNYIl/y4dN4QnNEivQzA5/ltr5DDQZc7Xke1+SpJN+ylBOBJ8yvNoDnuxx0xEWuNJ5bUzyri/DNjZRKNQQKBgQDKkxn5R4Q3rChI/KVIXHMecTs9fXN5pbnA8UKU6ZeTl+wHffxwRieHZJJp1nDcQ5i8YXCtqEJcJGFn3T0rEjVCJ/RVHclFO+TjYaK9HtyNJLPrvKmAzjCzV1yPfe4qmpgJddzZI7Vii2uFgklixvhkoY74hwSJtvLPTO0p0xrYdQKBgQC4cgfpCMLYlaHQGz+dAEf4IewQpwBGn7XShCpiXGFciGZZEIzvJMzXP7yo8pDMHQbB4kQsTRRG2fcdHGWI5VQGHPqG5O0tUueKGUlSg7j8Y/Pp8ZrBGSrlilAf17I/u9MC7Xe2ZRVGNgPDYAyjMEGmClI0n2+aN6b4CFVBjYmfuQKBgEKO9KDIE7QrF41rnW7aGWTuNVWty2wzvIWdf4/n9EqlRwLrLS9CjahZrhWiRLDKcPusVFZqi2s09OAoe/mT4PXcpNX2lHPwCvN+1/allje10HvrIBJXLP8v/BSVftR2uO+azzZ1GhrHzksulKgk0eZWguA7lI0fFEZycxYj65UlAoGAD9p1RZlkLfuGgf2llRgOF4zK3o+MHYXiuep0PioUkECFE4ixpGh0Vtf6nkbjHTgteYK6O1iQsppPfCgRrheQBkp9WhTZMfkbP6p2u+nof4ET2PrUQ16naj1eL655erLpKypADORZVMSVxDhAPdKLAfuHH1DI5ed8qXsF4PGKb7kCgYEAm/d+daT6YsbHDZlJ/J9Q8rRkKmiqj43NGQSHKg6Z6BEDibm8wRmj3Itu1N6XVChuaH+ekJzvUnZ/q1nyYzGvy6bOHYn3ziF9aH7wuhcRZ4qARmKDnzTBLg2QXBK1+400O3LJ+sAH/yuH/Y4hzRE6YMxBQpdYfnlJcIFVimAsT1w=';        $sign = '';        $data = [            'app_id' => '10000000000004096993',            'msg_id' => createUniqueNo('msg', 1),            'format' => 'json',            'charset' => 'UTF-8',            'encrypt_type'=> 'AES',            'sign_type' => 'RSA',            'sign' => $sign,            'timestamp' => date('Y-m-d H:i:s'),//            'ca'          => '',            'biz_content' => $biz_content,        ];        $client = new \DefaultIcbcClient($data['app_id'],$private_key,$data['sign_type'],$data['charset'],$data['format'],$public_key,'','','','');        $request = [            'serviceUrl' => 'https://gw.dccnet.com.cn:8082/api/mybank/farm/farmplatf/syncCommunityData',            'method' => 'POST',            'isNeedEncrypt' => false,            'extraParams' => null,            'biz_content' => $biz_content,        ];        $resp = $client->execute($request,$data['msg_id'],'');        $respObj = json_decode($resp,true);        dump($respObj);exit;        if($respObj["return_code"] == 0){ //sucess            echo $respObj["return_msg"];        }else{//fail            echo $respObj["return_msg"];        }    }    public function senddata(){        $url = 'https://gw.dccnet.com.cn:8082/api/mybank/farm/farmplatf/syncCommunityData';        //$url = 'http://apip-gateway-nrouter-saas-gn-C.month.sdc.cs.icbc:8081/api/mybank/farm/farmplatf/syncCommunityData';        $data = $this->shequ_data();        $biz_content = [            'batchDate' => date('Ymd'),            'corpCode'  => 'icbc',            'dataType'  => '1',//1-幸福里;2-政法委            'data'      => json_encode($data),        ];        $public_key = APP_PATH.'/common/certs/icbc/public_test.pem';        $private_key = APP_PATH.'/common/certs/icbc/private_test.pem';        $rsautil =  new RsaUtil($public_key,$private_key);        $sign = $rsautil->publicEncrypt(json_encode($biz_content));        $data = [            'app_id' => '10000000000004096993',            'msg_id' => createUniqueNo('msg', 1),            'format' => 'json',            'charset' => 'UTF-8',            'encrypt_type'=> 'AES',            'sign_type' => 'RSA',            'sign' => $sign,            'timestamp' => date('Y-m-d H:i:s'),//            'ca'          => '',            'biz_content' => $biz_content,        ];        $rs = curl_post($url, json_encode($data, JSON_UNESCAPED_UNICODE));        dump($rs);    }    public function send_score($score, $grade_id)    {        $url = 'http://apip-gateway-nrouter-saas-gn-C.month.sdc.cs.icbc:8081/api/mybank/farm/farmplatf/updateVillagerIntegral/V1';        $biz_content = [            'fSeqNo' => createUniqueNo('fseq', $grade_id),            'corpCode' => 'xingfulishequ',            'mobilePhone' => $this->auth->mobile,            'integralValue' => $score,            'integralType' => '',            /* 'remark1'      => '',             'remark2'      => '',             'remark3'      => '',             'remark4'      => '',             'remark5'      => '',             'remark6'      => '',             'remark7'      => '',*/        ];        $public_key = APP_PATH.'/common/certs/icbc/public_key.pem';        $private_key = APP_PATH.'/common/certs/icbc/private_key.pem';        $rsautil =  new RsaUtil($public_key,$private_key);        $sign = $rsautil->publicEncrypt(json_encode($biz_content));dump($sign);        $data = [            'app_id' => '10000000000004096993',            'msg_id' => createUniqueNo('msg', $grade_id),            'format' => 'json',            'charset' => 'UTF-8',//            'encrypt_type'=> 'AES',            'sign_type' => 'RSA',            'sign' => $sign,            'timestamp' => date('Y-m-d H:i:s'),//            'ca'          => '',            'biz_content' => $biz_content,        ];        $rs = curl_post($url, json_encode($data, JSON_UNESCAPED_UNICODE));        dump($rs);    }}
 |