枚舉類示例

package net.cnki.editor.costcenter.pojo.enums;import lombok.Getter;import java.util.Arrays;/*** 費用枚舉接口*/
public interface CosttypeEnumInterface {/*** 費用類型和費用信息-> 費用性質, 支付人 , 收取人, 費用信息狀態*/@Getterenum CosttypePayerAndReceiveEnum implements CosttypeEnumInterface {//當前類 ; sql語句//1 審稿費;作者->編輯部 2 版面費;作者->編輯部 3 作者稿費;編輯部->作者 4 專家審稿費;編輯部->審稿專家 5 編輯稿費;編輯部->編輯REVIEWERS_FEE((short) 1, "審稿費", "作者", "編輯部", "待通知交費", "待作者交費", "待確認到款", "待開票完成", "己完成"),PAPER_FREE((short) 2, "版面費", "作者", "編輯部", "待通知交費", "待作者交費", "待確認到款", "待開票完成", "己完成"),AUTHOR_FREE((short) 3, "作者稿費", "編輯部", "作者", "待通知作者", "待作者確認信息", "信息已確認待支付", "作者稿費已支付", ""),EXPERT_FREE((short) 4, "專家審稿費", "編輯部", "審稿專家", "編輯部未登記", "編輯部已登記", "", "", ""),COPYREADER_FREE((short) 5, "編輯稿費", "編輯部", "編輯", "編輯部未登記", "編輯部已登記", "", "", ""),NULL(null, "", "", "", "", "", "", "", "");private final Short type;private final String name;//支付人private final String payerMan;//收取人private final String receiveMan;//費用信息狀態private final String status0;private final String status1;private final String status2;private final String status3;private final String status4;CosttypePayerAndReceiveEnum(Short type, String name, String payerMan, String receiveMan, String status0, String status1, String status2, String status3, String status4) {this.type = type;this.name = name;this.payerMan = payerMan;this.receiveMan = receiveMan;this.status0 = status0;this.status1 = status1;this.status2 = status2;this.status3 = status3;this.status4 = status4;}/*** 獲取 費用性質** @param type* @return*/public static CosttypePayerAndReceiveEnum getValue(short type) {CosttypePayerAndReceiveEnum costtypePayerAndReceiveEnum = Arrays.stream(CosttypePayerAndReceiveEnum.values()).filter(x -> x.getType() == type).findAny().orElse(CosttypePayerAndReceiveEnum.NULL);return costtypePayerAndReceiveEnum;}/*** 根據 費用性質 獲取 當前費用信息 的 信息狀態** @param typeCode   費用性質* @param statusCode 費用性質* @return*/public static String getStatusName(short typeCode, int statusCode) {CosttypePayerAndReceiveEnum costtypePayerAndReceiveEnum = Arrays.stream(CosttypePayerAndReceiveEnum.values()).filter(x -> x.getType() == typeCode).findAny().orElse(CosttypePayerAndReceiveEnum.NULL);switch (statusCode) {case 0:return costtypePayerAndReceiveEnum.getStatus0();case 1:return costtypePayerAndReceiveEnum.getStatus1();case 2:return costtypePayerAndReceiveEnum.getStatus2();case 3:return costtypePayerAndReceiveEnum.getStatus3();case 4:return costtypePayerAndReceiveEnum.getStatus4();default:return "";}}}/*** 結算方式: 結算方式 0 第三方轉賬 1 郵局匯款 2銀行匯款 3現金支付 4內部轉賬 5其他*/@Getterenum PayMethod implements CosttypeEnumInterface {METHOD("第三方轉賬", "郵局匯款", "銀行匯款", "現金支付", "內部轉賬", "其他");// 結算方式 0private final String payMethod0;// 結算方式 1private final String payMethod1;private final String payMethod2;private final String payMethod3;private final String payMethod4;private final String payMethod5;PayMethod(String payMethod0, String payMethod1, String payMethod2, String payMethod3, String payMethod4, String payMethod5) {this.payMethod0 = payMethod0;this.payMethod1 = payMethod1;this.payMethod2 = payMethod2;this.payMethod3 = payMethod3;this.payMethod4 = payMethod4;this.payMethod5 = payMethod5;}public static String getMethod(String payMethodCode) {switch (payMethodCode) {case "0":return PayMethod.METHOD.getPayMethod0();case "1":return PayMethod.METHOD.getPayMethod1();case "2":return PayMethod.METHOD.getPayMethod2();case "3":return PayMethod.METHOD.getPayMethod3();case "4":return PayMethod.METHOD.getPayMethod4();case "5":return PayMethod.METHOD.getPayMethod5();default:return "";}}}/*** 發票類型 0 普票 1 專票*/@Getterenum InvoiceType implements CosttypeEnumInterface {INVOICETYPE("普票", "專票");//分票類型0private final String invoiceType0;//分票類型1private final String invoiceType1;InvoiceType(String invoiceType0, String invoiceType1) {this.invoiceType0 = invoiceType0;this.invoiceType1 = invoiceType1;}public static String getInvoiceType(String invoiceTypeCode) {switch (invoiceTypeCode) {case "0":return InvoiceType.INVOICETYPE.getInvoiceType0();case "1":return InvoiceType.INVOICETYPE.getInvoiceType1();default:return "";}}}}

測試類

        vo.setPayMethod(CosttypeEnumInterface.PayMethod.getMethod(StringUtils.defaultString(vo.getPayMethod())));vo.setInvoiceType(CosttypeEnumInterface.InvoiceType.getInvoiceType(StringUtils.defaultString(vo.getInvoiceType())));vo.setStatus(CosttypeEnumInterface.CosttypePayerAndReceiveEnum.getStatusName(Short.parseShort(vo.getCosttype()), Integer.parseInt(vo.getStatus())));

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/39342.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/39342.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/39342.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用PHP實現Web爬蟲

web爬蟲是一種自動化工具,可以瀏覽互聯網上的網頁,收集信息并存儲在一個數據庫中。在今天的大數據時代,web爬蟲越來越重要,因為它可以查找大量信息并進行數據分析。在本文中,我們將學習如何使用php編寫web爬蟲&#xf…

Radxa 學習摘錄

文章目錄 1、參考資料2、硬件知識CIF 和 ISP 3、shell4、交叉編譯工具鏈5、問題6、DTS7、驅動 1、參考資料 技術論壇(推薦) 官方資料下載 wiki資料 u-boot 文檔 u-boot 源碼 內核文檔 內核源碼 原理圖 radxa-repo radxa-build radxa-pkg radxa-doc…

尋找最適合你的交易風格

與Eagle Trader一起,您將擁有一位堅不可摧的合作伙伴,為您的交易之路增添堅實信心,并重塑交易體驗的每一個細節。我們量身定制的交易環境,更能讓您精準捕捉并駕馭符合您獨特交易風格的卓越條件,讓交易之旅更加自由暢快…

Python容器 之 字典--定義

1.字典的介紹 1, 字典 dict, 使用 {} 表示 2, 字典是由鍵(key)值(value)對組成的, key: value 3, 一個鍵值對是一組數據, 多個鍵值對之間使用 逗號隔開 4, 在一個字典中, 字典的鍵 是不能重復的,如果重復原數據會被覆蓋 5, 字典中的鍵 主要使用 字符串類型, 可以是…

Mac可以卸載掉系統自帶的軟件嗎 Mac第三方軟件無法卸載是為什么

在使用Mac電腦時,有時候我們會發現系統預裝的一些應用并不常用或者不符合個人需求,想要將它們卸載掉。然而,對于系統自帶的軟件,卸載并不簡單,需要謹慎對待以免影響系統穩定性和功能正常運行。下面我們來看看Mac可以卸…

Firefox 編譯指南2024 Windows10-使用Git 管理您的Firefox(五)

1. 引言 在現代軟件開發中,版本控制系統(VCS)是不可或缺的工具,它不僅幫助開發者有效管理代碼的變化,還支持團隊協作與項目管理。Mercurial 是一個高效且易用的分布式版本控制系統,其設計目標是簡潔、快速…

Linux CentOS Python 離線安裝 pip 使用.whl文件離線安裝

1、系統版本 cat /etc/redhat-release #查看系統版本命令 輸出:CentOS Linux release 7.9.2009 (Core) 2、在pip 官方網站 下載.whl文件:pip-24.1.1-py3-none-any.whl 3、安裝 python -m pip install pip-24.1.1-py3-none-any.whl 3、安裝之后運行…

Windows使用-設置虛擬內存及注意事項

文章目錄 前言一、設置虛擬內存打開“系統屬性”對話框在“系統屬性”對話框設置虛擬內存二、虛擬內存設置引發問題C盤空間不足桌面引用程序無法正常使用總結前言 虛擬內存是操作系統為應用程序提供的一種內存管理機制,最早是用于解決物理內存不足而影響操作系統運行效率問題…

【antd + vue】表格行合并,同時使用插槽

一、需求說明 表格中,如果一個學校有多個考試科目,則分行展示,其余列,則合并為一行展示,如圖所示 二、需求分析 1、表格行合并 相當于有4行,其中1、2行是同一個學校包含不同考試科目及對應人次的數據&am…

判斷磁盤是SSD或HDD盤

1. 判斷磁盤是SSD或HDD盤 1、沒有使用raid方案 lsblk -d -o name,rota命令,0表示SSD,1表示HDD # lsblk -d -o name,rota NAME ROTA sda 0 sdb 1 sdc 12、使用raid方案 下載工具 wget https://raw.githubusercontent.com/eLvErDe/hwraid…

Java_多線程:實現多線程

Java中實現多線程的常用方式: 繼承Thread類實現Runnable接口實現Callable接口(JDK>1.5)線程池方式創建 實現Runnable接口與Callable接口的區別 Callable規定(重寫)的方法是call(),Runnable規定(重寫)的…

Java的全局異常處理代碼

第一步:先寫一個異常管理類: package com.example.firefighting.exceptions;import com.example.firefighting.utils.Result; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.RestControllerA…

手機數據恢復篇:如何在恢復出廠設置后的 iPhone 恢復短信

您可能會認為,在恢復出廠設置iPhone后恢復短信時,一切都會丟失,但是仍然有一些方法可以檢索您的重要對話。截至 2024 年,數據恢復技術的進步使得從備份甚至直接從設備內存中搶救消息變得更加容易。無論是通過 iCloud、iTunes 還是…

LeetCode Hard|124.二叉樹中的最大路徑和

力扣題目鏈接 題目解讀: 二叉樹路徑的定義即從1.任意節點出發,到達任意節點;2.該路徑至少包含一個節點,且不一定經過跟節點;3.求所有可能路徑和的最大值。 也就是說路徑途徑一個節點只能選擇來去兩個方向 考慮一個二叉…

mongoose的個性化提取(字段篩選,數據據排序,數據截斷)

1.字段篩選 let BookModel mongoose.model(books,BookSchema);BookModel.find().select({name:1,author:1}).then((err,data) > {//回調返回數據if(err){console.log(err);return;}console.log(data);})//值為1表示顯示數據,為0表示不顯示數據 數據排序 BookMod…

2025年U.S.News世界大學排名前200榜單

近日,U.S. News公布了2025全球最佳院校排名,作為公認的四大世界高校排行榜,該排名主要圍繞著學術聲譽、學術成果等,因此備受訪問學者、聯合培養博士生及博士后申請者們青睞,知識人網小編特作介紹并發布排名前200的榜單…

使用Go語言實現高效的數據挖掘

隨著數據量的不斷增加以及各種數據類型的不斷涌現,數據挖掘技術變得越來越重要。在現代數據科學領域中,使用大量數據進行機器學習和其他挖掘任務已經成為常態。然而,在完成這些任務時,使用的編程語言對效率和結果都有著重要的影響…

我與C++的愛戀:list的使用

? ? 🔥個人主頁:guoguoqiang. 🔥專欄:我與C的愛戀 一、list介紹 1.list是可以在常數范圍內在任意位置進行插入和刪除的序列式容器,并且該容器可以前后雙向迭代 2.list的底層是雙向鏈表結構,雙向鏈表中…

華為OCR 騰訊OCR 百度OCR 三家各分秋色 第一當屬華為

當提及華為OCR的應用場景時,這些是常見的使用案例: 金融行業:在銀行和金融機構中,華為OCR技術廣泛用于身份證件識別、銀行卡識別和票據識別。這些功能可以用于客戶身份驗證、快速開戶以及自動化的支付處理。 政府服務&#xff1a…

淺析Estimator、model_fn與EstimatorSpec

參考閱讀:https://zhuanlan.zhihu.com/p/74857888 文章目錄 綜合對比Estimatormodel_fnEstimatorSpec關系總結 Estimator主要功能構造函數參數示例用法小結 model_fnEstimatorSpec字段解釋解釋代碼用途 綜合對比 Estimator、model_fn 和 EstimatorSpec 是 TensorF…