123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164 |
- const { models } = require('./db')
- /**
- * 校验是否空值
- * @param {*} field 校验字段
- * @param {*} comment 字段名称
- * @returns 结果
- */
- const validateField = (field, comment) => {
- const result = {
- flag: true,
- msg: ''
- }
- if (field == null) {
- result.flag = false
- result.msg = '错误: 字段[ ' + comment + ' ]不能为空!'
- }
- return result
- }
- /**
- * 新增函数
- * @param {*} parameter 参数(用于打印错误)
- * @param {*} data 数据(插入数据库的数据)
- * @param {*} tableName 表名
- * @returns 结果
- */
- async function handleAdd(parameter, data, tableName) {
- try {
- // 新增数据
- const result = await models[tableName].create({ data })
- return {
- success: true,
- msg: '新增数据成功',
- data: result.data,
- }
- } catch (error) {
- return {
- success: false,
- msg: '新增数据失败',
- error: error,
- parameter
- }
- }
- // 新增数据
- // const result = await models[tableName].create({ data })
- // return {
- // success: true,
- // msg: '新增数据成功',
- // data: result.data,
- // }
- }
- /**
- * 编辑函数(根据Id编辑)
- * @param {*} parameter 参数(用于打印错误)
- * @param {*} data 修改的数据
- * @param {*} tableName 表名
- * @returns 结果
- */
- async function handleUpdate(parameter, id, data, tableName) {
- try {
- // 更新数据
- const result = await models[tableName].update({
- data,
- filter: {
- where: {
- _id: {
- $eq: id
- }
- }
- }
- })
- return {
- success: true,
- msg: '修改数据成功',
- data: result,
- }
- } catch (error) {
- return {
- success: false,
- msg: '修改数据失败',
- error: error,
- parameter
- }
- }
- }
- /**
- * 根据Id删除
- * @param {*} parameter 参数(用于打印错误)
- * @param {*} id 要删除的数据的Id
- * @param {*} tableName 表名
- */
- async function handleDelete(parameter, id, tableName) {
- try {
- await models[tableName].delete({
- filter: {
- where: {
- $and: [
- {
- _id: {
- $eq: id,
- },
- },
- ]
- }
- },
- envType: "prod",
- })
- return {
- success: true,
- msg: '删除数据成功',
- }
- } catch (error) {
- return {
- success: false,
- msg: '删除数据失败',
- error: error,
- parameter
- }
- }
- }
- /**
- * 根据某一字段查询数据
- * @param {*} select 可以指定返回本表或者关联表的字段,如果想查询本表所有字段,请使用 { $master: true }
- * @param {*} field 查询条件使用的字段
- * @param {*} fieldVal 字段的值
- * @param {*} tableName 表名
- * @returns List
- */
- async function handleFindByField(select, field, fieldVal, tableName) {
- try {
- const result = await models[tableName].list({
- select,
- filter: {
- where: {
- [field]: {
- $eq: fieldVal, // 推荐传入_id数据标识进行操作
- },
- }
- },
- envType: "prod",
- })
- return {
- success: true,
- msg: '查询成功',
- data: result.data.records,
- // sql
- }
- } catch (error) {
- return {
- success: false,
- msg: '查询失败',
- parameter,
- error: error
- }
- }
- }
- module.exports = {
- validateField,
- handleAdd,
- handleUpdate,
- handleDelete,
- handleFindByField
- }
|