Jingdong Retail Open source: Through the configuration of automatic generation of the background (CMS) interface

Jingdong Retail Open source: Through the configuration of automatic generation of the background (CMS) interface

2022-09-05 0 1,772
Resource Number 38067 Last Updated 2025-02-24
¥ 0HKD Upgrade VIP
Download Now Matters needing attention
Can't download? Please contact customer service to submit a link error!
Value-added Service: Installation Guide Environment Configuration Secondary Development Template Modification Source Code Installation
This issue recommends an open source project by Jingdong retail team: CCMS, which can be automatically generated through the CMS interface of configuration.

Jingdong Retail Open source: Through the configuration of automatic generation of the background (CMS) interface插图

CCMS is a complete, universal and configurable scheme. The CMS interface is automatically generated by configuring it. CCMS abstracts the front-end pages of a content management system into a system that flows through several apis. Further, the request to the background API is divided into form submission, list display, query data and other types according to logical types. Through JSON data format to describe the API request interface information, input, input and a variety of common calibration and simple logic, dynamic rendering of front-end pages, and finally achieve zero development to build a content management system.

Characteristics of CCMS

  • Configuring and generating CMS Background management interface
  • Cover different background service application scenarios through step design
  • Cross-page data transfer, cross-component interaction
  • Support for introducing different component libraries

Working principle

Implement component-based front-end page configuration by proxy component property definition, data request, cross-component interaction, and state judgment.

Configuring the main module

It is divided into five modules (steps). At present, the module can combine 16 or more business scenarios.

  • Interface request (type:fetch) : Supports GET and POST requests and provides configurable request headers.

Usage :

1. (type:fetch) interface call

2. (type:fetch) + (type:table) Unconditional direct query

3. (type:form) + (type:fetch) Complete the form submission query

4. (type:skip) + (type:fetch) Complete the automatic query

5. (type:filter) + (type:fetch) Complete the filtering

APIs- Template default :

{
            "type": "fetch",
            "request": {
                "url": "url",
                "method": "GET"
            },
            "response": {
                "root": "result"
            },
            "condition": {
                "enable": true,
                "field": "code",
                "value": 0,
                "success": {
                   "type": "modal",
                    "content": {
                        "type": "static",
                        "content": "成功"
                    }
                },
                "fail": {
                    "type": "modal",
                    "content": {
                        "type": "field",
                        "field": "msg"
                    }
                }
            }
        }
  • type:input : Supports 4 categories: Form, Filter, Export *. Future covers 90% of form inputs. 20 form components.

Usage :

1. form submission can be completed by (type:form) + (type:fetch)

2. form query can be completed by (type:form) + (type:fetch) + (type:table) and display

APIs- Template default :

{
  "type": "form",
  "layout": "horizontal",
  "fields":[]
}

Form submission presentation :

Jingdong Retail Open source: Through the configuration of automatic generation of the background (CMS) interface插图1

  • type:filter : form + table combined query.

Usage :

1. (type:filter) Direct call consistent with form

2. (type:filter) + (type:fetch) + (type:table) Complete the search and display of filtering conditions

APIs- Template default :

The field configuration is the same as from.

{
  "type": "filter",
  "layout": "horizontal",
  "fields":[]
}
  • Data query (type:skip) : Combined query of form + interface request.

Usage :

1. (type:skip) Get parameters directly to the next step

2. (type:skip) + (type:fetch) + (type:table) Complete search and display

APIs- Template default :

The field configuration is the same as from.

{
  "type": "skip",
  "layout": "horizontal",
  "fields":[]
}
  • Output result (type:table) : Support seven types of table components, the subsequent output results will be supplemented (tables, charts, details, etc.).

Usage :

1. (type:table) Configure static data display

2. (type:fetch) + (type:table) Unconditional direct query

3. (type:form) + (type:fetch) + (type:table) Complete the form submission query and display

4. (type:skip) + (type:fetch) + (type:table) Complete automatic query and display

5. (type:filter) + (type:fetch) + (type:table) Complete the filter query and display

APIs- Template default :

{
  "type": "form",
  "layout": "horizontal",
  "columns":[]
}

Add action button for table row, add button for table main page :

 "operations": {
    "rowOperations": [
        {
            "type": "button",
            "label": "编辑",
            "handle": {
                "type": "ccms",
                "callback":true,
                "page": "o_manage_list_edit",
                "target": "current",
                "data": {
                    "id": {
                        "source": "record",
                        "field": "id"
                    }
                }
            }
        },
        {
            "type": "button",
            "label": "删除",
            "handle": {
                "type": "ccms","
                callback":true,
                "page": "o_manage_list_delete",
                "target": "current",
                "data": {
                    "id": {
                        "source": "record",
                        "field": "id"
                    }
                }
            },
            "confirm": {
                "enable": true,
                "titleText": "Are you sure to delete the app? Cannot be recovered after deletion "
            }
        }
    ],
    "tableOperations": [
        {
            "type": "button",
            "label": "+ New app ",
            "handle": {
                "type": "ccms","
                callback":true,
                "page": "o_manage_list_create",
                "target": "current",
                "data": {}
            }
        }
    ]
}

Some components

  • Date and time

Jingdong Retail Open source: Through the configuration of automatic generation of the background (CMS) interface插图2

  • Date time range

Jingdong Retail Open source: Through the configuration of automatic generation of the background (CMS) interface插图3

  • Long text

Jingdong Retail Open source: Through the configuration of automatic generation of the background (CMS) interface插图4

  • Value

Jingdong Retail Open source: Through the configuration of automatic generation of the background (CMS) interface插图5

  • Text box

Jingdong Retail Open source: Through the configuration of automatic generation of the background (CMS) interface插图6

  • select selector

Jingdong Retail Open source: Through the configuration of automatic generation of the background (CMS) interface插图7

Jingdong Retail Open source: Through the configuration of automatic generation of the background (CMS) interface插图8

Installation use

  • Installation and use
npm install ccms-antd
import { CCMS } from 'ccms-antd'

< CCMS
checkPageAuth={async () =>  true}
loadPageURL={async (id) =>  `/url? id=${id}& type=page`}
loadPageFrameURL={async (id) =>  `/url? id=${id}& type=open`}
    // config. config
    loadPageConfig={async (page) => newConfig }
    sourceData={{}}
    callback={() => {
    if (window.history.length > 1) {
        window.history.back()
    } else {
        window.close()
    }
    }}
    //Configure the current config
    config={config}
/>

You can read more on your own.

资源下载此资源为免费资源立即下载
Telegram:@John_Software

Disclaimer: This article is published by a third party and represents the views of the author only and has nothing to do with this website. This site does not make any guarantee or commitment to the authenticity, completeness and timeliness of this article and all or part of its content, please readers for reference only, and please verify the relevant content. The publication or republication of articles by this website for the purpose of conveying more information does not mean that it endorses its views or confirms its description, nor does it mean that this website is responsible for its authenticity.

Ictcoder Free Source Code Jingdong Retail Open source: Through the configuration of automatic generation of the background (CMS) interface https://ictcoder.com/jingdong-retail-open-source-through-the-configuration-of-automatic-generation-of-the-background-cms-interface/

Share free open-source source code

Q&A
  • 1. Automatic: After making an online payment, click the (Download) link to download the source code; 2. Manual: Contact the seller or the official to check if the template is consistent. Then, place an order and make payment online. The seller ships the goods, and both parties inspect and confirm that there are no issues. ICTcoder will then settle the payment for the seller. Note: Please ensure to place your order and make payment through ICTcoder. If you do not place your order and make payment through ICTcoder, and the seller sends fake source code or encounters any issues, ICTcoder will not assist in resolving them, nor can we guarantee your funds!
View details
  • 1. Default transaction cycle for source code: The seller manually ships the goods within 1-3 days. The amount paid by the user will be held in escrow by ICTcoder until 7 days after the transaction is completed and both parties confirm that there are no issues. ICTcoder will then settle with the seller. In case of any disputes, ICTcoder will have staff to assist in handling until the dispute is resolved or a refund is made! If the buyer places an order and makes payment not through ICTcoder, any issues and disputes have nothing to do with ICTcoder, and ICTcoder will not be responsible for any liabilities!
View details
  • 1. ICTcoder will permanently archive the transaction process between both parties and snapshots of the traded goods to ensure the authenticity, validity, and security of the transaction! 2. ICTcoder cannot guarantee services such as "permanent package updates" and "permanent technical support" after the merchant's commitment. Buyers are advised to identify these services on their own. If necessary, they can contact ICTcoder for assistance; 3. When both website demonstration and image demonstration exist in the source code, and the text descriptions of the website and images are inconsistent, the text description of the image shall prevail as the basis for dispute resolution (excluding special statements or agreements); 4. If there is no statement such as "no legal basis for refund" or similar content, any indication on the product that "once sold, no refunds will be supported" or other similar declarations shall be deemed invalid; 5. Before the buyer places an order and makes payment, the transaction details agreed upon by both parties via WhatsApp or email can also serve as the basis for dispute resolution (in case of any inconsistency between the agreement and the description of the conflict, the agreement shall prevail); 6. Since chat records and email records can serve as the basis for dispute resolution, both parties should only communicate with each other through the contact information left on the system when contacting each other, in order to prevent the other party from denying their own commitments. 7. Although the probability of disputes is low, it is essential to retain important information such as chat records, text messages, and email records, in case a dispute arises, so that ICTcoder can intervene quickly.
View details
  • 1. As a third-party intermediary platform, ICTcoder solely protects transaction security and the rights and interests of both buyers and sellers based on the transaction contract (product description, agreed content before the transaction); 2. For online trading projects not on the ICTcoder platform, any consequences are unrelated to this platform; regardless of the reason why the seller requests an offline transaction, please contact the administrator to report.
View details

Related Source code

ICTcoder Customer Service

24-hour online professional services