Example #1
0
    def is_record_today(self, rtime=1):
        last_record = self.fetch_last_record()

        if last_record["createTime"][0:10] == util.get_today_time():

            if rtime == 1:
                return True
            elif (rtime == 2) & (self.last_record["temperatureTwo"] != ""):
                return True
            elif (rtime == 3) & (self.last_record["temperatureThree"] != ""):
                return True
        else:
            return False
Example #2
0
    def first_record(
        self,
        mode="last",
        rtimes=1,
        temperature=36.1,
        temperatureTwo=36.2,
        temperatureThree=36.3,
    ):
        """
        the 'normal' will not record the temperatureTwo and temperatureThree values from last record
        and you can use the 'manual' for use your values, 'random' use random values
        """

        # get the last record info
        last_record = self.fetch_last_record()
        
        """
        # From: http//:<host>/web/#/healthForm Date: 2021-02-11 17:45:00
        mobile: '',
        age:'',
        sex:'',
        nativePlaceProvince:'',
        nativePlaceCity:'',
        nativePlaceDistrict:'',
        nativePlaceAddress:'',
        localAddress:'',

        currentProvince: '',//目前所在地省
        currentCity: '',//目前所在地市
        currentDistrict:null,//目前所在地区
        currentLocation: '',//目前所在地
        //
        requestFlag === 1,今日已提交,较昨日无变化回显时,获取最新数据
        if(res.data.currentDistrict){
        this.formData.currentLocation=areaJson.province_list[res.data.currentProvince]+'-'+areaJson.city_list[res.data.currentCity]+'-'+areaJson.county_list[res.data.currentDistrict];
        }else{
        this.formData.currentLocation=areaJson.province_list[res.data.currentProvince]+'-'+areaJson.city_list[res.data.currentCity];
        //回显信息是否是海外
        this.isSelectOverseas=(res.data.currentProvince==='900000');
        //
        currentAddress: '',//目前所在地详细地址

        villageIsCase:'0',//所在小区或者村是否有确诊病例
        caseAddress:'',//病例地址
        peerIsCase:'0',//同住人是否有确诊病例
        peerAddress:'',//共同居主人地址

        isInTeamCity: '',
        temperatureNormal: '0',
        temperature: '',
        selfHealthy: '0',
        selfHealthyInfo:'',
        selfHealthyTime:null,
        friendHealthy: '0',
        isolation: '0',

        currentStatus:'1000705',//当前所属状态
        diagnosisTime:null,//选择已治愈时确诊时间
        treatmentHospitalAddress:'',//选择已治愈时治疗医院地址
        cureTime:null,//选择已治愈时治愈时间

        travelPatient:'1000803',//疫情旅行史
        goHuBeiCity:'',//去过的湖北城市
        goHuBeiTime:null,//去湖北城市时间

        contactPatient: '1000904',//接触情况
        contactTime:null,//接触时间
        contactProvince: '',//接触地点省
        contactCity: '',//接触地点市
        contactDistrict:'',//接触地点区
        contactLocation:'',//接触地点所在地
        contactAddress:'',//接触地点所在地详细地址

        isAbroad:'',//是否去过国外
        abroadInfo:'',//去过的国外地区详细信息

        seekMedical: '0',
        seekMedicalInfo: '',
        exceptionalCase: '0',
        exceptionalCaseInfo: '',
        isTrip: '0',
        """

        data = {
            "mobile": self.info["mobile"],
            "nativePlaceProvince": self.info["nativePlaceProvince"],
            "nativePlaceCity": self.info["nativePlaceCity"],
            "nativePlaceDistrict": self.info["nativePlaceDistrict"],
            "nativePlaceAddress": self.info["nativePlaceAddress"],
            "localAddress": self.info["localAddress"],
            "currentProvince": last_record["currentProvince"],
            "currentCity": last_record["currentCity"],
            "currentDistrict": last_record["currentDistrict"],
            "currentLocation": "",
            "currentAddress": last_record["currentAddress"],
            "villageIsCase": last_record["villageIsCase"],
            "caseAddress": last_record["caseAddress"],
            "peerIsCase": last_record["peerIsCase"],
            "peerAddress": last_record["peerAddress"],
            "isInTeamCity": last_record["isInTeamCity"],
            "temperatureNormal": last_record["temperatureNormal"],
            "temperature": last_record["temperature"],
            "selfHealthy": last_record["selfHealthy"],
            "selfHealthyInfo": last_record["selfHealthyInfo"],
            "selfHealthyTime": last_record["selfHealthyTime"],
            "friendHealthy": last_record["friendHealthy"],
            "isolation": last_record["isolation"],
            "currentStatus": last_record["currentStatus"],
            "diagnosisTime": last_record["diagnosisTime"],
            "treatmentHospitalAddress": last_record["treatmentHospitalAddress"],
            "cureTime": last_record["cureTime"],
            "travelPatient": last_record["travelPatient"],
            "goHuBeiCity": last_record["goHuBeiCity"],
            "goHuBeiTime": last_record["goHuBeiTime"],
            "contactPatient": last_record["contactPatient"],
            "contactTime": last_record["contactTime"],
            "contactProvince": last_record["contactProvince"],
            "contactCity": last_record["contactCity"],
            "contactDistrict": last_record["contactDistrict"],
            "contactLocation": "",
            "contactAddress": last_record["contactAddress"],
            "isAbroad": last_record["isAbroad"],
            "abroadInfo": last_record["abroadInfo"],
            "seekMedical": last_record["seekMedical"],
            "seekMedicalInfo": last_record["seekMedicalInfo"],
            "exceptionalCase": last_record["exceptionalCase"],
            "exceptionalCaseInfo": last_record["exceptionalCaseInfo"],
            "isTrip": last_record["isAbroad"],  # temporary use
            "userId": self.info["userId"],
            "teamId": self.info["teamId"],
            "healthyStatus": last_record["healthyStatus"],
            "temperatureTwo": "",
            "temperatureThree": "",
            "reportDate": util.get_today_time(),
        }

        if mode == "last":
            if rtimes >= 2:
                data["temperatureTwo"] = last_record["temperatureTwo"]
            if rtimes == 3:
                data["temperatureThree"] = last_record["temperatureThree"]
        elif mode == "random":
            data["temperature"] = str(util.random_temp())
            if rtimes >= 2:
                data["temperatureTwo"] = str(util.random_temp())
            if rtimes == 3:
                data["temperatureThree"] = str(util.random_temp())
        elif mode == "manual":
            data["temperature"] = str(temperature)
            if rtimes >= 2:
                data["temperatureTwo"] = str(temperatureTwo)
            if rtimes == 3:
                data["temperatureThree"] = str(temperatureThree)
        else:
            print("Error: Incorrect report mode!")
            return None

        # check temperature
        if rtimes >= 2 and data["temperatureTwo"] == "":
            print("Warning: Incorrect temperatureTwo!")
        if rtimes == 3 and data["temperatureThree"] == "":
            print("Warning: Incorrect temperatureThree!")

        try:
            response = requests.post(
                url=endpoints["firstRecord"],
                data=json.dumps(data),
                headers=self.__headers, timeout=5,
            )
        except:
            return None

        res = response.json()

        res["data"] = {"temperature": data["temperature"]}
        if rtimes >= 2:
            res["data"]["temperatureTwo"] = data["temperatureTwo"]
        if rtimes == 3:
            res["data"]["temperatureThree"] = data["temperatureThree"]

        return res