rk
昨天 4ee00850f197d769481f73acb8ed79ab1c75b84d
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/JiandaoyunCloudController.java
@@ -22,6 +22,7 @@
import com.doumee.dao.web.reqeust.VisitRecordDTO;
import com.doumee.dao.web.response.VisitRecordVO;
import com.doumee.service.business.CarUseBookService;
import com.doumee.service.business.CarsService;
import com.doumee.service.business.third.model.ApiResponse;
import com.doumee.service.business.third.model.PageData;
import com.doumee.service.business.third.model.PageWrap;
@@ -68,12 +69,23 @@
    @Autowired
    private CarUseBookService carUseBookService;
    @Autowired
    private CarsService carsService;
    public  static final String SECRET ="yKSKuO0LoFf06jWGrwwuGudK";
    public  static final String LOCAl_SECRET ="tSoMiqC3GY6tItXY48tSTwY6";
    public static final String LLCAL_CARINFO_SECRET = "4J1GMIAG3m6O2jkkaxTu5EOe";
    @LoginNoRequired
    @ApiOperation("简道云推送用车申请")
    @PostMapping("/pushCarApply")
    public void pushCarApply (HttpServletRequest request, HttpServletResponse response) {
        log.error("简道云=========getRequestURI:"+request.getRequestURI());
        log.error("简道云=========getRequestURL:"+request.getRequestURL());
        log.error("【简道云】 用车申请 =========getRequestURI:"+request.getRequestURI());
        log.error("【简道云】 用车申请 =========getRequestURL:"+request.getRequestURL());
        //新建{"data":{"_id":"6912f6d47b4a80933348df31","addr":"豆米科技","appId":"6909d0fbdb93b068192dc4a9","car_category":"专卖管理","car_group":"当涂县局车队","car_no":"皖EU2866","car_statue":"出车","company":{"_id":"6909b792fa9388e2242f497d","dept_no":483166139,"name":"开发部","type":0},"createTime":"2025-11-11T08:41:56.152Z","create_date":"2025-11-10T16:00:00.000Z","creator":{"_id":"6909b792324dc197821895e7","name":"任康","status":1,"type":0,"username":"1568490244651036"},"deleteTime":null,"deleter":null,"driver":{"_id":"6909b792324dc197821895e5","name":"郭际文武","status":1,"type":0,"username":"0115666322451143077815"},"driver_status":"空闲","end_date":"2025-11-11T09:41:00.000Z","entryId":"690ab9085ebd91d2308e595b","flowState":0,"formName":"派车申请","holiday":"否","key_back_date":null,"key_info":"待领取","key_use_date":null,"no":"20251111100004","reason":"测试申请","scope":"市内","start_date":"2025-11-11T08:41:00.000Z","updateTime":"2025-11-11T08:41:56.155Z","updater":{"_id":"6909b792324dc197821895e7","name":"任康","status":1,"type":0,"username":"1568490244651036"},"users":[{"_id":"6909b792324dc197821895e5","name":"郭际文武","status":1,"type":0,"username":"0115666322451143077815"}]},"op":"data_create","opTime":1762850516152}
        //修改{"data":{"_id":"6912f6d47b4a80933348df31","addr":"豆米科技","appId":"6909d0fbdb93b068192dc4a9","car_category":"专卖管理","car_group":"当涂县局车队","car_no":"皖EU2866","car_statue":"出车","company":{"_id":"6909b792fa9388e2242f497d","dept_no":483166139,"name":"开发部","type":0},"createTime":"2025-11-11T08:41:56.152Z","create_date":"2025-11-10T16:00:00.000Z","creator":{"_id":"6909b792324dc197821895e7","name":"任康","status":1,"type":0,"username":"1568490244651036"},"deleteTime":null,"deleter":null,"driver":{"_id":"6909b792324dc197821895e5","name":"郭际文武","status":1,"type":0,"username":"0115666322451143077815"},"driver_status":"空闲","end_date":"2025-11-11T09:41:00.000Z","entryId":"690ab9085ebd91d2308e595b","flowState":0,"formName":"派车申请","holiday":"否","key_back_date":null,"key_info":"待领取","key_use_date":null,"no":"20251111100004","reason":"测试申请","scope":"市内","start_date":"2025-11-11T08:41:00.000Z","updateTime":"2025-11-11T08:43:06.436Z","updater":{"_id":"6909b792324dc197821895e7","name":"任康","status":1,"type":0,"username":"1568490244651036"},"users":[{"_id":"6909b792324dc197821895e5","name":"郭际文武","status":1,"type":0,"username":"0115666322451143077815"}]},"op":"data_update","opTime":1762850586436}
        //修改{"data":{"_id":"6912f6d47b4a80933348df31","addr":"豆米科技","appId":"6909d0fbdb93b068192dc4a9","car_category":"专卖管理","car_group":"当涂县局车队","car_no":"皖EU2866","car_statue":"出车","company":{"_id":"6909b792fa9388e2242f497d","dept_no":483166139,"name":"开发部","type":0},"createTime":"2025-11-11T08:41:56.152Z","create_date":"2025-11-10T16:00:00.000Z","creator":{"_id":"6909b792324dc197821895e7","name":"任康","status":1,"type":0,"username":"1568490244651036"},"deleteTime":null,"deleter":null,"driver":{"_id":"6909b792324dc197821895e5","name":"郭际文武","status":1,"type":0,"username":"0115666322451143077815"},"driver_status":"空闲","end_date":"2025-11-11T09:41:00.000Z","entryId":"690ab9085ebd91d2308e595b","flowState":1,"formName":"派车申请","holiday":"否","key_back_date":null,"key_info":"待领取","key_use_date":null,"no":"20251111100004","reason":"测试申请","scope":"市内","start_date":"2025-11-11T08:41:00.000Z","updateTime":"2025-11-11T08:45:01.231Z","updater":{"_id":"6909b792324dc197821895e4","name":"江萍","status":1,"type":0,"username":"0458340612772735"},"users":[{"_id":"6909b792324dc197821895e5","name":"郭际文武","status":1,"type":0,"username":"0115666322451143077815"}]},"op":"data_update","opTime":1762850701231}
        try {
            String jdy = request.getHeader("x-jdy-signature");
            StringBuilder json = new StringBuilder();
@@ -89,17 +101,64 @@
            String nonce = parameterMap.get("nonce");
            String timestamp = parameterMap.get("timestamp");
            String signature = getSignature(nonce, payload, LOCAl_SECRET, timestamp);
            log.error("简道云=========nonce:"+nonce);
            log.error("简道云=========timestamp:"+timestamp);
            log.error("简道云=========payload:"+payload);
            log.error("简道云=========签名:"+jdy);
            log.error("简道云=========签名(正确):"+signature);
            log.error("【简道云】 用车申请 =========nonce:"+nonce);
            log.error("【简道云】 用车申请 =========timestamp:"+timestamp);
            log.error("【简道云】 用车申请 =========payload:"+payload);
            log.error("【简道云】 用车申请 =========签名:"+jdy);
            log.error("【简道云】 用车申请 =========签名(正确):"+signature);
            if (!signature.equals(jdy)) {
                response.setStatus(401);
                response.getWriter().write("fail");
                response.getWriter().close();;
                return ;
            }
            carUseBookService.jdyPushCarUseBook(payload);
            response.setStatus(200);
            response.getWriter().write("success");
            response.getWriter().close();
        }catch (Exception e){
            e.printStackTrace();
            log.error("【简道云】 用车申请 =========异常:"+e.getMessage());
        }
    }
    @LoginNoRequired
    @ApiOperation("简道云推送车辆信息")
    @PostMapping("/pushCarInfo")
    public void pushCarInfo (HttpServletRequest request, HttpServletResponse response) {
        log.error("【简道云】 车辆信息 =========getRequestURI:"+request.getRequestURI());
        log.error("【简道云】 车辆信息=========getRequestURL:"+request.getRequestURL());
        //新建{"data":{"_id":"6912f6d47b4a80933348df31","addr":"豆米科技","appId":"6909d0fbdb93b068192dc4a9","car_category":"专卖管理","car_group":"当涂县局车队","car_no":"皖EU2866","car_statue":"出车","company":{"_id":"6909b792fa9388e2242f497d","dept_no":483166139,"name":"开发部","type":0},"createTime":"2025-11-11T08:41:56.152Z","create_date":"2025-11-10T16:00:00.000Z","creator":{"_id":"6909b792324dc197821895e7","name":"任康","status":1,"type":0,"username":"1568490244651036"},"deleteTime":null,"deleter":null,"driver":{"_id":"6909b792324dc197821895e5","name":"郭际文武","status":1,"type":0,"username":"0115666322451143077815"},"driver_status":"空闲","end_date":"2025-11-11T09:41:00.000Z","entryId":"690ab9085ebd91d2308e595b","flowState":0,"formName":"派车申请","holiday":"否","key_back_date":null,"key_info":"待领取","key_use_date":null,"no":"20251111100004","reason":"测试申请","scope":"市内","start_date":"2025-11-11T08:41:00.000Z","updateTime":"2025-11-11T08:41:56.155Z","updater":{"_id":"6909b792324dc197821895e7","name":"任康","status":1,"type":0,"username":"1568490244651036"},"users":[{"_id":"6909b792324dc197821895e5","name":"郭际文武","status":1,"type":0,"username":"0115666322451143077815"}]},"op":"data_create","opTime":1762850516152}
        //修改{"data":{"data":{"_id":"6909d2ac6bf3636d0dbcc953","_widget_1762251302690":"皖AFJ6557","_widget_1762251302691":"一般公务","_widget_1762251302692":"","_widget_1762251302693":"市局本级车队","_widget_1762251302694":{"_id":"6909b792324dc197821895e8","name":"李怀英","status":1,"type":0,"username":"045831294126209983"},"_widget_1762251302695":{"_id":"6909b792fa9388e2242f497d","dept_no":483166139,"name":"开发部","type":0},"_widget_1762251302696":"可用","_widget_1762251302697":null,"_widget_1762251302698":10000,"_widget_1762251302699":null,"_widget_1762251302700":null,"_widget_1762251302701":null,"_widget_1762251302702":null,"_widget_1762251302703":"否","appId":"6909d0fbdb93b068192dc4a9","createTime":"2025-11-04T10:17:17.015Z","creator":{"_id":"6909b792324dc197821895e8","name":"李怀英","status":1,"type":0,"username":"045831294126209983"},"deleteTime":null,"deleter":null,"entryId":"6909d226b9a675ac4224aa6d","formName":"车辆信息","updateTime":"2025-11-13T09:20:05.253Z","updater":{"_id":"6909b792324dc197821895e7","name":"任康","status":1,"type":0,"username":"1568490244651036"}},"op":"data_update","opTime":1763025605253}
        //修改{"data":{"_id":"6912f6d47b4a80933348df31","addr":"豆米科技","appId":"6909d0fbdb93b068192dc4a9","car_category":"专卖管理","car_group":"当涂县局车队","car_no":"皖EU2866","car_statue":"出车","company":{"_id":"6909b792fa9388e2242f497d","dept_no":483166139,"name":"开发部","type":0},"createTime":"2025-11-11T08:41:56.152Z","create_date":"2025-11-10T16:00:00.000Z","creator":{"_id":"6909b792324dc197821895e7","name":"任康","status":1,"type":0,"username":"1568490244651036"},"deleteTime":null,"deleter":null,"driver":{"_id":"6909b792324dc197821895e5","name":"郭际文武","status":1,"type":0,"username":"0115666322451143077815"},"driver_status":"空闲","end_date":"2025-11-11T09:41:00.000Z","entryId":"690ab9085ebd91d2308e595b","flowState":1,"formName":"派车申请","holiday":"否","key_back_date":null,"key_info":"待领取","key_use_date":null,"no":"20251111100004","reason":"测试申请","scope":"市内","start_date":"2025-11-11T08:41:00.000Z","updateTime":"2025-11-11T08:45:01.231Z","updater":{"_id":"6909b792324dc197821895e4","name":"江萍","status":1,"type":0,"username":"0458340612772735"},"users":[{"_id":"6909b792324dc197821895e5","name":"郭际文武","status":1,"type":0,"username":"0115666322451143077815"}]},"op":"data_update","opTime":1762850701231}
        try {
            String jdy = request.getHeader("x-jdy-signature");
            StringBuilder json = new StringBuilder();
            String line;
            BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream()));
            while ((line = reader.readLine()) != null) {
                json.append(line);
            }
//            String payload = IOUtils.toString(request.getInputStream(), "utf-8");
            String payload = json.toString();
            String uri = request.getRequestURI();
            Map<String, String> parameterMap = parseParameter(request.getQueryString());
            String nonce = parameterMap.get("nonce");
            String timestamp = parameterMap.get("timestamp");
            String signature = getSignature(nonce, payload, LLCAL_CARINFO_SECRET, timestamp);
            log.error("【简道云】 车辆信息=========nonce:"+nonce);
            log.error("【简道云】 车辆信息=========timestamp:"+timestamp);
            log.error("【简道云】 车辆信息=========payload:"+payload);
            log.error("【简道云】 车辆信息=========签名:"+jdy);
            log.error("【简道云】 车辆信息=========签名(正确):"+signature);
            if (!signature.equals(jdy)) {
                response.setStatus(401);
                response.getWriter().write("fail");
                response.getWriter().close();;
                return ;
            }
            carsService.jdyPushCarInfo(payload);
            response.setStatus(200);
            response.getWriter().write("success");
            response.getWriter().close();
@@ -107,8 +166,8 @@
            e.printStackTrace();
            log.error("简道云=========异常:"+e.getMessage());
        }
    }
    @ApiOperation("简道云提交钥匙借还信息")
    @PostMapping("/submitKeyRecord")
    public ApiResponse<JkCabinetLog> submitKeyRecord (HttpServletRequest request, HttpServletResponse response) {
@@ -118,9 +177,6 @@
        log.setMemberName("张三");
        return  ApiResponse.success(log);
    }
    public  static final String SECRET ="yKSKuO0LoFf06jWGrwwuGudK";
    public  static final String LOCAl_SECRET ="tSoMiqC3GY6tItXY48tSTwY6";
    private static String getSignature(String nonce, String payload, String secret, String timestamp) {
        return DigestUtils.sha1Hex(nonce + ":" + payload + ":" + secret + ":" + timestamp);
@@ -143,8 +199,8 @@
        object.put("create_date","20251104160000");
        object.put("start_date",System.currentTimeMillis() );
        object.put("end_date", System.currentTimeMillis() + 24*3600*1000);
        object.put("id","10000020251105");
        object.put("type",1);
        object.put("id","10000020251105");//
        object.put("type",1);//0=领用;1=归还
        String result = HttpsUtil.postJson(url,JSONObject.toJSONString(object));
        System.out.println(result);
    }