Commit d29185bd by 无尘

fix: 修改档案编辑

parent 481e11a4
<!DOCTYPE html><html><head><meta charset=utf-8><link rel="shortcut icon" href=./favicon.ico><title>好办管理平台</title><link href=./static/css/app.f987b0b5b99af06ca9707b8afbc3938d.css rel=stylesheet></head><body style="min-width: 1400px;"><div id=app></div><script type=text/javascript src=./static/js/manifest.d9c5424ea0a9826cd990.js></script><script type=text/javascript src=./static/js/vendor.907e093428953c324a31.js></script><script type=text/javascript src=./static/js/app.ab1eb1883f43bac50246.js></script></body></html> <!DOCTYPE html><html><head><meta charset=utf-8><link rel="shortcut icon" href=./favicon.ico><title>好办管理平台</title><link href=./static/css/app.519fde5b2efe02c366d2847d54b3b551.css rel=stylesheet></head><body style="min-width: 1400px;"><div id=app></div><script type=text/javascript src=./static/js/manifest.a313219be5925e0b672c.js></script><script type=text/javascript src=./static/js/vendor.907e093428953c324a31.js></script><script type=text/javascript src=./static/js/app.1bbd3d0cdf1c8d5e0e32.js></script></body></html>
\ No newline at end of file \ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
webpackJsonp([21],{"/4Tr":function(t,s){},"2X9c":function(t,s,i){t.exports=i.p+"static/img/error_500.ed0cba4.svg"},FskK:function(t,s,i){"use strict";Object.defineProperty(s,"__esModule",{value:!0});var e=i("2X9c"),a=i.n(e),n={name:"page500",data:function(){return{img_500:a.a}},computed:{message:function(){return"抱歉,服务器出错了"}}},r={render:function(){var t=this.$createElement,s=this._self._c||t;return s("div",{staticStyle:{background:"#f0f2f5","margin-top":"-20px",height:"100%"}},[s("div",{staticClass:"wscn-http404"},[s("div",{staticClass:"pic-404"},[s("img",{staticClass:"pic-404__parent",attrs:{src:this.img_500,alt:"500"}})]),this._v(" "),s("div",{staticClass:"bullshit"},[s("div",{staticClass:"bullshit__headline"},[this._v(this._s(this.message))]),this._v(" "),s("a",{staticClass:"bullshit__return-home",attrs:{href:"#/companyGroup"}},[this._v("返回首页")])])])])},staticRenderFns:[]};var c=i("VU/8")(n,r,!1,function(t){i("/4Tr")},"data-v-4bf06e19",null);s.default=c.exports}}); webpackJsonp([22],{"/4Tr":function(t,s){},"2X9c":function(t,s,i){t.exports=i.p+"static/img/error_500.ed0cba4.svg"},FskK:function(t,s,i){"use strict";Object.defineProperty(s,"__esModule",{value:!0});var e=i("2X9c"),a=i.n(e),n={name:"page500",data:function(){return{img_500:a.a}},computed:{message:function(){return"抱歉,服务器出错了"}}},r={render:function(){var t=this.$createElement,s=this._self._c||t;return s("div",{staticStyle:{background:"#f0f2f5","margin-top":"-20px",height:"100%"}},[s("div",{staticClass:"wscn-http404"},[s("div",{staticClass:"pic-404"},[s("img",{staticClass:"pic-404__parent",attrs:{src:this.img_500,alt:"500"}})]),this._v(" "),s("div",{staticClass:"bullshit"},[s("div",{staticClass:"bullshit__headline"},[this._v(this._s(this.message))]),this._v(" "),s("a",{staticClass:"bullshit__return-home",attrs:{href:"#/companyGroup"}},[this._v("返回首页")])])])])},staticRenderFns:[]};var c=i("VU/8")(n,r,!1,function(t){i("/4Tr")},"data-v-4bf06e19",null);s.default=c.exports}});
//# sourceMappingURL=21.52f0406512b49c4c4921.js.map //# sourceMappingURL=22.0902784e4cc61f132377.js.map
\ No newline at end of file \ No newline at end of file
!function(e){var c=window.webpackJsonp;window.webpackJsonp=function(f,n,r){for(var t,o,b,i=0,u=[];i<f.length;i++)o=f[i],d[o]&&u.push(d[o][0]),d[o]=0;for(t in n)Object.prototype.hasOwnProperty.call(n,t)&&(e[t]=n[t]);for(c&&c(f,n,r);u.length;)u.shift()();if(r)for(i=0;i<r.length;i++)b=a(a.s=r[i]);return b};var f={},d={44:0};function a(c){if(f[c])return f[c].exports;var d=f[c]={i:c,l:!1,exports:{}};return e[c].call(d.exports,d,d.exports,a),d.l=!0,d.exports}a.e=function(e){var c=d[e];if(0===c)return new Promise(function(e){e()});if(c)return c[2];var f=new Promise(function(f,a){c=d[e]=[f,a]});c[2]=f;var n=document.getElementsByTagName("head")[0],r=document.createElement("script");r.type="text/javascript",r.charset="utf-8",r.async=!0,r.timeout=12e4,a.nc&&r.setAttribute("nonce",a.nc),r.src=a.p+"static/js/"+e+"."+{0:"5b34953c813d48cc18f3",1:"26fc7c6e9b4ccca95f46",2:"61d9790344919baf48c5",3:"6633d57a1087e1b7f453",4:"d90892d76e7f52858af5",5:"bda30de53f8d2ed8a44f",6:"1d7830b4d55d08cb5ead",7:"fbeb3db819eec7392fd8",8:"1f9cc69f1d1455b4395a",9:"3466da9dc5776679b270",10:"7208d93b0fb81a57a978",11:"bd6f688633a5dfd311f5",12:"a5bbc66b45845e8ff31c",13:"e3ade0be7df43374780f",14:"3ad5bbb7abe4defc9a0a",15:"9c4eb83d3a7630e2becd",16:"e03dd1cc480bb5413c3c",17:"74e56664fde2697c5c7c",18:"82e654e843ec921764dd",19:"69a50237c3f20d6037e1",20:"08561a5f6f04e53dc1bc",21:"ef29793b599205d3dece",22:"0902784e4cc61f132377",23:"9f05cfc644dbcf58019a",24:"f87968cd1809bd537de5",25:"41900b7b606ec81d1b49",26:"30beb66a68cf4670017a",27:"94b3fc65a52004cfda55",28:"ce30294345c96cf957b1",29:"3d2f67e201fb157fb15d",30:"a9e98de26f049b159f2b",31:"5cf0182fc424e8606c89",32:"e0dcc7cfee4fd78f294f",33:"74ac82b84ddd0a61f0c5",34:"d29c59b220221af0352b",35:"3a1287481845f3ab0f96",36:"6ec2d4074c84f920def4",37:"a0f44cfd120df62011c9",38:"bffc9417838d0b109405",39:"7eee96327266740f3019",40:"6ff12ea562cf0ae0f1ea",43:"13848f214bb993c20004"}[e]+".js";var t=setTimeout(o,12e4);function o(){r.onerror=r.onload=null,clearTimeout(t);var c=d[e];0!==c&&(c&&c[1](new Error("Loading chunk "+e+" failed.")),d[e]=void 0)}return r.onerror=r.onload=o,n.appendChild(r),f},a.m=e,a.c=f,a.d=function(e,c,f){a.o(e,c)||Object.defineProperty(e,c,{configurable:!1,enumerable:!0,get:f})},a.n=function(e){var c=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(c,"a",c),c},a.o=function(e,c){return Object.prototype.hasOwnProperty.call(e,c)},a.p="./",a.oe=function(e){throw console.error(e),e}}([]);
//# sourceMappingURL=manifest.a313219be5925e0b672c.js.map
\ No newline at end of file
!function(e){var c=window.webpackJsonp;window.webpackJsonp=function(f,r,d){for(var t,o,b,i=0,u=[];i<f.length;i++)o=f[i],a[o]&&u.push(a[o][0]),a[o]=0;for(t in r)Object.prototype.hasOwnProperty.call(r,t)&&(e[t]=r[t]);for(c&&c(f,r,d);u.length;)u.shift()();if(d)for(i=0;i<d.length;i++)b=n(n.s=d[i]);return b};var f={},a={44:0};function n(c){if(f[c])return f[c].exports;var a=f[c]={i:c,l:!1,exports:{}};return e[c].call(a.exports,a,a.exports,n),a.l=!0,a.exports}n.e=function(e){var c=a[e];if(0===c)return new Promise(function(e){e()});if(c)return c[2];var f=new Promise(function(f,n){c=a[e]=[f,n]});c[2]=f;var r=document.getElementsByTagName("head")[0],d=document.createElement("script");d.type="text/javascript",d.charset="utf-8",d.async=!0,d.timeout=12e4,n.nc&&d.setAttribute("nonce",n.nc),d.src=n.p+"static/js/"+e+"."+{0:"589895e663cf279b4342",1:"26fc7c6e9b4ccca95f46",2:"61d9790344919baf48c5",3:"6633d57a1087e1b7f453",4:"d90892d76e7f52858af5",5:"aea4add4181eccfd6fee",6:"1d7830b4d55d08cb5ead",7:"fbeb3db819eec7392fd8",8:"1f9cc69f1d1455b4395a",9:"3466da9dc5776679b270",10:"7208d93b0fb81a57a978",11:"7ee53a01c7e1618ab1a3",12:"a5bbc66b45845e8ff31c",13:"e3ade0be7df43374780f",14:"3ad5bbb7abe4defc9a0a",15:"9c4eb83d3a7630e2becd",16:"e03dd1cc480bb5413c3c",17:"74e56664fde2697c5c7c",18:"6eb9dedf69ea0e0cd4f1",19:"7f1c8393b3bfef00b45d",20:"a67936fc14930635fda5",21:"52f0406512b49c4c4921",22:"39f5e1d81ccacdc34ac8",23:"9f05cfc644dbcf58019a",24:"f87968cd1809bd537de5",25:"41900b7b606ec81d1b49",26:"30beb66a68cf4670017a",27:"94b3fc65a52004cfda55",28:"ce30294345c96cf957b1",29:"3d2f67e201fb157fb15d",30:"a9e98de26f049b159f2b",31:"5cf0182fc424e8606c89",32:"e0dcc7cfee4fd78f294f",33:"74ac82b84ddd0a61f0c5",34:"d29c59b220221af0352b",35:"3a1287481845f3ab0f96",36:"6ec2d4074c84f920def4",37:"a0f44cfd120df62011c9",38:"bffc9417838d0b109405",39:"7eee96327266740f3019",40:"6ff12ea562cf0ae0f1ea",43:"13848f214bb993c20004"}[e]+".js";var t=setTimeout(o,12e4);function o(){d.onerror=d.onload=null,clearTimeout(t);var c=a[e];0!==c&&(c&&c[1](new Error("Loading chunk "+e+" failed.")),a[e]=void 0)}return d.onerror=d.onload=o,r.appendChild(d),f},n.m=e,n.c=f,n.d=function(e,c,f){n.o(e,c)||Object.defineProperty(e,c,{configurable:!1,enumerable:!0,get:f})},n.n=function(e){var c=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(c,"a",c),c},n.o=function(e,c){return Object.prototype.hasOwnProperty.call(e,c)},n.p="./",n.oe=function(e){throw console.error(e),e}}([]);
//# sourceMappingURL=manifest.d9c5424ea0a9826cd990.js.map
\ No newline at end of file
...@@ -88,7 +88,7 @@ export default { ...@@ -88,7 +88,7 @@ export default {
}, },
data() { data() {
return { return {
tableH: window.screen.availHeight - 440 - 180, tableH: window.screen.availHeight - 440 - 160,
pickerOptions2: { pickerOptions2: {
shortcuts: [{ shortcuts: [{
text: '最近一周', text: '最近一周',
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
{{typeLsit[scope.row[item] || 5]}} {{typeLsit[scope.row[item] || 5]}}
</div> </div>
<div v-else-if="item == 'hireDate' || item == 'correctionDate' || item == 'fireDate'"> <div v-else-if="item == 'hireDate' || item == 'correctionDate' || item == 'fireDate'">
{{scope.row[item] | formatDate("YY-MM-DD")}} {{scope.row[item] | formatDate("YY-MM-DD") || '--'}}
</div> </div>
<div v-else-if="item == 'headPic'"> <div v-else-if="item == 'headPic'">
<img class="header-pic" :src="scope.row[item]" v-if="!!scope.row[item]"> <img class="header-pic" :src="scope.row[item]" v-if="!!scope.row[item]">
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
</div> </div>
<div v-else-if="item == 'handleUnEmployee'"> <div v-else-if="item == 'handleUnEmployee'">
<div class="table-handle"> <div class="table-handle">
<a :href='"#/recordInfo?recordId=" + scope.row.recordId' class="a-href">编辑</a> <a :href='"#/recordInfo?recordId=" + scope.row.recordId + "&type=unemployee"' class="a-href">编辑</a>
</div> </div>
</div> </div>
</template> </template>
...@@ -132,7 +132,7 @@ export default { ...@@ -132,7 +132,7 @@ export default {
} }
}, },
mounted() { mounted() {
console.log(this.item) // console.log(this.item)
} }
} }
......
...@@ -4,21 +4,35 @@ ...@@ -4,21 +4,35 @@
<div class="right-content"> <div class="right-content">
<div class="right-box"> <div class="right-box">
<div class="commom-container clerk-detail-container"> <div class="commom-container clerk-detail-container">
<p class="t-rt"><a class="a-href" @click="getPdf()">打印员工档案</a></p> <p class="t-rt"><a class="a-href font-14" @click="getPdf()">打印员工档案</a></p>
<div id="pdfDom"> <div id="pdfDom">
<div class="employee-detail-cell"> <div class="employee-detail-cell">
<div class="head-info"> <div class="head-info">
<p class="head-cell"><img :src="info.headPic" class="head-img"></p> <p class="head-cell">
<p class="head-cell name">{{info.clerkName}}<span>{{info.clerkStatus == '-1' ? "无状态" : statusList[info.clerkStatus - 1]}}</span></p> <img v-if="!!info.headPic" :src="info.headPic" class="head-img">
<p class="head-cell c-303133">{{info.groupName}}{{info.positionName}}</p> <span v-else class="head-img-null" >
<p class="head-cell">已在{{info.enterpriseName}}工作了{{info.days}}</p> <i class="iconfont icon-yewuduanmorentouxian"></i>
</span>
</p>
<p class="head-cell name">{{info.clerkName}}<span>{{info.clerkStatus == '-1' ? "无状态" : statusList[info.clerkStatus - 1]}}</span></p>
<p class="head-cell c-303133">{{info.groupName}}{{info.positionName}}</p>
<p class="head-cell color-606266">已在{{info.enterpriseName}}工作了{{info.days}}</p>
</div> </div>
</div> </div>
<template v-for="field in fieldList"> <template v-for="field in fieldList">
<editable-cell @subSuccess="subSuccess" v-if="field.childrens" :key="field.fieldCode" :info="info" :staticInfo="staticInfo" :items="items" :title="field.title" :fieldList="field.childrens"></editable-cell> <editable-cell
v-if="field.childrens"
:key="field.fieldCode"
:info="info"
:staticInfo="staticInfo"
:items="items"
:title="field.title"
:fieldList="field.childrens"
@subSuccess="subSuccess">
</editable-cell>
</template> </template>
<div class="mile-stone-container"> <div class="mile-stone-container">
<p class="m-s-title"><span>员工记录</span></p> <p class="m-s-title"><span class="font-w-500">员工记录</span></p>
<ul class="mile-stone"> <ul class="mile-stone">
<li v-for="(stones, index) in mileStone" :key="index" class="stone-group" :class="index % 2 == 0 ? 'column' : 'column-reverse'"> <li v-for="(stones, index) in mileStone" :key="index" class="stone-group" :class="index % 2 == 0 ? 'column' : 'column-reverse'">
<div class="column-hurdle" v-if="stones.length == 4 && index != (mileStone.length - 1)"></div> <div class="column-hurdle" v-if="stones.length == 4 && index != (mileStone.length - 1)"></div>
...@@ -29,9 +43,9 @@ ...@@ -29,9 +43,9 @@
<div class="hurdle"></div> <div class="hurdle"></div>
</div> </div>
<p class="position">{{his.positionName}}</p> <p class="position">{{his.positionName}}</p>
<p>{{historyStatus[his.historyStatus * 1 - 1]}}<a class="a-href m-l-10 fs-12" @click="editHis(his)" v-if="his.historyStatus == 3">编辑</a></p> <p class="font-16 ">{{historyStatus[his.historyStatus * 1 - 1]}}<a class="a-href m-l-10 fs-12" @click="editHis(his)" v-if="his.historyStatus == 3">编辑</a></p>
<p v-if="his.historyStatus == 3">离职理由:{{reasons[his.fireReason]}}</p> <p v-if="his.historyStatus == 3">离职理由:{{reasons[his.fireReason]}}</p>
<p>{{!!his.storeName ? his.storeName : his.groupName}}</p> <p class="color-606266">{{!!his.storeName ? his.storeName : his.groupName}}</p>
</div> </div>
</li> </li>
</ul> </ul>
...@@ -43,6 +57,7 @@ ...@@ -43,6 +57,7 @@
</div> </div>
</div> </div>
</div> </div>
<vue-gic-footer></vue-gic-footer>
</div> </div>
</template> </template>
<script> <script>
...@@ -77,6 +92,31 @@ export default { ...@@ -77,6 +92,31 @@ export default {
path: '/fileSet' path: '/fileSet'
}, },
{ {
name: '在职员工',
path: '/employeeRecord'
},
{
name: '编辑员工信息',
path: ''
}
],
editNavpath: [{
name: '首页',
path: '/index'
},
{
name: '企业通讯录',
path: '/administrativeFrame'
},
{
name: '员工档案',
path: '/fileSet'
},
{
name: '离职员工',
path: '/unemployee'
},
{
name: '编辑员工信息', name: '编辑员工信息',
path: '' path: ''
} }
...@@ -99,23 +139,22 @@ export default { ...@@ -99,23 +139,22 @@ export default {
this.dialogVisible = false; this.dialogVisible = false;
}, },
getEmployeeDetail() { // 获取员工详情 getEmployeeDetail() { // 获取员工详情
let ths = this; let that = this;
let params = { let params = {
recordId: ths.$route.query.recordId recordId: that.$route.query.recordId
}; };
getRequest("/haoban-manage-web/record/employee-detail", params) getRequest("/haoban-manage-web/record/employee-detail", params)
.then(res => { .then(res => {
// console.log(res, "info");
if (res.data.errorCode == 1) { if (res.data.errorCode == 1) {
ths.getTemplate(res.data.result); that.getTemplate(res.data.result);
} else { } else {
ths.$message.error({ that.$message.error({
message: res.data.message message: res.data.message
}); });
} }
}) })
.catch(e => { .catch(e => {
ths.$message.error({ that.$message.error({
message: e.message message: e.message
}); });
}); });
...@@ -125,26 +164,26 @@ export default { ...@@ -125,26 +164,26 @@ export default {
this.getEmployeeDetail(); this.getEmployeeDetail();
}, },
getTemplate(clerkInfo) { // 获取档案模板 getTemplate(clerkInfo) { // 获取档案模板
let ths = this; let that = this;
getRequest("/haoban-manage-web/record/employee-find-template", {}) getRequest("/haoban-manage-web/record/employee-find-template", {})
.then(res => { .then(res => {
// console.log(res, "模板"); // console.log(res, "模板");
if (res.data.errorCode == 1) { if (res.data.errorCode == 1) {
ths.formatTemplateList(res.data.result, clerkInfo); that.formatTemplateList(res.data.result, clerkInfo);
} else { } else {
ths.$message.error({ that.$message.error({
message: res.data.message message: res.data.message
}); });
} }
}) })
.catch(e => { .catch(e => {
ths.$message.error({ that.$message.error({
message: e.message message: e.message
}); });
}); });
}, },
formatTemplateList(list, clerkInfo) { // 格式化档案详情和模板 formatTemplateList(list, clerkInfo) { // 格式化档案详情和模板
let ths = this; let that = this;
let fieldList = []; let fieldList = [];
let copyData = list; let copyData = list;
let obj = JSON.parse(clerkInfo.defineString); let obj = JSON.parse(clerkInfo.defineString);
...@@ -199,31 +238,31 @@ export default { ...@@ -199,31 +238,31 @@ export default {
this.staticInfo = clerkInfo; this.staticInfo = clerkInfo;
}, },
getHistoryList() { // 获取员工历史纪录 getHistoryList() { // 获取员工历史纪录
let ths = this; let that = this;
let params = { let params = {
recordId: ths.$route.query.recordId recordId: that.$route.query.recordId
} }
getRequest("/haoban-manage-web/record/history-record-list", params) getRequest("/haoban-manage-web/record/history-record-list", params)
.then(res => { .then(res => {
// console.log(res, "history"); // console.log(res, "history");
if (res.data.errorCode == 1) { if (res.data.errorCode == 1) {
let arr = res.data.result; let arr = res.data.result;
ths.formatMileStone(arr); that.formatMileStone(arr);
} else { } else {
ths.$message({ that.$message({
message: res.data.message message: res.data.message
}); });
} }
}) })
.catch(e => { .catch(e => {
ths.$message({ that.$message({
message: e.message message: e.message
}); });
}); });
}, },
formatMileStone(list) { formatMileStone(list) {
// 格式化员工历史记录信息 // 格式化员工历史记录信息
let ths = this; let that = this;
list.sort(function(a, b) { list.sort(function(a, b) {
return a.historyDate * 1 - b.historyDate * 1; return a.historyDate * 1 - b.historyDate * 1;
}); });
...@@ -232,7 +271,7 @@ export default { ...@@ -232,7 +271,7 @@ export default {
arr.push(list.slice(i, i + 4)); arr.push(list.slice(i, i + 4));
} }
// console.log(arr, "dddddd"); // console.log(arr, "dddddd");
ths.mileStone = arr; that.mileStone = arr;
}, },
editHis(his) { // 编辑历史 editHis(his) { // 编辑历史
this.editHisObj["historyId"] = his.historyId; this.editHisObj["historyId"] = his.historyId;
...@@ -243,6 +282,13 @@ export default { ...@@ -243,6 +282,13 @@ export default {
beforeMount() { beforeMount() {
this.getEmployeeDetail(); this.getEmployeeDetail();
this.getHistoryList(); this.getHistoryList();
},
mounted() {
const that = this;
let type = that.$route.query.type;
if (!!type && type == 'unemployee') {
that.navpath = that.editNavpath;
}
} }
} }
...@@ -268,6 +314,21 @@ export default { ...@@ -268,6 +314,21 @@ export default {
border-radius: 6px; border-radius: 6px;
} }
.head-img-null {
display: block;
margin: 0 auto;
width: 70px;
height: 70px;
line-height: 70px;
background: rgba(64, 158, 255, 1);
border-radius: 6px;
i {
font-size: 20px;
color: #e5f3ff;
}
}
&.name { &.name {
font-size: 20px; font-size: 20px;
font-weight: 500; font-weight: 500;
...@@ -275,7 +336,7 @@ export default { ...@@ -275,7 +336,7 @@ export default {
span { span {
display: inline-block; display: inline-block;
width: 32px; /*width: 32px;*/
height: 16px; height: 16px;
border: 1px solid rgba(74, 168, 255, 1); border: 1px solid rgba(74, 168, 255, 1);
border-radius: 3px; border-radius: 3px;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment