如何使用swift 4

时间:2018-09-26 07:37:26

标签: swift firebase date firebase-realtime-database milliseconds

在这里,我想将时间戳转换为毫秒,但无法转换。请帮忙。

2 个答案:

答案 0 :(得分:1)

最后,我找到了答案

步骤1: 添加 {{3}} Pod依赖项

步骤2: 创建类型为 TransformType FirebaseDateTransform 类,并覆盖函数 transformFromJSON(...)

Bar

第3步: date转换为毫秒的扩展名。

@Entity 
public class Book implements java.io.Serializable {

private static final long serialVersionUID = 1L;

@TableGenerator(name = "BOOK_GEN", allocationSize = 1)
@Id
@GeneratedValue(generator = "BOOK_GEN")
private int id;

private String book_name;
private String ISBN;
private String publish_year;
private String publisher;
private Boolean status;

@OneToMany(mappedBy="book" ,cascade=CascadeType.ALL , fetch = FetchType.LAZY)
private Collection<Client>  authors =new ArrayList<Client>();

public int getId() {
    return id;
}

public void setId(int id) {
    this.id = id;
}

public String getBook_name() {
    return book_name;
}

public void setBook_name(String book_name) {
    this.book_name = book_name;
}

public String getISBN() {
    return ISBN;
}

public void setISBN(String iSBN) {
    ISBN = iSBN;
}

public String getPublish_year() {
    return publish_year;
}

public void setPublish_year(String publish_year) {
    this.publish_year = publish_year;
}

public String getPublisher() {
    return publisher;
}

public void setPublisher(String publisher) {
    this.publisher = publisher;
}

public Boolean getStatus() {
    return status;
}

public void setStatus(Boolean status) {
    this.status = status;
}

public Collection<Author> getAuthors() {
    return authors;
}

public void setClients(Collection<Client> clients) {
    this.clients = clients;
}}




@Entity 
public class Client implements java.io.Serializable {

    private static final long serialVersionUID = 1L;

    @TableGenerator(name = "CLT_GEN", allocationSize = 1)
    @Id
    @GeneratedValue(generator = "CLT_GEN")
    private int id;

    private Boolean bookedstatus;
    private Boolean bookstatus;

    @ManyToOne(fetch = FetchType.LAZY)
    private Book book;

    private String name ;
    private String surname;



    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public Book getBook() {
        return book;
    }

    public void setBook(Book book) {
        this.book = book;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSurname() {
        return surname;
    }

    public void setSurname(String surname) {
        this.surname = surname;
    }

    public Boolean getBookedstatus() {
        return bookedstatus;
    }

    public void setBookedstatus(Boolean bookedstatus) {
        this.bookedstatus = bookedstatus;
    }

    public Boolean getBookstatus() {
        return bookstatus;
    }

    public void setBookstatus(Boolean bookstatus) {
        this.bookstatus = bookstatus;
    }
}

答案 1 :(得分:0)

扩展日期类如下,以从时间戳转换为日期:

extension Date {
    var millisecondsSince1970:Int {
        return Int((self.timeIntervalSince1970 * 1000.0).rounded())
    }

    init(milliseconds:Int) {
        self = Date(timeIntervalSince1970: TimeInterval(milliseconds / 1000))
    }
}

从Firebase获取后,您可以将时间戳转换为日期

let date = Date.init(milliseconds:object.startDate!)