wxd 1 tháng trước cách đây
mục cha
commit
b3b7fa1192

+ 1 - 1
.env.development

@@ -7,4 +7,4 @@ VITE_APP_ENV = 'development'
 # 若依管理系统/开发环境
 VITE_APP_BASE_API = '/dev-api'
 
-VITE_APP_IMAGURL = 'http://192.168.1.100:8088'
+VITE_APP_IMAGURL = 'http://192.168.1.50:8088'

+ 9 - 0
src/api/talentManagement/todoList.js

@@ -61,3 +61,12 @@ export function getApplicationState(params) {
     params,
   });
 }
+
+//获取审批通过
+export function listeditPaccssed(query) {
+  return request({
+    url: "/jflow/restful/MyJoinFlows",
+    method: "get",
+    params: query,
+  });
+}

+ 204 - 25
src/components/AmatterClass/index.vue

@@ -24,13 +24,37 @@
           <div class="subheading">个人基本信息</div>
         </div>
 
-        <div class="avater"></div>
+        <div class="avater">
+          <!-- <el-descriptions
+            class="avater"
+            style="width: 370px"
+            :column="4"
+            size="large"
+            border
+          >
+            <el-descriptions-item :span="0" style="width: 100px">
+              <template #label>
+                <div
+                  style="height: 100px; line-height: 100px"
+                  class="cell-item"
+                >
+                  <el-icon :style="iconStyle">
+                    <user />
+                  </el-icon>
+                  头像
+                </div>
+                <span class="required">*</span>
+              </template>
+            
+            </el-descriptions-item>
+          </el-descriptions> -->
+        </div>
 
         <div style="display: flex">
           <el-descriptions
             width="200px"
             class="margin-top"
-            style="margin-bottom: 30px; margin-top: 0px; width: 75%"
+            style="margin-bottom: 30px; margin-top: 0px; width: 90%"
             :column="3"
             size="large"
             border
@@ -66,6 +90,7 @@
               </template>
               <el-form-item prop="gender">
                 <el-select
+                  style="width: 100%"
                   placeholder="请选择性别"
                   v-model="personDataForm.gender"
                 >
@@ -82,6 +107,7 @@
               </template>
               <el-form-item>
                 <el-select
+                  style="width: 100%"
                   v-model="personDataForm.politicsStatus"
                   placeholder="请选择您的政治面貌"
                 >
@@ -103,6 +129,7 @@
               </template>
               <el-form-item>
                 <el-select
+                  style="width: 100%"
                   v-model="personDataForm.minZu"
                   placeholder="请选择所属民族"
                 >
@@ -123,6 +150,7 @@
               </template>
               <el-form-item prop="chuShengDate">
                 <el-date-picker
+                  style="width: 100%"
                   v-model="personDataForm.chuShengDate"
                   type="date"
                   placeholder="请选择出生日期"
@@ -150,14 +178,34 @@
                 <span class="required">*</span>
               </template>
               <el-form-item prop="juZhuDi">
-                <el-input
-                  v-model="personDataForm.juZhuDi"
-                  placeholder="请输入本市居住地"
-                ></el-input>
+                <div style="display: flex; align-items: center; width: 100%">
+                  <div style="width: 273px">
+                    <el-select
+                      style="width: 100%"
+                      v-model="personDataForm.juZhuDiQu"
+                      placeholder="请选择区县"
+                    >
+                      <el-option
+                        v-for="item in rclk_dzqx"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value"
+                      >
+                      </el-option>
+                    </el-select>
+                  </div>
+
+                  <div style="margin-left: 10px; width: 350px">
+                    <el-input
+                      v-model="personDataForm.juZhuDi"
+                      placeholder="请输入本市居住地"
+                    ></el-input>
+                  </div>
+                </div>
               </el-form-item>
             </el-descriptions-item>
           </el-descriptions>
-          <el-form-item prop="photoPath" style="margin-bottom: 10px">
+          <el-form-item style="margin-left: 20px" prop="photoPath">
             <el-upload
               :class="{ isUpload: fileList.length }"
               :action="uploadFileUrl"
@@ -175,7 +223,7 @@
         <el-descriptions
           title="人才类别,证件类别"
           class="margin-top"
-          :column="4"
+          :column="3"
           size="large"
           border
           direction="horizontal"
@@ -187,6 +235,7 @@
             </template>
             <el-form-item prop="renCaiType">
               <el-select
+                style="width: 100%"
                 @change="handleChangeCardType"
                 v-model="personDataForm.renCaiType"
                 placeholder="请选择人才类别"
@@ -194,7 +243,7 @@
                 <el-option
                   v-for="item of listByCardType"
                   :key="item.id"
-                  :value="item.id"
+                  :value="String(item.id)"
                   :label="item.name"
                 ></el-option>
               </el-select>
@@ -207,19 +256,36 @@
             </template>
             <el-form-item>
               <el-select
+                style="width: 100%"
                 v-model="personDataForm.renCaiChengHao"
                 placeholder="请选择人才称号"
               >
                 <el-option
                   v-for="item of talentTitle"
                   :key="item.id"
-                  :value="item.id"
+                  :value="String(item.id)"
                   :label="item.name"
                 ></el-option>
               </el-select>
             </el-form-item>
           </el-descriptions-item>
 
+          <el-descriptions-item>
+            <template #label>
+              <div class="cell-item">取得日期</div>
+              <span class="required">*</span>
+            </template>
+            <el-form-item>
+              <el-date-picker
+                v-model="personDataForm.getDate"
+                style="width: 100%"
+                type="date"
+                placeholder="请选择取得日期"
+                format="YYYY-MM-DD"
+                value-format="YYYY-MM-DD"
+              />
+            </el-form-item>
+          </el-descriptions-item>
           <el-descriptions-item>
             <template #label>
               <div class="cell-item">证件类别</div>
@@ -227,6 +293,7 @@
             </template>
             <el-form-item prop="zhengJianType">
               <el-select
+                style="width: 100%"
                 v-model="personDataForm.zhengJianType"
                 placeholder="请选择证件类别"
               >
@@ -247,6 +314,7 @@
             </template>
             <el-form-item prop="idNum">
               <el-input
+                style="width: 288px"
                 v-model="personDataForm.idNum"
                 placeholder="请输入证件号码"
               ></el-input>
@@ -257,7 +325,6 @@
           title="毕业院校及学历专业"
           class="margin-top"
           :column="3"
-          style="width: 75%"
           size="large"
           border
         >
@@ -268,6 +335,7 @@
             </template>
             <el-form-item>
               <el-select
+                style="width: 100%"
                 v-model="personDataForm.xueLi"
                 placeholder="请输入学历学位"
               >
@@ -280,17 +348,58 @@
               </el-select>
             </el-form-item>
           </el-descriptions-item>
+
           <el-descriptions-item>
             <template #label>
               <div class="cell-item">全日制教育</div>
+              <span class="required">*</span>
             </template>
-            <el-form-item>
+            <el-form-item prop="school">
               <el-input
                 v-model="personDataForm.school"
                 placeholder="请输入教育经历"
               ></el-input>
             </el-form-item>
           </el-descriptions-item>
+
+          <el-descriptions-item>
+            <template #label>
+              <div class="cell-item">全日制教育专业</div>
+              <span class="required">*</span>
+            </template>
+            <div style="display: flex">
+              <el-form-item prop="specialty">
+                <el-input
+                  v-model="personDataForm.specialty"
+                  placeholder="专业"
+                ></el-input>
+              </el-form-item>
+              <el-form-item style="margin-left: 10px">
+                <el-checkbox
+                  :true-value="true"
+                  :false-value="false"
+                  v-model="personDataForm.isHaiwai"
+                  label="是否毕业"
+                >
+                  是否海外
+                </el-checkbox>
+              </el-form-item>
+            </div>
+          </el-descriptions-item>
+
+          <el-descriptions-item>
+            <template #label>
+              <div class="cell-item">毕业证书编号</div>
+              <span class="required">*</span>
+            </template>
+            <el-form-item>
+              <el-input
+                v-model="personDataForm.zhengShuNum"
+                placeholder="请输入毕业证书编号"
+              ></el-input>
+            </el-form-item>
+          </el-descriptions-item>
+
           <el-descriptions-item>
             <template #label>
               <div class="cell-item">在职教育</div>
@@ -298,10 +407,25 @@
             <el-form-item>
               <el-input
                 v-model="personDataForm.zaiZhiJiaoYu"
-                placeholder="请输入在职教育学校名称"
+                placeholder="学校"
               ></el-input>
             </el-form-item>
           </el-descriptions-item>
+
+          <el-descriptions-item>
+            <template #label>
+              <div class="cell-item">在职教育专业</div>
+            </template>
+            <div style="display: flex">
+              <el-form-item>
+                <el-input
+                  style="width: 288px"
+                  v-model="personDataForm.zaiZhiZhuanYe"
+                  placeholder="专业"
+                ></el-input>
+              </el-form-item>
+            </div>
+          </el-descriptions-item>
         </el-descriptions>
 
         <el-descriptions
@@ -309,7 +433,6 @@
           class="margin-top"
           :column="3"
           size="large"
-          style="width: 75%"
           border
         >
           <el-descriptions-item>
@@ -353,7 +476,6 @@
           class="margin-top"
           :column="3"
           size="large"
-          style="width: 75%"
           border
           direction="horizontal"
         >
@@ -387,6 +509,7 @@
             </template>
             <el-form-item prop="yjrcType">
               <el-select
+                style="width: 100%"
                 @change="handelChangeyjrcTypeRules"
                 placeholder="请选择引进人才类型"
                 v-model="personDataForm.yjrcType"
@@ -401,7 +524,12 @@
             </el-form-item>
           </el-descriptions-item>
 
-          <el-descriptions-item>
+          <el-descriptions-item
+            v-if="
+              personDataForm.yjrcType != 'gxyj' &&
+              personDataForm.yjrcType == 'rxyj'
+            "
+          >
             <template #label>
               <div class="cell-item">签约期限</div>
               <span v-if="personDataForm.yjrcType == 'rxyj'" class="required"
@@ -410,6 +538,7 @@
             </template>
             <el-form-item prop="yjrcQianyueDate" :rules="qyRules">
               <el-select
+                style="width: 288px"
                 v-model="personDataForm.yjrcQianyueDate"
                 placeholder="请输入签约期限"
               >
@@ -423,7 +552,13 @@
             </el-form-item>
           </el-descriptions-item>
 
-          <el-descriptions-item :span="0">
+          <el-descriptions-item
+            :span="1"
+            v-if="
+              personDataForm.yjrcType != 'gxyj' &&
+              personDataForm.yjrcType == 'zzpy'
+            "
+          >
             <template #label>
               <div class="cell-item">单位职务职称</div>
               <span v-if="personDataForm.yjrcType == 'zzpy'" class="required"
@@ -432,6 +567,7 @@
             </template>
             <el-form-item prop="zzpyZhiWu" :rules="zwRules">
               <el-input
+                style="width: 288px"
                 placeholder="请输入单位职务职称"
                 v-model="personDataForm.zzpyZhiWu"
               ></el-input>
@@ -444,7 +580,6 @@
           class="margin-top"
           :column="3"
           size="large"
-          style="width: 75%"
           border
           direction="horizontal"
         >
@@ -462,17 +597,24 @@
           </el-descriptions-item>
           <el-descriptions-item>
             <template #label>
-              <div class="cell-item">地址</div>
+              <div class="cell-item">单位性质</div>
               <span class="required">*</span>
             </template>
-            <el-form-item prop="yrdwAddress">
-              <el-input
-                v-model="personDataForm.yrdwAddress"
-                placeholder="请输入用人单位地址"
-              ></el-input>
+            <el-form-item prop="yrdwXingZhi">
+              <el-select
+                style="width: 100%"
+                v-model="personDataForm.yrdwXingZhi"
+                placeholder="请选择单位性质"
+              >
+                <el-option
+                  v-for="item of rclk_dwxz"
+                  :key="item.value"
+                  :value="item.value"
+                  :label="item.label"
+                ></el-option>
+              </el-select>
             </el-form-item>
           </el-descriptions-item>
-
           <el-descriptions-item>
             <template #label>
               <div class="cell-item">所属行业</div>
@@ -480,6 +622,7 @@
             </template>
             <el-form-item>
               <el-select
+                style="width: 100%"
                 v-model="personDataForm.yrdwIndustryInvolved"
                 placeholder="请输入所属行业"
               >
@@ -530,6 +673,35 @@
               ></el-input>
             </el-form-item>
           </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label>
+              <div class="cell-item">地址</div>
+              <span class="required">*</span>
+            </template>
+            <el-form-item prop="yrdwAddress">
+              <div style="display: flex; align-items: center; width: 100%">
+                <el-select
+                  v-model="personDataForm.yrdwAddressArea"
+                  placeholder="请选择区县"
+                  style="width: 288px"
+                >
+                  <el-option
+                    v-for="item in rclk_dzqx"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                  >
+                  </el-option>
+                </el-select>
+
+                <el-input
+                  style="width: 70%; margin-left: 20px"
+                  v-model="personDataForm.yrdwAddress"
+                  placeholder="请输入用人单位地址"
+                ></el-input>
+              </div>
+            </el-form-item>
+          </el-descriptions-item>
         </el-descriptions>
 
         <el-form-item label-width="140px" label="国内外学习工作经历">
@@ -671,6 +843,13 @@ const personDataForm = reactive({
   jingLi: null, //国外学习工作经历
   huojiangCondition: null, //工作奖励和成果
   zzpyZhiWu: null, //单位职务职称
+  getDate: null, //取得日期
+  zhengShuNum: null, //毕业证书编号
+  juZhuDiQu: null,
+  specialty: null,
+  isHaiwai: null,
+  zaiZhiZhuanYe: null,
+  yrdwAddressArea: null,
 });
 
 const props = defineProps({

+ 26 - 42
src/views/todoList/editPassed/index.vue

@@ -46,21 +46,17 @@
           <span>{{ handleTableIndex(scope.$index, queryParams) }}</span>
         </template>
       </el-table-column>
-      <el-table-column
-        label="申请人姓名"
-        align="center"
-        prop="chineseName"
-      ></el-table-column>
-      <el-table-column
-        label="手机号码"
-        align="center"
-        prop="shouJiNum"
-      ></el-table-column>
-      <el-table-column label="英才卡类型" align="center" prop="cardType">
+      <el-table-column label="类型" align="center" prop="cardType">
         <template #default="scope">
           <dict-tag :options="card_type" :value="scope.row.cardType" />
         </template>
       </el-table-column>
+      <el-table-column
+        label="申请人"
+        align="center"
+        prop="chineseName"
+      ></el-table-column>
+
       <el-table-column
         label="申请编号"
         align="center"
@@ -91,9 +87,9 @@
           <el-button
             size="small"
             type="text"
-            icon="Edit"
+            icon="View"
             @click="handleEdit(scope.row)"
-            >审批</el-button
+            >详细</el-button
           ></template
         >
       </el-table-column>
@@ -122,6 +118,9 @@
         </div>
         <div class="description">
           <el-form :inline="true">
+            <!-- <el-form-item label="填报:">
+              <span>工作单位</span>
+            </el-form-item> -->
             <el-form-item label="编号:">
               <span>{{ activeForm.sehnqingNumber }}</span>
             </el-form-item>
@@ -129,29 +128,6 @@
         </div>
       </div>
 
-      <el-form
-        style="margin-top: -50px"
-        :model="editForm"
-        ref="editFormRef"
-        :rules="rules"
-        label-width="120px"
-      >
-        <el-form-item label="审批状态">
-          <el-radio-group v-model="editState">
-            <el-radio-button label="0">受理</el-radio-button>
-            <el-radio-button label="1">材料补正</el-radio-button>
-            <el-radio-button label="2">不予受理</el-radio-button>
-          </el-radio-group>
-        </el-form-item>
-        <el-form-item class="title" label="受理意见" prop="reviewlMsg">
-          <el-input
-            v-model="editForm.reviewlMsg"
-            :rows="2"
-            placeholder="请输入受理意见"
-            type="textarea"
-          />
-        </el-form-item>
-      </el-form>
       <el-tabs type="border-card">
         <el-tab-pane label="基本信息">
           <div style="height: 580px; overflow-y: auto; margin-top: -40px">
@@ -173,9 +149,6 @@
       <template #footer>
         <div class="dialog-footer">
           <el-button @click="editDia = false">取消</el-button>
-          <el-button type="primary" @click="handleSaveEdit(editFormRef)">
-            确 定
-          </el-button>
         </div>
       </template>
     </el-dialog>
@@ -190,6 +163,8 @@ import {
   sendFlowToUsers,
   returnBcakRclk,
   bysp,
+  getNextNode,
+  listeditPaccssed,
 } from "@/api/talentManagement/todoList";
 import { ElMessage } from "element-plus";
 import { computed, toValue } from "vue";
@@ -216,6 +191,7 @@ const {
   "politics_status",
   "zheng_jian_type"
 );
+
 const listData = ref([]);
 const open = ref(false);
 const loading = ref(true);
@@ -257,7 +233,7 @@ const { queryParams, editForm, rules } = toRefs(data);
 /** 查询人才库列列表 */
 function getList() {
   loading.value = true;
-  getTodoList(queryParams.value).then((response) => {
+  listeditPaccssed(queryParams.value).then((response) => {
     listData.value = response.list;
     total.value = response.total;
     loading.value = false;
@@ -265,10 +241,17 @@ function getList() {
 }
 const handleEdit = (row) => {
   rclkApplicationFormId.value = row.rclkApplicationFormId;
-
   activeForm.value = row;
   editDia.value = true;
   activeItem.value = row;
+
+  getNextNode({ workid: row.WorkID, flowNo: "001" }).then((res) => {
+    editForm.value.NodeID = res[0].NodeID;
+    editForm.value.Name = res[0].Name;
+  });
+
+  proxy.resetForm("editFormRef");
+  editState.value = 0;
 };
 
 //提交受理结果
@@ -280,7 +263,8 @@ const handleSaveEdit = (formRef) => {
           rclkId: activeItem.value.rclkApplicationFormId,
           workid: activeItem.value.WorkID,
           reviewlMsg: editForm.value.reviewlMsg,
-          optionName: activeItem.value.NodeName + "审核",
+          optionName: editForm.value.Name,
+          toNodeId: editForm.value.NodeID,
         }).then((res) => {
           editDia.value = false;
           ElMessage({

+ 69 - 2
src/views/todoList/index.vue

@@ -129,6 +129,7 @@
       </div>
 
       <el-form
+        v-if="!isReturn"
         style="margin-top: -50px"
         :model="editForm"
         ref="editFormRef"
@@ -177,9 +178,47 @@
       <template #footer>
         <div class="dialog-footer">
           <el-button @click="editDia = false">取消</el-button>
-          <el-button type="primary" @click="handleSaveEdit(editFormRef)">
+          <el-button
+            v-if="!isReturn"
+            type="primary"
+            @click="handleSaveEdit(editFormRef)"
+          >
             确 定
           </el-button>
+          <el-button v-else type="primary" @click="returnDia = true">
+            退 回
+          </el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <el-dialog
+      v-model="returnDia"
+      title="退回理由"
+      width="500px"
+      append-to-body
+    >
+      <el-form
+        ref="returnFormRef"
+        :model="returnForm"
+        :rules="returnRules"
+        label-width="100px"
+      >
+        <el-form-item label="退回理由" prop="returnMsg">
+          <el-input
+            v-model="returnForm.returnMsg"
+            type="textarea"
+            :rows="4"
+            placeholder="请输入退回理由"
+          />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button @click="returnDia = false">取消</el-button>
+          <el-button type="primary" @click="handleReturn(returnFormRef)"
+            >确定</el-button
+          >
         </div>
       </template>
     </el-dialog>
@@ -222,6 +261,7 @@ const {
   "zheng_jian_type"
 );
 
+const FK_NODE = ref(null);
 const listData = ref([]);
 const open = ref(false);
 const loading = ref(true);
@@ -238,7 +278,9 @@ const editFormRef = ref(null);
 const activeForm = ref({});
 const rclkApplicationFormId = ref(null);
 const editState = ref("0");
-
+const returnDia = ref(false); //退回意见
+const returnFormRef = ref(null); //退回意见表单
+const returnForm = ref({});
 const data = reactive({
   editForm: {},
   queryParams: {
@@ -258,8 +300,26 @@ const data = reactive({
   },
 });
 
+const returnRules = {
+  returnMsg: [
+    {
+      required: true,
+      message: "退回理由不能为空",
+      trigger: "blur",
+    },
+  ],
+};
+
 const { queryParams, editForm, rules } = toRefs(data);
 
+const handleReturn = async (formRef) => {
+  await formRef.validate((vaild) => {
+    if (vaild) {
+      returnDia.value = false;
+    }
+  });
+};
+
 /** 查询人才库列列表 */
 function getList() {
   loading.value = true;
@@ -274,6 +334,8 @@ const handleEdit = (row) => {
   activeForm.value = row;
   editDia.value = true;
   activeItem.value = row;
+  FK_NODE.value = row.FK_Node;
+  console.log(FK_NODE.value);
 
   getNextNode({ workid: row.WorkID, flowNo: "001" }).then((res) => {
     editForm.value.NodeID = res[0].NodeID;
@@ -385,6 +447,11 @@ function handleDelete(row) {
     .catch(() => {});
 }
 
+const isReturn = computed(() => {
+  const NODEID = FK_NODE.value;
+
+  return NODEID == "102" || NODEID == "103";
+});
 getList();
 </script>
 <style lang="scss" scoped>

+ 2 - 2
vite.config.js

@@ -27,8 +27,8 @@ export default defineConfig(({ mode, command }) => {
     },
     // vite 相关配置
     server: {
-      port: 80,
-      host: true,
+      port: 81,
+      host: "0.0.0.0",
       open: true,
       proxy: {
         // https://cn.vitejs.dev/config/#server-proxy