12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- 'use strict';
- const assert = require('assert');
- const _ = require('lodash');
- const { ObjectId } = require('mongoose').Types;
- const { CrudService } = require('naf-framework-mongoose/lib/service');
- const { BusinessError, ErrorCode } = require('naf-core').Error;
- class CompanyupService extends CrudService {
- constructor(ctx) {
- super(ctx, 'company_up');
- this.model = this.ctx.model.Companyup;
- this.cmodel = this.ctx.model.Company;
- this.pmodel = this.ctx.model.Profession;
- this.dmodel = this.ctx.model.Dictionary;
- }
- // 修改企业修改信息表的状态
- async status({ id }, { status }) {
- // 根据id查询企业修改信息表的数据
- const companyup = await this.model.findById(id);
- const _companyup = JSON.parse(JSON.stringify(companyup));
- delete _companyup.meta;
- delete _companyup._id;
- // 如果修改状态为1(审核通过)
- if (status === '1') {
- // 根据企业修改信息表中的字段uid查询企业信息表中是否有对应的信息(判断用户是否为第一次修改企业信息,即企业信息表中没有对应的信息)
- const company = await this.cmodel.findOne({ uid: companyup.uid });
- // 给用户发送消息告知修改信息成功
- this.ctx.service.viewnews.insertViewNews('修改企业信息成功', '企业修改信息申请已审核通过,请及时查看罪行企业信息', companyup.uid);
- if (company) {
- // 将企业修改信息表中的字段提取出来更新到用户对应的企业信息表
- await this.cmodel.findOneAndUpdate({ uid: companyup.uid }, _companyup);
- } else {
- await this.cmodel.create(_companyup);
- }
- }
- companyup.status = status;
- await companyup.save();
- }
- async fetch({ id }) {
- const companyup = await this.model.findById(id);
- if (companyup.profession_one) {
- const profession_one = await this.pmodel.findOne({
- code: companyup.profession_one,
- });
- companyup.profession_one = profession_one.name;
- }
- if (companyup.profession_two) {
- const profession_two = await this.pmodel.findOne({
- code: companyup.profession_two,
- });
- companyup.profession_two = profession_two.name;
- }
- if (companyup.profession_three) {
- const profession_three = await this.pmodel.findOne({
- code: companyup.profession_three,
- });
- companyup.profession_three = profession_three.name;
- }
- if (companyup.profession_four) {
- const profession_four = await this.pmodel.findOne({
- code: companyup.profession_four,
- });
- companyup.profession_four = profession_four.name;
- }
- return companyup;
- }
- }
- module.exports = CompanyupService;
|