| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321 |
- //package com.muzhi.huanshi.APITest;
- //
- //import cn.hutool.core.date.DateTime;
- //import cn.hutool.core.date.DateUtil;
- //import cn.hutool.core.thread.ThreadUtil;
- //import com.alibaba.fastjson.JSON;
- //import com.alibaba.fastjson.JSONArray;
- //import com.alibaba.fastjson.JSONObject;
- //import com.aliyun.dingtalkyida_1_0.models.*;
- //import com.aliyun.tea.TeaException;
- //import com.aliyun.teautil.models.RuntimeOptions;
- //import com.auth0.jwt.JWT;
- //import com.auth0.jwt.algorithms.Algorithm;
- //import com.dingtalk.api.DefaultDingTalkClient;
- //import com.dingtalk.api.DingTalkClient;
- //import com.dingtalk.api.request.*;
- //import com.dingtalk.api.response.*;
- //import com.muzhi.huanshi.service.AccessTokenService;
- //import com.taobao.api.ApiException;
- //import com.taobao.api.internal.util.StringUtils;
- //import lombok.extern.slf4j.Slf4j;
- //import okhttp3.*;
- //import org.apache.commons.codec.digest.DigestUtils;
- //import org.apache.commons.lang.StringEscapeUtils;
- //import org.apache.poi.ss.formula.functions.T;
- //import org.jacoco.agent.rt.internal_035b120.core.internal.flow.IFrame;
- //import org.junit.jupiter.api.Test;
- //import org.springframework.beans.factory.annotation.Autowired;
- //import org.springframework.boot.test.context.SpringBootTest;
- //
- //import java.io.IOException;
- //import java.math.BigDecimal;
- //import java.math.RoundingMode;
- //import java.text.DateFormat;
- //import java.text.DecimalFormat;
- //import java.text.SimpleDateFormat;
- //import java.util.*;
- //import java.util.concurrent.ExecutorService;
- //import java.util.concurrent.Executors;
- //import java.util.concurrent.TimeUnit;
- //
- //@SpringBootTest
- //@Slf4j
- //public class Test1 {
- //
- // @Autowired
- // private AccessTokenService accessTokenService;
- //
- // @Test
- // public void panduan(){
- // //判断日期是否为周六周日
- // String date = "2022-10-08 00:00:00";
- // DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
- // Date date1 = null;
- // try {
- // date1 = format.parse(date);
- // System.out.println("date1:" + date1);
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- // Calendar calendar = Calendar.getInstance();
- // calendar.setTime(date1);
- //
- // if (calendar.get(Calendar.DAY_OF_WEEK)==Calendar.SATURDAY||calendar.get(Calendar.DAY_OF_WEEK)==Calendar.SUNDAY){
- // System.out.println("当前日期为周六周日!");
- // }else {
- // System.out.println("当前日期为工作日");
- // }
- // }
- //
- // @Test
- // public void date(){
- // int dkcs = 5;
- // int ccts = 0;
- //
- // dkcs = dkcs/2;
- // int dkcsLast = (int)dkcs;
- //
- //
- // if (dkcs > 0){
- // //实际出差天数
- // ccts = ccts + dkcsLast;
- // System.out.println("实际出差天数:" + ccts);
- // }
- //
- // SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- // long startLong = new Long("1670342400000");
- // //将时间戳转换为时间
- // Date startDate = new Date(startLong);
- // System.out.println("出差开始时间(时间型):" + startDate);
- // //将时间调整为yyyy-MM-dd HH:mm:ss时间样式
- // String startString = simpleDateFormat.format(startDate);
- // System.out.println("出差开始时间(时间样式):" + startString);
- //
- // long endLong = new Long("1670428800000");
- // //将时间戳转换为时间
- // Date endDate = new Date(endLong);
- // System.out.println("出差结束时间(时间型):" + endDate);
- // //将时间调整为yyyy-MM-dd HH:mm:ss时间样式
- // String endString = simpleDateFormat.format(endDate);
- // System.out.println("出差结束时间(时间样式):" + endString);
- //
- // Calendar calendar1 = Calendar.getInstance();
- // calendar1.setTime(endDate);
- // //后面一天
- // calendar1.add(Calendar.DAY_OF_MONTH,1);
- // calendar1.set(Calendar.HOUR_OF_DAY,0);
- // calendar1.set(Calendar.MINUTE,0);
- // calendar1.set(Calendar.SECOND,0);
- // calendar1.set(Calendar.MILLISECOND,0);
- // String time1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar1.getTime());
- // System.out.println("出差结束时间后面一天零点:" + time1);
- //
- // DateTime lastDateTime = DateUtil.parse(time1);
- // System.out.println("出差结束时间后面一天(时间型):" + lastDateTime);
- //
- // //获取当天前一天的零点零分零秒
- // Date Date = new Date(System.currentTimeMillis());
- // System.out.println("当前时间:" + Date);
- // String dateNowString = simpleDateFormat.format(Date);
- // System.out.println("当前时间(时间样式):" + dateNowString);
- //
- // Calendar calendar = Calendar.getInstance();
- // calendar.setTime(Date);
- // //前一天
- // calendar.add(Calendar.DAY_OF_MONTH,-1);
- // calendar.set(Calendar.HOUR_OF_DAY,0);
- // calendar.set(Calendar.MINUTE,0);
- // calendar.set(Calendar.SECOND,0);
- // calendar.set(Calendar.MILLISECOND,0);
- // String time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar.getTime());
- // System.out.println("前一天零点:" + time);
- //
- // Calendar calendar111 = Calendar.getInstance();
- // calendar111.setTime(Date);
- // //前一个月第一天
- // calendar111.add(Calendar.MONTH,-1);
- // calendar111.set(Calendar.DAY_OF_MONTH,1);
- // calendar111.set(Calendar.HOUR_OF_DAY,0);
- // calendar111.set(Calendar.MINUTE,0);
- // calendar111.set(Calendar.SECOND,0);
- // calendar111.set(Calendar.MILLISECOND,0);
- // String FORMtime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar111.getTime());
- // System.out.println("前一个月第一天零点:" + FORMtime);
- //
- // Calendar calendar222 = Calendar.getInstance();
- // int month222 = calendar222.get(Calendar.MONTH);
- // //前一个月最后一天
- // calendar222.set(Calendar.MONTH,month222-1);
- // calendar222.set(Calendar.DAY_OF_MONTH,calendar222.getActualMaximum(Calendar.DAY_OF_MONTH));
- // calendar222.set(Calendar.HOUR_OF_DAY,0);
- // calendar222.set(Calendar.MINUTE,0);
- // calendar222.set(Calendar.SECOND,0);
- // calendar222.set(Calendar.MILLISECOND,0);
- // String TOtime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar222.getTime());
- // System.out.println("前一个月最后一天零点:" + TOtime);
- // }
- //
- // //MD5加密
- // @Test
- // public void MD5(){
- //
- // /*明文
- // * timestamp毫秒级时间戳
- // * */
- // //当前时间的时间戳
- // long timeMillis = System.currentTimeMillis();
- // String timestamp = String.valueOf(timeMillis);
- // log.info("当前时间的时间戳(毫秒级):" + timestamp);
- //
- // /*秘钥
- // * AppSecret应用秘钥
- // * */
- // String AppSecret = "f7585e1f2c4c25682f407af23b7ff7d5f21f4f9e3715c294";
- //
- // //加密后的字符串
- // String encodeStr= DigestUtils.md5Hex(AppSecret + "_" + timestamp);
- // log.info("MD5加密后的字符串encodeStr:" + encodeStr);
- //
- // Map map = new HashMap();
- // map.put("appKey","shbqv00tso4dg5kcjz");
- // map.put("timestamp",timestamp);
- // map.put("verifyCode",encodeStr);
- // String parmsStr = JSON.toJSONString(map);
- // log.info("封装秘钥参数parmsStr:" + parmsStr);
- //
- // //售后宝【接口授权】
- // //授权码
- // String access_token = null;
- // //失效时间
- // String expire_time = null;
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("application/json");
- // RequestBody body = RequestBody.create(mediaType, parmsStr);
- // Request request = new Request.Builder()
- // .url("https://oapi.shb.ltd/service/auth/get_access_token")
- // .method("POST", body)
- // .addHeader("Content-Type", "application/json")
- // .addHeader("Cookie", "acw_tc=0a45662a16728986832314856e80f39124201b89184960430078b3ebfda740")
- // .build();
- //
- // Response response = client.newCall(request).execute();
- // String responseBody = response.body().string();
- // log.info("售后宝【接口授权】返回信息:" + responseBody);
- // String substring1 = responseBody.substring(1, responseBody.length() - 1);
- // log.info("去除首尾双引号后的返回信息:" + substring1);
- // String substring2 = substring1.replaceAll("\\\\", "");
- // log.info("去除转义字符后的返回信息:" + substring2);
- //
- // JSONObject jsonObject = JSON.parseObject(substring2);
- // JSONObject data = jsonObject.getJSONObject("data");
- // //授权码
- // access_token = data.getString("access_token");
- // //失效时间
- // expire_time = data.getString("expire_time");
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- //
- // SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- // long endLong = new Long(expire_time);
- // //将时间戳转换为时间
- // Date endDate = new Date(endLong);
- // System.out.println("授权码失效时间(时间型):" + endDate);
- // //将时间调整为yyyy-MM-dd HH:mm:ss时间样式
- // String endString = simpleDateFormat.format(endDate);
- // System.out.println("授权码失效时间(时间样式):" + endString);
- // log.info("【授权码】:" + access_token + "【失效时间】:" + endString);
- // }
- //
- // //【客户列表】
- // @Test
- // public void getKehuList(){
- // Map map = new HashMap();
- // map.put("pageSize",50);
- // map.put("pageNum",1);
- // map.put("keyword","KH20230607020507345");
- //
- // String jsonString = JSON.toJSONString(map);
- // System.out.println("封装的客户列表查询接口条件参数:" + jsonString);
- //
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("application/json");
- // RequestBody body = RequestBody.create(mediaType, jsonString);
- // Request request = new Request.Builder()
- // .url("https://oapi.shb.ltd/service/customer/get_customers?accessToken=4da6f063-5083-481f-8e0a-be59d41eea40")
- // .method("POST", body)
- // .addHeader("Content-Type", "application/json")
- // .build();
- //
- // try {
- // Response response = client.newCall(request).execute();
- // String responseBody = response.body().string();
- // log.info("售后宝【客户列表】返回信息:" + responseBody);
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- // }
- //
- // //根据客户编号查询售后宝客户是否存在
- // @Test
- // public void getKehuBoolean(){
- //
- // //售后宝授权码
- // String shouhoubaoAccessToken = "46998202-77f4-4943-a2a3-61a3a96a0959";
- // //客户编号
- // String khbh = "KH001";
- //
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // Request request = new Request.Builder()
- // .url("https://oapi.shb.ltd/service/customer/get_customer_customerNo?accessToken="+shouhoubaoAccessToken+
- // "&customerNo="+khbh)
- // .method("GET", null)
- // .build();
- //
- // boolean flag = false;
- // try {
- // Response response = client.newCall(request).execute();
- // String responseBody = response.body().string();
- // log.info("售后宝【客户详情】返回信息:" + responseBody);
- // String substring1 = responseBody.substring(1, responseBody.length() - 1);
- // log.info("去除首尾双引号后的返回信息:" + substring1);
- // String substring2 = substring1.replaceAll("\\\\", "");
- // log.info("去除转义字符后的返回信息:" + substring2);
- //
- // JSONObject jsonObject = JSON.parseObject(substring2);
- // Integer errorCode = jsonObject.getInteger("errorCode");
- // if (errorCode == 0){
- // System.out.println("当前客户在售后宝【已存在】!");
- // flag = true;
- // }else {
- // System.out.println("当前客户在售后宝【不存在】!");
- // flag = false;
- // }
- //
- // System.out.println("根据客户编号查询售后宝客户是否存在(true存在;false不存在):" + flag);
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- //
- // }
- //
- // //【售后宝人员ID】
- // @Test
- // public void getSHBid(){
- //
- // int pageNum = 1;
- // int pageSize = 50;
- //
- // //根据售人员姓名进行匹配查询售后宝人员id
- // String userName = "牧之";
- // List list = new ArrayList();
- // list.add(userName);
- //
- // Map map = new HashMap();
- // map.put("pageNum",pageNum);
- // map.put("pageSize",pageSize);
- // map.put("userNameList",list);
- //
- // //根据售售后宝人员userid进行匹配查询售后宝人员信息
- //// String userid = "f58e62b5-a843-11ed-bdbf-00163e179ed7";
- //// List list = new ArrayList();
- //// list.add(userid);
- ////
- //// Map map = new HashMap();
- //// map.put("pageNum",pageNum);
- //// map.put("pageSize",pageSize);
- //// map.put("userIds",list);
- //
- // String bodyStr = JSON.toJSONString(map);
- //
- // String userId = null;
- //
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("application/json");
- // RequestBody body = RequestBody.create(mediaType, bodyStr);
- // Request request = new Request.Builder()
- // .url("https://oapi.shb.ltd/service/user/get_user_params?accessToken=f3fa69d7-b152-4e5d-9659-4208dc4c7296")
- // .method("POST", body)
- // .addHeader("Content-Type", "application/json")
- // .build();
- //
- // try {
- // Response response = client.newCall(request).execute();
- // String responseBody = response.body().string();
- // log.info("售后宝【人员列表】返回信息:" + responseBody);
- // String substring1 = responseBody.substring(1, responseBody.length() - 1);
- // log.info("去除首尾双引号后的返回信息:" + substring1);
- // String substring2 = substring1.replaceAll("\\\\", "");
- // log.info("去除转义字符后的返回信息:" + substring2);
- //
- // JSONObject jsonObject = JSON.parseObject(substring2);
- // JSONObject data = jsonObject.getJSONObject("data");
- //// System.out.println("data===" + data);
- //
- // userId = data.getJSONArray("list").getJSONObject(0).getString("userId");
- // System.out.println("售后宝人员userId:" + userId);
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- //
- //// return userId;f58e62b5-a843-11ed-bdbf-00163e179ed7
- // }
- //
- // //【工单类型】
- // @Test
- // public void getGongdanType(){
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // Request request = new Request.Builder()
- // .url("https://oapi.shb.ltd/service/task/get_task_types?accessToken=0824c173-62f3-4ad5-a2d0-dc2d03fa8e6c")
- // .method("GET", null)
- // .build();
- //
- // try {
- // Response response = client.newCall(request).execute();
- // String responseBody = response.body().string();
- // log.info("售后宝【工单类型】返回信息:" + responseBody);
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- // }
- //
- // //【创建工单】
- // @Test
- // public void addGongdan(){
- //
- // /*
- // 【创建工单json参数】
- // {
- // "cusNo":"KH000384",
- // "cusName":"上海松江区就业促进中心",
- // "address":"上海市-市辖区-松江区-荣乐东路2378号1/2/3/6楼",
- // "lmName":"闻老师",
- // "lmPhone":"15800656968",
- // "templateId":"279bb347-913e-4627-bffc-605317774885",
- // "templateName":"安装工单",
- // "planTime":"2023-03-19",
- // "productIds": ["a0a6c248-f5f5-11ed-ae93-00163e1537d3","4ef0ee3f-f619-11ed-996b-00163e17c56d"],
- // "attribute": {
- // "field_DfIX3Gg9ziTYZQpY": ["有水","有电"]
- // }
- // }
- // */
- //
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("application/json");
- // RequestBody body = RequestBody.create(mediaType, " {\n" +
- // " \"cusNo\":\"KH000384\",\n" +
- // " \"cusName\":\"上海松江区就业促进中心\",\n" +
- // " \"address\":\"上海市-市辖区-松江区-荣乐东路2378号1/2/3/6楼\",\n" +
- // " \"lmName\":\"闻老师\",\n" +
- // " \"lmPhone\":\"15800656968\",\n" +
- // " \"templateId\":\"279bb347-913e-4627-bffc-605317774885\",\n" +
- // " \"templateName\":\"安装工单\",\n" +
- // " \"planTime\":\"2023-03-19\",\n" +
- // " \"productIds\": [\"a0a6c248-f5f5-11ed-ae93-00163e1537d3\",\"4ef0ee3f-f619-11ed-996b-00163e17c56d\"],\n" +
- // " \"attribute\": {\n" +
- // " \"field_DfIX3Gg9ziTYZQpY\": [\"有水\",\"有电\"]\n" +
- // " }\n" +
- // " }");
- // Request request = new Request.Builder()
- // .url("https://oapi.shb.ltd/service/task/create_task_v2?accessToken=88ee3824-1fd4-4209-811f-03b9a0b5d98c")
- // .method("POST", body)
- // .addHeader("Content-Type", "application/json")
- // .build();
- //
- // try {
- // Response response = client.newCall(request).execute();
- // String responseBody = response.body().string();
- // log.info("售后宝【创建工单】返回信息:" + responseBody);
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- // }
- //
- // //sha256加密测试
- // @Test
- // public void sha256test(){
- //
- // //sha256加密
- // /*明文
- // * timestamp毫秒级时间戳
- // * */
- // //当前时间的时间戳
- // long timeMillis = System.currentTimeMillis();
- // String timestamp = String.valueOf(timeMillis);
- // log.info("当前时间的时间戳(毫秒级):" + timestamp);
- //
- // String qingqiu = "{\"mihome\": 112,\"date\": \"2023-01-01\"}";
- //
- // /*秘钥
- // * AppSecret应用秘钥
- // * */
- // String AppSecret = "uFW0o8ALNiwZAT9saHUD";
- //
- // //加密后的字符串
- // String encodeStr= DigestUtils.sha256Hex(qingqiu + "|" + AppSecret);
- // log.info("sha256加密后的字符串encodeStr:" + encodeStr);
- // }
- //
- // @Test
- // public void AA(){
- //
- // /*明文
- // * 时间型:yyyy-MM-dd-HH
- // * */
- // SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd-HH");
- // Date Date = new Date(System.currentTimeMillis());
- // System.out.println("当前时间:" + Date);
- // String dateNowString = simpleDateFormat.format(Date);
- // System.out.println("当前时间(时间样式:yyyy-MM-dd-HH)" + dateNowString);
- //
- // /*秘钥
- // * 系统id和Secret密钥
- // * */
- // String SystemId = "6CBAC3D3-F055-6150-E3C9-142FB65524B5";
- // String secret = "c2Vhc2t5Y29udHJhY3RhcGk=";
- //
- // //加密后的字符串
- // String encodeStr= DigestUtils.md5Hex(SystemId + "|" + dateNowString + "|" + secret);
- // log.info("MD5加密后的字符串encodeStr:" + encodeStr);
- // }
- //
- // public static com.aliyun.dingtalkyida_1_0.Client createClient() throws Exception {
- // com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config();
- // config.protocol = "https";
- // config.regionId = "central";
- // return new com.aliyun.dingtalkyida_1_0.Client(config);
- // }
- //
- // //获取审批实例详情
- // @Test
- // public void getShenpi(){
- //
- // JSONObject jsonObject = null;
- //
- // int size = 100;
- // int page = 1;
- //
- // do {
- // try {
- // com.aliyun.dingtalkyida_1_0.Client client = createClient();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDatasHeaders searchFormDatasHeaders = new com.aliyun.dingtalkyida_1_0.models.SearchFormDatasHeaders();
- // searchFormDatasHeaders.xAcsDingtalkAccessToken = accessTokenService.getAccessToken();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDatasRequest searchFormDatasRequest = new com.aliyun.dingtalkyida_1_0.models.SearchFormDatasRequest()
- // //宜搭应用秘钥
- // .setSystemToken("RH766AC1Z0P6IBWRFIA885XCULUV275UHT5CLYF")
- // //每页查询数量
- // .setPageSize(size)
- // //当前分页
- // .setCurrentPage(page)
- // //宜搭表单ID
- // .setFormUuid("FORM-FDA66N81C5V672VY53J7D7ZBSIC63EQHRT5CL0")
- // //TODO 系统管理员id
- // .setUserId("yida_pub_account")
- // //宜搭应用编码
- // .setAppType("APP_EXJ5WMWZ18FS1F2UFOHN");
- //
- // SearchFormDatasResponse searchFormDatasResponse = client.searchFormDatasWithOptions(searchFormDatasRequest, searchFormDatasHeaders, new RuntimeOptions());
- // System.out.println(JSON.toJSONString(searchFormDatasResponse.getBody()));
- // String s = JSON.toJSONString(searchFormDatasResponse.getBody());
- // jsonObject = JSON.parseObject(s);
- // System.out.println("审批详情接口object对象:" + jsonObject);
- // } catch (TeaException err) {
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // } catch (Exception _err) {
- // TeaException err = new TeaException(_err.getMessage(), _err);
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // }
- //
- // JSONArray data = jsonObject.getJSONArray("data");
- // for (int i = 0; data.size()>i; i++){
- //
- // JSONObject formData = data.getJSONObject(i).getJSONObject("formData");
- //
- // String khbh = formData.getString("textField_lhemu0bf");
- // System.out.println("客户编号:" + khbh);
- //
- // String khmc = formData.getString("textField_lc5vdt71");
- // System.out.println("客户名称:" + khmc);
- //
- //
- // //客户联系人列表
- // JSONArray tableField_le6s0mhc = formData.getJSONArray("tableField_le6s0mhc");
- // JSONObject jsonObject1 = tableField_le6s0mhc.getJSONObject(0);
- // //客户联系人姓名
- // String khlxr = jsonObject1.getString("textField_lc5vdt76");
- // System.out.println("客户联系人姓名:" + khlxr);
- // //客户联系人电话
- // String khlxrdh = jsonObject1.getString("textField_lc5vdt77");
- // System.out.println("客户联系人电话:" + khlxrdh);
- //
- //
- // String khdz = formData.getString("textField_lfj2zo84");
- // System.out.println("客户地址:" + khdz);
- //
- //
- //
- // String khfzrmc = formData.getJSONArray("employeeField_lc5vdt7w").getString(0);
- // System.out.println("客户负责人姓名:" + khfzrmc);
- //
- //
- // /*根据客户负责人姓名来匹配售后宝的人员ID*/
- // //休眠1秒后,进行调用【获取售后宝人员ID】
- // try {
- // log.info("休眠中,时长为:1秒...");
- // Thread.sleep(1000);
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- // log.info("根据客户负责人姓名来匹配售后宝的人员ID===>");
- //
- // int pageNum = 1;
- // int pageSize = 50;
- //
- // String userName = khfzrmc;
- // List list = new ArrayList();
- // list.add(userName);
- //
- // Map map = new HashMap();
- // map.put("pageNum",pageNum);
- // map.put("pageSize",pageSize);
- // map.put("userNameList",list);
- //
- // String bodyStr = JSON.toJSONString(map);
- //
- // String userId = null;
- //
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("application/json");
- // RequestBody body = RequestBody.create(mediaType, bodyStr);
- // Request request = new Request.Builder()
- // .url("https://oapi.shb.ltd/service/user/get_user_params?accessToken=6ff00058-58a9-49a3-b354-e9fb1f507f5a")
- // .method("POST", body)
- // .addHeader("Content-Type", "application/json")
- // .build();
- //
- //
- // Response response = client.newCall(request).execute();
- // String responseBody = response.body().string();
- // log.info("售后宝【人员列表】返回信息:" + responseBody);
- // String substring1 = responseBody.substring(1, responseBody.length() - 1);
- // log.info("去除首尾双引号后的返回信息:" + substring1);
- // String substring2 = substring1.replaceAll("\\\\", "");
- // log.info("去除转义字符后的返回信息:" + substring2);
- //
- // JSONObject jsonObject111 = JSON.parseObject(substring2);
- // JSONObject data111 = jsonObject111.getJSONObject("data");
- //// System.out.println("data===" + data);
- //
- // userId = data111.getJSONArray("list").getJSONObject(0).getString("userId");
- // System.out.println("售后宝人员userId:" + userId);
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- // /*根据客户负责人姓名来匹配售后宝的人员ID*/
- //
- //
- // String htqydw = formData.getString("selectField_lc5vdt7v");
- // System.out.println("合同签约单位:" + htqydw);
- //
- // /*调用售后宝【客户新增】接口*/
- // //封装售后宝客户新增接口需要的参数
- // Map map2 = new HashMap();
- // map2.put("field_2L1hdL8o2Gz563tQ",htqydw);
- //
- // Map map1 = new HashMap();
- // //客户编号
- // map1.put("serialNumber",khbh);
- // //客户名称
- // map1.put("name",khmc);
- // //客户联系人
- // map1.put("lmName",khlxr);
- // //客户联系电话
- // map1.put("lmPhone",khlxrdh);
- // //客户地址
- // map1.put("address",khdz);
- // //客户负责人(售后宝人员id)
- // map1.put("customerManager",userId);
- // //客户负责人姓名
- // map1.put("customerManagerName",khfzrmc);
- // //合同签约单位(单选项匹配)
- // map1.put("attribute",map2);
- //
- // String jsonString = JSON.toJSONString(map1);
- // System.out.println("封装售后宝客户新增接口需要的参数:" + jsonString);
- //
- // //休眠1秒后,进行调用【客户新增】接口
- // try {
- // log.info("休眠中,时长为:1秒...");
- // Thread.sleep(1000);
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- // log.info("调用售后宝【客户新增】接口===>");
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("application/json");
- // RequestBody body = RequestBody.create(mediaType, jsonString);
- // Request request = new Request.Builder()
- // .url("https://oapi.shb.ltd/service/customer/createV2?accessToken=6ff00058-58a9-49a3-b354-e9fb1f507f5a")
- // .method("POST", body)
- // .addHeader("Content-Type", "application/json")
- // .build();
- // Response response = client.newCall(request).execute();
- // String responseBody = response.body().string();
- // log.info("售后宝【客户新增】接口返回信息:" + responseBody);
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- // /*调用售后宝【客户新增】接口*/
- //
- // }
- //
- // if (data.size() == 100){
- // page = page + 1;
- // }
- //
- //// float aa = jsonObject.getFloat("totalCount") / 100;
- //// int bb = jsonObject.getInteger("currentPage");
- //// log.info("aa" + aa + "---bb" + bb);
- // }while (jsonObject.getFloat("totalCount") / 100 > jsonObject.getInteger("currentPage"));
- //
- //
- // System.out.println("同步【宜搭客户信息至售后宝】完成!");
- // }
- //
- // //更新售后宝客户信息接口
- // @Test
- // public void updateKehu(){
- // /*调用售后宝【客户更新】接口*/
- // //封装售后宝客户更新接口需要的参数
- //// Map map2 = new HashMap();
- //// map2.put("field_2L1hdL8o2Gz563tQ",htqydw);
- ////
- //// Map map1 = new HashMap();
- //// //客户编号
- //// map1.put("serialNumber",khbh);
- //// //客户名称
- //// map1.put("name",khmc);
- //// //客户联系人
- //// map1.put("lmName",khlxrStr);
- //// //客户联系电话
- //// map1.put("lmPhone",khlxrdhStr);
- //// //客户地址
- //// map1.put("address",khdz);
- //// //客户负责人(售后宝人员id)
- //// map1.put("customerManager",shBid);
- //// //客户负责人姓名
- //// map1.put("customerManagerName",khfzrxm);
- //// //合同签约单位(单选项匹配)
- //// map1.put("attribute",map2);
- //
- //// String jsonString = JSON.toJSONString(map1);
- // String jsonString = "{\"customerNo\":\"KH20230607020507345\",\"address\":\"上海市浦东新区曹路镇AAA号\",\"lmPhone\":\"15200000000\",\"customerManager\":\"be8d91b5-85a9-11ed-b57f-00163e0b3979\",\"name\":\"测试客户名称AAA\",\"attribute\":{\"field_2L1hdL8o2Gz563tQ\":\"上海另爱实业有限公司\"},\"lmName\":\"联系人AAA\",\"customerManagerName\":\"孟慧菲\"}";//TODO 测试使用!
- // System.out.println("封装售后宝客户更新接口需要的参数:" + jsonString);
- //
- // //休眠1秒后,进行调用【客户新增】接口
- // try {
- // log.info("休眠中,时长为:1秒...");
- // Thread.sleep(1000);
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- // log.info("调用售后宝【客户更新】接口===>");
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("application/json");
- // RequestBody body = RequestBody.create(mediaType, jsonString);
- // Request request = new Request.Builder()
- // .url("https://oapi.shb.ltd/service/customer/update_customer?accessToken=4da6f063-5083-481f-8e0a-be59d41eea40")
- // .method("POST", body)
- // .addHeader("Content-Type", "application/json")
- // .build();
- // Response response = client.newCall(request).execute();
- // String responseBody = response.body().string();
- // log.info("售后宝【客户更新】接口返回信息:" + responseBody);
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- // /*调用售后宝【客户更新】接口*/
- // }
- //
- // @Test
- // public void XXX(){
- // //获取钉钉授权码
- // String accessToken = null;
- // DefaultDingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/gettoken");
- // OapiGettokenRequest request = new OapiGettokenRequest();
- // request.setAppkey("dingwkpw32zomzvufilo");
- // request.setAppsecret("Zc5thIhmxXUHVibMJ-Ft8RxHefKDlXs6x5TvOvjJbRaZ25TDmCFU4BKmqOBqAHF6");
- // request.setHttpMethod("GET");
- // try {
- // OapiGettokenResponse response = client.execute(request);
- // accessToken = response.getAccessToken();
- // System.out.println("AccessToken:" + accessToken);
- // } catch (ApiException e) {
- // e.printStackTrace();
- // }
- //
- // //获取宜搭表单数据,更新经纬度坐标
- // JSONObject jsonObject = null;
- //
- // //封装查询条件
- // List listAll = new ArrayList();
- // //创建时间(系统字段)
- //// Map map1 = new HashMap();
- //// map1.put("key","createTime");
- //// map1.put("value",1688003940000l);
- //// map1.put("type","DOUBLE");
- //// map1.put("operator","le");
- //// map1.put("componentName","DateField");
- //// listAll.add(map1);
- //
- //// PC 绵阳百盛(CAXD)
- //
- // Map map1 = new HashMap();
- // map1.put("key","textField_ljghmc0e");
- // map1.put("value"," ");
- // map1.put("type","TEXT");
- // map1.put("operator","eq");
- // map1.put("componentName","textField");
- // listAll.add(map1);
- //
- // String jsonStr = JSON.toJSONString(listAll);
- // System.out.println("封装的查询参数:" + jsonStr);
- //
- // int size = 100;
- // int page = 1;
- //
- // do {
- //
- // try {
- // com.aliyun.dingtalkyida_1_0.Client client111 = createClient();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDataSecondGenerationNoTableFieldHeaders searchFormDataSecondGenerationNoTableFieldHeaders = new com.aliyun.dingtalkyida_1_0.models.SearchFormDataSecondGenerationNoTableFieldHeaders();
- // searchFormDataSecondGenerationNoTableFieldHeaders.xAcsDingtalkAccessToken = accessToken;
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDataSecondGenerationNoTableFieldRequest searchFormDataSecondGenerationNoTableFieldRequest = new com.aliyun.dingtalkyida_1_0.models.SearchFormDataSecondGenerationNoTableFieldRequest()
- // //当前分页
- // .setPageNumber(page)
- // //每页查询数量
- // .setPageSize(size)
- // //宜搭表单ID
- // .setFormUuid("FORM-4H666KB102PBA69DCCC2A6ATHV6R3YH99MCJLJ")
- // //TODO 查询条件内容
- // .setSearchCondition(jsonStr)
- // //宜搭应用编码
- // .setAppType("APP_ZTKQXN2ISL7TWFDR6PSK")
- // //宜搭应用秘钥
- // .setSystemToken("GM866LB1OJTBPZB471GENBEO35YB270I085JLN1")
- // //TODO 系统管理员id
- // .setUserId("yida_pub_account");
- //
- // SearchFormDataSecondGenerationNoTableFieldResponse searchFormDataSecondGenerationNoTableFieldResponse = client111.searchFormDataSecondGenerationNoTableFieldWithOptions(searchFormDataSecondGenerationNoTableFieldRequest, searchFormDataSecondGenerationNoTableFieldHeaders, new RuntimeOptions());
- // // System.out.println(JSON.toJSONString(searchFormDataSecondGenerationNoTableFieldResponse.getBody()));
- // String s = JSON.toJSONString(searchFormDataSecondGenerationNoTableFieldResponse.getBody());
- // jsonObject = JSON.parseObject(s);
- // System.out.println("门店定位高级条件查询接口object对象:" + jsonObject);
- // } catch (TeaException err) {
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // } catch (Exception _err) {
- // TeaException err = new TeaException(_err.getMessage(), _err);
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // }
- //
- // JSONArray data = jsonObject.getJSONArray("data");
- // System.out.println("获取的宜搭数据:" + data);
- // for (int i = 0; data.size()>i; i++){
- // log.info("开始第" + i + "次循环获取经纬度数据...");
- //
- // //表单实例ID
- // String formInstanceId = data.getJSONObject(i).getString("formInstanceId");
- // System.out.println("表单实例ID ===> " + formInstanceId);
- //
- // JSONObject formData = data.getJSONObject(i).getJSONObject("formData");
- //
- // String locationField_liy8a294 = formData.getString("locationField_liy8a294");
- // System.out.println("@@@定位组件数据:" + locationField_liy8a294);
- //
- // if (locationField_liy8a294 == null){
- // System.out.println("定位组件为空!!!");
- // }else {
- // JSONObject jsonObject1 = JSONObject.parseObject(locationField_liy8a294);
- // System.out.println("定位组件数据(转对象)" + jsonObject1);
- //
- // //经度
- // String longitude = jsonObject1.getString("longitude");
- // System.out.println("经度:" + longitude);
- // //维度
- // String latitude = jsonObject1.getString("latitude");
- // System.out.println("维度:" + latitude);
- //
- //
- //
- // /*更新数据表的经纬度字段*/
- // /*同步至宜搭*/
- // Map map = new HashMap();
- // //经度
- // map.put("textField_ljghmc0e", longitude);
- // //维度
- // map.put("textField_ljghmc0f", latitude);
- //
- // String mapJson = JSON.toJSONString(map);
- // System.out.println("mapJson:" + mapJson);
- //
- //
- // //新增或更新表单实例【宜搭】
- // JSONObject jsonObject11 = null;
- //// try {
- //// com.aliyun.dingtalkyida_1_0.Client client11 = createClient();
- //// com.aliyun.dingtalkyida_1_0.models.CreateOrUpdateFormDataHeaders createOrUpdateFormDataHeaders = new com.aliyun.dingtalkyida_1_0.models.CreateOrUpdateFormDataHeaders();
- //// createOrUpdateFormDataHeaders.xAcsDingtalkAccessToken = accessToken;
- //// com.aliyun.dingtalkyida_1_0.models.CreateOrUpdateFormDataRequest createOrUpdateFormDataRequest = new com.aliyun.dingtalkyida_1_0.models.CreateOrUpdateFormDataRequest()
- //// //应用秘钥
- //// .setSystemToken("GM866LB1OJTBPZB471GENBEO35YB270I085JLN1")
- //// //表单编码
- //// .setFormUuid("FORM-4H666KB102PBA69DCCC2A6ATHV6R3YH99MCJL")
- //// .setUserId("yida_pub_account")
- ////// .setSearchCondition(listJson)
- //// //应用编码
- //// .setAppType("APP_ZTKQXN2ISL7TWFDR6PSK")
- //// .setFormDataJson(mapJson);
- ////
- //// CreateOrUpdateFormDataResponse orUpdateFormDataWithOptions = client11.createOrUpdateFormDataWithOptions(createOrUpdateFormDataRequest, createOrUpdateFormDataHeaders, new RuntimeOptions());
- //// String s = JSON.toJSONString(orUpdateFormDataWithOptions.getBody());
- //// jsonObject11 = JSON.parseObject(s);
- //// System.out.println("【创建或更新】表单object对象:" + jsonObject11);
- //// } catch (TeaException err) {
- //// if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- //// // err 中含有 code 和 message 属性,可帮助开发定位问题
- //// }
- ////
- //// } catch (Exception _err) {
- //// TeaException err = new TeaException(_err.getMessage(), _err);
- //// if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- //// // err 中含有 code 和 message 属性,可帮助开发定位问题
- //// }
- ////
- //// }
- //
- //
- // //更新表单经纬度字段数据
- // try {
- // com.aliyun.dingtalkyida_1_0.Client client11 = createClient();
- // com.aliyun.dingtalkyida_1_0.models.UpdateFormDataHeaders updateFormDataHeaders = new com.aliyun.dingtalkyida_1_0.models.UpdateFormDataHeaders();
- // updateFormDataHeaders.xAcsDingtalkAccessToken = accessToken;
- // com.aliyun.dingtalkyida_1_0.models.UpdateFormDataRequest updateFormDataRequest = new com.aliyun.dingtalkyida_1_0.models.UpdateFormDataRequest()
- // .setSystemToken("GM866LB1OJTBPZB471GENBEO35YB270I085JLN1")
- // .setFormInstanceId(formInstanceId)
- // .setUserId("yida_pub_account")
- // .setAppType("APP_ZTKQXN2ISL7TWFDR6PSK")
- // .setUpdateFormDataJson(mapJson);
- //
- // UpdateFormDataResponse updateFormDataResponse = client11.updateFormDataWithOptions(updateFormDataRequest, updateFormDataHeaders, new RuntimeOptions());
- // System.out.println("############" + updateFormDataResponse);
- //// String s = JSON.toJSONString(updateFormDataResponse.getBody());
- //// jsonObject1 = JSON.parseObject(s);
- //// System.out.println("【创建或更新】表单object对象:" + jsonObject1);
- // } catch (TeaException err) {
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // } catch (Exception _err) {
- // TeaException err = new TeaException(_err.getMessage(), _err);
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // }
- // /*同步至宜搭*/
- // }
- //
- // }
- //
- // if (data.size() == 100){
- // page = page + 1;
- // }
- //
- // }while (jsonObject.getFloat("totalCount") / 100 > jsonObject.getInteger("pageNumber"));
- // }
- //
- // //获取宜搭表单数据【人员信息数据】
- // public JSONObject getYidaRenyuanxinxi(String userId){
- //
- // //封装查询条件【数组】
- // List search = new ArrayList();
- //
- // //封装根据项目id作为查询条件
- // Map mapAll = new HashMap();
- // //查询字段编号
- // mapAll.put("key","textField_lkkg5ay7");
- // //查询钉钉userid
- // mapAll.put("value",userId);
- // //查询字段类型
- // mapAll.put("type","TEXT");
- // //查询匹配方式:like(匹配)、eq(等于)
- // mapAll.put("operator","eq");
- // //查询字段标识
- // mapAll.put("componentName","textField");
- // search.add(mapAll);
- // String mapAllStr = JSON.toJSONString(search);
- // System.out.println("封装修改的字段参数:" + mapAllStr);
- //
- // JSONObject jsonObject = null;
- //
- // int size = 100;
- // int page = 1;
- //
- // try {
- // com.aliyun.dingtalkyida_1_0.Client client = createClient();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDataSecondGenerationNoTableFieldHeaders searchFormDataSecondGenerationNoTableFieldHeaders = new com.aliyun.dingtalkyida_1_0.models.SearchFormDataSecondGenerationNoTableFieldHeaders();
- // searchFormDataSecondGenerationNoTableFieldHeaders.xAcsDingtalkAccessToken = accessTokenService.getAccessToken();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDataSecondGenerationNoTableFieldRequest searchFormDataSecondGenerationNoTableFieldRequest = new com.aliyun.dingtalkyida_1_0.models.SearchFormDataSecondGenerationNoTableFieldRequest()
- //// //当前分页
- //// .setPageNumber(page)
- //// //每页查询数量
- //// .setPageSize(size)
- // //宜搭表单ID
- // .setFormUuid("FORM-CP766081M3TC3T87EUOWL7AELNFI38B9BVLKLE")
- // //TODO 查询条件内容
- // .setSearchCondition(mapAllStr)
- //// //宜搭应用编码
- // .setAppType("APP_OVZ4YE0AZPWIHDYPIB2Y")
- // //宜搭应用秘钥
- // .setSystemToken("IC766WA1MLVCU5DX9L6VY8HI3X0D39K6BVLKL0")
- // //TODO 系统管理员id
- // .setUserId("yida_pub_account");
- //
- // SearchFormDataSecondGenerationNoTableFieldResponse searchFormDataSecondGenerationNoTableFieldResponse = client.searchFormDataSecondGenerationNoTableFieldWithOptions(searchFormDataSecondGenerationNoTableFieldRequest, searchFormDataSecondGenerationNoTableFieldHeaders, new RuntimeOptions());
- // System.out.println(JSON.toJSONString(searchFormDataSecondGenerationNoTableFieldResponse.getBody()));
- // String s = JSON.toJSONString(searchFormDataSecondGenerationNoTableFieldResponse.getBody());
- // jsonObject = JSON.parseObject(s);
- // System.out.println("高级条件查询【宜搭人员信息】接口object对象:" + jsonObject);
- // } catch (TeaException err) {
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // } catch (Exception _err) {
- // TeaException err = new TeaException(_err.getMessage(), _err);
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // }
- //
- // JSONArray data = jsonObject.getJSONArray("data");
- //
- // float gudinggongzi = 0;
- // float quanqinbutie = 0;
- // float kaohejishu = 0;
- // float xiaoshigongzi = 0;
- // if (data.isEmpty()){
- // System.out.println("查询宜搭人员信息的表单返回数据为空!");
- // }else {
- // JSONObject formData = data.getJSONObject(0).getJSONObject("formData");
- // try {
- // //固定工资(日工资)
- // gudinggongzi = formData.getFloat("numberField_ljm75t26");
- // //全勤补贴
- // quanqinbutie = formData.getFloat("numberField_lkkg5ay6");
- // //考核基数
- // kaohejishu = formData.getFloat("numberField_ljm8j49p");
- // //小时工资(日工资/8)
- // xiaoshigongzi = formData.getFloat("numberField_lkrn1v2h");
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- // }
- // System.out.println("固定工资(日工资):" + gudinggongzi);
- // System.out.println("全勤补贴:" + quanqinbutie);
- // System.out.println("考核基数:" + kaohejishu);
- // System.out.println("小时工资(日工资/8):" + xiaoshigongzi);
- //
- // Map map = new HashMap();
- // map.put("gudinggongzi", gudinggongzi);
- // map.put("quanqinbutie", quanqinbutie);
- // map.put("kaohejishu", kaohejishu);
- // map.put("xiaoshigongzi", xiaoshigongzi);
- //
- // String jsonString = JSON.toJSONString(map);
- // JSONObject jsonObjectRenyuan = JSON.parseObject(jsonString);
- // System.out.println("jsonObjectRenyuan===>" + jsonObjectRenyuan);
- //
- // return jsonObjectRenyuan;
- // }
- //
- // @Test
- // public void getKaoqin(){
- //
- // //待测试人员userId
- // String userId = "271003020526307119";
- //
- // //获取当前时间
- // Date Date = new Date(System.currentTimeMillis());
- // System.out.println("当前时间:" + Date);
- //
- // /*获取考勤数据*/
- // //获取人员信息数据
- // JSONObject yidaRenyuanxinxi = getYidaRenyuanxinxi(userId);
- // //固定工资(日工资)
- // float gudinggongzi = yidaRenyuanxinxi.getFloat("gudinggongzi");
- // //全勤补贴
- // float quanqinbutie = yidaRenyuanxinxi.getFloat("quanqinbutie");
- // //考核基数
- // float kaohejishu = yidaRenyuanxinxi.getFloat("kaohejishu");
- // //小时工资(日工资/8)
- // float xiaoshigongzi = yidaRenyuanxinxi.getFloat("xiaoshigongzi");
- //
- // /*
- // * 获取前一个月的第一天和最后一天的时间
- // * */
- // Calendar calendar111 = Calendar.getInstance();
- // calendar111.setTime(Date);
- // //前一个月第一天
- // calendar111.add(Calendar.MONTH,-1);
- // calendar111.set(Calendar.DAY_OF_MONTH,1);
- // calendar111.set(Calendar.HOUR_OF_DAY,0);
- // calendar111.set(Calendar.MINUTE,0);
- // calendar111.set(Calendar.SECOND,0);
- // calendar111.set(Calendar.MILLISECOND,0);
- // String FORMtime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar111.getTime());
- // System.out.println("前一个月第一天零点:" + FORMtime);
- //
- // Calendar calendar222 = Calendar.getInstance();
- //// int month222 = calendar222.get(Calendar.MONTH);
- // //前一个月最后一天
- // calendar222.add(Calendar.MONTH,-1);
- // calendar222.set(Calendar.DAY_OF_MONTH,calendar222.getActualMaximum(Calendar.DAY_OF_MONTH));
- // calendar222.set(Calendar.HOUR_OF_DAY,0);
- // calendar222.set(Calendar.MINUTE,0);
- // calendar222.set(Calendar.SECOND,0);
- // calendar222.set(Calendar.MILLISECOND,0);
- // String TOtime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar222.getTime());
- // System.out.println("前一个月最后一天零点:" + TOtime);
- //
- //
- //
- //
- // int chuqintianshu = 0;
- // int yingchuqintianshu = 0;
- // int jiabanxiaoshishu = 0;
- // int quanqintianshu = 0;
- // int chidaocishuAll = 0;
- // int chidaocishu = 0;
- // int zaotuicishu = 0;
- //
- // //工作日加班小时数
- // float gongzuorijiaban = 0l;
- // //休息日加班小时数
- // float xiuxirijiaban = 0l;
- //
- //
- // //保留1位小数
- // DecimalFormat df1 = new DecimalFormat("#.0");
- // //保留2位小数
- // DecimalFormat df = new DecimalFormat("#.00");
- //
- //
- // //工作时长(最新版本)
- // BigDecimal gzsc = new BigDecimal("0.0");
- // //每天固定工时(最新版本,用于计算使用)
- // BigDecimal gdgs = new BigDecimal("8.0");
- //
- // //总扣除迟到时长差额
- // BigDecimal subtractAll = new BigDecimal("0.00");
- //
- // //查询上月出勤数据,统计上月出勤天数
- // try {
- // DingTalkClient client11 = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/attendance/getcolumnval");
- // OapiAttendanceGetcolumnvalRequest req = new OapiAttendanceGetcolumnvalRequest();
- // //TODO 待查询人员的userid
- // req.setUserid(userId);
- // //考勤报表列定义查出来的工作时长的列id(固定)
- // req.setColumnIdList("754387968,754387971,754387973,754387974,754387975,754387979,754387991,754387993,805519014,805519015,805519016,836124047");
- // //TODO 查询开始时间
- // req.setFromDate(StringUtils.parseDateTime(FORMtime));
- // //TODO 查询结束时间
- // req.setToDate(StringUtils.parseDateTime(TOtime));
- // OapiAttendanceGetcolumnvalResponse rsp = client11.execute(req, accessTokenService.getAccessToken());
- // System.out.println(rsp.getBody());
- // String string = rsp.getBody();
- // JSONObject jsonObjectKaoqin = JSON.parseObject(string);
- //
- // int errcode = jsonObjectKaoqin.getInteger("errcode");
- // System.out.println("考勤时间周期查询结果状态码:" + errcode);
- // String errmsg = jsonObjectKaoqin.getString("errmsg");
- // System.out.println("考勤时间周期查询结果状态信息:" + errmsg);
- //
- //
- // if (errcode != 0){
- // log.info("考勤时间周期查询结果反馈异常,异常状态码:" + errcode + "【"+ errmsg +"】");
- //
- // }else {
- // //出勤天数
- // JSONArray jsonArray = jsonObjectKaoqin.getJSONObject("result").
- // getJSONArray("column_vals").
- // getJSONObject(0).
- // getJSONArray("column_vals");
- // for (int x = 0; x<jsonArray.size(); x++){
- // //出勤天数
- // String value = jsonArray.getJSONObject(x).getString("value");
- // System.out.println("出差天数:" + value);
- // float v = Float.parseFloat(value);
- // if (v == 1) {
- // System.out.println("出勤天数,进行循环统计!");
- // chuqintianshu = chuqintianshu + 1;
- // }
- // }
- //
- // //应出勤天数
- // JSONArray jsonArray1 = jsonObjectKaoqin.getJSONObject("result").
- // getJSONArray("column_vals").
- // getJSONObject(1).
- // getJSONArray("column_vals");
- // for (int x = 0; x<jsonArray1.size(); x++){
- // //应出勤天数
- // String value = jsonArray1.getJSONObject(x).getString("value");
- // System.out.println("应出勤天数:" + value);
- // float v = Float.parseFloat(value);
- // if (v == 1) {
- // System.out.println("应出勤天数,进行循环统计!");
- // yingchuqintianshu = yingchuqintianshu + 1;
- // }
- // }
- //
- //// //迟到时长
- //// float cdscFloat = 0l;
- //// BigDecimal subtract = new BigDecimal("0.00");
- //// //用于差额计算的判断
- //// BigDecimal panduan = new BigDecimal(0.5);
- //// BigDecimal panduan1 = new BigDecimal(1);
- ////
- //// JSONArray jsonArray9 = jsonObjectKaoqin.getJSONObject("result").
- //// getJSONArray("column_vals").
- //// getJSONObject(4).
- //// getJSONArray("column_vals");
- //// for (int x = 0; x<jsonArray9.size(); x++){
- //// //迟到时长
- //// String value = jsonArray9.getJSONObject(x).getString("value");
- //// System.out.println("迟到时长:" + value);
- //// cdscFloat = Float.parseFloat(value);
- //// if (cdscFloat > 5) {
- //// System.out.println("迟到时长超过5分钟,进行循环统计!");
- //// chidaocishu = chidaocishu + 1;
- ////
- //// float aaa = cdscFloat / 60;
- //// System.out.println("迟到分钟按照小时(除以60每小时)换算:" + aaa);
- ////
- //// //迟到时长,换算成小时(转换bd型,保留2位小数)
- //// BigDecimal cdsc = new BigDecimal(aaa);
- ////// BigDecimal cdsc1 = new BigDecimal("0.00");
- //// BigDecimal cdsc1 = cdsc.setScale(2, BigDecimal.ROUND_HALF_UP);
- //// System.out.println("迟到时长换算成小时,保留2位小数:" + cdsc1);
- ////
- //// // 整数部分
- //// BigDecimal integerPart = cdsc1.setScale(0, RoundingMode.DOWN);
- //// System.out.println("整数部分:" + integerPart);
- //// // 小数部分
- //// BigDecimal fractionalPart = cdsc1.subtract(integerPart);
- //// System.out.println("小数部分:" + fractionalPart);
- ////
- ////
- //// if (fractionalPart.compareTo(panduan) == -1){
- //// if (fractionalPart.compareTo(BigDecimal.ZERO) == 1) {
- //// System.out.println("小数位小于0.5小时~~~");
- //// subtract = panduan.subtract(fractionalPart);
- //// System.out.println("计算不足0.5小时的差额:" + subtract);
- //// subtractAll = subtractAll.add(subtract);
- //// }
- //// }else {
- //// System.out.println("小数位大于0.5小时~~~");
- //// subtract = panduan1.subtract(fractionalPart);
- //// System.out.println("计算不足1小时的差额:" + subtract);
- //// subtractAll = subtractAll.add(subtract);
- //// }
- //// }
- //// }
- //
- // //工作时长
- // JSONArray jsonArray6 = jsonObjectKaoqin.getJSONObject("result").
- // getJSONArray("column_vals").
- // getJSONObject(2).
- // getJSONArray("column_vals");
- //
- // //考勤结果(包含加班审批时间段)
- // JSONArray jsonArray10 = jsonObjectKaoqin.getJSONObject("result").
- // getJSONArray("column_vals").
- // getJSONObject(6).
- // getJSONArray("column_vals");
- // //打卡结果(实际上班打卡时间)
- // JSONArray jsonArray11 = jsonObjectKaoqin.getJSONObject("result").
- // getJSONArray("column_vals").
- // getJSONObject(7).
- // getJSONArray("column_vals");
- //
- // SimpleDateFormat sdf = new SimpleDateFormat("MM-dd HH:mm");
- //
- // //休息日加班小时数
- // JSONArray jsonArray8 = jsonObjectKaoqin.getJSONObject("result").
- // getJSONArray("column_vals").
- // getJSONObject(10).
- // getJSONArray("column_vals");
- //
- //// for (int x = 0; x<jsonArray8.size(); x++){
- //// //休息日加班小时数
- //// String value = jsonArray8.getJSONObject(x).getString("value");
- //// System.out.println("休息日加班小时数:" + value);
- //// float v = Float.parseFloat(value);
- ////
- //// if (v > 0) {
- //// System.out.println("休息日加班小时数,进行循环统计!");
- ////
- //// //考勤结果(包含加班审批时间段)
- ////
- //// //打卡结果(实际上班打卡时间)
- ////
- //// xiuxirijiaban = xiuxirijiaban + v;
- //// }
- //// }
- //
- // for (int x = 0; x<jsonArray6.size(); x++){
- // //工作时长
- // String value = jsonArray6.getJSONObject(x).getString("value");
- // System.out.println("原始返回的工作时长:" + value);
- // //日期
- // Date date = jsonArray6.getJSONObject(x).getDate("date");
- //// System.out.println("日期:" + date);
- //
- // // 创建Calendar类实例
- // Calendar instance = Calendar.getInstance();
- // // 根据指定日期获取周几
- // instance.setTime(date);
- // //因为数组下标从0开始,而返回的是数组的内容,是数组{1,2,3,4,5,6,7}中用1~7来表示
- // int week = instance.get(Calendar.DAY_OF_WEEK);
- // // 周日的编号是1,周六的编号是7
- // if (week == Calendar.SUNDAY) {// || week == Calendar.SATURDAY
- // // 是周日返回true
- // System.out.println("周日");
- //
- // //休息日加班小时数
- // String value3 = jsonArray8.getJSONObject(x).getString("value");
- // System.out.println("休息日加班小时数:" + value3);
- // float v3 = Float.parseFloat(value3);
- // xiuxirijiaban = xiuxirijiaban + v3;
- //
- // //打卡结果(实际上班打卡时间)
- // String value2 = jsonArray11.getJSONObject(x).getString("value");
- // System.out.println("打卡结果(实际(休息日)上班打卡时间):" + value2);
- //
- // //考勤结果(包含加班审批时间段)
- // String value1 = jsonArray10.getJSONObject(x).getString("value");
- // System.out.println("考勤结果(包含加班审批时间段):" + value1);
- // //截取考勤结果返回的加班审批时长
- //// if (value1.length()>5){
- //// String substring = value1.substring(0, 8);
- //// System.out.println("截取的(休息日)考勤结果标识是否包含【休息并打卡】:" + substring);
- //// if (substring.equals("休息并打卡,加班")){
- //// String shenpi = value1.substring(8, 19);
- //// System.out.println("截取的(休息日)加班审批完整时间:" + shenpi);
- //// String shenpishichang = value1.substring(32, 33);
- //// float shenpishichangFloat = Float.parseFloat(shenpishichang);
- //// System.out.println("截取的(休息日)加班审批时长:" + shenpishichangFloat);
- ////
- //// String shenpiriqi = value1.substring(8, 14);
- //// String shijidakashijian = shenpiriqi + value2;
- //// System.out.println("拼接的实际打卡时间:" + shijidakashijian);
- ////
- //// Date date1 = null;
- //// Date date2 = null;
- //// try {
- //// date1 = sdf.parse(shenpi);
- //// date2 = sdf.parse(shijidakashijian);
- //// }catch (Exception e){
- //// e.printStackTrace();
- //// }
- //// System.out.println("转换成时间型(加班审批时间):" + date1);
- //// System.out.println("转换成时间型(加班打卡时间):" + date2);
- ////
- //// long a = date2.getTime() - date1.getTime();
- //// System.out.println("实际打卡时间 - 加班审批时间 (相差的毫秒数):" + a);
- //// long fenzhong = a / 1000 / 60;
- //// System.out.println("实际打卡时间 - 加班审批时间 (转换成分钟):" + fenzhong);
- ////
- //// float jisuan = ((shenpishichangFloat * 60) - fenzhong) / 60;
- //// System.out.println("计算实际的周日加班打卡时长(折算小时):" + jisuan);
- //// //判断实际打卡时间是否超过加班审批时间
- ////// if (fenzhong > 0 && fenzhong < 5){
- ////// xiuxirijiaban = xiuxirijiaban + 8;
- ////// }else {
- ////// xiuxirijiaban = xiuxirijiaban + v3;
- ////// }
- //// if (fenzhong > 0){
- //// xiuxirijiaban = xiuxirijiaban + jisuan;
- //// }else {
- //// xiuxirijiaban = xiuxirijiaban + v3;
- //// }
- //// }
- //// }
- //
- // }else {
- // // 不是周日返回false
- // System.out.println("周一至周六的工作日");
- //
- // float v = Float.parseFloat(value);
- // //每日工作时长,1位小数
- // BigDecimal ri = new BigDecimal(v);
- // BigDecimal ri1 = ri.setScale(2, BigDecimal.ROUND_DOWN);
- // System.out.println("工作时长(浮点数,保留2位小数):" + ri1);
- // gzsc = gzsc.add(ri1);
- //
- //// if (v >= 1 && v <= 8) {
- //// System.out.println("工作时长,进行循环统计!");
- //// gzsc = gzsc.add(ri1);
- ////
- //// }else if (v > 8){
- //// gzsc = gzsc.add(gdgs);
- //// } else if (v >= 7.85 && v <= 8) {
- //// gzsc = gzsc.add(gdgs);
- //// }
- // }
- // }
- //
- // //迟到次数
- // JSONArray jsonArray2 = jsonObjectKaoqin.getJSONObject("result").
- // getJSONArray("column_vals").
- // getJSONObject(3).
- // getJSONArray("column_vals");
- // for (int x = 0; x<jsonArray2.size(); x++){
- // //迟到次数
- // String value = jsonArray2.getJSONObject(x).getString("value");
- // System.out.println("迟到次数:" + value);
- // float v = Float.parseFloat(value);
- // if (v == 1) {
- // System.out.println("迟到总次数,进行循环统计!");
- // chidaocishuAll = chidaocishuAll + 1;
- // }
- // }
- //
- //
- //
- // //早退次数
- // JSONArray jsonArray3 = jsonObjectKaoqin.getJSONObject("result").
- // getJSONArray("column_vals").
- // getJSONObject(5).
- // getJSONArray("column_vals");
- // for (int x = 0; x<jsonArray3.size(); x++){
- // //早退次数
- // String value = jsonArray3.getJSONObject(x).getString("value");
- // System.out.println("早退次数:" + value);
- // float v = Float.parseFloat(value);
- // if (v == 1) {
- // System.out.println("早退次数,进行循环统计!");
- // zaotuicishu = zaotuicishu + 1;
- // }
- // }
- //
- // //加班小时数
- // JSONArray jsonArray4 = jsonObjectKaoqin.getJSONObject("result").
- // getJSONArray("column_vals").
- // getJSONObject(8).
- // getJSONArray("column_vals");
- // for (int x = 0; x<jsonArray4.size(); x++){
- // //加班小时数
- // String value = jsonArray4.getJSONObject(x).getString("value");
- // System.out.println("加班小时数:" + value);
- // float v = Float.parseFloat(value);
- // if (v > 1) {
- // System.out.println("加班小时数,进行循环统计!");
- // jiabanxiaoshishu = jiabanxiaoshishu + (int)v;
- // }
- // }
- //
- // //工作日加班小时数
- // JSONArray jsonArray7 = jsonObjectKaoqin.getJSONObject("result").
- // getJSONArray("column_vals").
- // getJSONObject(9).
- // getJSONArray("column_vals");
- // for (int x = 0; x<jsonArray7.size(); x++){
- // //工作日加班小时数
- // String value = jsonArray7.getJSONObject(x).getString("value");
- // System.out.println("工作日加班小时数:" + value);
- // float v = Float.parseFloat(value);
- // if (v > 0) {
- // System.out.println("工作日加班小时数,进行循环统计!");
- // gongzuorijiaban = gongzuorijiaban + v;
- // }
- // }
- //
- //// //休息日加班小时数
- //// JSONArray jsonArray8 = jsonObjectKaoqin.getJSONObject("result").
- //// getJSONArray("column_vals").
- //// getJSONObject(10).
- //// getJSONArray("column_vals");
- ////
- //// for (int x = 0; x<jsonArray8.size(); x++){
- //// //休息日加班小时数
- //// String value = jsonArray8.getJSONObject(x).getString("value");
- //// System.out.println("休息日加班小时数:" + value);
- //// float v = Float.parseFloat(value);
- ////
- //// if (v > 0) {
- //// System.out.println("休息日加班小时数,进行循环统计!");
- ////
- //// //考勤结果(包含加班审批时间段)
- ////
- //// //打卡结果(实际上班打卡时间)
- ////
- //// xiuxirijiaban = xiuxirijiaban + v;
- //// }
- //// }
- //
- // //全勤天数
- // JSONArray jsonArray5 = jsonObjectKaoqin.getJSONObject("result").
- // getJSONArray("column_vals").
- // getJSONObject(11).
- // getJSONArray("column_vals");
- // for (int x = 0; x<jsonArray5.size(); x++){
- // //全勤天数
- // String value = jsonArray5.getJSONObject(x).getString("value");
- // System.out.println("全勤天数:" + value);
- // float v = Float.parseFloat(value);
- // if (v == 1) {
- // System.out.println("全勤天数,进行循环统计!");
- // quanqintianshu = quanqintianshu + 1;
- // }
- // }
- // }
- //
- // } catch (ApiException e) {
- // e.printStackTrace();
- // }
- //
- // //加班小时数(休息日加班,保留2位小时)
- // BigDecimal xxrjbxss = new BigDecimal(xiuxirijiaban);
- //
- // System.out.println("工作时长(最新版本计算,不包含周日工时,保留2位小数)" + gzsc);
- // System.out.println("迟到扣除时长(最新版本计算,按照0.5换算,保留2位小数)" + subtractAll);
- // //出勤天数(最新版本计算,保留2位小数)
- // gzsc = gzsc.subtract(subtractAll).add(xxrjbxss);
- //
- // BigDecimal cqts = gzsc.divide(gdgs, 2,BigDecimal.ROUND_HALF_UP);
- // System.out.println("出勤天数(最新版本计算,保留2位小数)" + cqts);
- //
- //
- // //TODO 加班时长,后面要加入休息日加班
- // float jiaban1 = gongzuorijiaban;
- // float jiaban = Float.parseFloat(df.format(jiaban1));
- //
- // //迟到早退扣款(迟到3次以上的次数*10)
- // int chidaozaotuizongcishu = chidaocishu + zaotuicishu;
- // float chidaozaotuikoukuan = 0l;
- // if (chidaozaotuizongcishu > 3){
- // int a = chidaozaotuizongcishu - 3;
- // chidaozaotuikoukuan = a * 10;
- // }
- //
- // //全勤补贴(全勤天数*5)
- // float c = quanqintianshu * 5;
- //
- // //加班小时数(工作日加班,保留2位小时)//TODO 后面要加入休息日加班小时数
- // BigDecimal jbxss = new BigDecimal(jiaban);
- //
- // //迟到早退扣款(迟到3次以上的次数*10)
- // BigDecimal cdztkk = new BigDecimal(chidaozaotuikoukuan);
- // //全勤补贴
- // BigDecimal qqbt = new BigDecimal(c);
- //
- // //总工资
- // BigDecimal zgz = new BigDecimal("0.00");
- // //固定工资
- // BigDecimal gdgz1 = new BigDecimal("0.00");
- // //小时工资
- // BigDecimal xsgz1 = new BigDecimal("0.00");
- // //出勤工资
- // BigDecimal cqgz1 = new BigDecimal("0.00");
- // //加班工资
- // BigDecimal jbgz1 = new BigDecimal("0.00");
- // if (gudinggongzi > 0) {
- // //固定工资:日工资(转换bd型,保留2位小数)
- // BigDecimal gdgz = new BigDecimal(gudinggongzi);
- // gdgz1 = gdgz.setScale(2, BigDecimal.ROUND_HALF_UP);
- //
- // //小时工资(转换bd型,保留2位小数)
- // BigDecimal xsgz = new BigDecimal(xiaoshigongzi);
- // xsgz1 = xsgz.setScale(2, BigDecimal.ROUND_HALF_UP);
- //
- // //出勤工资(出勤天数*日工资,保留2位小数)
- // BigDecimal cqgz = cqts.multiply(gdgz1);
- // cqgz1 = cqgz.setScale(2, BigDecimal.ROUND_HALF_UP);
- //
- // //加班工资(加班小时数*小时工资,保留2位小数)
- // BigDecimal jbgz = jbxss.multiply(xsgz1);
- // jbgz1 = jbgz.setScale(2, BigDecimal.ROUND_HALF_UP);
- //
- // /*总工资合计*/
- // //总工资(出勤工资+加班工资-迟到早退扣款)//TODO 后面要加入补贴、扣款等金额计算
- // zgz = zgz.add(cqgz1).add(jbgz1).add(qqbt).subtract(cdztkk);
- // }
- //
- //
- // System.out.println("上月出勤天数(钉钉报表自带:不使用):" + chuqintianshu);
- // System.out.println("上月应出勤天数:" + yingchuqintianshu);
- // System.out.println("加班小时数(钉钉报表自带:不使用):" + jiabanxiaoshishu);
- // System.out.println("全勤天数:" + quanqintianshu);
- // System.out.println("迟到次数:" + chidaocishu);
- // System.out.println("早退次数:" + zaotuicishu);
- // System.out.println("休息日加班(钉钉报表自带:不使用):" + xiuxirijiaban);
- // System.out.println("加班小时数【钉钉报表统计工作日加班小时数,需要使用】:" + jiaban);
- //
- // System.out.println("工作时长【最新版本】:" + gzsc);
- // System.out.println("出勤天数【最新版本】:" + cqts);
- // }
- //
- // //获取宜搭表单数据【餐费扣款】
- // @Test
- // public void getYidaCanfei(){
- //
- // //获取当前时间
- // Date Date = new Date(System.currentTimeMillis());
- // System.out.println("当前时间:" + Date);
- // //截取当天上月的年月
- // Calendar calendar123 = Calendar.getInstance();
- // calendar123.setTime(Date);
- // calendar123.add(Calendar.MONTH,-1);
- // String lastMonthNow = new SimpleDateFormat("yyyy-MM").format(calendar123.getTime());
- // System.out.println("当天上月的日期,文本格式(月)" + lastMonthNow);
- //
- //
- // //封装根据项目id作为查询条件
- // Map mapAll = new HashMap();
- // //查询实际统计月份
- // mapAll.put("textField_lfw815u7",lastMonthNow);
- //
- // String mapAllStr = JSON.toJSONString(mapAll);
- // System.out.println("封装修改的字段参数:" + mapAllStr);
- //
- // //list集合装载最终的集合
- // List list = new ArrayList();
- //
- // JSONObject jsonObject = null;
- //
- // int size = 100;
- // int page = 1;
- //
- // List listAll = new ArrayList();
- //
- // do {
- //
- // //【斯曼尔架构】
- // try {
- // com.aliyun.dingtalkyida_1_0.Client client = createClient();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDatasHeaders searchFormDatasHeaders = new com.aliyun.dingtalkyida_1_0.models.SearchFormDatasHeaders();
- // searchFormDatasHeaders.xAcsDingtalkAccessToken = accessTokenService.getAccessToken();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDatasRequest searchFormDatasRequest = new com.aliyun.dingtalkyida_1_0.models.SearchFormDatasRequest()
- // .setSystemToken("IC766WA1MLVCU5DX9L6VY8HI3X0D39K6BVLKL0")
- // .setSearchFieldJson(mapAllStr)
- // .setCurrentPage(page)
- // .setPageSize(size)
- // .setFormUuid("FORM-RK966E7175LD660Z5QWAF4YO2Q2W3WW00RLLL0")
- // .setUserId("yida_pub_account")
- // .setAppType("APP_OVZ4YE0AZPWIHDYPIB2Y");
- //
- // SearchFormDatasResponse searchFormDatasResponse = client.searchFormDatasWithOptions(searchFormDatasRequest, searchFormDatasHeaders, new RuntimeOptions());
- // System.out.println(JSON.toJSONString(searchFormDatasResponse.getBody()));
- // String s = JSON.toJSONString(searchFormDatasResponse.getBody());
- // jsonObject = JSON.parseObject(s);
- // System.out.println("钉钉差旅补贴数据高级条件查询【餐费扣款】接口object对象:" + jsonObject);
- // } catch (TeaException err) {
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // } catch (Exception _err) {
- // TeaException err = new TeaException(_err.getMessage(), _err);
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // }
- //
- // JSONArray data = jsonObject.getJSONArray("data");
- // System.out.println("返回的宜搭data:" + data);
- //
- //
- //
- // if (data.isEmpty()) {
- // System.out.println("查询当月【餐费扣款】返回数据为空!");
- // } else {
- // for (int i = 0; i < data.size(); i++) {
- // JSONObject formData = data.getJSONObject(i).getJSONObject("formData");
- // JSONArray tableField_lfw7ctif = formData.getJSONArray("tableField_lkkfs5p2");
- // for (int j = 0; j < tableField_lfw7ctif.size(); j++) {
- // JSONObject jsonObject1 = tableField_lfw7ctif.getJSONObject(j);
- // listAll.add(jsonObject1);
- // }
- // }
- // }
- //
- // if (jsonObject.getFloat("totalCount") / 100 > jsonObject.getInteger("currentPage")){
- // page += page;
- // }
- //
- // }while (jsonObject.getFloat("totalCount") / 100 > jsonObject.getInteger("currentPage"));
- //
- // JSONArray jsonArray = JSON.parseArray(listAll.toString());
- // System.out.println("封装【餐费扣款】明细jsonArray:" + jsonArray);
- // }
- //
- // //获取宜搭表单数据【机加工计件单】
- // @Test
- // public void getYidaJijiandan(){
- //
- // String userID = "014000073221556459";
- //
- // //获取当前时间
- // Date Date = new Date(System.currentTimeMillis());
- // System.out.println("当前时间:" + Date);
- // //截取当天上月的年月
- // Calendar calendar123 = Calendar.getInstance();
- // calendar123.setTime(Date);
- // calendar123.add(Calendar.MONTH,-1);
- // String lastMonthNow = new SimpleDateFormat("yyyy-MM").format(calendar123.getTime());
- // System.out.println("当天上月的日期,文本格式(月)" + lastMonthNow);
- //
- //
- // //封装根据项目id作为查询条件
- // Map mapAll = new HashMap();
- // //查询实际统计月份
- // mapAll.put("textField_lltuatw2",lastMonthNow);
- // //人员ID
- // mapAll.put("textField_llq7e7e0",userID);
- //
- // String mapAllStr = JSON.toJSONString(mapAll);
- // System.out.println("封装修改的字段参数:" + mapAllStr);
- //
- // //list集合装载最终的集合
- // List list = new ArrayList();
- //
- // JSONObject jsonObject = null;
- //
- // int size = 100;
- // int page = 1;
- //
- // List listAll = new ArrayList();
- //
- // do {
- //
- // //【斯曼尔架构】
- // try {
- // com.aliyun.dingtalkyida_1_0.Client client = createClient();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDatasHeaders searchFormDatasHeaders = new com.aliyun.dingtalkyida_1_0.models.SearchFormDatasHeaders();
- // searchFormDatasHeaders.xAcsDingtalkAccessToken = accessTokenService.getAccessToken();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDatasRequest searchFormDatasRequest = new com.aliyun.dingtalkyida_1_0.models.SearchFormDatasRequest()
- // .setSystemToken("IC766WA1MLVCU5DX9L6VY8HI3X0D39K6BVLKL0")
- // .setSearchFieldJson(mapAllStr)
- // .setCurrentPage(page)
- // .setPageSize(size)
- // .setFormUuid("FORM-0A966I81OCKDWQO07SBXYCKC6BN033LQDULLL2")
- // .setUserId("yida_pub_account")
- // .setAppType("APP_OVZ4YE0AZPWIHDYPIB2Y");
- //
- // SearchFormDatasResponse searchFormDatasResponse = client.searchFormDatasWithOptions(searchFormDatasRequest, searchFormDatasHeaders, new RuntimeOptions());
- // System.out.println(JSON.toJSONString(searchFormDatasResponse.getBody()));
- // String s = JSON.toJSONString(searchFormDatasResponse.getBody());
- // jsonObject = JSON.parseObject(s);
- // System.out.println("钉钉差旅补贴数据高级条件查询【机加工计件单】接口object对象:" + jsonObject);
- // } catch (TeaException err) {
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // } catch (Exception _err) {
- // TeaException err = new TeaException(_err.getMessage(), _err);
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // }
- //
- // JSONArray data = jsonObject.getJSONArray("data");
- // System.out.println("返回的宜搭data:" + data);
- //
- //
- //
- // if (data.isEmpty()) {
- // System.out.println("查询当月【机加工计件单】返回数据为空!");
- // } else {
- // for (int i = 0; i < data.size(); i++) {
- // JSONObject formData = data.getJSONObject(i).getJSONObject("formData");
- // Map map = new HashMap<>();
- //
- // //钉钉userid
- // String userid = formData.getString("textField_llq7e7e0");
- // System.out.println("钉钉userid===>" + userid);
- // //人员姓名
- // String username = formData.getString("textField_llq7e7e1");
- // System.out.println("人员姓名===>" + username);
- // //计件工时(分钟)折算时长
- // String jijiangongshi = formData.getString("numberField_lllv8q6d");
- // System.out.println("计件工时(分钟)折算时长===>" + jijiangongshi);
- // //工位补贴
- // String gongweibutie = formData.getString("numberField_lllv8q6l");
- // System.out.println("工位补贴===>" + gongweibutie);
- // //机床
- // String jichuangStr = formData.getString("textField_llttf90g");
- // String jichuang = jichuangStr.substring(0, 3);
- // System.out.println("机床===>" + jichuang);
- // if (gongweibutie == null){
- // gongweibutie = "0";
- // }
- // if (jijiangongshi == null){
- // jijiangongshi = "0";
- // }
- //
- //
- // map.put("userid",userid);
- // map.put("username",username);
- // map.put("jijiangongshi",jijiangongshi);
- // map.put("gongweibutie",gongweibutie);
- // map.put("jichuang",jichuang);
- //
- // listAll.add(map);
- // }
- // }
- //
- // if (jsonObject.getFloat("totalCount") / 100 > jsonObject.getInteger("currentPage")){
- // page += page;
- // }
- //
- // }while (jsonObject.getFloat("totalCount") / 100 > jsonObject.getInteger("currentPage"));
- //
- // JSONArray yidaJijiandan = JSON.parseArray(JSON.toJSONString(listAll));
- // System.out.println("封装【机加工计件单】明细jsonArray:" + yidaJijiandan);
- //
- // //计件工时(主机床)
- // float jijiangongshi = 0;
- // //超产工时(副机床)
- // float chaochangongshi = 0;
- // //工位补贴
- // float gongweibutie = 0;
- //
- //
- // /*通过封装接口获取【机加工计件单】*/
- // for (int j = 0; j < yidaJijiandan.size(); j++) {
- // log.info("循环第" + j + "次!");
- // //机床
- // String jichuang = yidaJijiandan.getJSONObject(j).getString("jichuang");
- // System.out.println("机床===》" + jichuang);
- //
- // //计件工时(折算时长)
- // float jijiangongshiOne = yidaJijiandan.getJSONObject(j).getFloat("jijiangongshi");
- // System.out.println("计件工时===》" + jijiangongshiOne);
- //
- // if (jichuang.equals("主机床")) {
- // jijiangongshi = jijiangongshi + jijiangongshiOne;
- // } else {
- // chaochangongshi = chaochangongshi + jijiangongshiOne;
- // }
- // //工位补贴
- // float gongweibutieFloat = yidaJijiandan.getJSONObject(j).getFloat("gongweibutie");
- // System.out.println("工位补贴===》" + gongweibutieFloat);
- // gongweibutie = gongweibutie + gongweibutieFloat;
- // }
- // jijiangongshi = jijiangongshi / 60 / 8;
- // chaochangongshi = chaochangongshi / 60 / 8;
- //
- // System.out.println("计件工时(主机床)" + jijiangongshi);
- // System.out.println("超产工时(副机床)" + chaochangongshi);
- // System.out.println("工位补贴" + gongweibutie);
- // }
- //
- // //获取宜搭表单数据【人员信息底表】
- // @Test
- // public void getYidaRenyuanxinxidibiao(){
- //
- // JSONObject jsonObject = null;
- //
- // int size = 100;
- // int page = 1;
- //
- // List listAll = new ArrayList();
- //
- // do {
- //
- // //【斯曼尔架构】
- // try {
- // com.aliyun.dingtalkyida_1_0.Client client = createClient();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDatasHeaders searchFormDatasHeaders = new com.aliyun.dingtalkyida_1_0.models.SearchFormDatasHeaders();
- // searchFormDatasHeaders.xAcsDingtalkAccessToken = accessTokenService.getAccessToken();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDatasRequest searchFormDatasRequest = new com.aliyun.dingtalkyida_1_0.models.SearchFormDatasRequest()
- // .setSystemToken("J0A6698165EFMED0AHIG76FW7C6Q3ON1PG5OL482")
- //// .setSearchFieldJson(mapAllStr)
- // .setCurrentPage(page)
- // .setPageSize(size)
- // .setFormUuid("FORM-5Q966D91G96F0WI8D98Q27NSBGUR3OV02H5OL21")
- // .setUserId("yida_pub_account")
- // .setAppType("APP_QHPV3T4ZU2Y88Q4U0UDA");
- //
- // SearchFormDatasResponse searchFormDatasResponse = client.searchFormDatasWithOptions(searchFormDatasRequest, searchFormDatasHeaders, new RuntimeOptions());
- //// System.out.println(JSON.toJSONString(searchFormDatasResponse.getBody()));
- // String s = JSON.toJSONString(searchFormDatasResponse.getBody());
- // jsonObject = JSON.parseObject(s);
- // System.out.println("宜搭数据高级条件查询【人员信息底表】接口object对象:" + jsonObject);
- // } catch (TeaException err) {
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // } catch (Exception _err) {
- // TeaException err = new TeaException(_err.getMessage(), _err);
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // }
- //
- // JSONArray data = jsonObject.getJSONArray("data");
- //// System.out.println("返回的宜搭data:" + data);
- //
- //
- // float gudinggongzi = 0;
- // float quanqinbutie = 0;
- // float kaohejishu = 0;
- // float xiaoshigongzi = 0;
- // int paixu = 0;
- // String suanxinleixing = null;
- //
- // if (data.isEmpty()) {
- // System.out.println("查询当月【人员信息底表】返回数据为空!");
- // } else {
- // for (int i = 0; i < data.size(); i++) {
- // JSONObject formData = data.getJSONObject(i).getJSONObject("formData");
- //// System.out.println("循环返回的宜搭formData:" + formData);
- // Map map = new HashMap<>();
- //
- // //实例ID
- // String shiliID = data.getJSONObject(i).getString("formInstanceId");
- // System.out.println("实例ID===>" + shiliID);
- //
- // //钉钉userid
- // String userid = formData.getString("textField_lo5h5imc");
- // System.out.println("钉钉userid===>" + userid);
- // //人员姓名
- // String username = formData.getString("textField_lo5h5ime");
- // System.out.println("人员姓名===>" + username);
- // //主部门
- // String zhubumen = formData.getString("textField_lo5h5imj");
- // System.out.println("主部门===>" + zhubumen);
- //
- // //职位
- // String zhiwei = formData.getString("textField_los37klu");
- // System.out.println("职位===>" + username);
- // //邮箱
- // String youoxiang = formData.getString("textField_los37klv");
- // System.out.println("邮箱===>" + zhubumen);
- //
- //
- // try {
- //// //固定工资(日工资)
- //// gudinggongzi = formData.getFloat("numberField_ljm75t26");
- //// System.out.println("固定工资(日工资)===>" + gudinggongzi);
- //// //小时工资(日工资/8)
- //// xiaoshigongzi = formData.getFloat("numberField_lkrn1v2h");
- //// System.out.println("小时工资(日工资/8)===>" + xiaoshigongzi);
- //// //加班小时工资(前期定义为全勤补贴)
- //// quanqinbutie = formData.getFloat("numberField_lkkg5ay6");
- //// System.out.println("全勤补贴===>" + quanqinbutie);
- //// //考核基数
- //// kaohejishu = formData.getFloat("numberField_ljm8j49p");
- //// System.out.println("考核基数===>" + kaohejishu);
- ////
- //// //算薪类型(普通、计件)
- //// suanxinleixing = formData.getString("selectField_lme9gohy");
- //// System.out.println("算薪类型(普通、计件)===>" + suanxinleixing);
- //// //排序
- //// paixu = formData.getInteger("numberField_llxdipxq");
- //// System.out.println("排序===>" + paixu);
- //
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- //
- // map.put("shiliID",shiliID);
- //
- // map.put("userid",userid);
- // map.put("username",username);
- // map.put("zhubumen",zhubumen);
- //
- // map.put("zhiwei",zhiwei);
- // map.put("youxiang",youoxiang);
- //
- // System.out.println("每次封装人员信息的map:" + map);
- //
- // listAll.add(map);
- // }
- // }
- //
- // if (jsonObject.getFloat("totalCount") / 100 > jsonObject.getFloat("currentPage")){
- // page = page + 1;
- // System.out.println("下一次待查询分页:" + page);
- // }
- //
- // }while (jsonObject.getFloat("totalCount") / 100 > jsonObject.getFloat("currentPage"));
- //
- // JSONArray jsonArray = JSON.parseArray(JSON.toJSONString(listAll));
- // System.out.println("封装【人员信息底表】明细jsonArray:" + jsonArray);
- //
- //// return jsonArray;
- // }
- //
- // //更新表单数据【最新版本更新】
- //// @Test
- //// public void updateBiaodan(){
- ////
- //// JSONArray yidaRenyuanxinxidibiao = getYidaRenyuanxinxidibiao();
- ////
- //// for (int i = 0; i < yidaRenyuanxinxidibiao.size(); i++) {
- //// //实例ID
- //// String shiliID = yidaRenyuanxinxidibiao.getJSONObject(i).getString("shiliID");
- //// System.out.println("实例ID:" + shiliID);
- //// //人员id
- //// String userid = yidaRenyuanxinxidibiao.getJSONObject(i).getString("userid");
- //// System.out.println("人员id:" + userid);
- ////
- //// /*---获取花名册数据---*/
- //// String huamingce1 = null;
- //// try {
- //// DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/smartwork/hrm/employee/list");
- //// OapiSmartworkHrmEmployeeListRequest request = new OapiSmartworkHrmEmployeeListRequest();
- ////
- //// request.setUseridList(userid);
- ////
- //// //需要获取的花名册字段信息
- //// //request.setFieldFilterList("sys00-name,sys02-sexType,sys01-employeeStatus,sys00-email,sys03-graduateSchool,sys03-highestEdu,sys00-dept,e3d6dbbd-9265-4f1e-8c58-ac3602e83960,sys03-graduationTime,sys00-mobile,sys02-address,sys02-marriage,sys00-confirmJoinTime,sys00-workPlace,sys00-position,sys01-positionLevel,sys02-politicalStatus,sys03-major,sys02-certNo,sys02-birthTime,sys02-certAddress,sys02-certEndTime,sys02-residenceType,sys01-employeeType,sys04-bankAccountNo,sys04-accountBank,sys09-personalHf,sys05-contractType,sys05-contractCompanyName,ff63191a-45cf-4106-ade0-54f1def7cc55");
- ////
- //// OapiSmartworkHrmEmployeeListResponse response = client.execute(request, accessTokenService.getAccessToken());
- //// huamingce1 = response.getBody();
- //// System.out.println(response.getBody());
- //// }catch (ApiException e){
- //// e.printStackTrace();
- //// }
- ////
- //// //通过fastjson工具转换成json对象,逐层解析
- //// //将String类型的花名册json数据转换为Object数据对象
- //// JSONObject jsonObject = JSON.parseObject(huamingce1);
- ////
- //// //直接将花名册对象通过Object转换成Array数组格式
- //// JSONArray resultArray = jsonObject.getJSONArray("result");
- //// System.out.println("Array===>" + resultArray);
- //// /*---获取花名册数据---*/
- ////
- //// JSONArray fieldListArray = resultArray.getJSONObject(0).getJSONArray("field_list");
- ////
- //// String userName = null;
- //// String zhubumen = null;
- ////
- //// for (int a = 0; a<fieldListArray.size(); a++) {
- //// String fieldCode = fieldListArray
- //// .getJSONObject(a)
- //// .getString("field_code");
- ////
- //// switch (fieldCode) {
- //// //姓名
- //// case "sys00-name":
- //// if (fieldListArray.getJSONObject(a).getString("value") != null) {
- //// System.out.println("***《《《姓名》》》***-->" + fieldListArray.getJSONObject(a).getString("value"));
- ////
- //// userName = fieldListArray.getJSONObject(a).getString("value");
- //// }
- //// break;
- //// //主部门
- //// case "sys00-mainDept":
- //// if (fieldListArray.getJSONObject(a).getString("value") != null){
- //// System.out.println("***主部门***-->" + fieldListArray.getJSONObject(a).getString("value"));
- ////
- //// zhubumen = fieldListArray.getJSONObject(a).getString("value");
- //// }
- //// break;
- //// }
- //// }
- ////
- //// Map map = new HashMap();
- ////
- //// //主部门
- //// map.put("textField_lm64k9gb", zhubumen);
- ////
- //// String mapJson = JSON.toJSONString(map);
- //// System.out.println("mapJson:" + mapJson);
- ////
- //// //更新表单数据【最新版本更新内容】
- //// try {
- //// com.aliyun.dingtalkyida_1_0.Client client = createClient();
- //// com.aliyun.dingtalkyida_1_0.models.UpdateFormDataHeaders updateFormDataHeaders = new com.aliyun.dingtalkyida_1_0.models.UpdateFormDataHeaders();
- //// updateFormDataHeaders.xAcsDingtalkAccessToken = accessTokenService.getAccessToken();
- //// com.aliyun.dingtalkyida_1_0.models.UpdateFormDataRequest updateFormDataRequest = new com.aliyun.dingtalkyida_1_0.models.UpdateFormDataRequest()
- //// .setSystemToken("IC766WA1MLVCU5DX9L6VY8HI3X0D39K6BVLKL0")
- //// .setFormInstanceId(shiliID)
- //// .setUserId("yida_pub_account")
- //// .setUseLatestVersion(true)
- //// .setAppType("APP_OVZ4YE0AZPWIHDYPIB2Y")
- //// .setUpdateFormDataJson(mapJson);
- ////
- //// client.updateFormDataWithOptions(updateFormDataRequest, updateFormDataHeaders, new com.aliyun.teautil.models.RuntimeOptions());
- //// } catch (TeaException err) {
- //// if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- //// // err 中含有 code 和 message 属性,可帮助开发定位问题
- //// }
- ////
- //// } catch (Exception _err) {
- //// TeaException err = new TeaException(_err.getMessage(), _err);
- //// if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- //// // err 中含有 code 和 message 属性,可帮助开发定位问题
- //// }
- ////
- //// }
- //// }
- ////
- ////
- //// }
- //
- // @Test
- // public void getSuanxin(){
- // //封装查询条件【数组】
- // List search = new ArrayList();
- //
- // //封装根据项目id作为查询条件
- // Map mapAll = new HashMap();
- // //查询字段编号
- // mapAll.put("key","textField_ll67cnfu");
- // //查询钉钉userid
- // mapAll.put("value","026534042237650981");
- // //查询字段类型
- // mapAll.put("type","TEXT");
- // //查询匹配方式:like(匹配)、eq(等于)
- // mapAll.put("operator","eq");
- // //查询字段标识
- // mapAll.put("componentName","textField");
- // search.add(mapAll);
- // String mapAllStr = JSON.toJSONString(search);
- // System.out.println("封装修改的字段参数:" + mapAllStr);
- //
- // JSONObject jsonObject = null;
- //
- // int size = 100;
- // int page = 1;
- //
- // try {
- // com.aliyun.dingtalkyida_1_0.Client client = createClient();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDataSecondGenerationNoTableFieldHeaders searchFormDataSecondGenerationNoTableFieldHeaders = new com.aliyun.dingtalkyida_1_0.models.SearchFormDataSecondGenerationNoTableFieldHeaders();
- // searchFormDataSecondGenerationNoTableFieldHeaders.xAcsDingtalkAccessToken = accessTokenService.getAccessToken();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDataSecondGenerationNoTableFieldRequest searchFormDataSecondGenerationNoTableFieldRequest = new com.aliyun.dingtalkyida_1_0.models.SearchFormDataSecondGenerationNoTableFieldRequest()
- //// //当前分页
- //// .setPageNumber(page)
- //// //每页查询数量
- //// .setPageSize(size)
- // //宜搭表单ID
- // .setFormUuid("FORM-PR8667D1V09DOA2JAJOD94P8QCLJ3HIJ376LL1")
- // //TODO 查询条件内容
- // .setSearchCondition(mapAllStr)
- //// //宜搭应用编码
- // .setAppType("APP_OVZ4YE0AZPWIHDYPIB2Y")
- // //宜搭应用秘钥
- // .setSystemToken("IC766WA1MLVCU5DX9L6VY8HI3X0D39K6BVLKL0")
- // //TODO 系统管理员id
- // .setUserId("yida_pub_account");
- //
- // SearchFormDataSecondGenerationNoTableFieldResponse searchFormDataSecondGenerationNoTableFieldResponse = client.searchFormDataSecondGenerationNoTableFieldWithOptions(searchFormDataSecondGenerationNoTableFieldRequest, searchFormDataSecondGenerationNoTableFieldHeaders, new RuntimeOptions());
- // System.out.println(JSON.toJSONString(searchFormDataSecondGenerationNoTableFieldResponse.getBody()));
- // String s = JSON.toJSONString(searchFormDataSecondGenerationNoTableFieldResponse.getBody());
- // jsonObject = JSON.parseObject(s);
- // System.out.println("高级条件查询【算薪权限表】接口object对象:" + jsonObject);
- // } catch (TeaException err) {
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // } catch (Exception _err) {
- // TeaException err = new TeaException(_err.getMessage(), _err);
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // }
- //
- // JSONArray data = jsonObject.getJSONArray("data");
- //
- // String suanxinfuzerenId = null;
- // List list = new ArrayList<>();
- // if (data.isEmpty()){
- // System.out.println("查询宜搭算薪权限表返回数据为空!");
- // }else {
- // //循环获取多个算薪负责人
- // for (int i = 0; i < data.size(); i++) {
- // JSONObject formData = data.getJSONObject(i).getJSONObject("formData");
- // try {
- // //被算薪人员Id
- // suanxinfuzerenId = formData.getString("textField_ll67cnft");
- // list.add(suanxinfuzerenId);
- // }catch (Exception e){
- // e.printStackTrace();
- // }
- // }
- // }
- // String jsonString = JSON.toJSONString(list);
- // System.out.println("算薪负责人Id数组:" + jsonString);
- // }
- //
- // //特殊加班单
- // @Test
- // public void getTeshujiaban(){
- // /**
- // * type = 0 上月数据
- // * type = 1 本月数据
- // * */
- //
- // int type = 0;
- //
- // //获取当前时间
- // Date Date = new Date(System.currentTimeMillis());
- // System.out.println("当前时间:" + Date);
- //
- // String lastMonthNow = null;
- // if (type == 0){//上月
- // //截取当天上月的年月
- // Calendar calendar123 = Calendar.getInstance();
- // calendar123.setTime(Date);
- // calendar123.add(Calendar.MONTH,-1);
- // lastMonthNow = new SimpleDateFormat("yyyy-MM").format(calendar123.getTime());
- // System.out.println("当天上月的日期,文本格式(月)" + lastMonthNow);
- // }else {//本月
- // //截取当天本月的年月
- // Calendar calendar123 = Calendar.getInstance();
- // calendar123.setTime(Date);
- // calendar123.add(Calendar.MONTH,0);
- // lastMonthNow = new SimpleDateFormat("yyyy-MM").format(calendar123.getTime());
- // System.out.println("当天本月的日期,文本格式(月)" + lastMonthNow);
- // }
- //
- //
- //
- // //封装根据项目id作为查询条件
- // Map mapAll = new HashMap();
- // //查询实际统计月份
- // mapAll.put("textField_lfw815u7",lastMonthNow);
- //
- // String mapAllStr = JSON.toJSONString(mapAll);
- // System.out.println("封装修改的字段参数:" + mapAllStr);
- //
- // //list集合装载最终的集合
- // List list = new ArrayList();
- //
- // JSONObject jsonObject = null;
- //
- // int size = 100;
- // int page = 1;
- //
- // List listAll = new ArrayList();
- //
- // do {
- // //【斯曼尔架构】
- // try {
- // com.aliyun.dingtalkyida_1_0.Client client = createClient();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDatasHeaders searchFormDatasHeaders = new com.aliyun.dingtalkyida_1_0.models.SearchFormDatasHeaders();
- // searchFormDatasHeaders.xAcsDingtalkAccessToken = accessTokenService.getAccessToken();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDatasRequest searchFormDatasRequest = new com.aliyun.dingtalkyida_1_0.models.SearchFormDatasRequest()
- // .setSystemToken("IC766WA1MLVCU5DX9L6VY8HI3X0D39K6BVLKL0")
- // .setSearchFieldJson(mapAllStr)
- // .setCurrentPage(page)
- // .setPageSize(size)
- // .setFormUuid("FORM-HT866U91HLKFLTYH9AZEIB9E4LXZ22WVUHEOL51")
- // .setUserId("yida_pub_account")
- // .setAppType("APP_OVZ4YE0AZPWIHDYPIB2Y");
- //
- // SearchFormDatasResponse searchFormDatasResponse = client.searchFormDatasWithOptions(searchFormDatasRequest, searchFormDatasHeaders, new RuntimeOptions());
- // System.out.println(JSON.toJSONString(searchFormDatasResponse.getBody()));
- // String s = JSON.toJSONString(searchFormDatasResponse.getBody());
- // jsonObject = JSON.parseObject(s);
- // System.out.println("宜搭数据高级条件查询【特殊加班单】接口object对象:" + jsonObject);
- // } catch (TeaException err) {
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // } catch (Exception _err) {
- // TeaException err = new TeaException(_err.getMessage(), _err);
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // }
- //
- // JSONArray data = jsonObject.getJSONArray("data");
- // System.out.println("返回的宜搭data:" + data);
- //
- //
- //
- // if (data.isEmpty()) {
- // System.out.println("查询当月【特殊加班单】返回数据为空!");
- // } else {
- // for (int i = 0; i < data.size(); i++) {
- // JSONObject formData = data.getJSONObject(i).getJSONObject("formData");
- // JSONArray tableField_lofdxd54 = formData.getJSONArray("tableField_lofdxd54");
- // for (int j = 0; j < tableField_lofdxd54.size(); j++) {
- // JSONObject jsonObject1 = tableField_lofdxd54.getJSONObject(j);
- // listAll.add(jsonObject1);
- // }
- // }
- // }
- //
- // if (jsonObject.getFloat("totalCount") / 100 > jsonObject.getInteger("currentPage")){
- // page += page;
- // }
- //
- // }while (jsonObject.getFloat("totalCount") / 100 > jsonObject.getInteger("currentPage"));
- //
- // JSONArray jsonArray = JSON.parseArray(listAll.toString());
- // System.out.println("封装【特殊加班单】明细jsonArray:" + jsonArray);
- // }
- //
- // //根据部门id获取下级部门列表
- // @Test
- // public JSONArray getBumenList(long bumenID){
- //
- //// long bumenID = 541945265l;
- //
- // //获取部门列表
- // String bumenStr = null;
- // try {
- // DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/v2/department/listsub");
- // OapiV2DepartmentListsubRequest req = new OapiV2DepartmentListsubRequest();
- // req.setDeptId(bumenID);
- // OapiV2DepartmentListsubResponse rsp = client.execute(req, accessTokenService.getAccessToken());
- // System.out.println(rsp.getBody());
- // bumenStr = rsp.getBody();
- // } catch (ApiException e) {
- // e.printStackTrace();
- // }
- //
- // JSONObject jsonObject = JSON.parseObject(bumenStr);
- // JSONArray result = jsonObject.getJSONArray("result");
- // System.out.println("部门列表返回结果:" + result);
- //
- // return result;
- // }
- //
- // @Test
- // public void getBumen(){
- //
- // //固定部门:【技术部】、【产品部】
- // String bumenIdStr = "[\"480288770\",\"831620159\"]";
- //
- // JSONArray bumenIdArray = JSON.parseArray(bumenIdStr);
- //
- // for (int i = 0; i < bumenIdArray.size(); i++) {
- // long bumenID = bumenIdArray.getLong(i);
- // System.out.println("循环第" + i + "次部门id~~~");
- //
- // //获取部门列表
- // JSONArray bumenList1 = getBumenList(bumenID);
- //
- // if (bumenList1.isEmpty()) {
- // System.out.println("第一层部门列表为空!");
- // } else {
- // for (int j = 0; j < bumenList1.size(); j++) {
- // log.info("循环第一层部门列表。。。");
- // JSONObject jsonObject1 = bumenList1.getJSONObject(j);
- // System.out.println("第一层部门列表:" + jsonObject1);
- //
- // //第一层部门id
- // long dept_id1 = jsonObject1.getLong("dept_id");
- // System.out.println("第一层部门id:" + dept_id1);
- //
- // JSONArray bumenList2 = getBumenList(dept_id1);
- //
- // if (bumenList2.isEmpty()) {
- // System.out.println("第二层部门列表为空!");
- // } else {
- // for (int k = 0; k < bumenList2.size(); k++) {
- // log.info("循环第二层部门列表。。。");
- //
- // JSONObject jsonObject2 = bumenList2.getJSONObject(j);
- // System.out.println("第二层部门列表:" + jsonObject2);
- // }
- // }
- // }
- // }
- // }
- // }
- //
- //
- // //环世TB企业ID(tbOrganizationId)
- // public static String tbOrganizationId = "61318dae53bac9ea1baf7d9d";
- //
- // @Test
- // public void getTBuserId(){
- //
- // String youxiang = "hongd@olymtech.com";
- //
- // int code = 0;
- // JSONArray result = null;
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("text/plain");
- // RequestBody body = RequestBody.create(mediaType, "");
- // Request request = new Request.Builder()
- // .url("https://open.teambition.com/api/org/member/search?orgId=" + tbOrganizationId + "&query=" + youxiang)
- // .method("GET", null)
- // .addHeader("Authorization", "Bearer " + accessTokenService.getAppToken())
- // .addHeader("X-Tenant-Id", tbOrganizationId)
- // .addHeader("X-Tenant-Type", "organization")
- // .build();
- // Response response = client.newCall(request).execute();
- //
- // String bodyStr = response.body().string();
- // JSONObject jsonObject = JSON.parseObject(bodyStr);
- //// System.out.println("返回体body:" + jsonObject);
- // code = jsonObject.getInteger("code");
- // System.out.println("TB获取人员接口返回状态码:" + code);
- //
- // result = jsonObject.getJSONArray("result");
- // System.out.println("TB获取人员接口返回result:" + result);
- // }catch (IOException e){
- // e.printStackTrace();
- // }
- //
- // String TBuserId = result.getJSONObject(0).getString("userId");
- // System.out.println("根据邮箱匹配的TBuserId:" + TBuserId);
- // }
- //
- // @Test
- // public void getTEST(){
- // String aaa = "[{\"shiliID\":\"FINST-QC766EC1L3UFMWJ56OPWECOBKSH62WS7X3SOL8Z3\",\"zhubumen\":\"跨境电商组\",\"zhiwei\":\"后端开发工程师\",\"userid\":\"2055054927907044\",\"username\":\"洪鼎\",\"youxiang\":\"hongd@olymtech.com\"}]";
- // JSONArray yidaRenyuanxinxidibiao = JSON.parseArray(aaa);
- // log.info("【TEST】通过封装接口获取【人员信息底表】:" + yidaRenyuanxinxidibiao);
- //
- // for (int i = 0; i < yidaRenyuanxinxidibiao.size(); i++) {
- // //员工id
- // String userId = yidaRenyuanxinxidibiao.getJSONObject(i).getString("userid");
- // System.out.println("员工id:" + userId);
- // }
- // }
- //
- // //根据任务ID获取任务详情
- // @Test
- // public void getRenwuxiangqing(){
- //
- // String renwuId = "65698c723718c3e0586686bf";
- //
- // int code = 0;
- // JSONArray result = null;
- // JSONArray renwuxiangqing = null;
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("text/plain");
- // RequestBody body = RequestBody.create(mediaType, "");
- // Request request = new Request.Builder()
- // .url("https://open.teambition.com/api/v3/task/query?taskId=" + renwuId)
- // .method("GET", null)
- // .addHeader("Authorization", "Bearer " + accessTokenService.getAppToken())
- // .addHeader("X-Tenant-Id", tbOrganizationId)
- // .addHeader("X-Tenant-Type", "organization")
- // .build();
- // Response response = client.newCall(request).execute();
- //
- // String bodyStr = response.body().string();
- // JSONObject jsonObject = JSON.parseObject(bodyStr);
- //// System.out.println("返回体body:" + jsonObject);
- // code = jsonObject.getInteger("code");
- // System.out.println("TB获取任务详情接口返回状态码:" + code);
- //
- // result = jsonObject.getJSONArray("result");
- // System.out.println("TB获取任务详情接口返回result:" + result);
- //
- // renwuxiangqing = JSON.parseArray(result.toJSONString());
- // System.out.println("接口返回任务详情数组:" + renwuxiangqing);
- // }catch (IOException e){
- // e.printStackTrace();
- // }
- //
- // JSONObject jsonObject = renwuxiangqing.getJSONObject(0);
- //
- // //是否放入回收站
- // String isArchived = jsonObject.getString("isArchived");
- // System.out.println("是否放入回收站:" + isArchived);
- //
- // String content = "";
- // String yewuleixing = "";
- // String tBxaingmuName = "";
- //
- // if (renwuxiangqing == null){
- // log.info("该任务不存在!");
- // } else if (isArchived.equals("true")) {
- // log.info("该任务已放入回收站,不统计!");
- // } else {
- // log.info("该任务没有放入回收站,正常统计!");
- // }
- //// if (renwuxiangqing == null){
- //// log.info("该任务不存在!");
- //// }else {
- ////
- //// //任务标题
- //// content = jsonObject.getString("content");
- //// System.out.println("任务标题:" + content);
- ////
- //// /*调用封装接口获取自定义字段【业务类型】选项值集合*/
- //// log.info("调用封装接口获取自定义字段【业务类型】选项值集合。");
- //// JSONArray tBzidingyi = getTBzidingyi();
- //// for (int i = 0; i < tBzidingyi.size(); i++) {
- //// JSONObject jsonObject1 = tBzidingyi.getJSONObject(i);
- //// //自定义字段id
- //// String zidingyiID = jsonObject1.getString("id");
- //// System.out.println("自定义字段【业务类型】id:" + zidingyiID);
- //// //自定义字段名称
- //// String zidingyiName = jsonObject1.getString("value");
- //// System.out.println("自定义字段【业务类型】名称:" + zidingyiName);
- ////
- //// //业务类型
- //// JSONArray yewuleixingjsonArray = renwuxiangqing.getJSONObject(0).getJSONArray("customfields");
- //// for (int j = 0; j < yewuleixingjsonArray.size(); j++) {
- //// JSONArray yewuleixingjsonArray1 = yewuleixingjsonArray.getJSONObject(j).getJSONArray("value");
- //// if (yewuleixingjsonArray1.isEmpty()){
- //// log.info("任务字段没有内容,跳过~");
- //// }else {
- //// String ziduanName = yewuleixingjsonArray1.getJSONObject(0).getString("title");
- //// System.out.println("任务中包含的字段内容:" + ziduanName);
- //// //判断当前循环到的字段内容是否属于自定义字段【业务类型】中的某个值,如果符合其中一个则取该值
- //// if (ziduanName.equals(zidingyiName)) {
- //// yewuleixing = ziduanName;
- //// }
- //// }
- //// }
- //// }
- //// System.out.println("【匹配】业务类型:" + yewuleixing);
- ////
- ////
- ////
- //// //项目ID
- //// String projectId = jsonObject.getString("projectId");
- //// System.out.println("项目ID:" + projectId);
- ////
- //// }
- //
- //// return resultArray;
- // }
- //
- // //根据TB人员userId获取工时
- // @Test
- // public void getTBgongshi(){
- //
- // String TBuserId = "61336e4f4c42b6c212f358f1";
- //
- // //TODO 需要做成动态的
- // String startDate = "2023-11-01";
- // String endDate = "2023-11-30";
- //
- // int code = 0;
- // JSONArray result = null;
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("text/plain");
- // RequestBody body = RequestBody.create(mediaType, "");
- // Request request = new Request.Builder()
- // .url("https://open.teambition.com/api/worktime/query?userId=" + TBuserId + "&pageSize=1000&pageToken=&startDate="+ startDate +"&endDate="+ endDate)
- // .method("GET", null)
- // .addHeader("Authorization", "Bearer " + accessTokenService.getAppToken())
- // .addHeader("X-Tenant-Id", tbOrganizationId)
- // .addHeader("X-Tenant-Type", "organization")
- // .build();
- // Response response = client.newCall(request).execute();
- //
- // String bodyStr = response.body().string();
- // JSONObject jsonObject = JSON.parseObject(bodyStr);
- //// System.out.println("返回体body:" + jsonObject);
- // code = jsonObject.getInteger("code");
- // System.out.println("TB获取人员实际工时接口返回状态码:" + code);
- //
- // result = jsonObject.getJSONArray("result");
- // System.out.println("TB获取人员实际工时接口返回result:" + result);
- // }catch (IOException e){
- // e.printStackTrace();
- // }
- //
- // double gongshiAll = 0;
- //
- // if (result.isEmpty()){
- // log.info("未获取到!");
- // }else {
- // log.info("获取到!");
- //
- //
- // for (int i = 0; i < result.size(); i++) {
- // //工时关联的task ID
- // String objectId = result.getJSONObject(i).getString("objectId");
- // System.out.println("工时关联的task ID:" + objectId);
- // //工时(毫秒:转换成天)
- // long plantime = result.getJSONObject(i).getLong("worktime");
- // System.out.println("工时(毫秒):" + plantime);
- // double gongshi = (double) plantime / 3600000 / 8;
- // BigDecimal gongshiTwo = new BigDecimal(gongshi);
- // double gs = gongshiTwo.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
- // System.out.println("工时(毫秒转换成天):" + gs);
- //
- // gongshiAll = gongshiAll + gs;
- //
- //// //根据任务ID获取任务详情,解析得到任务标题和项目ID
- //// JSONArray renwuxiangqing = getRenwuxiangqing(objectId);
- //// JSONObject jsonObject = renwuxiangqing.getJSONObject(0);
- //// //任务标题
- //// String content = jsonObject.getString("content");
- //// System.out.println("任务标题:" + content);
- ////
- //// //项目ID
- //// String projectId = jsonObject.getString("projectId");
- //// System.out.println("项目ID:" + projectId);
- //// /*根据项目ID获取项目详情*/
- // }
- // }
- //
- // System.out.println("该人员计划工时为:" + gongshiAll);
- // }
- //
- // public JSONArray getTBxiangmufenzu(String fenzuId){
- // //根据项目分组id获取其中的项目id
- // int code = 0;
- // JSONArray result = null;
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("text/plain");
- // RequestBody body = RequestBody.create(mediaType, "");
- // Request request = new Request.Builder()
- // .url("https://open.teambition.com/api/v3/project-tag/"+ fenzuId +"/project/query")
- // .method("GET", null)
- // .addHeader("Authorization", "Bearer " + accessTokenService.getAppToken())
- // .addHeader("X-Tenant-Id", tbOrganizationId)
- // .addHeader("X-Tenant-Type", "organization")
- // .build();
- // Response response = client.newCall(request).execute();
- // String bodyStr = response.body().string();
- // JSONObject jsonObject = JSON.parseObject(bodyStr);
- // System.out.println("返回体body:" + jsonObject);
- // code = jsonObject.getInteger("code");
- //
- // result = jsonObject.getJSONArray("result");
- // }catch (IOException e){
- // e.printStackTrace();
- // }
- // System.out.println("查询【项目分组】下面的项目id,接口返回的状态码(200成功,400异常):" + code);
- // System.out.println("每一个项目分组下面的项目id列表返回值:" + result);
- //
- // return result;
- // }
- //
- // //获取项目信息
- // @Test
- // public void getTBxaingmu(){
- //
- // String xiangmuID = "652e28f8d74c5cc851b1a732";
- //
- // int code = 0;
- // JSONArray result = null;
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // Request request = new Request.Builder()
- // .url("https://open.teambition.com/api/v3/project/query?projectIds=" + xiangmuID)
- // .method("GET", null)
- // .addHeader("Authorization", "Bearer " + accessTokenService.getAppToken())
- // .addHeader("X-Tenant-Id", tbOrganizationId)
- // .addHeader("X-Tenant-Type", "organization")
- // .build();
- //
- // Response response = client.newCall(request).execute();
- // String bodyStr = response.body().string();
- // JSONObject jsonObject = JSON.parseObject(bodyStr);
- // System.out.println("返回体body:" + jsonObject);
- // code = jsonObject.getInteger("code");
- // System.out.println("查询【项目信息】接口返回的状态码(200成功,400异常):" + code);
- //
- // result = jsonObject.getJSONArray("result");
- // }catch (IOException e){
- // e.printStackTrace();
- // }
- //
- // String xiangmuName = result.getJSONObject(0).getString("name");
- // System.out.println("项目名称:" + xiangmuName);
- // }
- //
- // //根据项目ID获取项目分组ID
- // @Test
- // public void getXiangmufenzuID(){
- //
- // //项目ID
- // String xiangmuID = "65489aef757f53d1f80dfaa6";
- //
- // int code = 0;
- // JSONArray result = null;
- // String xiangmufenzuID = "";
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("text/plain");
- // RequestBody body = RequestBody.create(mediaType, "");
- // Request request = new Request.Builder()
- // .url("https://open.teambition.com/api/v3/project/"+ xiangmuID +"/project-tag")
- // .method("GET", null)
- // .addHeader("Authorization", "Bearer " + accessTokenService.getAppToken())
- // .addHeader("X-Tenant-Id", tbOrganizationId)
- // .addHeader("X-Tenant-Type", "organization")
- // .build();
- // Response response = client.newCall(request).execute();
- //
- // String bodyStr = response.body().string();
- // JSONObject jsonObject = JSON.parseObject(bodyStr);
- // System.out.println("返回体body:" + jsonObject);
- // code = jsonObject.getInteger("code");
- // System.out.println("查询【项目分组】接口返回的状态码(200成功,400异常):" + code);
- //
- // result = jsonObject.getJSONArray("result");
- // xiangmufenzuID = result.getString(0);
- // }catch (IOException e){
- // e.printStackTrace();
- // }
- //
- // System.out.println("项目分组ID:" + xiangmufenzuID);
- //
- // }
- //
- // //根据项目分组ID获取项目分组名称
- // @Test
- // public void getXiangmufenzuName(){
- //
- // //项目分组ID
- // String xiangmufenzuID = "6459ffcafe95850316b2c2dc";
- //
- // int code = 0;
- // JSONArray result = null;
- // String xiangmufenzuName = "";
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("text/plain");
- // RequestBody body = RequestBody.create(mediaType, "");
- // Request request = new Request.Builder()
- // .url("https://open.teambition.com/api/v3/project-tag/query?ids="+ xiangmufenzuID)
- // .method("GET", null)
- // .addHeader("Authorization", "Bearer " + accessTokenService.getAppToken())
- // .addHeader("X-Tenant-Id", tbOrganizationId)
- // .addHeader("X-Tenant-Type", "organization")
- // .build();
- // Response response = client.newCall(request).execute();
- //
- // String bodyStr = response.body().string();
- // JSONObject jsonObject = JSON.parseObject(bodyStr);
- // System.out.println("返回体body:" + jsonObject);
- // code = jsonObject.getInteger("code");
- // System.out.println("查询【项目分组名称】接口返回的状态码(200成功,400异常):" + code);
- //
- // result = jsonObject.getJSONArray("result");
- // JSONObject jsonObject1 = result.getJSONObject(0);
- // xiangmufenzuName = jsonObject1.getString("name");
- // }catch (IOException e){
- // e.printStackTrace();
- // }
- //
- // System.out.println("项目分组名称:" + xiangmufenzuName);
- //
- // }
- //
- // @Test
- // public void getTB(){
- // /*根据人员信息底表获取【TB项目/任务工时】数据*/
- // //获取项目分组【IDX项目】下面的分组
- // String IDXxiangmufenzuID = "645def56443fd5770693c3f8";
- //
- // int code = 0;
- // JSONArray result = null;
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("text/plain");
- // RequestBody body = RequestBody.create(mediaType, "");
- // Request request = new Request.Builder()
- // .url("https://open.teambition.com/api/v3/project-tag/query?parentProjectTagId=" + IDXxiangmufenzuID)
- // .method("GET", null)
- // .addHeader("Authorization", "Bearer " + accessTokenService.getAppToken())
- // .addHeader("X-Tenant-Id", tbOrganizationId)
- // .addHeader("X-Tenant-Type", "organization")
- // .build();
- // Response response = client.newCall(request).execute();
- // String bodyStr = response.body().string();
- // JSONObject jsonObject = JSON.parseObject(bodyStr);
- // System.out.println("返回体body:" + jsonObject);
- // code = jsonObject.getInteger("code");
- //
- // result = jsonObject.getJSONArray("result");
- // }catch (IOException e){
- // e.printStackTrace();
- // }
- // System.out.println("查询【IDX分组】下面的分组,接口返回的状态码(200成功,400异常):" + code);
- //
- // for (int i = 0; i < result.size(); i++) {
- // String fenzuId = result.getJSONObject(i).getString("id");
- // System.out.println("分组id:" + fenzuId);
- // String fenzuName = result.getJSONObject(i).getString("name");
- // System.out.println("分组名称:" + fenzuName);
- // }
- //
- //
- //
- //
- //
- //// try {
- //// OkHttpClient client = new OkHttpClient().newBuilder()
- //// .build();
- //// Request request = new Request.Builder()
- //// .url("https://open.teambition.com/api/v3/project/query?pageSize=1000")
- //// .method("GET", null)
- //// .addHeader("Authorization", "Bearer " + accessTokenService.getAppToken())
- //// .addHeader("X-Tenant-Id", tbOrganizationId)
- //// .addHeader("X-Tenant-Type", "organization")
- //// .build();
- ////
- //// Response response = client.newCall(request).execute();
- //// String bodyStr = response.body().string();
- //// JSONObject jsonObject = JSON.parseObject(bodyStr);
- //// System.out.println("返回体body:" + jsonObject);
- //// code = jsonObject.getInteger("code");
- ////
- //// result = jsonObject.getJSONArray("result");
- //// }catch (IOException e){
- //// e.printStackTrace();
- //// }
- //// System.out.println("查询【项目信息】接口返回的状态码(200成功,400异常):" + code);
- //
- // }
- //
- // //获取IDX分组下的目录名称
- // public JSONArray getIDXfenzu(){
- // /*根据人员信息底表获取【TB项目/任务工时】数据*/
- // //获取项目分组【IDX项目】下面的分组
- // String IDXxiangmufenzuID = "645def56443fd5770693c3f8";
- //
- // int code = 0;
- // JSONArray result = null;
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("text/plain");
- // RequestBody body = RequestBody.create(mediaType, "");
- // Request request = new Request.Builder()
- // .url("https://open.teambition.com/api/v3/project-tag/query?parentProjectTagId=" + IDXxiangmufenzuID)
- // .method("GET", null)
- // .addHeader("Authorization", "Bearer " + accessTokenService.getAppToken())
- // .addHeader("X-Tenant-Id", tbOrganizationId)
- // .addHeader("X-Tenant-Type", "organization")
- // .build();
- // Response response = client.newCall(request).execute();
- // String bodyStr = response.body().string();
- // JSONObject jsonObject = JSON.parseObject(bodyStr);
- // System.out.println("返回体body:" + jsonObject);
- // code = jsonObject.getInteger("code");
- //
- // result = jsonObject.getJSONArray("result");
- // }catch (IOException e){
- // e.printStackTrace();
- // }
- // System.out.println("查询【IDX分组】下面的分组,接口返回的状态码(200成功,400异常):" + code);
- //
- // return result;
- // }
- //
- // //测试业务类型--分组目录获取
- // @Test
- // public void getFenzu(){
- //
- // String xiangmufenzuName = "船东";
- // int flag = 0;
- // String XXX = "";
- //
- // //调用接口获取IDX分组下的目录名称,匹配逻辑下最终的业务类型名称
- // log.info("调用接口获取IDX分组下的目录名称===");
- // JSONArray IDXfenzu = getIDXfenzu();
- // for (int f = 0; f < IDXfenzu.size(); f++) {
- // String fenzuId = IDXfenzu.getJSONObject(f).getString("id");
- // System.out.println("分组id:" + fenzuId);
- // String fenzuName = IDXfenzu.getJSONObject(f).getString("name");
- // System.out.println("分组名称:" + fenzuName);
- //
- // if (flag == 0){
- // if (xiangmufenzuName.equals(fenzuName)){
- // log.info("匹配到IDX分组名称,去取该IDX分组下的目录名称。");
- // XXX = fenzuName;
- // //添加标识,说明已经匹配到了
- // flag = flag + 1;
- // }else {
- // log.info("匹配不到IDX分组名称,继续匹配下一个IDX分组。");
- // }
- // }
- // }
- // System.out.println("获取的IDX分组下的目录名称用作最终的【业务类型】:" + XXX);
- // }
- //
- //
- // //根据自定义字段ID【业务类型】获取自定义字段内容
- // @Test
- // public void getTBzidingyi() {
- //
- // //业务类型
- // String zidingyiID = "642a8ff24ed7d8c44b469ced";
- //
- // int code = 0;
- // JSONArray result = null;
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("text/plain");
- // RequestBody body = RequestBody.create(mediaType, "");
- // Request request = new Request.Builder()
- // .url("https://open.teambition.com/api/v3/customfield/search?cfIds=" + zidingyiID)
- // .method("GET", null)
- // .addHeader("Authorization", "Bearer " + accessTokenService.getAppToken())
- // .addHeader("X-Tenant-Id", tbOrganizationId)
- // .addHeader("X-Tenant-Type", "organization")
- // .build();
- // Response response = client.newCall(request).execute();
- //
- // String bodyStr = response.body().string();
- // JSONObject jsonObject = JSON.parseObject(bodyStr);
- // System.out.println("返回体body:" + jsonObject);
- // code = jsonObject.getInteger("code");
- // System.out.println("查询【自定义字段:业务类型】接口返回的状态码(200成功,400异常):" + code);
- //
- // result = jsonObject.getJSONArray("result");
- // System.out.println("result:" + result);
- //
- // }catch (IOException e){
- // e.printStackTrace();
- // }
- //
- // JSONArray yewuleixingArray = result.getJSONObject(0).getJSONArray("choices");
- // System.out.println("【业务类型】值:" + yewuleixingArray);
- //
- //// return yewuleixingArray;
- // }
- //
- // //获取迭代类型
- // @Test
- // public void getDiedai(){
- //
- // String xmid = "6476b93d344ff5c76845eb8d";
- // String ddid = "6528b83315680fd221e3c1b6";
- //
- // int code = 0;
- // JSONArray result = null;
- // String diedaiName = "";
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("text/plain");
- // RequestBody body = RequestBody.create(mediaType, "");
- // Request request = new Request.Builder()
- // .url("https://open.teambition.com/api/v3/project/" + xmid + "/sprint/search?sprintIds=" + ddid)
- // .method("GET", null)
- // .addHeader("Authorization", "Bearer " + accessTokenService.getAppToken())
- // .addHeader("X-Tenant-Id", tbOrganizationId)
- // .addHeader("X-Tenant-Type", "organization")
- // .build();
- // Response response = client.newCall(request).execute();
- //
- // String bodyStr = response.body().string();
- // JSONObject jsonObject = JSON.parseObject(bodyStr);
- // System.out.println("返回体body:" + jsonObject);
- // code = jsonObject.getInteger("code");
- // System.out.println("查询【迭代名称】接口返回的状态码(200成功,400异常):" + code);
- //
- // result = jsonObject.getJSONArray("result");
- // System.out.println("result:" + result);
- //
- // if (!result.isEmpty()){
- // diedaiName = result.getJSONObject(0).getString("name");
- // }
- // }catch (IOException e){
- // e.printStackTrace();
- // }
- // System.out.println("迭代名称:" + diedaiName);
- // }
- //
- //
- // //删除宜搭表单数据【工时数据汇总表】
- // @Test
- // public void delGongshitongji(){
- //
- // JSONObject jsonObject = null;
- //
- // int size = 100;
- // int page = 1;
- //
- // List listAll = new ArrayList();
- //
- // do {
- //
- // //【环世架构】
- // try {
- // com.aliyun.dingtalkyida_1_0.Client client = createClient();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDatasHeaders searchFormDatasHeaders = new com.aliyun.dingtalkyida_1_0.models.SearchFormDatasHeaders();
- // searchFormDatasHeaders.xAcsDingtalkAccessToken = accessTokenService.getAccessToken();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDatasRequest searchFormDatasRequest = new com.aliyun.dingtalkyida_1_0.models.SearchFormDatasRequest()
- // .setSystemToken("J0A6698165EFMED0AHIG76FW7C6Q3ON1PG5OL482")
- //// .setSearchFieldJson(mapAllStr)
- // .setCurrentPage(page)
- // .setPageSize(size)
- // .setFormUuid("FORM-BH766Y61W4CFWBS0869YFBF8COTE2QEHIH5OLM")
- // .setUserId("yida_pub_account")
- // .setAppType("APP_QHPV3T4ZU2Y88Q4U0UDA");
- //
- // SearchFormDatasResponse searchFormDatasResponse = client.searchFormDatasWithOptions(searchFormDatasRequest, searchFormDatasHeaders, new RuntimeOptions());
- //// System.out.println(JSON.toJSONString(searchFormDatasResponse.getBody()));
- // String s = JSON.toJSONString(searchFormDatasResponse.getBody());
- // jsonObject = JSON.parseObject(s);
- // System.out.println("宜搭数据高级条件查询【工时数据汇总表】接口object对象:" + jsonObject);
- // } catch (TeaException err) {
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // } catch (Exception _err) {
- // TeaException err = new TeaException(_err.getMessage(), _err);
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // }
- //
- // JSONArray data = jsonObject.getJSONArray("data");
- //// System.out.println("返回的宜搭data:" + data);
- //
- //
- // if (data.isEmpty()) {
- // System.out.println("查询当月【工时数据汇总表】返回数据为空!");
- // } else {
- // for (int i = 0; i < data.size(); i++) {
- // JSONObject formData = data.getJSONObject(i).getJSONObject("formData");
- //// System.out.println("循环返回的宜搭formData:" + formData);
- //
- // //实例ID
- // String shiliID = data.getJSONObject(i).getString("formInstanceId");
- // System.out.println("实例ID===>" + shiliID);
- //
- // try {
- // com.aliyun.dingtalkyida_1_0.Client client = createClient();
- // DeleteFormDataHeaders deleteFormDataHeaders = new DeleteFormDataHeaders();
- // deleteFormDataHeaders.xAcsDingtalkAccessToken = accessTokenService.getAccessToken();
- // DeleteFormDataRequest deleteFormDataRequest = new DeleteFormDataRequest()
- // .setAppType("APP_QHPV3T4ZU2Y88Q4U0UDA")
- // .setSystemToken("J0A6698165EFMED0AHIG76FW7C6Q3ON1PG5OL482")
- // .setUserId("yida_pub_account")
- // .setFormInstanceId(shiliID);
- //
- // client.deleteFormDataWithOptions(deleteFormDataRequest, deleteFormDataHeaders, new RuntimeOptions());
- // } catch (TeaException err) {
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // } catch (Exception _err) {
- // TeaException err = new TeaException(_err.getMessage(), _err);
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // }
- // }
- // }
- //
- // if (jsonObject.getFloat("totalCount") / 100 > jsonObject.getFloat("currentPage")){
- // page = page + 1;
- // System.out.println("下一次待查询分页:" + page);
- // }
- //
- // }while (jsonObject.getFloat("totalCount") / 100 > jsonObject.getFloat("currentPage"));
- //
- // System.out.println("删除【工时数据统计表】完成!");
- // }
- //
- // //多线程执行for循环
- // @Test
- // public void testFor() throws InterruptedException{
- // //创建一个线程池,最大线程为10
- //// ExecutorService executorService = Executors.newFixedThreadPool(10);
- //
- // //定义循环此时
- // int size = 100;
- //
- // for (int i = 0; i < size; i++) {
- // ThreadUtil.execAsync(() -> {
- // try {
- // Thread.sleep(3000);
- // } catch (InterruptedException e) {
- // e.printStackTrace();
- // }
- // System.out.println("线程" + Thread.currentThread().getName() + "执行完");
- // });
- // System.out.println("第" + i + "个线程");
- // }
- // System.out.println("完成");
- //
- //// for (int i = 0; i < size; i++) {
- //// // 任务逻辑代码
- //// System.out.println("任务执行中:" + i);
- ////
- //// try {
- //// Thread.sleep(2000);
- //// }catch (Exception e){
- //// e.printStackTrace();
- //// }
- //// }
- //
- //// // 定义任务
- //// Runnable task = () -> {
- //// // 循环逻辑
- //// for (int i = 0; i < size; i++) {
- //// // 任务逻辑代码
- //// System.out.println("任务执行中:" + i);
- ////
- //// try {
- //// Thread.sleep(2000);
- //// }catch (Exception e){
- //// e.printStackTrace();
- //// }
- ////
- //// }
- //// };
- ////
- //// // 提交任务给线程池
- //// executorService.execute(task);
- ////
- //// // 关闭线程池
- //// executorService.shutdown();
- ////
- //// // 等待任务完成
- //// executorService.awaitTermination(Long.MAX_VALUE, TimeUnit.NANOSECONDS);
- ////
- //// System.out.println("任务执行完成");
- // }
- //
- //
- // //通过IDMap查询TBuserId
- // @Test
- // public void getDingdingToTBuserId(){
- //
- // String userid = "3242531728350746";
- //
- // String dingCorpId = "ding8f59ac9a4a00de1635c2f4657eb6378f";
- //
- // int code = 0;
- // JSONArray result = null;
- // try {
- // OkHttpClient client = new OkHttpClient().newBuilder()
- // .build();
- // MediaType mediaType = MediaType.parse("text/plain");
- // RequestBody body = RequestBody.create(mediaType, "");
- // Request request = new Request.Builder()
- // .url("https://open.teambition.com/api/idmap/query?refId="+ dingCorpId +"&refer=dingTalk-user&extraUserId="+ userid)
- // .method("GET", null)
- // .addHeader("Authorization", "Bearer " + accessTokenService.getAppToken())
- // .addHeader("X-Tenant-Id", tbOrganizationId)
- // .addHeader("X-Tenant-Type", "organization")
- // .build();
- // Response response = client.newCall(request).execute();
- //
- // String bodyStr = response.body().string();
- // JSONObject jsonObject = JSON.parseObject(bodyStr);
- //// System.out.println("返回体body:" + jsonObject);
- // code = jsonObject.getInteger("code");
- // System.out.println("TB获取人员接口返回状态码:" + code);
- //
- // result = jsonObject.getJSONArray("result");
- // System.out.println("TB获取人员接口返回result:" + result);
- // }catch (IOException e){
- // e.printStackTrace();
- // }
- //
- // String tbId = result.getJSONObject(0).getString("tbId");
- // System.out.println("根据钉钉userid匹配的TBuserId:" + tbId);
- // }
- //
- // //宜搭接口调用
- // public static com.aliyun.dingtalkyida_1_0.Client createClient2() throws Exception {
- // com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config();
- // config.protocol = "https";
- // config.regionId = "central";
- // return new com.aliyun.dingtalkyida_1_0.Client(config);
- // }
- //
- // //查询宜搭中是否有该任务的工时
- // @Test
- // public void getYida(){
- //
- //// {"textField_lqn3tjjv":"2024-01-22T00:00:00.000Z","textField_losayxi8":"2024-01","textField_los8y15p":"061141054827422143","textField_lp8ihks3":"65ba02f66f5ee01eee0cf59b"}
- //
- // //{"textField_lqn3tjjv":"2024-03-15T00:00:00.000Z","textField_losayxi8":"2024-03",
- // // "textField_los8y15p":"010447236935176207","textField_lp8ihks3":"65befa3e8b441c8a0e5df178"}
- //
- // String sjtjyf = "2024-04";
- // String userid = "085953146222434489";
- // String tbrwid = "656071b6f06c9997edf0f984";
- // String rwgsssrq = "2024-04-30T00:00:00.000Z";
- // String panduan = "判断实际工时是否存在";
- //
- // //封装根据当前年份作为查询条件
- // Map mapAll = new HashMap();
- //// //查询实际统计月份
- //// mapAll.put("textField_losayxi8",sjtjyf);
- //// //人员userid
- //// mapAll.put("textField_los8y15p",userid);
- //// //TB任务id
- //// mapAll.put("textField_lp8ihks3",tbrwid);
- //// //任务工时所属日期
- //// mapAll.put("textField_lqn3tjjv",rwgsssrq);
- //
- // if (panduan.equals("实际工时")){
- // //查询实际统计月份
- // mapAll.put("textField_losayxi8",sjtjyf);
- // //人员userid
- // mapAll.put("textField_los8y15p",userid);
- // //TB任务id
- // mapAll.put("textField_lp8ihks3",tbrwid);
- // //任务工时所属日期
- // mapAll.put("textField_lqn3tjjv",rwgsssrq);
- // }else {
- // //查询实际统计月份
- // mapAll.put("textField_losayxi8",sjtjyf);
- // //人员userid
- // mapAll.put("textField_los8y15p",userid);
- // //TB任务id
- // mapAll.put("textField_lp8ihks3",tbrwid);
- // //任务工时所属日期
- // mapAll.put("textField_lqn3tjjv",rwgsssrq);
- // //工时类型
- // mapAll.put("textField_lrq4uku2","实际工时");
- // }
- //
- // String mapAllStr = JSON.toJSONString(mapAll);
- // System.out.println("封装查询宜搭中是否有该任务工时的字段参数:" + mapAllStr);
- //
- // JSONObject jsonObject = null;
- // JSONArray data = null;
- //
- // int size = 100;
- // int page = 1;
- //
- // //【环世架构】
- // try {
- // com.aliyun.dingtalkyida_1_0.Client client = createClient();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDatasHeaders searchFormDatasHeaders = new com.aliyun.dingtalkyida_1_0.models.SearchFormDatasHeaders();
- // searchFormDatasHeaders.xAcsDingtalkAccessToken = accessTokenService.getAccessToken();
- // com.aliyun.dingtalkyida_1_0.models.SearchFormDatasRequest searchFormDatasRequest = new com.aliyun.dingtalkyida_1_0.models.SearchFormDatasRequest()
- // .setSystemToken("J0A6698165EFMED0AHIG76FW7C6Q3ON1PG5OL482")
- // .setSearchFieldJson(mapAllStr)
- // .setCurrentPage(page)
- // .setPageSize(size)
- // .setFormUuid("FORM-BH766Y61W4CFWBS0869YFBF8COTE2QEHIH5OLM")
- // .setUserId("yida_pub_account")
- // .setAppType("APP_QHPV3T4ZU2Y88Q4U0UDA");
- //
- // SearchFormDatasResponse searchFormDatasResponse = client.searchFormDatasWithOptions(searchFormDatasRequest, searchFormDatasHeaders, new RuntimeOptions());
- //// System.out.println(JSON.toJSONString(searchFormDatasResponse.getBody()));
- // String s = JSON.toJSONString(searchFormDatasResponse.getBody());
- // jsonObject = JSON.parseObject(s);
- //// System.out.println("钉钉宜搭数据高级条件查询【宜搭工时统计表】接口object对象:" + jsonObject);
- //
- // data = jsonObject.getJSONArray("data");
- // System.out.println("返回的宜搭data:" + data);
- // } catch (TeaException err) {
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // } catch (Exception _err) {
- // TeaException err = new TeaException(_err.getMessage(), _err);
- // if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
- // // err 中含有 code 和 message 属性,可帮助开发定位问题
- // }
- //
- // }
- //
- // String flag = null;
- // if (data == null || data.isEmpty()) {
- // System.out.println("查询【宜搭工时统计表】返回数据为空!");
- // flag = "不存在";
- // } else {
- // flag = "已存在";
- // }
- // System.out.println("查询返回结果标识:" + flag);
- //
- //// return "";
- // }
- //
- //
- // public static final Long EXPIRES_IN = 1 * 3600 * 1000L;
- // public static final String TOKEN_APPID = "_appId";
- //
- // public static String appId = "65e56669046a09f810102606";
- // public static String appSecret = "tWxECRxFHG8SYnBxPNz6gyDRCAew7CjR";
- // //获取access_token的方法(TB应用)【测试】
- // @Test
- // public void getAppToken() {
- // if (org.springframework.util.StringUtils.isEmpty(appId) || org.springframework.util.StringUtils.isEmpty(appSecret)) {
- //// return null;
- // }
- //
- // Algorithm algorithm = Algorithm.HMAC256(appSecret);
- // long timestamp = System.currentTimeMillis();
- // Date issuedAt = new Date(timestamp);
- // Date expiresAt = new Date(timestamp + EXPIRES_IN);
- //
- //// return JWT.create()
- //// .withClaim(TOKEN_APPID, appId)
- //// .withIssuedAt(issuedAt)
- //// .withExpiresAt(expiresAt)
- //// .sign(algorithm);
- //
- // String sign = JWT.create()
- // .withClaim(TOKEN_APPID, appId)
- // .withIssuedAt(issuedAt)
- // .withExpiresAt(expiresAt)
- // .sign(algorithm);
- // System.out.println("TB应用的AccessToken:" + sign);
- //
- //// return sign;
- //
- // }
- //}
|