| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331 | <template>  <div class="app-container" v-loading="loading">    <el-form ref="form" :model="form" :rules="rules" label-width="180px">      <h3 class="toolbar">        <span class="title">项目基本信息</span>      </h3>      <el-row :gutter="40">        <el-col :span="12">          <el-form-item label="企业名称" prop="entName">            <el-input v-model="form.entName" type="text" auto-complete="off" placeholder="请输入企业名称"></el-input>          </el-form-item>        </el-col>        <el-col :span="12">          <el-form-item label="通讯地址" prop="address">            <el-input v-model="form.address" placeholder="请输入通讯地址"></el-input>          </el-form-item>        </el-col>        <el-col :span="12">          <el-form-item label="企业联系人" prop="linkName">            <el-input v-model="form.linkName" placeholder="请输入企业联系人"></el-input>          </el-form-item>        </el-col>        <el-col :span="12">          <el-form-item label="联系电话(座机)" prop="linkPhone">            <el-input v-model="form.linkPhone" type="text" auto-complete="off" placeholder="请输入联系电话(座机)">            </el-input>          </el-form-item>        </el-col>        <el-col :span="12">          <el-form-item label="联系电话(手机)" prop="linkMobile">            <el-input v-model="form.linkMobile" type="text" auto-complete="off" placeholder="请输入联系电话(手机)">            </el-input>          </el-form-item>        </el-col>        <el-col :span="12">          <el-form-item label="职工总人数(人)" prop="totoalPersons">            <el-input v-model="form.totoalPersons" type="text" auto-complete="off" placeholder="请输入职工总人数">            </el-input>          </el-form-item>        </el-col>        <el-col :span="12">          <el-form-item label="年度企业销售收入(万元)" prop="sales">            <el-input v-model="form.sales" type="text" auto-complete="off" placeholder="请输入年度企业销售收入(万元)">            </el-input>          </el-form-item>        </el-col>        <el-col :span="12">          <el-form-item label="研发人数" prop="techPersons">            <el-input v-model="form.techPersons" type="text" auto-complete="off" placeholder="请输入研发人数">            </el-input>          </el-form-item>        </el-col>        <el-col :span="12">          <el-form-item label="年度研发投入(万元)" prop="techInvest">            <el-input v-model="form.techInvest" type="text" auto-complete="off" placeholder="请输入年度研发投入(万元)">            </el-input>          </el-form-item>        </el-col>        <el-col :span="12">          <el-form-item label="占销售收入比例(%)" prop="techRate">            <el-input v-model="form.techRate" type="text" auto-complete="off" placeholder="请输入占销售收入比例(%)">            </el-input>          </el-form-item>        </el-col>        <el-col :span="12">          <el-form-item label="企业所属行业" prop="industry">            <el-input v-model="form.industry" type="text" auto-complete="off" placeholder="请输入企业所属行业">            </el-input>          </el-form-item>        </el-col>        <el-col :span="12">          <el-form-item label="国家自主创新示范区企业" prop="innovateFlag">            <el-radio-group v-model="form.innovateFlag">              <el-radio v-for="(item, index) in yesOrNoOptions" :key="index" :label="item.dictValue">{{item.dictLabel}}</el-radio>            </el-radio-group>          </el-form-item>        </el-col>      </el-row>      <h3 class="toolbar">        <span class="title">项目是否跨年</span>      </h3>      <el-row :gutter="40">        <el-col :span="12">          <el-form-item label="是否跨年" prop="overYearFlag">            <el-radio-group v-model="form.overYearFlag">              <el-radio v-for="(item, index) in yesOrNoOptions" :key="index" :label="item.dictValue">{{item.dictLabel}}</el-radio>            </el-radio-group>          </el-form-item>        </el-col>        <el-col :span="12">          <el-form-item label="项目时间段" prop="projectTime">            <el-date-picker v-model="form.projectTime" placeholder="选择日期" type="daterange" value-format="yyyy-MM-dd" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>          </el-form-item>        </el-col>      </el-row>      <h3 class="toolbar">        <span class="title">科技型中小企业信息</span>      </h3>      <el-row :gutter="40">        <el-col :span="12">          <el-form-item label="是否科技型中小企业" prop="smallFlag">            <el-radio-group v-model="form.smallFlag">              <el-radio v-for="(item, index) in yesOrNoOptions" :key="index" :label="item.dictValue">{{item.dictLabel}}</el-radio>            </el-radio-group>          </el-form-item>        </el-col>      </el-row>      <h3 class="toolbar">        <span class="title">高新技术企业信息</span>      </h3>      <el-row :gutter="40">        <el-col :span="12">          <el-form-item label="是否高新技术企业" prop="techFlag">            <el-radio-group v-model="form.techFlag">              <el-radio v-for="(item, index) in yesOrNoOptions" :key="index" :label="item.dictValue">{{item.dictLabel}}</el-radio>            </el-radio-group>          </el-form-item>        </el-col>        <!-- <template v-if="form.techFlag == 1"> -->          <el-col :span="24">            <el-form-item label="高新技术企业所属技术领域" prop="techScopeArray">              <el-checkbox-group v-model="techScopeArray">                <el-checkbox v-for="(item, index) in techScopeOptions" :label="item.dictLabel" :key="index">{{item.dictLabel}}</el-checkbox>              </el-checkbox-group>            </el-form-item>          </el-col>          <el-col :span="24">            <el-form-item label="证书有效期限" prop="lisenceTime">              <el-date-picker v-model="form.lisenceTime" placeholder="选择日期" type="daterange" value-format="yyyy-MM" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>            </el-form-item>          </el-col>          <el-col :span="24">            <el-form-item label="高新证书" prop="techLicense">              <FileUpload :file="{url: form.techLicense, name: form.fileName}" @input="handleSuccess">上传证书</FileUpload>            </el-form-item>          </el-col>        <!-- </template> -->      </el-row>      <template v-if="userType == 'ENT_FIN' || userType == 'ENT_ADMIN_FIN'">        <el-row :gutter="40">          <el-col :span="24">            <el-form-item style="width:100%;text-align: center;" label-width="0px">              <el-button @click="synTechSubmit" size="medium" type="primary">同步技术填报</el-button>              <el-button @click="synEntSubmit" size="medium" type="primary">同步企业填报</el-button>              <el-button :loading="loading" size="medium" type="primary" @click.native.prevent="submitForm" style="width: 100px;">财务保存</el-button>              <el-button size="medium" type="primary" style="width: 100px;">取消</el-button>            </el-form-item>          </el-col>        </el-row>      </template>    </el-form>  </div></template><script>import { editProjectApi,getProjectInfoApi,synFinApi } from "@/api/enterprise/project/project"import { techScopeOptions,yesOrNoOptions } from "@/utils/dataFormat"import FileUpload from '@/components/FileUpload'import { listEntUserApi } from "@/api/ent/ent"export default {  name: "First",  components: {    FileUpload  },  computed: {    userType() {      return this.$store.state.user.userType    },  },  props: {  },  data() {    return {      techId: undefined,      adminId: undefined,      serviceDate: [],      provinceName: '',      cityName: '',      districtName: '',      codeUrl: "",      techScopeOptions: techScopeOptions,      yesOrNoOptions: yesOrNoOptions,      provinceDataList: [],      cityDataList: [],      districtDataList: [],      techScopeArray: ['电子信息'],      form: {        id: undefined,        entId: undefined,        projectOwner: 3,        lisenceTime: [],        techStartDate: '',        techEndDate: '',        projectTime: [],        projectStartDate: '',        projectEndDate: ''      },      rules: {        userName: [          { required: true, trigger: "blur", message: "请输入您的账号" },          { min: 2, max: 20, message: '用户账号长度必须介于 2 和 20 之间', trigger: 'blur' }        ],        password: [          { required: true, trigger: "blur", message: "请输入您的密码" },          { min: 5, max: 20, message: '用户密码长度必须介于 5 和 20 之间', trigger: 'blur' }        ],        code: [{ required: true, trigger: "change", message: "请输入验证码" }]      },      loading: false,      captchaOnOff: true    };  },  created() {    this.form.id = this.$route.query.id || undefined;    this.form.entId = this.$route.query.entId || undefined;    if(this.form.id) {      this.getData()    }    setTimeout(() => {        // 加延时      this.getEntData()    }, 500);  },  methods: {    getEntData() {      listEntUserApi().then(res => {        this.form.entName = res.data.entName      })    },    //同步技术资料    synTechSubmit() {      this.loading = true      synFinApi(this.techId).then(res => {        this.loading = false        if(res.data) {          this.getData()        }      })    },    //同步企业自填资料    synEntSubmit() {      this.loading = true      synFinApi(this.adminId).then(res => {        this.loading = false        if(res.data) {          this.getData()        }      })    },    getData() {      getProjectInfoApi(this.form.id).then(res => {        let obj = res.data.finProject || {}        this.techId = res.data.techProject.id || undefined        this.adminId = res.data.entProject.id        this.form = obj || {}        this.form.fileName = '高新证书'        if(obj.techScope) {          this.techScopeArray = obj.techScope.split(',')        }        this.form.projectTime = []        if(obj.projectStartDate) {          this.form.projectTime[0] = obj.projectStartDate          this.form.projectTime[1] = obj.projectEndDate        }        this.form.lisenceTime = []        if(obj.techStartDate) {          this.form.lisenceTime[0] = obj.techStartDate          this.form.lisenceTime[1] = obj.techEndDate        }        if(obj.techFlag == 1) {          this.techVisible = true        }      })    },    handleSuccess(file) {      this.form.techLicense = file.url;      this.form.fileName = '高新证书';    },    handleSaleSuccess(files) {      files.forEach(item => {        this.form.attachIds.push(item.response.data.id)      });    },    submitForm() {      this.$refs.form.validate(valid => {        if(valid) {          this.loading = true          this.form.techScope = this.techScopeArray.join(',')          editProjectApi(this.form).then(res => {            this.loading = false            this.$store.dispatch("tagsView/delView", this.$route);            this.$router.go(-1);          })        }      })    }  },  watch: {    'entProjectList': {      immediate: true,      handler (val) {        this.form.entProjectList = this.entProjectList || {}      }    },    'form.projectTime'(val) {      if(this.form.projectTime) {        this.form.projectStartDate = this.form.projectTime[0]        this.form.projectEndDate = this.form.projectTime[1]      }else {        this.form.projectStartDate = ''        this.form.projectEndDate = ''      }    },    'form.lisenceTime'(val) {      if(this.form.lisenceTime) {        this.form.techEndDate = this.form.lisenceTime[1]        this.form.techStartDate = this.form.lisenceTime[0]      }else {        this.form.techStartDate = ''        this.form.techEndDate = ''      }    }  }};</script><style rel="stylesheet/scss" lang="scss"></style>
 |