Browse Source

2020-5-13

mentoswzq 4 years ago
parent
commit
b575d9f268

+ 56 - 55
js/component/manageCenter/order/orderNew/outsourcingPro.jsx

@@ -152,7 +152,8 @@ const outsourcingPro = Form.create()(
                 liquidationStatus: thisdata.liquidationStatus, //下单时间
                 refundStatus: thisdata.refundStatus,
                 pname: thisdata.pname,
-                cname: thisdata.cname
+                cname: thisdata.cname,
+                bname: thisdata.bname
               });
             }
             this.state.pagination.total = data.data.totalCount;
@@ -195,64 +196,64 @@ const outsourcingPro = Form.create()(
           defaultPageSize: 10,
           showQuickJumper: true,
           pageSize: 10,
-          onChange: function(page) {
+          onChange: function (page) {
             this.loadData(page);
           }.bind(this),
-          showTotal: function(total) {
+          showTotal: function (total) {
             return "共" + total + "条数据";
-          }
+          },
         },
         columns: [
           {
             title: "订单编号",
             dataIndex: "orderNo",
-            key: "orderNo"
+            key: "orderNo",
           },
           {
             title: "合同编号",
             dataIndex: "contractNo",
-            key: "contractNo"
+            key: "contractNo",
           },
           {
             title: "客户名称",
             dataIndex: "userName",
-            key: "userName"
+            key: "userName",
           },
           {
             title: "订单部门",
             dataIndex: "depName",
-            key: "depName"
+            key: "depName",
           },
           {
             title: "订单负责人",
             dataIndex: "adminName",
-            key: "adminName"
+            key: "adminName",
           },
           {
             title: "项目类别",
             dataIndex: "cname",
-            key: "cname"
+            key: "cname",
           },
           {
             title: "项目编号",
             dataIndex: "tid",
-            key: "tid"
+            key: "tid",
           },
           {
             title: "项目名称",
-            dataIndex: "cname",
-            key: "cnamea"
+            dataIndex: "bname",
+            key: "bname",
           },
           {
             title: "项目负责人",
             dataIndex: "pname",
-            key: "pname"
+            key: "pname",
           },
           {
             title: "外包审核",
             dataIndex: "refundStatus",
             key: "refundStatus",
-            render: text => {
+            render: (text) => {
               if (text == 0) {
                 return <Tag color="#f50">待审核</Tag>;
               } else if (text == 1) {
@@ -260,8 +261,8 @@ const outsourcingPro = Form.create()(
               } else if (text == 2) {
                 return <Tag color="#2db7f5">审核驳回</Tag>;
               }
-            }
-          }
+            },
+          },
           // {
           //   title: "操作",
           //   dataIndex: "caozuo",
@@ -296,12 +297,12 @@ const outsourcingPro = Form.create()(
           {
             title: "业务项目名称",
             dataIndex: "commodityName",
-            key: "commodityName"
+            key: "commodityName",
           },
           {
             title: "项目类别",
             dataIndex: "cname",
-            key: "cname"
+            key: "cname",
           },
           {
             title: "项目数量",
@@ -314,7 +315,7 @@ const outsourcingPro = Form.create()(
                     {text}{" "}
                     <Tag
                       color="#108ee9"
-                      onClick={e => {
+                      onClick={(e) => {
                         e.stopPropagation();
                         this.showRes(record);
                       }}
@@ -326,71 +327,71 @@ const outsourcingPro = Form.create()(
               } else {
                 return text;
               }
-            }
+            },
           },
 
           {
             title: "金额(万元)",
             dataIndex: "commodityPrice",
-            key: "commodityPrice"
+            key: "commodityPrice",
           },
           {
             title: "负责人",
             dataIndex: "contacts",
-            key: "contacts"
+            key: "contacts",
           },
           {
             title: "负责人电话",
             dataIndex: "contactsMobile",
-            key: "contactsMobile"
+            key: "contactsMobile",
           },
           {
             title: "项目状态",
             dataIndex: "projectStatus",
             key: "projectStatus",
-            render: text => {
+            render: (text) => {
               return getProjectStatus(text);
-            }
+            },
           },
           {
             title: "主要项目",
             dataIndex: "main",
             key: "main",
-            render: text => {
+            render: (text) => {
               return text ? "是" : "否";
-            }
+            },
           },
           {
             title: "项目说明",
             dataIndex: "taskComment",
             key: "taskComment",
-            render: text => {
+            render: (text) => {
               return text && text.length > 8 ? text.substr(0, 8) + "…" : text;
-            }
-          }
+            },
+          },
         ],
         resVisible: false,
         columnsrizhi: [
           {
             title: "流程",
             dataIndex: "processName",
-            key: "processName"
+            key: "processName",
           },
           {
             title: "操作人",
             dataIndex: "adminName",
-            key: "adminName"
+            key: "adminName",
           },
           {
             title: "时间",
             dataIndex: "createDate",
-            key: "createDate"
+            key: "createDate",
           },
           {
             title: "备注",
             dataIndex: "remarks",
-            key: "remarks"
-          }
+            key: "remarks",
+          },
         ],
         dataSourceX: [],
         ContactsListsNew: [
@@ -398,15 +399,15 @@ const outsourcingPro = Form.create()(
             title: "项目名称",
             dataIndex: "commodityName",
             key: "commodityName",
-            render: text => {
+            render: (text) => {
               return <span>{text}</span>;
-            }
+            },
           },
           {
             title: "项目分类",
             dataIndex: "projectType",
             key: "projectType",
-            render: text => {
+            render: (text) => {
               let arr = this.state.dataSourceX || [];
               let str = "";
               for (let i = 0; i < arr.length; i++) {
@@ -415,15 +416,15 @@ const outsourcingPro = Form.create()(
                   return <span>{str}</span>;
                 }
               }
-            }
+            },
           },
           {
             title: "催款科目",
             dataIndex: "dunTypeName",
             key: "dunTypeName",
-            render: text => {
+            render: (text) => {
               return <span>{text}</span>;
-            }
+            },
           },
           {
             title: "时间(天)",
@@ -433,7 +434,7 @@ const outsourcingPro = Form.create()(
               if (record.dunTypeName) {
                 return <span>{text}</span>;
               }
-            }
+            },
           },
           {
             title: "金额(万元)",
@@ -453,7 +454,7 @@ const outsourcingPro = Form.create()(
                   return <span>{text}</span>;
                 }
               }
-            }
+            },
           },
           {
             title: "服务年限",
@@ -463,40 +464,40 @@ const outsourcingPro = Form.create()(
               if (record.dunTypeName) {
                 return <span>{text}</span>;
               }
-            }
+            },
           },
           {
             title: "催款状态",
             dataIndex: "status",
             key: "status",
-            render: text => {
+            render: (text) => {
               return <span>{text == 1 ? "已启动" : "未启动"}</span>;
-            }
-          }
+            },
+          },
         ],
         ContactsLists: [
           {
             title: "催款科目",
             dataIndex: "dunSubject",
             key: "dunSubject",
-            render: text => {
+            render: (text) => {
               return getjiedian(text);
-            }
+            },
           },
           {
             title: "金额(万元)",
             dataIndex: "money",
-            key: "money"
+            key: "money",
           },
           {
             title: "催款状态",
             dataIndex: "dunStatus",
             key: "dunStatus",
-            render: text => {
+            render: (text) => {
               return getCuikuan(text);
-            }
-          }
-        ]
+            },
+          },
+        ],
       };
     },
     cancel() {

+ 343 - 2
js/component/manageCenter/project/task/myTask.jsx

@@ -1594,12 +1594,15 @@ const Task = React.createClass({
     this.setState({
       activeKey: key,
     });
-    if (key == 2) {
+    if (key == 3) {
       this.orderDetailData(this.state.orderNo);
       this.xiangmu(this.state.orderNo);
       this.jiedian(this.state.orderNo);
       this.jiedianNew(this.state.orderNo);
     }
+    if (key == 2) {
+      this.waiDetail()
+    }
   },
   //节点列表
   jiedian(orderNos) {
@@ -3809,8 +3812,346 @@ const Task = React.createClass({
                 </Button>
               </div>
             </TabPane>
+            <TabPane tab="外包(不走本部)" key="2">
+              {this.state.refundStatus != 0 && this.state.refundStatus != 1 ? (
+                <div style={{ marginTop: 10 }}>
+                  <div className="clearfix">
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
+                      label={
+                        <span>
+                          <strong style={{ color: "#f00" }}>*</strong>
+                          外包公司
+                        </span>
+                      }
+                    >
+                      <Input
+                        value={this.state.companyName}
+                        onChange={(e) => {
+                          this.setState({
+                            companyName: e.target.value,
+                          });
+                        }}
+                        placeholder="请填写外包公司名称"
+                      />
+                    </FormItem>
+                    <span className="tip" style={{ color: "red" }}>
+                      如多个公司,请用间隔
+                    </span>
+                  </div>
+                  <div className="clearfix">
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
+                      label={
+                        <span>
+                          <strong style={{ color: "#f00" }}>*</strong>
+                          单价(万元)
+                        </span>
+                      }
+                    >
+                      <Input
+                        value={this.state.unitPrice}
+                        onChange={(e) => {
+                          this.setState({
+                            unitPrice: e.target.value,
+                          });
+                        }}
+                        placeholder="请填写本次外包公司的价格"
+                      />
+                    </FormItem>
+                  </div>
+                  <div className="clearfix">
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
+                      label={
+                        <span>
+                          <strong style={{ color: "#f00" }}>*</strong>
+                          数量(个)
+                        </span>
+                      }
+                    >
+                      <Input
+                        value={this.state.unitNumber}
+                        onChange={(e) => {
+                          this.setState({
+                            unitNumber: e.target.value,
+                          });
+                        }}
+                        placeholder="请填写本次外包公司的价格"
+                      />
+                    </FormItem>
+                  </div>
+                  <div className="clearfix">
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
+                      label={
+                        <span>
+                          <strong style={{ color: "#f00" }}>*</strong>
+                          总金额(万元)
+                        </span>
+                      }
+                    >
+                      <Input
+                        value={this.state.amount}
+                        onChange={(e) => {
+                          this.setState({
+                            amount: e.target.value,
+                          });
+                        }}
+                        placeholder="请填写本次外包公司的价格"
+                      />
+                    </FormItem>
+                  </div>
+                  <div className="clearfix">
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
+                      label={
+                        <span>
+                          <strong style={{ color: "#f00" }}>*</strong>备注
+                        </span>
+                      }
+                    >
+                      <TextArea
+                        rows={4}
+                        value={this.state.outsourceRemarks}
+                        onChange={(e) => {
+                          this.setState({
+                            outsourceRemarks: e.target.value,
+                          });
+                        }}
+                        placeholder="请输入备注"
+                      />
+                    </FormItem>
+                  </div>
+                  {/*<div className="clearfix">
+										<FormItem className="half-item"
+										    {...formItemLayout}
+										    label="上传协议文件" style={{height:"auto"}}>  
+										     <Upload header={{authorization: 'authorization-text'}} action={globalConfig.context + "/api/admin/outsourceOrg/uploadOutsourceFile"}
+													data={(e)=>{
+														return {
+															'sign': e.name.substring(0,e.name.lastIndexOf("."))
+														}
+													}}
+													fileList={this.state.fileUrl}
+													onChange={(e)=>{
+														this.setState({
+															attachmentUrl:e.fileList,
+															fileUrl:e.fileList
+														})
+													}}>
+												{fileUrl.length>1?null:<Button>
+												<Icon type="upload" /> 点击上传
+												</Button>}
+										    </Upload>
+										    <span className="tip" style={{display:"inline-block"}}>支持文件格式: doc,excel,ppt</span>
+										</FormItem>
+									</div>*/}
+                  <p
+                    className="tip"
+                    style={{
+                      paddingBottom: "12px",
+                      width: "240px",
+                      marginLeft: "145px",
+                      color: "red",
+                    }}
+                  >
+                    首次派单项目,需上传协议,第2次起,同项目,只需写外包公司
+                  </p>
+                  <div className="clearfix">
+                    <FormItem
+                      labelCol={{ span: 4 }}
+                      wrapperCol={{ span: 18 }}
+                      label={
+                        <span>
+                          <strong style={{ color: "#f00" }}>*</strong>
+                          合同/协议扫描件
+                        </span>
+                      }
+                    >
+                      <PicturesWall
+                        fileList={this.getOrgCodeUrlWai}
+                        pictureUrl={this.state.pictureUrl}
+                      />
+                      <p style={{ color: "red" }}>图片建议:要清晰。</p>
+                    </FormItem>
+                  </div>
+                  <div className="clearfix">
+                    <div
+                      style={{
+                        display: "inline-black",
+                        textAlign: "center",
+                      }}
+                    >
+                      <Button
+                        type="primary"
+                        loading={this.state.loading}
+                        onClick={this.sureOut}
+                      >
+                        确认发起外包,不通过总部
+                      </Button>
+                      <p className="tip" style={{ color: "red" }}>
+                        提示:高于总部价格,费用个人承担
+                      </p>
+                    </div>
+                  </div>
+                </div>
+              ) : (
+                <div>
+                  <div className="clearfix">
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
+                      label="外包公司"
+                    >
+                      <span>{this.state.companyName}</span>
+                    </FormItem>
+                  </div>
+                  <div className="clearfix">
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
+                      label="单价(万元)"
+                    >
+                      <span>{this.state.unitPrice}</span>
+                    </FormItem>
+                  </div>
+                  <div className="clearfix">
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
+                      label="数量(个)"
+                    >
+                      <span>{this.state.unitNumber}</span>
+                    </FormItem>
+                  </div>
+                  <div className="clearfix">
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
+                      label="总金额(万元)"
+                    >
+                      <span>{this.state.amount}</span>
+                    </FormItem>
+                  </div>
+                  <div className="clearfix">
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
+                      label="备注"
+                    >
+                      <span>{this.state.outsourceRemarks}</span>
+                    </FormItem>
+                  </div>
+                  {/*<div className="clearfix">
+										<FormItem className="half-item" style={{height:'auto'}}
+										    {...formItemLayout}
+										    label="上传协议文件" >  
+											<Upload header={{authorization: 'authorization-text'}} action={globalConfig.context + "/api/admin/outsourceOrg/uploadOutsourceFile"}
+													data={(e)=>{
+														return {
+															'sign': e.name.substring(0,e.name.lastIndexOf("."))
+														}
+													}}
+													fileList={this.state.fileUrl}
+													showUploadList={{showRemoveIcon:false}}
+													onPreview={(e)=>{
+														let url = window.location.href.substring(7)
+														window.location.href="http://"+url.substring(0,url.indexOf("/"))+"/api/admin/outsourceOrg//downloadFile?path="+e.response.data
+													}}
+													>
+											</Upload>
+										</FormItem>
+									</div>*/}
+                  <div className="clearfix">
+                    <FormItem
+                      labelCol={{ span: 4 }}
+                      wrapperCol={{ span: 18 }}
+                      label="合同/协议扫描件"
+                    >
+                      <Upload
+                        className="demandDetailShow-upload"
+                        listType="picture-card"
+                        fileList={this.state.pictureUrl}
+                        onPreview={(file) => {
+                          this.setState({
+                            previewImage: file.url || file.thumbUrl,
+                            previewVisible: true,
+                          });
+                        }}
+                      ></Upload>
+                      <Modal
+                        maskClosable={false}
+                        footer={null}
+                        visible={this.state.previewVisible}
+                        onCancel={() => {
+                          this.setState({ previewVisible: false });
+                        }}
+                      >
+                        <img
+                          alt=""
+                          style={{ width: "100%" }}
+                          src={this.state.previewImage || ""}
+                        />
+                      </Modal>
+                    </FormItem>
+                  </div>
+                </div>
+              )}
+              {this.state.refundStatus == 1 ||
+              this.state.refundStatus == 0 ||
+              this.state.refundStatus == 2 ? (
+                <div className="clearfix">
+                  <hr className="division" />
+                  <div
+                    className="clearfix"
+                    style={{
+                      display: this.state.refundStatus == 0 ? "none" : "block",
+                    }}
+                  >
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
+                      label="审核意见"
+                    >
+                      <span>{this.state.remarks}</span>
+                    </FormItem>
+                  </div>
+                  <div className="clearfix">
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
+                      label="审核结果"
+                    >
+                      <span>{getRefundStatus(this.state.refundStatus)}</span>
+                    </FormItem>
+                  </div>
+                  <div
+                    className="clearfix"
+                    style={{
+                      display: this.state.refundStatus == 0 ? "none" : "block",
+                    }}
+                  >
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
+                      label="审核时间"
+                    >
+                      <span>{this.state.auditTimes}</span>
+                    </FormItem>
+                  </div>
+                </div>
+              ) : (
+                ""
+              )}
+            </TabPane>
             {!this.props.isZxs || (this.state.isHuiyuan && this.props.isZxs) ? (
-              <TabPane tab="订单详情" key="2">
+              <TabPane tab="订单详情" key="3">
                 <Spin spinning={this.state.loading}>
                   <OrderDetail
                     orderData={this.state.orderData}

+ 6 - 0
js/component/manageCenter/project/task/myTaskOutsource.jsx

@@ -3654,6 +3654,12 @@ const MyTaskOutsource = React.createClass({
                     pictureUrl={this.state.contractPictureUrl}
                   />
                 </Spin>
+                <OrderRiZi
+                  dataSourcerizhi={this.state.dataSourceY}
+                  closeOrderLog={this.closeOrderLog}
+                  visible={this.state.avisible}
+                  loading={this.state.loading}
+                />
               </TabPane>
             ) : (
               ""

File diff suppressed because it is too large
+ 1397 - 961
js/component/manageCenter/statistics/personnel/personnelAll.jsx


+ 1 - 1
package.json

@@ -1,6 +1,6 @@
 {
   "name": "afanti",
-  "version": "1.1.41",
+  "version": "1.1.42",
   "description": "",
   "main": "index.js",
   "scripts": {