1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858 |
- <?php
- namespace app\index\controller;
- use app\common\util\ExcelUtil;
- use app\hander\HelpHander;
- use Eden\Mail\Pop3;
- use MailSo\Mail\MailClient;
- use PhpImap\Mailbox;
- use PHPMailer\PHPMailer\Exception;
- use PHPMailer\PHPMailer\PHPMailer;
- use PhpOffice\PhpWord\PhpWord;
- use PhpOffice\PhpWord\TemplateProcessor;
- use think\App;
- use think\Controller;
- use think\Db;
- use think\Env;
- use think\helper\Time;
- use tools\Oaimap;
- use tools\Oaimap2;
- use tools\Qxsms;
- use app\api\controller\v1\HouseFloorInfo;
- use Webklex\PHPIMAP\Client;
- use Webklex\PHPIMAP\ClientManager;
- use Webklex\PHPIMAP\Folder;
- class Index extends Controller
- {
- public function __construct(App $app = null)
- {
- parent::__construct($app);
- // exit();
- }
- public function delemail(){
- exit();
- model('Email')->batchDel();
- }
- public function apply(){
- $id = 32884;
- $content = '';
- $userList = '';
- $formJson = '';
- $userId = 100221;
- model('ApplyRecord')->audit($id,$userId,$content,$formJson,$userList);
- }
- public function index(){
- // $day = "2024-01-04";
- // $lastmonth = get_lastmonth_by_day($day);
- // halt($lastmonth);
- // $day = "1981-11-04";
- // halt(calculate_age($day));
- //&ipmc_jjzx$.ipmc.
- // $qxsms = new Qxsms(config('app.sms_config'));
- // $content = "【基建中心】谢正辉提交的上会文件需要您审批。";
- // $phone = '13838379499';
- // $ret = $qxsms->send($phone,$content);
- // dump($qxsms->getError());
- // halt($ret);
- // $str = 'ABCDEFHHIGKLMNOPGRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890';
- // $str1 = msubstr(str_shuffle($str), 0, mt_rand(2,6));
- // $str2 = msubstr(str_shuffle($str), 0, mt_rand(2,6));
- // $str3 = msubstr(str_shuffle($str), 0, mt_rand(2,6));
- // $password = $str1.'&'.$str2.'.'.$str3;
- halt(404);
- }
- public function xgsb(){
- exit();
- // $salaryRecordId = 521;
- $salaryRecordId = 520;
- $lists = Db::name('salary_record_special')
- ->alias('a')
- ->join('salary_record_log b','b.salary_record_id = a.salary_record_id and b.user_id = a.user_id')
- ->where('a.salary_record_id',$salaryRecordId)
- ->field('a.*,b.btjson')
- ->select();
- foreach ($lists as $k=>$v){
- $ggj = 0;
- $qynj = 0;
- $yla = 0;
- $yli = 0;
- $sye = 0;
- $btjson = json_decode($v['btjson'],true);
- foreach ($btjson as $kk=>$vv){
- // 1=公积金 2=企业年金 3=养老保险 4=医疗保险 5=失业保险
- if($vv['sbtype'] == 1){
- $ggj += $vv['money'];
- }else if($vv['sbtype'] == 2){
- $qynj += $vv['money'];
- }else if($vv['sbtype'] == 3){
- $yla += $vv['money'];
- }else if($vv['sbtype'] == 4){
- $yli += $vv['money'];
- }else if($vv['sbtype'] == 5){
- $sye += $vv['money'];
- }
- }
- $data = [
- 'ljgjj' => $v['ljgjj'] + $ggj*2,
- 'ljylobx' => $v['ljylobx'] + $yla*2,
- 'ljsybx' => $v['ljsybx'] + $sye*2,
- 'ljylibx' => $v['ljylibx'] + $yli*2,
- 'ljnj' => $v['ljnj'] + $qynj*2,
- ];
- $data['ljsqljxmhj'] = $v['ljsqljxmhj'] + 2*($ggj+$yla+$sye+$yli+$qynj);
- Db::name('salary_record_special')->where('id',$v['id'])->update($data);
- }
- halt(date('Y-m-d H:i:s').'完成');
- }
- public function dinneruser(){
- $lists = Db::name('user')
- ->alias('a')
- ->join('user_info b','a.id = b.user_id')
- ->where('a.enable',1)
- ->where('a.del',0)
- ->field('a.id,a.phone,a.password,b.name')
- ->select();
- $lists = $lists?$lists:[];
- $count = 0;
- foreach ($lists as $k=>$v){
- if(!$v['phone']){
- continue;
- }
- $id = Db::name('dinner_user')->where('phone',$v['phone'])->where('del',0)->value('id');
- if($id){
- continue;
- }
- Db::name('dinner_user')->insert([
- 'phone' => $v['phone'],
- 'password' => $v['password'],
- 'name' => $v['name'],
- 'company_id' => 5,
- 'create_time' => date('Y-m-d H:i:s'),
- 'enable' => 1,
- 'del' => 0
- ]);
- $count++;
- }
- halt($count);
- }
- public function douser(){ // u1=53 u6=38 u2=40 u3=34 u4=120
- exit();
- $companyId = input('company/d',0);
- if(!in_array($companyId,[1,2,3,4,6])){
- halt('参数错误');
- }
- $reader = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx();
- $spreadsheet = $reader->load('./u'.$companyId.'.xlsx');
- $sheet = $spreadsheet->getActiveSheet();
- $keys = ['A','B'];
- $data = [];
- foreach ($sheet->getRowIterator(2) as $row) {
- $tmp = array();
- foreach ($row->getCellIterator() as $k=>$cell) {
- if(!in_array($k,$keys)){
- continue;
- }
- $val = $cell->getFormattedValue();
- if(in_array($k,$keys)){
- $tmp[$k] = str_ireplace(',','',$val);
- }
- }
- $data[] = $tmp;
- }
- dump(count($data));
- $count = 0;
- foreach ($data as $k=>$v){
- $id = Db::name('dinner_user')->where('phone',$v['B'])->where('del',0)->value('id');
- if($id){
- continue;
- }
- $ret = Db::name('dinner_user')->insert([
- 'phone' => $v['B'],
- 'password' => password_hash('123456',PASSWORD_DEFAULT),
- 'name' => $v['A'],
- 'company_id' => $companyId,
- 'create_time' => date('Y-m-d H:i:s'),
- 'enable' => 1,
- 'del' => 0
- ]);
- if($ret){
- $count++;
- }
- }
- halt($count);
- }
- public function email(){
- exit();
- $lists = Db::name('user_email')->where('id','>',161)->order('id asc')->limit(50)->select();
- $lists = $lists?$lists:[];
- $count = 0;
- $password = "ipmcoa@2020.";
- foreach ($lists as $k=>$v){
- $ret = $this->editEmail($v['eid'],$v['user_id'],$password);
- if($ret){
- $count++;
- }
- }
- dump($count);
- halt($lists);
- }
- private function editEmail($id,$userId,$password){
- $data = [
- 'id' => $id,
- 'password' => $password,
- 'is_password' => 0,
- 'uname' => '',
- 'position' => '',
- 'tel' => '',
- 'branch_id' => 0,
- 'active' => 1, // 启用
- 'is_imap' => 1,
- 'limits' => 0,
- 'limitg' => 0,
- 'is_convert' => 0,
- 'login_password' => 0,
- 'disabled_password' => 1,
- 'my_spam_mode' => 2,
- ];
- if(!empty($data['password'])){
- $data['password'] = $password;
- $data['is_password'] = 1;
- }
- //获取用户最优先的部门
- $dep = Db::name('user_job')
- ->alias('uj')
- ->join('job j','j.id = uj.job_id')
- ->join('dep d','d.id = j.dep_id')
- ->where('uj.user_id',$userId)
- ->where('j.del',0)
- ->where('j.enable',1)
- ->where('d.del',0)
- ->where('d.enable',1)
- ->order('d.sorts asc,d.id asc')
- ->value('d.email_branch');
- $data['branch_id'] = $dep?$dep:0;
- $config = config('app.email');
- $param = [
- '_key' => $config['key'],
- '_lang' => 'zh-cn',
- ];
- $name = Db::name('user_info')->where('user_id',$userId)->value('name');
- $data['uname'] = $name;
- $param = array_merge($param,$data);
- $url = $config['host'].'User/update';
- Db::startTrans();
- try{
- $sdata = [
- 'eid' => $data['id'],
- 'update_time' => date('Y-m-d H:i:s'),
- 'active' => $data['active']
- ];
- if(!empty($data['password'])){
- $sdata['password'] = think_encrypt($data['password']);
- }
- $res = Db::name('user_email')->where('user_id',$userId)->update($sdata);
- if(!$res){
- \exception('操作失败');
- }
- $ret = $this->http_post($url,$param);
- if(!$ret){
- \exception($this->error);
- }
- Db::commit();
- }catch (\think\Exception $e){
- Db::rollback();
- trace($e->getMessage());
- return false;
- }
- return true;
- }
- private function http_post($url,$param){
- try{
- $ret = curl_post($url,$param);
- trace($url);
- trace($ret);
- $data = json_decode($ret,true);
- if($data['status'] == 1){
- return $data;
- }else{
- \exception($data['msg']);
- }
- }catch (\think\Exception $e){
- $this->error = $e->getMessage();
- return false;
- }
- }
- public function apply2(){
- // $start = '2022-01-28 下午';
- // $end = '2022-01-28 下午';
- // $type = 1;
- // $days = calculate_leave($start,$end,$type);
- // halt($days);
- // $id = 15016;
- // $userId = 100221;
- // $content = '同意';
- // model('ApplyRecord')->audit($id,$userId,$content,[],[]);
- // HelpHander::success([],'操作成功');
- $formJson = '[{"componentName":"ddleavefield","components":[{"componentName":"ddleaveselectfield","defaultApi":0,"defaultAutorekonTime":false,"defaultImportant":true,"defaultLable":"请假类型","defaultPrint":false,"defaultProps":"请选择","defaultShow":false,"defaultTotal":false,"defaultTranslate":false,"idx":0,"important":false,"inTablefield":false,"isModify":true,"label":false,"name":"请假类型选择框","placeholder":false,"print":false,"required":false,"values":"{\"id\":2,\"name\":\"病假\"}"},{"componentName":"dddatefield","defaultApi":0,"defaultAutorekonTime":false,"defaultFormat":"yyyy-MM-dd 上下午","defaultImportant":true,"defaultLable":"开始日期","defaultPrint":false,"defaultProps":"请选择","defaultShow":false,"defaultTotal":false,"defaultTranslate":false,"idx":1,"important":false,"inTablefield":false,"isModify":true,"label":false,"name":"日期","placeholder":false,"print":false,"required":false,"values":"2022-01-10 上午"},{"componentName":"dddatefield","defaultApi":0,"defaultAutorekonTime":false,"defaultFormat":"yyyy-MM-dd 上下午","defaultImportant":true,"defaultLable":"结束日期","defaultPrint":false,"defaultProps":"请选择","defaultShow":false,"defaultTotal":false,"defaultTranslate":false,"idx":2,"important":false,"inTablefield":false,"isModify":true,"label":false,"name":"日期","placeholder":false,"print":false,"required":false,"values":"2022-01-10 上午"},{"componentName":"ddselectfield","defaultApi":0,"defaultAutorekonTime":false,"defaultImportant":false,"defaultLable":"是否离京","defaultOptions":[{"idx":1,"isCheck":false,"text":"是"},{"idx":2,"isCheck":false,"text":"否"}],"defaultPrint":false,"defaultProps":"请选择","defaultShow":false,"defaultTotal":false,"defaultTranslate":false,"idx":3,"important":false,"inTablefield":false,"isModify":true,"label":false,"name":"单选框","placeholder":false,"print":false,"required":false,"values":"否"},{"componentName":"dddatefield","defaultApi":0,"defaultAutorekonTime":false,"defaultFormat":"yyyy-MM-dd 上下午","defaultImportant":false,"defaultLable":"离京日期","defaultPrint":false,"defaultProps":"请选择","defaultShow":false,"defaultTotal":false,"defaultTranslate":false,"idx":4,"important":false,"inTablefield":false,"isModify":true,"label":false,"name":"日期","placeholder":false,"print":false,"required":false,"values":""},{"componentName":"dddatefield","defaultApi":0,"defaultAutorekonTime":false,"defaultFormat":"yyyy-MM-dd 上下午","defaultImportant":false,"defaultLable":"返京日期","defaultPrint":false,"defaultProps":"请选择","defaultShow":false,"defaultTotal":false,"defaultTranslate":false,"idx":5,"important":false,"inTablefield":false,"isModify":true,"label":false,"name":"日期","placeholder":false,"print":false,"required":false,"values":""},{"componentName":"textfield","defaultApi":0,"defaultAutorekonTime":false,"defaultImportant":false,"defaultLable":"前往地区","defaultPrint":false,"defaultProps":"请输入","defaultShow":false,"defaultTotal":false,"defaultTranslate":false,"idx":6,"important":false,"inTablefield":false,"isModify":true,"label":false,"name":"单行输入框","placeholder":false,"print":false,"required":false,"values":""}],"defaultApi":0,"defaultAutorekonTime":false,"defaultImportant":true,"defaultLable":"请假套件","defaultPrint":true,"defaultProps":"","defaultShow":false,"defaultTotal":false,"defaultTranslate":false,"idx":7,"important":false,"inTablefield":false,"isModify":true,"label":false,"name":"请假套件","placeholder":false,"print":false,"required":false},{"componentName":"textareafield","defaultApi":0,"defaultAutorekonTime":false,"defaultImportant":true,"defaultLable":"事由及说明","defaultPrint":true,"defaultProps":"请输入","defaultShow":false,"defaultTotal":false,"defaultTranslate":false,"idx":6,"important":true,"inTablefield":false,"isModify":true,"label":true,"name":"多行输入框","placeholder":true,"print":true,"required":true,"values":"就诊"},{"componentName":"ddattachment","defaultApi":0,"defaultAutorekonTime":false,"defaultImportant":false,"defaultLable":"附件","defaultPrint":false,"defaultShow":false,"defaultTotal":false,"defaultTranslate":false,"idx":3,"important":false,"inTablefield":false,"isModify":true,"label":false,"name":"附件","placeholder":false,"print":false,"required":false,"values":""},{"componentName":"ddphotofield","defaultApi":0,"defaultAutorekonTime":false,"defaultImportant":false,"defaultLable":"图片","defaultPrint":false,"defaultShow":false,"defaultTotal":false,"defaultTranslate":false,"idx":8,"important":false,"inTablefield":false,"isModify":true,"label":false,"name":"图片","placeholder":false,"print":false,"required":false,"values":"http://oaapi.dr-ipmc.org.cn/uploads2/20220110/7a3838a1e2945a45c0027ac9dc5942c1.jpeg"}]';
- $formJson = json_decode($formJson,true);
- $start = '';
- $end = '';
- $isleavebj = '否'; // 默认不离京
- $lbjstart = '';
- $lbjend = '';
- $address = '';
- $type = 1; // 1=减去节假日 0=不减节假日
- $data = [
- 'org_id' => 3,
- 'user_id' => 1,
- 'apply_id' => 5650,
- 'create_time' => date('Y-m-d H:i:s'),
- 'status' => 0
- ];
- foreach ($formJson as $k=>$v){
- if($v['componentName'] == 'ddleavefield'){
- foreach ($v['components'] as $key=>$val){
- switch ($val['idx']){
- case '0':
- $leave = json_decode($val['values'],true);
- $data['leave_type'] = $leave['id'];
- break;
- case '1':
- $start = $val['values'];
- $starts = explode(' ',$start);
- if($starts[count($starts)-1] == '上午'){
- $data['start_time'] = $starts[0].' 00:00:00';
- }else{
- $data['start_time'] = $starts[0].' 12:00:00';
- }
- break;
- case '2':
- $end = $val['values'];
- $ends = explode(' ',$end);
- if($ends[count($ends)-1] == '上午'){
- $data['end_time'] = $ends[0].' 11:59:59';
- }else{
- $data['end_time'] = $ends[0].' 23:59:59';
- }
- break;
- case '3':
- $isleavebj = isset($val['values'])?$val['values']:'否';
- break;
- case '4':
- $lbjstart = isset($val['values'])?$val['values']:'';
- break;
- case '5':
- $lbjend = isset($val['values'])?$val['values']:'';
- break;
- case '6':
- $address = isset($val['values'])?$val['values']:'';
- break;
- }
- }
- break;
- }
- }
- if($data['leave_type'] == 6){// 产假,不减节假日
- $type = 0;
- }
- dump($start);
- dump($end);
- dump($type);
- $data['days'] = calculate_leave($start,$end,$type);
- $data['cur_days'] = $data['days'];
- halt($data);
- }
- public function sb(){
- exit();
- $reader = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx();
- $spreadsheet = $reader->load('./xinhua.xlsx');
- $sheet = $spreadsheet->getActiveSheet();
- $keys = ['A','G','I','K','N','P','R','T','X','Z','AC','AE'];
- $data = [];
- foreach ($sheet->getRowIterator(2) as $row) {
- $tmp = array();
- foreach ($row->getCellIterator() as $k=>$cell) {
- if(!in_array($k,$keys)){
- continue;
- }
- $val = $cell->getFormattedValue();
- if(in_array($k,$keys)){
- $tmp[$k] = floatval(str_ireplace(',','',$val));
- }
- }
- $data[] = $tmp;
- }
- // halt($data);
- $salaryId = 370;
- $num1 = $num2 = 0;
- foreach ($data as $k=>$v){
- $ret = Db::name('salary_record_sb')
- ->where('salary_record_id',$salaryId)
- ->where('user_id',$v['A'])
- ->find();
- if($ret){
- $res = Db::name('salary_record_sb')->where('id',$ret['id'])->update([
- 'ylap' => $ret['ylap'] + floatval($v['G']),
- 'syep' => $ret['syep'] + floatval($v['I']),
- 'ylip' => $ret['ylip'] + floatval($v['K']),
- 'ylac' => $ret['ylac'] + floatval($v['N']),
- 'syec' => $ret['syec'] + floatval($v['P']),
- 'ylic' => $ret['ylic'] + floatval($v['R']),
- 'gsc' => $ret['gsc'] + floatval($v['T']),
- 'gjjp' => $ret['gjjp'] + floatval($v['X']),
- 'gjjc' => $ret['gjjc'] + floatval($v['Z']),
- 'qynjp' => $ret['qynjp'] + floatval($v['AC']),
- 'qynjc' => $ret['qynjc'] + floatval($v['AE']),
- ]);
- if($res){
- $num1++;
- }
- }
- $ret = Db::name('salary_record_special')
- ->where('salary_record_id',$salaryId)
- ->where('user_id',$v['A'])
- ->find();
- if($ret){
- $res = Db::name('salary_record_special')->where('id',$ret['id'])->update([
- 'ljgjj' => $ret['ljgjj'] + floatval($v['X']),
- 'ljnj' => $ret['ljnj'] + floatval($v['AC']),
- 'ljsybx' => $ret['ljsybx'] + floatval($v['I']),
- 'ljylobx' => $ret['ljylobx'] + floatval($v['G']),
- 'ljylibx' => $ret['ljylibx'] + floatval($v['K']),
- 'ljsqljxmhj' => $ret['ljsqljxmhj'] + floatval($v['X']) + floatval($v['AC']) + floatval($v['I']) + floatval($v['G']) + floatval($v['K'])
- ]);
- if($res){
- $num2++;
- }
- }
- }
- dump($num1);
- dump($num2);
- halt($data);
- }
- public function oa(){
- exit();
- $reader = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx();
- $spreadsheet = $reader->load('./oa.xlsx');
- $sheet = $spreadsheet->getActiveSheet();
- $keys = ['A','F','G','I','J','K','N','O','Q','R'];
- $data = [];
- foreach ($sheet->getRowIterator(2) as $row) {
- $tmp = array();
- foreach ($row->getCellIterator() as $k=>$cell) {
- if(!in_array($k,$keys)){
- continue;
- }
- $val = $cell->getFormattedValue();
- if(in_array($k,$keys)){
- $tmp[$k] = floatval(str_ireplace(',','',$val));
- }
- }
- $data[] = $tmp;
- }
- $salaryId = 376;
- $num1 = $num2 = 0;
- foreach ($data as $k=>$v){
- $ret = Db::name('salary_record_sb')
- ->where('salary_record_id',$salaryId)
- ->where('user_id',$v['A'])
- ->find();
- if($ret){
- $res = Db::name('salary_record_sb')->where('id',$ret['id'])->update([
- 'syep' => $ret['syep'] + floatval($v['F']),
- 'ylip' => $ret['ylip'] + floatval($v['G']),
- 'syec' => $ret['syec'] + floatval($v['I']),
- 'ylic' => $ret['ylic'] + floatval($v['J']),
- 'gsc' => $ret['gsc'] + floatval($v['K']),
- 'gjjp' => $ret['gjjp'] + floatval($v['N']),
- 'gjjc' => $ret['gjjc'] + floatval($v['O']),
- ]);
- if($res){
- $num1++;
- }
- }
- $ret = Db::name('salary_record_special')
- ->where('salary_record_id',$salaryId)
- ->where('user_id',$v['A'])
- ->find();
- if($ret){
- $res = Db::name('salary_record_special')->where('id',$ret['id'])->update([
- 'ljgjj' => $ret['ljgjj'] + floatval($v['N']),
- 'ljsybx' => $ret['ljsybx'] + floatval($v['F']),
- 'ljylibx' => $ret['ljylibx'] + floatval($v['G']),
- 'ljsqljxmhj' => $ret['ljsqljxmhj'] + floatval($v['N']) + floatval($v['F']) + floatval($v['G'])
- ]);
- if($res){
- $num2++;
- }
- }
- }
- dump($num1);
- dump($num2);
- halt($data);
- }
- public function save(){
- $username = "hzd@dr-ipmc.org.cn";
- $password = "12345678";
- $c = new Oaimap($username,$password);
- $filepath = './email/';
- $ret = $c->messageMimeStream('Sent','30','',false,$filepath);
- // $c->putFile($filepath,$ret['resource']);
- dump(file_get_contents($ret['resource']));
- halt($ret);
- }
- public function important(){
- // 已办结的改成已完成
- $count = Db::name('important_record')->where('status',2)->setField('status',5);
- dump($count);
- $count2 = Db::name('important_record')->where('status',0)->where('pid',0)->setField('status',1);
- dump($count2);
- }
- public function salary(){
- return false;
- //工伤(单位)=取两位小数(基数*0.003)+取两位小数(基数*0.003)-取两位小数(基数*0.0024)
- $lists = Db::name('salary_record_sb')->where('salary_record_id',360)->field('id,sb,gsc')->select();
- $count = 0;
- foreach ($lists as $k=>$v){
- $ngsc = round($v['sb']*0.003,2) + round($v['sb']*0.003,2) - round($v['sb']*0.0024,2);
- $lists[$k]['ngsc'] = $ngsc;
- if($ngsc != $v['gsc']){
- $count++;
- Db::name('salary_record_sb')->where('id',$v['id'])->update(['gsc'=>$ngsc]);
- }
- }
- halt($lists);
- }
- public function salarysy(){
- return false;
- //失业(单位)=取两位小数(基数*0.005)- (取两位小数(基数*0.008)-取两位小数(基数*0.005))
- $lists = Db::name('salary_record_sb')->where('salary_record_id',360)->field('id,sb,syec')->select();
- $count = 0;
- foreach ($lists as $k=>$v){
- $ngsc = round($v['sb']*0.005,2) - (round($v['sb']*0.008,2) - round($v['sb']*0.005,2));
- $lists[$k]['nsyec'] = $ngsc;
- if($ngsc != $v['syec']){
- $count++;
- Db::name('salary_record_sb')->where('id',$v['id'])->update(['syec'=>$ngsc]);
- }
- }
- halt($lists);
- }
- public function salary2(){
- return false;
- $sid = 319;
- $lists = Db::name('salary_record_log')->where('salary_record_id',$sid)->field('id,user_id,btjson')->select();
- foreach ($lists as $k=>$v){
- $btjson = json_decode($v['btjson'],true);
- $bt = 0;
- foreach ($btjson as $kk=>$vv){
- if($vv['id'] == 50){
- $bt = $vv['money'];
- }
- }
- $info = Db::name('salary_record_special')->where('salary_record_id',$sid)->where('user_id',$v['user_id'])->find();
- if($info){
- Db::name('salary_record_special')->where('id',$info['id'])->update([
- 'ljsybx' => round($info['ljsybx'] - $bt,2),
- 'ljsqljxmhj' => round($info['ljsqljxmhj'] - $bt,2)
- ]);
- }
- $sb = Db::name('salary_record_sb')->where('salary_record_id',$sid)->where('user_id',$v['user_id'])->find();
- if($sb){
- Db::name('salary_record_sb')->where('id',$sb['id'])->update([
- 'syep' => round($sb['syep'] + $bt,2),
- ]);
- }
- $lists[$k]['bt'] = $bt;
- }
- halt($lists);
- }
- public function index2(){
- $val = '';
- $val = (float)$val;
- halt($val);
- $url = 'https://www.lzfh.com/api/dwz.php?cb=1&sturl=3&longurl=http://yyh2.app8888.top/index/user/register/invite_code/JT5XVC.html';
- $ret = curl_post($url);
- // $ret = file_get_contents($url);
- halt($ret);
- return false;
- $username = "hfp@dr-ipmc.org.cn";
- $password = "12345678";
- $c = new Oaimap($username,$password);
- // $ret = $c->getMessages('Drafts');
- // $ret = $c->getMessageByUid('Drafts',5008);
- $fromFolder = 'Archive';
- $toFolder = 'Trash';
- $uids = 6;
- $ret = $c->messageMove($fromFolder,$toFolder,$uids,true);
- halt($ret);
- // 输入文件标签
- // Header("Content-type: application/octet-stream");
- // Header("Accept-Ranges: bytes");
- // Header("Accept-Length: ".$ret['size']);
- // Header("Content-Disposition: attachment; filename=" . $ret['name']);
- // // 输出文件内容
- // echo $ret['content'];
- // exit;
- }
- public function sendMail(){
- $username = "hfp@dr-ipmc.org.cn";
- $password = "12345678";
- $c = new Oaimap($username,$password);
- $data = [
- 'subject' => '3333',
- 'body' => '4444',
- 'to' => '[{"email":"hzd@dr-ipmc.org.cn","name":"黄志东"}]',
- 'cc' => '[]',
- 'bcc' => '',
- 'attachment' => '[{"size":974,"name":"JZBRPLYM.png","big":0,"md5":"","url":"http://test.dr-ipmc.org.cn/uploads/20210712/c733555eda22f153b44b4680461f0e67.png"}]', // [{"big":0,"md5":"sdssfwe232323rfwefwef","url":"","name":"","size":122,"source":{"mimeIndex":"","uid":"1","folder":"Sent"}}}]
- 'bookTime' => '',
- 'priority' => 1,
- 'dnt' => 0, // 0=阅读不回复 1=阅读回复
- 'draftFolder' => 'Drafts', // 保存草稿时传
- 'messageFolder' => '',// 编辑草稿箱时填写
- 'messageUid' => '', // 编辑草稿箱uid
- 'draftInfo' => null, // 回复、转发
- 'inReplyTo' => '',
- 'references' => '',
- 'dsn' => 0 // 0=发送成功不回复 1=发送成功回复
- ];
- $from = [
- 'name' => 'hfp',
- 'email' => 'hfp@dr-ipmc.org.cn'
- ];
- $data['from'] = $from;
- $ret = $c->sendMessage($data);
- halt($ret);
- // $this->createEml($data,$from);
- // exit();
- }
- public function createEml($data,$from){
- $date = date('D, d M Y H:i:s');
- $data['date'] = $date;
- $altbody = strip_tags($data['body']);
- $messageId = md5(json_encode($data));
- $partend = get_rand_num().'.'.time();
- $part1 = '1_'.$partend;
- $emlstr = "Mime-Version: 1.0".PHP_EOL;
- $emlstr .= "Date: ".$date.' +0800'.PHP_EOL;
- $emlstr .= "Content-Type: multipart/mixed;".PHP_EOL;
- $emlstr .= " boundary=\"--=_Part_{$part1}\"".PHP_EOL;
- $emlstr .= "Message-ID: <{$messageId}@localhost>".PHP_EOL;
- $emlstr .= "X-Mailer: Postfix".PHP_EOL;
- if($data['book_time']){
- $emlstr .= "TimedSendDate: 1".PHP_EOL;
- }
- $emlstr .= 'From: "=?utf-8?B?'.base64_encode($from['name']).'?=" <'.$from['email'].'>'.PHP_EOL;
- $tos = json_decode($data['to'],true);
- $tostr = [];
- foreach ($tos as $k=>$v){
- $str = '';
- if($v['name']){
- $str .= '"=?utf-8?B?'.base64_encode($v['name']).'?=" <'.$v['email'].'>';
- }else{
- $str .= '<'.$v['email'].'>';
- }
- $tostr[] = $str;
- }
- $emlstr .= 'To: '.implode(',',$tostr).PHP_EOL;
- $ccs = json_decode($data['cc'],true);
- if($ccs){
- $ccstr = [];
- foreach ($ccs as $k=>$v){
- $str = '';
- if($v['name']){
- $str .= '"=?utf-8?B?'.base64_encode($v['name']).'?=" <'.$v['email'].'>';
- }else{
- $str .= '<'.$v['email'].'>';
- }
- $ccstr[] = $str;
- }
- $emlstr .= 'Cc: '.implode(',',$ccstr).PHP_EOL;
- }
- $bccs = json_decode($data['bcc'],true);
- if($bccs){
- $bccstr = [];
- foreach ($bccs as $k=>$v){
- $str = '';
- if($v['name']){
- $str .= '"=?utf-8?B?'.base64_encode($v['name']).'?=" <'.$v['email'].'>';
- }else{
- $str .= '<'.$v['email'].'>';
- }
- $bccstr[] = $str;
- }
- $emlstr .= 'Bcc: '.implode(',',$bccstr).PHP_EOL;
- }
- if($data['dnt'] == 1){
- $emlstr .= 'Disposition-Notification-To: '.$from['name'].PHP_EOL;
- $emlstr .= 'X-Confirm-Reading-To: '.$from['name'].PHP_EOL;
- }
- if($data['priority'] == 1){
- $emlstr .= 'X-Priority: 1 (Highest)'.PHP_EOL;
- }
- $emlstr .= 'Subject: =?utf-8?B?'.base64_encode($data['subject']).'?='.PHP_EOL;
- $emlstr .= PHP_EOL.'----=_Part_'.$part1.PHP_EOL;
- $part2 = '2_'.$partend;
- $emlstr .= "Content-Type: multipart/alternative;".PHP_EOL;
- $emlstr .= " boundary=\"--=_Part_{$part2}".PHP_EOL;
- $emlstr .= PHP_EOL.'----=_Part_'.$part2.PHP_EOL;
- $emlstr .= 'Content-Type: text/plain; charset="utf-8"'.PHP_EOL;
- $emlstr .= 'Content-Transfer-Encoding: quoted-printable'.PHP_EOL;
- $emlstr .= PHP_EOL.quoted_printable_encode($altbody).PHP_EOL;
- $emlstr .= PHP_EOL.'----=_Part_'.$part2.PHP_EOL;
- $emlstr .= 'Content-Type: text/html; charset="utf-8"'.PHP_EOL;
- $emlstr .= 'Content-Transfer-Encoding: quoted-printable'.PHP_EOL;
- $emlstr .= PHP_EOL.quoted_printable_encode($data['body']).PHP_EOL;
- $emlstr .= PHP_EOL.'----=_Part_'.$part2.'--'.PHP_EOL;
- // 附件
- // $emlstr .= PHP_EOL.'----=_Part_'.$part1.PHP_EOL;
- // $emlstr .= 'Content-Type: image/png; name="favicon.png"'.PHP_EOL;
- // $emlstr .= 'Content-Disposition: attachment; filename="favicon.png"'.PHP_EOL;
- // $emlstr .= 'Content-Transfer-Encoding: base64'.PHP_EOL;
- // $emlstr .= PHP_EOL.base64_encode(file_get_contents('./favicon.png')).PHP_EOL;
- // $emlstr .= PHP_EOL.'----=_Part_'.$part1.'--'.PHP_EOL;
- file_put_contents('./email/'.date('Ymd_').$messageId.'.eml', $emlstr);
- }
- public function login(){
- $email = 'hzd@dr-ipmc.org.cn';
- $res = model('Email')->login($email);
- halt($res);
- }
- public function p(){
- halt(config('database.db_email'));
- $url = "http://124.71.111.86:8010/Api/Smtp/send";
- $param = [
- '_key' => '3zMTJH1WHxYVz7yr',
- '_lang' => 'zh-cn',
- 'from' => 'test@dr-ipmc.org.cn',
- 'from_name' => 'hzdong',
- 'to' => '13838379499@163.com',
- 'subject' => 'test',
- 'content' => 'Neri',
- 'save_sent' => 1
- ];
- $ret = curl_post($url,$param);
- halt(json_decode($ret,true));
- }
- public function send(){
- $mail = new PHPMailer(true);
- try {
- //服务器配置
- $mail->CharSet ="UTF-8"; //设定邮件编码
- $mail->isSMTP(); // 使用SMTP
- $mail->Host = 'mail.dr-ipmc.org.cn'; // SMTP服务器
- $mail->SMTPAuth = true; // 允许 SMTP 认证
- $mail->Username = 'hzd@dr-ipmc.org.cn'; // SMTP 用户名 即邮箱的用户名
- $mail->Password = '12345678'; // SMTP 密码 部分邮箱是授权码(例如163邮箱)
- $mail->Port = 25; // 服务器端口 25 或者465 具体要看邮箱服务器支持
- $mail->SMTPOptions = array(
- 'ssl' => array(
- 'verify_peer' => false,
- 'verify_peer_name' => false,
- 'allow_self_signed' => true
- )
- );
- // 设置优先级(1:紧急 3:普通 5:低)
- //message.setHeader("X-Priority", "1");
- // 要求阅读回执(收件人阅读邮件时会提示回复发件人,表明邮件已收到,并已阅读)
- //message.setHeader("Disposition-Notification-To", from);
- $mail->setFrom('hzd@dr-ipmc.org.cn', 'hzd'); //发件人
- $mail->addAddress('1570246817@qq.com', '黄志东'); // 收件人
- //$mail->addAddress('ellen@example.com'); // 可添加多个收件人
- // $mail->addReplyTo('xxxx@163.com', 'info'); //回复的时候回复给哪个邮箱 建议和发件人一致
- //$mail->addCC('cc@example.com'); //抄送
- //$mail->addBCC('bcc@example.com'); //密送
- //发送附件
- // $mail->addAttachment('../xy.zip'); // 添加附件
- // $mail->addAttachment('../thumb-1.jpg', 'new.jpg'); // 发送附件并且重命名
- //Content
- $mail->isHTML(true); // 是否以HTML文档格式发送 发送后客户端可直接显示对应HTML内容
- $mail->Subject = '这里是邮件标题' . time();
- $mail->Body = '<h1>这里是邮件内容</h1>' . date('Y-m-d H:i:s');
- $mail->AltBody = '如果邮件客户端不支持HTML则显示此内容';
- $ret = $mail->send();
- dump($mail->getLastMessageID());
- dump($ret);
- echo '邮件发送成功';
- } catch (Exception $e) {
- echo '邮件发送失败: ', $mail->ErrorInfo;
- }
- }
- public function email111(){
- $username = "hzd@dr-ipmc.org.cn";
- $password = "12345678";
- $c = new Oaimap($username,$password);
- $ret = $c->getMessageByUid('INBOX',11);
- // $msg = file_get_contents('./msg.eml');
- // $ret = $c->getFoldersTree($msg);
- // $ret = $c->getMessages();
- // $c->disconnect();
- // $header = [];
- // foreach ($ret as $message){
- // dump($message->getSubject()) ;
- // }
- halt($ret);
- }
- public function email2(){
- $username = "hzd@dr-ipmc.org.cn";
- $password = "12345678";
- $c = new Oaimap2($username,$password);
- $ret = $c->getMessageByUid('INBOX',11);
- // $msg = file_get_contents('./msg.eml');
- // $ret = $c->getFoldersTree($msg);
- // $ret = $c->getMessages();
- // $c->disconnect();
- // $header = [];
- // foreach ($ret as $message){
- // dump($message->getSubject()) ;
- // }
- halt($ret);
- }
- public function mailso(){
- include \think\facade\Env::get('root_path') . 'extend/MailSo/MailSo.php';
- $username = "hzd@dr-ipmc.org.cn";
- $password = "12345678";
- $sLogFileFullPath = 'E:/website/';
- define('APP_START_TIME', time());
- // $oDriver = \MailSo\Log\Drivers\File::NewInstance($sLogFileFullPath);
- $oDriver = \MailSo\Log\Drivers\Syslog::NewInstance();
- $oLogger = \MailSo\Log\Logger::SingletonInstance()->Add(
- $oDriver->WriteOnErrorOnly(false)
- ->WriteOnPhpErrorOnly(false)
- ->WriteOnTimeoutOnly(20)
- );
- $oMailClient = MailClient::NewInstance()->SetLogger($oLogger);
- // $oData = $oMailClient
- // ->Connect('mail.dr-ipmc.org.cn', 143)
- // ->Login($username, $password)
- // ->MessageList('INBOX',0,10);
- //
- // $list = $this->responseObject($oData, 'MessageList');
- // $oData = $oMailClient
- // ->Connect('mail.dr-ipmc.org.cn', 143)
- // ->Login($username, $password)
- // ->Message('INBOX',12);
- //
- // $list = $this->responseObject($oData, 'Message');
- $oData = $oMailClient
- ->Connect('mail.dr-ipmc.org.cn', 143)
- ->Login($username, $password)
- ->Folders();
- $list = $this->responseObject($oData);
- // $ret = $this->std_class_object_to_array($oData);
- halt($list);
- }
- public function std_class_object_to_array($stdclassobject)
- {
- $array = [];
- $_array = is_object($stdclassobject) ? get_object_vars($stdclassobject) : $stdclassobject;
- foreach ($_array as $key => $value) {
- $value = (is_array($value) || is_object($value)) ? $this->std_class_object_to_array($value) : $value;
- $array[$key] = $value;
- }
- return $array;
- }
- public function index3(){
- $config = config('app.imap');
- // halt($config);
- $cm = new ClientManager($config);
- $oClient = $cm->account();
- $oClient->connect();
- $folders = $oClient->getFolders();
- //Loop through every Mailbox
- /** @var \Webklex\PHPIMAP\Folder $folder */
- foreach($folders as $folder){
- //Get all Messages of the current Mailbox $folder
- /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
- $messages = $folder->messages()->all()->get();
- /** @var \Webklex\PHPIMAP\Message $message */
- foreach($messages as $message){
- dump(is_utf8($message->getSubject()));
- if(!is_utf8($message->getSubject())){
- echo iconv("GBK","UTF-8",$message->getSubject()).'<br />';
- }else{
- echo $message->getSubject().'<br />';
- }
- echo 'Attachments: '.$message->getAttachments()->count().'<br />';
- echo $message->getHTMLBody().'<br />';
- //Move the current Message to 'INBOX.read'
- // if($message->move('INBOX.read') == true){
- // echo 'Message has ben moved';
- // }else{
- // echo 'Message could not be moved';
- // }
- }
- }
- exit();
- // $aFolder = $oClient->getFolders();
- // $ret = $oClient->createFolder('ssss.sssss');
- // halt($ret);
- $folder = $oClient->getFolderByPath('INBOX');
- $aMessage = $folder->messages()->all()->get();
- include \think\facade\Env::get('root_path') . 'extend/MailSo/lib/MailSo/Base/Utils.php';
- foreach($aMessage as $oMessage){
- // echo imap_mime_header_decode($oMessage->getAttributes()["subject"]).'<br />';
- echo \MailSo\Base\Utils::Utf8Clear($oMessage->getAttributes()["subject"]).'<br />';
- echo 'Attachments: '.$oMessage->getAttachments()->count().'<br />';
- // echo $oMessage->getHTMLBody(true);
- //Move the current Message to 'INBOX.read'
- // if($oMessage->moveToFolder('INBOX.read') == true){
- // echo 'Message has ben moved';
- // }else{
- // echo 'Message could not be moved';
- // }
- }
- halt('1111');
- $aFolder = $oClient->getFolders();
- foreach($aFolder as $oFolder){
- // $info = $oFolder->overview('1:*');
- $ret = $oFolder->getClient()->createFolder('subsss');
- halt($ret);
- dump($oFolder->path);
- dump($oFolder->name);
- dump($oFolder->full_name);
- dump($oFolder->children);
- halt(1111);
- // dump($info);
- //
- // //Get all Messages of the current Mailbox $oFolder
- // /** @var \Webklex\PHPIMAP\Support\MessageCollection $aMessage */
- // $aMessage = $oFolder->messages()->all()->get();
- //
- // /** @var \Webklex\PHPIMAP\Message $oMessage */
- // foreach($aMessage as $oMessage){
- // echo $oMessage->getSubject().'<br />';
- // echo 'Attachments: '.$oMessage->getAttachments()->count().'<br />';
- // echo $oMessage->getHTMLBody(true);
- //
- // //Move the current Message to 'INBOX.read'
- //// if($oMessage->moveToFolder('INBOX.read') == true){
- //// echo 'Message has ben moved';
- //// }else{
- //// echo 'Message could not be moved';
- //// }
- // }
- }
- // $aMessage = $oFolder->query()->all()->get();
- // halt($aMessage);
- }
- public function import(){
- halt('1111');
- $start = "2021-05-01 00:00:00";
- $end = "2021-05-31 23:59:59";
- $lists = Db::name('file')
- ->where('del',0)
- ->where('enable',1)
- ->where('create_time','>=',$start)
- ->where('create_time','<=',$end)
- ->order('id asc')
- ->select();
- $sn = $this->createNewSn(4);
- Db::startTrans();
- try{
- foreach ($lists as $k=>$v){
- $data = [
- 'title' => $v['title'],
- 'sn' => $sn,
- 'source' => $v['source'],
- 'proof' => $v['sn'],
- 'org_id' => 4,
- 'transfer' => 1,
- 'status' => 1,
- 'transfer_id' => $v['id'],
- 'create_time' => $v['create_time']
- ];
- $ret = Db::name('important')->insert($data);
- if(!$ret){
- \exception('操作失吧');
- }
- $sn++;
- }
- Db::commit();
- echo '操作完成';
- }catch (\think\Exception $e){
- Db::commit();
- halt('错误'.$e->getMessage());
- }
- }
- private function createNewSn($orgId){
- $newsn = '';
- $sn = Db::name('important')->where('del',0)->where('org_id',$orgId)->order('id desc')->value('sn');
- $curY = date('y');
- if(!$sn){
- $newsn = $curY.'0001';
- }else{
- $y = substr($sn,0,2);
- if($curY != $y){
- $newsn = $curY.'0001';
- }else{
- $newsn = $sn+1;
- }
- }
- return $newsn;
- }
- private function matchMailHead($str){
- $headList = array();
- $headArr = array(
- 'from',
- 'to',
- 'date',
- 'subject'
- );
- foreach ($headArr as $key){
- if(preg_match('/'.$key.':(.*?)[\n\r]/is', $str,$m)){
- $match = trim($m[1]);
- $headList[$key] = $key=='date'?date('Y-m-d H:i:s',strtotime($match)):$match;
- }
- }
- return $headList;
- }
- public function word4(){
- $PHPWord = new PhpWord();
- $templateProcessor = new TemplateProcessor(__DIR__.'\test.docx');
- $arr = [
- [
- 'programSn' => 'N0001',
- 'company' => '中心',
- 'fhUserName' => '张三',
- 'agent' => '李四',
- 'name' => [
- ['name' => '未制定安全生','val'=>'sss'],
- ['name' => '未制定安全生','val'=>'sss'],
- ]
- ],
- [
- 'programSn' => 'N0002',
- 'company' => '新华',
- 'fhUserName' => '张三2',
- 'agent' => '李四2',
- 'name' => [
- ['name' => '未制定安全生','val'=>'sss'],
- ['name' => '未制定安全生','val'=>'sss'],
- ]
- ],
- ];
- $templateProcessor->cloneBlock('block_name', 0, true, false, $arr);
- // 循环次数
- $count = count($arr);
- // $templateProcessor->cloneRow('programSn', $count); //复制行、
- // foreach ($arr as $kk => $vv) {
- // $list = '';
- // for ($i = 0; $i < count($vv['list']); $i++) {
- // if ($i == (count($vv['list']) - 1)) {
- // $list = $list . ($i + 1) . ' .${name#' . ($kk + 1) . '#' . ($i + 1) . '}';
- // } else {
- // // <w:br/> 换行符
- // $list = $list . ($i + 1) . ' .${name#' . ($kk + 1) . '#' . ($i + 1) . '}<w:br/>';
- // }
- // }
- // $templateProcessor->setValue('name#' . ($kk + 1), $list);
- // }
- // 保存新word文档
- $path = md5(time());
- // 将 word 文档保存至 你设置的路径
- $templateProcessor->saveAs('./zss' . time() . ".docx");
- }
- public function word(){
- $templateProcessor = new TemplateProcessor(__DIR__.'/../../../public/word/stamp_tmp.docx');
- $templateProcessor->setValue('firstname', 'John');
- $templateProcessor->setValue('lastname', 'Doe');
- $arr = [
- [
- 'programSn' => 'N0001',
- 'company' => '中心',
- 'fhUserName' => '张三',
- 'agent' => '李四',
- 'name1' => '应税凭证名称',
- 'title' => '111',
- 'name2' => '对方单位名称',
- 'company2' => '111',
- 'name3' => '签订日期',
- 'handleDate' => '111',
- 'name4' => '适用印花税税目',
- 'stampTitle' => '111',
- 'name5' => '计税金额',
- 'money' => '111',
- 'name6' => '适用税率',
- 'stampBl' => '111',
- 'name7' => '本期应纳税额',
- 'sdMoney' => '111',
- ],
- [
- 'programSn' => 'N0002',
- 'company' => '中心',
- 'fhUserName' => '张三',
- 'agent' => '李四',
- 'name1' => '应税凭证名称',
- 'title' => '111',
- 'name2' => '对方单位名称',
- 'company2' => '111',
- 'name3' => '签订日期',
- 'handleDate' => '111',
- 'name4' => '适用印花税税目',
- 'stampTitle' => '111',
- 'name5' => '计税金额',
- 'money' => '111',
- 'name6' => '适用税率',
- 'stampBl' => '111',
- 'name7' => '本期应纳税额',
- 'sdMoney' => '111',
- ],
- ];
- $templateProcessor->cloneBlock('block_name', 0, true, false, $arr);
- $templateProcessor->cloneBlock('block_name2', 0, true, false, $arr);
- // 将 word 文档保存至 你设置的路径
- $file_dir = './word/zs' . time() . ".docx";
- $templateProcessor->saveAs($file_dir);
- $file = fopen ( $file_dir, "rb" );//以只读和二进制模式打开文件
- Header ( "Content-type: application/octet-stream" ); //告诉浏览器这是一个文件流格式的文件
- Header ( "Accept-Ranges: bytes" ); //请求范围的度量单位
- Header ( "Accept-Length: " . filesize ( $file_dir ) ); //Content-Length是指定包含于请求或响应中数据的字节长度
- //用来告诉浏览器,文件是可以当做附件被下载,下载后的文件名称为$file_name该变量的值。
- Header ( "Content-Disposition: attachment; filename=印花税计算表.docx" );
- echo fread ( $file, filesize ( $file_dir ) ); //读取文件内容并直接输出到浏览器
- fclose ( $file );
- @unlink($file_dir);
- exit ();
- }
- public function word2(){
- $templateProcessor = new TemplateProcessor(__DIR__.'/../../../public/word/gerenjianli(1).docx');
- $templateProcessor->setValue('name', 'John');
- // $templateProcessor->setValue('lastname', 'Doe');
- $arr = [
- [
- 'project' => 'N0001',
- 'project_time' => '中心',
- 'project_content' => '张三',
- 'project_link' => '李四',
- 'project_yeji' => '应税凭证名称',
- ],
- [
- 'project' => 'N0002',
- 'project_time' => '中心2',
- 'project_content' => '张三',
- 'project_link' => '李四',
- 'project_yeji' => '应税凭证名称',
- ],
- ];
- $templateProcessor->cloneBlock('block_name2', 0, true, false, $arr);
- // $templateProcessor->cloneBlock('block_name2', 0, true, false, $arr);
- $arr2 = [
- [
- 'programSn' => 'N0001',
- 'company' => '中心',
- 'fhUserName' => '张三',
- 'agent' => '李四',
- 'name1' => '应税凭证名称',
- 'title' => '111',
- 'name2' => '对方单位名称',
- 'company2' => '111',
- 'name3' => '签订日期',
- 'handleDate' => '111',
- 'name4' => '适用印花税税目',
- 'stampTitle' => '111',
- 'name5' => '计税金额',
- 'money' => '111',
- 'name6' => '适用税率',
- 'stampBl' => '111',
- 'name7' => '本期应纳税额',
- 'sdMoney' => '111',
- ],
- [
- 'programSn' => 'N0002',
- 'company' => '中心',
- 'fhUserName' => '张三',
- 'agent' => '李四',
- 'name1' => '应税凭证名称',
- 'title' => '111',
- 'name2' => '对方单位名称',
- 'company2' => '111',
- 'name3' => '签订日期',
- 'handleDate' => '111',
- 'name4' => '适用印花税税目',
- 'stampTitle' => '111',
- 'name5' => '计税金额',
- 'money' => '111',
- 'name6' => '适用税率',
- 'stampBl' => '111',
- 'name7' => '本期应纳税额',
- 'sdMoney' => '111',
- ],
- ];
- $templateProcessor->cloneBlock('block_name3', 0, true, false, $arr2);
- // 将 word 文档保存至 你设置的路径
- $file_dir = './word/zs' . time() . ".docx";
- $templateProcessor->saveAs($file_dir);
- $file = fopen ( $file_dir, "rb" );//以只读和二进制模式打开文件
- Header ( "Content-type: application/octet-stream" ); //告诉浏览器这是一个文件流格式的文件
- Header ( "Accept-Ranges: bytes" ); //请求范围的度量单位
- Header ( "Accept-Length: " . filesize ( $file_dir ) ); //Content-Length是指定包含于请求或响应中数据的字节长度
- //用来告诉浏览器,文件是可以当做附件被下载,下载后的文件名称为$file_name该变量的值。
- Header ( "Content-Disposition: attachment; filename=印花税计算表.docx" );
- echo fread ( $file, filesize ( $file_dir ) ); //读取文件内容并直接输出到浏览器
- fclose ( $file );
- @unlink($file_dir);
- exit ();
- }
- public function wordold(){
- $PHPWord = new PhpWord();
- $templateProcessor = new TemplateProcessor(__DIR__.'\test.docx');
- $arr = [
- [
- 'programSn' => 'N0001',
- 'company' => '中心',
- 'fhUserName' => '张三',
- 'agent' => '李四',
- 'list' => [
- ['list' => '未制定安全生产责任制,扣10分;未经责任人签字确认,扣5分'],
- ['list' => '未制定安全生产责任制,扣9分;未经责任人签字确认,扣2分'],
- ]
- ],
- [
- 'programSn' => 'N0002',
- 'company' => '新华',
- 'fhUserName' => '张三2',
- 'agent' => '李四2',
- 'list' => [
- ['list' => '未制定安全生产责任制,扣10分;未经责任人签字确认,扣5分'],
- ['list' => '未制定安全生产责任制,扣9分;未经责任人签字确认,扣2分'],
- ]
- ],
- ];
- // 循环次数
- $count = count($arr);
- $templateProcessor->cloneRow('programSn', $count); //复制行、
- foreach ($arr as $kk => $vv) {
- $list = '';
- for ($i = 0; $i < count($vv['list']); $i++) {
- if ($i == (count($vv['list']) - 1)) {
- $list = $list . ($i + 1) . ' .${list#' . ($kk + 1) . '#' . ($i + 1) . '}';
- } else {
- // <w:br/> 换行符
- $list = $list . ($i + 1) . ' .${list#' . ($kk + 1) . '#' . ($i + 1) . '}<w:br/>';
- }
- }
- $templateProcessor->setValue('list#' . ($kk + 1), $list);
- }
- // 保存新word文档
- $path = md5(time());
- // 将 word 文档保存至 你设置的路径
- $templateProcessor->saveAs('./zs' . time() . ".docx");
- }
- public function word3(){
- header('Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document');
- header('Content-Disposition: attachment;filename="印花税单.docx"');
- header('Cache-Control: max-age=0');
- $html = '';
- $html .= '<div class="stamp-box">';
- $html .= '<div class="stamp-title"> 印花税计算表 </div>';
- $html .= '<div class="stamp-desc"> 项目编号: {{ item.programSn }} </div>';
- $html .= '<div class="stamp-desc"> 报税单位: {{ item.company }} <span class="pull-right">单位: 元</span> </div>';
- $html .= '<table border="1" style="width:100%;border-color: #000;">';
- $html .= '<tr> <td width="150">应税凭证名称</td><td>{{ item.title }}</td></tr>';
- $html .= '<tr><td>对方单位名称</td><td>{{ item.company2 }}</td></tr>';
- $html .= '<tr><td>签订日期</td><td>{{ item.handleDate }}</td></tr>';
- $html .= '<tr><td>适用印花税税目</td><td>{{ item.stamp.title }}</td></tr>';
- $html .= '<tr><td>计税金额</td><td>{{ item.money }}</td></tr>';
- $html .= '<tr><td>适用税率</td><td>{{ item.stamp.bl }}‰</td></tr>';
- $html .= '<tr><td>本期应纳税额</td><td>{{ item.sdMoney }}</td></tr>';
- $html .= '</table>';
- $html .= '<table style="width:100%;margin-top: 5px;"><tr><td>核税人: {{ item.fhUserName }}</td><td /><td>填报人: {{ item.agent }}</td><td /></tr></table>';
- $html .= '</div>';
- $phpword = new PhpWord();
- $section = $phpword->addSection();
- \PhpOffice\PhpWord\Shared\Html::addHtml($section, $html, false, false);
- $objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpword, 'Word2007');
- $objWriter->save('php://output');
- }
- public function import2(){
- exit();
- $reader = new \PhpOffice\PhpSpreadsheet\Reader\Xls();
- // $spreadsheet = $reader->load('./xinhua.xlsx');
- $spreadsheet = $reader->load('./mx.xls');
- $sheet = $spreadsheet->getActiveSheet();
- // $users = Db::name('user_info')->column('user_id','name');
- $adds = Db::name('asset_add')->column('id','title');
- $cates = Db::name('asset_cate')->column('id','title');
- $units = Db::name('asset_unit')->column('id','title');
- $classs = Db::name('asset_class')->column('id','title');
- $enables = ['使用' => 2,'在库' => 1];
- $company = 2;
- $orgId = 4;
- $res = array();
- $keys = ['A','B','C','D','E','F','G','H','I','J','K','L','M'];
- $names = [
- 'A' => 'sn',
- 'B' => 'old_sn',
- 'C' => 'title',
- 'D' => 'class_id',
- 'E' => 'cate_id',
- 'F' => 'nums',
- 'G' => 'enable',
- 'H' => 'add_id',
- 'I' => 'spec',
- 'J' => 'unit_id',
- 'K' => 'price',
- 'L' => 'buy_time',
- 'M' => 'brand'
- ];
- $oldsn = [];
- $data = [];
- foreach ($sheet->getRowIterator(2) as $row) {
- $tmp = array();
- foreach ($row->getCellIterator() as $k=>$cell) {
- if(!in_array($k,$keys)){
- break;
- }
- $val = $cell->getFormattedValue();
- if($k == 'D'){
- if(!empty($classs[$val])){
- $tmp[$names[$k]] = $classs[$val];
- }else{
- $tmp[$names[$k]] = 0;
- }
- }else if($k == 'E'){
- $val = $cell->getFormattedValue();
- if(!empty($cates[$val])){
- $tmp[$names[$k]] = $cates[$val];
- }else{
- $tmp[$names[$k]] = 0;
- }
- }else if($k == 'G'){
- $val = $cell->getFormattedValue();
- if(!empty($enables[$val])){
- $tmp[$names[$k]] = $enables[$val];
- }else{
- $tmp[$names[$k]] = 0;
- }
- }else if($k == 'H'){
- $val = $cell->getFormattedValue();
- if(!empty($adds[$val])){
- $tmp[$names[$k]] = $adds[$val];
- }else{
- $tmp[$names[$k]] = 0;
- }
- }else if($k == 'J'){
- $val = $cell->getFormattedValue();
- if(!empty($units[$val])){
- $tmp[$names[$k]] = $units[$val];
- }else{
- $tmp[$names[$k]] = 0;
- }
- }else{
- $tmp[$names[$k]] = $cell->getFormattedValue();
- }
- }
- if(!$tmp['buy_time']){
- $tmp['buy_time'] = null;
- }
- $tmp['buy_time'] = !$tmp['buy_time']?null:date('Y-m-d',strtotime($tmp['buy_time']));
- $tmp['company_id'] = $company;
- $tmp['org_id'] = $orgId;
- $tmp['create_time'] = date('Y-m-d H:i:s');
- if(!in_array($tmp['old_sn'],$oldsn)){
- $oldsn[] = $tmp['old_sn'];
- }
- $data[] = $tmp;
- }
- Db::name('asset_items')->where('old_sn','in',$oldsn)->setField('del',1);
- $ret = Db::name('asset_items')->insertAll($data);
- dump($ret);
- dump($oldsn);
- halt($data);
- }
- public function import1(){
- $reader = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx();
- // $spreadsheet = $reader->load('./xinhua.xlsx');
- $spreadsheet = $reader->load('./zhongxin.xlsx');
- $sheet = $spreadsheet->getActiveSheet();
- $users = Db::name('user_info')->column('user_id','name');
- $adds = Db::name('asset_add')->column('id','title');
- $cates = Db::name('asset_cate')->column('id','title');
- $units = Db::name('asset_unit')->column('id','title');
- $classs = Db::name('asset_class')->column('id','title');
- $enables = ['使用' => 2,'在库' => 1];
- $company = 1;
- $orgId = 4;
- $res = array();
- $keys = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S'];
- $names = [
- 'A' => 'sn',
- 'B' => 'old_sn',
- 'C' => 'title',
- 'D' => 'class_id',
- 'E' => 'cate_id',
- 'F' => 'nums',
- 'H' => 'user_id',
- 'I' => 'enable',
- 'J' => 'add_id',
- 'K' => 'spec',
- 'L' => 'unit_id',
- 'M' => 'price',
- 'N' => 'buy_time',
- 'O' => 'brand',
- 'P' => 'remark',
- 'Q' => 'remark2',
- 'R' => 'remark3',
- 'S' => 'remark4'
- ];
- foreach ($sheet->getRowIterator(2) as $row) {
- $tmp = array();
- foreach ($row->getCellIterator() as $k=>$cell) {
- if(!in_array($k,$keys)){
- break;
- }
- if($k != 'G'){
- $val = $cell->getFormattedValue();
- if($k == 'D'){
- if(!empty($classs[$val])){
- $tmp[$names[$k]] = $classs[$val];
- }else{
- $tmp[$names[$k]] = 0;
- }
- }else if($k == 'E'){
- $val = $cell->getFormattedValue();
- if(!empty($cates[$val])){
- $tmp[$names[$k]] = $cates[$val];
- }else{
- $tmp[$names[$k]] = 0;
- }
- }else if($k == 'I'){
- $val = $cell->getFormattedValue();
- if(!empty($enables[$val])){
- $tmp[$names[$k]] = $enables[$val];
- }else{
- $tmp[$names[$k]] = 0;
- }
- }else if($k == 'H'){
- $val = $cell->getFormattedValue();
- if(!empty($users[$val])){
- $tmp[$names[$k]] = $users[$val];
- $depId = Db::name('user_job')
- ->alias('uj')
- ->join('job j','j.id = uj.job_id')
- ->where('uj.user_id',$users[$val])
- ->value('j.dep_id');
- $tmp['dep_id'] = $depId?$depId:0;
- }else{
- $tmp[$names[$k]] = 0;
- $tmp['dep_id'] = 0;
- }
- }else if($k == 'J'){
- $val = $cell->getFormattedValue();
- if(!empty($adds[$val])){
- $tmp[$names[$k]] = $adds[$val];
- }else{
- $tmp[$names[$k]] = 0;
- }
- }else if($k == 'L'){
- $val = $cell->getFormattedValue();
- if(!empty($units[$val])){
- $tmp[$names[$k]] = $units[$val];
- }else{
- $tmp[$names[$k]] = 0;
- }
- }else{
- $tmp[$names[$k]] = $cell->getFormattedValue();
- }
- }
- }
- if(!$tmp['buy_time']){
- $tmp['buy_time'] = null;
- }
- $tmp['company_id'] = $company;
- $tmp['org_id'] = $orgId;
- $tmp['create_time'] = date('Y-m-d H:i:s');
- if($tmp['user_id'] == 0&&$tmp['enable'] == 2){
- // $errors[] = $tmp;
- // $errorids[] = $row->getRowIndex();
- }else{
- if($tmp['sn']){
- $ret = Db::name('asset_items')->where('sn',$tmp['sn'])->find();
- if(!$ret){
- $res[] = $tmp;
- }
- }
- }
- }
- // halt($res);
- dump(count($res));
- $ret = Db::name('asset_items')->insertAll($res);
- halt($ret);
- }
- public function programSn(){
- exit();
- // 获取主合同编号
- $programs = Db::name('program')->select();
- foreach ($programs as $k=>$v){
- $lists = Db::name('contract')
- ->alias('c')
- ->join('apply a','a.id = c.apply_id')
- ->where('c.status',1)
- ->where('a.del',0)
- ->where('c.type',0)
- ->where('c.program_id',$v['id'])
- ->order('a.finish_time asc')
- ->field('c.*')
- ->select();
- $i = 1;
- foreach ($lists as $kk=>$vv){
- $sn = $v['sn'].str_pad($i,4,'0',STR_PAD_LEFT);
- Db::name('contract')->where('id',$vv['id'])->update(['program_sn'=>$sn]);
- $subs = Db::name('contract')
- ->alias('c')
- ->join('apply a','a.id = c.apply_id')
- ->where('c.status',1)
- ->where('a.del',0)
- ->where('c.type',1)
- ->where('c.parent_apply_id',$vv['id'])
- ->order('a.finish_time asc')
- ->field('c.*')
- ->select();
- $j = 1;
- foreach ($subs as $kkk => $vvv){
- $ssn = $sn.'补'.str_pad($j,2,'0',STR_PAD_LEFT);
- Db::name('contract')->where('id',$vvv['id'])->update(['program_sn'=>$ssn]);
- $j++;
- }
- $i++;
- }
- }
- echo '完成';
- }
- public function budgetDep(){
- exit();
- $id = 2126;
- $info = Db::name('apply')->where('id',$id)->find();
- $formJson = $info['form_json'];
- $values = [];
- $formJson = json_decode($formJson,true);
- foreach ($formJson as $k=>$v){
- if($v['componentName'] == 'ddbudgetfield'){
- foreach ($v['components'] as $key=>$val){
- switch ($val['idx']){
- case '0':
- $values = json_decode($val['values'],true);
- break;
- }
- }
- break;
- }
- }
- $items = $values['items'];
- $curTime = '2021-01-22 10:41:56';
- $orgId = 4;
- $apply = Db::name('budget_apply')->where('apply_id',$id)->find();
- foreach ($items as $k=>$v){
- $sdata = [
- 'org_id' => $orgId,
- 'dep_id' => $apply['dep_id'],
- 'budget_id' => $apply['budget_id'],
- 'company_id' => $apply['company_id'],
- 'items_id' => $v['id'],
- 'money' => floatval($v['money']),
- 'money2' => !empty($v['money2'])?floatval($v['money2']):0,
- 'money3' => !empty($v['money3'])?floatval($v['money3']):0,
- 'intro' => !empty($v['intro'])?$v['intro']:'',
- 'create_time' => $curTime
- ];
- $res = Db::name('budget_dep')->insert($sdata);
- }
- halt('成功');
- }
- public function stamp(){
- exit();
- $ids = Db::name('contract_stamp_log')->column('contract_id');
- trace($ids);
- dump($ids);
- if($ids){
- $ids = array_unique($ids);
- $lists = Db::name('contract')->where('id','not in',$ids)->where('type',0)->where('status',1)->select();
- }else{
- $lists = Db::name('contract')->where('type',0)->where('status',1)->select();
- }
- foreach ($lists as $k=>$v){
- if($v['sdid'] > 0){
- $sdinfo = Db::name('stamp_duty')->where('id',$v['sdid'])->find();
- $sd_money = round($v['money'] * $sdinfo['bl'] / 1000,1);
- if($sd_money < 1 && $sdinfo['type'] == 1){
- $sd_money = 1;
- }
- if($sd_money < 1 && $sdinfo['type'] == 2){
- $sd_money = 0;
- }
- if($sd_money != $v['sd_money']){
- trace('修改:'.json_encode($v));
- trace('修改为:'.$sd_money);
- dump('修改:'.json_encode($v));
- dump('修改为:'.$sd_money);
- Db::name('contract')->where('id',$v['id'])->update(['sd_money'=>$sd_money]);
- }
- }
- }
- halt('完成');
- }
- public function bksb(){
- exit();
- $names = ['name','total','sye','yli','gjj'];
- $file = './bksb.xlsx';
- $data = ExcelUtil::read($file,$names,2);
- $salaryRecordId = 493;
- $lists = Db::name('salary_record_special')
- ->alias('srs')
- ->join('user_info ui','ui.user_id = srs.user_id')
- ->where('srs.salary_record_id',$salaryRecordId)
- ->field('srs.*,ui.name')
- ->select();
- $count = 0;
- foreach ($lists as $k=>$v){
- foreach ($data as $kk=>$vv){
- if($v['name'] == $vv['name']){
- $nljgjj = round($v['ljgjj'] - round($vv['gjj'],2),2);
- $nljsybx = round($v['ljsybx'] - round($vv['sye'],2),2);
- $nljylibx = round($v['ljylibx'] - round($vv['yli'],2),2);
- $lists[$k]['gjj'] = round($vv['gjj'],2);
- $lists[$k]['sye'] = round($vv['sye'],2);
- $lists[$k]['yli'] = round($vv['yli'],2);
- $lists[$k]['nljgjj'] = $nljgjj;
- $lists[$k]['nljsybx'] = $nljsybx;
- $lists[$k]['nljylibx'] = $nljylibx;
- Db::name('salary_record_special')->where('id',$v['id'])->update([
- 'ljgjj' => $nljgjj,
- 'ljsybx' => $nljsybx,
- 'ljylibx' => $nljylibx
- ]);
- $count++;
- break;
- }
- }
- }
- dump($count);
- halt($lists);
- halt($data);
- }
- public function bksb2(){
- exit();
- $names = ['name','total','yla','sye','yli','gjj','qynj'];
- $file = './bksb2.xlsx';
- $data = ExcelUtil::read($file,$names,2);
- dump(count($data));
- $salaryRecordId = 489;
- $lists = Db::name('salary_record_special')
- ->alias('srs')
- ->join('user_info ui','ui.user_id = srs.user_id')
- ->where('srs.salary_record_id',$salaryRecordId)
- ->field('srs.*,ui.name')
- ->select();
- $count = 0;
- foreach ($lists as $k=>$v){
- foreach ($data as $kk=>$vv){
- if($v['name'] == $vv['name']){
- $nljgjj = round($v['ljgjj'] - round($vv['gjj'],2),2);
- $nljsybx = round($v['ljsybx'] - round($vv['sye'],2),2);
- $nljylibx = round($v['ljylibx'] - round($vv['yli'],2),2);
- $nljylobx = round($v['ljylobx'] - round($vv['yla'],2),2);
- $nljnj = round($v['ljnj'] - round($vv['qynj'],2),2);
- $lists[$k]['gjj'] = round($vv['gjj'],2);
- $lists[$k]['sye'] = round($vv['sye'],2);
- $lists[$k]['yli'] = round($vv['yli'],2);
- $lists[$k]['yla'] = round($vv['yla'],2);
- $lists[$k]['qynj'] = round($vv['qynj'],2);
- $lists[$k]['nljgjj'] = $nljgjj;
- $lists[$k]['nljsybx'] = $nljsybx;
- $lists[$k]['nljylibx'] = $nljylibx;
- $lists[$k]['nljylobx'] = $nljylobx;
- $lists[$k]['nljnj'] = $nljnj;
- Db::name('salary_record_special')->where('id',$v['id'])->update([
- 'ljgjj' => $nljgjj,
- 'ljsybx' => $nljsybx,
- 'ljylibx' => $nljylibx,
- 'ljylobx' => $nljylobx,
- 'ljnj' => $nljnj
- ]);
- $count++;
- break;
- }
- }
- }
- dump($count);
- halt($lists);
- halt($data);
- }
- }
|